summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWerner LEMBERG <wl@gnu.org>2000-02-06 09:40:10 +0000
committerWerner LEMBERG <wl@gnu.org>2000-02-06 09:40:10 +0000
commite092fba45175220aeee4912da9e2b96228a798b3 (patch)
treeaaeaa1574f735909bfa1460ccc0f2c43e7d11ec6
parenteceb4b5559cec2ab7f53e92e87c73954517a753a (diff)
downloadgroff-git-pre-1.16.tar.gz
groff pre-1.16 with new directory structurepre-1.16
-rw-r--r--ChangeLog374
-rw-r--r--INSTALL.gen9
-rw-r--r--MORE.STUFF23
-rw-r--r--Makefile25
-rw-r--r--Makefile.ccpg11
-rw-r--r--Makefile.comm54
-rw-r--r--Makefile.cpg11
-rw-r--r--Makefile.in223
-rw-r--r--Makefile.init2
-rw-r--r--Makefile.lib10
-rw-r--r--Makefile.man1
-rw-r--r--NEWS83
-rw-r--r--PROBLEMS22
-rw-r--r--README8
-rw-r--r--REVISION1
-rw-r--r--TODO2
-rw-r--r--VERSION2
-rw-r--r--aclocal.m416
-rw-r--r--addftinfo/Makefile.dep3
-rw-r--r--addftinfo/Makefile.sub6
-rwxr-xr-xconfigure263
-rwxr-xr-x[-rw-r--r--]configure.in6
-rw-r--r--contrib/mm/ChangeLog (renamed from mm/ChangeLog)26
-rw-r--r--contrib/mm/Makefile.sim (renamed from mm/Makefile.sim)2
-rw-r--r--contrib/mm/Makefile.sub49
-rw-r--r--contrib/mm/NOTES (renamed from mm/NOTES)0
-rw-r--r--contrib/mm/README (renamed from mm/README)0
-rw-r--r--contrib/mm/examples/APP352
-rw-r--r--contrib/mm/examples/B1B291
-rw-r--r--contrib/mm/examples/COVER235
-rw-r--r--contrib/mm/examples/IND4191
-rw-r--r--contrib/mm/examples/LT1058
-rw-r--r--contrib/mm/examples/LT.se1062
-rw-r--r--contrib/mm/examples/ML169
-rw-r--r--contrib/mm/examples/MOVE175
-rw-r--r--contrib/mm/examples/MUL535
-rw-r--r--contrib/mm/examples/NCOL196
-rw-r--r--contrib/mm/examples/ND17
-rw-r--r--contrib/mm/examples/README32
-rw-r--r--contrib/mm/examples/References975
-rw-r--r--contrib/mm/examples/SETR109
-rw-r--r--contrib/mm/groff_mm.man (renamed from mm/groff_mm.man)62
-rw-r--r--contrib/mm/groff_mmse.man (renamed from mm/groff_mmse.man)10
-rw-r--r--contrib/mm/mm/0.MT (renamed from mm/mm/0.MT)2
-rw-r--r--contrib/mm/mm/4.MT (renamed from mm/mm/4.MT)6
-rw-r--r--contrib/mm/mm/5.MT (renamed from mm/mm/5.MT)2
-rw-r--r--contrib/mm/mm/ms.cov (renamed from mm/mm/ms.cov)2
-rw-r--r--contrib/mm/mm/se_ms.cov3
-rw-r--r--contrib/mm/mmroff.man48
-rw-r--r--contrib/mm/mmroff.pl134
-rwxr-xr-x[-rw-r--r--]contrib/mm/tmac.m (renamed from mm/tmac.m)138
-rwxr-xr-x[-rw-r--r--]contrib/mm/tmac.mse (renamed from mm/tmac.mse)5
-rw-r--r--devhtml/CB306
-rw-r--r--devhtml/CBI306
-rw-r--r--devhtml/CI306
-rw-r--r--devhtml/CR306
-rw-r--r--devhtml/HB306
-rw-r--r--devhtml/HBI306
-rw-r--r--devhtml/HI306
-rw-r--r--devhtml/HR306
-rw-r--r--devhtml/NB306
-rw-r--r--devhtml/NBI306
-rw-r--r--devhtml/NI306
-rw-r--r--devhtml/NR306
-rw-r--r--devhtml/TB306
-rw-r--r--devhtml/TI306
-rw-r--r--devhtml/TR306
-rw-r--r--devps/AB559
-rw-r--r--devps/ABI560
-rw-r--r--devps/AI559
-rw-r--r--devps/AR558
-rw-r--r--devps/BMB438
-rw-r--r--devps/BMBI441
-rw-r--r--devps/BMI434
-rw-r--r--devps/BMR430
-rw-r--r--devps/CB336
-rw-r--r--devps/CBI337
-rw-r--r--devps/CI337
-rw-r--r--devps/CR336
-rw-r--r--devps/HB546
-rw-r--r--devps/HBI547
-rw-r--r--devps/HI617
-rw-r--r--devps/HNB546
-rw-r--r--devps/HNBI547
-rw-r--r--devps/HNI617
-rw-r--r--devps/HNR616
-rw-r--r--devps/HR616
-rw-r--r--devps/NB446
-rw-r--r--devps/NBI447
-rw-r--r--devps/NI447
-rw-r--r--devps/NR447
-rw-r--r--devps/PB449
-rw-r--r--devps/PBI451
-rw-r--r--devps/PI453
-rw-r--r--devps/PR456
-rw-r--r--devps/S227
-rw-r--r--devps/SS194
-rw-r--r--devps/TB533
-rw-r--r--devps/TBI515
-rw-r--r--devps/TI528
-rw-r--r--devps/TR519
-rw-r--r--devps/ZCMI477
-rw-r--r--devps/ZD193
-rw-r--r--devps/ZDR193
-rwxr-xr-x[-rw-r--r--]doc/Makefile83
-rw-r--r--doc/groff.texinfo54
-rwxr-xr-xdoc/homepage.ms162
-rw-r--r--doc/pic.ms2
-rw-r--r--eqn/Makefile.dep31
-rw-r--r--eqn/Makefile.sub27
-rw-r--r--font/devX100-12/CB (renamed from devX100-12/CB)0
-rw-r--r--font/devX100-12/CBI (renamed from devX100-12/CBI)0
-rw-r--r--font/devX100-12/CI (renamed from devX100-12/CI)0
-rw-r--r--font/devX100-12/CR (renamed from devX100-12/CR)0
-rw-r--r--font/devX100-12/DESC (renamed from devX100-12/DESC)0
-rw-r--r--font/devX100-12/HB (renamed from devX100-12/HB)0
-rw-r--r--font/devX100-12/HBI (renamed from devX100-12/HBI)0
-rw-r--r--font/devX100-12/HI (renamed from devX100-12/HI)0
-rw-r--r--font/devX100-12/HR (renamed from devX100-12/HR)0
-rw-r--r--font/devX100-12/Makefile.sub (renamed from devX100-12/Makefile.sub)0
-rw-r--r--font/devX100-12/NB (renamed from devX100-12/NB)0
-rw-r--r--font/devX100-12/NBI (renamed from devX100-12/NBI)0
-rw-r--r--font/devX100-12/NI (renamed from devX100-12/NI)0
-rw-r--r--font/devX100-12/NR (renamed from devX100-12/NR)0
-rw-r--r--font/devX100-12/S (renamed from devX100-12/S)0
-rw-r--r--font/devX100-12/TB (renamed from devX100-12/TB)0
-rw-r--r--font/devX100-12/TBI (renamed from devX100-12/TBI)0
-rw-r--r--font/devX100-12/TI (renamed from devX100-12/TI)0
-rw-r--r--font/devX100-12/TR (renamed from devX100-12/TR)0
-rw-r--r--font/devX100/CB (renamed from devX100/CB)0
-rw-r--r--font/devX100/CBI (renamed from devX100/CBI)0
-rw-r--r--font/devX100/CI (renamed from devX100/CI)0
-rw-r--r--font/devX100/CR (renamed from devX100/CR)0
-rw-r--r--font/devX100/DESC (renamed from devX100/DESC)0
-rw-r--r--font/devX100/HB (renamed from devX100/HB)0
-rw-r--r--font/devX100/HBI (renamed from devX100/HBI)0
-rw-r--r--font/devX100/HI (renamed from devX100/HI)0
-rw-r--r--font/devX100/HR (renamed from devX100/HR)0
-rw-r--r--font/devX100/Makefile.sub (renamed from devX100/Makefile.sub)0
-rw-r--r--font/devX100/NB (renamed from devX100/NB)0
-rw-r--r--font/devX100/NBI (renamed from devX100/NBI)0
-rw-r--r--font/devX100/NI (renamed from devX100/NI)0
-rw-r--r--font/devX100/NR (renamed from devX100/NR)0
-rw-r--r--font/devX100/S (renamed from devX100/S)0
-rw-r--r--font/devX100/TB (renamed from devX100/TB)0
-rw-r--r--font/devX100/TBI (renamed from devX100/TBI)0
-rw-r--r--font/devX100/TI (renamed from devX100/TI)0
-rw-r--r--font/devX100/TR (renamed from devX100/TR)0
-rw-r--r--font/devX75-12/CB (renamed from devX75-12/CB)0
-rw-r--r--font/devX75-12/CBI (renamed from devX75-12/CBI)0
-rw-r--r--font/devX75-12/CI (renamed from devX75-12/CI)0
-rw-r--r--font/devX75-12/CR (renamed from devX75-12/CR)0
-rw-r--r--font/devX75-12/DESC (renamed from devX75-12/DESC)0
-rw-r--r--font/devX75-12/HB (renamed from devX75-12/HB)0
-rw-r--r--font/devX75-12/HBI (renamed from devX75-12/HBI)0
-rw-r--r--font/devX75-12/HI (renamed from devX75-12/HI)0
-rw-r--r--font/devX75-12/HR (renamed from devX75-12/HR)0
-rw-r--r--font/devX75-12/Makefile.sub (renamed from devX75-12/Makefile.sub)0
-rw-r--r--font/devX75-12/NB (renamed from devX75-12/NB)0
-rw-r--r--font/devX75-12/NBI (renamed from devX75-12/NBI)0
-rw-r--r--font/devX75-12/NI (renamed from devX75-12/NI)0
-rw-r--r--font/devX75-12/NR (renamed from devX75-12/NR)0
-rw-r--r--font/devX75-12/S (renamed from devX75-12/S)0
-rw-r--r--font/devX75-12/TB (renamed from devX75-12/TB)0
-rw-r--r--font/devX75-12/TBI (renamed from devX75-12/TBI)0
-rw-r--r--font/devX75-12/TI (renamed from devX75-12/TI)0
-rw-r--r--font/devX75-12/TR (renamed from devX75-12/TR)0
-rw-r--r--font/devX75/CB (renamed from devX75/CB)0
-rw-r--r--font/devX75/CBI (renamed from devX75/CBI)0
-rw-r--r--font/devX75/CI (renamed from devX75/CI)0
-rw-r--r--font/devX75/CR (renamed from devX75/CR)0
-rw-r--r--font/devX75/DESC (renamed from devX75/DESC)0
-rw-r--r--font/devX75/HB (renamed from devX75/HB)0
-rw-r--r--font/devX75/HBI (renamed from devX75/HBI)0
-rw-r--r--font/devX75/HI (renamed from devX75/HI)0
-rw-r--r--font/devX75/HR (renamed from devX75/HR)0
-rw-r--r--font/devX75/Makefile.sub (renamed from devX75/Makefile.sub)0
-rw-r--r--font/devX75/NB (renamed from devX75/NB)0
-rw-r--r--font/devX75/NBI (renamed from devX75/NBI)0
-rw-r--r--font/devX75/NI (renamed from devX75/NI)0
-rw-r--r--font/devX75/NR (renamed from devX75/NR)0
-rw-r--r--font/devX75/S (renamed from devX75/S)0
-rw-r--r--font/devX75/TB (renamed from devX75/TB)0
-rw-r--r--font/devX75/TBI (renamed from devX75/TBI)0
-rw-r--r--font/devX75/TI (renamed from devX75/TI)0
-rw-r--r--font/devX75/TR (renamed from devX75/TR)0
-rw-r--r--font/devascii/DESC.proto (renamed from devascii/DESC.proto)0
-rw-r--r--font/devascii/Makefile.sub (renamed from devascii/Makefile.sub)0
-rw-r--r--font/devascii/R.proto (renamed from devascii/R.proto)0
-rwxr-xr-x[-rw-r--r--]font/devdvi/B (renamed from devdvi/B)0
-rwxr-xr-x[-rw-r--r--]font/devdvi/BI (renamed from devdvi/BI)0
-rw-r--r--font/devdvi/CW (renamed from devdvi/CW)0
-rw-r--r--font/devdvi/DESC.in (renamed from devdvi/DESC.in)0
-rw-r--r--font/devdvi/EX (renamed from devdvi/EX)0
-rwxr-xr-x[-rw-r--r--]font/devdvi/H (renamed from devdvi/H)0
-rw-r--r--font/devdvi/HB (renamed from devdvi/HB)0
-rw-r--r--font/devdvi/HI (renamed from devdvi/HI)0
-rwxr-xr-x[-rw-r--r--]font/devdvi/I (renamed from devdvi/I)0
-rw-r--r--font/devdvi/MI (renamed from devdvi/MI)0
-rw-r--r--font/devdvi/Makefile.sub (renamed from devdvi/Makefile.sub)0
-rwxr-xr-x[-rw-r--r--]font/devdvi/R (renamed from devdvi/R)0
-rw-r--r--font/devdvi/S (renamed from devdvi/S)0
-rw-r--r--font/devdvi/SA (renamed from devdvi/SA)0
-rw-r--r--font/devdvi/SB (renamed from devdvi/SB)0
-rwxr-xr-xfont/devdvi/generate/CompileFonts (renamed from devdvi/generate/CompileFonts)0
-rw-r--r--font/devdvi/generate/Makefile (renamed from devdvi/generate/Makefile)0
-rwxr-xr-x[-rw-r--r--]font/devdvi/generate/cork.map (renamed from devdvi/generate/cork.map)0
-rw-r--r--font/devdvi/generate/msam.map (renamed from devdvi/generate/msam.map)0
-rw-r--r--font/devdvi/generate/msbm.map (renamed from devdvi/generate/msbm.map)0
-rw-r--r--font/devdvi/generate/texb.map (renamed from devdvi/generate/texb.map)0
-rw-r--r--font/devdvi/generate/texex.map (renamed from devdvi/generate/texex.map)0
-rw-r--r--font/devdvi/generate/texi.map (renamed from devdvi/generate/texi.map)0
-rw-r--r--font/devdvi/generate/texmi.map (renamed from devdvi/generate/texmi.map)0
-rw-r--r--font/devdvi/generate/texr.map (renamed from devdvi/generate/texr.map)0
-rw-r--r--font/devdvi/generate/texsy.map (renamed from devdvi/generate/texsy.map)0
-rw-r--r--font/devdvi/generate/textt.map (renamed from devdvi/generate/textt.map)0
-rwxr-xr-xfont/devhtml/CB306
-rwxr-xr-xfont/devhtml/CBI306
-rwxr-xr-xfont/devhtml/CI306
-rwxr-xr-xfont/devhtml/CR306
-rwxr-xr-x[-rw-r--r--]font/devhtml/DESC (renamed from devhtml/DESC)2
-rwxr-xr-xfont/devhtml/HB306
-rwxr-xr-xfont/devhtml/HBI306
-rwxr-xr-xfont/devhtml/HI306
-rwxr-xr-xfont/devhtml/HR306
-rw-r--r--font/devhtml/Makefile.sub (renamed from devhtml/Makefile.sub)0
-rwxr-xr-xfont/devhtml/NB306
-rwxr-xr-xfont/devhtml/NBI306
-rwxr-xr-xfont/devhtml/NI306
-rwxr-xr-xfont/devhtml/NR306
-rwxr-xr-x[-rw-r--r--]font/devhtml/S (renamed from devhtml/S)0
-rwxr-xr-xfont/devhtml/TB306
-rwxr-xr-x[-rw-r--r--]font/devhtml/TBI (renamed from devhtml/TBI)0
-rwxr-xr-xfont/devhtml/TI306
-rwxr-xr-xfont/devhtml/TR306
-rw-r--r--font/devlatin1/DESC.proto (renamed from devlatin1/DESC.proto)0
-rw-r--r--font/devlatin1/Makefile.sub (renamed from devlatin1/Makefile.sub)0
-rw-r--r--font/devlatin1/R.proto (renamed from devlatin1/R.proto)0
-rw-r--r--font/devlj4/ALBB (renamed from devlj4/ALBB)0
-rw-r--r--font/devlj4/ALBR (renamed from devlj4/ALBR)0
-rw-r--r--font/devlj4/AOB (renamed from devlj4/AOB)0
-rw-r--r--font/devlj4/AOI (renamed from devlj4/AOI)0
-rw-r--r--font/devlj4/AOR (renamed from devlj4/AOR)0
-rw-r--r--font/devlj4/CB (renamed from devlj4/CB)0
-rw-r--r--font/devlj4/CBI (renamed from devlj4/CBI)0
-rw-r--r--font/devlj4/CI (renamed from devlj4/CI)0
-rw-r--r--font/devlj4/CLARENDON (renamed from devlj4/CLARENDON)0
-rw-r--r--font/devlj4/CORONET (renamed from devlj4/CORONET)0
-rw-r--r--font/devlj4/CR (renamed from devlj4/CR)0
-rw-r--r--font/devlj4/DESC.in (renamed from devlj4/DESC.in)0
-rw-r--r--font/devlj4/GB (renamed from devlj4/GB)0
-rw-r--r--font/devlj4/GBI (renamed from devlj4/GBI)0
-rw-r--r--font/devlj4/GI (renamed from devlj4/GI)0
-rw-r--r--font/devlj4/GR (renamed from devlj4/GR)0
-rw-r--r--font/devlj4/LGB (renamed from devlj4/LGB)0
-rw-r--r--font/devlj4/LGI (renamed from devlj4/LGI)0
-rw-r--r--font/devlj4/LGR (renamed from devlj4/LGR)0
-rw-r--r--font/devlj4/MARIGOLD (renamed from devlj4/MARIGOLD)0
-rw-r--r--font/devlj4/Makefile.sub (renamed from devlj4/Makefile.sub)2
-rw-r--r--font/devlj4/OB (renamed from devlj4/OB)0
-rw-r--r--font/devlj4/OBI (renamed from devlj4/OBI)0
-rw-r--r--font/devlj4/OI (renamed from devlj4/OI)0
-rw-r--r--font/devlj4/OR (renamed from devlj4/OR)0
-rw-r--r--font/devlj4/S (renamed from devlj4/S)0
-rw-r--r--font/devlj4/TB (renamed from devlj4/TB)0
-rw-r--r--font/devlj4/TBI (renamed from devlj4/TBI)0
-rw-r--r--font/devlj4/TI (renamed from devlj4/TI)0
-rw-r--r--font/devlj4/TR (renamed from devlj4/TR)0
-rw-r--r--font/devlj4/UB (renamed from devlj4/UB)0
-rw-r--r--font/devlj4/UBI (renamed from devlj4/UBI)0
-rw-r--r--font/devlj4/UCB (renamed from devlj4/UCB)0
-rw-r--r--font/devlj4/UCBI (renamed from devlj4/UCBI)0
-rw-r--r--font/devlj4/UCI (renamed from devlj4/UCI)0
-rw-r--r--font/devlj4/UCR (renamed from devlj4/UCR)0
-rw-r--r--font/devlj4/UI (renamed from devlj4/UI)0
-rw-r--r--font/devlj4/UR (renamed from devlj4/UR)0
-rw-r--r--font/devlj4/generate/Makefile (renamed from devlj4/generate/Makefile)0
-rw-r--r--font/devlj4/generate/special.map (renamed from devlj4/generate/special.map)0
-rw-r--r--font/devlj4/generate/text.map (renamed from devlj4/generate/text.map)0
-rw-r--r--font/devps/AB559
-rw-r--r--font/devps/ABI560
-rw-r--r--font/devps/AI559
-rw-r--r--font/devps/AR558
-rw-r--r--font/devps/BMB438
-rw-r--r--font/devps/BMBI441
-rw-r--r--font/devps/BMI434
-rw-r--r--font/devps/BMR430
-rw-r--r--font/devps/CB336
-rw-r--r--font/devps/CBI337
-rw-r--r--font/devps/CI337
-rw-r--r--font/devps/CR336
-rw-r--r--font/devps/DESC.in (renamed from devps/DESC.in)0
-rw-r--r--font/devps/HB546
-rw-r--r--font/devps/HBI547
-rw-r--r--font/devps/HI617
-rw-r--r--font/devps/HNB546
-rw-r--r--font/devps/HNBI547
-rw-r--r--font/devps/HNI617
-rw-r--r--font/devps/HNR616
-rw-r--r--font/devps/HR616
-rw-r--r--font/devps/Makefile.sub (renamed from devps/Makefile.sub)6
-rw-r--r--font/devps/NB446
-rw-r--r--font/devps/NBI447
-rw-r--r--font/devps/NI447
-rw-r--r--font/devps/NR447
-rw-r--r--font/devps/PB449
-rw-r--r--font/devps/PBI451
-rw-r--r--font/devps/PI453
-rw-r--r--font/devps/PR456
-rw-r--r--font/devps/S227
-rw-r--r--font/devps/SS194
-rw-r--r--font/devps/TB533
-rw-r--r--font/devps/TBI515
-rw-r--r--font/devps/TI528
-rw-r--r--font/devps/TR519
-rw-r--r--font/devps/ZCMI477
-rw-r--r--font/devps/ZD193
-rw-r--r--font/devps/ZDR193
-rw-r--r--font/devps/download (renamed from devps/download)0
-rw-r--r--font/devps/generate/Makefile (renamed from devps/generate/Makefile)0
-rwxr-xr-xfont/devps/generate/afmname (renamed from devps/generate/afmname)0
-rwxr-xr-x[-rw-r--r--]font/devps/generate/dingbatsmap (renamed from devps/generate/dingbatsmap)0
-rwxr-xr-x[-rw-r--r--]font/devps/generate/dingbatsrmap (renamed from devps/generate/dingbatsrmap)0
-rw-r--r--font/devps/generate/lgreekmap (renamed from devps/generate/lgreekmap)0
-rw-r--r--font/devps/generate/symbol.sed (renamed from devps/generate/symbol.sed)0
-rw-r--r--font/devps/generate/symbolchars (renamed from devps/generate/symbolchars)0
-rw-r--r--font/devps/generate/symbolsl.afm (renamed from devps/generate/symbolsl.afm)0
-rw-r--r--font/devps/generate/textmap (renamed from devps/generate/textmap)0
-rw-r--r--font/devps/prologue.ps (renamed from devps/prologue.ps)0
-rw-r--r--font/devps/psstrip.sed (renamed from devps/psstrip.sed)0
-rw-r--r--font/devps/symbol.afm (renamed from devps/symbol.afm)0
-rw-r--r--font/devps/symbolmap (renamed from devps/symbolmap)0
-rw-r--r--font/devps/symbolsl.ps (renamed from devps/symbolsl.ps)0
-rw-r--r--font/devps/text.enc (renamed from devps/text.enc)0
-rw-r--r--font/devps/zapfdr.afm (renamed from devps/zapfdr.afm)0
-rw-r--r--font/devps/zapfdr.ps (renamed from devps/zapfdr.ps)0
-rw-r--r--font/devutf8/DESC.proto8
-rw-r--r--font/devutf8/Makefile.sub32
-rw-r--r--font/devutf8/NOTES91
-rw-r--r--font/devutf8/R.proto468
-rw-r--r--grodvi/Makefile.dep3
-rw-r--r--groff/Makefile.dep5
-rw-r--r--grohtml/Makefile.dep3
-rw-r--r--grohtml/Makefile.sub6
-rw-r--r--grolj4/Makefile.dep3
-rw-r--r--grops/Makefile.dep6
-rw-r--r--grops/Makefile.sub7
-rw-r--r--grotty/Makefile.dep3
-rw-r--r--hpftodit/Makefile.dep3
-rw-r--r--indxbib/Makefile.dep6
-rw-r--r--libbib/Makefile.dep12
-rw-r--r--libbib/Makefile.sub4
-rw-r--r--libdriver/Makefile.dep6
-rw-r--r--libdriver/Makefile.sub3
-rw-r--r--libgroff/Makefile.dep39
-rw-r--r--libgroff/Makefile.sub15
-rw-r--r--lkbib/Makefile.dep3
-rw-r--r--lookbib/Makefile.dep3
-rw-r--r--man/Makefile.sub7
-rw-r--r--man/groff_font.man27
-rw-r--r--[-rwxr-xr-x]mdate.sh0
-rwxr-xr-xmkinstalldirs40
-rw-r--r--mm/Makefile.sub37
-rw-r--r--mm/mm/se_ms.cov3
-rw-r--r--pfbtops/Makefile.dep1
-rw-r--r--pic/Makefile.dep24
-rw-r--r--pic/Makefile.sub11
-rw-r--r--psbb/Makefile.dep1
-rw-r--r--psbb/Makefile.sub5
-rw-r--r--psbb/psbb.c169
-rw-r--r--psbb/psbb.man43
-rw-r--r--refer/Makefile.dep17
-rw-r--r--refer/Makefile.sub10
-rw-r--r--soelim/Makefile.dep2
-rw-r--r--src/devices/grodvi/Makefile.sub (renamed from grodvi/Makefile.sub)2
-rw-r--r--src/devices/grodvi/dvi.cc (renamed from grodvi/dvi.cc)8
-rw-r--r--src/devices/grodvi/grodvi.man (renamed from grodvi/grodvi.man)0
-rwxr-xr-x[-rw-r--r--]src/devices/grohtml/ChangeLog (renamed from grohtml/ChangeLog)68
-rw-r--r--src/devices/grohtml/Makefile.sub10
-rwxr-xr-xsrc/devices/grohtml/TODO294
-rwxr-xr-x[-rw-r--r--]src/devices/grohtml/design.ms (renamed from grohtml/design.ms)27
-rw-r--r--src/devices/grohtml/grohtml.man (renamed from grohtml/grohtml.man)8
-rwxr-xr-x[-rw-r--r--]src/devices/grohtml/html.cc (renamed from grohtml/html.cc)2832
-rw-r--r--src/devices/grohtml/html.h (renamed from grohtml/html.h)8
-rwxr-xr-xsrc/devices/grohtml/html_chars.h27
-rwxr-xr-x[-rw-r--r--]src/devices/grohtml/ordered_list.h (renamed from grohtml/ordered_list.h)0
-rw-r--r--src/devices/grohtml/output.cc257
-rw-r--r--src/devices/grolj4/Makefile.sub (renamed from grolj4/Makefile.sub)2
-rw-r--r--src/devices/grolj4/grolj4.man (renamed from grolj4/grolj4.man)0
-rw-r--r--src/devices/grolj4/lj4.cc (renamed from grolj4/lj4.cc)12
-rw-r--r--src/devices/grops/Makefile.sub12
-rw-r--r--src/devices/grops/TODO (renamed from grops/TODO)0
-rw-r--r--src/devices/grops/grops.man (renamed from grops/grops.man)4
-rw-r--r--src/devices/grops/ps.cc (renamed from grops/ps.cc)20
-rw-r--r--src/devices/grops/ps.h (renamed from grops/ps.h)0
-rw-r--r--src/devices/grops/psfig.diff (renamed from grops/psfig.diff)0
-rw-r--r--src/devices/grops/psrm.cc (renamed from grops/psrm.cc)62
-rw-r--r--src/devices/grotty/Makefile.sub (renamed from grotty/Makefile.sub)2
-rw-r--r--src/devices/grotty/TODO (renamed from grotty/TODO)0
-rw-r--r--src/devices/grotty/grotty.man (renamed from grotty/grotty.man)23
-rw-r--r--src/devices/grotty/tty.cc (renamed from grotty/tty.cc)53
-rw-r--r--src/include/Makefile.sub (renamed from include/Makefile.sub)11
-rw-r--r--src/include/assert.h (renamed from include/assert.h)0
-rw-r--r--src/include/cmap.h (renamed from include/cmap.h)0
-rw-r--r--src/include/cset.h (renamed from include/cset.h)0
-rw-r--r--src/include/device.h (renamed from include/device.h)0
-rw-r--r--src/include/driver.h (renamed from include/driver.h)0
-rw-r--r--src/include/errarg.h (renamed from include/errarg.h)0
-rw-r--r--src/include/error.h (renamed from include/error.h)0
-rw-r--r--src/include/font.h (renamed from include/font.h)3
-rw-r--r--src/include/index.h (renamed from include/index.h)0
-rw-r--r--src/include/lib.h (renamed from include/lib.h)4
-rw-r--r--src/include/macropath.h (renamed from include/macropath.h)0
-rw-r--r--src/include/posix.h (renamed from include/posix.h)0
-rw-r--r--src/include/printer.h (renamed from include/printer.h)0
-rw-r--r--src/include/ptable.h (renamed from include/ptable.h)0
-rw-r--r--src/include/refid.h (renamed from include/refid.h)0
-rw-r--r--src/include/search.h (renamed from include/search.h)0
-rw-r--r--src/include/searchpath.h (renamed from include/searchpath.h)0
-rw-r--r--src/include/stringclass.h (renamed from include/stringclass.h)0
-rwxr-xr-x[-rw-r--r--]src/include/unix.h (renamed from include/unix.h)0
-rw-r--r--src/libs/libbib/Makefile.sub14
-rw-r--r--src/libs/libbib/common.cc (renamed from libbib/common.cc)0
-rw-r--r--src/libs/libbib/index.cc (renamed from libbib/index.cc)11
-rw-r--r--src/libs/libbib/linear.cc (renamed from libbib/linear.cc)2
-rw-r--r--src/libs/libbib/map.c (renamed from libbib/map.c)0
-rw-r--r--src/libs/libbib/search.cc (renamed from libbib/search.cc)2
-rw-r--r--src/libs/libdriver/Makefile.sub7
-rw-r--r--src/libs/libdriver/input.cc (renamed from libdriver/input.cc)29
-rw-r--r--src/libs/libdriver/printer.cc (renamed from libdriver/printer.cc)2
-rw-r--r--src/libs/libgroff/Makefile.sub78
-rw-r--r--src/libs/libgroff/assert.cc (renamed from libgroff/assert.cc)0
-rw-r--r--src/libs/libgroff/change_lf.cc (renamed from libgroff/change_lf.cc)0
-rw-r--r--src/libs/libgroff/cmap.cc (renamed from libgroff/cmap.cc)0
-rw-r--r--src/libs/libgroff/cset.cc (renamed from libgroff/cset.cc)0
-rw-r--r--src/libs/libgroff/device.cc (renamed from libgroff/device.cc)0
-rw-r--r--src/libs/libgroff/errarg.cc (renamed from libgroff/errarg.cc)0
-rw-r--r--src/libs/libgroff/error.cc (renamed from libgroff/error.cc)0
-rw-r--r--src/libs/libgroff/fatal.cc (renamed from libgroff/fatal.cc)0
-rw-r--r--src/libs/libgroff/filename.cc (renamed from libgroff/filename.cc)0
-rw-r--r--src/libs/libgroff/fmod.c (renamed from libgroff/fmod.c)0
-rw-r--r--src/libs/libgroff/font.cc (renamed from libgroff/font.cc)33
-rw-r--r--src/libs/libgroff/fontfile.cc (renamed from libgroff/fontfile.cc)2
-rw-r--r--src/libs/libgroff/getcwd.c (renamed from libgroff/getcwd.c)0
-rw-r--r--src/libs/libgroff/iftoa.c (renamed from libgroff/iftoa.c)0
-rwxr-xr-x[-rw-r--r--]src/libs/libgroff/illegal.cc (renamed from libgroff/illegal.cc)0
-rw-r--r--src/libs/libgroff/itoa.c (renamed from libgroff/itoa.c)0
-rw-r--r--src/libs/libgroff/lf.cc (renamed from libgroff/lf.cc)0
-rw-r--r--src/libs/libgroff/lineno.cc (renamed from libgroff/lineno.cc)0
-rw-r--r--src/libs/libgroff/macropath.cc (renamed from libgroff/macropath.cc)0
-rw-r--r--src/libs/libgroff/matherr.c (renamed from libgroff/matherr.c)0
-rw-r--r--src/libs/libgroff/nametoindex.cc (renamed from libgroff/nametoindex.cc)0
-rw-r--r--src/libs/libgroff/new.cc (renamed from libgroff/new.cc)0
-rw-r--r--src/libs/libgroff/prime.cc (renamed from libgroff/prime.cc)0
-rw-r--r--src/libs/libgroff/progname.cc (renamed from libgroff/progname.cc)0
-rw-r--r--src/libs/libgroff/ptable.cc (renamed from libgroff/ptable.cc)0
-rw-r--r--src/libs/libgroff/putenv.c (renamed from libgroff/putenv.c)0
-rw-r--r--src/libs/libgroff/searchpath.cc (renamed from libgroff/searchpath.cc)0
-rw-r--r--src/libs/libgroff/strerror.c (renamed from libgroff/strerror.c)0
-rw-r--r--src/libs/libgroff/string.cc (renamed from libgroff/string.cc)2
-rw-r--r--src/libs/libgroff/strsave.cc (renamed from libgroff/strsave.cc)0
-rw-r--r--src/libs/libgroff/strtol.c (renamed from libgroff/strtol.c)0
-rw-r--r--src/libs/libgroff/tmpfile.cc (renamed from libgroff/tmpfile.cc)0
-rw-r--r--src/preproc/eqn/Makefile.sub57
-rw-r--r--src/preproc/eqn/TODO (renamed from eqn/TODO)0
-rw-r--r--src/preproc/eqn/box.cc (renamed from eqn/box.cc)2
-rw-r--r--src/preproc/eqn/box.h (renamed from eqn/box.h)0
-rw-r--r--src/preproc/eqn/delim.cc (renamed from eqn/delim.cc)0
-rwxr-xr-x[-rw-r--r--]src/preproc/eqn/eqn.cc (renamed from eqn/eqn.cc)0
-rw-r--r--src/preproc/eqn/eqn.h (renamed from eqn/eqn.h)0
-rw-r--r--src/preproc/eqn/eqn.man (renamed from eqn/eqn.man)7
-rwxr-xr-x[-rw-r--r--]src/preproc/eqn/eqn.tab.h (renamed from eqn/eqn.tab.h)0
-rw-r--r--src/preproc/eqn/eqn.y (renamed from eqn/eqn.y)0
-rw-r--r--src/preproc/eqn/lex.cc (renamed from eqn/lex.cc)2
-rw-r--r--src/preproc/eqn/limit.cc (renamed from eqn/limit.cc)0
-rw-r--r--src/preproc/eqn/list.cc (renamed from eqn/list.cc)0
-rw-r--r--src/preproc/eqn/main.cc (renamed from eqn/main.cc)4
-rw-r--r--src/preproc/eqn/mark.cc (renamed from eqn/mark.cc)0
-rw-r--r--src/preproc/eqn/neqn.sh (renamed from eqn/neqn.sh)2
-rw-r--r--src/preproc/eqn/other.cc (renamed from eqn/other.cc)8
-rw-r--r--src/preproc/eqn/over.cc (renamed from eqn/over.cc)2
-rw-r--r--src/preproc/eqn/pbox.h (renamed from eqn/pbox.h)0
-rw-r--r--src/preproc/eqn/pile.cc (renamed from eqn/pile.cc)0
-rw-r--r--src/preproc/eqn/script.cc (renamed from eqn/script.cc)0
-rw-r--r--src/preproc/eqn/special.cc (renamed from eqn/special.cc)2
-rw-r--r--src/preproc/eqn/sqrt.cc (renamed from eqn/sqrt.cc)0
-rw-r--r--src/preproc/eqn/text.cc (renamed from eqn/text.cc)2
-rw-r--r--src/preproc/pic/Makefile.sub31
-rw-r--r--src/preproc/pic/TODO (renamed from pic/TODO)0
-rw-r--r--src/preproc/pic/common.cc (renamed from pic/common.cc)0
-rw-r--r--src/preproc/pic/common.h (renamed from pic/common.h)0
-rwxr-xr-x[-rw-r--r--]src/preproc/pic/depend (renamed from pic/depend)0
-rw-r--r--src/preproc/pic/lex.cc (renamed from pic/lex.cc)12
-rw-r--r--src/preproc/pic/main.cc (renamed from pic/main.cc)4
-rw-r--r--src/preproc/pic/object.cc (renamed from pic/object.cc)14
-rw-r--r--src/preproc/pic/object.h (renamed from pic/object.h)0
-rw-r--r--src/preproc/pic/output.h (renamed from pic/output.h)0
-rwxr-xr-x[-rw-r--r--]src/preproc/pic/pic.cc (renamed from pic/pic.cc)4834
-rw-r--r--src/preproc/pic/pic.h (renamed from pic/pic.h)0
-rw-r--r--src/preproc/pic/pic.man (renamed from pic/pic.man)3
-rwxr-xr-x[-rw-r--r--]src/preproc/pic/pic.tab.h (renamed from pic/pic.tab.h)71
-rw-r--r--src/preproc/pic/pic.y (renamed from pic/pic.y)7
-rw-r--r--src/preproc/pic/position.h (renamed from pic/position.h)0
-rw-r--r--src/preproc/pic/tex.cc (renamed from pic/tex.cc)0
-rw-r--r--src/preproc/pic/text.h (renamed from pic/text.h)0
-rw-r--r--src/preproc/pic/troff.cc (renamed from pic/troff.cc)0
-rw-r--r--src/preproc/refer/Makefile.sub23
-rw-r--r--src/preproc/refer/TODO (renamed from refer/TODO)0
-rw-r--r--src/preproc/refer/command.cc (renamed from refer/command.cc)0
-rw-r--r--src/preproc/refer/command.h (renamed from refer/command.h)0
-rwxr-xr-x[-rw-r--r--]src/preproc/refer/label.cc (renamed from refer/label.cc)240
-rw-r--r--src/preproc/refer/label.y (renamed from refer/label.y)8
-rw-r--r--src/preproc/refer/ref.cc (renamed from refer/ref.cc)2
-rw-r--r--src/preproc/refer/ref.h (renamed from refer/ref.h)0
-rw-r--r--src/preproc/refer/refer.cc (renamed from refer/refer.cc)4
-rw-r--r--src/preproc/refer/refer.h (renamed from refer/refer.h)0
-rw-r--r--src/preproc/refer/refer.man (renamed from refer/refer.man)0
-rw-r--r--src/preproc/refer/token.cc (renamed from refer/token.cc)0
-rw-r--r--src/preproc/refer/token.h (renamed from refer/token.h)0
-rw-r--r--src/preproc/soelim/Makefile.sub (renamed from soelim/Makefile.sub)2
-rw-r--r--src/preproc/soelim/TODO (renamed from soelim/TODO)0
-rw-r--r--src/preproc/soelim/soelim.cc (renamed from soelim/soelim.cc)16
-rw-r--r--src/preproc/soelim/soelim.man (renamed from soelim/soelim.man)0
-rw-r--r--src/preproc/tbl/Makefile.sub12
-rw-r--r--src/preproc/tbl/main.cc (renamed from tbl/main.cc)10
-rw-r--r--src/preproc/tbl/table.cc (renamed from tbl/table.cc)24
-rw-r--r--src/preproc/tbl/table.h (renamed from tbl/table.h)0
-rw-r--r--src/preproc/tbl/tbl.man (renamed from tbl/tbl.man)0
-rw-r--r--src/roff/groff/Makefile.sub (renamed from groff/Makefile.sub)6
-rw-r--r--src/roff/groff/groff.cc (renamed from groff/groff.cc)0
-rw-r--r--src/roff/groff/groff.man (renamed from groff/groff.man)8
-rw-r--r--src/roff/groff/pipeline.c (renamed from groff/pipeline.c)0
-rw-r--r--src/roff/groff/pipeline.h (renamed from groff/pipeline.h)0
-rw-r--r--src/roff/grog/Makefile.sub (renamed from grog/Makefile.sub)2
-rw-r--r--src/roff/grog/grog.man (renamed from grog/grog.man)0
-rw-r--r--src/roff/grog/grog.pl (renamed from grog/grog.pl)0
-rw-r--r--src/roff/grog/grog.sh (renamed from grog/grog.sh)0
-rw-r--r--src/roff/nroff/Makefile.sub (renamed from nroff/Makefile.sub)1
-rw-r--r--src/roff/nroff/nroff.man (renamed from nroff/nroff.man)7
-rw-r--r--[-rwxr-xr-x]src/roff/nroff/nroff.sh (renamed from nroff/nroff.sh)27
-rw-r--r--src/roff/troff/Makefile.sub57
-rw-r--r--src/roff/troff/TODO (renamed from troff/TODO)0
-rw-r--r--src/roff/troff/charinfo.h (renamed from troff/charinfo.h)6
-rw-r--r--src/roff/troff/column.cc (renamed from troff/column.cc)0
-rw-r--r--src/roff/troff/dictionary.cc (renamed from troff/dictionary.cc)2
-rw-r--r--src/roff/troff/dictionary.h (renamed from troff/dictionary.h)0
-rw-r--r--src/roff/troff/div.cc (renamed from troff/div.cc)13
-rw-r--r--src/roff/troff/div.h (renamed from troff/div.h)0
-rw-r--r--src/roff/troff/env.cc (renamed from troff/env.cc)90
-rw-r--r--src/roff/troff/env.h (renamed from troff/env.h)0
-rw-r--r--src/roff/troff/hvunits.h (renamed from troff/hvunits.h)0
-rwxr-xr-x[-rw-r--r--]src/roff/troff/hyphen.us (renamed from troff/hyphen.us)0
-rw-r--r--src/roff/troff/input.cc (renamed from troff/input.cc)270
-rw-r--r--src/roff/troff/node.cc (renamed from troff/node.cc)58
-rw-r--r--src/roff/troff/node.h (renamed from troff/node.h)3
-rw-r--r--src/roff/troff/number.cc (renamed from troff/number.cc)0
-rw-r--r--src/roff/troff/reg.cc (renamed from troff/reg.cc)2
-rw-r--r--src/roff/troff/reg.h (renamed from troff/reg.h)0
-rw-r--r--src/roff/troff/request.h (renamed from troff/request.h)0
-rw-r--r--src/roff/troff/symbol.cc (renamed from troff/symbol.cc)0
-rw-r--r--src/roff/troff/symbol.h (renamed from troff/symbol.h)0
-rw-r--r--src/roff/troff/token.h (renamed from troff/token.h)6
-rw-r--r--src/roff/troff/troff.h (renamed from troff/troff.h)0
-rw-r--r--src/roff/troff/troff.man (renamed from troff/troff.man)42
-rw-r--r--src/utils/addftinfo/Makefile.sub11
-rw-r--r--src/utils/addftinfo/addftinfo.cc (renamed from addftinfo/addftinfo.cc)0
-rw-r--r--src/utils/addftinfo/addftinfo.man (renamed from addftinfo/addftinfo.man)0
-rw-r--r--src/utils/addftinfo/guess.cc (renamed from addftinfo/guess.cc)0
-rw-r--r--src/utils/addftinfo/guess.h (renamed from addftinfo/guess.h)0
-rw-r--r--src/utils/afmtodit/Makefile.sub (renamed from afmtodit/Makefile.sub)2
-rw-r--r--src/utils/afmtodit/afmtodit.man (renamed from afmtodit/afmtodit.man)0
-rw-r--r--src/utils/afmtodit/afmtodit.pl (renamed from afmtodit/afmtodit.pl)4
-rw-r--r--src/utils/hpftodit/Makefile.sub (renamed from hpftodit/Makefile.sub)2
-rw-r--r--src/utils/hpftodit/hpftodit.cc (renamed from hpftodit/hpftodit.cc)4
-rw-r--r--src/utils/hpftodit/hpftodit.man (renamed from hpftodit/hpftodit.man)0
-rw-r--r--src/utils/indxbib/Makefile.sub (renamed from indxbib/Makefile.sub)16
-rwxr-xr-x[-rw-r--r--]src/utils/indxbib/dirnamemax.c (renamed from indxbib/dirnamemax.c)0
-rw-r--r--src/utils/indxbib/eign (renamed from indxbib/eign)0
-rw-r--r--src/utils/indxbib/indxbib.cc (renamed from indxbib/indxbib.cc)4
-rw-r--r--src/utils/indxbib/indxbib.man (renamed from indxbib/indxbib.man)0
-rw-r--r--src/utils/indxbib/signal.c (renamed from indxbib/signal.c)0
-rw-r--r--src/utils/lkbib/Makefile.sub (renamed from lkbib/Makefile.sub)2
-rw-r--r--src/utils/lkbib/lkbib.cc (renamed from lkbib/lkbib.cc)4
-rw-r--r--src/utils/lkbib/lkbib.man (renamed from lkbib/lkbib.man)0
-rw-r--r--src/utils/lookbib/Makefile.sub (renamed from lookbib/Makefile.sub)2
-rw-r--r--src/utils/lookbib/lookbib.cc (renamed from lookbib/lookbib.cc)4
-rw-r--r--src/utils/lookbib/lookbib.man (renamed from lookbib/lookbib.man)0
-rw-r--r--src/utils/pfbtops/Makefile.sub (renamed from pfbtops/Makefile.sub)2
-rw-r--r--src/utils/pfbtops/pfbtops.c (renamed from pfbtops/pfbtops.c)4
-rw-r--r--src/utils/pfbtops/pfbtops.man (renamed from pfbtops/pfbtops.man)0
-rw-r--r--src/utils/tfmtodit/Makefile.sub (renamed from tfmtodit/Makefile.sub)2
-rw-r--r--src/utils/tfmtodit/tfmtodit.cc (renamed from tfmtodit/tfmtodit.cc)6
-rw-r--r--src/utils/tfmtodit/tfmtodit.man (renamed from tfmtodit/tfmtodit.man)0
-rw-r--r--src/xditview/ChangeLog (renamed from xditview/ChangeLog)11
-rw-r--r--src/xditview/DESC (renamed from xditview/DESC)0
-rw-r--r--src/xditview/Dvi.c (renamed from xditview/Dvi.c)0
-rw-r--r--src/xditview/Dvi.h (renamed from xditview/Dvi.h)0
-rw-r--r--src/xditview/DviChar.c (renamed from xditview/DviChar.c)0
-rw-r--r--src/xditview/DviChar.h (renamed from xditview/DviChar.h)0
-rw-r--r--src/xditview/DviP.h (renamed from xditview/DviP.h)0
-rw-r--r--src/xditview/FontMap (renamed from xditview/FontMap)0
-rw-r--r--src/xditview/GXditview-ad.h (renamed from xditview/GXditview-ad.h)0
-rw-r--r--src/xditview/GXditview.ad (renamed from xditview/GXditview.ad)0
-rw-r--r--src/xditview/INSTALL (renamed from xditview/INSTALL)0
-rwxr-xr-x[-rw-r--r--]src/xditview/Imakefile (renamed from xditview/Imakefile)21
-rw-r--r--src/xditview/Menu.h (renamed from xditview/Menu.h)0
-rw-r--r--src/xditview/README (renamed from xditview/README)4
-rw-r--r--src/xditview/TODO (renamed from xditview/TODO)0
-rw-r--r--src/xditview/XFontName.c (renamed from xditview/XFontName.c)0
-rw-r--r--src/xditview/XFontName.h (renamed from xditview/XFontName.h)0
-rw-r--r--src/xditview/ad2c (renamed from xditview/ad2c)0
-rw-r--r--src/xditview/device.c (renamed from xditview/device.c)0
-rw-r--r--src/xditview/device.h (renamed from xditview/device.h)0
-rw-r--r--src/xditview/draw.c (renamed from xditview/draw.c)0
-rw-r--r--src/xditview/font.c (renamed from xditview/font.c)0
-rw-r--r--src/xditview/gray1.bm (renamed from xditview/gray1.bm)0
-rw-r--r--src/xditview/gray2.bm (renamed from xditview/gray2.bm)0
-rw-r--r--src/xditview/gray3.bm (renamed from xditview/gray3.bm)0
-rw-r--r--src/xditview/gray4.bm (renamed from xditview/gray4.bm)0
-rw-r--r--src/xditview/gray5.bm (renamed from xditview/gray5.bm)0
-rw-r--r--src/xditview/gray6.bm (renamed from xditview/gray6.bm)0
-rw-r--r--src/xditview/gray7.bm (renamed from xditview/gray7.bm)0
-rw-r--r--src/xditview/gray8.bm (renamed from xditview/gray8.bm)0
-rw-r--r--src/xditview/gxditview.man (renamed from xditview/gxditview.man)0
-rw-r--r--src/xditview/lex.c (renamed from xditview/lex.c)0
-rw-r--r--src/xditview/page.c (renamed from xditview/page.c)0
-rw-r--r--src/xditview/parse.c (renamed from xditview/parse.c)0
-rw-r--r--src/xditview/xdit.bm (renamed from xditview/xdit.bm)0
-rw-r--r--src/xditview/xdit_mask.bm (renamed from xditview/xdit_mask.bm)0
-rw-r--r--src/xditview/xditview.c (renamed from xditview/xditview.c)0
-rw-r--r--src/xditview/xtotroff.c (renamed from xditview/xtotroff.c)0
-rw-r--r--tbl/Makefile.dep6
-rw-r--r--tbl/Makefile.sub7
-rw-r--r--[-rwxr-xr-x]test-groff27
-rw-r--r--tfmtodit/Makefile.dep2
-rw-r--r--tmac/Makefile.sub27
-rw-r--r--tmac/eqnrc1
-rwxr-xr-xtmac/groff_markup.man319
-rwxr-xr-x[-rw-r--r--]tmac/groff_mdoc.samples.man0
-rwxr-xr-x[-rw-r--r--]tmac/groff_msafer.man0
-rwxr-xr-x[-rw-r--r--]tmac/mm.diff0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.X0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.Xps0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.a40
-rwxr-xr-x[-rw-r--r--]tmac/tmac.an9
-rwxr-xr-x[-rw-r--r--]tmac/tmac.andoc0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.arkup175
-rwxr-xr-x[-rw-r--r--]tmac/tmac.doc0
-rw-r--r--tmac/tmac.doc.old1858
-rwxr-xr-x[-rw-r--r--]tmac/tmac.dvi0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.e0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.html6
-rwxr-xr-x[-rw-r--r--]tmac/tmac.latin10
-rwxr-xr-x[-rw-r--r--]tmac/tmac.lj40
-rwxr-xr-x[-rw-r--r--]tmac/tmac.pic0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.ps0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.psatk0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.psfig0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.psnew0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.psold0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.pspic21
-rwxr-xr-x[-rw-r--r--]tmac/tmac.s3
-rwxr-xr-x[-rw-r--r--]tmac/tmac.safer0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.trace0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.tty0
-rwxr-xr-x[-rw-r--r--]tmac/tmac.tty-char4
-rw-r--r--tmac/troffrc3
-rw-r--r--tmac/troffrc-end6
-rw-r--r--troff/Makefile.dep36
-rw-r--r--troff/Makefile.sub30
670 files changed, 39710 insertions, 28291 deletions
diff --git a/ChangeLog b/ChangeLog
index 657815653..2889ce10a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,353 @@
+2000-02-06 Werner LEMBERG <wl@gnu.org>
+
+ I've considerably modified the directory structure of the
+ distribution to get a more vertical layout. For example, the number
+ of top level directories has been reduced from 42 to 6.
+
+ As a consequence, many changes, especially to the makefiles, were
+ necessary:
+
+ * The makefile variables `top_builddir' and `top_srcdir' have been
+ introduced. Virtually all relative paths have been replaced with
+ absolute ones using these two variables.
+
+ * Dependencies (in the files `Makefile.dep') are no longer part of
+ the distribution. Instead, they are created during a `make install'
+ in the build directory.
+
+ * aclocal.m4 (GROFF_SRCDIR, GROFF_BUILDDIR): Two new functions to
+ make `top_srcdir' and `top_builddir' absolute.
+
+ Some other changes:
+
+ * Man pages no depend on the files `VERSION' and `REVISION'.
+
+ * The added shell script `mkinstalldirs' will replace `mkdir' in
+ almost all cases.
+
+ * VERSION: Version number increased to 1.16.
+
+2000-02-04 Werner LEMBERG <wl@gnu.org>
+
+ * grops/psrm.cc (read_one_of): Fixed pointer incrementation.
+
+ * Makefile.in: Removed $(tmac_m) since it is no longer needed
+ (after an update of the mm stuff).
+
+ * troff/Makefile.sub (majorminor.cc): Fix dependencies.
+
+2000-02-03 Werner LEMBERG <wl@gnu.org>
+
+ The .psbb request will now also accept Mac PS images (i.e. using LF
+ as the EOL character).
+
+ * troff/input.cc (ps_get_line): New function, taken from psrm.cc
+ (with slight modifications).
+ * troff/input.cc (do_ps_file): Use it.
+
+ * test-groff: Add grohtml and grolj4 output devices to PATH.
+
+2000-01-30 Werner LEMBERG <wl@gnu.org>
+
+ * NEWS, MORE.STUFF: Updated.
+
+2000-01-30 Cary D. Renzema <caryr@dollar.mxim.com>
+
+ Add the `srand' command to pic.
+
+ * pic/lex.cc, pic/pic.y: Implement it.
+ * pic/pic.man: Document it.
+ * pic/pic.cc, pic/pic.tab.h: Regenerated (with yacc).
+
+2000-01-30 Werner LEMBERG <wl@gnu.org>
+
+ Add a new request `.psbb'. This does exactly what the external
+ program psbb did. It scans a PostScript image file for a
+ %%BoundingBox comment and extracts the bounding box values (in
+ PostScript units) which are then stored in the four new (read-only)
+ number registers `llx', `lly', `urx', and `ury'.
+
+ This will allow the usage of the .PSPIC macro without worrying
+ about unsafe behaviour of groff, i.e., it will work without the
+ `-U' switch of groff.
+
+ * troff/input.cc: Implement it.
+ * tmac/tmac.pspic: Use it.
+ * troff/troff.man, grops/grops.man, NEWS: Document it.
+ * psbb/*, Makefile.in: Remove it since it is no longer needed.
+
+ This is bloody C code simply adapted from psbb.c! Any improvements
+ welcome.
+
+2000-01-29 Werner LEMBERG <wl@gnu.org>
+
+ * man/groff_font.man: Minor clarifications.
+
+ * NEWS: Updated.
+
+2000-01-28 Werner LEMBERG <wl@gnu.org>
+
+ * afmtodit/afmtodit.pl: Use new `--' comment delimiter.
+
+2000-01-28 Gaius Mulley <gaius@glam.ac.uk>
+
+ * man/groff_font.man: Brought up to date regarding tcommand
+ extensions.
+ * libgroff/font.cc: Handle everything after `--' as a comment
+ in the font files.
+ * devps/*: Added comment delimiter inside devps font files.
+
+2000-01-28 Werner LEMBERG <wl@gnu.org>
+
+ * tmac/tmac.arkup, tmac/groff_markup.man: Replace \fC...\fR with
+ \fC...\fP (which now works as expected).
+
+ * troff/troff.man: Fix typo.
+
+2000-01-27 Gaius Mulley <gaius@glam.ac.uk>
+
+ Completed the pass_filenames implementation in troff.
+
+ * libdriver/input.cc: Will read the new `F' tcommand.
+ * troff/node.cc, troff/node.h: Will issue the new `F' tcommand.
+ * troff/input.cc: Use it.
+
+2000-01-26 Werner LEMBERG <wl@gnu.org>
+
+ * troff/env.cc (set_font): Fix the behaviour of \fP. The previous
+ font will now be updated even if an invalid font is selected.
+
+2000-01-24 Werner LEMBERG <wl@gnu.org>
+
+ * doc/homepage.ms: Updated for new tmac.arkup.
+
+ * tmac/tmac.html: Disable line breaks after hyphen-like characters.
+
+ * tmac/tmac.arkup: Cleanup.
+
+ Added `\&' to .HTML macro to `leave vertical mode', so to say.
+
+ Removed obsolete .LINK macro completely.
+
+ The macros .URL, .FTP, and .MAILTO now accept a third argument which
+ will be immediately appended to the second argument (to be used with
+ punctuation, for example).
+
+ Disabled .CDFTP macro temporarily for security reasons.
+
+ * tmac/groff_markup.man: Complete revision for latest changes in
+ tmac.arkup -- note that it does not yet format correctly with
+ grohtml :-(
+
+2000-01-23 Bruno Haible <haible@clisp.cons.org>
+
+ * nroff/nroff.sh: Accept -Tutf8 option and pass it through.
+ * devutf8/R.proto: Add mappings for wp, lh, rh.
+ * devutf8/NOTES: Updated.
+
+2000-01-23 Werner LEMBERG <wl@gnu.org>
+
+ * doc/groff.texinfo: Updated version/copyright info.
+
+2000-01-21 Gaius Mulley <gaius@glam.ac.uk>
+
+ Added support for two new directives in device descriptions:
+ `pass_filenames' (to pass the input file name to the output device)
+ and `use_charnames_in_special' (to support e.g. accented characters
+ in the `X' request).
+
+ * include/font.h, troff/charinfo.h: Declare it.
+
+ * libgroff/font.cc, libgroff/fontfile.cc: Set it.
+
+ * devhtml/DESC: Use it.
+
+ * troff/input.cc: New function encoded_char.
+
+ * troff/token.h: Add test for `specialness'.
+
+2000-01-21 Werner LEMBERG <wl@gnu.org>
+
+ * tmac/Makefile.sub: tmac.a4 and tmac.trace have been removed by
+ mistake from the list of files to be installed.
+
+2000-01-18 Werner LEMBERG <wl@gnu.org>
+
+ * README: Added info how to apply patches.
+
+2000-01-15 Jan Echternach <echter@informatik.uni-rostock.de>
+
+ * troff/node.cc (ligature_note::operator delete): Fix g++ warning.
+
+2000-01-15 Gaius Mulley <gaius@glam.ac.uk>
+
+ * troff/input.cc: Add support for troffrc-end.
+
+ * tbl/main.cc: Altered to issue table-start and table-end special
+ characters if using the html device.
+
+ * devhtml/*: Modified font files to incorporate html encoding of
+ characters.
+
+ * tmac/groff_markup.man: New file documenting tmac.arkup.
+
+ * tmac/troffrc-end: New file. This is invoked after all user
+ specified macros. Currently used by the html device to include
+ tmac.html. Thus no need for users to specify -mhtml anymore.
+
+ * tmac/Makefile.sub (NORMALFILES): Add troffrc-end.
+ (MAN7): Add groff_markup.man.
+
+ * tmac/tmac.an, tmac/tmac.html: Small html updates.
+
+ * tmac/troffrc: tmac.arkup will now be called for the html device.
+
+ * libgroff/font.cc, libgroff/font.h: Altered to include reading of
+ extra device specific information about fonts.
+
+ * doc/homepage.ms: New file. It is an example how an HTML home page
+ could look like with grohtml.
+
+ * doc/Makefile: Add homepage.ms. Remove rule for pic.html.
+
+2000-01-12 Bruno Haible <haible@clisp.cons.org>
+
+ * devutf8/R.proto: Add mappings for ti, Fn, st, an. Change mappings
+ of Im, Re.
+
+ * devutf8/NOTES: Updated.
+
+2000-01-08 Bruno Haible <haible@clisp.cons.org>
+
+ * eqn/box.cc, eqn/lex.cc, eqn/other.cc, eqn/over.cc, eqn/special.cc,
+ eqn/text.cc, grodvi/dvi.cc, grops/ps.cc, grops/psrm.cc,
+ libbib/index.cc, libbib/linear.cc, libbib/search.cc,
+ libdriver/printer.cc, libgroff/font.cc, libgroff/string.cc,
+ pic/lex.cc, pic/object.cc, refer/label.y, refer/ref.cc, tbl/main.cc,
+ tbl/table.cc, tfmtodit/tfmtodit.cc, troff/dictionary.cc,
+ troff/div.cc, troff/env.cc, troff/input.cc, troff/node.cc,
+ troff/node.h, troff/reg.cc: Avoid most "g++ -Wall -Wno-sign-compare"
+ warnings.
+
+ * troff/node.cc (bracket_node::copy): Initialize last to NULL.
+
+2000-01-12 Fabrizio Polacco <fab@prosa.it>
+
+ grolj4: Paper size will be searched case-insensitively.
+
+ * grolj4/lib.h: Add check for strcasecmp().
+ * grolj4/li4.cc (lookup_paper_size): Use strcasecmp().
+ * configure.in: Check for strcasecmp().
+
+2000-01-11 Werner LEMBERG <wl@gnu.org>
+
+ * troff/Makefile.sub (majorminor.cc): Fix incorrect path to
+ `REVISION'.
+
+2000-01-10 Werner LEMBERG <wl@gnu.org>
+
+ * Makefile.comm, Makefile.in, doc/Makefile: More fixes for the
+ revision scheme.
+
+ Add a new read-only register, `.Y', which contains the groff
+ revision.
+
+ * troff/input.cc (init_input_requests): Define it.
+ * troff/Makefile.sub (majorminor.cc): Define `revision' string.
+ * doc/groff.texinfo, troff/troff.man: Document it.
+
+ * libgroff/Makefile.sub (version.cc): Add definition of
+ `Version_string[]', consisting of `<major>.<minor>.<revision>'
+ * eqn/main.cc, grodvi/dvi.cc, grolj4/lj4.cc, grops/ps.cc,
+ grotty/tty.cc, hpftodit/hpftodit.cc, indxbib/indxbib.cc, pic/main.cc,
+ refer/refer.cc, soelim/soelim.cc, tbl/main.cc, tfmtodit/tfmtodit.cc,
+ troff/input.cc, pfbtops/pfbtops.c: Use it.
+
+2000-01-10 Fabrizio Polacco <fab@prosa.it>
+
+ Add a revision scheme to the groff package.
+
+ * REVISION: New file.
+ * libgroff/Makefile.sub (version.cc): Use it to define
+ `revision_string[]'.
+ * grops/psrm.cc: Use revision_string (converted to an unsigned
+ integer) in constructor of resource_manager.
+
+2000-01-10 Bruno Haible <haible@clisp.cons.org>
+
+ * devutf8/Makefile.sub, devutf8/DESC.proto, devutf8/R.proto: New
+ files.
+ * Makefile.in (DEVDIRS): Add devutf8.
+ * grotty/tty.cc: Include device.h.
+ (glyph): Change type of `code' to `unsigned int'.
+ (tty_printer): New field is_utf8. Constructor takes device argument.
+ (tty_printer::tty_printer): If device if `utf8', set is_utf8.
+ (tty_printer::add_char): Change type of first arg to `unsigned int'.
+ (tty_printer::put_char): New function.
+ (tty_printer::end_page): Use put_char() instead of ::putchar().
+ (make_printer): Pass device to tty_printer constructor.
+ * nroff.sh: Determine default device by calling 'locale'. As a
+ fallback, look at all of $LC_ALL, $LC_CTYPE, $LANG, $LESSCHARSET.
+ Recognize UTF-8 locales.
+ * tmac/eqnrc: Recognize utf8 like latin1.
+ * tmac/troffrc: Device utf8 needs tmac.tty.
+
+2000-01-07 Werner LEMBERG <wl@gnu.org>
+
+ * tmac/Makefile.sub: tmac.a4 and tmac.trace will now be installed.
+
+2000-01-07 Paul Eggert <eggert@twinsun.com>
+
+ Add a new predefined writeable number register, `year',
+ which contains the current year.
+
+ * doc/groff.texinfo, PROBLEMS, troff/troff.man: Document it.
+ * tmac/tmac.s: Use it.
+ * troff/input.cc (init_registers): Initialize it.
+
+2000-01-06 Werner LEMBERG <wl@gnu.org>
+
+ * PROBLEMS: Fixed typo.
+
+2000-01-04 Paul Eggert <eggert@twinsun.com>
+
+ * PROBLEMS: Add Y2k advice for the yr number register.
+
+2000-01-03 Paul Eggert <eggert@twinsun.com>
+
+ * doc/groff.texinfo: Fix Y2k bug in documentation of \n(yr.
+
+2000-01-02 Werner LEMBERG <wl@gnu.org>
+
+ * tmac/tmac.arkup: Slight modification of macros to provide better
+ appearance for non-HTML formats.
+
+2000-01-01 Charles Levert <charles@comm.polymtl.ca>
+
+ * soelim/soelim.cc (include_path_append): realloc(NULL, n)
+ does not automatically translate to malloc(n) on all OSes
+ (e.g., SunOS) so do it explicitly. Also, check the returned
+ value.
+
+2000-01-01 Werner LEMBERG <wl@gnu.org>
+
+ * tmac/tmac.arkup: Added .LINE macro. Some formatting.
+
+ * Makefile.in: Added $(tmac_m) again since the Makefile in `mm'
+ expects this variable
+
+2000-01-01 Gaius Mulley <gaius@glam.ac.uk>
+
+ * doc/Makefile: Added instructions to create HTML and text
+ versions of some files.
+
+1999-12-31 Werner LEMBERG <wl@gnu.org>
+
+ * Updated INSTALL.gen.
+
+ * tmac/tmac.arkup: Added fixes so that .FTP and .MAILTO works
+ better resp. correctly with non-HTML devices.
+
Version 1.15 released
=====================
@@ -552,16 +902,16 @@ Sat Jun 10 12:28:16 1995 James Clark <jjc@jclark.com>
Thu May 11 01:07:16 1995 Jason Merrill <jason@phydeaux.cygnus.com>
* addftinfo/addftinfo.cc, eqn/delim.cc, eqn/lex.cc, eqn/list.cc,
- grodvi/dvi.cc, groff/groff.cc, grops/ps.cc, grops/psrm.cc,
- grotty/tty.cc, include/ptable.h indxbib/indxbib.cc,
- libbib/index.cc, libbib/linear.cc, libbib/search.cc,
- libdriver/input.cc, libdriver/printer.cc, libgroff/font.cc,
- libgroff/lf.cc, libgroff/nametoindex.cc, libgroff/ptable.cc,
- libgroff/string.cc, lkbib/lkbib.cc, lookbib/lookbib.cc,
- pic/lex.cc, pic/object.cc, pic/pic.y refer/label.y refer/ref.cc,
- refer/refer.cc, refer/token.cc, tbl/main.cc, tbl/table.cc,
- tfmtodit/tfmtodit.cc, troff/dictionary.cc, troff/div.cc,
- troff/env.cc, troff/input.cc, troff/node.cc, troff/symbol.cc:
+ grodvi/dvi.cc, groff/groff.cc, grops/ps.cc, grops/psrm.cc,
+ grotty/tty.cc, include/ptable.h indxbib/indxbib.cc,
+ libbib/index.cc, libbib/linear.cc, libbib/search.cc,
+ libdriver/input.cc, libdriver/printer.cc, libgroff/font.cc,
+ libgroff/lf.cc, libgroff/nametoindex.cc, libgroff/ptable.cc,
+ libgroff/string.cc, lkbib/lkbib.cc, lookbib/lookbib.cc,
+ pic/lex.cc, pic/object.cc, pic/pic.y refer/label.y refer/ref.cc,
+ refer/refer.cc, refer/token.cc, tbl/main.cc, tbl/table.cc,
+ tfmtodit/tfmtodit.cc, troff/dictionary.cc, troff/div.cc,
+ troff/env.cc, troff/input.cc, troff/node.cc, troff/symbol.cc:
Fix 'for' scoping.
Wed Apr 19 21:15:11 1995 James Clark <jjc@jclark.com>
@@ -1082,7 +1432,7 @@ Thu May 27 20:04:59 1993 James Clark (jjc@jclark.com)
functions that are later declared as inline. Don't include inline
specifier in friend declaration.
- * libgroff/lib.h: Declare popen and pclose.
+ * libgroff/lib.h: Declare popen and pclose.
* acgroff.m4 (GROFF_POPEN): New macro.
* configure.in: Call it.
@@ -1176,7 +1526,7 @@ Wed Apr 21 08:47:32 1993 James Clark (jjc at jclark.com)
(file_iterator::~file_iterator, file_iterator::next_file): Use
file_iterator::close.
(file_iterator::backtrace): Say `process' rather than `file' when
- the stream is popened.
+ the stream is popened.
(pipe_source): New function.
(init_input_requests): Bind ".pso" to pipe_source.
diff --git a/INSTALL.gen b/INSTALL.gen
index 95d84c820..50dbe439d 100644
--- a/INSTALL.gen
+++ b/INSTALL.gen
@@ -95,6 +95,11 @@ give `configure' the option `--exec-prefix=PATH', the package will use
PATH as the prefix for installing programs and libraries.
Documentation and other data files will still use the regular prefix.
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=PATH' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
@@ -162,7 +167,9 @@ operates.
`--quiet'
`--silent'
`-q'
- Do not print messages saying which checks are being made.
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
diff --git a/MORE.STUFF b/MORE.STUFF
new file mode 100644
index 000000000..e2058edea
--- /dev/null
+++ b/MORE.STUFF
@@ -0,0 +1,23 @@
+More stuff for groff
+====================
+
+grap
+----
+
+An implementation of Kernighan & Bentley's grap language for typesetting
+graphs. Written by Ted Faber <faber@lunabase.org>. The actual version
+can be found at
+
+ http://www.lunabase.org/~faber/Vault/software/grap/
+
+miscellaneous
+-------------
+
+. Dr. Robert Hermann's groff gems are available from
+
+ http://www.eas.slu.edu/People/RBHerrmann/GROFF/index.html
+
+ At present there are examples for
+
+ o creating business cards
+ o using groff to make large format posters for presentations
diff --git a/Makefile b/Makefile
deleted file mode 100644
index 5e09c1984..000000000
--- a/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
-# Written by James Clark (jjc@jclark.com)
-#
-# This file is part of groff.
-#
-# groff is free software; you can redistribute it and/or modify it under
-# the terms of the GNU General Public License as published by the Free
-# Software Foundation; either version 2, or (at your option) any later
-# version.
-#
-# groff is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-# for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with groff; see the file COPYING. If not, write to the Free Software
-# Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-SHELL=/bin/sh
-
-.PHONY: all
-all:
- $(SHELL) configure
- $(MAKE) all
diff --git a/Makefile.ccpg b/Makefile.ccpg
index ff774ddf3..02b5d66bc 100644
--- a/Makefile.ccpg
+++ b/Makefile.ccpg
@@ -1,6 +1,10 @@
# Makefile.ccpg
-MAKEFILEPARTS=$(srcdir)/../Makefile.comm ../Makefile.cfg \
- $(srcdir)/Makefile.sub $(srcdir)/../Makefile.ccpg $(srcdir)/Makefile.dep
+MAKEFILEPARTS=\
+ $(top_srcdir)/Makefile.comm \
+ $(top_builddir)/Makefile.cfg \
+ $(srcdir)/Makefile.sub \
+ $(top_srcdir)/Makefile.ccpg \
+ Makefile.dep
all: $(PROG) $(MANPAGES)
@@ -18,6 +22,9 @@ distfiles: $(YTABC)
TAGS: TAGS_src
TAGS_src: $(CCSRCS) $(CSRCS) $(GRAM) $(HDRS)
Makefile: $(MAKEFILEPARTS)
+Makefile.dep:
+ touch Makefile.dep
+$(MANPAGES): $(top_srcdir)/VERSION $(top_srcdir)/REVISION
pure: $(PROG).pure
diff --git a/Makefile.comm b/Makefile.comm
index 01f6dd37f..866d5e6d8 100644
--- a/Makefile.comm
+++ b/Makefile.comm
@@ -1,4 +1,4 @@
-# Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
+# Copyright (C) 1989-2000 Free Software Foundation, Inc.
# Written by James Clark (jjc@jclark.com)
#
# This file is part of groff.
@@ -20,17 +20,17 @@
# Makefile.comm
#
SHELL=/bin/sh
-INCLUDES=-I. -I$(srcdir) -I../include -I$(srcdir)/../include
+INCLUDES=-I. -I$(srcdir) \
+ -I$(top_builddir)/src/include -I$(top_srcdir)/src/include
ALL_CCFLAGS=$(INCLUDES) $(CCDEFINES) $(CCFLAGS) $(CPPFLAGS)
COMPILE.cc=$(CCC) $(ALL_CCFLAGS) -c
ALL_CFLAGS=$(CDEFINES) $(CFLAGS) $(CPPFLAGS)
COMPILE.c=$(CC) $(ALL_CFLAGS) -c
LINK.cc=$(CCC) $(CCFLAGS) $(LDFLAGS)
LINK.c=$(CC) $(CFLAGS) $(LDFLAGS)
-TOP=..
-LIBGROFF=$(TOP)/libgroff/libgroff.a
-LIBBIB=$(TOP)/libbib/libbib.a
-LIBDRIVER=$(TOP)/libdriver/libdriver.a
+LIBGROFF=$(top_builddir)/src/libs/libgroff/libgroff.a
+LIBBIB=$(top_builddir)/src/libs/libbib/libbib.a
+LIBDRIVER=$(top_builddir)/src/libs/libdriver/libdriver.a
MLIB=
XLIBS=
YTABH=
@@ -41,7 +41,7 @@ CLEANADD=
MOSTLYCLEANFILES=$(MANCLEAN) $(PROG) $(OBJS) $(GENSRCS) $(GENHDRS) \
depend.temp core y.output $(CLEANADD)
CLEANFILES=$(LIBCLEAN)
-DISTCLEANFILES=TAGS Makefile
+DISTCLEANFILES=TAGS Makefile Makefile.dep
REALCLEANFILES=$(YTABC) $(YTABH)
NAMEPREFIX=
HDRS=
@@ -51,15 +51,22 @@ fontsubdir=$(fontdir)/dev$(DEV)
all install install_bin install_data TAGS depend distfiles uninstall_sub:
-install: install_bin install_data
+install: prefix_must_exist install_bin install_data
uninstall: uninstall_sub
pure:
.PHONY: all clean distclean mostlyclean realclean extraclean depend distfiles
-.PHONY: install install_bin install_data
+.PHONY: install install_bin install_data prefix_must_exist
.PHONY: uninstall uninstall_sub
.PHONY: pure
+prefix_must_exist:
+ @test -d $(prefix) \
+ || (echo ; \
+ echo The prefix directory \`$(prefix)\' doesn\'t exist; \
+ echo ; \
+ exit 1)
+
mostlyclean:
-rm -f $(MOSTLYCLEANFILES)
@@ -103,6 +110,10 @@ extraclean:
fi; \
fi
+version=`cat $(top_srcdir)/VERSION`
+# No additional number for the groff archive if revision is zero
+revision=`sed -e 's/^0$$//' -e 's/^[1-9].*$$/.&/' $(top_srcdir)/REVISION`
+
.man.n:
@echo Making $@ from $<
@-rm -f $@
@@ -123,16 +134,16 @@ extraclean:
-e "s;@TMAC_AN_PREFIX@;$(tmac_an_prefix);g" \
-e "s;@TMAC_MDIR@;$(tmacdir)/mm;g" \
-e "s;@BROKEN_SPOOLER_FLAGS@;$(BROKEN_SPOOLER_FLAGS);g" \
- -e "s;@VERSION@;`cat $(srcdir)/../VERSION`;g" \
- -e "s;@MDATE@;`$(SHELL) $(srcdir)/../mdate.sh $<`;g" \
+ -e "s;@VERSION@;$(version)$(revision);g" \
+ -e "s;@MDATE@;`$(SHELL) $(top_srcdir)/mdate.sh $<`;g" \
-e "s;@g@;$(g);g" \
-e "s;@G@;`echo $(g) | tr [a-z] [A-Z]`;g" \
$< >$@
.PHONY: install_man
install_man:
- -test -d $(manroot) || mkdir $(manroot)
- -test -d $(man1dir) || mkdir $(man1dir)
+ -test -d $(manroot) || $(mkinstalldirs) $(manroot)
+ -test -d $(man1dir) || $(mkinstalldirs) $(man1dir)
@-pages="$(MAN1)"; \
for p in $$pages; do \
prog=`basename $$p .n`; \
@@ -141,7 +152,7 @@ install_man:
echo $(INSTALL_DATA) $$p $$target; \
$(INSTALL_DATA) $$p $$target; \
done
- -test -d $(man5dir) || mkdir $(man5dir)
+ -test -d $(man5dir) || $(mkinstalldirs) $(man5dir)
@-pages="$(MAN5)"; \
for p in $$pages; do \
target=$(man5dir)/`basename $$p .n`.$(man5ext); \
@@ -149,7 +160,7 @@ install_man:
echo $(INSTALL_DATA) $$p $$target; \
$(INSTALL_DATA) $$p $$target; \
done
- -test -d $(man7dir) || mkdir $(man7dir)
+ -test -d $(man7dir) || $(mkinstalldirs) $(man7dir)
@-pages="$(MAN7)"; \
for p in $$pages; do \
target=$(man7dir)/`basename $$p .n`.$(man7ext); \
@@ -181,7 +192,7 @@ uninstall_man:
.PHONY: install_prog
install_prog:
- -test -d $(bindir) || mkdir $(bindir)
+ -test -d $(bindir) || $(mkinstalldirs) $(bindir)
rm -f $(bindir)/$(NAMEPREFIX)$(PROG)
$(INSTALL_PROGRAM) $(PROG) $(bindir)/$(NAMEPREFIX)$(PROG)
@@ -191,12 +202,13 @@ uninstall_prog:
.PHONY: install_dev
install_dev:
- -test -d $(datadir) || mkdir $(datadir)
- -test -d $(datasubdir) || mkdir $(datasubdir)
- -test -d $(fontdir) || mkdir $(fontdir)
- -test -d $(fontsubdir) || mkdir $(fontsubdir)
+ -test -d $(datadir) || $(mkinstalldirs) $(datadir)
+ -test -d $(datasubdir) || $(mkinstalldirs) $(datasubdir)
+ -test -d $(fontdir) || $(mkinstalldirs) $(fontdir)
+ -test -d $(fontsubdir) || $(mkinstalldirs) $(fontsubdir)
-if test -d $(srcdir)/generate; then \
- test -d $(fontsubdir)/generate || mkdir $(fontsubdir)/generate; \
+ test -d $(fontsubdir)/generate || \
+ $(mkinstalldirs) $(fontsubdir)/generate; \
fi
-for f in $(DEVFILES); do \
rm -f $(fontsubdir)/$$f; \
diff --git a/Makefile.cpg b/Makefile.cpg
index 1b9f66f0d..4cb514f4c 100644
--- a/Makefile.cpg
+++ b/Makefile.cpg
@@ -1,6 +1,10 @@
# Makefile.cpg
-MAKEFILEPARTS=$(srcdir)/../Makefile.comm ../Makefile.cfg \
- $(srcdir)/Makefile.sub $(srcdir)/../Makefile.cpg $(srcdir)/Makefile.dep
+MAKEFILEPARTS=\
+ $(top_srcdir)/Makefile.comm \
+ $(top_builddir)/Makefile.cfg \
+ $(srcdir)/Makefile.sub \
+ $(top_srcdir)/Makefile.cpg \
+ Makefile.dep
all: $(PROG) $(MANPAGES)
@@ -18,3 +22,6 @@ distfiles: $(YTABC)
TAGS: TAGS_src
TAGS_src: $(CCSRCS) $(CSRCS) $(GRAM) $(HDRS)
Makefile: $(MAKEFILEPARTS)
+Makefile.dep:
+ touch Makefile.dep
+$(MANPAGES): $(top_srcdir)/VERSION $(top_srcdir)/REVISION
diff --git a/Makefile.in b/Makefile.in
index dd0ef84a9..0567f1dcd 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,4 +1,4 @@
-# Copyright (C) 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
+# Copyright (C) 1989-2000 Free Software Foundation, Inc.
# Written by James Clark (jjc@jclark.com)
#
# This file is part of groff.
@@ -103,13 +103,13 @@ tmac_wrap=@tmac_wrap@
# Don't make this empty.
tmac_prefix=g
-# The groff -mm macros will be available as -m($(tmac_m_prefix)m.
+# The groff -mm macros will be available as -m$(tmac_m_prefix)m.
tmac_m_prefix=\
`for i in $(tmac_wrap) ""; do case "$$i" in m) echo $(tmac_prefix);; esac; done`
-# The groff -ms macros will be available as -m($(tmac_m_prefix)s.
+# The groff -ms macros will be available as -m$(tmac_s_prefix)s.
tmac_s_prefix=\
`for i in $(tmac_wrap) ""; do case "$$i" in s) echo $(tmac_prefix);; esac; done`
-# The groff -man macros will be available as -m($(tmac_m_prefix)an.
+# The groff -man macros will be available as -m$(tmac_an_prefix)an.
tmac_an_prefix=\
`for i in $(tmac_wrap) ""; do case "$$i" in an) echo $(tmac_prefix);; esac; done`
@@ -178,7 +178,7 @@ man7dir=$(manroot)/man$(man7ext)
# -DRETSIGTYPE=int if signal handlers return int not void
DEFINES=@DEFS@
-# Include fmod.o, strtol.o, getcwd.o, strerror.o, putenv.o in LIBOBJS if
+# Include fmod.o, strtol.o, getcwd.o, strerror.o, putenv.o in LIBOBJS if
# your C library is missing the corresponding function.
LIBOBJS=@LIBOBJS@
@@ -212,8 +212,14 @@ ETAGSCCFLAG=-C
PERLPATH=@PERLPATH@
# Sed command with which to edit sh scripts.
SH_SCRIPT_SED_CMD=@SH_SCRIPT_SED_CMD@
-srcdir = @srcdir@
-VPATH = @srcdir@
+
+srcdir=@srcdir@
+top_srcdir=@top_srcdir@
+VPATH=@srcdir@
+top_builddir=@top_builddir@
+
+# the program to create directory hierarchies
+mkinstalldirs=$(top_srcdir)/mkinstalldirs
PURIFY=purify
PURIFYCCFLAGS=
@@ -223,43 +229,118 @@ PURIFYCCFLAGS=
# Passing down MAKEOVERRIDES prevents $(MAKE) from containing a second
# copy of $(MDEFINES) when making individual directories; this could
# cause the argument list to become too long on some systems.
-MDEFINES="MAKEOVERRIDES=$(MAKEOVERRIDES)" \
- "PAGE=$(PAGE)" "BROKEN_SPOOLER_FLAGS=$(BROKEN_SPOOLER_FLAGS)" \
- "DEVICE=$(DEVICE)" "PSPRINT=$(PSPRINT)" "DVIPRINT=$(DVIPRINT)" \
- "prefix=$(prefix)" "exec_prefix=$(exec_prefix)" "bindir=$(bindir)" \
- "g=$(g)" "datadir=$(datadir)" "datasubdir=$(datasubdir)" \
- "fontdir=$(fontdir)" "fontpath=$(fontpath)" \
- "tmacdir=$(tmacdir)" "tmacpath=$(tmacpath)" \
- "indexext=$(indexext)" "indexdir=$(indexdir)" \
- "indexname=$(indexname)" "common_words_file=$(common_words_file)" \
- "manroot=$(manroot)" "man1ext=$(man1ext)" "man1dir=$(man1dir)" \
- "man5ext=$(man5ext)" "man5dir=$(man5dir)" \
- "man7ext=$(man7ext)" "man7dir=$(man7dir)" \
- "tmac_wrap=$(tmac_wrap)" "sys_tmac_prefix=$(sys_tmac_prefix)" \
+MDEFINES= \
+ "MAKEOVERRIDES=$(MAKEOVERRIDES)" \
+ "PAGE=$(PAGE)" \
+ "BROKEN_SPOOLER_FLAGS=$(BROKEN_SPOOLER_FLAGS)" \
+ "DEVICE=$(DEVICE)" \
+ "PSPRINT=$(PSPRINT)" \
+ "DVIPRINT=$(DVIPRINT)" \
+ "top_srcdir=$(top_srcdir)" \
+ "top_builddir=$(top_builddir)" \
+ "prefix=$(prefix)" \
+ "exec_prefix=$(exec_prefix)" \
+ "bindir=$(bindir)" \
+ "g=$(g)" \
+ "datadir=$(datadir)" \
+ "datasubdir=$(datasubdir)" \
+ "fontdir=$(fontdir)" \
+ "fontpath=$(fontpath)" \
+ "tmacdir=$(tmacdir)" \
+ "tmacpath=$(tmacpath)" \
+ "indexext=$(indexext)" \
+ "indexdir=$(indexdir)" \
+ "indexname=$(indexname)" \
+ "common_words_file=$(common_words_file)" \
+ "manroot=$(manroot)" \
+ "man1ext=$(man1ext)" \
+ "man1dir=$(man1dir)" \
+ "man5ext=$(man5ext)" \
+ "man5dir=$(man5dir)" \
+ "man7ext=$(man7ext)" \
+ "man7dir=$(man7dir)" \
+ "mkinstalldirs=$(mkinstalldirs)" \
+ "tmac_wrap=$(tmac_wrap)" \
+ "sys_tmac_prefix=$(sys_tmac_prefix)" \
"tmac_an_prefix=$(tmac_an_prefix)" \
- "tmac_s_prefix=$(tmac_s_prefix)" "tmac_m_prefix=$(tmac_m_prefix)" \
- "CCC=$(CCC)" "CC=$(CC)" "CCDEFINES=$(CCDEFINES)" "CDEFINES=$(CDEFINES)" \
- "CCFLAGS=$(CCFLAGS)" "CFLAGS=$(CFLAGS)" "LDFLAGS=$(LDFLAGS)" \
- "YACC=$(YACC)" "YACCFLAGS=$(YACCFLAGS)" "LIBM=$(LIBM)" \
- "LIBS=$(LIBS)" "LIBOBJS=$(LIBOBJS)" "RANLIB=$(RANLIB)" "AR=$(AR)" \
- "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" "INSTALL_DATA=$(INSTALL_DATA)" \
- "ETAGS=$(ETAGS)" "ETAGSFLAGS=$(ETAGSFLAGS)" "ETAGSCCFLAG=$(ETAGSCCFLAG)" \
- "PERLPATH=$(PERLPATH)" "SH_SCRIPT_SED_CMD=$(SH_SCRIPT_SED_CMD)" \
- "PURIFY=$(PURIFY)" "PURIFYCCFLAGS=$(PURIFYCCFLAGS)"
+ "tmac_s_prefix=$(tmac_s_prefix)" \
+ "tmac_m_prefix=$(tmac_m_prefix)" \
+ "CCC=$(CCC)" \
+ "CC=$(CC)" \
+ "CCDEFINES=$(CCDEFINES)" \
+ "CDEFINES=$(CDEFINES)" \
+ "CCFLAGS=$(CCFLAGS)" \
+ "CFLAGS=$(CFLAGS)" \
+ "LDFLAGS=$(LDFLAGS)" \
+ "YACC=$(YACC)" \
+ "YACCFLAGS=$(YACCFLAGS)" \
+ "LIBM=$(LIBM)" \
+ "LIBS=$(LIBS)" \
+ "LIBOBJS=$(LIBOBJS)" \
+ "RANLIB=$(RANLIB)" \
+ "AR=$(AR)" \
+ "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
+ "INSTALL_DATA=$(INSTALL_DATA)" \
+ "ETAGS=$(ETAGS)" \
+ "ETAGSFLAGS=$(ETAGSFLAGS)" \
+ "ETAGSCCFLAG=$(ETAGSCCFLAG)" \
+ "PERLPATH=$(PERLPATH)" \
+ "SH_SCRIPT_SED_CMD=$(SH_SCRIPT_SED_CMD)" \
+ "PURIFY=$(PURIFY)" \
+ "PURIFYCCFLAGS=$(PURIFYCCFLAGS)"
SHELL=/bin/sh
-INCDIRS=include
-LIBDIRS=libgroff libdriver libbib
-CCPROGDIRS=groff troff tbl pic eqn grops grotty grodvi tfmtodit \
- grolj4 hpftodit refer lookbib indxbib lkbib soelim addftinfo \
- grohtml
-CPROGDIRS=pfbtops psbb
+INCDIRS=src/include
+LIBDIRS=\
+ src/libs/libgroff \
+ src/libs/libdriver \
+ src/libs/libbib
+CCPROGDIRS=\
+ src/roff/groff \
+ src/roff/troff \
+ src/preproc/tbl \
+ src/preproc/pic \
+ src/preproc/eqn \
+ src/preproc/refer \
+ src/preproc/soelim \
+ src/devices/grops \
+ src/devices/grotty \
+ src/devices/grodvi \
+ src/devices/grolj4 \
+ src/devices/grohtml \
+ src/utils/tfmtodit \
+ src/utils/hpftodit \
+ src/utils/lookbib \
+ src/utils/indxbib \
+ src/utils/lkbib \
+ src/utils/addftinfo
+CPROGDIRS=src/utils/pfbtops
PROGDIRS=$(CCPROGDIRS) $(CPROGDIRS)
-DEVDIRS=devps devdvi devascii devlatin1 devX75 devX75-12 devX100 devX100-12 \
- devlj4 devhtml
-OTHERDIRS=man tmac afmtodit grog nroff mm
+DEVDIRS=\
+ font/devps \
+ font/devdvi \
+ font/devascii \
+ font/devlatin1 \
+ font/devutf8 \
+ font/devX75 \
+ font/devX75-12 \
+ font/devX100 \
+ font/devX100-12 \
+ font/devlj4 \
+ font/devhtml
+OTHERDIRS=\
+ man \
+ tmac \
+ src/utils/afmtodit \
+ src/roff/grog \
+ src/roff/nroff \
+ contrib/mm
ALLDIRS=$(INCDIRS) $(LIBDIRS) $(PROGDIRS) $(DEVDIRS) $(OTHERDIRS)
-EXTRADIRS=devps/generate devdvi/generate xditview doc
+EXTRADIRS=\
+ fonts/devps/generate \
+ fonts/devdvi/generate \
+ src/xditview \
+ doc
DISTDIRS=$(ALLDIRS) $(EXTRADIRS)
TARGETS=all install install_bin install_data clean distclean mostlyclean \
realclean extraclean distfiles TAGS depend uninstall_sub
@@ -275,71 +356,82 @@ $(TARGETS):
dot: FORCE
@$(MAKE) $(MDEFINES) srcdir=$(srcdir) VPATH=$(srcdir) \
- -f $(srcdir)/Makefile.comm -f $(srcdir)/Makefile.sub $(do)
+ -f $(top_srcdir)/Makefile.comm \
+ -f $(top_srcdir)/Makefile.sub $(do)
$(LIBDIRS): FORCE
@if test $(srcdir) = .; \
then srcdir=.; \
else srcdir=`cd $(srcdir); pwd`/$@; \
fi; \
- test -d $@ || mkdir $@; \
+ test -d $@ || $(mkinstalldirs) $@; \
cd $@; \
$(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
- -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
- -f $$srcdir/../Makefile.lib -f $$srcdir/Makefile.dep $(do)
+ -f $(top_srcdir)/Makefile.comm \
+ -f $$srcdir/Makefile.sub \
+ -f $(top_srcdir)/Makefile.lib \
+ -f Makefile.dep $(do)
$(CPROGDIRS): FORCE
@if test $(srcdir) = .; \
then srcdir=.; \
else srcdir=`cd $(srcdir); pwd`/$@; \
fi; \
- test -d $@ || mkdir $@; \
+ test -d $@ || $(mkinstalldirs) $@; \
cd $@; \
$(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
- -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
- -f $$srcdir/../Makefile.cpg -f $$srcdir/Makefile.dep $(do)
+ -f $(top_srcdir)/Makefile.comm \
+ -f $$srcdir/Makefile.sub \
+ -f $(top_srcdir)/Makefile.cpg \
+ -f Makefile.dep $(do)
$(CCPROGDIRS): FORCE
@if test $(srcdir) = .; \
then srcdir=.; \
else srcdir=`cd $(srcdir); pwd`/$@; \
fi; \
- test -d $@ || mkdir $@; \
+ test -d $@ || $(mkinstalldirs) $@; \
cd $@; \
$(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
- -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
- -f $$srcdir/../Makefile.ccpg -f $$srcdir/Makefile.dep $(do)
+ -f $(top_srcdir)/Makefile.comm \
+ -f $$srcdir/Makefile.sub \
+ -f $(top_srcdir)/Makefile.ccpg \
+ -f Makefile.dep $(do)
$(DEVDIRS): FORCE
@if test $(srcdir) = .; \
then srcdir=.; \
else srcdir=`cd $(srcdir); pwd`/$@; \
fi; \
- test -d $@ || mkdir $@; \
+ test -d $@ || $(mkinstalldirs) $@; \
cd $@; \
$(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
- -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
- -f $$srcdir/../Makefile.dev $(do)
+ -f $(top_srcdir)/Makefile.comm \
+ -f $$srcdir/Makefile.sub \
+ -f $(top_srcdir)/Makefile.dev $(do)
$(INCDIRS) $(OTHERDIRS): FORCE
@if test $(srcdir) = .; \
then srcdir=.; \
else srcdir=`cd $(srcdir); pwd`/$@; \
fi; \
- test -d $@ || mkdir $@; \
+ test -d $@ || $(mkinstalldirs) $@; \
cd $@; \
$(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
- -f $$srcdir/../Makefile.comm -f $$srcdir/Makefile.sub \
- -f $$srcdir/../Makefile.man $(do)
+ -f $(top_srcdir)/Makefile.comm \
+ -f $$srcdir/Makefile.sub \
+ -f $(top_srcdir)/Makefile.man $(do)
-version=`cat $(srcdir)/VERSION`
+version=`cat $(top_srcdir)/VERSION`
+# No additional number for the groff archive if revision is zero
+revision=`sed -e 's/^0$$//' -e 's/^[1-9].*$$/.&/' $(top_srcdir)/REVISION`
.PHONY: dist
dist:
-rm -fr tmp
mkdir tmp
for d in $(DISTDIRS); do \
- mkdir tmp/$$d; \
+ $(mkinstalldirs) tmp/$$d; \
done
srcdir=`cd $(srcdir); pwd`; \
cd tmp; \
@@ -354,10 +446,11 @@ dist:
done; \
rm -f Makefile; \
$(LN_S) $$srcdir/Makefile.init Makefile
- mv tmp groff-$(version)
- rm -f groff-$(version).tar.gz
- tar cfh - groff-$(version) | gzip -c >groff-$(version).tar.gz
- rm -fr groff-$(version)
+ mv tmp groff-$(version)$(revision)
+ rm -f groff-$(version)$(revision).tar.gz
+ tar cfh - groff-$(version)$(revision) | \
+ gzip -c >groff-$(version)$(revision).tar.gz
+ rm -fr groff-$(version)$(revision)
# $(PROGDIRS): libgroff
# grops grotty grodvi: libdriver
@@ -375,14 +468,6 @@ Makefile.cfg: Makefile
echo "$$var" >>Makefile.cfg; \
done
-depend: srcdir_must_be_dot
-
-.PHONY: srcdir_must_be_dot
-srcdir_must_be_dot:
- @test "X$(srcdir)" = "X." \
- || (echo This target can only be made in the source directory; \
- exit 1)
-
Makefile: Makefile.in
$(SHELL) config.status
diff --git a/Makefile.init b/Makefile.init
index 5e09c1984..024f48699 100644
--- a/Makefile.init
+++ b/Makefile.init
@@ -1,4 +1,4 @@
-# Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
+# Copyright (C) 1989-2000 Free Software Foundation, Inc.
# Written by James Clark (jjc@jclark.com)
#
# This file is part of groff.
diff --git a/Makefile.lib b/Makefile.lib
index 019ba6af2..8861360e9 100644
--- a/Makefile.lib
+++ b/Makefile.lib
@@ -1,6 +1,10 @@
LIBCLEAN=lib$(LIB).a
-MAKEFILEPARTS=$(srcdir)/../Makefile.comm ../Makefile.cfg \
- $(srcdir)/Makefile.sub $(srcdir)/../Makefile.lib $(srcdir)/Makefile.dep
+MAKEFILEPARTS=\
+ $(top_srcdir)/Makefile.comm \
+ $(top_builddir)/Makefile.cfg \
+ $(srcdir)/Makefile.sub \
+ $(top_srcdir)/Makefile.lib \
+ Makefile.dep
all: lib$(LIB).a
@@ -12,3 +16,5 @@ depend: depend_src
depend.temp: $(GENSRCS)
TAGS: $(CCSRCS) $(CSRCS)
Makefile: $(MAKEFILEPARTS)
+Makefile.dep:
+ touch Makefile.dep
diff --git a/Makefile.man b/Makefile.man
index 59378de01..2fecd115f 100644
--- a/Makefile.man
+++ b/Makefile.man
@@ -2,3 +2,4 @@ all: $(MANPAGES)
install_data: install_man
install_man: $(MANPAGES)
uninstall_sub: uninstall_man
+$(MANPAGES): $(top_srcdir)/VERSION $(top_srcdir)/REVISION
diff --git a/NEWS b/NEWS
index 243cbfb4e..f0c69438f 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,89 @@
This file describes recent user-visible changes in groff. Bug fixes
are not described. There are more details in the man pages.
+VERSION 1.16
+============
+
+Groff
+-----
+
+Some additions to the font description files have been implemented for
+better support of HTML output:
+
+ The new format of lines in the `charset' subsection of font description
+ files is
+
+ name metrics type code [entity_name] [-- comment]
+
+ Currently, only the font description files in devhtml use the optional
+ entity_name string to define the glyph entities in HTML. Everything
+ after the entity_name field is ignored; in case this field isn't used,
+ two hyphen characters are now necessary to start a comment.
+
+ Two new requests are available in DESC files (currently used only with
+ grohtml):
+
+ use_charnames_in_special
+ This command indicates that troff should encode named characters
+ inside special commands.
+
+ pass_filenames
+ requests that troff tells the driver the source file name being
+ processed. This is achieved by another tcommand: `F filename'.
+
+Troff
+-----
+
+To solve a problem with the .PSPIC macro which needs the `-U' switch of
+troff to access an external program (psbb), a new request .psbb is now
+available to get the bounding box of a PostScript image file. The values
+(in PostScript units) are returned in the new read-only number registers
+`llx', `lly', `urx', and `ury'. Consequently, .PSPIC has been adapted to
+use the new request, and the psbb program has been removed.
+
+A new number predefined writable number register, `year', has been added.
+It contains the current year.
+
+A new read-only register, `.Y', has been added. It contains the revision
+number of the groff package.
+
+`\fP' now behaves as expected in situations like the following where the
+font `foo' is undefined:
+
+ .B bold text
+ normal text \f[foo]bar\fP normal text
+
+Previously, the text after \fP has appeared as bold.
+
+The macro files `tmac.a4' (for specifying A4 paper format) and `tmac.trace'
+(a debugging aid) are now installed also.
+
+A new resource file, `troffrc-end', is now available. It is invoked after
+all user-specified macros. Currently used by the html device to include
+tmac.html; thus no need for users to specify -mhtml anymore.
+
+Grotty
+------
+
+Bruno Haible <haible@clisp.cons.org> contributed support for UTF8 output.
+
+Grohtml
+-------
+
+Added .LINE macro to tmac.arkup.
+
+The obsolete `.LINK' macro has been removed.
+
+.URL, .FTP, and .MAILTO now accept an optional third argument which will
+be immediately appended to the second argument (to be used with punctuation,
+for example).
+
+Pic
+---
+
+Added the `srand' command to set the seed for a new sequence of the
+pseudo-random numbers to be returned by `rand'.
+
VERSION 1.13, 1.14, 1.15
========================
diff --git a/PROBLEMS b/PROBLEMS
index 9ee5b40ba..dbadbdeec 100644
--- a/PROBLEMS
+++ b/PROBLEMS
@@ -2,6 +2,28 @@ This file describes various problems that have been encountered in
compiling, installing and running groff. Suggestions for additions or
other improvements to this file are welcome.
+* My document says that the current year is 19100, not 2000.
+
+In groff, as in traditional troff, the yr number register yields the
+year minus 1900. Unfortunately, there is a longstanding bug in the
+Troff User's Manual <http://cm.bell-labs.com/cm/cs/cstr/54.ps.gz>,
+which incorrectly claims that yr is the last two digits of the year.
+This claim was never true of either Unix troff or of groff.
+
+If your text looks like this:
+
+ .\" Wrong:
+ This document was formatted in 19\n(yr.
+
+you can correct it as follows:
+
+ This document was formatted in \n[year].
+
+or, if you want to be portable to older troff versions, as follows:
+
+ .nr y4 1900+\n(yr
+ This document was formatted in \n(y4.
+
* I get lots of `numeric overflow' error messages whenever I run
groff; I compiled groff with AT&T C++ 2.0 with an ANSI C compiler.
diff --git a/README b/README
index 71be21f23..266651ac2 100644
--- a/README
+++ b/README
@@ -50,6 +50,14 @@ or a diff file relative to the latest official groff release as
ftp://ftp.ffii.org/pub/groff/devel/groff-<version>-current.diff.gz
+Assuming that groff-<version>.tar.gz and
+groff-<version>-current.diff.gz are in the same directory, do the
+following to apply the diff file:
+
+ tar xzvf groff-<version>.tar.gz
+ cd groff-<version>
+ gunzip -c ../groff-<version>-current.diff.gz | patch -p1
+
Please report bugs using the form in the file BUG-REPORT; the idea of
this is to make sure that FSF has all the information it needs to fix
the bug. At the very least, read the BUG-REPORT form and make sure
diff --git a/REVISION b/REVISION
new file mode 100644
index 000000000..573541ac9
--- /dev/null
+++ b/REVISION
@@ -0,0 +1 @@
+0
diff --git a/TODO b/TODO
index 9cb74c239..d78292a27 100644
--- a/TODO
+++ b/TODO
@@ -8,8 +8,6 @@ Provide man.sun implementing .TX.
Improve GROFF_PRINT macro in aclocal.m4.
-Put all dev* files in a separate subdirectory `font'.
-
Provide a `check' target.
Provide a `bindist' target.
diff --git a/VERSION b/VERSION
index d40acaaea..e71519696 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.15
+1.16
diff --git a/aclocal.m4 b/aclocal.m4
index e3e37f301..1a278c2b6 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -445,4 +445,20 @@ dnl
AC_DEFUN(GROFF_LIBM,
[AC_CHECK_LIB(m,sin,LIBM=-lm)
AC_SUBST(LIBM)
+])dnl
+dnl
+dnl
+dnl We need top_srcdir to be absolute.
+dnl
+AC_DEFUN(GROFF_SRCDIR,
+[ac_srcdir_defaulted=no
+srcdir=`cd $srcdir; pwd`
+])dnl
+dnl
+dnl
+dnl This simplifies Makefile rules.
+dnl
+AC_DEFUN(GROFF_BUILDDIR,
+[top_builddir=`pwd`
+AC_SUBST(top_builddir)
])
diff --git a/addftinfo/Makefile.dep b/addftinfo/Makefile.dep
deleted file mode 100644
index e38c273c8..000000000
--- a/addftinfo/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-addftinfo.o: addftinfo.cc ../include/lib.h ../include/errarg.h \
- ../include/error.h ../include/stringclass.h ../include/cset.h guess.h
-guess.o: guess.cc guess.h
diff --git a/addftinfo/Makefile.sub b/addftinfo/Makefile.sub
deleted file mode 100644
index 95a8f5bf5..000000000
--- a/addftinfo/Makefile.sub
+++ /dev/null
@@ -1,6 +0,0 @@
-PROG=addftinfo
-MAN1=addftinfo.n
-XLIBS=$(LIBGROFF)
-OBJS=addftinfo.o guess.o
-CCSRCS=addftinfo.cc guess.cc
-HDRS=guess.h
diff --git a/configure b/configure
index e6800ae4e..ee511476a 100755
--- a/configure
+++ b/configure
@@ -451,7 +451,7 @@ echo > confdefs.h
# A filename unique to this package, relative to the directory that
# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=groff/groff.cc
+ac_unique_file=src/roff/groff/groff.cc
# Find the source files, if location was not specified.
if test -z "$srcdir"; then
@@ -521,10 +521,16 @@ else
fi
+ac_srcdir_defaulted=no
+srcdir=`cd $srcdir; pwd`
+
+top_builddir=`pwd`
+
+
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:528: checking for $ac_word" >&5
+echo "configure:534: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -554,7 +560,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:558: checking for $ac_word" >&5
+echo "configure:564: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -605,7 +611,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:609: checking for $ac_word" >&5
+echo "configure:615: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -637,7 +643,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:641: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:647: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -648,12 +654,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 652 "configure"
+#line 658 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:657: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:663: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -679,12 +685,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:683: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:689: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:688: checking whether we are using GNU C" >&5
+echo "configure:694: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -693,7 +699,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:697: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:703: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -712,7 +718,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:716: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:722: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -748,7 +754,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:752: checking for $ac_word" >&5
+echo "configure:758: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -780,7 +786,7 @@ test -n "$CXX" || CXX="gcc"
echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:784: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
+echo "configure:790: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
ac_ext=C
# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -791,12 +797,12 @@ cross_compiling=$ac_cv_prog_cxx_cross
cat > conftest.$ac_ext << EOF
-#line 795 "configure"
+#line 801 "configure"
#include "confdefs.h"
int main(){return(0);}
EOF
-if { (eval echo configure:800: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:806: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cxx_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -822,12 +828,12 @@ if test $ac_cv_prog_cxx_works = no; then
{ echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:826: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:832: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6
-echo "configure:831: checking whether we are using GNU C++" >&5
+echo "configure:837: checking whether we are using GNU C++" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -836,7 +842,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:840: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:846: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gxx=yes
else
ac_cv_prog_gxx=no
@@ -855,7 +861,7 @@ ac_test_CXXFLAGS="${CXXFLAGS+set}"
ac_save_CXXFLAGS="$CXXFLAGS"
CXXFLAGS=
echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
-echo "configure:859: checking whether ${CXX-g++} accepts -g" >&5
+echo "configure:865: checking whether ${CXX-g++} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -899,20 +905,20 @@ cross_compiling=$ac_cv_prog_cxx_cross
if test "$cross_compiling" = no; then
echo $ac_n "checking that C++ compiler can compile simple program""... $ac_c" 1>&6
-echo "configure:903: checking that C++ compiler can compile simple program" >&5
+echo "configure:909: checking that C++ compiler can compile simple program" >&5
fi
if test "$cross_compiling" = yes; then
:
else
cat > conftest.$ac_ext <<EOF
-#line 909 "configure"
+#line 915 "configure"
#include "confdefs.h"
#ifdef __cplusplus
extern "C" void exit(int);
#endif
int main() { return 0; }
EOF
-if { (eval echo configure:916: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:922: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
echo "$ac_t""yes" 1>&6
else
@@ -926,13 +932,13 @@ fi
if test "$cross_compiling" = no; then
echo $ac_n "checking that C++ static constructors and destructors are called""... $ac_c" 1>&6
-echo "configure:930: checking that C++ static constructors and destructors are called" >&5
+echo "configure:936: checking that C++ static constructors and destructors are called" >&5
fi
if test "$cross_compiling" = yes; then
:
else
cat > conftest.$ac_ext <<EOF
-#line 936 "configure"
+#line 942 "configure"
#include "confdefs.h"
#ifdef __cplusplus
extern "C" void exit(int);
@@ -951,7 +957,7 @@ A a;
int main() { return 1; }
EOF
-if { (eval echo configure:955: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:961: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
echo "$ac_t""yes" 1>&6
else
@@ -964,16 +970,16 @@ rm -fr conftest*
fi
echo $ac_n "checking that header files support C++""... $ac_c" 1>&6
-echo "configure:968: checking that header files support C++" >&5
+echo "configure:974: checking that header files support C++" >&5
cat > conftest.$ac_ext <<EOF
-#line 970 "configure"
+#line 976 "configure"
#include "confdefs.h"
#include <stdio.h>
int main() {
fopen(0, 0);
; return 0; }
EOF
-if { (eval echo configure:977: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:983: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6
else
@@ -997,7 +1003,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1001: checking for $ac_word" >&5
+echo "configure:1007: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LPR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1031,7 +1037,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1035: checking for $ac_word" >&5
+echo "configure:1041: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1069,7 +1075,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1073: checking for $ac_word" >&5
+echo "configure:1079: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LPQ'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1108,11 +1114,11 @@ done
fi
echo $ac_n "checking for command to use for printing PostScript files""... $ac_c" 1>&6
-echo "configure:1112: checking for command to use for printing PostScript files" >&5
+echo "configure:1118: checking for command to use for printing PostScript files" >&5
echo "$ac_t""$PSPRINT" 1>&6
# Figure out DVIPRINT from PSPRINT.
echo $ac_n "checking for command to use for printing dvi files""... $ac_c" 1>&6
-echo "configure:1116: checking for command to use for printing dvi files" >&5
+echo "configure:1122: checking for command to use for printing dvi files" >&5
if test -n "$PSPRINT" && test -z "$DVIPRINT"; then
if test "X$PSPRINT" = "Xlpr"; then
DVIPRINT="lpr -d"
@@ -1125,7 +1131,7 @@ echo "$ac_t""$DVIPRINT" 1>&6
# Extract the first word of "perl", so it can be a program name with args.
set dummy perl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1129: checking for $ac_word" >&5
+echo "configure:1135: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_PERLPATH'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1163,7 +1169,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1167: checking for $ac_word" >&5
+echo "configure:1173: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1196,7 +1202,7 @@ test -n "$YACC" || YACC="yacc"
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1200: checking for $ac_word" >&5
+echo "configure:1206: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1257,7 +1263,7 @@ ac_install_sh="$ac_dir/install-sh -c"
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1261: checking for a BSD compatible install" >&5
+echo "configure:1267: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1310,7 +1316,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:1314: checking whether ln -s works" >&5
+echo "configure:1320: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1331,7 +1337,7 @@ else
fi
echo $ac_n "checking for csh hash hack""... $ac_c" 1>&6
-echo "configure:1335: checking for csh hash hack" >&5
+echo "configure:1341: checking for csh hash hack" >&5
cat <<EOF >conftest.sh
#!/bin/sh
true || exit 0
@@ -1347,7 +1353,7 @@ fi
rm -f conftest.sh
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1351: checking how to run the C preprocessor" >&5
+echo "configure:1357: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@@ -1362,13 +1368,13 @@ else
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <<EOF
-#line 1366 "configure"
+#line 1372 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1372: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1378: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1379,13 +1385,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <<EOF
-#line 1383 "configure"
+#line 1389 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1389: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1395: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1396,13 +1402,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -nologo -E"
cat > conftest.$ac_ext <<EOF
-#line 1400 "configure"
+#line 1406 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1406: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1412: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1430,17 +1436,17 @@ for ac_hdr in unistd.h dirent.h limits.h sys/dir.h stdlib.h
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1434: checking for $ac_hdr" >&5
+echo "configure:1440: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1439 "configure"
+#line 1445 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1444: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1450: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -1467,7 +1473,7 @@ fi
done
echo $ac_n "checking for ISC 3.x or 4.x""... $ac_c" 1>&6
-echo "configure:1471: checking for ISC 3.x or 4.x" >&5
+echo "configure:1477: checking for ISC 3.x or 4.x" >&5
if grep '[34]\.' /usr/options/cb.name >/dev/null 2>&1
then
echo "$ac_t""yes" 1>&6
@@ -1479,7 +1485,7 @@ else
echo "$ac_t""no" 1>&6
fi
echo $ac_n "checking whether -D_POSIX_SOURCE is necessary""... $ac_c" 1>&6
-echo "configure:1483: checking whether -D_POSIX_SOURCE is necessary" >&5
+echo "configure:1489: checking whether -D_POSIX_SOURCE is necessary" >&5
ac_ext=C
# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1489,7 +1495,7 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
cat > conftest.$ac_ext <<EOF
-#line 1493 "configure"
+#line 1499 "configure"
#include "confdefs.h"
#include <stdio.h>
extern "C" { void fileno(int); }
@@ -1497,7 +1503,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1501: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1507: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define _POSIX_SOURCE 1
@@ -1526,9 +1532,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking declaration of getopt in stdlib.h""... $ac_c" 1>&6
-echo "configure:1530: checking declaration of getopt in stdlib.h" >&5
+echo "configure:1536: checking declaration of getopt in stdlib.h" >&5
cat > conftest.$ac_ext <<EOF
-#line 1532 "configure"
+#line 1538 "configure"
#include "confdefs.h"
#include <stdlib.h>
extern "C" { void getopt(int); }
@@ -1536,7 +1542,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1540: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""no" 1>&6
else
@@ -1550,9 +1556,9 @@ EOF
fi
rm -f conftest*
echo $ac_n "checking declaration of getopt in unistd.h""... $ac_c" 1>&6
-echo "configure:1554: checking declaration of getopt in unistd.h" >&5
+echo "configure:1560: checking declaration of getopt in unistd.h" >&5
cat > conftest.$ac_ext <<EOF
-#line 1556 "configure"
+#line 1562 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <unistd.h>
@@ -1561,7 +1567,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1571: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""no" 1>&6
else
@@ -1590,9 +1596,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking declaration of putenv""... $ac_c" 1>&6
-echo "configure:1594: checking declaration of putenv" >&5
+echo "configure:1600: checking declaration of putenv" >&5
cat > conftest.$ac_ext <<EOF
-#line 1596 "configure"
+#line 1602 "configure"
#include "confdefs.h"
#include <stdlib.h>
extern "C" { void putenv(int); }
@@ -1600,7 +1606,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1604: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1610: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""no" 1>&6
else
@@ -1629,9 +1635,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking declaration of popen""... $ac_c" 1>&6
-echo "configure:1633: checking declaration of popen" >&5
+echo "configure:1639: checking declaration of popen" >&5
cat > conftest.$ac_ext <<EOF
-#line 1635 "configure"
+#line 1641 "configure"
#include "confdefs.h"
#include <stdio.h>
extern "C" { void popen(int); }
@@ -1639,7 +1645,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1643: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1649: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""no" 1>&6
else
@@ -1668,9 +1674,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking declaration of pclose""... $ac_c" 1>&6
-echo "configure:1672: checking declaration of pclose" >&5
+echo "configure:1678: checking declaration of pclose" >&5
cat > conftest.$ac_ext <<EOF
-#line 1674 "configure"
+#line 1680 "configure"
#include "confdefs.h"
#include <stdio.h>
extern "C" { void pclose(int); }
@@ -1678,7 +1684,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1682: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1688: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""no" 1>&6
else
@@ -1707,9 +1713,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking for sys_nerr in <errno.h> or <stdio.h>""... $ac_c" 1>&6
-echo "configure:1711: checking for sys_nerr in <errno.h> or <stdio.h>" >&5
+echo "configure:1717: checking for sys_nerr in <errno.h> or <stdio.h>" >&5
cat > conftest.$ac_ext <<EOF
-#line 1713 "configure"
+#line 1719 "configure"
#include "confdefs.h"
#include <errno.h>
#include <stdio.h>
@@ -1717,7 +1723,7 @@ int main() {
int k; k = sys_nerr;
; return 0; }
EOF
-if { (eval echo configure:1721: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1727: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define HAVE_SYS_NERR 1
@@ -1746,9 +1752,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking for sys_errlist in <errno.h> or <stdio.h>""... $ac_c" 1>&6
-echo "configure:1750: checking for sys_errlist in <errno.h> or <stdio.h>" >&5
+echo "configure:1756: checking for sys_errlist in <errno.h> or <stdio.h>" >&5
cat > conftest.$ac_ext <<EOF
-#line 1752 "configure"
+#line 1758 "configure"
#include "confdefs.h"
#include <errno.h>
#include <stdio.h>
@@ -1756,7 +1762,7 @@ int main() {
int k; k = (int)sys_errlist[0];
; return 0; }
EOF
-if { (eval echo configure:1760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define HAVE_SYS_ERRLIST 1
@@ -1785,9 +1791,9 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking declaration of hypot""... $ac_c" 1>&6
-echo "configure:1789: checking declaration of hypot" >&5
+echo "configure:1795: checking declaration of hypot" >&5
cat > conftest.$ac_ext <<EOF
-#line 1791 "configure"
+#line 1797 "configure"
#include "confdefs.h"
#include <math.h>
extern "C" { double hypot(double,double); }
@@ -1795,7 +1801,7 @@ int main() {
; return 0; }
EOF
-if { (eval echo configure:1799: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1805: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""no" 1>&6
else
@@ -1824,16 +1830,16 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking C++ <osfcn.h>""... $ac_c" 1>&6
-echo "configure:1828: checking C++ <osfcn.h>" >&5
+echo "configure:1834: checking C++ <osfcn.h>" >&5
cat > conftest.$ac_ext <<EOF
-#line 1830 "configure"
+#line 1836 "configure"
#include "confdefs.h"
#include <osfcn.h>
int main() {
read(0, 0, 0); open(0, 0);
; return 0; }
EOF
-if { (eval echo configure:1837: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1843: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define HAVE_CC_OSFCN_H 1
@@ -1862,16 +1868,16 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking C++ <limits.h>""... $ac_c" 1>&6
-echo "configure:1866: checking C++ <limits.h>" >&5
+echo "configure:1872: checking C++ <limits.h>" >&5
cat > conftest.$ac_ext <<EOF
-#line 1868 "configure"
+#line 1874 "configure"
#include "confdefs.h"
#include <limits.h>
int main() {
int x = INT_MIN; int y = INT_MAX; int z = UCHAR_MAX;
; return 0; }
EOF
-if { (eval echo configure:1875: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1881: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define HAVE_CC_LIMITS_H 1
@@ -1900,16 +1906,16 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking for declaration of time_t""... $ac_c" 1>&6
-echo "configure:1904: checking for declaration of time_t" >&5
+echo "configure:1910: checking for declaration of time_t" >&5
cat > conftest.$ac_ext <<EOF
-#line 1906 "configure"
+#line 1912 "configure"
#include "confdefs.h"
#include <time.h>
int main() {
time_t t = time(0); struct tm *p = localtime(&t);
; return 0; }
EOF
-if { (eval echo configure:1913: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1919: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6
else
@@ -1930,12 +1936,12 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:1934: checking return type of signal handlers" >&5
+echo "configure:1940: checking return type of signal handlers" >&5
if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1939 "configure"
+#line 1945 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <signal.h>
@@ -1952,7 +1958,7 @@ int main() {
int i;
; return 0; }
EOF
-if { (eval echo configure:1956: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1962: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_type_signal=void
else
@@ -1971,16 +1977,16 @@ EOF
echo $ac_n "checking struct exception""... $ac_c" 1>&6
-echo "configure:1975: checking struct exception" >&5
+echo "configure:1981: checking struct exception" >&5
cat > conftest.$ac_ext <<EOF
-#line 1977 "configure"
+#line 1983 "configure"
#include "confdefs.h"
#include <math.h>
int main() {
struct exception e;
; return 0; }
EOF
-if { (eval echo configure:1984: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1990: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define HAVE_STRUCT_EXCEPTION 1
@@ -1994,7 +2000,7 @@ else
fi
rm -f conftest*
echo $ac_n "checking for sin in -lm""... $ac_c" 1>&6
-echo "configure:1998: checking for sin in -lm" >&5
+echo "configure:2004: checking for sin in -lm" >&5
ac_lib_var=`echo m'_'sin | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2002,7 +2008,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lm $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 2006 "configure"
+#line 2012 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -2013,7 +2019,7 @@ int main() {
sin()
; return 0; }
EOF
-if { (eval echo configure:2017: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2023: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -2039,17 +2045,17 @@ for ac_hdr in unistd.h
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2043: checking for $ac_hdr" >&5
+echo "configure:2049: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2048 "configure"
+#line 2054 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2053: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2059: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -2078,12 +2084,12 @@ done
for ac_func in getpagesize
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2082: checking for $ac_func" >&5
+echo "configure:2088: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2087 "configure"
+#line 2093 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
@@ -2106,7 +2112,7 @@ $ac_func();
; return 0; }
EOF
-if { (eval echo configure:2110: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2116: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@@ -2131,7 +2137,7 @@ fi
done
echo $ac_n "checking for working mmap""... $ac_c" 1>&6
-echo "configure:2135: checking for working mmap" >&5
+echo "configure:2141: checking for working mmap" >&5
if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2139,7 +2145,7 @@ else
ac_cv_func_mmap_fixed_mapped=no
else
cat > conftest.$ac_ext <<EOF
-#line 2143 "configure"
+#line 2149 "configure"
#include "confdefs.h"
/* Thanks to Mike Haertel and Jim Avera for this test.
@@ -2279,7 +2285,7 @@ main()
}
EOF
-if { (eval echo configure:2283: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:2289: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_func_mmap_fixed_mapped=yes
else
@@ -2306,12 +2312,12 @@ LIBS="$LIBS -lc $LIBM"
for ac_func in fmod strtol getcwd strerror putenv
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2310: checking for $ac_func" >&5
+echo "configure:2316: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2315 "configure"
+#line 2321 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
@@ -2334,7 +2340,7 @@ $ac_func();
; return 0; }
EOF
-if { (eval echo configure:2338: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2344: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@@ -2361,15 +2367,15 @@ done
LIBS="$saved_libs"
-for ac_func in rename mkstemp
+for ac_func in rename mkstemp strcasecmp
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2368: checking for $ac_func" >&5
+echo "configure:2374: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2373 "configure"
+#line 2379 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
@@ -2392,7 +2398,7 @@ $ac_func();
; return 0; }
EOF
-if { (eval echo configure:2396: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2402: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@@ -2417,12 +2423,12 @@ fi
done
echo $ac_n "checking for sys_siglist declaration in signal.h or unistd.h""... $ac_c" 1>&6
-echo "configure:2421: checking for sys_siglist declaration in signal.h or unistd.h" >&5
+echo "configure:2427: checking for sys_siglist declaration in signal.h or unistd.h" >&5
if eval "test \"`echo '$''{'ac_cv_decl_sys_siglist'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2426 "configure"
+#line 2432 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <signal.h>
@@ -2434,7 +2440,7 @@ int main() {
char *msg = *(sys_siglist + 1);
; return 0; }
EOF
-if { (eval echo configure:2438: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2444: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_decl_sys_siglist=yes
else
@@ -2463,16 +2469,16 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking whether ANSI array delete syntax supported""... $ac_c" 1>&6
-echo "configure:2467: checking whether ANSI array delete syntax supported" >&5
+echo "configure:2473: checking whether ANSI array delete syntax supported" >&5
cat > conftest.$ac_ext <<EOF
-#line 2469 "configure"
+#line 2475 "configure"
#include "confdefs.h"
int main() {
char *p = new char[5]; delete [] p;
; return 0; }
EOF
-if { (eval echo configure:2476: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2482: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6
else
@@ -2501,16 +2507,16 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
echo $ac_n "checking traditional preprocessor""... $ac_c" 1>&6
-echo "configure:2505: checking traditional preprocessor" >&5
+echo "configure:2511: checking traditional preprocessor" >&5
cat > conftest.$ac_ext <<EOF
-#line 2507 "configure"
+#line 2513 "configure"
#include "confdefs.h"
#define name2(a,b) a/**/b
int main() {
int name2(foo,bar);
; return 0; }
EOF
-if { (eval echo configure:2514: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2520: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define TRADITIONAL_CPP 1
@@ -2531,12 +2537,12 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking w_coredump""... $ac_c" 1>&6
-echo "configure:2535: checking w_coredump" >&5
+echo "configure:2541: checking w_coredump" >&5
if test "$cross_compiling" = yes; then
echo "$ac_t""no" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2540 "configure"
+#line 2546 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/wait.h>
@@ -2551,7 +2557,7 @@ main()
#endif
}
EOF
-if { (eval echo configure:2555: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:2561: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
#define WCOREFLAG 0200
@@ -2567,12 +2573,12 @@ rm -fr conftest*
fi
echo $ac_n "checking default value for grops -b option""... $ac_c" 1>&6
-echo "configure:2571: checking default value for grops -b option" >&5
+echo "configure:2577: checking default value for grops -b option" >&5
test -n "${BROKEN_SPOOLER_FLAGS}" || BROKEN_SPOOLER_FLAGS=7
echo "$ac_t""$BROKEN_SPOOLER_FLAGS" 1>&6
echo $ac_n "checking default paper size""... $ac_c" 1>&6
-echo "configure:2576: checking default paper size" >&5
+echo "configure:2582: checking default paper size" >&5
if test -z "$PAGE"; then
descfile=
if test -r $prefix/share/groff/font/devps/DESC; then
@@ -2607,7 +2613,7 @@ test -n "$PAGE" || PAGE=letter
echo "$ac_t""$PAGE" 1>&6
echo $ac_n "checking for existing troff installation""... $ac_c" 1>&6
-echo "configure:2611: checking for existing troff installation" >&5
+echo "configure:2617: checking for existing troff installation" >&5
if test "x`(echo .tm '|n(.g' | tr '|' '\\\\' | troff -z -i 2>&1) 2>/dev/null`" = x0; then
echo "$ac_t""yes" 1>&6
g=g
@@ -2618,7 +2624,7 @@ fi
echo $ac_n "checking for prefix of system macro packages""... $ac_c" 1>&6
-echo "configure:2622: checking for prefix of system macro packages" >&5
+echo "configure:2628: checking for prefix of system macro packages" >&5
sys_tmac_prefix=
sys_tmac_file_prefix=
for d in /usr/share/lib/tmac /usr/lib/tmac; do
@@ -2638,7 +2644,7 @@ echo "$ac_t""$sys_tmac_prefix" 1>&6
tmac_wrap=
echo $ac_n "checking which system macro packages should be made available""... $ac_c" 1>&6
-echo "configure:2642: checking which system macro packages should be made available" >&5
+echo "configure:2648: checking which system macro packages should be made available" >&5
if test "x$sys_tmac_file_prefix" = "xtmac."; then
for f in $sys_tmac_prefix*; do
suff=`echo $f | sed -e "s;$sys_tmac_prefix;;"`
@@ -2821,6 +2827,7 @@ s%@includedir@%$includedir%g
s%@oldincludedir@%$oldincludedir%g
s%@infodir@%$infodir%g
s%@mandir@%$mandir%g
+s%@top_builddir@%$top_builddir%g
s%@CC@%$CC%g
s%@CXX@%$CXX%g
s%@LPR@%$LPR%g
diff --git a/configure.in b/configure.in
index bd4fdc877..bf9a3f0fc 100644..100755
--- a/configure.in
+++ b/configure.in
@@ -1,6 +1,8 @@
dnl Process this file with autoconf to produce a configure script.
-AC_INIT(groff/groff.cc)
+AC_INIT(src/roff/groff/groff.cc)
dnl checks for programs
+GROFF_SRCDIR
+GROFF_BUILDDIR
AC_PROG_CC
AC_PROG_CXX
GROFF_CXX_CHECK
@@ -38,7 +40,7 @@ saved_libs="$LIBS"
LIBS="$LIBS -lc $LIBM"
AC_REPLACE_FUNCS(fmod strtol getcwd strerror putenv)
LIBS="$saved_libs"
-AC_CHECK_FUNCS(rename mkstemp)
+AC_CHECK_FUNCS(rename mkstemp strcasecmp)
AC_DECL_SYS_SIGLIST
dnl checks for compiler characteristics
GROFF_ARRAY_DELETE
diff --git a/mm/ChangeLog b/contrib/mm/ChangeLog
index fb0d4fe1d..082a6b551 100644
--- a/mm/ChangeLog
+++ b/contrib/mm/ChangeLog
@@ -1,3 +1,29 @@
+Sun Jan 30 22:52:20 19100 Jörgen Hägg (jh at axis.com)
+
+ * version 1.34
+ *
+
+Fri Sep 3 07:33:14 1999 Jörgen Hägg (jh at axis.com)
+
+ * version 1.33
+ * At last! I finally tracked down the PGFORM bug!
+ It didn't setup the @pl, @ll and @po as it should, now it does.
+ * mgm_ref/mgm_roff renamed to mmroff [-x]
+ * fixed y2k-bug in \*[DT]
+ * \n[cov*year] removed, hope noone used that.
+ * ISODATE added with Iso as command line flag
+ (iso-date suggested by Paul Eggert)
+ * Added ISODATE to tmac.mse and removed local settings
+ of new-date.
+ * INITI syntax changed and enhanced. Index processing is now
+ done with mmroff.
+ * A few examples has been added, new subdirectory 'examples'.
+ * Fixed bug with SETR, header references are now only saved
+ when Ref > 0
+ * Problem with register H1h fixed
+ * Added test for missing abstract in 4.MT
+ * Updated Makefile.sub, using tmac_m_prefix.
+
Mon Mar 15 22:22:42 1999 Jörgen Hägg (jh at axis.com)
* OK, let's release this as a beta, 1.33 will be better. :-)
diff --git a/mm/Makefile.sim b/contrib/mm/Makefile.sim
index 2ac0892ec..85a172bce 100644
--- a/mm/Makefile.sim
+++ b/contrib/mm/Makefile.sim
@@ -1,5 +1,5 @@
#
-# $Id: Makefile.sim,v 1.32 1999/09/03 05:33:14 jh Exp $
+# $Id$
#
# To install mgm separately as tmac.gm:
# make -f Makefile.sub tmacdir=/usr/local/lib/groff/tmac srcdir=. \
diff --git a/contrib/mm/Makefile.sub b/contrib/mm/Makefile.sub
new file mode 100644
index 000000000..61dbcbba3
--- /dev/null
+++ b/contrib/mm/Makefile.sub
@@ -0,0 +1,49 @@
+#
+# $Id$
+#
+PROG=mmroff
+MAN7=\
+ groff_mm.n \
+ groff_mmse.n \
+ mmroff.n
+FILES=0.MT 5.MT 4.MT ms.cov se_ms.cov
+# Local configuration files with default values.
+LOCALE = locale se_locale
+CLEANADD=temp
+install: install_mm
+
+install_mm: install_mmroff install_m
+ -test -d $(tmacdir)/mm || $(mkinstalldirs) $(tmacdir)/mm
+ -for f in $(FILES); do \
+ rm -f $(tmacdir)/mm/$$f; \
+ $(INSTALL_DATA) $(srcdir)/mm/$$f $(tmacdir)/mm/$$f; \
+ done
+ -for f in $(LOCALE); do \
+ test -f $(tmacdir)/mm/$$f || touch $(tmacdir)/mm/$$f; \
+ done
+
+install_m:
+ -test -d $(tmacdir) || $(mkinstalldirs) $(tmacdir)
+ -rm -f $(tmacdir)/tmac.$(tmac_m_prefix)m
+ $(INSTALL_DATA) $(srcdir)/tmac.m $(tmacdir)/tmac.$(tmac_m_prefix)m
+ @sed -e "s;^.mso tmac.m;.mso tmac.$(tmac_m_prefix)m;g" \
+ $(srcdir)/tmac.mse > $(tmacdir)/tmac.$(tmac_m_prefix)mse
+install_mmroff : mmroff
+ -test -d $(bindir) || $(mkinstalldirs) $(bindir)
+ -rm -f $(bindir)/mmroff
+ $(INSTALL_PROGRAM) mmroff $(bindir)/mmroff
+
+mmroff: mmroff.pl
+ -rm -f $@
+ -sed -e 's;/usr/bin/perl;$(PERLPATH);' $(srcdir)/mmroff.pl >$@
+ -chmod +x $@
+
+uninstall_sub:
+ -for f in $(FILES); do rm -f $(tmacdir)/mm/$$f; done
+ -for f in $(LOCALE); do \
+ test -s $(tmacdir)/mm/$$f || rm -f $(tmacdir)/mm/$$f; \
+ done
+ -rm -f $(tmacdir)/tmac.$(tmac_m_prefix)m
+ -rm -f $(tmacdir)/tmac.$(tmac_m_prefix)mse
+ -rmdir $(tmacdir)/mm
+ -rm -f $(bindir)/mmroff
diff --git a/mm/NOTES b/contrib/mm/NOTES
index 43794a29c..43794a29c 100644
--- a/mm/NOTES
+++ b/contrib/mm/NOTES
diff --git a/mm/README b/contrib/mm/README
index a720f0705..a720f0705 100644
--- a/mm/README
+++ b/contrib/mm/README
diff --git a/contrib/mm/examples/APP b/contrib/mm/examples/APP
new file mode 100644
index 000000000..82352e58c
--- /dev/null
+++ b/contrib/mm/examples/APP
@@ -0,0 +1,352 @@
+.H 1 " granary grand grandchild grandchildren granddaughter grandeur"
+granary
+grapheme
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+.H 2 "grapefruit grapevine graph grapheme graphic graphite"
+granary
+grand
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+.H 3 "grapple"
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+.H 1 "Graves gravestone graveyard gravid gravitate gravy gray"
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+.H 1 "Greenfield greengrocer greenhouse greenish Greenland Greensboro"
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+.H 1 "greensward greenware Greenwich greenwood Greer greet"
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+.APP "" "Graves app a gravestone graveyard gravid gravitate gravy gray"
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+.APP "" "Greenfield app b greengrocer greenhouse greenish Greenland Greensboro"
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+.H 2 "grandfather grandiloquent grandiose grandma grandmother grandnephew"
+.H 2 "grandniece grandpa grandparent grandson grandstand granite granitic"
+.H 2 "granny granola grant grantee grantor granular granulate"
+.H 2 "granule Granville grape"
+.H 2 "grapefruit grapevine graph grapheme graphic graphite"
+.H 3 "grapple"
+grandfather
+grandiloquent
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+.APP ABC "greensward app abc greenware Greenwich greenwood Greer greet"
+graven
+Graves
+.APP "" "handstand app f handwrite handwritten handy handyman handymen"
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+.APPSK "" 10 "Handel app c 10 handhold handicap handicapped handicapper"
+.APPSK "" 23 "handicapping app d 23 handicraftsmen handiwork"
+.APPSK "" 99 "handmade app e 99 handset handshake handsome handspike"
+.nr Aph 0
+.APP "" "handstand app f handwrite handwritten handy handyman handymen"
+headsmen
+headstand
+headstone
+headstrong
+headwall
+headwater
+headway
+headwind
+.H 2 "graybeard grayish Grayson graywacke graze grease greasy great greatcoat"
+.H 2 "greater grebe Grecian Greece greed greedy Greek green Greenbelt Greenberg"
+.H 2 "Greenblatt Greenbriar Greene greenery"
+.H 3 "Greenfield greengrocer greenhouse greenish Greenland Greensboro"
+.H 3 "greensward greenware Greenwich greenwood Greer greet"
+heady
+heal
+Healey
+health
+healthful
+healthy
+Healy
+heap
+hear
+heard
+hearken
+hearsay
+hearse
+Hearst
+heart
+heartbeat
+heartbreak
+hearten
+heartfelt
+hearth
+hearty
+heat
+heater
+heath
+heathen
+heathenish
+Heathkit
+heave
+heaven
+heavenward
+heavy
+heavyweight
+Hebe
+hebephrenic
+Hebraic
+Hebrew
+Hecate
+hecatomb
+heck
+heckle
+Heckman
+hectic
+hector
+.APP "" "hang hangable app f hangar hangman hangmen hangout hangover hank"
+Hecuba
+he'd
+hedge
+.H 2 "graybeard grayish Grayson graywacke graze grease greasy great greatcoat"
+hedgehog
+hedonism
+hedonist
+heed
+heel
+.H 2 "greater grebe Grecian Greece greed greedy Greek green Greenbelt Greenberg"
+heft
+hefty
+Hegelian
+hegemony
+Heidelberg
+heigh
+height
+heighten
+Heine
+Heinrich
+Heinz
+heir
+heiress
+Heisenberg
+held
+Helen
+Helena
+Helene
+Helga
+helical
+helicopter
+heliocentric
+heliotrope
+helium
+helix
+he'll
+hell
+hellbender
+hellebore
+Hellenic
+hellfire
+hellgrammite
+hellish
+hello
+helm
+helmet
+Helmholtz
+helmsman
+helmsmen
+Helmut
+help
+helpful
+helpmate
+.APP "" "Hankel app g Hanley Hanlon Hanna Hannah Hannibal Hanoi Hanover"
+Helsinki
+Helvetica
+hem
+hematite
+Hemingway
+hemisphere
+hemispheric
+hemlock
+hemoglobin
+hemolytic
+hemorrhage
+hemorrhoid
+hemosiderin
+hemp
+Hempstead
+hen
+henbane
+hence
+henceforth
+henchman
+henchmen
+.H 2 "greater grebe Grecian Greece greed greedy Greek green Greenbelt Greenberg"
+Henderson
+Hendrick
+Hendricks
+Hendrickson
+henequen
+Henley
+henpeck
+Henri
+Henrietta
+henry
+hepatica
+hepatitis
+Hepburn
+heptane
+her
+Hera
+Heraclitus
+herald
+herb
+Herbert
+Herculean
+Hercules
+herd
+herdsman
+here
+hereabout
+hereafter
+hereby
+hereditary
+.TC
diff --git a/contrib/mm/examples/B1B2 b/contrib/mm/examples/B1B2
new file mode 100644
index 000000000..a2bb3add5
--- /dev/null
+++ b/contrib/mm/examples/B1B2
@@ -0,0 +1,91 @@
+abetting
+abeyance
+abeyant
+abhorred
+abhorrent
+abide
+Abidjan
+Abigail
+abject
+ablate
+ablaze
+able
+ablution
+Abner
+abnormal
+Abo
+aboard
+abode
+abolish
+.B1
+abolition
+abominable
+abominate
+aboriginal
+AAA
+ABORIGINE
+ABORNING
+ABORT
+ABOUND
+ABOUT
+ABOVE
+ABOVEBOARD
+ABOVEGROUND
+abovementioned
+abrade
+Abraham
+Abram
+Abramson
+abrasion
+abrasive
+abreact
+.B2
+abreast
+abrogate
+abrupt
+abscess
+abscissa
+abscissae
+absence
+absent
+absentee
+absenteeism
+absentia
+absentminded
+absinthe
+absolute
+absolution
+absolve
+absorb
+absorbent
+absorption
+absorptive
+abstain
+abstention
+abstract
+abstracter
+abstractor
+ABSURD
+ABUILDING
+ABUNDANT
+ABUSABLE
+ABUSE
+ABUSIVE
+ABUT
+ABUTTED
+ABUTTING
+ABYSMAL
+ABYSS
+ABYSSINIA
+AC
+ACADEME
+ACADEMIA
+ACADEMIC
+ACADEMICIAN
+ACADEMY
+ACADIA
+ACANTHUS
+ACAPULCO
+ACCEDE
+ACCELERATE
+ACCELEROMETER
diff --git a/contrib/mm/examples/COVER b/contrib/mm/examples/COVER
new file mode 100644
index 000000000..d23597f0a
--- /dev/null
+++ b/contrib/mm/examples/COVER
@@ -0,0 +1,235 @@
+.COVER
+.ND 911123
+.TL "charge" "filing"
+This is a test
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+.AU "Nisse Svensson" "DGY" "BF" "Computer Center" "5488" "5-2115" "nisse@vira.sture.elm"
+.AF "MT GRANDSTAND GRANITE GRANITIC"
+.AS 1 10
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+grebe
+Grecian
+.AE
+.COVEND
+Greece
+greed
+greedy
+Greek
+green
+Greenbelt
+Greenberg
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+grebe
+Grecian
+Greece
+greed
+greedy
+Greek
+green
+Greenbelt
+Greenberg
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+greenware
diff --git a/contrib/mm/examples/IND b/contrib/mm/examples/IND
new file mode 100644
index 000000000..fbf6c43a0
--- /dev/null
+++ b/contrib/mm/examples/IND
@@ -0,0 +1,4191 @@
+.de foo
+a=\\$1, b=\\$2
+.br
+..
+.INITI N ind-data
+.H 1 "halve"
+.IND granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+.IND grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+.IND granulate
+granule
+Granville
+grape
+.H 2 "grandfather grandiloquent grandiose grandma grandmother grandnephew"
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+.H 1 "halo halocarbon halogen Halpern Halsey Halstead halt halvah"
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+.IND grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+.H 1 "Han Hancock hand handbag handbook handclasp handcuff Handel handful"
+grebe
+Grecian
+Greece
+greed
+greedy
+.IND Greek
+green
+Greenbelt
+Greenberg
+.H 1 " granary grand grandchild grandchildren granddaughter grandeur"
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+.H 1 "handgun"
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+.IND gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+.IND grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+.IND groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+.H 1 "handicapped handicapper handicapping handicraft handicraftsman"
+Grosset
+Grossman
+Grosvenor
+grotesque
+Groton
+ground
+groundsel
+groundskeep
+groundwork
+group
+groupoid
+grout
+grove
+grovel
+Grover
+grow
+growl
+grown
+grownup
+.IND growth
+grub
+grubby
+grudge
+gruesome
+gruff
+grumble
+Grumman
+grunt
+gryphon
+g's
+GSA
+GU
+Guam
+guanidine
+guanine
+guano
+guarantee
+guaranteeing
+guarantor
+guaranty
+guard
+guardhouse
+.IND Guardia
+guardian
+Guatemala
+.IND gubernatorial
+Guelph
+Guenther
+guerdon
+guernsey
+guerrilla
+guess
+guesswork
+guest
+guffaw
+Guggenheim
+Guiana
+guidance
+guide
+guidebook
+guideline
+guidepost
+guiding
+guignol
+guild
+.H 1 "handicraftsmen handiwork handkerchief handle"
+guildhall
+guile
+Guilford
+guillemot
+guillotine
+guilt
+.IND guilty
+guinea
+guise
+guitar
+gules
+gulf
+.H 1 "handleable handlebar handline handmade handmaiden handout"
+gull
+Gullah
+gullet
+gullible
+gully
+gulp
+gum
+gumbo
+gumdrop
+gummy
+gumption
+gumshoe
+gun
+Gunderson
+.IND gunfight
+gunfire
+gunflint
+gunk
+gunky
+gunman
+.IND gunmen
+gunnery
+gunny
+gunplay
+gunpowder
+gunshot
+gunsling
+Gunther
+gurgle
+Gurkha
+guru
+Gus
+gush
+gusset
+gust
+Gustafson
+Gustav
+Gustave
+Gustavus
+gusto
+gusty
+gut
+.H 1 "handset"
+Gutenberg
+Guthrie
+gutsy
+guttural
+.IND guy
+Guyana
+guzzle
+Gwen
+Gwyn
+gym
+gymnasium
+gymnast
+gymnastic
+gymnosperm
+gyp
+gypsite
+gypsum
+gypsy
+gyrate
+gyrfalcon
+gyro
+.IND gyrocompass
+gyroscope
+h
+ha
+Haag
+Haas
+habeas
+haberdashery
+Haberman
+.IND Habib
+habit
+habitant
+habitat
+habitation
+habitual
+habituate
+hacienda
+hack
+hackberry
+Hackett
+hackle
+hackmatack
+.H 1 "handshake handsome handspike handstand handwaving handwrite handwritten"
+hackney
+hackneyed
+hacksaw
+had
+Hadamard
+Haddad
+haddock
+Hades
+Hadley
+hadn't
+Hadrian
+hadron
+hafnium
+.IND Hagen
+Hager
+haggard
+haggle
+Hagstrom
+Hague
+Hahn
+Haifa
+haiku
+hail
+hailstone
+hailstorm
+Haines
+hair
+.IND haircut
+hairdo
+hairpin
+hairy
+Haiti
+Haitian
+Hal
+halcyon
+hale
+Haley
+half
+halfback
+.IND halfhearted
+halfway
+halibut
+halide
+.H 1 "handy handyman handymen Haney Hanford hang hangable hangar"
+Halifax
+halite
+hall
+hallelujah
+Halley
+hallmark
+hallow
+Halloween
+hallucinate
+hallway
+halma
+halo
+halocarbon
+halogen
+Halpern
+Halsey
+Halstead
+halt
+halvah
+halve
+Halverson
+ham
+.IND Hamal
+Hamburg
+hamburger
+Hamilton
+hamlet
+Hamlin
+hammerhead
+hammock
+Hammond
+hamper
+Hampshire
+.IND Hampton
+hamster
+Han
+.H 1 "hangman hangmen hangout hangover hank Hankel Hanley"
+Hancock
+hand
+handbag
+handbook
+handclasp
+handcuff
+Handel
+handful
+handgun
+handhold
+handicap
+handicapped
+.IND handicapper
+handicapping
+handicraft
+handicraftsman
+handicraftsmen
+handiwork
+handkerchief
+handle
+handleable
+handlebar
+handline
+handmade
+handmaiden
+handout
+handset
+handshake
+handsome
+handspike
+handstand
+handwaving
+.H 1 "Hanlon Hanna Hannah Hannibal Hanoi Hanover Hanoverian Hans"
+handwrite
+handwritten
+handy
+handyman
+handymen
+Haney
+.IND Hanford
+hang
+hangable
+hangar
+hangman
+hangmen
+hangout
+hangover
+.IND hank
+Hankel
+Hanley
+Hanlon
+Hanna
+Hannah
+Hannibal
+Hanoi
+Hanover
+Hanoverian
+Hans
+Hansel
+Hansen
+hansom
+Hanson
+Hanukkah
+hap
+.H 1 "Hansel"
+haphazard
+.IND haploid
+haploidy
+haplology
+happen
+happenstance
+happy
+Hapsburg
+harangue
+harass
+Harbin
+harbinger
+Harcourt
+hard
+hardbake
+hardboard
+hardboiled
+hardcopy
+harden
+hardhat
+Hardin
+.H 1 "Hansen hansom Hanson Hanukkah hap haphazard haploid haploidy"
+Harding
+hardscrabble
+hardtack
+hardtop
+hardware
+hardwood
+.IND hardworking
+hardy
+hare
+harelip
+harem
+.IND hark
+Harlan
+Harlem
+Harley
+harm
+harmful
+Harmon
+harmonic
+harmonica
+harmonious
+.H 1 "haplology happen happenstance happy Hapsburg harangue harass Harbin"
+harmony
+harness
+Harold
+harp
+harpoon
+harpsichord
+Harpy
+Harriet
+Harriman
+Harrington
+Harris
+.IND Harrisburg
+Harrison
+harrow
+harry
+harsh
+harshen
+hart
+Hartford
+Hartley
+Hartman
+Harvard
+harvest
+harvestman
+Harvey
+hash
+hashish
+hasn't
+hasp
+hassle
+hast
+haste
+hasten
+Hastings
+hasty
+hat
+hatch
+.IND hatchet
+hatchway
+.IND hate
+hateful
+hater
+Hatfield
+hath
+Hathaway
+hatred
+Hatteras
+Hattie
+Hattiesburg
+Haugen
+haughty
+haul
+haulage
+haunch
+haunt
+Hausdorff
+Havana
+have
+haven
+haven't
+Havilland
+havoc
+haw
+.IND Hawaii
+Hawaiian
+hawk
+Hawkins
+Hawley
+hawthorn
+.H 2 "hammock Hammond hamper Hampshire Hampton hamster"
+Hawthorne
+hay
+Hayden
+Haydn
+Hayes
+hayfield
+Haynes
+Hays
+haystack
+Hayward
+hayward
+hazard
+hazardous
+haze
+hazel
+hazelnut
+hazy
+he
+head
+.IND headache
+.IND headboard
+headdress
+headland
+headlight
+headline
+headmaster
+headphone
+headquarter
+headquarters
+headroom
+headset
+headsman
+headsmen
+headstand
+headstone
+headstrong
+headwall
+headwater
+headway
+headwind
+heady
+heal
+Healey
+health
+healthful
+healthy
+.IND Healy
+heap
+hear
+heard
+hearken
+hearsay
+hearse
+Hearst
+heart
+heartbeat
+heartbreak
+hearten
+heartfelt
+hearth
+hearty
+heat
+heater
+heath
+heathen
+heathenish
+Heathkit
+heave
+.IND heaven
+heavenward
+heavy
+heavyweight
+.IND Hebe
+hebephrenic
+Hebraic
+Hebrew
+Hecate
+hecatomb
+heck
+heckle
+Heckman
+hectic
+hector
+Hecuba
+he'd
+hedge
+hedgehog
+hedonism
+hedonist
+heed
+heel
+heft
+hefty
+Hegelian
+hegemony
+Heidelberg
+heigh
+height
+.IND heighten
+Heine
+Heinrich
+Heinz
+heir
+heiress
+Heisenberg
+held
+Helen
+Helena
+Helene
+Helga
+helical
+helicopter
+heliocentric
+heliotrope
+helium
+helix
+he'll
+.IND hell
+hellbender
+hellebore
+Hellenic
+hellfire
+hellgrammite
+hellish
+.IND hello
+helm
+helmet
+.H 1 "Halverson ham Hamal Hamburg hamburger Hamilton hamlet Hamlin hammerhead"
+Helmholtz
+helmsman
+helmsmen
+Helmut
+help
+helpful
+helpmate
+Helsinki
+Helvetica
+hem
+hematite
+Hemingway
+hemisphere
+hemispheric
+hemlock
+hemoglobin
+hemolytic
+hemorrhage
+hemorrhoid
+hemosiderin
+hemp
+Hempstead
+hen
+.IND henbane
+hence
+henceforth
+henchman
+henchmen
+Henderson
+Hendrick
+Hendricks
+Hendrickson
+henequen
+Henley
+henpeck
+Henri
+Henrietta
+henry
+hepatica
+.IND hepatitis
+Hepburn
+heptane
+her
+Hera
+Heraclitus
+herald
+herb
+Herbert
+Herculean
+.IND Hercules
+herd
+herdsman
+here
+hereabout
+hereafter
+hereby
+hereditary
+heredity
+Hereford
+herein
+hereinabove
+hereinafter
+hereinbelow
+hereof
+heresy
+heretic
+hereto
+heretofore
+hereunder
+hereunto
+herewith
+heritable
+heritage
+Herkimer
+Herman
+.IND Hermann
+hermeneutic
+Hermes
+hermetic
+Hermite
+hermitian
+Hermosa
+Hernandez
+hero
+Herodotus
+heroes
+heroic
+heroin
+.IND heroine
+heroism
+heron
+herpes
+herpetology
+Herr
+herringbone
+Herschel
+herself
+Hershel
+Hershey
+hertz
+Hertzog
+.IND hesitant
+hesitate
+hesitater
+Hesperus
+Hess
+Hesse
+Hessian
+Hester
+heterocyclic
+heterodyne
+heterogamous
+heterogeneity
+heterogeneous
+heterosexual
+heterostructure
+heterozygous
+Hetman
+Hettie
+Hetty
+Heublein
+heuristic
+Heusen
+Heuser
+hew
+Hewett
+Hewitt
+.IND Hewlett
+hewn
+hex
+hexachloride
+hexadecimal
+hexafluoride
+hexagon
+hexagonal
+hexameter
+hexane
+.IND hey
+heyday
+hi
+Hiatt
+hiatus
+Hiawatha
+hibachi
+Hibbard
+hibernate
+Hibernia
+hick
+Hickey
+Hickman
+hickory
+Hicks
+hid
+.IND hidalgo
+hidden
+hide
+hideaway
+hideous
+hideout
+hierarchal
+hierarchic
+hierarchy
+hieratic
+hieroglyphic
+Hieronymus
+hifalutin
+Higgins
+high
+highball
+highboy
+highest
+highfalutin
+highhanded
+highland
+highlight
+highroad
+hightail
+highway
+highwayman
+.IND highwaymen
+hijack
+hijinks
+hike
+hilarious
+hilarity
+Hilbert
+.IND Hildebrand
+hill
+hillbilly
+Hillcrest
+Hillel
+hillman
+hillmen
+hillock
+hillside
+hilltop
+hilly
+hilt
+Hilton
+hilum
+him
+Himalaya
+himself
+hind
+hindmost
+.IND hindrance
+hindsight
+Hindu
+Hinduism
+Hines
+hinge
+Hinman
+hint
+hinterland
+hip
+hippo
+Hippocrates
+Hippocratic
+hippodrome
+hippopotamus
+hippy
+hipster
+Hiram
+hire
+hireling
+Hiroshi
+Hiroshima
+Hirsch
+hirsute
+his
+Hispanic
+.IND hiss
+histamine
+histidine
+histochemic
+.IND histochemistry
+histogram
+histology
+historian
+historic
+historiography
+history
+histrionic
+hit
+Hitachi
+hitch
+Hitchcock
+.H 1 "harbinger"
+hither
+hitherto
+Hitler
+hive
+ho
+hoagie
+Hoagland
+hoagy
+hoar
+hoard
+.IND hoarfrost
+hoarse
+hob
+Hobart
+Hobbes
+hobble
+Hobbs
+hobby
+hobbyhorse
+hobgoblin
+hobo
+Hoboken
+hoc
+hock
+hockey
+hocus
+hodge
+hodgepodge
+Hodges
+Hodgkin
+hoe
+Hoff
+Hoffman
+hog
+hogan
+hogging
+.IND hoi
+.IND Hokan
+Holbrook
+Holcomb
+hold
+holden
+holdout
+holdover
+holdup
+hole
+holeable
+holiday
+Holland
+Hollandaise
+holler
+Hollerith
+Hollingsworth
+Hollister
+hollow
+Holloway
+hollowware
+holly
+hollyhock
+Hollywood
+Holm
+Holman
+.IND Holmdel
+Holmes
+holmium
+holocaust
+Holocene
+hologram
+holography
+Holst
+Holstein
+holster
+holt
+Holyoke
+.IND holystone
+.INDP
+inject injudicious Injun injunct injunction injure injurious injury
+injustice ink inkling inlaid inland inlay inlet Inman inmate inn innards
+innate inner innermost innkeeper innocent innocuous innovate innuendo
+innumerable inoculate inoffensive inoperable inoperative inopportune
+inordinate inorganic input inputting inquest inquire inquiry inquisition
+inquisitive inquisitor inroad insane insatiable inscribe inscription
+inscrutable insect insecticide insecure inseminate insensible insensitive
+inseparable insert inset inshore inside insidious insight insightful
+insignia insignificant insincere insinuate insipid insist insistent
+insofar insolent insoluble insolvable insolvent insomnia insomniac
+insouciant inspect inspector inspiration inspire instable install
+installation instalment instance instant instantaneous instantiate
+.INITI H ind-data2
+.H 1 "halve"
+.IND granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+.IND grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+.IND granulate
+granule
+Granville
+grape
+.H 2 "grandfather grandiloquent grandiose grandma grandmother grandnephew"
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+.H 1 "halo halocarbon halogen Halpern Halsey Halstead halt halvah"
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+.IND grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+.H 1 "Han Hancock hand handbag handbook handclasp handcuff Handel handful"
+grebe
+Grecian
+Greece
+greed
+greedy
+.IND Greek
+green
+Greenbelt
+Greenberg
+.H 1 " granary grand grandchild grandchildren granddaughter grandeur"
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+.H 1 "handgun"
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+.IND gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+.IND grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+.IND groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+.H 1 "handicapped handicapper handicapping handicraft handicraftsman"
+Grosset
+Grossman
+Grosvenor
+grotesque
+Groton
+ground
+groundsel
+groundskeep
+groundwork
+group
+groupoid
+grout
+grove
+grovel
+Grover
+grow
+growl
+grown
+grownup
+.IND growth
+grub
+grubby
+grudge
+gruesome
+gruff
+grumble
+Grumman
+grunt
+gryphon
+g's
+GSA
+GU
+Guam
+guanidine
+guanine
+guano
+guarantee
+guaranteeing
+guarantor
+guaranty
+guard
+guardhouse
+.IND Guardia
+guardian
+Guatemala
+.IND gubernatorial
+Guelph
+Guenther
+guerdon
+guernsey
+guerrilla
+guess
+guesswork
+guest
+guffaw
+Guggenheim
+Guiana
+guidance
+guide
+guidebook
+guideline
+guidepost
+guiding
+guignol
+guild
+.H 1 "handicraftsmen handiwork handkerchief handle"
+guildhall
+guile
+Guilford
+guillemot
+guillotine
+guilt
+.IND guilty
+guinea
+guise
+guitar
+gules
+gulf
+.H 1 "handleable handlebar handline handmade handmaiden handout"
+gull
+Gullah
+gullet
+gullible
+gully
+gulp
+gum
+gumbo
+gumdrop
+gummy
+gumption
+gumshoe
+gun
+Gunderson
+.IND gunfight
+gunfire
+gunflint
+gunk
+gunky
+gunman
+.IND gunmen
+gunnery
+gunny
+gunplay
+gunpowder
+gunshot
+gunsling
+Gunther
+gurgle
+Gurkha
+guru
+Gus
+gush
+gusset
+gust
+Gustafson
+Gustav
+Gustave
+Gustavus
+gusto
+gusty
+gut
+.H 1 "handset"
+Gutenberg
+Guthrie
+gutsy
+guttural
+.IND guy
+Guyana
+guzzle
+Gwen
+Gwyn
+gym
+gymnasium
+gymnast
+gymnastic
+gymnosperm
+gyp
+gypsite
+gypsum
+gypsy
+gyrate
+gyrfalcon
+gyro
+.IND gyrocompass
+gyroscope
+h
+ha
+Haag
+Haas
+habeas
+haberdashery
+Haberman
+.IND Habib
+habit
+habitant
+habitat
+habitation
+habitual
+habituate
+hacienda
+hack
+hackberry
+Hackett
+hackle
+hackmatack
+.H 1 "handshake handsome handspike handstand handwaving handwrite handwritten"
+hackney
+hackneyed
+hacksaw
+had
+Hadamard
+Haddad
+haddock
+Hades
+Hadley
+hadn't
+Hadrian
+hadron
+hafnium
+.IND Hagen
+Hager
+haggard
+haggle
+Hagstrom
+Hague
+Hahn
+Haifa
+haiku
+hail
+hailstone
+hailstorm
+Haines
+hair
+.IND haircut
+hairdo
+hairpin
+hairy
+Haiti
+Haitian
+Hal
+halcyon
+hale
+Haley
+half
+halfback
+.IND halfhearted
+halfway
+halibut
+halide
+.H 1 "handy handyman handymen Haney Hanford hang hangable hangar"
+Halifax
+halite
+hall
+hallelujah
+Halley
+hallmark
+hallow
+Halloween
+hallucinate
+hallway
+halma
+halo
+halocarbon
+halogen
+Halpern
+Halsey
+Halstead
+halt
+halvah
+halve
+Halverson
+ham
+.IND Hamal
+Hamburg
+hamburger
+Hamilton
+hamlet
+Hamlin
+hammerhead
+hammock
+Hammond
+hamper
+Hampshire
+.IND Hampton
+hamster
+Han
+.H 1 "hangman hangmen hangout hangover hank Hankel Hanley"
+Hancock
+hand
+handbag
+handbook
+handclasp
+handcuff
+Handel
+handful
+handgun
+handhold
+handicap
+handicapped
+.IND handicapper
+handicapping
+handicraft
+handicraftsman
+handicraftsmen
+handiwork
+handkerchief
+handle
+handleable
+handlebar
+handline
+handmade
+handmaiden
+handout
+handset
+handshake
+handsome
+handspike
+handstand
+handwaving
+.H 1 "Hanlon Hanna Hannah Hannibal Hanoi Hanover Hanoverian Hans"
+handwrite
+handwritten
+handy
+handyman
+handymen
+Haney
+.IND Hanford
+hang
+hangable
+hangar
+hangman
+hangmen
+hangout
+hangover
+.IND hank
+Hankel
+Hanley
+Hanlon
+Hanna
+Hannah
+Hannibal
+Hanoi
+Hanover
+Hanoverian
+Hans
+Hansel
+Hansen
+hansom
+Hanson
+Hanukkah
+hap
+.H 1 "Hansel"
+haphazard
+.IND haploid
+haploidy
+haplology
+happen
+happenstance
+happy
+Hapsburg
+harangue
+harass
+Harbin
+harbinger
+Harcourt
+hard
+hardbake
+hardboard
+hardboiled
+hardcopy
+harden
+hardhat
+Hardin
+.H 1 "Hansen hansom Hanson Hanukkah hap haphazard haploid haploidy"
+Harding
+hardscrabble
+hardtack
+hardtop
+hardware
+hardwood
+.IND hardworking
+hardy
+hare
+harelip
+harem
+.IND hark
+Harlan
+Harlem
+Harley
+harm
+harmful
+Harmon
+harmonic
+harmonica
+harmonious
+.H 1 "haplology happen happenstance happy Hapsburg harangue harass Harbin"
+harmony
+harness
+Harold
+harp
+harpoon
+harpsichord
+Harpy
+Harriet
+Harriman
+Harrington
+Harris
+.IND Harrisburg
+Harrison
+harrow
+harry
+harsh
+harshen
+hart
+Hartford
+Hartley
+Hartman
+Harvard
+harvest
+harvestman
+Harvey
+hash
+hashish
+hasn't
+hasp
+hassle
+hast
+haste
+hasten
+Hastings
+hasty
+hat
+hatch
+.IND hatchet
+hatchway
+.IND hate
+hateful
+hater
+Hatfield
+hath
+Hathaway
+hatred
+Hatteras
+Hattie
+Hattiesburg
+Haugen
+haughty
+haul
+haulage
+haunch
+haunt
+Hausdorff
+Havana
+have
+haven
+haven't
+Havilland
+havoc
+haw
+.IND Hawaii
+Hawaiian
+hawk
+Hawkins
+Hawley
+hawthorn
+.H 2 "hammock Hammond hamper Hampshire Hampton hamster"
+Hawthorne
+hay
+Hayden
+Haydn
+Hayes
+hayfield
+Haynes
+Hays
+haystack
+Hayward
+hayward
+hazard
+hazardous
+haze
+hazel
+hazelnut
+hazy
+he
+head
+.IND headache
+.IND headboard
+headdress
+headland
+headlight
+headline
+headmaster
+headphone
+headquarter
+headquarters
+headroom
+headset
+headsman
+headsmen
+headstand
+headstone
+headstrong
+headwall
+headwater
+headway
+headwind
+heady
+heal
+Healey
+health
+healthful
+healthy
+.IND Healy
+heap
+hear
+heard
+hearken
+hearsay
+hearse
+Hearst
+heart
+heartbeat
+heartbreak
+hearten
+heartfelt
+hearth
+hearty
+heat
+heater
+heath
+heathen
+heathenish
+Heathkit
+heave
+.IND heaven
+heavenward
+heavy
+heavyweight
+.IND Hebe
+hebephrenic
+Hebraic
+Hebrew
+Hecate
+hecatomb
+heck
+heckle
+Heckman
+hectic
+hector
+Hecuba
+he'd
+hedge
+hedgehog
+hedonism
+hedonist
+heed
+heel
+heft
+hefty
+Hegelian
+hegemony
+Heidelberg
+heigh
+height
+.IND heighten
+Heine
+Heinrich
+Heinz
+heir
+heiress
+Heisenberg
+held
+Helen
+Helena
+Helene
+Helga
+helical
+helicopter
+heliocentric
+heliotrope
+helium
+helix
+he'll
+.IND hell
+hellbender
+hellebore
+Hellenic
+hellfire
+hellgrammite
+hellish
+.IND hello
+helm
+helmet
+.H 1 "Halverson ham Hamal Hamburg hamburger Hamilton hamlet Hamlin hammerhead"
+Helmholtz
+helmsman
+helmsmen
+Helmut
+help
+helpful
+helpmate
+Helsinki
+Helvetica
+hem
+hematite
+Hemingway
+hemisphere
+hemispheric
+hemlock
+hemoglobin
+hemolytic
+hemorrhage
+hemorrhoid
+hemosiderin
+hemp
+Hempstead
+hen
+.IND henbane
+hence
+henceforth
+henchman
+henchmen
+Henderson
+Hendrick
+Hendricks
+Hendrickson
+henequen
+Henley
+henpeck
+Henri
+Henrietta
+henry
+hepatica
+.IND hepatitis
+Hepburn
+heptane
+her
+Hera
+Heraclitus
+herald
+herb
+Herbert
+Herculean
+.IND Hercules
+herd
+herdsman
+here
+hereabout
+hereafter
+hereby
+hereditary
+heredity
+Hereford
+herein
+hereinabove
+hereinafter
+hereinbelow
+hereof
+heresy
+heretic
+hereto
+heretofore
+hereunder
+hereunto
+herewith
+heritable
+heritage
+Herkimer
+Herman
+.IND Hermann
+hermeneutic
+Hermes
+hermetic
+Hermite
+hermitian
+Hermosa
+Hernandez
+hero
+Herodotus
+heroes
+heroic
+heroin
+.IND heroine
+heroism
+heron
+herpes
+herpetology
+Herr
+herringbone
+Herschel
+herself
+Hershel
+Hershey
+hertz
+Hertzog
+.IND hesitant
+hesitate
+hesitater
+Hesperus
+Hess
+Hesse
+Hessian
+Hester
+heterocyclic
+heterodyne
+heterogamous
+heterogeneity
+heterogeneous
+heterosexual
+heterostructure
+heterozygous
+Hetman
+Hettie
+Hetty
+Heublein
+heuristic
+Heusen
+Heuser
+hew
+Hewett
+Hewitt
+.IND Hewlett
+hewn
+hex
+hexachloride
+hexadecimal
+hexafluoride
+hexagon
+hexagonal
+hexameter
+hexane
+.IND hey
+heyday
+hi
+Hiatt
+hiatus
+Hiawatha
+hibachi
+Hibbard
+hibernate
+Hibernia
+hick
+Hickey
+Hickman
+hickory
+Hicks
+hid
+.IND hidalgo
+hidden
+hide
+hideaway
+hideous
+hideout
+hierarchal
+hierarchic
+hierarchy
+hieratic
+hieroglyphic
+Hieronymus
+hifalutin
+Higgins
+high
+highball
+highboy
+highest
+highfalutin
+highhanded
+highland
+highlight
+highroad
+hightail
+highway
+highwayman
+.IND highwaymen
+hijack
+hijinks
+hike
+hilarious
+hilarity
+Hilbert
+.IND Hildebrand
+hill
+hillbilly
+Hillcrest
+Hillel
+hillman
+hillmen
+hillock
+hillside
+hilltop
+hilly
+hilt
+Hilton
+hilum
+him
+Himalaya
+himself
+hind
+hindmost
+.IND hindrance
+hindsight
+Hindu
+Hinduism
+Hines
+hinge
+Hinman
+hint
+hinterland
+hip
+hippo
+Hippocrates
+Hippocratic
+hippodrome
+hippopotamus
+hippy
+hipster
+Hiram
+hire
+hireling
+Hiroshi
+Hiroshima
+Hirsch
+hirsute
+his
+Hispanic
+.IND hiss
+histamine
+histidine
+histochemic
+.IND histochemistry
+histogram
+histology
+historian
+historic
+historiography
+history
+histrionic
+hit
+Hitachi
+hitch
+Hitchcock
+.H 1 "harbinger"
+hither
+hitherto
+Hitler
+hive
+ho
+hoagie
+Hoagland
+hoagy
+hoar
+hoard
+.IND hoarfrost
+hoarse
+hob
+Hobart
+Hobbes
+hobble
+Hobbs
+hobby
+hobbyhorse
+hobgoblin
+hobo
+Hoboken
+hoc
+hock
+hockey
+hocus
+hodge
+hodgepodge
+Hodges
+Hodgkin
+hoe
+Hoff
+Hoffman
+hog
+hogan
+hogging
+.IND hoi
+.IND Hokan
+Holbrook
+Holcomb
+hold
+holden
+holdout
+holdover
+holdup
+hole
+holeable
+holiday
+Holland
+Hollandaise
+holler
+Hollerith
+Hollingsworth
+Hollister
+hollow
+Holloway
+hollowware
+holly
+hollyhock
+Hollywood
+Holm
+Holman
+.IND Holmdel
+Holmes
+holmium
+holocaust
+Holocene
+hologram
+holography
+Holst
+Holstein
+holster
+holt
+Holyoke
+.IND holystone
+.INDP
+inject injudicious Injun injunct injunction injure injurious injury
+injustice ink inkling inlaid inland inlay inlet Inman inmate inn innards
+innate inner innermost innkeeper innocent innocuous innovate innuendo
+innumerable inoculate inoffensive inoperable inoperative inopportune
+inordinate inorganic input inputting inquest inquire inquiry inquisition
+.INITI B ind-data3
+.H 1 "halve"
+.IND granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+.IND grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+.IND granulate
+granule
+Granville
+grape
+.H 2 "grandfather grandiloquent grandiose grandma grandmother grandnephew"
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+.H 1 "halo halocarbon halogen Halpern Halsey Halstead halt halvah"
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+.IND grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+.H 1 "Han Hancock hand handbag handbook handclasp handcuff Handel handful"
+grebe
+Grecian
+Greece
+greed
+greedy
+.IND Greek
+green
+Greenbelt
+Greenberg
+.H 1 " granary grand grandchild grandchildren granddaughter grandeur"
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+.H 1 "handgun"
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+.IND gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+.IND grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+.IND groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+.H 1 "handicapped handicapper handicapping handicraft handicraftsman"
+Grosset
+Grossman
+Grosvenor
+grotesque
+Groton
+ground
+groundsel
+groundskeep
+groundwork
+group
+groupoid
+grout
+grove
+grovel
+Grover
+grow
+growl
+grown
+grownup
+.IND growth
+grub
+grubby
+grudge
+gruesome
+gruff
+grumble
+Grumman
+grunt
+gryphon
+g's
+GSA
+GU
+Guam
+guanidine
+guanine
+guano
+guarantee
+guaranteeing
+guarantor
+guaranty
+guard
+guardhouse
+.IND Guardia
+guardian
+Guatemala
+.IND gubernatorial
+Guelph
+Guenther
+guerdon
+guernsey
+guerrilla
+guess
+guesswork
+guest
+guffaw
+Guggenheim
+Guiana
+guidance
+guide
+guidebook
+guideline
+guidepost
+guiding
+guignol
+guild
+.H 1 "handicraftsmen handiwork handkerchief handle"
+guildhall
+guile
+Guilford
+guillemot
+guillotine
+guilt
+.IND guilty
+guinea
+guise
+guitar
+gules
+gulf
+.H 1 "handleable handlebar handline handmade handmaiden handout"
+gull
+Gullah
+gullet
+gullible
+gully
+gulp
+gum
+gumbo
+gumdrop
+gummy
+gumption
+gumshoe
+gun
+Gunderson
+.IND gunfight
+gunfire
+gunflint
+gunk
+gunky
+gunman
+.IND gunmen
+gunnery
+gunny
+gunplay
+gunpowder
+gunshot
+gunsling
+Gunther
+gurgle
+Gurkha
+guru
+Gus
+gush
+gusset
+gust
+Gustafson
+Gustav
+Gustave
+Gustavus
+gusto
+gusty
+gut
+.H 1 "handset"
+Gutenberg
+Guthrie
+gutsy
+guttural
+.IND guy
+Guyana
+guzzle
+Gwen
+Gwyn
+gym
+gymnasium
+gymnast
+gymnastic
+gymnosperm
+gyp
+gypsite
+gypsum
+gypsy
+gyrate
+gyrfalcon
+gyro
+.IND gyrocompass
+gyroscope
+h
+ha
+Haag
+Haas
+habeas
+haberdashery
+Haberman
+.IND Habib
+habit
+habitant
+habitat
+habitation
+habitual
+habituate
+hacienda
+hack
+hackberry
+Hackett
+hackle
+hackmatack
+.H 1 "handshake handsome handspike handstand handwaving handwrite handwritten"
+hackney
+hackneyed
+hacksaw
+had
+Hadamard
+Haddad
+haddock
+Hades
+Hadley
+hadn't
+Hadrian
+hadron
+hafnium
+.IND Hagen
+Hager
+haggard
+haggle
+Hagstrom
+Hague
+Hahn
+Haifa
+haiku
+hail
+hailstone
+hailstorm
+Haines
+hair
+.IND haircut
+hairdo
+hairpin
+hairy
+Haiti
+Haitian
+Hal
+halcyon
+hale
+Haley
+half
+halfback
+.IND halfhearted
+halfway
+halibut
+halide
+.H 1 "handy handyman handymen Haney Hanford hang hangable hangar"
+Halifax
+halite
+hall
+hallelujah
+Halley
+hallmark
+hallow
+Halloween
+hallucinate
+hallway
+halma
+halo
+halocarbon
+halogen
+Halpern
+Halsey
+Halstead
+halt
+halvah
+halve
+Halverson
+ham
+.IND Hamal
+Hamburg
+hamburger
+Hamilton
+hamlet
+Hamlin
+hammerhead
+hammock
+Hammond
+hamper
+Hampshire
+.IND Hampton
+hamster
+Han
+.H 1 "hangman hangmen hangout hangover hank Hankel Hanley"
+Hancock
+hand
+handbag
+handbook
+handclasp
+handcuff
+Handel
+handful
+handgun
+handhold
+handicap
+handicapped
+.IND handicapper
+handicapping
+handicraft
+handicraftsman
+handicraftsmen
+handiwork
+handkerchief
+handle
+handleable
+handlebar
+handline
+handmade
+handmaiden
+handout
+handset
+handshake
+handsome
+handspike
+handstand
+handwaving
+.H 1 "Hanlon Hanna Hannah Hannibal Hanoi Hanover Hanoverian Hans"
+handwrite
+handwritten
+handy
+handyman
+handymen
+Haney
+.IND Hanford
+hang
+hangable
+hangar
+hangman
+hangmen
+hangout
+hangover
+.IND hank
+Hankel
+Hanley
+Hanlon
+Hanna
+Hannah
+Hannibal
+Hanoi
+Hanover
+Hanoverian
+Hans
+Hansel
+Hansen
+hansom
+Hanson
+Hanukkah
+hap
+.H 1 "Hansel"
+haphazard
+.IND haploid
+haploidy
+haplology
+happen
+happenstance
+happy
+Hapsburg
+harangue
+harass
+Harbin
+harbinger
+Harcourt
+hard
+hardbake
+hardboard
+hardboiled
+hardcopy
+harden
+hardhat
+Hardin
+.H 1 "Hansen hansom Hanson Hanukkah hap haphazard haploid haploidy"
+Harding
+hardscrabble
+hardtack
+hardtop
+hardware
+hardwood
+.IND hardworking
+hardy
+hare
+harelip
+harem
+.IND hark
+Harlan
+Harlem
+Harley
+harm
+harmful
+Harmon
+harmonic
+harmonica
+harmonious
+.H 1 "haplology happen happenstance happy Hapsburg harangue harass Harbin"
+harmony
+harness
+Harold
+harp
+harpoon
+harpsichord
+Harpy
+Harriet
+Harriman
+Harrington
+Harris
+.IND Harrisburg
+Harrison
+harrow
+harry
+harsh
+harshen
+hart
+Hartford
+Hartley
+Hartman
+Harvard
+harvest
+harvestman
+Harvey
+hash
+hashish
+hasn't
+hasp
+hassle
+hast
+haste
+hasten
+Hastings
+hasty
+hat
+hatch
+.IND hatchet
+hatchway
+.IND hate
+hateful
+hater
+Hatfield
+hath
+Hathaway
+hatred
+Hatteras
+Hattie
+Hattiesburg
+Haugen
+haughty
+haul
+haulage
+haunch
+haunt
+Hausdorff
+Havana
+have
+haven
+haven't
+Havilland
+havoc
+haw
+.IND Hawaii
+Hawaiian
+hawk
+Hawkins
+Hawley
+hawthorn
+.H 2 "hammock Hammond hamper Hampshire Hampton hamster"
+Hawthorne
+hay
+Hayden
+Haydn
+Hayes
+hayfield
+Haynes
+Hays
+haystack
+Hayward
+hayward
+hazard
+hazardous
+haze
+hazel
+hazelnut
+hazy
+he
+head
+.IND headache
+.IND headboard
+headdress
+headland
+headlight
+headline
+headmaster
+headphone
+headquarter
+headquarters
+headroom
+headset
+headsman
+headsmen
+headstand
+headstone
+headstrong
+headwall
+headwater
+headway
+headwind
+heady
+heal
+Healey
+health
+healthful
+healthy
+.IND Healy
+heap
+hear
+heard
+hearken
+hearsay
+hearse
+Hearst
+heart
+heartbeat
+heartbreak
+hearten
+heartfelt
+hearth
+hearty
+heat
+heater
+heath
+heathen
+heathenish
+Heathkit
+heave
+.IND heaven
+heavenward
+heavy
+heavyweight
+.IND Hebe
+hebephrenic
+Hebraic
+Hebrew
+Hecate
+hecatomb
+heck
+heckle
+Heckman
+hectic
+hector
+Hecuba
+he'd
+hedge
+hedgehog
+hedonism
+hedonist
+heed
+heel
+heft
+hefty
+Hegelian
+hegemony
+Heidelberg
+heigh
+height
+.IND heighten
+Heine
+Heinrich
+Heinz
+heir
+heiress
+Heisenberg
+held
+Helen
+Helena
+Helene
+Helga
+helical
+helicopter
+heliocentric
+heliotrope
+helium
+helix
+he'll
+.IND hell
+hellbender
+hellebore
+Hellenic
+hellfire
+hellgrammite
+hellish
+.IND hello
+helm
+helmet
+.H 1 "Halverson ham Hamal Hamburg hamburger Hamilton hamlet Hamlin hammerhead"
+Helmholtz
+helmsman
+helmsmen
+Helmut
+help
+helpful
+helpmate
+Helsinki
+Helvetica
+hem
+hematite
+Hemingway
+hemisphere
+hemispheric
+hemlock
+hemoglobin
+hemolytic
+hemorrhage
+hemorrhoid
+hemosiderin
+hemp
+Hempstead
+hen
+.IND henbane
+hence
+henceforth
+henchman
+henchmen
+Henderson
+Hendrick
+Hendricks
+Hendrickson
+henequen
+Henley
+henpeck
+Henri
+Henrietta
+henry
+hepatica
+.IND hepatitis
+Hepburn
+heptane
+her
+Hera
+Heraclitus
+herald
+herb
+Herbert
+Herculean
+.IND Hercules
+herd
+herdsman
+here
+hereabout
+hereafter
+hereby
+hereditary
+heredity
+Hereford
+herein
+hereinabove
+hereinafter
+hereinbelow
+hereof
+heresy
+heretic
+hereto
+heretofore
+hereunder
+hereunto
+herewith
+heritable
+heritage
+Herkimer
+Herman
+.IND Hermann
+hermeneutic
+Hermes
+hermetic
+Hermite
+hermitian
+Hermosa
+Hernandez
+hero
+Herodotus
+heroes
+heroic
+heroin
+.IND heroine
+heroism
+heron
+herpes
+herpetology
+Herr
+herringbone
+Herschel
+herself
+Hershel
+Hershey
+hertz
+Hertzog
+.IND hesitant
+hesitate
+hesitater
+Hesperus
+Hess
+Hesse
+Hessian
+Hester
+heterocyclic
+heterodyne
+heterogamous
+heterogeneity
+heterogeneous
+heterosexual
+heterostructure
+heterozygous
+Hetman
+Hettie
+Hetty
+Heublein
+heuristic
+Heusen
+Heuser
+hew
+Hewett
+Hewitt
+.IND Hewlett
+hewn
+hex
+hexachloride
+hexadecimal
+hexafluoride
+hexagon
+hexagonal
+hexameter
+hexane
+.IND hey
+heyday
+hi
+Hiatt
+hiatus
+Hiawatha
+hibachi
+Hibbard
+hibernate
+Hibernia
+hick
+Hickey
+Hickman
+hickory
+Hicks
+hid
+.IND hidalgo
+hidden
+hide
+hideaway
+hideous
+hideout
+hierarchal
+hierarchic
+hierarchy
+hieratic
+hieroglyphic
+Hieronymus
+hifalutin
+Higgins
+high
+highball
+highboy
+highest
+highfalutin
+highhanded
+highland
+highlight
+highroad
+hightail
+highway
+highwayman
+.IND highwaymen
+hijack
+hijinks
+hike
+hilarious
+hilarity
+Hilbert
+.IND Hildebrand
+hill
+hillbilly
+Hillcrest
+Hillel
+hillman
+hillmen
+hillock
+hillside
+hilltop
+hilly
+hilt
+Hilton
+hilum
+him
+Himalaya
+himself
+hind
+hindmost
+.IND hindrance
+hindsight
+Hindu
+Hinduism
+Hines
+hinge
+Hinman
+hint
+hinterland
+hip
+hippo
+Hippocrates
+Hippocratic
+hippodrome
+hippopotamus
+hippy
+hipster
+Hiram
+hire
+hireling
+Hiroshi
+Hiroshima
+Hirsch
+hirsute
+his
+Hispanic
+.IND hiss
+histamine
+histidine
+histochemic
+.IND histochemistry
+histogram
+histology
+historian
+historic
+historiography
+history
+histrionic
+hit
+Hitachi
+hitch
+Hitchcock
+.H 1 "harbinger"
+hither
+hitherto
+Hitler
+hive
+ho
+hoagie
+Hoagland
+hoagy
+hoar
+hoard
+.IND hoarfrost
+hoarse
+hob
+Hobart
+Hobbes
+hobble
+Hobbs
+hobby
+hobbyhorse
+hobgoblin
+hobo
+Hoboken
+hoc
+hock
+hockey
+hocus
+hodge
+hodgepodge
+Hodges
+Hodgkin
+hoe
+Hoff
+Hoffman
+hog
+hogan
+hogging
+.IND hoi
+.IND Hokan
+Holbrook
+Holcomb
+hold
+holden
+holdout
+holdover
+holdup
+hole
+holeable
+holiday
+Holland
+Hollandaise
+holler
+Hollerith
+Hollingsworth
+Hollister
+hollow
+Holloway
+hollowware
+holly
+hollyhock
+Hollywood
+Holm
+Holman
+.IND Holmdel
+Holmes
+holmium
+holocaust
+Holocene
+hologram
+holography
+Holst
+Holstein
+holster
+holt
+Holyoke
+.IND holystone
+.INDP
+inject injudicious Injun injunct injunction injure injurious injury
+injustice ink inkling inlaid inland inlay inlet Inman inmate inn innards
+innate inner innermost innkeeper innocent innocuous innovate innuendo
+innumerable inoculate inoffensive inoperable inoperative inopportune
+inordinate inorganic input inputting inquest inquire inquiry inquisition
+.INITI B ind-data4 foo
+.H 1 "halve"
+.IND granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+.IND grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+.IND granulate
+granule
+Granville
+grape
+.H 2 "grandfather grandiloquent grandiose grandma grandmother grandnephew"
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+.H 1 "halo halocarbon halogen Halpern Halsey Halstead halt halvah"
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+.IND grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+.H 1 "Han Hancock hand handbag handbook handclasp handcuff Handel handful"
+grebe
+Grecian
+Greece
+greed
+greedy
+.IND Greek
+green
+Greenbelt
+Greenberg
+.H 1 " granary grand grandchild grandchildren granddaughter grandeur"
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+.H 1 "handgun"
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+.IND gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+.IND grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+.IND groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+.H 1 "handicapped handicapper handicapping handicraft handicraftsman"
+Grosset
+Grossman
+Grosvenor
+grotesque
+Groton
+ground
+groundsel
+groundskeep
+groundwork
+group
+groupoid
+grout
+grove
+grovel
+Grover
+grow
+growl
+grown
+grownup
+.IND growth
+grub
+grubby
+grudge
+gruesome
+gruff
+grumble
+Grumman
+grunt
+gryphon
+g's
+GSA
+GU
+Guam
+guanidine
+guanine
+guano
+guarantee
+guaranteeing
+guarantor
+guaranty
+guard
+guardhouse
+.IND Guardia
+guardian
+Guatemala
+.IND gubernatorial
+Guelph
+Guenther
+guerdon
+guernsey
+guerrilla
+guess
+guesswork
+guest
+guffaw
+Guggenheim
+Guiana
+guidance
+guide
+guidebook
+guideline
+guidepost
+guiding
+guignol
+guild
+.H 1 "handicraftsmen handiwork handkerchief handle"
+guildhall
+guile
+Guilford
+guillemot
+guillotine
+guilt
+.IND guilty
+guinea
+guise
+guitar
+gules
+gulf
+.H 1 "handleable handlebar handline handmade handmaiden handout"
+gull
+Gullah
+gullet
+gullible
+gully
+gulp
+gum
+gumbo
+gumdrop
+gummy
+gumption
+gumshoe
+gun
+Gunderson
+.IND gunfight
+gunfire
+gunflint
+gunk
+gunky
+gunman
+.IND gunmen
+gunnery
+gunny
+gunplay
+gunpowder
+gunshot
+gunsling
+Gunther
+gurgle
+Gurkha
+guru
+Gus
+gush
+gusset
+gust
+Gustafson
+Gustav
+Gustave
+Gustavus
+gusto
+gusty
+gut
+.H 1 "handset"
+Gutenberg
+Guthrie
+gutsy
+guttural
+.IND guy
+Guyana
+guzzle
+Gwen
+Gwyn
+gym
+gymnasium
+gymnast
+gymnastic
+gymnosperm
+gyp
+gypsite
+gypsum
+gypsy
+gyrate
+gyrfalcon
+gyro
+.IND gyrocompass
+gyroscope
+h
+ha
+Haag
+Haas
+habeas
+haberdashery
+Haberman
+.IND Habib
+habit
+habitant
+habitat
+habitation
+habitual
+habituate
+hacienda
+hack
+hackberry
+Hackett
+hackle
+hackmatack
+.H 1 "handshake handsome handspike handstand handwaving handwrite handwritten"
+hackney
+hackneyed
+hacksaw
+had
+Hadamard
+Haddad
+haddock
+Hades
+Hadley
+hadn't
+Hadrian
+hadron
+hafnium
+.IND Hagen
+Hager
+haggard
+haggle
+Hagstrom
+Hague
+Hahn
+Haifa
+haiku
+hail
+hailstone
+hailstorm
+Haines
+hair
+.IND haircut
+hairdo
+hairpin
+hairy
+Haiti
+Haitian
+Hal
+halcyon
+hale
+Haley
+half
+halfback
+.IND halfhearted
+halfway
+halibut
+halide
+.H 1 "handy handyman handymen Haney Hanford hang hangable hangar"
+Halifax
+halite
+hall
+hallelujah
+Halley
+hallmark
+hallow
+Halloween
+hallucinate
+hallway
+halma
+halo
+halocarbon
+halogen
+Halpern
+Halsey
+Halstead
+halt
+halvah
+halve
+Halverson
+ham
+.IND Hamal
+Hamburg
+hamburger
+Hamilton
+hamlet
+Hamlin
+hammerhead
+hammock
+Hammond
+hamper
+Hampshire
+.IND Hampton
+hamster
+Han
+.H 1 "hangman hangmen hangout hangover hank Hankel Hanley"
+Hancock
+hand
+handbag
+handbook
+handclasp
+handcuff
+Handel
+handful
+handgun
+handhold
+handicap
+handicapped
+.IND handicapper
+handicapping
+handicraft
+handicraftsman
+handicraftsmen
+handiwork
+handkerchief
+handle
+handleable
+handlebar
+handline
+handmade
+handmaiden
+handout
+handset
+handshake
+handsome
+handspike
+handstand
+handwaving
+.H 1 "Hanlon Hanna Hannah Hannibal Hanoi Hanover Hanoverian Hans"
+handwrite
+handwritten
+handy
+handyman
+handymen
+Haney
+.IND Hanford
+hang
+hangable
+hangar
+hangman
+hangmen
+hangout
+hangover
+.IND hank
+Hankel
+Hanley
+Hanlon
+Hanna
+Hannah
+Hannibal
+Hanoi
+Hanover
+Hanoverian
+Hans
+Hansel
+Hansen
+hansom
+Hanson
+Hanukkah
+hap
+.H 1 "Hansel"
+haphazard
+.IND haploid
+haploidy
+haplology
+happen
+happenstance
+happy
+Hapsburg
+harangue
+harass
+Harbin
+harbinger
+Harcourt
+hard
+hardbake
+hardboard
+hardboiled
+hardcopy
+harden
+hardhat
+Hardin
+.H 1 "Hansen hansom Hanson Hanukkah hap haphazard haploid haploidy"
+Harding
+hardscrabble
+hardtack
+hardtop
+hardware
+hardwood
+.IND hardworking
+hardy
+hare
+harelip
+harem
+.IND hark
+Harlan
+Harlem
+Harley
+harm
+harmful
+Harmon
+harmonic
+harmonica
+harmonious
+.H 1 "haplology happen happenstance happy Hapsburg harangue harass Harbin"
+harmony
+harness
+Harold
+harp
+harpoon
+harpsichord
+Harpy
+Harriet
+Harriman
+Harrington
+Harris
+.IND Harrisburg
+Harrison
+harrow
+harry
+harsh
+harshen
+hart
+Hartford
+Hartley
+Hartman
+Harvard
+harvest
+harvestman
+Harvey
+hash
+hashish
+hasn't
+hasp
+hassle
+hast
+haste
+hasten
+Hastings
+hasty
+hat
+hatch
+.IND hatchet
+hatchway
+.IND hate
+hateful
+hater
+Hatfield
+hath
+Hathaway
+hatred
+Hatteras
+Hattie
+Hattiesburg
+Haugen
+haughty
+haul
+haulage
+haunch
+haunt
+Hausdorff
+Havana
+have
+haven
+haven't
+Havilland
+havoc
+haw
+.IND Hawaii
+Hawaiian
+hawk
+Hawkins
+Hawley
+hawthorn
+.H 2 "hammock Hammond hamper Hampshire Hampton hamster"
+Hawthorne
+hay
+Hayden
+Haydn
+Hayes
+hayfield
+Haynes
+Hays
+haystack
+Hayward
+hayward
+hazard
+hazardous
+haze
+hazel
+hazelnut
+hazy
+he
+head
+.IND headache
+.IND headboard
+headdress
+headland
+headlight
+headline
+headmaster
+headphone
+headquarter
+headquarters
+headroom
+headset
+headsman
+headsmen
+headstand
+headstone
+headstrong
+headwall
+headwater
+headway
+headwind
+heady
+heal
+Healey
+health
+healthful
+healthy
+.IND Healy
+heap
+hear
+heard
+hearken
+hearsay
+hearse
+Hearst
+heart
+heartbeat
+heartbreak
+hearten
+heartfelt
+hearth
+hearty
+heat
+heater
+heath
+heathen
+heathenish
+Heathkit
+heave
+.IND heaven
+heavenward
+heavy
+heavyweight
+.IND Hebe
+hebephrenic
+Hebraic
+Hebrew
+Hecate
+hecatomb
+heck
+heckle
+Heckman
+hectic
+hector
+Hecuba
+he'd
+hedge
+hedgehog
+hedonism
+hedonist
+heed
+heel
+heft
+hefty
+Hegelian
+hegemony
+Heidelberg
+heigh
+height
+.IND heighten
+Heine
+Heinrich
+Heinz
+heir
+heiress
+Heisenberg
+held
+Helen
+Helena
+Helene
+Helga
+helical
+helicopter
+heliocentric
+heliotrope
+helium
+helix
+he'll
+.IND hell
+hellbender
+hellebore
+Hellenic
+hellfire
+hellgrammite
+hellish
+.IND hello
+helm
+helmet
+.H 1 "Halverson ham Hamal Hamburg hamburger Hamilton hamlet Hamlin hammerhead"
+Helmholtz
+helmsman
+helmsmen
+Helmut
+help
+helpful
+helpmate
+Helsinki
+Helvetica
+hem
+hematite
+Hemingway
+hemisphere
+hemispheric
+hemlock
+hemoglobin
+hemolytic
+hemorrhage
+hemorrhoid
+hemosiderin
+hemp
+Hempstead
+hen
+.IND henbane
+hence
+henceforth
+henchman
+henchmen
+Henderson
+Hendrick
+Hendricks
+Hendrickson
+henequen
+Henley
+henpeck
+Henri
+Henrietta
+henry
+hepatica
+.IND hepatitis
+Hepburn
+heptane
+her
+Hera
+Heraclitus
+herald
+herb
+Herbert
+Herculean
+.IND Hercules
+herd
+herdsman
+here
+hereabout
+hereafter
+hereby
+hereditary
+heredity
+Hereford
+herein
+hereinabove
+hereinafter
+hereinbelow
+hereof
+heresy
+heretic
+hereto
+heretofore
+hereunder
+hereunto
+herewith
+heritable
+heritage
+Herkimer
+Herman
+.IND Hermann
+hermeneutic
+Hermes
+hermetic
+Hermite
+hermitian
+Hermosa
+Hernandez
+hero
+Herodotus
+heroes
+heroic
+heroin
+.IND heroine
+heroism
+heron
+herpes
+herpetology
+Herr
+herringbone
+Herschel
+herself
+Hershel
+Hershey
+hertz
+Hertzog
+.IND hesitant
+hesitate
+hesitater
+Hesperus
+Hess
+Hesse
+Hessian
+Hester
+heterocyclic
+heterodyne
+heterogamous
+heterogeneity
+heterogeneous
+heterosexual
+heterostructure
+heterozygous
+Hetman
+Hettie
+Hetty
+Heublein
+heuristic
+Heusen
+Heuser
+hew
+Hewett
+Hewitt
+.IND Hewlett
+hewn
+hex
+hexachloride
+hexadecimal
+hexafluoride
+hexagon
+hexagonal
+hexameter
+hexane
+.IND hey
+heyday
+hi
+Hiatt
+hiatus
+Hiawatha
+hibachi
+Hibbard
+hibernate
+Hibernia
+hick
+Hickey
+Hickman
+hickory
+Hicks
+hid
+.IND hidalgo
+hidden
+hide
+hideaway
+hideous
+hideout
+hierarchal
+hierarchic
+hierarchy
+hieratic
+hieroglyphic
+Hieronymus
+hifalutin
+Higgins
+high
+highball
+highboy
+highest
+highfalutin
+highhanded
+highland
+highlight
+highroad
+hightail
+highway
+highwayman
+.IND highwaymen
+hijack
+hijinks
+hike
+hilarious
+hilarity
+Hilbert
+.IND Hildebrand
+hill
+hillbilly
+Hillcrest
+Hillel
+hillman
+hillmen
+hillock
+hillside
+hilltop
+hilly
+hilt
+Hilton
+hilum
+him
+Himalaya
+himself
+hind
+hindmost
+.IND hindrance
+hindsight
+Hindu
+Hinduism
+Hines
+hinge
+Hinman
+hint
+hinterland
+hip
+hippo
+Hippocrates
+Hippocratic
+hippodrome
+hippopotamus
+hippy
+hipster
+Hiram
+hire
+hireling
+Hiroshi
+Hiroshima
+Hirsch
+hirsute
+his
+Hispanic
+.IND hiss
+histamine
+histidine
+histochemic
+.IND histochemistry
+histogram
+histology
+historian
+historic
+historiography
+history
+histrionic
+hit
+Hitachi
+hitch
+Hitchcock
+.H 1 "harbinger"
+hither
+hitherto
+Hitler
+hive
+ho
+hoagie
+Hoagland
+hoagy
+hoar
+hoard
+.IND hoarfrost
+hoarse
+hob
+Hobart
+Hobbes
+hobble
+Hobbs
+hobby
+hobbyhorse
+hobgoblin
+hobo
+Hoboken
+hoc
+hock
+hockey
+hocus
+hodge
+hodgepodge
+Hodges
+Hodgkin
+hoe
+Hoff
+Hoffman
+hog
+hogan
+hogging
+.IND hoi
+.IND Hokan
+Holbrook
+Holcomb
+hold
+holden
+holdout
+holdover
+holdup
+hole
+holeable
+holiday
+Holland
+Hollandaise
+holler
+Hollerith
+Hollingsworth
+Hollister
+hollow
+Holloway
+hollowware
+holly
+hollyhock
+Hollywood
+Holm
+Holman
+.IND Holmdel
+Holmes
+holmium
+holocaust
+Holocene
+hologram
+holography
+Holst
+Holstein
+holster
+holt
+Holyoke
+.IND holystone
+.INDP
+inject injudicious Injun injunct injunction injure injurious injury
+injustice ink inkling inlaid inland inlay inlet Inman inmate inn innards
+innate inner innermost innkeeper innocent innocuous innovate innuendo
+innumerable inoculate inoffensive inoperable inoperative inopportune
+inordinate inorganic input inputting inquest inquire inquiry inquisition
diff --git a/contrib/mm/examples/LT b/contrib/mm/examples/LT
new file mode 100644
index 000000000..cf0638973
--- /dev/null
+++ b/contrib/mm/examples/LT
@@ -0,0 +1,1058 @@
+.ND 1994-10-26
+.\" .WA "Nisse Nilsson" notitle
+.\" .WE
+.WA "Sven Olsson" title
+Return address
+Street
+City, State Zip Code
+Text
+.WE
+.IA "Inside address" title
+Addressee name XXXXXXX
+Title XXXXXXXXXXXXXXX
+Company xxxxxxxxxxxx
+Street xxxxxxxxxxxxxx
+City, State Zip Code
+Text xxxxxxxxxxxxxxxxxx
+.IE
+.LO CN
+.LO RN "referens"
+.LO AT Attention
+.LO SA "Hej hopp"
+.LO SJ "Subject line"
+.LT BL
+hepp
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+grebe
+Grecian
+Greece
+greed
+greedy
+Greek
+green
+Greenbelt
+Greenberg
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+.P
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+Grosset
+Grossman
+Grosvenor
+grotesque
+Groton
+ground
+groundsel
+groundskeep
+groundwork
+group
+groupoid
+grout
+grove
+grovel
+Grover
+grow
+growl
+grown
+grownup
+growth
+grub
+grubby
+grudge
+gruesome
+gruff
+grumble
+Grumman
+grunt
+gryphon
+g's
+GSA
+GU
+Guam
+guanidine
+guanine
+guano
+guarantee
+guaranteeing
+guarantor
+guaranty
+guard
+guardhouse
+Guardia
+guardian
+Guatemala
+gubernatorial
+Guelph
+Guenther
+guerdon
+guernsey
+guerrilla
+guess
+guesswork
+guest
+guffaw
+Guggenheim
+Guiana
+guidance
+guide
+guidebook
+guideline
+guidepost
+guiding
+guignol
+guild
+guildhall
+guile
+Guilford
+guillemot
+guillotine
+guilt
+guilty
+guinea
+guise
+guitar
+gules
+gulf
+gull
+Gullah
+gullet
+gullible
+gully
+gulp
+gum
+gumbo
+gumdrop
+gummy
+gumption
+gumshoe
+gun
+Gunderson
+gunfight
+gunfire
+gunflint
+gunk
+gunky
+gunman
+gunmen
+gunnery
+gunny
+gunplay
+gunpowder
+gunshot
+gunsling
+Gunther
+gurgle
+Gurkha
+guru
+Gus
+gush
+gusset
+gust
+Gustafson
+Gustav
+Gustave
+Gustavus
+gusto
+gusty
+gut
+Gutenberg
+Guthrie
+gutsy
+guttural
+guy
+.P
+Guyana
+guzzle
+Gwen
+Gwyn
+gym
+gymnasium
+gymnast
+gymnastic
+gymnosperm
+gyp
+gypsite
+gypsum
+gypsy
+gyrate
+gyrfalcon
+gyro
+gyrocompass
+gyroscope
+h
+ha
+Haag
+Haas
+habeas
+haberdashery
+Haberman
+Habib
+habit
+habitant
+habitat
+habitation
+habitual
+habituate
+hacienda
+hack
+hackberry
+Hackett
+hackle
+hackmatack
+hackney
+hackneyed
+hacksaw
+had
+Hadamard
+Haddad
+haddock
+Hades
+Hadley
+hadn't
+Hadrian
+hadron
+hafnium
+Hagen
+Hager
+haggard
+haggle
+Hagstrom
+Hague
+Hahn
+Haifa
+haiku
+hail
+hailstone
+hailstorm
+Haines
+hair
+haircut
+hairdo
+hairpin
+hairy
+Haiti
+Haitian
+Hal
+halcyon
+hale
+Haley
+half
+halfback
+halfhearted
+halfway
+halibut
+halide
+Halifax
+halite
+hall
+hallelujah
+Halley
+hallmark
+hallow
+Halloween
+hallucinate
+hallway
+halma
+halo
+halocarbon
+halogen
+Halpern
+Halsey
+Halstead
+halt
+halvah
+halve
+Halverson
+ham
+Hamal
+Hamburg
+hamburger
+Hamilton
+hamlet
+Hamlin
+hammerhead
+hammock
+Hammond
+hamper
+Hampshire
+Hampton
+hamster
+Han
+Hancock
+hand
+handbag
+handbook
+handclasp
+handcuff
+Handel
+handful
+handgun
+handhold
+handicap
+handicapped
+handicapper
+handicapping
+handicraft
+handicraftsman
+handicraftsmen
+handiwork
+handkerchief
+handle
+handleable
+handlebar
+handline
+handmade
+handmaiden
+handout
+handset
+handshake
+handsome
+handspike
+handstand
+handwaving
+handwrite
+handwritten
+handy
+handyman
+handymen
+Haney
+Hanford
+hang
+hangable
+hangar
+hangman
+hangmen
+hangout
+hangover
+hank
+Hankel
+Hanley
+Hanlon
+Hanna
+Hannah
+Hannibal
+Hanoi
+Hanover
+Hanoverian
+Hans
+Hansel
+Hansen
+hansom
+Hanson
+Hanukkah
+hap
+haphazard
+haploid
+haploidy
+haplology
+happen
+happenstance
+happy
+Hapsburg
+harangue
+harass
+Harbin
+harbinger
+Harcourt
+hard
+hardbake
+hardboard
+hardboiled
+hardcopy
+harden
+hardhat
+Hardin
+Harding
+hardscrabble
+hardtack
+hardtop
+hardware
+hardwood
+hardworking
+hardy
+hare
+harelip
+harem
+hark
+Harlan
+Harlem
+Harley
+harm
+harmful
+Harmon
+harmonic
+harmonica
+harmonious
+harmony
+harness
+Harold
+harp
+harpoon
+harpsichord
+Harpy
+Harriet
+Harriman
+Harrington
+Harris
+Harrisburg
+Harrison
+harrow
+harry
+harsh
+harshen
+hart
+Hartford
+Hartley
+Hartman
+Harvard
+.P
+harvest
+harvestman
+Harvey
+hash
+hashish
+hasn't
+hasp
+hassle
+hast
+haste
+hasten
+Hastings
+hasty
+hat
+hatch
+hatchet
+hatchway
+hate
+hateful
+hater
+Hatfield
+hath
+Hathaway
+hatred
+Hatteras
+Hattie
+Hattiesburg
+Haugen
+haughty
+haul
+haulage
+haunch
+haunt
+Hausdorff
+Havana
+have
+haven
+haven't
+Havilland
+havoc
+haw
+Hawaii
+Hawaiian
+hawk
+Hawkins
+Hawley
+hawthorn
+Hawthorne
+hay
+Hayden
+Haydn
+Hayes
+hayfield
+Haynes
+Hays
+haystack
+Hayward
+hayward
+hazard
+hazardous
+haze
+hazel
+hazelnut
+hazy
+he
+head
+headache
+headboard
+headdress
+headland
+headlight
+headline
+headmaster
+headphone
+headquarter
+headquarters
+headroom
+headset
+headsman
+headsmen
+headstand
+headstone
+headstrong
+headwall
+headwater
+headway
+headwind
+heady
+heal
+Healey
+health
+healthful
+healthy
+Healy
+heap
+hear
+heard
+hearken
+hearsay
+hearse
+Hearst
+heart
+heartbeat
+heartbreak
+hearten
+heartfelt
+hearth
+hearty
+heat
+heater
+heath
+heathen
+heathenish
+Heathkit
+heave
+heaven
+heavenward
+heavy
+heavyweight
+Hebe
+hebephrenic
+Hebraic
+Hebrew
+Hecate
+hecatomb
+heck
+heckle
+Heckman
+hectic
+hector
+Hecuba
+he'd
+hedge
+hedgehog
+hedonism
+hedonist
+heed
+heel
+heft
+hefty
+Hegelian
+hegemony
+Heidelberg
+heigh
+height
+heighten
+Heine
+Heinrich
+Heinz
+heir
+heiress
+Heisenberg
+held
+Helen
+Helena
+Helene
+Helga
+helical
+helicopter
+heliocentric
+heliotrope
+helium
+helix
+he'll
+hell
+hellbender
+hellebore
+Hellenic
+hellfire
+hellgrammite
+hellish
+hello
+helm
+helmet
+Helmholtz
+helmsman
+helmsmen
+Helmut
+help
+helpful
+helpmate
+Helsinki
+Helvetica
+hem
+hematite
+Hemingway
+hemisphere
+hemispheric
+hemlock
+hemoglobin
+hemolytic
+hemorrhage
+hemorrhoid
+hemosiderin
+hemp
+Hempstead
+hen
+henbane
+hence
+henceforth
+henchman
+henchmen
+Henderson
+Hendrick
+Hendricks
+Hendrickson
+henequen
+Henley
+henpeck
+Henri
+Henrietta
+henry
+hepatica
+hepatitis
+Hepburn
+heptane
+her
+Hera
+Heraclitus
+herald
+herb
+Herbert
+Herculean
+Hercules
+herd
+herdsman
+here
+hereabout
+hereafter
+hereby
+hereditary
+heredity
+Hereford
+herein
+hereinabove
+hereinafter
+hereinbelow
+hereof
+heresy
+heretic
+hereto
+heretofore
+hereunder
+hereunto
+.P
+herewith
+heritable
+heritage
+Herkimer
+Herman
+Hermann
+hermeneutic
+Hermes
+hermetic
+Hermite
+hermitian
+Hermosa
+Hernandez
+hero
+Herodotus
+heroes
+heroic
+heroin
+heroine
+heroism
+heron
+herpes
+herpetology
+Herr
+herringbone
+Herschel
+herself
+Hershel
+Hershey
+hertz
+Hertzog
+hesitant
+hesitate
+hesitater
+Hesperus
+Hess
+Hesse
+Hessian
+Hester
+heterocyclic
+heterodyne
+heterogamous
+heterogeneity
+heterogeneous
+heterosexual
+heterostructure
+heterozygous
+Hetman
+Hettie
+Hetty
+Heublein
+heuristic
+Heusen
+Heuser
+hew
+Hewett
+Hewitt
+Hewlett
+hewn
+hex
+hexachloride
+hexadecimal
+hexafluoride
+hexagon
+hexagonal
+hexameter
+hexane
+hey
+heyday
+hi
+Hiatt
+hiatus
+Hiawatha
+hibachi
+Hibbard
+hibernate
+Hibernia
+hick
+Hickey
+Hickman
+hickory
+Hicks
+hid
+hidalgo
+hidden
+hide
+hideaway
+hideous
+hideout
+hierarchal
+hierarchic
+hierarchy
+hieratic
+hieroglyphic
+Hieronymus
+hifalutin
+Higgins
+high
+highball
+highboy
+highest
+highfalutin
+highhanded
+highland
+highlight
+highroad
+hightail
+highway
+highwayman
+highwaymen
+hijack
+hijinks
+hike
+hilarious
+hilarity
+Hilbert
+Hildebrand
+hill
+hillbilly
+Hillcrest
+Hillel
+hillman
+hillmen
+hillock
+hillside
+hilltop
+hilly
+hilt
+Hilton
+hilum
+him
+Himalaya
+himself
+hind
+hindmost
+hindrance
+hindsight
+Hindu
+Hinduism
+Hines
+hinge
+Hinman
+hint
+hinterland
+hip
+hippo
+Hippocrates
+Hippocratic
+hippodrome
+hippopotamus
+hippy
+hipster
+Hiram
+hire
+hireling
+Hiroshi
+Hiroshima
+Hirsch
+hirsute
+his
+Hispanic
+hiss
+histamine
+histidine
+histochemic
+histochemistry
+histogram
+histology
+historian
+historic
+historiography
+history
+histrionic
+hit
+Hitachi
+hitch
+Hitchcock
+hither
+hitherto
+Hitler
+hive
+ho
+hoagie
+Hoagland
+hoagy
+hoar
+hoard
+hoarfrost
+hoarse
+hob
+Hobart
+Hobbes
+hobble
+Hobbs
+hobby
+.P
+hobbyhorse
+hobgoblin
+hobo
+Hoboken
+hoc
+hock
+hockey
+hocus
+hodge
+hodgepodge
+Hodges
+Hodgkin
+hoe
+Hoff
+Hoffman
+hog
+hogan
+hogging
+hoi
+Hokan
+Holbrook
+Holcomb
+hold
+holden
+holdout
+holdover
+holdup
+hole
+holeable
+holiday
+Holland
+Hollandaise
+holler
+Hollerith
+Hollingsworth
+Hollister
+hollow
+Holloway
+hollowware
+holly
+hollyhock
+Hollywood
+Holm
+Holman
+Holmdel
+Holmes
+holmium
+holocaust
+Holocene
+hologram
+holography
+Holst
+Holstein
+holster
+holt
+Holyoke
+holystone
+.FC
+.SG
+.NS 7
+text text text
+text text text
+.NS 12
+Holyoke
+holystone
+.NS
+holt
+.NE
diff --git a/contrib/mm/examples/LT.se b/contrib/mm/examples/LT.se
new file mode 100644
index 000000000..bfbd77f55
--- /dev/null
+++ b/contrib/mm/examples/LT.se
@@ -0,0 +1,1062 @@
+.\" groff -mmse LT.se
+.ND 1994-10-26
+.WA "Sven Olsson" title
+Return address
+Street
+City, State Zip Code
+Text
+.WE
+.IA "Inside address" title
+Addressee name XXXXXXX
+Title XXXXXXXXXXXXXXX
+Company xxxxxxxxxxxx
+Street xxxxxxxxxxxxxx
+City, State Zip Code
+Text xxxxxxxxxxxxxxxxxx
+.IE
+.LO DNAMN Dokumentnamn
+.LO MDAT 1994-01-01
+.LO BIL 2
+.LO KOMP Kompletteringsuppgift
+.LO DBET dokumentnummer
+.LO BET ärendebeteckning
+.LO MBET "Mottagarens b"
+.LO SIDOR 22
+.\" vänster eller högerställt brev
+.\" .LT SVH
+.LT SVV
+hepp
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+grebe
+Grecian
+Greece
+greed
+greedy
+Greek
+green
+Greenbelt
+Greenberg
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+.P
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+Grosset
+Grossman
+Grosvenor
+grotesque
+Groton
+ground
+groundsel
+groundskeep
+groundwork
+group
+groupoid
+grout
+grove
+grovel
+Grover
+grow
+growl
+grown
+grownup
+growth
+grub
+grubby
+grudge
+gruesome
+gruff
+grumble
+Grumman
+grunt
+gryphon
+g's
+GSA
+GU
+Guam
+guanidine
+guanine
+guano
+guarantee
+guaranteeing
+guarantor
+guaranty
+guard
+guardhouse
+Guardia
+guardian
+Guatemala
+gubernatorial
+Guelph
+Guenther
+guerdon
+guernsey
+guerrilla
+guess
+guesswork
+guest
+guffaw
+Guggenheim
+Guiana
+guidance
+guide
+guidebook
+guideline
+guidepost
+guiding
+guignol
+guild
+guildhall
+guile
+Guilford
+guillemot
+guillotine
+guilt
+guilty
+guinea
+guise
+guitar
+gules
+gulf
+gull
+Gullah
+gullet
+gullible
+gully
+gulp
+gum
+gumbo
+gumdrop
+gummy
+gumption
+gumshoe
+gun
+Gunderson
+gunfight
+gunfire
+gunflint
+gunk
+gunky
+gunman
+gunmen
+gunnery
+gunny
+gunplay
+gunpowder
+gunshot
+gunsling
+Gunther
+gurgle
+Gurkha
+guru
+Gus
+gush
+gusset
+gust
+Gustafson
+Gustav
+Gustave
+Gustavus
+gusto
+gusty
+gut
+Gutenberg
+Guthrie
+gutsy
+guttural
+guy
+.P
+Guyana
+guzzle
+Gwen
+Gwyn
+gym
+gymnasium
+gymnast
+gymnastic
+gymnosperm
+gyp
+gypsite
+gypsum
+gypsy
+gyrate
+gyrfalcon
+gyro
+gyrocompass
+gyroscope
+h
+ha
+Haag
+Haas
+habeas
+haberdashery
+Haberman
+Habib
+habit
+habitant
+habitat
+habitation
+habitual
+habituate
+hacienda
+hack
+hackberry
+Hackett
+hackle
+hackmatack
+hackney
+hackneyed
+hacksaw
+had
+Hadamard
+Haddad
+haddock
+Hades
+Hadley
+hadn't
+Hadrian
+hadron
+hafnium
+Hagen
+Hager
+haggard
+haggle
+Hagstrom
+Hague
+Hahn
+Haifa
+haiku
+hail
+hailstone
+hailstorm
+Haines
+hair
+haircut
+hairdo
+hairpin
+hairy
+Haiti
+Haitian
+Hal
+halcyon
+hale
+Haley
+half
+halfback
+halfhearted
+halfway
+halibut
+halide
+Halifax
+halite
+hall
+hallelujah
+Halley
+hallmark
+hallow
+Halloween
+hallucinate
+hallway
+halma
+halo
+halocarbon
+halogen
+Halpern
+Halsey
+Halstead
+halt
+halvah
+halve
+Halverson
+ham
+Hamal
+Hamburg
+hamburger
+Hamilton
+hamlet
+Hamlin
+hammerhead
+hammock
+Hammond
+hamper
+Hampshire
+Hampton
+hamster
+Han
+Hancock
+hand
+handbag
+handbook
+handclasp
+handcuff
+Handel
+handful
+handgun
+handhold
+handicap
+handicapped
+handicapper
+handicapping
+handicraft
+handicraftsman
+handicraftsmen
+handiwork
+handkerchief
+handle
+handleable
+handlebar
+handline
+handmade
+handmaiden
+handout
+handset
+handshake
+handsome
+handspike
+handstand
+handwaving
+handwrite
+handwritten
+handy
+handyman
+handymen
+Haney
+Hanford
+hang
+hangable
+hangar
+hangman
+hangmen
+hangout
+hangover
+hank
+Hankel
+Hanley
+Hanlon
+Hanna
+Hannah
+Hannibal
+Hanoi
+Hanover
+Hanoverian
+Hans
+Hansel
+Hansen
+hansom
+Hanson
+Hanukkah
+hap
+haphazard
+haploid
+haploidy
+haplology
+happen
+happenstance
+happy
+Hapsburg
+harangue
+harass
+Harbin
+harbinger
+Harcourt
+hard
+hardbake
+hardboard
+hardboiled
+hardcopy
+harden
+hardhat
+Hardin
+Harding
+hardscrabble
+hardtack
+hardtop
+hardware
+hardwood
+hardworking
+hardy
+hare
+harelip
+harem
+hark
+Harlan
+Harlem
+Harley
+harm
+harmful
+Harmon
+harmonic
+harmonica
+harmonious
+harmony
+harness
+Harold
+harp
+harpoon
+harpsichord
+Harpy
+Harriet
+Harriman
+Harrington
+Harris
+Harrisburg
+Harrison
+harrow
+harry
+harsh
+harshen
+hart
+Hartford
+Hartley
+Hartman
+Harvard
+.P
+harvest
+harvestman
+Harvey
+hash
+hashish
+hasn't
+hasp
+hassle
+hast
+haste
+hasten
+Hastings
+hasty
+hat
+hatch
+hatchet
+hatchway
+hate
+hateful
+hater
+Hatfield
+hath
+Hathaway
+hatred
+Hatteras
+Hattie
+Hattiesburg
+Haugen
+haughty
+haul
+haulage
+haunch
+haunt
+Hausdorff
+Havana
+have
+haven
+haven't
+Havilland
+havoc
+haw
+Hawaii
+Hawaiian
+hawk
+Hawkins
+Hawley
+hawthorn
+Hawthorne
+hay
+Hayden
+Haydn
+Hayes
+hayfield
+Haynes
+Hays
+haystack
+Hayward
+hayward
+hazard
+hazardous
+haze
+hazel
+hazelnut
+hazy
+he
+head
+headache
+headboard
+headdress
+headland
+headlight
+headline
+headmaster
+headphone
+headquarter
+headquarters
+headroom
+headset
+headsman
+headsmen
+headstand
+headstone
+headstrong
+headwall
+headwater
+headway
+headwind
+heady
+heal
+Healey
+health
+healthful
+healthy
+Healy
+heap
+hear
+heard
+hearken
+hearsay
+hearse
+Hearst
+heart
+heartbeat
+heartbreak
+hearten
+heartfelt
+hearth
+hearty
+heat
+heater
+heath
+heathen
+heathenish
+Heathkit
+heave
+heaven
+heavenward
+heavy
+heavyweight
+Hebe
+hebephrenic
+Hebraic
+Hebrew
+Hecate
+hecatomb
+heck
+heckle
+Heckman
+hectic
+hector
+Hecuba
+he'd
+hedge
+hedgehog
+hedonism
+hedonist
+heed
+heel
+heft
+hefty
+Hegelian
+hegemony
+Heidelberg
+heigh
+height
+heighten
+Heine
+Heinrich
+Heinz
+heir
+heiress
+Heisenberg
+held
+Helen
+Helena
+Helene
+Helga
+helical
+helicopter
+heliocentric
+heliotrope
+helium
+helix
+he'll
+hell
+hellbender
+hellebore
+Hellenic
+hellfire
+hellgrammite
+hellish
+hello
+helm
+helmet
+Helmholtz
+helmsman
+helmsmen
+Helmut
+help
+helpful
+helpmate
+Helsinki
+Helvetica
+hem
+hematite
+Hemingway
+hemisphere
+hemispheric
+hemlock
+hemoglobin
+hemolytic
+hemorrhage
+hemorrhoid
+hemosiderin
+hemp
+Hempstead
+hen
+henbane
+hence
+henceforth
+henchman
+henchmen
+Henderson
+Hendrick
+Hendricks
+Hendrickson
+henequen
+Henley
+henpeck
+Henri
+Henrietta
+henry
+hepatica
+hepatitis
+Hepburn
+heptane
+her
+Hera
+Heraclitus
+herald
+herb
+Herbert
+Herculean
+Hercules
+herd
+herdsman
+here
+hereabout
+hereafter
+hereby
+hereditary
+heredity
+Hereford
+herein
+hereinabove
+hereinafter
+hereinbelow
+hereof
+heresy
+heretic
+hereto
+heretofore
+hereunder
+hereunto
+.P
+herewith
+heritable
+heritage
+Herkimer
+Herman
+Hermann
+hermeneutic
+Hermes
+hermetic
+Hermite
+hermitian
+Hermosa
+Hernandez
+hero
+Herodotus
+heroes
+heroic
+heroin
+heroine
+heroism
+heron
+herpes
+herpetology
+Herr
+herringbone
+Herschel
+herself
+Hershel
+Hershey
+hertz
+Hertzog
+hesitant
+hesitate
+hesitater
+Hesperus
+Hess
+Hesse
+Hessian
+Hester
+heterocyclic
+heterodyne
+heterogamous
+heterogeneity
+heterogeneous
+heterosexual
+heterostructure
+heterozygous
+Hetman
+Hettie
+Hetty
+Heublein
+heuristic
+Heusen
+Heuser
+hew
+Hewett
+Hewitt
+Hewlett
+hewn
+hex
+hexachloride
+hexadecimal
+hexafluoride
+hexagon
+hexagonal
+hexameter
+hexane
+hey
+heyday
+hi
+Hiatt
+hiatus
+Hiawatha
+hibachi
+Hibbard
+hibernate
+Hibernia
+hick
+Hickey
+Hickman
+hickory
+Hicks
+hid
+hidalgo
+hidden
+hide
+hideaway
+hideous
+hideout
+hierarchal
+hierarchic
+hierarchy
+hieratic
+hieroglyphic
+Hieronymus
+hifalutin
+Higgins
+high
+highball
+highboy
+highest
+highfalutin
+highhanded
+highland
+highlight
+highroad
+hightail
+highway
+highwayman
+highwaymen
+hijack
+hijinks
+hike
+hilarious
+hilarity
+Hilbert
+Hildebrand
+hill
+hillbilly
+Hillcrest
+Hillel
+hillman
+hillmen
+hillock
+hillside
+hilltop
+hilly
+hilt
+Hilton
+hilum
+him
+Himalaya
+himself
+hind
+hindmost
+hindrance
+hindsight
+Hindu
+Hinduism
+Hines
+hinge
+Hinman
+hint
+hinterland
+hip
+hippo
+Hippocrates
+Hippocratic
+hippodrome
+hippopotamus
+hippy
+hipster
+Hiram
+hire
+hireling
+Hiroshi
+Hiroshima
+Hirsch
+hirsute
+his
+Hispanic
+hiss
+histamine
+histidine
+histochemic
+histochemistry
+histogram
+histology
+historian
+historic
+historiography
+history
+histrionic
+hit
+Hitachi
+hitch
+Hitchcock
+hither
+hitherto
+Hitler
+hive
+ho
+hoagie
+Hoagland
+hoagy
+hoar
+hoard
+hoarfrost
+hoarse
+hob
+Hobart
+Hobbes
+hobble
+Hobbs
+hobby
+.P
+hobbyhorse
+hobgoblin
+hobo
+Hoboken
+hoc
+hock
+hockey
+hocus
+hodge
+hodgepodge
+Hodges
+Hodgkin
+hoe
+Hoff
+Hoffman
+hog
+hogan
+hogging
+hoi
+Hokan
+Holbrook
+Holcomb
+hold
+holden
+holdout
+holdover
+holdup
+hole
+holeable
+holiday
+Holland
+Hollandaise
+holler
+Hollerith
+Hollingsworth
+Hollister
+hollow
+Holloway
+hollowware
+holly
+hollyhock
+Hollywood
+Holm
+Holman
+Holmdel
+Holmes
+holmium
+holocaust
+Holocene
+hologram
+holography
+Holst
+Holstein
+holster
+holt
+Holyoke
+holystone
+.FC
+.SG
+.NS 7
+text text text
+text text text
+.NS 12
+Holyoke
+holystone
+.NS
+holt
+.NE
diff --git a/contrib/mm/examples/ML b/contrib/mm/examples/ML
new file mode 100644
index 000000000..bbfca3def
--- /dev/null
+++ b/contrib/mm/examples/ML
@@ -0,0 +1,169 @@
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+grandnephew
+grandniece
+grandpa
+.ML MARK
+.LI "LOCALMARK"
+granola
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+grapevine
+.LI
+.DS
+Where shall we put this.
+Where shall we put this.
+Where shall we put this.
+.DE
+.LI
+granola
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+grapevine
+.LI
+.DS
+Where shall we put this.
+.DE
+.LI
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+.LI
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+.LI
+gratuity
+grave
+gravel
+.LE
+.SP 3
+.ML $ 1c
+.LI
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+.LI
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+.LI
+greater
+grebe
+Grecian
+Greece
+greed
+greedy
+Greek
+green
+.LI
+Greenbelt
+Greenberg
+Greenblatt
+Greenbriar
+Greene
+greenery
+.LE
+.SP 3
+.ML X 1c 1
+.LI
+Greenfield
+greengrocer
+grandson
+grandstand
+granite
+granitic
+granny
+graph
+.LI
+grapheme
+greenhouse
+greenish
+Greenland
+Greensboro
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+.LI
+grandma
+grandmother
+grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+.LI
+granola
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+.LI
+grapevine
+graph
+grapheme
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+.LE
diff --git a/contrib/mm/examples/MOVE b/contrib/mm/examples/MOVE
new file mode 100644
index 000000000..0f0399cc7
--- /dev/null
+++ b/contrib/mm/examples/MOVE
@@ -0,0 +1,175 @@
+.PH "'hej'hopp'i skogen'"
+.PF "'livet'är'härligt'"
+.OH "'ojämn'%'sida'"
+.EH "'ojämn'%'sida'"
+.OF "'ojämn'%'sida'"
+.EF "'ojämn'%'sida'"
+10th
+1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+a
+AAA
+AAAS
+Aarhus
+Aaron
+AAU
+ABA
+Ababa
+aback
+abacus
+abalone
+abandon
+abase
+abash
+abate
+abater
+abbas
+abbe
+abbey
+abbot
+Abbott
+abbreviate
+abc
+abdicate
+abdomen
+abdominal
+abet
+abetted
+abetting
+abeyance
+abeyant
+abhorred
+abhorrent
+abide
+Abidjan
+Abigail
+abject
+ablate
+ablaze
+able
+ablution
+Abner
+.MOVE 50 20
+abnormal
+Abo
+aboard
+abode
+abolish
+abolition
+abominable
+abominate
+aboriginal
+AAA
+ABORIGINE
+ABORNING
+ABORT
+ABOUND
+ABOUT
+ABOVE
+ABOVEBOARD
+ABOVEGROUND
+abovementioned
+abrade
+Abraham
+Abram
+Abramson
+abrasion
+abrasive
+abreact
+abreast
+BBB
+ABRIDGE
+ABRIDGMENT
+ABROAD
+abrogate
+abrupt
+abscess
+abscissa
+abscissae
+absence
+absent
+absentee
+absenteeism
+absentia
+absentminded
+.MOVE 30 10
+absinthe
+absolute
+absolution
+absolve
+absorb
+absorbent
+absorption
+absorptive
+abstain
+abstention
+abstinent
+abstract
+abstracter
+abstractor
+CCC
+ABSTRUSE
+ABSURD
+ABUILDING
+ABUNDANT
+ABUSABLE
+ABUSE
+ABUSIVE
+ABUT
+ABUTTED
+ABUTTING
+ABYSMAL
+ABYSS
+ABYSSINIA
+AC
+ACADEME
+ACADEMIA
+ACADEMIC
+ACADEMICIAN
+ACADEMY
+ACADIA
+ACANTHUS
+ACAPULCO
+ACCEDE
+ACCELERATE
+ACCELEROMETER
+ACCENT
+ACCENTUAL
+ACCENTUATE
+ACCEPT
+ACCEPTANT
+acceptor
+access
+.MOVE 62 0 20
+accessible
+accession
+accessory
+accident
+accidental
+accipiter
+acclaim
+acclamation
+acclimate
+accolade
+accommodate
+accompaniment
+accompanist
+accompany
+accomplice
+accomplish
+accord
+accordant
+DDD
+ACCORDION
+ACCOST
+ACCOUNT
+ACCOUNTANT
+ACCRA
+.PGFORM
diff --git a/contrib/mm/examples/MUL b/contrib/mm/examples/MUL
new file mode 100644
index 000000000..ae91fae0d
--- /dev/null
+++ b/contrib/mm/examples/MUL
@@ -0,0 +1,535 @@
+inject
+injudicious
+Injun
+injunct
+injunction
+injure
+injurious
+injury
+injustice
+ink
+inkling
+inlaid
+inland
+inlay
+inlet
+Inman
+inmate
+inn
+innards
+innate
+inner
+innermost
+innkeeper
+innocent
+innocuous
+innovate
+innuendo
+innumerable
+inoculate
+inoffensive
+inoperable
+inoperative
+inopportune
+inordinate
+inorganic
+input
+inputting
+inquest
+inquire
+inquiry
+inquisition
+inquisitive
+inquisitor
+inroad
+insane
+insatiable
+inscribe
+inscription
+inscrutable
+insect
+insecticide
+insecure
+inseminate
+insensible
+insensitive
+inseparable
+insert
+inset
+inshore
+inside
+insidious
+insight
+insightful
+insignia
+insignificant
+insincere
+insinuate
+insipid
+insist
+insistent
+insofar
+insolent
+insoluble
+insolvable
+insolvent
+insomnia
+insomniac
+insouciant
+inspect
+inspector
+inspiration
+inspire
+instable
+install
+installation
+instalment
+instance
+instant
+instantaneous
+instantiate
+instead
+instep
+instigate
+instill
+instillation
+instinct
+instinctual
+institute
+institution
+instruct
+instructor
+instrument
+instrumentation
+insubordinate
+insubstantial
+insufferable
+insufficient
+insular
+insulate
+insulin
+insult
+insuperable
+insupportable
+insuppressible
+insurance
+insure
+insurgent
+insurmountable
+insurrect
+insurrection
+intact
+intake
+intangible
+integer
+integrable
+.MULB 4c 1 5c 1 4c 1 3c
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+grim
+grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+.MULN
+h
+ha
+Haag
+Haas
+habeas
+haberdashery
+Haberman
+Habib
+habit
+habitant
+habitat
+habitation
+habitual
+habituate
+hacienda
+hack
+hackberry
+Hackett
+hackle
+hackmatack
+hackney
+hackneyed
+hacksaw
+had
+Hadamard
+Haddad
+haddock
+Hades
+Hadley
+hadn't
+Hadrian
+hadron
+hafnium
+Hagen
+Hager
+haggard
+haggle
+Hagstrom
+Hague
+Hahn
+Haifa
+haiku
+hail
+hailstone
+hailstorm
+Haines
+hair
+haircut
+hairdo
+hairpin
+hairy
+Haiti
+Haitian
+Hal
+halcyon
+hale
+Haley
+half
+halfback
+halfhearted
+halfway
+halibut
+halide
+Halifax
+halite
+hall
+hallelujah
+Halley
+hallmark
+hallow
+Halloween
+hallucinate
+hallway
+halma
+halo
+halocarbon
+halogen
+Halpern
+Halsey
+Halstead
+halt
+halvah
+halve
+Halverson
+ham
+Hamal
+Hamburg
+hamburger
+Hamilton
+hamlet
+Hamlin
+hammerhead
+hammock
+Hammond
+hamper
+Hampshire
+Hampton
+hamster
+Han
+Hancock
+hand
+handbag
+handbook
+handclasp
+handcuff
+.MULN
+coliform
+coliseum
+collaborate
+collage
+collagen
+collapse
+collapsible
+collar
+collarbone
+collard
+collate
+collateral
+colleague
+collect
+collectible
+collector
+college
+collegial
+collegian
+collegiate
+collet
+collide
+collie
+Collier
+collimate
+collinear
+Collins
+collision
+collocation
+colloidal
+Colloq
+colloquia
+colloquial
+colloquium
+colloquy
+command
+commandant
+commandeer
+commando
+commemorate
+commend
+commendation
+commendatory
+commensurable
+commensurate
+comment
+commentary
+commentator
+commerce
+commercial
+commingle
+commiserate
+commissariat
+commissary
+commission
+commit
+committable
+committal
+committed
+committee
+committeeman
+committeemen
+committeewoman
+committeewomen
+committing
+commodious
+commodity
+commodore
+common
+commonality
+.MULN
+locoweed
+lunch
+luncheon
+lunchroom
+lunchtime
+Lund
+Lundberg
+Lundquist
+lung
+lunge
+lupine
+Lura
+lurch
+lure
+lurid
+lurk
+Lusaka
+luscious
+lush
+lust
+lustful
+lustrous
+lusty
+lutanist
+lute
+lutetium
+Luther
+Lutheran
+Lutz
+lymphocyte
+lymphoma
+lynch
+Lynchburg
+Lynn
+lynx
+Lyon
+Lyons
+Lyra
+lyric
+lyricism
+Lysenko
+lysergic
+lysine
+.MULE
+m
+ma
+Mabel
+Mac
+macabre
+macaque
+MacArthur
+Macassar
+Macbeth
+MacDonald
+MacDougall
+mace
+Macedon
+Macedonia
+MacGregor
+Mach
+Machiavelli
+machination
+machine
+machinelike
+machinery
+machismo
+macho
+macintosh
+mack
+MacKenzie
+mackerel
+Mackey
+Mackinac
+Mackinaw
+mackintosh
+MacMillan
+Macon
+macrame
+macro
+macromolecular
+macromolecule
+macrophage
+macroprocessor
+macroscopic
+macrostructure
+mad
+Madagascar
+madam
+Madame
+madcap
+madden
+Maddox
+made
+Madeira
+Madeleine
+Madeline
+madhouse
+Madison
+madman
+madmen
+Madonna
+Madras
+Madrid
+madrigal
+Madsen
+madstone
+Mae
+Maelstrom
+maestro
+Mafia
+magazine
+Magdalene
+magenta
+Maggie
+maggot
+maggoty
+magi
+magic
+magician
+magisterial
+magistrate
+magma
+magna
+magnanimity
+magnanimous
+magnate
+magnesia
+magnesite
+magnesium
+magnet
+magnetic
+magnetite
+magneto
+magnetron
+magnificent
+magnify
+magnitude
+magnolia
+magnum
+Magnuson
+Magog
+magpie
+Magruder
+Mahayana
+Mahayanist
+mahogany
+Mahoney
+maid
+maiden
+maidenhair
+maidservant
+Maier
+mail
+mailbox
+mailman
+mailmen
+maim
+main
+Maine
+mainland
+mainline
+mainstay
+mainstream
+maintain
+maintenance
+maitre
+majestic
+majesty
+major
+make
+makeshift
+makeup
+Malabar
+maladapt
+maladaptive
+maladjust
+maladroit
+malady
+Malagasy
+malaise
+malaprop
+malaria
+malarial
+Malawi
+Malay
+Malaysia
diff --git a/contrib/mm/examples/NCOL b/contrib/mm/examples/NCOL
new file mode 100644
index 000000000..82c6f8d50
--- /dev/null
+++ b/contrib/mm/examples/NCOL
@@ -0,0 +1,196 @@
+granary
+grand
+grandchild
+grandchildren
+granddaughter
+grandeur
+grandfather
+grandiloquent
+grandiose
+grandma
+grandmother
+grandnephew
+grandniece
+grandpa
+grandparent
+grandson
+grandstand
+granite
+granitic
+granny
+granola
+grant
+grantee
+grantor
+granular
+granulate
+granule
+Granville
+grape
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+graphite
+grapple
+grasp
+grass
+grassland
+grassy
+.MC 3c
+grata
+grate
+grateful
+grater
+gratify
+gratis
+gratitude
+gratuitous
+gratuity
+grave
+gravel
+graven
+Graves
+gravestone
+graveyard
+gravid
+gravitate
+gravy
+gray
+graybeard
+grayish
+Grayson
+graywacke
+graze
+grease
+greasy
+great
+greatcoat
+greater
+grebe
+Grecian
+Greece
+greed
+greedy
+.NCOL
+Greek
+green
+Greenbelt
+Greenberg
+Greenblatt
+Greenbriar
+Greene
+greenery
+Greenfield
+greengrocer
+greenhouse
+greenish
+Greenland
+Greensboro
+greensward
+greenware
+Greenwich
+greenwood
+Greer
+greet
+Greg
+gregarious
+Gregg
+Gregory
+gremlin
+grenade
+Grendel
+Grenoble
+Gresham
+Greta
+Gretchen
+grew
+grey
+greyhound
+greylag
+grid
+griddle
+gridiron
+grief
+grievance
+grieve
+grievous
+griffin
+Griffith
+grill
+grille
+grilled
+grillwork
+.NCOL
+grim
+grimace
+Grimaldi
+grime
+Grimes
+Grimm
+grin
+grind
+grindstone
+grip
+gripe
+grippe
+grisly
+grist
+gristmill
+Griswold
+grit
+gritty
+grizzle
+grizzly
+groan
+groat
+grocer
+grocery
+groggy
+groin
+grommet
+groom
+groove
+grope
+grosbeak
+gross
+Grosset
+Grossman
+Grosvenor
+grotesque
+Groton
+ground
+groundsel
+groundskeep
+groundwork
+group
+groupoid
+grout
+grove
+grovel
+Grover
+grow
+growl
+grown
+grownup
+growth
+grub
+grubby
+grudge
+gruesome
+gruff
+grumble
+Grumman
+grunt
+gryphon
+g's
+GSA
+GU
+Guam
+guanidine
+guanine
+guano
+guarantee
+guaranteeing
+guarantor
diff --git a/contrib/mm/examples/ND b/contrib/mm/examples/ND
new file mode 100644
index 000000000..4b3694a37
--- /dev/null
+++ b/contrib/mm/examples/ND
@@ -0,0 +1,17 @@
+.nf
+----------------------------------------------------------------------
+.ce
+Testing
+----------------------------------------------------------------------
+Date = \*[DT]
+.ISODATE
+Date = \*[DT]
+.ISODATE 0
+
+.ND "13 August 1992"
+Date = \*[DT]
+
+.ISODATE
+.ND "14 August 1992"
+Date = \*[DT]
+----------------------------------------------------------------------
diff --git a/contrib/mm/examples/README b/contrib/mm/examples/README
new file mode 100644
index 000000000..cb6980f85
--- /dev/null
+++ b/contrib/mm/examples/README
@@ -0,0 +1,32 @@
+
+This directory contains examples of my enhancements to MM.
+
+APP The appendix macro
+B1B2 Box macro with text
+COVER My general cover macro, this example is using
+ ms.cov.
+IND A general indexing method, see manual for INITI
+LT The letter macro
+LT.se A swedish example with the extra
+ swedish macros for getting a letter conforming
+ to swedish standard letter, both left and right adjusted.
+ML Marked list, an extended list type
+MOVE The MOVE macro, how to begin to print on an exact position.
+MUL Enhanced multicolumn mode.
+NCOL Start on next column. (Not for MUL*)
+ND New date, with iso date example
+References How to use references
+SETR General reference system, see manual for INITR
+
+
+Examples that I should have:
+
+PIC How to include postscript pictures, see manual for PIC
+VERBON Begin verbatim output
+
+
+And remember, check the manual for all string and number registers,
+I've made shure that mgm will be useful in several languages
+and all english output can be redefined.
+Check the manual for groff_mse (swedish format) and the
+macro file, tmac.mse.
diff --git a/contrib/mm/examples/References b/contrib/mm/examples/References
new file mode 100644
index 000000000..72f648220
--- /dev/null
+++ b/contrib/mm/examples/References
@@ -0,0 +1,975 @@
+.PH "'this'is'a header'"
+.PF "'this'is'a footer'"
+.OH "'odd'%'page'"
+.EH "'even'%'page'"
+.OF "'odd'%'page'"
+.EF "'even'%'page'"
+10th
+1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+a
+AAA
+.B
+AAAS
+Aarhus
+Aaron
+.R
+AAU
+ABA
+Ababa
+aback
+abacus
+abalone
+abandon
+abase
+.H 1 "hej hopp"
+abash
+abate
+abater
+abbas
+abbe
+abbey
+abbot
+Abbott
+abbreviate
+abc
+abdicate
+abdomen
+abet
+abetted
+abetting
+abeyance
+abeyant
+.H 2 "hej hopp"
+abhorred
+abhorrent
+abide
+Abidjan
+Abigail
+abject
+ablate
+ablaze
+able
+ablution
+Abner
+abnormal
+.H 2 "hej hopp"
+Abo
+aboard
+abode
+abolish
+.HU "hej hopp"
+.B1
+abolition
+abominable
+abominate\*(Rf
+aboriginal
+.RS
+AAA
+ABORIGINE
+ABORNING
+ABORT
+ABOUND
+ABOUT
+ABOVE
+ABOVEBOARD
+ABOVEGROUND
+.RF
+abovementioned
+abrade
+Abraham\*(Rf
+Abram\*(Rf
+Abramson\*(Rf
+abrasion\*(Rf
+abrasive\*(Rf
+abreact\*(Rf
+.B2
+abreast\*(Rf
+.RS
+BBB
+ABRIDGE
+ABRIDGMENT
+ABROAD
+.RF
+abrogate
+abrupt
+abscess\*(Rf
+abscissa\*(Rf
+abscissae\*(Rf
+absence\*(Rf
+absent
+absentee
+absenteeism
+absentia
+.H 3 "hej hopp"
+absentminded
+absinthe
+absolute
+absolution
+absolve
+absorb
+absorbent
+absorption
+absorptive
+abstain
+abstention
+abstinent\*(Rf
+abstract
+abstracter
+abstractor
+.RS nisse
+CCC
+ABSTRUSE
+ABSURD
+ABUILDING
+ABUNDANT
+ABUSABLE
+ABUSE
+ABUSIVE
+ABUT
+ABUTTED
+ABUTTING
+ABYSMAL
+ABYSS
+ABYSSINIA
+AC
+ACADEME
+ACADEMIA
+ACADEMIC
+ACADEMICIAN
+ACADEMY
+ACADIA
+ACANTHUS
+ACAPULCO
+ACCEDE
+ACCELERATE
+ACCELEROMETER
+ACCENT
+ACCENTUAL
+ACCENTUATE
+ACCEPT
+ACCEPTANT
+.RF
+acceptor
+access
+accessible
+accession
+Ref \*[nisse]
+accessory
+.H 4 "hej hopp"
+accident
+accidental
+accipiter
+acclaim
+acclamation
+acclimate
+accolade
+accommodate
+accompaniment
+accompanist
+accompany
+accomplice
+accomplish\*(Rf
+accord
+accordant
+.RS
+DDD
+ACCORDION
+ACCOST
+ACCOUNT
+ACCOUNTANT
+ACCRA
+ACCREDIT
+ACCREDITATE
+ACCREDITATION
+ACCRETION
+ACCRUAL
+ACCRUE
+.RF
+acculturate
+accumulate
+accuracy
+accurate
+accusation
+accusative
+accusatory
+accuse
+accustom
+ace
+acerbic
+acerbity
+acetate
+acetic
+acetone
+acetylene
+ache
+achieve
+Achilles
+aching
+achromatic
+acid
+acidic
+acidulous
+.H 5 "hej hopp"
+Ackerman
+Ackley
+acknowledge
+acknowledgeable
+ACM
+acme
+acolyte
+acorn
+acoustic
+acquaint
+acquaintance
+acquiesce
+acquiescent
+acquire
+acquisition
+acquisitive
+acquit
+acquittal
+acquitting
+acre
+acreage
+acrid
+acrimonious
+acrimony
+acrobacy
+acrobat
+acrobatic
+acronym
+acropolis
+across
+acrylate
+acrylic
+ACS
+act
+Actaeon
+actinic
+actinide
+actinium
+actinolite
+actinometer
+activate
+activation
+activism
+Acton
+actor
+actress
+Acts
+actual
+actuarial
+actuate
+.H 6 "hej hopp"
+acuity
+acumen
+acute
+acyclic
+ad
+Ada
+adage
+adagio
+Adair
+Adam
+adamant
+Adams
+Adamson
+adapt
+adaptation
+adaptive
+add
+added
+addend
+addenda
+addendum
+addict
+Addis
+Addison
+addition
+additional
+additive
+addle
+address
+addressee
+Addressograph
+adduce
+Adelaide
+Adele
+Adelia
+Aden
+adenine
+adenoma
+adenosine
+adept
+adequacy
+adequate
+adhere
+adherent
+adhesion
+adhesive
+adiabatic
+adieu
+adipic
+Adirondack
+.H 7 "hej hopp"
+adjacent
+adject
+adjectival
+adjective
+adjoin
+adjoint
+adjourn
+adjudge
+adjudicate
+adjunct
+adjust
+adjutant
+Adkins
+Adler
+administer
+administrable
+administrate
+administratrix
+admiral
+admiralty
+admiration
+admire
+admissible
+admission
+admit
+admittance
+admitted
+admitting
+admix
+admixture
+admonish
+admonition
+ado
+adobe
+adolescent
+Adolph
+Adolphus
+Adonis
+adopt
+adoption
+adoptive
+adore
+adorn
+adposition
+adrenal
+adrenaline
+Adrian
+Adriatic
+Adrienne
+adrift
+adroit
+adsorb
+adsorbate
+adsorption
+adsorptive
+adulate
+adult
+adulterate
+adulterous
+adultery
+adulthood
+advance
+advantage
+advantageous
+advent
+adventitious
+adventure
+adventurous
+adverb
+adverbial
+adversary
+adverse
+advert
+advertise
+advice
+advisable
+advise
+advisee
+advisor
+advisory
+advocacy
+advocate
+Aegean
+aegis
+Aeneas
+Aeneid
+aeolian
+Aeolus
+aerate
+aerial
+Aerobacter
+aerobic
+aerodynamic
+aerogene
+aeronautic
+aerosol
+aerospace
+Aeschylus
+aesthete
+aesthetic
+10th
+1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+a
+AAA
+AAAS
+Aarhus
+Aaron
+AAU
+ABA
+Ababa
+aback
+abacus
+abalone
+abandon
+abase
+.H 1 "hej hopp"
+abash
+abate
+abater
+abbas
+abbe
+abbey
+abbot
+Abbott
+abbreviate
+abc
+abdicate
+abdomen
+abdominal
+abduct
+Abe
+abed
+Abel
+Abelian
+Abelson
+Aberdeen
+Abernathy
+aberrant
+aberrate
+abet
+abetted
+abetting
+abeyance
+abeyant
+.H 2 "hej hopp"
+abhorred
+abhorrent
+abide
+Abidjan
+Abigail
+abject
+ablate
+ablaze
+able
+ablution
+Abner
+abnormal
+Abo
+aboard
+abode
+abolish
+abolition
+abominable
+abominate
+aboriginal
+aborigine
+aborning
+abort
+abound
+about
+above
+aboveboard
+aboveground
+abovementioned
+abrade
+Abraham
+Abram
+Abramson
+abrasion
+abrasive
+abreact
+abreast
+abridge
+abridgment
+abroad
+abrogate
+abrupt
+abscess
+abscissa
+abscissae
+absence
+absent
+absentee
+absenteeism
+absentia
+.H 3 "hej hopp"
+absentminded
+absinthe
+absolute
+absolution
+absolve
+absorb
+absorbent
+absorption
+absorptive
+abstain
+abstention
+abstinent
+abstract
+abstracter
+abstractor
+abstruse
+absurd
+abuilding
+abundant
+abusable
+abuse
+abusive
+abut
+abutted
+abutting
+abysmal
+abyss
+Abyssinia
+AC
+academe
+academia
+academic
+academician
+academy
+Acadia
+acanthus
+Acapulco
+accede
+accelerate
+accelerometer
+accent
+accentual
+accentuate
+accept
+acceptant
+acceptor
+access
+accessible
+accession
+accessory
+.H 4 "hej hopp"
+accident
+accidental
+accipiter
+acclaim
+acclamation
+acclimate
+accolade
+accommodate
+accompaniment
+accompanist
+accompany
+accomplice
+accomplish
+accord
+accordant
+accordion
+accost
+account
+accountant
+Accra
+accredit
+accreditate
+accreditation
+accretion
+accrual
+accrue
+acculturate
+accumulate
+accuracy
+accurate
+accusation
+accusative
+accusatory
+accuse
+accustom
+ace
+acerbic
+acerbity
+acetate
+acetic
+acetone
+acetylene
+ache
+achieve
+Achilles
+aching
+achromatic
+acid
+acidic
+acidulous
+.H 5 "hej hopp"
+Ackerman
+Ackley
+acknowledge
+acknowledgeable
+ACM
+acme
+acolyte
+acorn
+acoustic
+acquaint
+acquaintance
+acquiesce
+acquiescent
+acquire
+acquisition
+acquisitive
+acquit
+acquittal
+acquitting
+acre
+acreage
+acrid
+acrimonious
+acrimony
+acrobacy
+acrobat
+acrobatic
+acronym
+acropolis
+across
+acrylate
+acrylic
+ACS
+act
+Actaeon
+actinic
+actinide
+actinium
+actinolite
+actinometer
+activate
+activation
+activism
+Acton
+actor
+actress
+Acts
+actual
+actuarial
+actuate
+.H 6 "hej hopp"
+acuity
+acumen
+acute
+acyclic
+ad
+Ada
+adage
+adagio
+Adair
+Adam
+adamant
+Adams
+Adamson
+adapt
+adaptation
+adaptive
+add
+added
+addend
+addenda
+addendum
+addict
+Addis
+Addison
+addition
+additional
+additive
+addle
+address
+addressee
+Addressograph
+adduce
+Adelaide
+Adele
+Adelia
+Aden
+adenine
+adenoma
+adenosine
+adept
+adequacy
+adequate
+adhere
+adherent
+adhesion
+adhesive
+adiabatic
+adieu
+adipic
+Adirondack
+.H 7 "hej hopp"
+adjacent
+adject
+adjectival
+adjective
+adjoin
+adjoint
+adjourn
+adjudge
+adjudicate
+adjunct
+adjust
+adjutant
+Adkins
+Adler
+administer
+administrable
+administrate
+administratrix
+admiral
+admiralty
+admiration
+admire
+admissible
+admission
+admit
+admittance
+admitted
+admitting
+admix
+admixture
+admonish
+admonition
+ado
+adobe
+adolescent
+Adolph
+Adolphus
+Adonis
+adopt
+adoption
+adoptive
+adore
+adorn
+adposition
+adrenal
+adrenaline
+Adrian
+Adriatic
+Adrienne
+adrift
+adroit
+adsorb
+adsorbate
+adsorption
+adsorptive
+adulate
+adult
+adulterate
+adulterous
+adultery
+adulthood
+advance
+advantage
+advantageous
+advent
+adventitious
+adverse
+advert
+advertise
+advice
+advisable
+advise
+advisee
+advisor
+advisory
+advocacy
+advocate
+Aegean
+aegis
+Aeneas
+Aeneid
+aeolian
+Aeolus
+aerate
+aerial
+Aerobacter
+aerobic
+aerodynamic
+aerogene
+aeronautic
+aerosol
+aerospace
+Aeschylus
+aesthete
+aesthetic
+.H 1 "hej hopp"
+acuity
+acumen
+acute
+acyclic
+ad
+Ada
+adage
+adagio
+Adair
+Adam
+adamant
+Adams
+Adamson
+adapt
+adaptation
+adaptive
+add
+added
+addend
+addenda
+addendum
+addict
+Addis
+Addison
+addition
+additional
+additive
+addle
+address
+addressee
+Addressograph
+adduce
+Adelaide
+Adele
+Adelia
+Aden
+adenine
+adenoma
+adenosine
+adept
+adequacy
+adequate
+adhere
+adherent
+adhesion
+adhesive
+adiabatic
+adieu
+adipic
+Adirondack
+.H 2 "hej hopp"
+adjacent
+adject
+adjectival
+adjective
+adjoin
+adjoint
+adjourn
+adjudge
+adjudicate
+.H 2 "hej hopp"
+adjunct
+adjust
+adjutant
+Adkins
+Adler
+administer
+administrable
+administrate
+administratrix
+admiral
+admiralty
+admiration
+admire
+admissible
+admission
+admit
+admittance
+admitted
+admitting
+admix
+admixture
+admonish
+admonition
+ado
+adobe
+adolescent
+Adolph
+Adolphus
+Adonis
+adopt
+adoption
+adoptive
+adore
+adorn
+adposition
+adrenal
+adrenaline
+Adrian
+Adriatic
+Adrienne
+adrift
+adroit
+adsorb
+adsorbate
+adsorption
+adsorptive
+adulate
+adult
+adulterate
+adulterous
+adultery
+adulthood
+advance
+advantage
+advantageous
+advent
+adventitious
+adverse
+advert
+advertise
+advice
+advisable
+advise
+advisee
+advisor
+advisory
+advocacy
+advocate
+Aegean
+aegis
+Aeneas
+Aeneid
+aeolian
+Aeolus
+aerate
+aerial
+Aerobacter
+aerobic
+aerodynamic
+aerogene
+aeronautic
+aerosol
+aerospace
+Aeschylus
+aesthete
+aesthetic
+.RP 0 1
+.TC
diff --git a/contrib/mm/examples/SETR b/contrib/mm/examples/SETR
new file mode 100644
index 000000000..0a9224158
--- /dev/null
+++ b/contrib/mm/examples/SETR
@@ -0,0 +1,109 @@
+.nr Cl 6
+.INITR setr
+.H 1 " granary grand grandchild grandchildren granddaughter grandeur"
+.SETR ref1
+.H 2 "grandfather grandiloquent grandiose grandma grandmother grandnephew"
+.H 2 "grandniece grandpa grandparent grandson grandstand granite granitic"
+.H 2 "granny granola grant grantee grantor granular granulate"
+.SETR ref2
+.H 2 "granule Granville grape"
+grant
+grantee
+grantor
+granular
+granulate
+.br
+granule
+.B
+REF 9:
+.GETHN ref9
+, page number
+.GETPN ref9
+.R
+Granville
+grape
+.br
+grapefruit
+grapevine
+graph
+grapheme
+graphic
+graphite
+\fBExhibit\fP
+.GETHN ex1
+
+grapple
+grasp
+grass
+grassland
+grassy
+grata
+grate
+.H 2 "grapefruit grapevine graph grapheme graphic graphite"
+.H 3 "grapple"
+.SETR ref3
+.H 3 "grasp grass grassland grassy grata grate grateful"
+.H 3 "grater gratify gratis gratitude"
+.H 4 "gratuitous gratuity grave"
+.H 4 "gravel graven"
+.SETR ref4
+.H 1 "Graves gravestone graveyard gravid gravitate gravy gray"
+.H 2 "graybeard grayish Grayson graywacke graze grease greasy great greatcoat"
+.H 2 "greater grebe Grecian Greece greed greedy Greek green Greenbelt Greenberg"
+.H 2 "Greenblatt Greenbriar Greene greenery"
+.SETR ref5
+.H 1 "Greenfield greengrocer greenhouse greenish Greenland Greensboro"
+.H 1 "greensward greenware Greenwich greenwood Greer greet"
+grant
+grantee
+.DS
+
+Advertisements contain the only truths to be relied on in a newspaper.
+ -- Thomas Jefferson
+.EX fortune "" "" ex1
+.DE
+grantor
+granular
+.GETR ref1
+granulate
+granule
+.H 2 "Using variables"
+.B
+REF 2:
+.GETHN ref2 c
+.GETPN ref2 bbb
+\*c, page number \*[bbb]
+.R
+Granville
+grape
+grapefruit
+grapevine
+graph
+grapheme
+.H 2 "Greg gregarious Gregg Gregory gremlin grenade Grendel"
+.H 2 "Grenoble Gresham Greta Gretchen"
+.SETR ref6
+.H 2 "grew"
+.H 1 "grey greyhound greylag grid griddle gridiron grief"
+.H 1 "grievance grieve grievous griffin Griffith grill grille grilled grillwork"
+.H 3 "grim grimace Grimaldi grime Grimes Grimm grin grind grindstone"
+.H 3 "grip gripe grippe grisly grist gristmill Griswold grit"
+.SETR ref7
+.H 3 "gritty grizzle grizzly groan groat grocer grocery groggy groin"
+.H 1 "grommet groom groove grope grosbeak gross Grosset Grossman Grosvenor grotesque"
+.H 1 "Groton ground groundsel groundskeep groundwork group groupoid"
+.H 4 "grout grove grovel Grover grow growl grown grownup growth grub grubby"
+.H 4 "grudge gruesome gruff grumble Grumman grunt gryphon g's"
+.SETR ref8
+.H 4 "GSA GU Guam guanidine guanine guano guarantee guaranteeing guarantor"
+.H 4 "guaranty"
+.H 1 "guard guardhouse Guardia guardian Guatemala gubernatorial Guelph Guenther"
+.H 1 "guerdon guernsey guerrilla guess guesswork guest guffaw Guggenheim"
+.SETR ref9
+.H 1 "Guiana guidance guide guidebook guideline guidepost guiding"
+.H 1 "guignol"
+.GETR ref6
+.H 1 "guild guildhall guile Guilford guillemot guillotine guilt"
+.SETR ref10
+.H 1 "guilty guinea guise guitar gules gulf gull Gullah"
+.H 1 "gullet gullible gully gulp gum gumbo gumdrop gummy gumption"
diff --git a/mm/groff_mm.man b/contrib/mm/groff_mm.man
index 6398b1ee6..f552d7b09 100644
--- a/mm/groff_mm.man
+++ b/contrib/mm/groff_mm.man
@@ -1,5 +1,5 @@
.\"
-.\" $Id: groff_mm.man,v 1.32 1999/09/03 05:33:12 jh Exp $
+.\" $Id$
.\"
.de T2
.ne 2v
@@ -18,7 +18,7 @@
groff_mm \- groff mm macros
.SH SYNOPSIS
.B groff
-.B \-m@TMAC_M@
+.B \-m@TMAC_M_PREFIX@m
[
.IR options .\|.\|.
]
@@ -38,9 +38,9 @@ the macros OK and PM is not implemented.
.B \(bu
groff mm does not support cut marks
.LP
-\fBm@TMAC_M@\fP is intended to be international. Therefore it is
+\fBm@TMAC_M_PREFIX@m\fP is intended to be international. Therefore it is
possible to write short national macrofiles which change all
-english text to the preferred language. Use \fBm@TMAC_M@se\fP as an example.
+english text to the preferred language. Use \fBm@TMAC_M_PREFIX@mse\fP as an example.
.\"########################################################################
.LP
A file called \fBlocale\fP or \fIlang\fP\fB_locale\fP is read
@@ -500,7 +500,7 @@ justification (ljust).
.fi
.DT
Argument greater than or equal to 11 is considered as arg 0.
-Default for m@TMAC_M@m is 10.
+Default for m@TMAC_M_PREFIX@m is 10.
.TP
.B FE
Footnote end.
@@ -770,11 +770,15 @@ See \fBI\fP.
.B IE
Ends the address-specification after \fPIA\fP.
.TP
-.B "INITI filename [type]"
+.B "INITI type filename [macro]"
Initialize the new index system, sets the filename to collect
index lines in with \fBIND\fP. Argument \fItype\fP selects
-teh type of index, page number, header marks or both.
+the type of index, page number, header marks or both.
The default is \fIN\fP.
+
+It is also possible to create a macro that is responsible
+for formatting each row. Add the name of the macro as argument 3.
+The macro will be called with the index as argument(s).
.sp
\fBtype\fP
.in +.5i
@@ -786,6 +790,15 @@ Header marks
Both page numbers and header marks, tab separated
.in
.TP
+.B "INITR filename"
+Initialize the refencemacros. References will be written to
+\fIfilename.tmp\fP and \fIfilename.qrf\fP. Requires two passes with groff.
+The first looks for references and the second includes them.
+\fBINITR\fP can be used several times, but it is only the first
+occurrence of \fBINITR\fP that is active.
+Option \fB-U\fP might be needed if \fBunsafe\fP-errors occur.
+See also \fBSETR\fP, \fBGETPN\fP and \fBGETHN\fP.
+.TP
.B "IND arg1 [arg2 [...]]"
\fBIND\fP writes a line in the index file selected by \fBINITI\fP
with all arguments and the page number or header mark separated by tabs.
@@ -814,16 +827,12 @@ user-defined macros \fBTXIND\fP, \fBTYIND\fP and \fBTZIND\fP if defined.
is called instead of printing \fBINDEX\fP. \fBTZIND\fP is called
after the printing and should take care of restoring to normal
operation again.
-
.TP
-.B "INITR filename"
-Initialize the refencemacros. References will be written to
-\fIfilename.tmp\fP and \fIfilename.qrf\fP. Requires two passes with groff.
-The first looks for references and the second includes them.
-\fBINITR\fP can be used several times, but it is only the first
-occurrence of \fBINITR\fP that is active.
-Option \fB-U\fP might be needed if \fBunsafe\fP-errors occur.
-See also \fBSETR\fP, \fBGETPN\fP and \fBGETHN\fP.
+.B "ISODATE [0]"
+\fBISODATE\fP changes the predefined date string in \fBDT\fP to
+ISO-format, ie YYYY-MM-DD. This can also be done by
+adding \fB-rIso=1\fP on the command line.
+Reverts to old date format if argument is \fB0\fP.
.TP
.B "IR [italic-text [roman-text [italic-text [...]]]"
Italic-roman
@@ -1039,6 +1048,10 @@ End the multi-column mode and print the columns.
.B "nP [type]"
Print numbered paragraph with header level two. Se \fB.P\fP.
.TP
+.B "NCOL"
+Force printing to the next column, don't use this together with
+the \fBMUL*\fP macros, see \fB2C\fP.
+.TP
.B "NS [arg [1]]"
Prints different types of notations. The argument selects between
the predefined type of notations. If the second argument is available,
@@ -1142,14 +1155,14 @@ on the first page.
.TP
.B PIC [-L] [-C] [-R] [-I n] filename [width [height]]
\fBPIC\fP includes a Postscript file in the document.
-The macro depends on \fBmgm_ref\fP and \fBINITR\fP.
+The macro depends on \fBmmroff\fP and \fBINITR\fP.
\fB-L\fP, \fB-C\fP, \fB-R\fP and \fB-I n\fP adjusts the picture
or indents it. The optionally \fIwidth\fP and \fIheight\fP
can also be given to resize the picture.
.TP
.B PE
Picture end.
-Ends a picture for \fB@TMAC_M@pic\fP, see the manual for \fB@TMAC_M@pic\fP.
+Ends a picture for \fB@TMAC_M_PREFIX@pic\fP, see the manual for \fB@TMAC_M_PREFIX@pic\fP.
.TP
.B "PF [arg]"
Page footer.
@@ -1465,7 +1478,7 @@ Floating displays does not generate line break.
.LP
.\"########################################################################
.LP
-.B "Strings used in m@TMAC_M@:"
+.B "Strings used in m@TMAC_M_PREFIX@m:"
.TP
.B App
A string containing the word "APPENDIX".
@@ -1609,7 +1622,7 @@ Contains \e(tm, trade mark.
Argument to \fB.nm\fP in \fB.VERBON\fP, default: \fB1\fP.
.\"-----------------------------------
.LP
-.B "Number variables used in m@TMAC_M@:"
+.B "Number variables used in m@TMAC_M_PREFIX@m:"
.TP
.B Aph
Print an appendix-page for every new appendix
@@ -1712,6 +1725,11 @@ Hyphenation in body, default 1.
.br
1\ ->\ hyphenation 14 on
.TP
+.B Iso
+Set this variable to 1 on the command line to get ISO-formatted date string.
+(\fB-rIso=1\fP)
+Useless inside a document.
+.TP
.B Letwam
Max lines in return-address, used in \fB.WA\fP/\fB.WE\fP. Default 14.
.TP
@@ -1858,7 +1876,7 @@ variable \fBlet*lo-\fP\fItype\fP.
Jörgen Hägg, Lund, Sweden <jh@axis.se>.
.SH FILES
.TP
-.B @MACRODIR@/tmac.@TMAC_M@
+.B @MACRODIR@/tmac.@TMAC_M_PREFIX@m
.TP
.B @TMAC_MDIR@/*.cov
.TP
@@ -1873,4 +1891,4 @@ Jörgen Hägg, Lund, Sweden <jh@axis.se>.
.BR @g@eqn (@MAN1EXT@)
.br
.BR mm (@MAN7EXT@)
-.BR m@TMAC_M@se (@MAN7EXT@)
+.BR m@TMAC_M_PREFIX@mse (@MAN7EXT@)
diff --git a/mm/groff_mmse.man b/contrib/mm/groff_mmse.man
index e27d0aefd..60f1cee91 100644
--- a/mm/groff_mmse.man
+++ b/contrib/mm/groff_mmse.man
@@ -1,5 +1,5 @@
.\"
-.\" $Id: groff_mmse.man,v 1.32 1999/09/03 05:33:12 jh Exp $
+.\" $Id$
.\" Skrivet av Jörgen Hägg, Lund, Sverige
.\"
.TH GROFF_MMSE @MAN7EXT@ "@MDATE@" "Groff Version @VERSION@"
@@ -7,7 +7,7 @@
groff_mmse \- svenska mm makro för groff
.SH SYNTAX
.B groff
-.B \-m@TMAC_M@se
+.B \-m@TMAC_M_PREFIX@mse
[
.IR flaggor .\|.\|.
]
@@ -15,7 +15,7 @@ groff_mmse \- svenska mm makro för groff
.IR filer .\|.\|.
]
.SH BESKRIVNING
-\fBm@TMAC_M@se\fP är en svensk variant av \fBm@TMAC_M@\fP. Alla texter
+\fBm@TMAC_M_PREFIX@mse\fP är en svensk variant av \fBm@TMAC_M_PREFIX@m\fP. Alla texter
är översatta. En A4 sida får text som är 13 cm bred, 3.5 cm indragning
samt är 28.5 cm hög.
Det finns stöd för brevuppställning enligt svensk standard
@@ -70,7 +70,7 @@ Där lägger man lämpligen in postadress och annat som brevfot.
.SH "SKRIVET AV"
Jörgen Hägg, Lund, Sweden <Jorgen.Hagg@axis.se>
.SH FILER
-.B @MACRODIR@/tmac.@TMAC_M@se
+.B @MACRODIR@/tmac.@TMAC_M_PREFIX@mse
.B @TMAC_MDIR@/se_*.cov
.SH "SE OCKSÅ"
.BR groff (@MAN1EXT@),
@@ -79,4 +79,4 @@ Jörgen Hägg, Lund, Sweden <Jorgen.Hagg@axis.se>
.BR @g@pic (@MAN1EXT@),
.BR @g@eqn (@MAN1EXT@)
.br
-.BR m@TMAC_M@ (@MAN7EXT@)
+.BR m@TMAC_M_PREFIX@m (@MAN7EXT@)
diff --git a/mm/mm/0.MT b/contrib/mm/mm/0.MT
index aa26cd3da..1064e931b 100644
--- a/mm/mm/0.MT
+++ b/contrib/mm/mm/0.MT
@@ -1,5 +1,5 @@
.\"------------
-.\" $Id: 0.MT,v 1.32 1999/09/03 05:33:13 jh Exp $
+.\" $Id$
.\" Cover sheet. Memorandum type 0-3 and "string".
.\"------------
.if !r Au .nr Au 1
diff --git a/mm/mm/4.MT b/contrib/mm/mm/4.MT
index 15895ff99..08e0f4676 100644
--- a/mm/mm/4.MT
+++ b/contrib/mm/mm/4.MT
@@ -1,5 +1,5 @@
.\"------------
-.\" $Id: 4.MT,v 1.32 1999/09/03 05:33:13 jh Exp $
+.\" $Id$
.\" Cover sheet. Memorandum type 4
.\"------------
.de cov@print-title
@@ -61,7 +61,9 @@
. cov@print-title
. cov@print-authors
. cov@print-firm
-. if !\n[cov*abs-arg] .cov@print-abstract
+. if d cov*abstract \{\
+. if !\n[cov*abs-arg] .cov@print-abstract
+. \}
. SP 3
. nr hd*cur-bline \n[nl]
. ds cov*mt-printed
diff --git a/mm/mm/5.MT b/contrib/mm/mm/5.MT
index 687a9e1b3..00c95d668 100644
--- a/mm/mm/5.MT
+++ b/contrib/mm/mm/5.MT
@@ -1,5 +1,5 @@
.\"------------
-.\" $Id: 5.MT,v 1.32 1999/09/03 05:33:13 jh Exp $
+.\" $Id$
.\" Cover sheet. Memorandum type 5
.\"------------
.nr cov*mt0-ind 1.1c
diff --git a/mm/mm/ms.cov b/contrib/mm/mm/ms.cov
index 1fea393a6..a669c2f68 100644
--- a/mm/mm/ms.cov
+++ b/contrib/mm/mm/ms.cov
@@ -1,5 +1,5 @@
.\"------------
-.\" $Id: ms.cov,v 1.32 1999/09/03 05:33:13 jh Exp $
+.\" $Id$
.\" Cover sheet. Mostly like ms cover.
.\"------------
.de cov@print-title
diff --git a/contrib/mm/mm/se_ms.cov b/contrib/mm/mm/se_ms.cov
new file mode 100644
index 000000000..a57ebde14
--- /dev/null
+++ b/contrib/mm/mm/se_ms.cov
@@ -0,0 +1,3 @@
+.\" $Id$
+.mso mm/ms.cov
+.nr cur*abstract-ll 11c
diff --git a/contrib/mm/mmroff.man b/contrib/mm/mmroff.man
new file mode 100644
index 000000000..c836515be
--- /dev/null
+++ b/contrib/mm/mmroff.man
@@ -0,0 +1,48 @@
+.\"
+.\" $Id$
+.\"
+.TH MMROFF @MAN7EXT@ "@MDATE@" "Groff Version @VERSION@"
+.SH NAME
+mmroff \- reference preprocessor
+.SH SYNOPSIS
+.B mmroff
+[
+.I -x
+]
+.I groff_arguments
+.SH DESCRIPTION
+\fBmmroff\fP is a simple preprocessor for \fBgroff\fP, it is
+used for expanding references in \fBm@TMAC_M_PREFIX@m\fP, see
+\fBgroff_mm(@MAN7EXT@)\fP.
+\fBgroff\fP is executed twice, first with \fB-z\fP and \fB-rRef=1\fR
+to collect all references and then to do the real processing
+when the reference file is up to date.
+.TP
+\fB\-x\fR
+Just create the reference file. This can be used to refresh
+the reference file, it isn't always needed to have accurate
+references and by using this option \fBgroff\fP will only
+be run once.
+.\".SH BUGS
+.SH AUTHOR
+Jörgen Hägg, Lund, Sweden <jh@axis.se>.
+.SH FILES
+.TP
+.B @MACRODIR@/tmac.@TMAC_M_PREFIX@m
+.TP
+.B @TMAC_MDIR@/*.cov
+.TP
+.B @TMAC_MDIR@/*.MT
+.TP
+.B @TMAC_MDIR@/locale
+.SH "SEE ALSO"
+.BR groff_mm(@MAN7EXT@),
+.BR groff_mmse(@MAN7EXT@),
+.BR groff (@MAN1EXT@),
+.BR @g@troff (@MAN1EXT@),
+.BR @g@tbl (@MAN1EXT@),
+.BR @g@pic (@MAN1EXT@),
+.BR @g@eqn (@MAN1EXT@)
+.br
+.BR mm (@MAN7EXT@)
+.BR m@TMAC_M_PREFIX@mse (@MAN7EXT@)
diff --git a/contrib/mm/mmroff.pl b/contrib/mm/mmroff.pl
new file mode 100644
index 000000000..69b6105b2
--- /dev/null
+++ b/contrib/mm/mmroff.pl
@@ -0,0 +1,134 @@
+#!/usr/bin/perl
+
+use strict;
+# runs groff in safe mode, that seems to be the default
+# installation now. That means that I have to fix all nice
+# features outside groff. Sigh.
+# I do agree however that the previous way opened a whole bunch
+# of security holes.
+
+my $no_exec;
+# check for -x and remove it
+if (grep(/^-x$/, @ARGV)) {
+ $no_exec++;
+ @ARGV = grep(!/^-x$/, @ARGV);
+}
+
+my $check_macro = "groff -rRef=1 -z @ARGV";
+my $run_macro = "groff @ARGV";
+
+my (%cur, $rfilename, $max_height, $imacro, $max_width, @out, @indi);
+open(MACRO, "$check_macro 2>&1 |") || die "run $check_macro:$!";
+while(<MACRO>) {
+ if (m#^\.\\" Rfilename: (\S+)#) {
+ # remove all directories just to be more secure
+ ($rfilename = $1) =~ s#.*/##;
+ next;
+ }
+ if (m#^\.\\" Imacro: (\S+)#) {
+ # remove all directories just to be more secure
+ ($imacro = $1) =~ s#.*/##;
+ next;
+ }
+ if (m#^\.\\" Index: (\S+)#) {
+ # remove all directories just to be more secure
+ my $f;
+ ($f = $1) =~ s#.*/##;
+ &print_index($f, \@indi, $imacro);
+ @indi = ();
+ $imacro = '';
+ next;
+ }
+ my $x;
+ if (($x) = m#^\.\\" IND (.+)#) {
+ $x =~ s#\\##g;
+ my @x = split(/\t/, $x);
+ grep(s/\s+$//, @x);
+ push(@indi, join("\t", @x));
+ next;
+ }
+ if (m#^\.\\" PIC id (\d+)#) {
+ %cur = ('id', $1);
+ next;
+ }
+ if (m#^\.\\" PIC file (\S+)#) {
+ &psbb($1);
+ &ps_calc($1);
+ next;
+ }
+ if (m#^\.\\" PIC (\w+)\s+(\S+)#) {
+ eval "\$cur{'$1'} = '$2'";
+ next;
+ }
+ s#\\ \\ $##;
+ push(@out, $_);
+}
+close(MACRO);
+
+
+if ($rfilename && @out) {
+ push(@out, ".nr pict*max-height $max_height\n") if defined $max_height;
+ push(@out, ".nr pict*max-width $max_width\n") if defined $max_width;
+
+ open(OUT, ">$rfilename") || "create $rfilename:$!";
+ my $i;
+ for $i (@out) {
+ print OUT $i;
+ }
+ close(OUT);
+}
+
+exit 0 if $no_exec;
+exit system($run_macro);
+
+sub print_index {
+ my ($f, $ind, $macro) = @_;
+
+ open(OUT, ">$f") || "create $f:$!";
+ my $i;
+ for $i (sort @$ind) {
+ if ($macro) {
+ $i = '.'.$macro.' "'.join('" "', split(/\t/, $i)).'"';
+ }
+ print OUT "$i\n";
+ }
+ close(OUT);
+}
+
+sub ps_calc {
+ my ($f) = @_;
+
+ my $w = abs($cur{'llx'}-$cur{'urx'});
+ my $h = abs($cur{'lly'}-$cur{'ury'});
+ $max_width = $w if $w > $max_width;
+ $max_height = $h if $h > $max_height;
+
+ my $id = $cur{'id'};
+ push(@out, ".ds pict*file!$id $f\n");
+ push(@out, ".ds pict*id!$f $id\n");
+ push(@out, ".nr pict*llx!$id $cur{'llx'}\n");
+ push(@out, ".nr pict*lly!$id $cur{'lly'}\n");
+ push(@out, ".nr pict*urx!$id $cur{'urx'}\n");
+ push(@out, ".nr pict*ury!$id $cur{'ury'}\n");
+ push(@out, ".nr pict*w!$id $w\n");
+ push(@out, ".nr pict*h!$id $h\n");
+}
+
+
+sub psbb {
+ my ($f) = @_;
+
+ unless (open(IN, $f)) {
+ print STDERR "Warning: Postscript file $f:$!";
+ next;
+ }
+ while(<IN>) {
+ if (/^%%BoundingBox:\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/) {
+ $cur{'llx'} = $1;
+ $cur{'lly'} = $2;
+ $cur{'urx'} = $3;
+ $cur{'ury'} = $4;
+ }
+ }
+ close(IN);
+}
diff --git a/mm/tmac.m b/contrib/mm/tmac.m
index f96f6158c..82ebf92f3 100644..100755
--- a/mm/tmac.m
+++ b/contrib/mm/tmac.m
@@ -3,11 +3,11 @@
.ds RE \\$2
..
.\"
-.\" $Id: tmac.m,v 1.32 1999/09/03 05:33:12 jh Exp $
-.@revision $Revision: 1.32 $
+.\" $Id$
+.@revision $Revision$
.ig
-Copyright (C) 1991-1998 Free Software Foundation, Inc.
+Copyright (C) 1991-2000 Free Software Foundation, Inc.
mgm is written by Jörgen Hägg <jh@axis.se>
mgm is free software; you can redistribute it and/or modify it under
@@ -167,6 +167,7 @@ Index array!index
.nr @ps \n[.ps]
.nr @vs \n[.v]
.if \n[D]>1 .tm @ps=\n[@ps], @vs=\n[@vs]
+.if \n[D]>3 .tm INIT: l:\n[.l] p:\n[.p] o:\n[.o]
.\"
.\" Page length
.if r L \{\
@@ -539,10 +540,12 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.\" Break here to avoid problems with new linesetting of the previous line.
.\" Hope this doesn't break anything else :-)
.\" Don't break if arg_4 is a '1'.
+.if \\n[D]>2 .tm PGFORM: \\$*
.if ''\\$4' .br
+.if \\n[D]>3 .tm PGFORM: IN l:\\n[.l] p:\\n[.p] o:\\n[.o]
.ie !''\\$1' \{\
. ll \\$1
-. nr @ll \n[.l]
+. nr @ll \\n[.l]
. nr @cur-ll \\n[@ll]
. lt \\n[@ll]u
.\}
@@ -553,17 +556,23 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.\"
.ie !''\\$2' \{\
. pl \\$2
-. nr @pl \n[.p]
+. nr @pl \\n[.p]
.\}
.el .pl \\n[@pl]u
.\"
.ie !''\\$3' \{\
. po \\$3
-. nr @po \n[.o]
+. nr @po \\n[.o]
.\}
.el .po \\n[@po]u
+.if \\n[D]>3 .tm PGFORM: OUT l:\\n[.l] p:\\n[.p] o:\\n[.o]
+.if \\n[D]>2 .tm PGFORM: ll=\\n[@ll], pl=\\n[@pl], po=\\n[@po]
'in 0
.pg@move-trap
+.if \\n[D]>2 \{\
+. tm Traps:
+. ptr
+.\}
..
.\"-------------
.\" .MOVE y [[x] linelength]
@@ -911,8 +920,14 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.if \\n[hd*level]=1 .ds H1txt \\$2\\$3
.\"
.\" This is a little fix to be able to get correct H1 heading number
-.\" in page headers.
-.nr H1h \\n[H1] 1
+.\" in page headers. Special attention was needed when other formats are used.
+.ie !''\\g[H1]' \{\
+. ds hd*format \\g[H1]
+. af H1 0
+. nr H1h \\n[H1] 1
+. af H1 \\*[hd*format]
+.\}
+.el .nr H1h \\n[H1] 1
.if \\n[hd*level]=1 .nr H1h +1
.\"
.\" Check if it's time for new page. Only if text has
@@ -1105,6 +1120,7 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.de pg@enable-trap
.wh \\n[pg*foot-trap]u pg@footer
.if \\n[D]>2 .tm pg@enable-trap .t=\\n[.t] nl=\\n[nl]
+.if \\n[D]>2 .ptr
..
.de pg@disable-trap
.ch pg@footer
@@ -2923,13 +2939,27 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
..
.de AE
..
-.\" I am planning to use mgm for some time :-)
-.nr cov*year 1900+\n[yr]
-.ds cov*new-date \*[MO\n[mo]] \n[dy], \n[cov*year]
+.\" fixed for 2000, now uses \n[year].
+.de ISODATE
+. \" support for ISO-date
+. nr cov*mm \\n[mo]
+. nr cov*dd \\n[dy]
+. af cov*mm 01
+. af cov*dd 01
+. ie '0'\\$1' \{\
+. ds cov*new-date \\*[MO\\n[mo]] \\n[dy], \\n[year]
+. \}
+. el \{\
+. ds cov*new-date \\n[year]-\\n[cov*mm]-\\n[cov*dd]
+. \}
+..
+.ISODATE 0
.als DT cov*new-date
.de ND
.ds cov*new-date \\$1
..
+.\" switch to ISO-date if register Iso exist: YYYY-MM-DD
+.if r Iso .ISODATE 1
.\"-------------------
.\" save technical numbers.
.de TM
@@ -2981,21 +3011,20 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.\"
.\" init reference system
.de INITR
-.ds qrf*file \\$1
+.ds qrf*file \\$1.qrf
.nr qrf*pass 2
.if \\n[D]>1 .tm INITR: source \\*[qrf*file]
-.if \\n[Ref] \{\
-. tm .\\\\" Filename: \\$1
-.\}
-'so \\*[qrf*file]
+.ie \\n[Ref] \{\
+. tm .\\\\" Rfilename: \\*[qrf*file]
.\}
+.el 'so \\*[qrf*file]
..
.\"---------------
.\" set a reference.
.de SETR
.if \\n[.$]<1 .@error "SETR:reference name missing"
-.ie !r qrf*pass .tm "SETR: No .INITR in this file"
-.el \{\
+.if !r qrf*pass .tm "SETR: No .INITR in this file"
+.if \\n[Ref] \{\
. ds qrf*name qrf*ref-\\$1
. if \\n[D]>2 .tm SETR: ref \\*[qrf*name]=\\*[hd*mark],\\n[%]
. \" heading-number
@@ -3011,7 +3040,7 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.\}
..
.\"---------------
-.\" get misc-string, output <->42<-> in pass 1
+.\" get misc-string
.\" If two arg -> set var. arg to misc-string.
.de GETST
.if \\n[.$]<1 .@error "GETST:reference name missing"
@@ -3024,7 +3053,7 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.\}
..
.\"---------------
-.\" get header-number, output X.X.X. in pass 1
+.\" get header-number
.\" If two arg -> set var. arg to header-number.
.de GETHN
.if \\n[.$]<1 .@error "GETHN:reference name missing"
@@ -3036,13 +3065,13 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.\}
..
.\"---------------
-.\" get page-number, output 9999 in pass 1
+.\" get page-number
.\" If two arg -> set var. arg to page-number.
.de GETPN
.if \\n[.$]<1 .@error "GETPN:reference name missing"
.if !r qrf*pass .tm "GETPN: No .INITR in this file"
.ds qrf*name qrf*ref-\\$1
-.if d \\*[qrf*name]-pn
+.if d \\*[qrf*name]-pn \{\
. ie \\n[.$]>1 .ds \\$2 \\*[\\*[qrf*name]-pn]
. el \\*[\\*[qrf*name]-pn]\c
.\}
@@ -3066,53 +3095,64 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
..
.\"--------------------
.\" Another type of index system
-.\" INITI filename [type]
+.\" INITI type filename [macro]
.de INITI
-.if \\n[.$]<1 .@error "INITI:filename missing"
+.if \\n[.$]<1 .@error "INITI:type missing"
.\" ignore if INITI has already been used
-.if r ind*pass .@error "INITI:already initialyzed"
-.nr ind*pass 1
-.ds ind*file \\$1.ind
-.ie \\n[.$]<2 .ds ind*type N
-.el .ds ind*type \\$2
+.if \\n[.$]>1 \{\
+. if d ind*file .@error "INITI:file already set"
+. ds ind*file \\$2.ind
+. if \\n[D]>1 .tm INITI: source \\*[ind*file]
+.\}
+.if !d ind*file .@error "INITI:file not specified"
+.ds ind*type \\$1
+.if \\n[Ref] \{\
+. if \\n[.$]>2 .tm .\\\\" Imacro: \\$3
+.\}
..
.\"---------------
.de IND
-.if !r ind*pass .@error "IND: No .INITI in this file"
+.if !d ind*file .@error "IND: No active INITI"
+.if \\n[D]>1 .tm IND: type=\\*[ind*type]
+.ds ind*ref
.if '\\*[ind*type]'N' .ds ind*ref \\n[%]
.if '\\*[ind*type]'H' .ds ind*ref \\*[hd*mark]
.if '\\*[ind*type]'B' .ds ind*ref \\*[hd*mark]\t\\n[%]
+.if '\\*[ind*ref]'' .@error "IND:wrong index type: \\*[ind*ref]"
.\"
-.if \\n[.$] .ds ind*line \\$1
+.ds ind*line \\$1
.while \\n[.$]>0 \{\
. shift
. as ind*line \t\\$1
.\}
.as ind*line \\*[ind*ref]
-.tm \\*[ind*line]
+.if \\n[Ref] .tm .\\\\" IND \\*[ind*line]
..
.\" print index
.de INDP
-.\" sort the index
-.if !\\n[Cp] .pg@next-page
-.\" print INDEX
-.\" execute user-defined macros
-.if d TXIND .TXIND
-.ie d TYIND .TYIND
+.ie \\n[Ref] .tm .\\\\" Index: \\*[ind*file]
.el \{\
-. SK
-. ce
+. if !\\n[Cp] .pg@next-page
+. \" print INDEX
+. \" execute user-defined macros
+. if d TXIND .TXIND
+. ie d TYIND .TYIND
+. el \{\
+. SK
+. ce
\\*[Index]
-. SP 3
-. 2C
-. nf
-.\}
-.pso \\*[Indcmd] \\*[ind*file]
-.ie d TZIND .TZIND
-.el \{\
-. fi
-. 1C
+. SP 3
+. 2C
+. nf
+. \}
+' so \\*[ind*file]
+. ie d TZIND .TZIND
+. el \{\
+. fi
+. 1C
+. \}
.\}
+.rm ind*file
..
.\"########################### module let ############################
.\" Letter macros
diff --git a/mm/tmac.mse b/contrib/mm/tmac.mse
index 2b1e8eed1..d42e731bd 100644..100755
--- a/mm/tmac.mse
+++ b/contrib/mm/tmac.mse
@@ -1,9 +1,10 @@
-.\" $Id: tmac.mse,v 1.32 1999/09/03 05:33:12 jh Exp $
+.\" $Id$
.\"
.\" swedish version of mm
.\" See tmac.m for version-information.
.ds @language se
.mso tmac.m
+.ISODATE
.\"
.ds App Bilaga
.ds Lf Figurer
@@ -66,8 +67,6 @@
.ds MO10 oktober
.ds MO11 november
.ds MO12 december
-.nr cov*year 1900+\n[yr]
-.ds cov*new-date \n[dy] \*[MO\n[mo]] \n[cov*year]
.nr pg*footer-size 4\" 1v+footer+even/odd footer+1v
.\"------------------------------------------------
.\" Dokumentnamn
diff --git a/devhtml/CB b/devhtml/CB
deleted file mode 100644
index 7ca40b89c..000000000
--- a/devhtml/CB
+++ /dev/null
@@ -1,306 +0,0 @@
-name CB
-spacewidth 9
-charset
---- 9,1 0 040
-! 9,9 0 041
-" 9,10 0 042
-# 9,10,1 0 043
-sh "
-$ 9,11,1 0 044
-Do "
-% 9,10 0 045
-& 9,8 0 046
-' 9,10 0 047
-( 9,9,2 0 050
-) 9,9,2 0 051
-* 9,9 0 052
-+ 9,8 0 053
-, 9,2,2 0 054
-\- 9,5 0 055
-. 9,2 0 056
-/ 9,10,2 0 057
-sl "
-0 9,10 0 060
-1 9,10 0 061
-2 9,10 0 062
-3 9,10 0 063
-4 9,10 0 064
-5 9,10 0 065
-6 9,10 0 066
-7 9,10 0 067
-8 9,10 0 070
-9 9,10 0 071
-: 9,7 0 072
-; 9,7,2 0 073
-< 9,8 0 074
-= 9,6 0 075
-eq "
-> 9,8 0 076
-? 9,9 0 077
-@ 9,9 0 0100
-at "
-A 9,9 0 0101
-B 9,9 0 0102
-C 9,9 0 0103
-D 9,9 0 0104
-E 9,9 0 0105
-F 9,9 0 0106
-G 9,9 0 0107
-H 9,9 0 0110
-I 9,9 0 0111
-J 9,9 0 0112
-K 9,9 0 0113
-L 9,9 0 0114
-M 9,9 0 0115
-N 9,9 0 0116
-O 9,9 0 0117
-P 9,9 0 0120
-Q 9,9,2 0 0121
-R 9,9 0 0122
-S 9,9 0 0123
-T 9,9 0 0124
-U 9,9 0 0125
-V 9,9 0 0126
-W 9,9 0 0127
-X 9,9 0 0130
-Y 9,9 0 0131
-Z 9,9 0 0132
-[ 9,9,2 0 0133
-lB "
-\ 9,10,2 0 0134
-rs "
-] 9,9,2 0 0135
-rB "
-^ 9,9 0 0136
-a^ "
-ha "
-_ 9,0,2 0 0137
-` 9,10 0 0140
-oq "
-a 9,7 0 0141
-b 9,10 0 0142
-c 9,7 0 0143
-d 9,10 0 0144
-e 9,7 0 0145
-f 9,10 0 0146
-g 9,7,3 0 0147
-h 9,10 0 0150
-i 9,10 0 0151
-j 9,10,3 0 0152
-k 9,10 0 0153
-l 9,10 0 0154
-m 9,7 0 0155
-n 9,7 0 0156
-o 9,7 0 0157
-p 9,7,3 0 0160
-q 9,7,3 0 0161
-r 9,7 0 0162
-s 9,7 0 0163
-t 9,9 0 0164
-u 9,7 0 0165
-v 9,7 0 0166
-w 9,7 0 0167
-x 9,7 0 0170
-y 9,7,3 0 0171
-z 9,7 0 0172
-{ 9,9,2 0 0173
-lC "
-| 9,9,2 0 0174
-or "
-ba "
-} 9,9,2 0 0175
-rC "
-~ 9,6 0 0176
-a~ "
-ap "
-ti "
-r! 9,7,2 0 0241
-¡ "
-ct 9,9,1 0 0242
-¢ "
-Po 9,9 0 0243
-£ "
-Cs 9,7 0 0244
-¤ "
-Ye 9,9 0 0245
-¥ "
-bb 9,9,2 0 0246
-¦ "
-sc 9,10,1 0 0247
-§ "
-ad 9,10 0 0250
-¨ "
-co 9,9 0 0251
-© "
-Of 9,9 0 0252
-ª "
-Fo 9,6 0 0253
-« "
-no 9,5 0 0254
-¬ "
-- 9,5 0 055
-hy "
-­ "
-rg 9,9 0 0256
-® "
-a- 9,9 0 0257
-¯ "
-de 9,9 0 0260
-° "
-+- 9,8 0 0261
-± "
-S2 9,10 0 0262
-² "
-S3 9,10 0 0263
-³ "
-aa 9,9 0 0264
-´ "
-µ 9,7,3 0 0265
-ps 9,10,1 0 0266
-¶ "
-md 9,5 0 0267
-· "
-ac 9,1,3 0 0270
-¸ "
-S1 9,10 0 0271
-¹ "
-Om 9,9 0 0272
-º "
-Fc 9,6 0 0273
-» "
-14 9,10 0 0274
-¼ "
-12 9,10 0 0275
-½ "
-34 9,10 0 0276
-¾ "
-r? 9,7,2 0 0277
-¿ "
-`A 9,12 0 0300
-À "
-'A 9,12 0 0301
-Á "
-^A 9,12 0 0302
-Â "
-~A 9,12 0 0303
-Ã "
-:A 9,12 0 0304
-Ä "
-oA 9,12 0 0305
-Å "
-AE 9,9 0 0306
-Æ "
-,C 9,9,4 0 0307
-Ç "
-`E 9,12 0 0310
-È "
-'E 9,12 0 0311
-É "
-^E 9,12 0 0312
-Ê "
-:E 9,12 0 0313
-Ë "
-`I 9,12 0 0314
-Ì "
-'I 9,12 0 0315
-Í "
-^I 9,12 0 0316
-Î "
-:I 9,12 0 0317
-Ï "
--D 9,9 0 0320
-Ð "
-~N 9,12 0 0321
-Ñ "
-`O 9,12 0 0322
-Ò "
-'O 9,12 0 0323
-Ó "
-^O 9,12 0 0324
-Ô "
-~O 9,12 0 0325
-Õ "
-:O 9,12 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 9,10 0 0330
-Ø "
-`U 9,12 0 0331
-Ù "
-'U 9,12 0 0332
-Ú "
-^U 9,12 0 0333
-Û "
-:U 9,12 0 0334
-Ü "
-'Y 9,12 0 0335
-Ý "
-TP 9,9 0 0336
-Þ "
-ss 9,9 0 0337
-ß "
-`a 9,10 0 0340
-à "
-'a 9,10 0 0341
-á "
-^a 9,10 0 0342
-â "
-~a 9,10 0 0343
-ã "
-:a 9,10 0 0344
-ä "
-oa 9,10 0 0345
-å "
-ae 9,7 0 0346
-æ "
-,c 9,7,4 0 0347
-ç "
-`e 9,10 0 0350
-è "
-'e 9,10 0 0351
-é "
-^e 9,10 0 0352
-ê "
-:e 9,10 0 0353
-ë "
-`i 9,10 0 0354
-ì "
-'i 9,10 0 0355
-í "
-^i 9,10 0 0356
-î "
-:i 9,10 0 0357
-ï "
-Sd 9,10 0 0360
-ð "
-~n 9,10 0 0361
-ñ "
-`o 9,10 0 0362
-ò "
-'o 9,10 0 0363
-ó "
-^o 9,10 0 0364
-ô "
-~o 9,10 0 0365
-õ "
-:o 9,10 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 9,7 0 0370
-ø "
-`u 9,10 0 0371
-ù "
-'u 9,10 0 0372
-ú "
-^u 9,10 0 0373
-û "
-:u 9,10 0 0374
-ü "
-'y 9,10,3 0 0375
-ý "
-Tp 9,9,3 0 0376
-þ "
-:y 9,10,3 0 0377
-ÿ "
diff --git a/devhtml/CBI b/devhtml/CBI
deleted file mode 100644
index 551ed2616..000000000
--- a/devhtml/CBI
+++ /dev/null
@@ -1,306 +0,0 @@
-name CBI
-spacewidth 9
-charset
---- 9,1 0 040
-! 9,10 0 041
-" 9,9 0 042
-# 9,11,1 0 043
-sh "
-$ 9,11,1 0 044
-Do "
-% 9,10 0 045
-& 9,8 0 046
-' 9,9 0 047
-( 9,9,2 0 050
-) 9,9,2 0 051
-* 9,10 0 052
-+ 9,8 0 053
-, 9,2,2 0 054
-\- 9,5 0 055
-. 9,2 0 056
-/ 9,10,2 0 057
-sl "
-0 9,10 0 060
-1 9,10 0 061
-2 9,10 0 062
-3 9,10 0 063
-4 9,10 0 064
-5 9,10 0 065
-6 9,10 0 066
-7 9,10 0 067
-8 9,10 0 070
-9 9,10 0 071
-: 9,7 0 072
-; 9,7,2 0 073
-< 9,8 0 074
-= 9,6 0 075
-eq "
-> 9,8 0 076
-? 9,9 0 077
-@ 9,9 0 0100
-at "
-A 9,9 0 0101
-B 9,9 0 0102
-C 9,9 0 0103
-D 9,9 0 0104
-E 9,9 0 0105
-F 9,9 0 0106
-G 9,9 0 0107
-H 9,9 0 0110
-I 9,9 0 0111
-J 9,9 0 0112
-K 9,9 0 0113
-L 9,9 0 0114
-M 9,9 0 0115
-N 9,9 0 0116
-O 9,9 0 0117
-P 9,9 0 0120
-Q 9,9,2 0 0121
-R 9,9 0 0122
-S 9,9 0 0123
-T 9,9 0 0124
-U 9,9 0 0125
-V 9,9 0 0126
-W 9,9 0 0127
-X 9,9 0 0130
-Y 9,9 0 0131
-Z 9,9 0 0132
-[ 9,9,2 0 0133
-lB "
-\ 9,10,2 0 0134
-rs "
-] 9,9,2 0 0135
-rB "
-^ 9,9 0 0136
-a^ "
-ha "
-_ 9,0,3 0 0137
-` 9,9 0 0140
-oq "
-a 9,7 0 0141
-b 9,10 0 0142
-c 9,7 0 0143
-d 9,10 0 0144
-e 9,7 0 0145
-f 9,10 0 0146
-g 9,7,3 0 0147
-h 9,10 0 0150
-i 9,10 0 0151
-j 9,10,3 0 0152
-k 9,10 0 0153
-l 9,10 0 0154
-m 9,7 0 0155
-n 9,7 0 0156
-o 9,7 0 0157
-p 9,7,3 0 0160
-q 9,7,3 0 0161
-r 9,7 0 0162
-s 9,7 0 0163
-t 9,9 0 0164
-u 9,7 0 0165
-v 9,7 0 0166
-w 9,7 0 0167
-x 9,7 0 0170
-y 9,7,3 0 0171
-z 9,7 0 0172
-{ 9,9,2 0 0173
-lC "
-| 9,9,2 0 0174
-or "
-ba "
-} 9,9,2 0 0175
-rC "
-~ 9,6 0 0176
-a~ "
-ap "
-ti "
-r! 9,7,3 0 0241
-¡ "
-ct 9,9,1 0 0242
-¢ "
-Po 9,9 0 0243
-£ "
-Cs 9,7 0 0244
-¤ "
-Ye 9,9 0 0245
-¥ "
-bb 9,10,2 0 0246
-¦ "
-sc 9,10,1 0 0247
-§ "
-ad 9,10 0 0250
-¨ "
-co 9,9 0 0251
-© "
-Of 9,9 0 0252
-ª "
-Fo 9,6 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 9,5 0 055
-hy "
-­ "
-rg 9,9 0 0256
-® "
-a- 9,9 0 0257
-¯ "
-de 9,10 0 0260
-° "
-+- 9,8 0 0261
-± "
-S2 9,10 0 0262
-² "
-S3 9,10 0 0263
-³ "
-aa 9,10 0 0264
-´ "
-µ 9,7,3 0 0265
-ps 9,10,1 0 0266
-¶ "
-md 9,5 0 0267
-· "
-ac 9,1,3 0 0270
-¸ "
-S1 9,10 0 0271
-¹ "
-Om 9,9 0 0272
-º "
-Fc 9,6 0 0273
-» "
-14 9,10 0 0274
-¼ "
-12 9,10 0 0275
-½ "
-34 9,10 0 0276
-¾ "
-r? 9,7,2 0 0277
-¿ "
-`A 9,12 0 0300
-À "
-'A 9,12 0 0301
-Á "
-^A 9,12 0 0302
-Â "
-~A 9,12 0 0303
-Ã "
-:A 9,12 0 0304
-Ä "
-oA 9,12 0 0305
-Å "
-AE 9,9 0 0306
-Æ "
-,C 9,9,4 0 0307
-Ç "
-`E 9,12 0 0310
-È "
-'E 9,12 0 0311
-É "
-^E 9,12 0 0312
-Ê "
-:E 9,12 0 0313
-Ë "
-`I 9,12 0 0314
-Ì "
-'I 9,12 0 0315
-Í "
-^I 9,12 0 0316
-Î "
-:I 9,12 0 0317
-Ï "
--D 9,9 0 0320
-Ð "
-~N 9,12 0 0321
-Ñ "
-`O 9,12 0 0322
-Ò "
-'O 9,12 0 0323
-Ó "
-^O 9,12 0 0324
-Ô "
-~O 9,12 0 0325
-Õ "
-:O 9,12 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 9,9 0 0330
-Ø "
-`U 9,12 0 0331
-Ù "
-'U 9,12 0 0332
-Ú "
-^U 9,12 0 0333
-Û "
-:U 9,12 0 0334
-Ü "
-'Y 9,12 0 0335
-Ý "
-TP 9,9 0 0336
-Þ "
-ss 9,9 0 0337
-ß "
-`a 9,10 0 0340
-à "
-'a 9,10 0 0341
-á "
-^a 9,10 0 0342
-â "
-~a 9,10 0 0343
-ã "
-:a 9,10 0 0344
-ä "
-oa 9,10 0 0345
-å "
-ae 9,7 0 0346
-æ "
-,c 9,7,4 0 0347
-ç "
-`e 9,10 0 0350
-è "
-'e 9,10 0 0351
-é "
-^e 9,10 0 0352
-ê "
-:e 9,10 0 0353
-ë "
-`i 9,10 0 0354
-ì "
-'i 9,10 0 0355
-í "
-^i 9,10 0 0356
-î "
-:i 9,10 0 0357
-ï "
-Sd 9,10 0 0360
-ð "
-~n 9,10 0 0361
-ñ "
-`o 9,10 0 0362
-ò "
-'o 9,10 0 0363
-ó "
-^o 9,10 0 0364
-ô "
-~o 9,10 0 0365
-õ "
-:o 9,10 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 9,8 0 0370
-ø "
-`u 9,10 0 0371
-ù "
-'u 9,10 0 0372
-ú "
-^u 9,10 0 0373
-û "
-:u 9,10 0 0374
-ü "
-'y 9,10,3 0 0375
-ý "
-Tp 9,9,3 0 0376
-þ "
-:y 9,10,3 0 0377
-ÿ "
diff --git a/devhtml/CI b/devhtml/CI
deleted file mode 100644
index 6b26256be..000000000
--- a/devhtml/CI
+++ /dev/null
@@ -1,306 +0,0 @@
-name CI
-spacewidth 9
-charset
---- 9,1 0 040
-! 9,9 0 041
-" 9,10 0 042
-# 9,10,1 0 043
-sh "
-$ 9,10,1 0 044
-Do "
-% 9,10 0 045
-& 9,8 0 046
-' 9,10 0 047
-( 9,10,3 0 050
-) 9,10,3 0 051
-* 9,9 0 052
-+ 9,8 0 053
-, 9,2,2 0 054
-\- 9,5 0 055
-. 9,2 0 056
-/ 9,10,2 0 057
-sl "
-0 9,10 0 060
-1 9,10 0 061
-2 9,10 0 062
-3 9,10 0 063
-4 9,10 0 064
-5 9,10 0 065
-6 9,10 0 066
-7 9,10 0 067
-8 9,10 0 070
-9 9,10 0 071
-: 9,7 0 072
-; 9,7,2 0 073
-< 9,8 0 074
-= 9,6 0 075
-eq "
-> 9,8 0 076
-? 9,9 0 077
-@ 9,9 0 0100
-at "
-A 9,9 0 0101
-B 9,9 0 0102
-C 9,9 0 0103
-D 9,9 0 0104
-E 9,9 0 0105
-F 9,9 0 0106
-G 9,9 0 0107
-H 9,9 0 0110
-I 9,9 0 0111
-J 9,9 0 0112
-K 9,9 0 0113
-L 9,9 0 0114
-M 9,9 0 0115
-N 9,9 0 0116
-O 9,9 0 0117
-P 9,9 0 0120
-Q 9,9,2 0 0121
-R 9,9 0 0122
-S 9,9 0 0123
-T 9,9 0 0124
-U 9,9 0 0125
-V 9,9 0 0126
-W 9,9 0 0127
-X 9,9 0 0130
-Y 9,9 0 0131
-Z 9,9 0 0132
-[ 9,10,3 0 0133
-lB "
-\ 9,10,2 0 0134
-rs "
-] 9,10,3 0 0135
-rB "
-^ 9,9 0 0136
-a^ "
-ha "
-_ 9,0,3 0 0137
-` 9,10 0 0140
-oq "
-a 9,7 0 0141
-b 9,10 0 0142
-c 9,7 0 0143
-d 9,10 0 0144
-e 9,7 0 0145
-f 9,10 0 0146
-g 9,7,3 0 0147
-h 9,10 0 0150
-i 9,10 0 0151
-j 9,10,3 0 0152
-k 9,10 0 0153
-l 9,10 0 0154
-m 9,7 0 0155
-n 9,7 0 0156
-o 9,7 0 0157
-p 9,7,3 0 0160
-q 9,7,3 0 0161
-r 9,7 0 0162
-s 9,7 0 0163
-t 9,9 0 0164
-u 9,7 0 0165
-v 9,7 0 0166
-w 9,7 0 0167
-x 9,7 0 0170
-y 9,7,3 0 0171
-z 9,7 0 0172
-{ 9,10,3 0 0173
-lC "
-| 9,9,2 0 0174
-or "
-ba "
-} 9,10,3 0 0175
-rC "
-~ 9,5 0 0176
-a~ "
-ap "
-ti "
-r! 9,7,2 0 0241
-¡ "
-ct 9,10 0 0242
-¢ "
-Po 9,9 0 0243
-£ "
-Cs 9,7 0 0244
-¤ "
-Ye 9,9 0 0245
-¥ "
-bb 9,9,2 0 0246
-¦ "
-sc 9,9,1 0 0247
-§ "
-ad 9,9 0 0250
-¨ "
-co 9,9 0 0251
-© "
-Of 9,9 0 0252
-ª "
-Fo 9,7 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 9,5 0 055
-hy "
-­ "
-rg 9,9 0 0256
-® "
-a- 9,9 0 0257
-¯ "
-de 9,10 0 0260
-° "
-+- 9,8 0 0261
-± "
-S2 9,10 0 0262
-² "
-S3 9,10 0 0263
-³ "
-aa 9,9 0 0264
-´ "
-µ 9,7,3 0 0265
-ps 9,9,1 0 0266
-¶ "
-md 9,5 0 0267
-· "
-ac 9,1,3 0 0270
-¸ "
-S1 9,10 0 0271
-¹ "
-Om 9,9 0 0272
-º "
-Fc 9,7 0 0273
-» "
-14 9,10 0 0274
-¼ "
-12 9,10 0 0275
-½ "
-34 9,10 0 0276
-¾ "
-r? 9,7,2 0 0277
-¿ "
-`A 9,12 0 0300
-À "
-'A 9,12 0 0301
-Á "
-^A 9,12 0 0302
-Â "
-~A 9,12 0 0303
-Ã "
-:A 9,11 0 0304
-Ä "
-oA 9,12 0 0305
-Å "
-AE 9,9 0 0306
-Æ "
-,C 9,9,3 0 0307
-Ç "
-`E 9,12 0 0310
-È "
-'E 9,12 0 0311
-É "
-^E 9,12 0 0312
-Ê "
-:E 9,11 0 0313
-Ë "
-`I 9,12 0 0314
-Ì "
-'I 9,12 0 0315
-Í "
-^I 9,12 0 0316
-Î "
-:I 9,11 0 0317
-Ï "
--D 9,9 0 0320
-Ð "
-~N 9,12 0 0321
-Ñ "
-`O 9,12 0 0322
-Ò "
-'O 9,12 0 0323
-Ó "
-^O 9,12 0 0324
-Ô "
-~O 9,12 0 0325
-Õ "
-:O 9,11 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 9,9 0 0330
-Ø "
-`U 9,12 0 0331
-Ù "
-'U 9,12 0 0332
-Ú "
-^U 9,12 0 0333
-Û "
-:U 9,11 0 0334
-Ü "
-'Y 9,12 0 0335
-Ý "
-TP 9,9 0 0336
-Þ "
-ss 9,9 0 0337
-ß "
-`a 9,10 0 0340
-à "
-'a 9,10 0 0341
-á "
-^a 9,10 0 0342
-â "
-~a 9,10 0 0343
-ã "
-:a 9,9 0 0344
-ä "
-oa 9,11 0 0345
-å "
-ae 9,7 0 0346
-æ "
-,c 9,7,3 0 0347
-ç "
-`e 9,10 0 0350
-è "
-'e 9,10 0 0351
-é "
-^e 9,10 0 0352
-ê "
-:e 9,9 0 0353
-ë "
-`i 9,10 0 0354
-ì "
-'i 9,10 0 0355
-í "
-^i 9,10 0 0356
-î "
-:i 9,9 0 0357
-ï "
-Sd 9,10 0 0360
-ð "
-~n 9,10 0 0361
-ñ "
-`o 9,10 0 0362
-ò "
-'o 9,10 0 0363
-ó "
-^o 9,10 0 0364
-ô "
-~o 9,10 0 0365
-õ "
-:o 9,9 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 9,7 0 0370
-ø "
-`u 9,10 0 0371
-ù "
-'u 9,10 0 0372
-ú "
-^u 9,10 0 0373
-û "
-:u 9,9 0 0374
-ü "
-'y 9,10,3 0 0375
-ý "
-Tp 9,9,3 0 0376
-þ "
-:y 9,9,3 0 0377
-ÿ "
diff --git a/devhtml/CR b/devhtml/CR
deleted file mode 100644
index d8020a1b5..000000000
--- a/devhtml/CR
+++ /dev/null
@@ -1,306 +0,0 @@
-name CR
-spacewidth 9
-charset
---- 9,1 0 040
-! 9,9 0 041
-" 9,10 0 042
-# 9,9,1 0 043
-sh "
-$ 9,11,2 0 044
-Do "
-% 9,10 0 045
-& 9,8 0 046
-' 9,10 0 047
-( 9,10,2 0 050
-) 9,10,2 0 051
-* 9,9 0 052
-+ 9,8 0 053
-, 9,2,2 0 054
-\- 9,5 0 055
-. 9,2 0 056
-/ 9,10,1 0 057
-sl "
-0 9,10 0 060
-1 9,10 0 061
-2 9,10 0 062
-3 9,10 0 063
-4 9,10 0 064
-5 9,10 0 065
-6 9,10 0 066
-7 9,10 0 067
-8 9,10 0 070
-9 9,10 0 071
-: 9,7 0 072
-; 9,7,2 0 073
-< 9,8 0 074
-= 9,6 0 075
-eq "
-> 9,8 0 076
-? 9,9 0 077
-@ 9,9,1 0 0100
-at "
-A 9,9 0 0101
-B 9,9 0 0102
-C 9,9 0 0103
-D 9,9 0 0104
-E 9,9 0 0105
-F 9,9 0 0106
-G 9,9 0 0107
-H 9,9 0 0110
-I 9,9 0 0111
-J 9,9 0 0112
-K 9,9 0 0113
-L 9,9 0 0114
-M 9,9 0 0115
-N 9,9 0 0116
-O 9,9 0 0117
-P 9,9 0 0120
-Q 9,9,2 0 0121
-R 9,9 0 0122
-S 9,9 0 0123
-T 9,9 0 0124
-U 9,9 0 0125
-V 9,9 0 0126
-W 9,9 0 0127
-X 9,9 0 0130
-Y 9,9 0 0131
-Z 9,9 0 0132
-[ 9,10,2 0 0133
-lB "
-\ 9,10,1 0 0134
-rs "
-] 9,10,2 0 0135
-rB "
-^ 9,9 0 0136
-a^ "
-ha "
-_ 9,0,3 0 0137
-` 9,10 0 0140
-oq "
-a 9,7 0 0141
-b 9,10 0 0142
-c 9,7 0 0143
-d 9,10 0 0144
-e 9,7 0 0145
-f 9,10 0 0146
-g 9,7,3 0 0147
-h 9,10 0 0150
-i 9,10 0 0151
-j 9,10,3 0 0152
-k 9,10 0 0153
-l 9,10 0 0154
-m 9,7 0 0155
-n 9,7 0 0156
-o 9,7 0 0157
-p 9,7,3 0 0160
-q 9,7,3 0 0161
-r 9,7 0 0162
-s 9,7 0 0163
-t 9,9 0 0164
-u 9,7 0 0165
-v 9,7 0 0166
-w 9,7 0 0167
-x 9,7 0 0170
-y 9,7,3 0 0171
-z 9,7 0 0172
-{ 9,10,2 0 0173
-lC "
-| 9,9,2 0 0174
-or "
-ba "
-} 9,10,2 0 0175
-rC "
-~ 9,5 0 0176
-a~ "
-ap "
-ti "
-r! 9,7,2 0 0241
-¡ "
-ct 9,9 0 0242
-¢ "
-Po 9,9 0 0243
-£ "
-Cs 9,7 0 0244
-¤ "
-Ye 9,9 0 0245
-¥ "
-bb 9,9,2 0 0246
-¦ "
-sc 9,9,1 0 0247
-§ "
-ad 9,9 0 0250
-¨ "
-co 9,9 0 0251
-© "
-Of 9,9 0 0252
-ª "
-Fo 9,7 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 9,5 0 055
-hy "
-­ "
-rg 9,9 0 0256
-® "
-a- 9,9 0 0257
-¯ "
-de 9,10 0 0260
-° "
-+- 9,8 0 0261
-± "
-S2 9,10 0 0262
-² "
-S3 9,10 0 0263
-³ "
-aa 9,10 0 0264
-´ "
-µ 9,7,3 0 0265
-ps 9,9,1 0 0266
-¶ "
-md 9,5 0 0267
-· "
-ac 9,0,3 0 0270
-¸ "
-S1 9,10 0 0271
-¹ "
-Om 9,9 0 0272
-º "
-Fc 9,7 0 0273
-» "
-14 9,10 0 0274
-¼ "
-12 9,10 0 0275
-½ "
-34 9,10 0 0276
-¾ "
-r? 9,7,2 0 0277
-¿ "
-`A 9,12 0 0300
-À "
-'A 9,12 0 0301
-Á "
-^A 9,12 0 0302
-Â "
-~A 9,12 0 0303
-Ã "
-:A 9,11 0 0304
-Ä "
-oA 9,12 0 0305
-Å "
-AE 9,9 0 0306
-Æ "
-,C 9,9,3 0 0307
-Ç "
-`E 9,12 0 0310
-È "
-'E 9,12 0 0311
-É "
-^E 9,12 0 0312
-Ê "
-:E 9,11 0 0313
-Ë "
-`I 9,12 0 0314
-Ì "
-'I 9,12 0 0315
-Í "
-^I 9,12 0 0316
-Î "
-:I 9,11 0 0317
-Ï "
--D 9,9 0 0320
-Ð "
-~N 9,12 0 0321
-Ñ "
-`O 9,12 0 0322
-Ò "
-'O 9,12 0 0323
-Ó "
-^O 9,12 0 0324
-Ô "
-~O 9,12 0 0325
-Õ "
-:O 9,11 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 9,9 0 0330
-Ø "
-`U 9,12 0 0331
-Ù "
-'U 9,12 0 0332
-Ú "
-^U 9,12 0 0333
-Û "
-:U 9,11 0 0334
-Ü "
-'Y 9,12 0 0335
-Ý "
-TP 9,9 0 0336
-Þ "
-ss 9,9 0 0337
-ß "
-`a 9,10 0 0340
-à "
-'a 9,10 0 0341
-á "
-^a 9,10 0 0342
-â "
-~a 9,10 0 0343
-ã "
-:a 9,9 0 0344
-ä "
-oa 9,10 0 0345
-å "
-ae 9,7 0 0346
-æ "
-,c 9,7,3 0 0347
-ç "
-`e 9,10 0 0350
-è "
-'e 9,10 0 0351
-é "
-^e 9,10 0 0352
-ê "
-:e 9,9 0 0353
-ë "
-`i 9,10 0 0354
-ì "
-'i 9,10 0 0355
-í "
-^i 9,10 0 0356
-î "
-:i 9,9 0 0357
-ï "
-Sd 9,12 0 0360
-ð "
-~n 9,10 0 0361
-ñ "
-`o 9,10 0 0362
-ò "
-'o 9,10 0 0363
-ó "
-^o 9,10 0 0364
-ô "
-~o 9,10 0 0365
-õ "
-:o 9,9 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 9,7 0 0370
-ø "
-`u 9,10 0 0371
-ù "
-'u 9,10 0 0372
-ú "
-^u 9,10 0 0373
-û "
-:u 9,9 0 0374
-ü "
-'y 9,10,3 0 0375
-ý "
-Tp 9,9,3 0 0376
-þ "
-:y 9,9,3 0 0377
-ÿ "
diff --git a/devhtml/HB b/devhtml/HB
deleted file mode 100644
index 06f2bf95f..000000000
--- a/devhtml/HB
+++ /dev/null
@@ -1,306 +0,0 @@
-name HB
-spacewidth 4
-charset
---- 4,1 0 040
-! 4,11 0 041
-" 7,11 0 042
-# 9,10 0 043
-sh "
-$ 8,12,2 0 044
-Do "
-% 13,11 0 045
-& 11,10 0 046
-' 5,11 0 047
-( 5,11,3 0 050
-) 5,11,3 0 051
-* 6,11 0 052
-+ 9,8 0 053
-, 4,2,1 0 054
-\- 9,5 0 055
-. 4,2 0 056
-/ 4,11 0 057
-sl "
-0 8,11 0 060
-1 8,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 5,8 0 072
-; 5,8,1 0 073
-< 8,7 0 074
-= 9,6 0 075
-eq "
-> 8,7 0 076
-? 9,11 0 077
-@ 14,11,1 0 0100
-at "
-A 10,11 0 0101
-B 10,11 0 0102
-C 11,11 0 0103
-D 11,11 0 0104
-E 9,11 0 0105
-F 9,11 0 0106
-G 11,11 0 0107
-H 10,11 0 0110
-I 4,11 0 0111
-J 8,11 0 0112
-K 10,11 0 0113
-L 8,11 0 0114
-M 13,11 0 0115
-N 11,11 0 0116
-O 12,11 0 0117
-P 10,11 0 0120
-Q 12,11 0 0121
-R 11,11 0 0122
-S 10,11 0 0123
-T 8,11 0 0124
-U 11,11 0 0125
-V 10,11 0 0126
-W 14,11 0 0127
-X 9,11 0 0130
-Y 10,11 0 0131
-Z 9,11 0 0132
-[ 5,11,3 0 0133
-lB "
-\ 4,11 0 0134
-rs "
-] 5,11,3 0 0135
-rB "
-^ 8,11 0 0136
-a^ "
-ha "
-_ 8,0,3 0 0137
-` 5,11 0 0140
-oq "
-a 8,8 0 0141
-b 9,11 0 0142
-c 8,8 0 0143
-d 9,11 0 0144
-e 8,8 0 0145
-f 4,11 0 0146
-g 9,8,3 0 0147
-h 9,11 0 0150
-i 4,11 0 0151
-j 4,11,3 0 0152
-k 8,11 0 0153
-l 4,11 0 0154
-m 12,8 0 0155
-n 9,8 0 0156
-o 9,8 0 0157
-p 9,8,3 0 0160
-q 9,8,3 0 0161
-r 6,8 0 0162
-s 8,8 0 0163
-t 5,10 0 0164
-u 9,8 0 0165
-v 8,8 0 0166
-w 10,8 0 0167
-x 7,8 0 0170
-y 8,8,3 0 0171
-z 6,8 0 0172
-{ 6,11,3 0 0173
-lC "
-| 4,11,3 0 0174
-or "
-ba "
-} 6,11,3 0 0175
-rC "
-~ 9,6 0 0176
-a~ "
-ap "
-ti "
-r! 4,8,3 0 0241
-¡ "
-ct 8,9,1 0 0242
-¢ "
-Po 8,11 0 0243
-£ "
-Cs 8,9 0 0244
-¤ "
-Ye 9,11 0 0245
-¥ "
-bb 4,11,3 0 0246
-¦ "
-sc 8,11,3 0 0247
-§ "
-ad 5,11 0 0250
-¨ "
-co 12,11 0 0251
-© "
-Of 6,11 0 0252
-ª "
-Fo 9,7 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 4,5 0 055
-hy "
-­ "
-rg 12,11 0 0256
-® "
-a- 5,10 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 9,9 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 5,11 0 0264
-´ "
-µ 9,8,3 0 0265
-ps 8,11,3 0 0266
-¶ "
-md 4,5 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 4,11 0 0271
-¹ "
-Om 6,11 0 0272
-º "
-Fc 9,7 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 12,11 0 0276
-¾ "
-r? 9,8,3 0 0277
-¿ "
-`A 10,14 0 0300
-À "
-'A 10,14 0 0301
-Á "
-^A 10,14 0 0302
-Â "
-~A 10,14 0 0303
-Ã "
-:A 10,14 0 0304
-Ä "
-oA 10,14 0 0305
-Å "
-AE 15,11 0 0306
-Æ "
-,C 11,11,3 0 0307
-Ç "
-`E 9,14 0 0310
-È "
-'E 9,14 0 0311
-É "
-^E 9,14 0 0312
-Ê "
-:E 9,14 0 0313
-Ë "
-`I 4,14 0 0314
-Ì "
-'I 4,14 0 0315
-Í "
-^I 4,14 0 0316
-Î "
-:I 4,14 0 0317
-Ï "
--D 11,11 0 0320
-Ð "
-~N 11,14 0 0321
-Ñ "
-`O 12,14 0 0322
-Ò "
-'O 12,14 0 0323
-Ó "
-^O 12,14 0 0324
-Ô "
-~O 12,14 0 0325
-Õ "
-:O 12,14 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 12,11 0 0330
-Ø "
-`U 11,14 0 0331
-Ù "
-'U 11,14 0 0332
-Ú "
-^U 11,14 0 0333
-Û "
-:U 11,14 0 0334
-Ü "
-'Y 10,14 0 0335
-Ý "
-TP 10,11 0 0336
-Þ "
-ss 8,11 0 0337
-ß "
-`a 8,11 0 0340
-à "
-'a 8,11 0 0341
-á "
-^a 8,11 0 0342
-â "
-~a 8,11 0 0343
-ã "
-:a 8,11 0 0344
-ä "
-oa 8,11 0 0345
-å "
-ae 13,8 0 0346
-æ "
-,c 9,8,3 0 0347
-ç "
-`e 8,11 0 0350
-è "
-'e 8,11 0 0351
-é "
-^e 8,11 0 0352
-ê "
-:e 8,11 0 0353
-ë "
-`i 4,11 0 0354
-ì "
-'i 4,11 0 0355
-í "
-^i 4,11 0 0356
-î "
-:i 4,11 0 0357
-ï "
-Sd 9,11 0 0360
-ð "
-~n 9,11 0 0361
-ñ "
-`o 9,11 0 0362
-ò "
-'o 9,11 0 0363
-ó "
-^o 9,11 0 0364
-ô "
-~o 9,11 0 0365
-õ "
-:o 9,11 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 9,8 0 0370
-ø "
-`u 9,11 0 0371
-ù "
-'u 9,11 0 0372
-ú "
-^u 9,11 0 0373
-û "
-:u 9,11 0 0374
-ü "
-'y 8,11,3 0 0375
-ý "
-Tp 9,11,3 0 0376
-þ "
-:y 8,11,3 0 0377
-ÿ "
diff --git a/devhtml/HBI b/devhtml/HBI
deleted file mode 100644
index bb2031a06..000000000
--- a/devhtml/HBI
+++ /dev/null
@@ -1,306 +0,0 @@
-name HBI
-spacewidth 4
-charset
---- 4,1 0 040
-! 5,11 0 041
-" 7,11 0 042
-# 10,10 0 043
-sh "
-$ 8,12,1 0 044
-Do "
-% 13,11 0 045
-& 11,10 0 046
-' 5,11 0 047
-( 5,11,3 0 050
-) 6,11,3 0 051
-* 6,11 0 052
-+ 9,8 0 053
-, 4,2,2 0 054
-\- 9,5 0 055
-. 4,2 0 056
-/ 4,11 0 057
-sl "
-0 8,11 0 060
-1 8,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 5,8 0 072
-; 5,8,2 0 073
-< 8,7 0 074
-= 9,6 0 075
-eq "
-> 9,7 0 076
-? 9,11 0 077
-@ 14,11,2 0 0100
-at "
-A 9,11 0 0101
-B 10,11 0 0102
-C 11,11 0 0103
-D 11,11 0 0104
-E 9,11 0 0105
-F 8,11 0 0106
-G 11,11 0 0107
-H 10,11 0 0110
-I 4,11 0 0111
-J 8,11 0 0112
-K 10,11 0 0113
-L 8,11 0 0114
-M 13,11 0 0115
-N 11,11 0 0116
-O 12,11 0 0117
-P 10,11 0 0120
-Q 12,11 0 0121
-R 10,11 0 0122
-S 10,11 0 0123
-T 8,11 0 0124
-U 11,11 0 0125
-V 10,11 0 0126
-W 14,11 0 0127
-X 9,11 0 0130
-Y 10,11 0 0131
-Z 9,11 0 0132
-[ 5,11,3 0 0133
-lB "
-\ 6,11 0 0134
-rs "
-] 5,11,3 0 0135
-rB "
-^ 8,11 0 0136
-a^ "
-ha "
-_ 8,0,3 0 0137
-` 5,11 0 0140
-oq "
-a 8,8 0 0141
-b 9,11 0 0142
-c 8,8 0 0143
-d 9,11 0 0144
-e 8,8 0 0145
-f 5,11 0 0146
-g 9,8,3 0 0147
-h 9,11 0 0150
-i 4,11 0 0151
-j 4,11,3 0 0152
-k 8,11 0 0153
-l 4,11 0 0154
-m 12,8 0 0155
-n 9,8 0 0156
-o 8,8 0 0157
-p 9,8,3 0 0160
-q 9,8,3 0 0161
-r 6,8 0 0162
-s 8,8 0 0163
-t 5,10 0 0164
-u 9,8 0 0165
-v 8,8 0 0166
-w 11,8 0 0167
-x 7,8 0 0170
-y 7,8,3 0 0171
-z 6,8 0 0172
-{ 6,11,3 0 0173
-lC "
-| 4,11,3 0 0174
-or "
-ba "
-} 6,11,3 0 0175
-rC "
-~ 9,6 0 0176
-a~ "
-ap "
-ti "
-r! 5,8,3 0 0241
-¡ "
-ct 8,9,1 0 0242
-¢ "
-Po 9,11 0 0243
-£ "
-Cs 9,8 0 0244
-¤ "
-Ye 9,11 0 0245
-¥ "
-bb 4,11,3 0 0246
-¦ "
-sc 9,11,3 0 0247
-§ "
-ad 5,11 0 0250
-¨ "
-co 12,11 0 0251
-© "
-Of 6,11 0 0252
-ª "
-Fo 11,7 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 5,5 0 055
-hy "
-­ "
-rg 12,11 0 0256
-® "
-a- 5,11 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 9,9 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 5,11 0 0264
-´ "
-µ 9,8,3 0 0265
-ps 8,11,3 0 0266
-¶ "
-md 4,5 0 0267
-· "
-ac 5,1,3 0 0270
-¸ "
-S1 5,11 0 0271
-¹ "
-Om 6,11 0 0272
-º "
-Fc 11,7 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 13,11 0 0276
-¾ "
-r? 8,8,3 0 0277
-¿ "
-`A 9,14 0 0300
-À "
-'A 9,14 0 0301
-Á "
-^A 9,14 0 0302
-Â "
-~A 9,14 0 0303
-Ã "
-:A 9,14 0 0304
-Ä "
-oA 9,14 0 0305
-Å "
-AE 14,11 0 0306
-Æ "
-,C 11,11,3 0 0307
-Ç "
-`E 9,14 0 0310
-È "
-'E 9,14 0 0311
-É "
-^E 9,14 0 0312
-Ê "
-:E 9,14 0 0313
-Ë "
-`I 4,14 0 0314
-Ì "
-'I 4,14 0 0315
-Í "
-^I 4,14 0 0316
-Î "
-:I 4,14 0 0317
-Ï "
--D 11,11 0 0320
-Ð "
-~N 11,14 0 0321
-Ñ "
-`O 12,14 0 0322
-Ò "
-'O 12,14 0 0323
-Ó "
-^O 12,14 0 0324
-Ô "
-~O 12,14 0 0325
-Õ "
-:O 12,14 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 12,11 0 0330
-Ø "
-`U 11,14 0 0331
-Ù "
-'U 11,14 0 0332
-Ú "
-^U 11,14 0 0333
-Û "
-:U 11,14 0 0334
-Ü "
-'Y 10,14 0 0335
-Ý "
-TP 10,11 0 0336
-Þ "
-ss 9,11 0 0337
-ß "
-`a 8,11 0 0340
-à "
-'a 8,11 0 0341
-á "
-^a 8,11 0 0342
-â "
-~a 8,11 0 0343
-ã "
-:a 8,11 0 0344
-ä "
-oa 8,11 0 0345
-å "
-ae 13,8 0 0346
-æ "
-,c 8,8,3 0 0347
-ç "
-`e 8,11 0 0350
-è "
-'e 8,11 0 0351
-é "
-^e 8,11 0 0352
-ê "
-:e 8,11 0 0353
-ë "
-`i 4,11 0 0354
-ì "
-'i 4,11 0 0355
-í "
-^i 4,11 0 0356
-î "
-:i 4,11 0 0357
-ï "
-Sd 8,11 0 0360
-ð "
-~n 9,11 0 0361
-ñ "
-`o 8,11 0 0362
-ò "
-'o 8,11 0 0363
-ó "
-^o 8,11 0 0364
-ô "
-~o 8,11 0 0365
-õ "
-:o 8,11 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 8,8 0 0370
-ø "
-`u 9,11 0 0371
-ù "
-'u 9,11 0 0372
-ú "
-^u 9,11 0 0373
-û "
-:u 9,11 0 0374
-ü "
-'y 7,11,3 0 0375
-ý "
-Tp 9,11,3 0 0376
-þ "
-:y 7,11,3 0 0377
-ÿ "
diff --git a/devhtml/HI b/devhtml/HI
deleted file mode 100644
index 1c66db735..000000000
--- a/devhtml/HI
+++ /dev/null
@@ -1,306 +0,0 @@
-name HI
-spacewidth 4
-charset
---- 4,1 0 040
-! 4,11 0 041
-" 5,11 0 042
-# 9,10 0 043
-sh "
-$ 8,12,2 0 044
-Do "
-% 12,11 0 045
-& 10,10 0 046
-' 3,11 0 047
-( 5,11,3 0 050
-) 5,11,3 0 051
-* 8,11 0 052
-+ 9,8 0 053
-, 3,2,2 0 054
-\- 9,5 0 055
-. 3,2 0 056
-/ 4,11 0 057
-sl "
-0 8,11 0 060
-1 8,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 4,8 0 072
-; 4,8,2 0 073
-< 9,7 0 074
-= 9,6 0 075
-eq "
-> 9,7 0 076
-? 8,11 0 077
-@ 13,11,1 0 0100
-at "
-A 11,11 0 0101
-B 10,11 0 0102
-C 10,11 0 0103
-D 10,11 0 0104
-E 9,11 0 0105
-F 9,11 0 0106
-G 11,11 0 0107
-H 11,11 0 0110
-I 5,11 0 0111
-J 9,11 0 0112
-K 10,11 0 0113
-L 8,11 0 0114
-M 14,11 0 0115
-N 11,11 0 0116
-O 11,11 0 0117
-P 9,11 0 0120
-Q 11,11 0 0121
-R 10,11 0 0122
-S 9,11 0 0123
-T 8,11 0 0124
-U 11,11 0 0125
-V 11,11 0 0126
-W 14,11 0 0127
-X 10,11 0 0130
-Y 9,11 0 0131
-Z 9,11 0 0132
-[ 5,11,3 0 0133
-lB "
-\ 6,11 0 0134
-rs "
-] 5,11,3 0 0135
-rB "
-^ 7,11 0 0136
-a^ "
-ha "
-_ 8,0,3 0 0137
-` 3,11 0 0140
-oq "
-a 8,8 0 0141
-b 8,11 0 0142
-c 7,8 0 0143
-d 8,11 0 0144
-e 8,8 0 0145
-f 4,11 0 0146
-g 8,8,3 0 0147
-h 8,11 0 0150
-i 4,11 0 0151
-j 3,11,3 0 0152
-k 7,11 0 0153
-l 3,11 0 0154
-m 11,8 0 0155
-n 8,8 0 0156
-o 8,8 0 0157
-p 8,8,3 0 0160
-q 8,8,3 0 0161
-r 5,8 0 0162
-s 7,8 0 0163
-t 4,10 0 0164
-u 8,8 0 0165
-v 7,8 0 0166
-w 10,8 0 0167
-x 7,8 0 0170
-y 7,8,3 0 0171
-z 7,8 0 0172
-{ 5,11,3 0 0173
-lC "
-| 4,11,3 0 0174
-or "
-ba "
-} 5,11,3 0 0175
-rC "
-~ 8,6 0 0176
-a~ "
-ap "
-ti "
-r! 4,8,3 0 0241
-¡ "
-ct 8,9,1 0 0242
-¢ "
-Po 9,11 0 0243
-£ "
-Cs 8,8 0 0244
-¤ "
-Ye 9,11 0 0245
-¥ "
-bb 4,11,3 0 0246
-¦ "
-sc 8,11,3 0 0247
-§ "
-ad 5,10 0 0250
-¨ "
-co 12,11 0 0251
-© "
-Of 5,11 0 0252
-ª "
-Fo 8,6 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 5,5 0 055
-hy "
-­ "
-rg 12,11 0 0256
-® "
-a- 4,10 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 9,9 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 4,11 0 0264
-´ "
-µ 8,8,3 0 0265
-ps 8,11,3 0 0266
-¶ "
-md 4,5 0 0267
-· "
-ac 3,0,3 0 0270
-¸ "
-S1 5,11 0 0271
-¹ "
-Om 5,11 0 0272
-º "
-Fc 8,6 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 12,11 0 0276
-¾ "
-r? 8,8,3 0 0277
-¿ "
-`A 11,14 0 0300
-À "
-'A 11,14 0 0301
-Á "
-^A 11,14 0 0302
-Â "
-~A 11,14 0 0303
-Ã "
-:A 11,13 0 0304
-Ä "
-oA 11,14 0 0305
-Å "
-AE 15,11 0 0306
-Æ "
-,C 10,11,3 0 0307
-Ç "
-`E 9,14 0 0310
-È "
-'E 9,14 0 0311
-É "
-^E 9,14 0 0312
-Ê "
-:E 9,13 0 0313
-Ë "
-`I 5,14 0 0314
-Ì "
-'I 5,14 0 0315
-Í "
-^I 5,14 0 0316
-Î "
-:I 5,13 0 0317
-Ï "
--D 10,11 0 0320
-Ð "
-~N 11,14 0 0321
-Ñ "
-`O 11,14 0 0322
-Ò "
-'O 11,14 0 0323
-Ó "
-^O 11,14 0 0324
-Ô "
-~O 11,14 0 0325
-Õ "
-:O 11,13 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 11,11 0 0330
-Ø "
-`U 11,14 0 0331
-Ù "
-'U 11,14 0 0332
-Ú "
-^U 11,14 0 0333
-Û "
-:U 11,13 0 0334
-Ü "
-'Y 9,14 0 0335
-Ý "
-TP 9,11 0 0336
-Þ "
-ss 8,11 0 0337
-ß "
-`a 8,11 0 0340
-à "
-'a 8,11 0 0341
-á "
-^a 8,11 0 0342
-â "
-~a 8,11 0 0343
-ã "
-:a 8,11 0 0344
-ä "
-oa 8,11 0 0345
-å "
-ae 12,8 0 0346
-æ "
-,c 7,8,3 0 0347
-ç "
-`e 8,11 0 0350
-è "
-'e 8,11 0 0351
-é "
-^e 8,11 0 0352
-ê "
-:e 8,11 0 0353
-ë "
-`i 3,11 0 0354
-ì "
-'i 3,11 0 0355
-í "
-^i 3,11 0 0356
-î "
-:i 3,11 0 0357
-ï "
-Sd 8,11 0 0360
-ð "
-~n 8,11 0 0361
-ñ "
-`o 8,11 0 0362
-ò "
-'o 8,11 0 0363
-ó "
-^o 8,11 0 0364
-ô "
-~o 8,11 0 0365
-õ "
-:o 8,11 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 8,9,1 0 0370
-ø "
-`u 8,11 0 0371
-ù "
-'u 8,11 0 0372
-ú "
-^u 8,11 0 0373
-û "
-:u 8,11 0 0374
-ü "
-'y 7,11,3 0 0375
-ý "
-Tp 8,11,3 0 0376
-þ "
-:y 7,11,3 0 0377
-ÿ "
diff --git a/devhtml/HR b/devhtml/HR
deleted file mode 100644
index 756ef7112..000000000
--- a/devhtml/HR
+++ /dev/null
@@ -1,306 +0,0 @@
-name HR
-spacewidth 4
-charset
---- 4,1 0 040
-! 4,11 0 041
-" 5,11 0 042
-# 8,10 0 043
-sh "
-$ 8,12,2 0 044
-Do "
-% 12,11 0 045
-& 10,10 0 046
-' 3,11 0 047
-( 5,11,3 0 050
-) 5,11,3 0 051
-* 7,11 0 052
-+ 9,8 0 053
-, 3,2,2 0 054
-\- 9,5 0 055
-. 3,2 0 056
-/ 4,11 0 057
-sl "
-0 8,11 0 060
-1 8,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 3,8 0 072
-; 4,8,2 0 073
-< 8,7 0 074
-= 9,6 0 075
-eq "
-> 8,7 0 076
-? 8,11 0 077
-@ 13,11,1 0 0100
-at "
-A 9,11 0 0101
-B 9,11 0 0102
-C 10,11 0 0103
-D 10,11 0 0104
-E 9,11 0 0105
-F 8,11 0 0106
-G 11,11 0 0107
-H 10,11 0 0110
-I 4,11 0 0111
-J 7,11 0 0112
-K 9,11 0 0113
-L 8,11 0 0114
-M 12,11 0 0115
-N 10,11 0 0116
-O 11,11 0 0117
-P 9,11 0 0120
-Q 11,11 0 0121
-R 10,11 0 0122
-S 9,11 0 0123
-T 9,11 0 0124
-U 10,11 0 0125
-V 9,11 0 0126
-W 13,11 0 0127
-X 9,11 0 0130
-Y 9,11 0 0131
-Z 9,11 0 0132
-[ 4,11,3 0 0133
-lB "
-\ 4,11 0 0134
-rs "
-] 4,11,3 0 0135
-rB "
-^ 7,11 0 0136
-a^ "
-ha "
-_ 8,0,3 0 0137
-` 3,11 0 0140
-oq "
-a 8,8 0 0141
-b 7,11 0 0142
-c 7,8 0 0143
-d 8,11 0 0144
-e 8,8 0 0145
-f 4,11 0 0146
-g 8,8,3 0 0147
-h 8,11 0 0150
-i 3,11 0 0151
-j 3,11,3 0 0152
-k 7,11 0 0153
-l 3,11 0 0154
-m 11,8 0 0155
-n 8,8 0 0156
-o 8,8 0 0157
-p 8,8,3 0 0160
-q 8,8,3 0 0161
-r 5,8 0 0162
-s 7,8 0 0163
-t 4,10 0 0164
-u 7,8 0 0165
-v 7,8 0 0166
-w 10,8 0 0167
-x 7,8 0 0170
-y 7,8,3 0 0171
-z 7,8 0 0172
-{ 5,11,3 0 0173
-lC "
-| 3,11,3 0 0174
-or "
-ba "
-} 5,11,3 0 0175
-rC "
-~ 8,6 0 0176
-a~ "
-ap "
-ti "
-r! 4,8,3 0 0241
-¡ "
-ct 8,9,1 0 0242
-¢ "
-Po 8,11 0 0243
-£ "
-Cs 8,8 0 0244
-¤ "
-Ye 7,11 0 0245
-¥ "
-bb 3,11,3 0 0246
-¦ "
-sc 8,11,3 0 0247
-§ "
-ad 5,10 0 0250
-¨ "
-co 12,11 0 0251
-© "
-Of 6,11 0 0252
-ª "
-Fo 8,7 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 4,5 0 055
-hy "
-­ "
-rg 12,11 0 0256
-® "
-a- 4,10 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 9,9 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 5,11 0 0264
-´ "
-µ 8,8,3 0 0265
-ps 8,11,3 0 0266
-¶ "
-md 4,5 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 5,11 0 0271
-¹ "
-Om 6,11 0 0272
-º "
-Fc 8,7 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 12,11 0 0276
-¾ "
-r? 8,8,3 0 0277
-¿ "
-`A 9,14 0 0300
-À "
-'A 9,14 0 0301
-Á "
-^A 9,14 0 0302
-Â "
-~A 9,13 0 0303
-Ã "
-:A 9,14 0 0304
-Ä "
-oA 9,14 0 0305
-Å "
-AE 14,11 0 0306
-Æ "
-,C 10,11,3 0 0307
-Ç "
-`E 9,14 0 0310
-È "
-'E 9,14 0 0311
-É "
-^E 9,14 0 0312
-Ê "
-:E 9,13 0 0313
-Ë "
-`I 4,14 0 0314
-Ì "
-'I 4,14 0 0315
-Í "
-^I 4,14 0 0316
-Î "
-:I 4,13 0 0317
-Ï "
--D 10,11 0 0320
-Ð "
-~N 10,14 0 0321
-Ñ "
-`O 11,14 0 0322
-Ò "
-'O 11,14 0 0323
-Ó "
-^O 11,14 0 0324
-Ô "
-~O 11,14 0 0325
-Õ "
-:O 11,13 0 0326
-Ö "
-mu 9,8 0 0327
-× "
-/O 11,11 0 0330
-Ø "
-`U 10,14 0 0331
-Ù "
-'U 10,14 0 0332
-Ú "
-^U 10,14 0 0333
-Û "
-:U 10,13 0 0334
-Ü "
-'Y 9,14 0 0335
-Ý "
-TP 9,11 0 0336
-Þ "
-ss 7,11 0 0337
-ß "
-`a 8,11 0 0340
-à "
-'a 8,11 0 0341
-á "
-^a 8,11 0 0342
-â "
-~a 8,11 0 0343
-ã "
-:a 8,11 0 0344
-ä "
-oa 8,12 0 0345
-å "
-ae 13,8 0 0346
-æ "
-,c 8,8,3 0 0347
-ç "
-`e 8,11 0 0350
-è "
-'e 8,11 0 0351
-é "
-^e 8,11 0 0352
-ê "
-:e 8,11 0 0353
-ë "
-`i 3,11 0 0354
-ì "
-'i 3,11 0 0355
-í "
-^i 3,11 0 0356
-î "
-:i 3,11 0 0357
-ï "
-Sd 8,11 0 0360
-ð "
-~n 8,11 0 0361
-ñ "
-`o 8,11 0 0362
-ò "
-'o 8,11 0 0363
-ó "
-^o 8,11 0 0364
-ô "
-~o 8,11 0 0365
-õ "
-:o 8,11 0 0366
-ö "
-di 9,8 0 0367
-÷ "
-/o 8,8 0 0370
-ø "
-`u 8,11 0 0371
-ù "
-'u 8,11 0 0372
-ú "
-^u 8,11 0 0373
-û "
-:u 8,11 0 0374
-ü "
-'y 7,11,3 0 0375
-ý "
-Tp 8,11,3 0 0376
-þ "
-:y 7,10,3 0 0377
-ÿ "
diff --git a/devhtml/NB b/devhtml/NB
deleted file mode 100644
index 88ef29f0e..000000000
--- a/devhtml/NB
+++ /dev/null
@@ -1,306 +0,0 @@
-name NB
-spacewidth 11
-charset
---- 11,1 0 040
-! 4,11 0 041
-" 5,11 0 042
-# 8,10 0 043
-sh "
-$ 8,12,1 0 044
-Do "
-% 13,11 0 045
-& 13,11 0 046
-' 4,11 0 047
-( 5,11,2 0 050
-) 5,11,2 0 051
-* 6,11 0 052
-+ 8,8 0 053
-, 4,3,2 0 054
-\- 8,5 0 055
-. 4,3 0 056
-/ 5,11 0 057
-sl "
-0 8,11 0 060
-1 6,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 4,7 0 072
-; 4,7,2 0 073
-< 8,8 0 074
-= 8,6 0 075
-eq "
-> 8,8 0 076
-? 7,11 0 077
-@ 14,11 0 0100
-at "
-A 11,11 0 0101
-B 10,11 0 0102
-C 11,11 0 0103
-D 12,11 0 0104
-E 10,11 0 0105
-F 10,11 0 0106
-G 12,11 0 0107
-H 12,11 0 0110
-I 7,11 0 0111
-J 9,11 0 0112
-K 12,11 0 0113
-L 10,11 0 0114
-M 14,11 0 0115
-N 12,11 0 0116
-O 12,11 0 0117
-P 10,11 0 0120
-Q 12,11,3 0 0121
-R 12,11 0 0122
-S 10,11 0 0123
-T 11,11 0 0124
-U 12,11 0 0125
-V 11,11 0 0126
-W 14,11 0 0127
-X 12,11 0 0130
-Y 11,11 0 0131
-Z 9,11 0 0132
-[ 5,11,2 0 0133
-lB "
-\ 7,11 0 0134
-rs "
-] 5,11,2 0 0135
-rB "
-^ 8,11 0 0136
-a^ "
-ha "
-_ 7,0,2 0 0137
-` 4,11 0 0140
-oq "
-a 9,7 0 0141
-b 10,11 0 0142
-c 8,7 0 0143
-d 10,11 0 0144
-e 9,7 0 0145
-f 6,11 0 0146
-g 8,8,3 0 0147
-h 10,11 0 0150
-i 5,10 0 0151
-j 5,10,3 0 0152
-k 9,11 0 0153
-l 5,11 0 0154
-m 15,7 0 0155
-n 10,7 0 0156
-o 9,7 0 0157
-p 10,7,3 0 0160
-q 9,7,3 0 0161
-r 7,7 0 0162
-s 7,7 0 0163
-t 6,10 0 0164
-u 10,7 0 0165
-v 7,7 0 0166
-w 12,7 0 0167
-x 9,7 0 0170
-y 7,7,3 0 0171
-z 7,7 0 0172
-{ 6,11,2 0 0173
-lC "
-| 8,11 0 0174
-or "
-ba "
-} 6,11,2 0 0175
-rC "
-~ 8,6 0 0176
-a~ "
-ap "
-ti "
-r! 5,8,3 0 0241
-¡ "
-ct 8,8,1 0 0242
-¢ "
-Po 9,11 0 0243
-£ "
-Cs 9,10 0 0244
-¤ "
-Ye 11,11 0 0245
-¥ "
-bb 8,11 0 0246
-¦ "
-sc 7,11,2 0 0247
-§ "
-ad 7,10 0 0250
-¨ "
-co 12,11 0 0251
-© "
-Of 6,11 0 0252
-ª "
-Fo 8,6 0 0253
-« "
-no 8,6 0 0254
-¬ "
-- 5,5 0 055
-hy "
-­ "
-rg 12,11 0 0256
-® "
-a- 7,9 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 8,8 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 6,11 0 0264
-´ "
-µ 10,7,3 0 0265
-ps 10,11 0 0266
-¶ "
-md 5,6 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 5,11 0 0271
-¹ "
-Om 6,11 0 0272
-º "
-Fc 8,6 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 12,11 0 0276
-¾ "
-r? 7,8,3 0 0277
-¿ "
-`A 11,15 0 0300
-À "
-'A 11,15 0 0301
-Á "
-^A 11,15 0 0302
-Â "
-~A 11,14 0 0303
-Ã "
-:A 11,14 0 0304
-Ä "
-oA 11,15 0 0305
-Å "
-AE 15,11 0 0306
-Æ "
-,C 11,11,3 0 0307
-Ç "
-`E 10,15 0 0310
-È "
-'E 10,15 0 0311
-É "
-^E 10,15 0 0312
-Ê "
-:E 10,14 0 0313
-Ë "
-`I 7,15 0 0314
-Ì "
-'I 7,15 0 0315
-Í "
-^I 7,15 0 0316
-Î "
-:I 7,14 0 0317
-Ï "
--D 12,11 0 0320
-Ð "
-~N 12,14 0 0321
-Ñ "
-`O 12,15 0 0322
-Ò "
-'O 12,15 0 0323
-Ó "
-^O 12,15 0 0324
-Ô "
-~O 12,14 0 0325
-Õ "
-:O 12,14 0 0326
-Ö "
-mu 8,8 0 0327
-× "
-/O 12,11 0 0330
-Ø "
-`U 12,15 0 0331
-Ù "
-'U 12,15 0 0332
-Ú "
-^U 12,15 0 0333
-Û "
-:U 12,14 0 0334
-Ü "
-'Y 11,14 0 0335
-Ý "
-TP 10,11 0 0336
-Þ "
-ss 9,11 0 0337
-ß "
-`a 9,11 0 0340
-à "
-'a 9,11 0 0341
-á "
-^a 9,11 0 0342
-â "
-~a 9,10 0 0343
-ã "
-:a 9,10 0 0344
-ä "
-oa 9,11 0 0345
-å "
-ae 14,7 0 0346
-æ "
-,c 8,7,3 0 0347
-ç "
-`e 9,11 0 0350
-è "
-'e 9,11 0 0351
-é "
-^e 9,11 0 0352
-ê "
-:e 9,10 0 0353
-ë "
-`i 5,11 0 0354
-ì "
-'i 5,11 0 0355
-í "
-^i 5,11 0 0356
-î "
-:i 5,10 0 0357
-ï "
-Sd 9,11 0 0360
-ð "
-~n 10,10 0 0361
-ñ "
-`o 9,11 0 0362
-ò "
-'o 9,11 0 0363
-ó "
-^o 9,11 0 0364
-ô "
-~o 9,10 0 0365
-õ "
-:o 9,10 0 0366
-ö "
-di 8,8 0 0367
-÷ "
-/o 9,8,1 0 0370
-ø "
-`u 10,11 0 0371
-ù "
-'u 10,11 0 0372
-ú "
-^u 10,11 0 0373
-û "
-:u 10,10 0 0374
-ü "
-'y 7,11,3 0 0375
-ý "
-Tp 10,11,3 0 0376
-þ "
-:y 7,10,3 0 0377
-ÿ "
diff --git a/devhtml/NBI b/devhtml/NBI
deleted file mode 100644
index 58d9522eb..000000000
--- a/devhtml/NBI
+++ /dev/null
@@ -1,306 +0,0 @@
-name NBI
-spacewidth 4
-charset
---- 4,1 0 040
-! 5,11 0 041
-" 6,11 0 042
-# 8,10 0 043
-sh "
-$ 8,12,1 0 044
-Do "
-% 13,11,1 0 045
-& 13,11 0 046
-' 4,11 0 047
-( 5,11,2 0 050
-) 6,11,2 0 051
-* 7,11 0 052
-+ 8,8 0 053
-, 4,2,3 0 054
-\- 8,5 0 055
-. 4,2 0 056
-/ 5,11 0 057
-sl "
-0 8,11 0 060
-1 8,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 4,7 0 072
-; 5,7,3 0 073
-< 9,9 0 074
-= 9,7 0 075
-eq "
-> 9,9 0 076
-? 7,11 0 077
-@ 13,11 0 0100
-at "
-A 11,11 0 0101
-B 10,11 0 0102
-C 11,11 0 0103
-D 12,11 0 0104
-E 10,11 0 0105
-F 10,11 0 0106
-G 11,11 0 0107
-H 12,11 0 0110
-I 6,11 0 0111
-J 8,11 0 0112
-K 12,11 0 0113
-L 10,11 0 0114
-M 15,11 0 0115
-N 13,11 0 0116
-O 12,11 0 0117
-P 11,11 0 0120
-Q 12,11,2 0 0121
-R 12,11 0 0122
-S 10,11 0 0123
-T 11,11 0 0124
-U 12,11 0 0125
-V 11,11 0 0126
-W 15,11 0 0127
-X 11,11 0 0130
-Y 9,11 0 0131
-Z 10,11 0 0132
-[ 7,11,2 0 0133
-lB "
-\ 9,11 0 0134
-rs "
-] 7,11,2 0 0135
-rB "
-^ 8,11 0 0136
-a^ "
-ha "
-_ 9,0,2 0 0137
-` 4,11 0 0140
-oq "
-a 10,7 0 0141
-b 8,11 0 0142
-c 8,7 0 0143
-d 10,11 0 0144
-e 8,7 0 0145
-f 5,11,3 0 0146
-g 8,9,3 0 0147
-h 10,11 0 0150
-i 5,10 0 0151
-j 4,10,3 0 0152
-k 9,11 0 0153
-l 5,11 0 0154
-m 15,7 0 0155
-n 10,7 0 0156
-o 8,7 0 0157
-p 8,7,3 0 0160
-q 9,7,3 0 0161
-r 7,7 0 0162
-s 8,7 0 0163
-t 5,9 0 0164
-u 10,7 0 0165
-v 8,7 0 0166
-w 13,7 0 0167
-x 9,7 0 0170
-y 9,7,3 0 0171
-z 9,7 0 0172
-{ 6,11,2 0 0173
-lC "
-| 9,11 0 0174
-or "
-ba "
-} 6,11,2 0 0175
-rC "
-~ 11,6 0 0176
-a~ "
-ap "
-ti "
-r! 5,8,3 0 0241
-¡ "
-ct 8,8,1 0 0242
-¢ "
-Po 10,11 0 0243
-£ "
-Cs 8,9 0 0244
-¤ "
-Ye 10,11 0 0245
-¥ "
-bb 8,11 0 0246
-¦ "
-sc 9,11,2 0 0247
-§ "
-ad 6,10 0 0250
-¨ "
-co 12,11 0 0251
-© "
-Of 8,11 0 0252
-ª "
-Fo 10,7 0 0253
-« "
-no 9,7 0 0254
-¬ "
-- 5,5 0 055
-hy "
-­ "
-rg 12,11 0 0256
-® "
-a- 6,9 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 8,8 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 5,11 0 0264
-´ "
-µ 10,7,3 0 0265
-ps 9,11 0 0266
-¶ "
-md 5,6 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 5,11 0 0271
-¹ "
-Om 8,11 0 0272
-º "
-Fc 10,7 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 12,11 0 0276
-¾ "
-r? 7,8,3 0 0277
-¿ "
-`A 11,15 0 0300
-À "
-'A 11,15 0 0301
-Á "
-^A 11,15 0 0302
-Â "
-~A 11,14 0 0303
-Ã "
-:A 11,14 0 0304
-Ä "
-oA 11,15 0 0305
-Å "
-AE 14,11 0 0306
-Æ "
-,C 11,11,3 0 0307
-Ç "
-`E 10,15 0 0310
-È "
-'E 10,15 0 0311
-É "
-^E 10,15 0 0312
-Ê "
-:E 10,14 0 0313
-Ë "
-`I 6,15 0 0314
-Ì "
-'I 6,15 0 0315
-Í "
-^I 6,15 0 0316
-Î "
-:I 6,14 0 0317
-Ï "
--D 12,11 0 0320
-Ð "
-~N 13,14 0 0321
-Ñ "
-`O 12,15 0 0322
-Ò "
-'O 12,15 0 0323
-Ó "
-^O 12,15 0 0324
-Ô "
-~O 12,14 0 0325
-Õ "
-:O 12,14 0 0326
-Ö "
-mu 8,8 0 0327
-× "
-/O 12,11 0 0330
-Ø "
-`U 12,15 0 0331
-Ù "
-'U 12,15 0 0332
-Ú "
-^U 12,15 0 0333
-Û "
-:U 12,14 0 0334
-Ü "
-'Y 9,15 0 0335
-Ý "
-TP 11,11 0 0336
-Þ "
-ss 10,11,3 0 0337
-ß "
-`a 10,11 0 0340
-à "
-'a 10,11 0 0341
-á "
-^a 10,11 0 0342
-â "
-~a 10,10 0 0343
-ã "
-:a 10,10 0 0344
-ä "
-oa 10,11 0 0345
-å "
-ae 13,7 0 0346
-æ "
-,c 8,7,3 0 0347
-ç "
-`e 8,11 0 0350
-è "
-'e 8,11 0 0351
-é "
-^e 8,11 0 0352
-ê "
-:e 8,10 0 0353
-ë "
-`i 5,11 0 0354
-ì "
-'i 5,11 0 0355
-í "
-^i 5,11 0 0356
-î "
-:i 5,10 0 0357
-ï "
-Sd 8,11 0 0360
-ð "
-~n 10,10 0 0361
-ñ "
-`o 8,11 0 0362
-ò "
-'o 8,11 0 0363
-ó "
-^o 8,11 0 0364
-ô "
-~o 8,10 0 0365
-õ "
-:o 8,10 0 0366
-ö "
-di 8,8 0 0367
-÷ "
-/o 8,7 0 0370
-ø "
-`u 10,11 0 0371
-ù "
-'u 10,11 0 0372
-ú "
-^u 10,11 0 0373
-û "
-:u 10,10 0 0374
-ü "
-'y 9,11,3 0 0375
-ý "
-Tp 8,11,3 0 0376
-þ "
-:y 9,10,3 0 0377
-ÿ "
diff --git a/devhtml/NI b/devhtml/NI
deleted file mode 100644
index b76ed0217..000000000
--- a/devhtml/NI
+++ /dev/null
@@ -1,306 +0,0 @@
-name NI
-spacewidth 4
-charset
---- 4,1 0 040
-! 5,11 0 041
-" 6,11 0 042
-# 11,10 0 043
-sh "
-$ 8,12,1 0 044
-Do "
-% 12,11,1 0 045
-& 11,11 0 046
-' 4,11 0 047
-( 5,11,2 0 050
-) 5,11,2 0 051
-* 6,11 0 052
-+ 8,8 0 053
-, 4,2,2 0 054
-\- 9,5 0 055
-. 4,2 0 056
-/ 9,11,3 0 057
-sl "
-0 8,11 0 060
-1 8,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 4,7 0 072
-; 4,7,2 0 073
-< 9,8 0 074
-= 8,6 0 075
-eq "
-> 9,8 0 076
-? 6,11 0 077
-@ 12,11 0 0100
-at "
-A 11,11 0 0101
-B 9,11 0 0102
-C 10,11 0 0103
-D 11,11 0 0104
-E 9,11 0 0105
-F 8,11 0 0106
-G 10,11 0 0107
-H 11,11 0 0110
-I 7,11 0 0111
-J 8,11 0 0112
-K 10,11 0 0113
-L 9,11 0 0114
-M 14,11 0 0115
-N 12,11 0 0116
-O 10,11 0 0117
-P 10,11 0 0120
-Q 10,11,2 0 0121
-R 11,11 0 0122
-S 10,11 0 0123
-T 10,11 0 0124
-U 12,11 0 0125
-V 10,11 0 0126
-W 13,11 0 0127
-X 10,11 0 0130
-Y 9,11 0 0131
-Z 10,11 0 0132
-[ 6,11,2 0 0133
-lB "
-\ 8,11 0 0134
-rs "
-] 6,11,2 0 0135
-rB "
-^ 6,11 0 0136
-a^ "
-ha "
-_ 7,0,2 0 0137
-` 4,11 0 0140
-oq "
-a 9,7 0 0141
-b 7,11 0 0142
-c 6,7 0 0143
-d 9,11 0 0144
-e 6,7 0 0145
-f 5,11,3 0 0146
-g 7,8,3 0 0147
-h 9,11 0 0150
-i 4,11 0 0151
-j 4,11,3 0 0152
-k 8,11 0 0153
-l 4,11 0 0154
-m 14,7 0 0155
-n 9,7 0 0156
-o 7,7 0 0157
-p 7,7,3 0 0160
-q 8,7,3 0 0161
-r 7,7 0 0162
-s 7,7 0 0163
-t 5,9 0 0164
-u 9,7 0 0165
-v 7,7 0 0166
-w 11,7 0 0167
-x 8,7 0 0170
-y 7,7,3 0 0171
-z 8,7 0 0172
-{ 6,11,2 0 0173
-lC "
-| 9,11 0 0174
-or "
-ba "
-} 6,11,2 0 0175
-rC "
-~ 9,6 0 0176
-a~ "
-ap "
-ti "
-r! 4,8,3 0 0241
-¡ "
-ct 8,9,2 0 0242
-¢ "
-Po 9,11 0 0243
-£ "
-Cs 8,9 0 0244
-¤ "
-Ye 9,11 0 0245
-¥ "
-bb 8,11 0 0246
-¦ "
-sc 7,11,2 0 0247
-§ "
-ad 7,10 0 0250
-¨ "
-co 13,11 0 0251
-© "
-Of 6,11 0 0252
-ª "
-Fo 8,7 0 0253
-« "
-no 8,6 0 0254
-¬ "
-- 5,5 0 055
-hy "
-­ "
-rg 13,11 0 0256
-® "
-a- 6,9 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 8,8 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 4,11 0 0264
-´ "
-µ 9,7,3 0 0265
-ps 9,11 0 0266
-¶ "
-md 5,6 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 5,11 0 0271
-¹ "
-Om 6,11 0 0272
-º "
-Fc 8,7 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 12,11 0 0276
-¾ "
-r? 6,8,3 0 0277
-¿ "
-`A 11,14 0 0300
-À "
-'A 11,14 0 0301
-Á "
-^A 11,14 0 0302
-Â "
-~A 11,14 0 0303
-Ã "
-:A 11,14 0 0304
-Ä "
-oA 11,14 0 0305
-Å "
-AE 14,11 0 0306
-Æ "
-,C 10,11,3 0 0307
-Ç "
-`E 9,14 0 0310
-È "
-'E 9,14 0 0311
-É "
-^E 9,14 0 0312
-Ê "
-:E 9,14 0 0313
-Ë "
-`I 7,14 0 0314
-Ì "
-'I 7,14 0 0315
-Í "
-^I 7,14 0 0316
-Î "
-:I 7,14 0 0317
-Ï "
--D 11,11 0 0320
-Ð "
-~N 12,14 0 0321
-Ñ "
-`O 10,14 0 0322
-Ò "
-'O 10,14 0 0323
-Ó "
-^O 10,14 0 0324
-Ô "
-~O 10,14 0 0325
-Õ "
-:O 10,14 0 0326
-Ö "
-mu 8,8 0 0327
-× "
-/O 10,11 0 0330
-Ø "
-`U 12,14 0 0331
-Ù "
-'U 12,14 0 0332
-Ú "
-^U 12,14 0 0333
-Û "
-:U 12,14 0 0334
-Ü "
-'Y 9,14 0 0335
-Ý "
-TP 10,11 0 0336
-Þ "
-ss 8,11,3 0 0337
-ß "
-`a 9,11 0 0340
-à "
-'a 9,11 0 0341
-á "
-^a 9,11 0 0342
-â "
-~a 9,10 0 0343
-ã "
-:a 9,10 0 0344
-ä "
-oa 9,11 0 0345
-å "
-ae 10,7 0 0346
-æ "
-,c 6,7,3 0 0347
-ç "
-`e 6,11 0 0350
-è "
-'e 6,11 0 0351
-é "
-^e 6,11 0 0352
-ê "
-:e 6,10 0 0353
-ë "
-`i 4,11 0 0354
-ì "
-'i 4,11 0 0355
-í "
-^i 4,11 0 0356
-î "
-:i 4,10 0 0357
-ï "
-Sd 7,11 0 0360
-ð "
-~n 9,10 0 0361
-ñ "
-`o 7,11 0 0362
-ò "
-'o 7,11 0 0363
-ó "
-^o 7,11 0 0364
-ô "
-~o 7,10 0 0365
-õ "
-:o 7,10 0 0366
-ö "
-di 8,8 0 0367
-÷ "
-/o 7,8,1 0 0370
-ø "
-`u 9,11 0 0371
-ù "
-'u 9,11 0 0372
-ú "
-^u 9,11 0 0373
-û "
-:u 9,10 0 0374
-ü "
-'y 7,11,3 0 0375
-ý "
-Tp 7,11,3 0 0376
-þ "
-:y 7,10,3 0 0377
-ÿ "
diff --git a/devhtml/NR b/devhtml/NR
deleted file mode 100644
index dd756b794..000000000
--- a/devhtml/NR
+++ /dev/null
@@ -1,306 +0,0 @@
-name NR
-spacewidth 4
-charset
---- 4,1 0 040
-! 3,11 0 041
-" 5,11 0 042
-# 8,11 0 043
-sh "
-$ 8,12,2 0 044
-Do "
-% 12,11 0 045
-& 13,11 0 046
-' 4,11 0 047
-( 5,11,2 0 050
-) 6,11,2 0 051
-* 7,11 0 052
-+ 9,7 0 053
-, 4,2,2 0 054
-\- 9,4 0 055
-. 4,2 0 056
-/ 4,11 0 057
-sl "
-0 8,11 0 060
-1 8,11 0 061
-2 8,11 0 062
-3 8,11 0 063
-4 8,11 0 064
-5 8,11 0 065
-6 8,11 0 066
-7 8,11 0 067
-8 8,11 0 070
-9 8,11 0 071
-: 4,7 0 072
-; 4,7,2 0 073
-< 10,7 0 074
-= 9,6 0 075
-eq "
-> 10,7 0 076
-? 6,11 0 077
-@ 13,11 0 0100
-at "
-A 10,11 0 0101
-B 10,11 0 0102
-C 11,11 0 0103
-D 11,11 0 0104
-E 10,11 0 0105
-F 10,11 0 0106
-G 11,11 0 0107
-H 12,11 0 0110
-I 6,11 0 0111
-J 7,11 0 0112
-K 11,11 0 0113
-L 10,11 0 0114
-M 16,11 0 0115
-N 13,11 0 0116
-O 11,11 0 0117
-P 10,11 0 0120
-Q 11,11,2 0 0121
-R 11,11 0 0122
-S 8,11 0 0123
-T 10,11 0 0124
-U 13,11 0 0125
-V 10,11 0 0126
-W 16,11 0 0127
-X 13,11 0 0130
-Y 10,11 0 0131
-Z 9,11 0 0132
-[ 4,11,2 0 0133
-lB "
-\ 8,11 0 0134
-rs "
-] 4,11,2 0 0135
-rB "
-^ 7,11 0 0136
-a^ "
-ha "
-_ 7,0,2 0 0137
-` 4,11 0 0140
-oq "
-a 8,7 0 0141
-b 7,11 0 0142
-c 7,7 0 0143
-d 8,11 0 0144
-e 7,7 0 0145
-f 5,11 0 0146
-g 8,7,3 0 0147
-h 9,11 0 0150
-i 4,10 0 0151
-j 4,10,3 0 0152
-k 9,11 0 0153
-l 4,11 0 0154
-m 14,7 0 0155
-n 9,7 0 0156
-o 7,7 0 0157
-p 8,7,3 0 0160
-q 7,7,3 0 0161
-r 7,7 0 0162
-s 6,7 0 0163
-t 5,9 0 0164
-u 9,7 0 0165
-v 8,7 0 0166
-w 12,7 0 0167
-x 8,7 0 0170
-y 8,7,3 0 0171
-z 7,7 0 0172
-{ 4,11,2 0 0173
-lC "
-| 9,11 0 0174
-or "
-ba "
-} 5,11,2 0 0175
-rC "
-~ 9,5 0 0176
-a~ "
-ap "
-ti "
-r! 4,8,3 0 0241
-¡ "
-ct 8,9,2 0 0242
-¢ "
-Po 8,11 0 0243
-£ "
-Cs 8,9 0 0244
-¤ "
-Ye 8,11 0 0245
-¥ "
-bb 9,11 0 0246
-¦ "
-sc 7,11,2 0 0247
-§ "
-ad 6,10 0 0250
-¨ "
-co 14,11 0 0251
-© "
-Of 6,11 0 0252
-ª "
-Fo 7,6 0 0253
-« "
-no 9,5 0 0254
-¬ "
-- 5,4 0 055
-hy "
-­ "
-rg 14,11 0 0256
-® "
-a- 5,9 0 0257
-¯ "
-de 6,11 0 0260
-° "
-+- 9,7 0 0261
-± "
-S2 5,11 0 0262
-² "
-S3 5,11 0 0263
-³ "
-aa 5,11 0 0264
-´ "
-µ 9,7,3 0 0265
-ps 9,11,2 0 0266
-¶ "
-md 4,5 0 0267
-· "
-ac 5,1,3 0 0270
-¸ "
-S1 5,11 0 0271
-¹ "
-Om 5,11 0 0272
-º "
-Fc 7,6 0 0273
-» "
-14 12,11 0 0274
-¼ "
-12 12,11 0 0275
-½ "
-34 12,11 0 0276
-¾ "
-r? 6,8,3 0 0277
-¿ "
-`A 10,14 0 0300
-À "
-'A 10,14 0 0301
-Á "
-^A 10,14 0 0302
-Â "
-~A 10,14 0 0303
-Ã "
-:A 10,13 0 0304
-Ä "
-oA 10,14 0 0305
-Å "
-AE 15,11 0 0306
-Æ "
-,C 11,11,3 0 0307
-Ç "
-`E 10,14 0 0310
-È "
-'E 10,14 0 0311
-É "
-^E 10,14 0 0312
-Ê "
-:E 10,14 0 0313
-Ë "
-`I 6,14 0 0314
-Ì "
-'I 6,14 0 0315
-Í "
-^I 6,14 0 0316
-Î "
-:I 6,14 0 0317
-Ï "
--D 11,11 0 0320
-Ð "
-~N 13,14 0 0321
-Ñ "
-`O 11,14 0 0322
-Ò "
-'O 11,14 0 0323
-Ó "
-^O 11,14 0 0324
-Ô "
-~O 11,14 0 0325
-Õ "
-:O 11,14 0 0326
-Ö "
-mu 9,7 0 0327
-× "
-/O 11,11 0 0330
-Ø "
-`U 13,14 0 0331
-Ù "
-'U 13,14 0 0332
-Ú "
-^U 13,14 0 0333
-Û "
-:U 13,14 0 0334
-Ü "
-'Y 10,14 0 0335
-Ý "
-TP 10,11 0 0336
-Þ "
-ss 8,11 0 0337
-ß "
-`a 8,11 0 0340
-à "
-'a 8,11 0 0341
-á "
-^a 8,11 0 0342
-â "
-~a 8,10 0 0343
-ã "
-:a 8,10 0 0344
-ä "
-oa 8,11 0 0345
-å "
-ae 12,7 0 0346
-æ "
-,c 7,7,3 0 0347
-ç "
-`e 7,11 0 0350
-è "
-'e 7,11 0 0351
-é "
-^e 7,11 0 0352
-ê "
-:e 7,10 0 0353
-ë "
-`i 4,11 0 0354
-ì "
-'i 4,11 0 0355
-í "
-^i 4,11 0 0356
-î "
-:i 4,10 0 0357
-ï "
-Sd 7,11 0 0360
-ð "
-~n 9,10 0 0361
-ñ "
-`o 7,11 0 0362
-ò "
-'o 7,11 0 0363
-ó "
-^o 7,11 0 0364
-ô "
-~o 7,10 0 0365
-õ "
-:o 7,10 0 0366
-ö "
-di 9,7 0 0367
-÷ "
-/o 7,8,1 0 0370
-ø "
-`u 9,11 0 0371
-ù "
-'u 9,11 0 0372
-ú "
-^u 9,11 0 0373
-û "
-:u 9,10 0 0374
-ü "
-'y 8,11,3 0 0375
-ý "
-Tp 8,11,3 0 0376
-þ "
-:y 8,10,3 0 0377
-ÿ "
diff --git a/devhtml/TB b/devhtml/TB
deleted file mode 100644
index fbc4c8b20..000000000
--- a/devhtml/TB
+++ /dev/null
@@ -1,306 +0,0 @@
-name TB
-spacewidth 3
-charset
---- 3,1 0 040
-! 4,10 0 041
-" 7,10 0 042
-# 7,10 0 043
-sh "
-$ 7,11,1 0 044
-Do "
-% 14,10 0 045
-& 12,10 0 046
-' 4,10 0 047
-( 5,10,3 0 050
-) 5,10,3 0 051
-* 7,10 0 052
-+ 8,7 0 053
-, 3,2,2 0 054
-\- 9,4 0 055
-. 3,2 0 056
-/ 4,10 0 057
-sl "
-0 7,10 0 060
-1 7,10 0 061
-2 7,10 0 062
-3 7,10 0 063
-4 7,10 0 064
-5 7,10 0 065
-6 7,10 0 066
-7 7,10 0 067
-8 7,10 0 070
-9 7,10 0 071
-: 4,7 0 072
-; 4,7,2 0 073
-< 8,7 0 074
-= 8,5 0 075
-eq "
-> 8,7 0 076
-? 7,10 0 077
-@ 14,10,2 0 0100
-at "
-A 10,10 0 0101
-B 9,10 0 0102
-C 10,10 0 0103
-D 10,10 0 0104
-E 9,10 0 0105
-F 8,10 0 0106
-G 11,10 0 0107
-H 11,10 0 0110
-I 5,10 0 0111
-J 7,10,1 0 0112
-K 11,10 0 0113
-L 9,10 0 0114
-M 13,10 0 0115
-N 10,10 0 0116
-O 11,10 0 0117
-P 9,10 0 0120
-Q 11,10,3 0 0121
-R 10,10 0 0122
-S 8,10 0 0123
-T 9,10 0 0124
-U 10,10 0 0125
-V 10,10 0 0126
-W 14,10 0 0127
-X 10,10 0 0130
-Y 10,10 0 0131
-Z 9,10 0 0132
-[ 5,10,3 0 0133
-lB "
-\ 4,10 0 0134
-rs "
-] 5,10,3 0 0135
-rB "
-^ 8,10 0 0136
-a^ "
-ha "
-_ 7,0,3 0 0137
-` 4,10 0 0140
-oq "
-a 7,7 0 0141
-b 8,10 0 0142
-c 6,7 0 0143
-d 7,10 0 0144
-e 6,7 0 0145
-f 5,10 0 0146
-g 7,7,3 0 0147
-h 8,10 0 0150
-i 4,10 0 0151
-j 4,10,3 0 0152
-k 8,10 0 0153
-l 4,10 0 0154
-m 12,7 0 0155
-n 8,7 0 0156
-o 7,7 0 0157
-p 8,7,3 0 0160
-q 7,7,3 0 0161
-r 6,7 0 0162
-s 6,7 0 0163
-t 5,9 0 0164
-u 7,7 0 0165
-v 7,7 0 0166
-w 10,7 0 0167
-x 7,7 0 0170
-y 7,7,3 0 0171
-z 6,7 0 0172
-{ 7,10,3 0 0173
-lC "
-| 3,10,2 0 0174
-or "
-ba "
-} 7,10,3 0 0175
-rC "
-~ 8,7 0 0176
-a~ "
-ap "
-ti "
-r! 4,7,3 0 0241
-¡ "
-ct 7,9,2 0 0242
-¢ "
-Po 8,10 0 0243
-£ "
-Cs 8,8 0 0244
-¤ "
-Ye 8,10 0 0245
-¥ "
-bb 3,10,2 0 0246
-¦ "
-sc 7,10,2 0 0247
-§ "
-ad 5,10 0 0250
-¨ "
-co 12,10 0 0251
-© "
-Of 5,10 0 0252
-ª "
-Fo 9,6 0 0253
-« "
-no 9,5 0 0254
-¬ "
-- 4,4 0 055
-hy "
-­ "
-rg 12,10 0 0256
-® "
-a- 5,9 0 0257
-¯ "
-de 6,10 0 0260
-° "
-+- 8,9 0 0261
-± "
-S2 4,10 0 0262
-² "
-S3 4,10 0 0263
-³ "
-aa 5,11 0 0264
-´ "
-µ 7,7,3 0 0265
-ps 8,10,3 0 0266
-¶ "
-md 4,6 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 4,10 0 0271
-¹ "
-Om 5,10 0 0272
-º "
-Fc 9,6 0 0273
-» "
-14 10,10 0 0274
-¼ "
-12 10,10 0 0275
-½ "
-34 10,10 0 0276
-¾ "
-r? 7,7,3 0 0277
-¿ "
-`A 10,14 0 0300
-À "
-'A 10,14 0 0301
-Á "
-^A 10,14 0 0302
-Â "
-~A 10,13 0 0303
-Ã "
-:A 10,13 0 0304
-Ä "
-oA 10,14 0 0305
-Å "
-AE 14,10 0 0306
-Æ "
-,C 10,10,3 0 0307
-Ç "
-`E 9,14 0 0310
-È "
-'E 9,14 0 0311
-É "
-^E 9,14 0 0312
-Ê "
-:E 9,13 0 0313
-Ë "
-`I 5,14 0 0314
-Ì "
-'I 5,14 0 0315
-Í "
-^I 5,14 0 0316
-Î "
-:I 5,13 0 0317
-Ï "
--D 11,10 0 0320
-Ð "
-~N 10,13 0 0321
-Ñ "
-`O 11,14 0 0322
-Ò "
-'O 11,14 0 0323
-Ó "
-^O 11,14 0 0324
-Ô "
-~O 11,13 0 0325
-Õ "
-:O 11,13 0 0326
-Ö "
-mu 8,7 0 0327
-× "
-/O 11,11,1 0 0330
-Ø "
-`U 10,14 0 0331
-Ù "
-'U 10,14 0 0332
-Ú "
-^U 10,14 0 0333
-Û "
-:U 10,13 0 0334
-Ü "
-'Y 10,14 0 0335
-Ý "
-TP 9,10 0 0336
-Þ "
-ss 8,10 0 0337
-ß "
-`a 7,11 0 0340
-à "
-'a 7,11 0 0341
-á "
-^a 7,11 0 0342
-â "
-~a 7,10 0 0343
-ã "
-:a 7,10 0 0344
-ä "
-oa 7,11 0 0345
-å "
-ae 11,7 0 0346
-æ "
-,c 7,7,3 0 0347
-ç "
-`e 7,11 0 0350
-è "
-'e 7,11 0 0351
-é "
-^e 7,11 0 0352
-ê "
-:e 7,10 0 0353
-ë "
-`i 4,11 0 0354
-ì "
-'i 4,11 0 0355
-í "
-^i 4,11 0 0356
-î "
-:i 4,10 0 0357
-ï "
-Sd 7,10 0 0360
-ð "
-~n 8,10 0 0361
-ñ "
-`o 7,11 0 0362
-ò "
-'o 7,11 0 0363
-ó "
-^o 7,11 0 0364
-ô "
-~o 7,10 0 0365
-õ "
-:o 7,10 0 0366
-ö "
-di 8,7 0 0367
-÷ "
-/o 7,8,1 0 0370
-ø "
-`u 7,11 0 0371
-ù "
-'u 7,11 0 0372
-ú "
-^u 7,11 0 0373
-û "
-:u 7,10 0 0374
-ü "
-'y 7,11,3 0 0375
-ý "
-Tp 8,10,3 0 0376
-þ "
-:y 7,10,3 0 0377
-ÿ "
diff --git a/devhtml/TI b/devhtml/TI
deleted file mode 100644
index fddf4b74f..000000000
--- a/devhtml/TI
+++ /dev/null
@@ -1,306 +0,0 @@
-name TI
-spacewidth 3
-charset
---- 3,1 0 040
-! 5,10 0 041
-" 6,10 0 042
-# 7,10 0 043
-sh "
-$ 7,11,1 0 044
-Do "
-% 12,10 0 045
-& 11,10 0 046
-' 5,10 0 047
-( 5,10,3 0 050
-) 5,10,3 0 051
-* 7,10 0 052
-+ 10,7 0 053
-, 4,2,1 0 054
-\- 9,4 0 055
-. 3,2 0 056
-/ 4,10 0 057
-sl "
-0 7,10 0 060
-1 7,10 0 061
-2 7,10 0 062
-3 7,10 0 063
-4 7,10 0 064
-5 7,10 0 065
-6 7,10 0 066
-7 7,10 0 067
-8 7,10 0 070
-9 7,10 0 071
-: 4,7 0 072
-; 4,7,1 0 073
-< 10,7,1 0 074
-= 10,5 0 075
-eq "
-> 10,7,1 0 076
-? 7,10 0 077
-@ 13,10,3 0 0100
-at "
-A 9,10 0 0101
-B 8,10 0 0102
-C 9,10 0 0103
-D 10,10 0 0104
-E 9,10 0 0105
-F 9,10 0 0106
-G 10,10 0 0107
-H 10,10 0 0110
-I 5,10 0 0111
-J 6,10 0 0112
-K 10,10 0 0113
-L 8,10 0 0114
-M 12,10 0 0115
-N 11,10 0 0116
-O 10,10 0 0117
-P 9,10 0 0120
-Q 10,10,3 0 0121
-R 9,10 0 0122
-S 7,10 0 0123
-T 8,10 0 0124
-U 10,10 0 0125
-V 9,10 0 0126
-W 11,10 0 0127
-X 9,10 0 0130
-Y 8,10 0 0131
-Z 8,10 0 0132
-[ 6,10,3 0 0133
-lB "
-\ 4,10 0 0134
-rs "
-] 6,10,3 0 0135
-rB "
-^ 6,10 0 0136
-a^ "
-ha "
-_ 7,0,4 0 0137
-` 5,10 0 0140
-oq "
-a 7,7 0 0141
-b 7,10 0 0142
-c 6,7 0 0143
-d 7,10 0 0144
-e 7,7 0 0145
-f 5,10,3 0 0146
-g 6,7,3 0 0147
-h 7,10 0 0150
-i 4,10 0 0151
-j 4,10,3 0 0152
-k 7,10 0 0153
-l 4,10 0 0154
-m 10,7 0 0155
-n 7,7 0 0156
-o 7,7 0 0157
-p 7,7,3 0 0160
-q 7,7,3 0 0161
-r 5,7 0 0162
-s 6,7 0 0163
-t 5,9 0 0164
-u 7,7 0 0165
-v 6,7 0 0166
-w 9,7 0 0167
-x 7,7 0 0170
-y 7,7,3 0 0171
-z 6,7 0 0172
-{ 6,10,3 0 0173
-lC "
-| 4,10,3 0 0174
-or "
-ba "
-} 6,10,3 0 0175
-rC "
-~ 8,5 0 0176
-a~ "
-ap "
-ti "
-r! 6,7,3 0 0241
-¡ "
-ct 7,9,2 0 0242
-¢ "
-Po 7,10 0 0243
-£ "
-Cs 7,8 0 0244
-¤ "
-Ye 7,10 0 0245
-¥ "
-bb 4,10,3 0 0246
-¦ "
-sc 7,11,2 0 0247
-§ "
-ad 5,10 0 0250
-¨ "
-co 12,10 0 0251
-© "
-Of 5,10 0 0252
-ª "
-Fo 7,6 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 5,4 0 055
-hy "
-­ "
-rg 12,10 0 0256
-® "
-a- 5,10 0 0257
-¯ "
-de 6,10 0 0260
-° "
-+- 10,9 0 0261
-± "
-S2 4,10 0 0262
-² "
-S3 4,10 0 0263
-³ "
-aa 4,10 0 0264
-´ "
-µ 7,7,3 0 0265
-ps 8,10,3 0 0266
-¶ "
-md 4,4 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 4,10 0 0271
-¹ "
-Om 5,10 0 0272
-º "
-Fc 7,6 0 0273
-» "
-14 10,10 0 0274
-¼ "
-12 10,10 0 0275
-½ "
-34 10,10 0 0276
-¾ "
-r? 7,7,3 0 0277
-¿ "
-`A 9,13 0 0300
-À "
-'A 9,13 0 0301
-Á "
-^A 9,13 0 0302
-Â "
-~A 9,13 0 0303
-Ã "
-:A 9,12 0 0304
-Ä "
-oA 9,13 0 0305
-Å "
-AE 13,10 0 0306
-Æ "
-,C 9,10,3 0 0307
-Ç "
-`E 9,13 0 0310
-È "
-'E 9,13 0 0311
-É "
-^E 9,13 0 0312
-Ê "
-:E 9,12 0 0313
-Ë "
-`I 5,13 0 0314
-Ì "
-'I 5,13 0 0315
-Í "
-^I 5,13 0 0316
-Î "
-:I 5,12 0 0317
-Ï "
--D 10,10 0 0320
-Ð "
-~N 11,13 0 0321
-Ñ "
-`O 10,13 0 0322
-Ò "
-'O 10,13 0 0323
-Ó "
-^O 10,13 0 0324
-Ô "
-~O 10,13 0 0325
-Õ "
-:O 10,12 0 0326
-Ö "
-mu 10,7 0 0327
-× "
-/O 10,11,1 0 0330
-Ø "
-`U 10,13 0 0331
-Ù "
-'U 10,13 0 0332
-Ú "
-^U 10,13 0 0333
-Û "
-:U 10,12 0 0334
-Ü "
-'Y 8,13 0 0335
-Ý "
-TP 9,10 0 0336
-Þ "
-ss 7,10,3 0 0337
-ß "
-`a 7,10 0 0340
-à "
-'a 7,10 0 0341
-á "
-^a 7,11 0 0342
-â "
-~a 7,10 0 0343
-ã "
-:a 7,9 0 0344
-ä "
-oa 7,10 0 0345
-å "
-ae 10,7 0 0346
-æ "
-,c 6,7,3 0 0347
-ç "
-`e 7,10 0 0350
-è "
-'e 7,10 0 0351
-é "
-^e 7,11 0 0352
-ê "
-:e 7,9 0 0353
-ë "
-`i 4,10 0 0354
-ì "
-'i 4,10 0 0355
-í "
-^i 4,11 0 0356
-î "
-:i 4,9 0 0357
-ï "
-Sd 7,10 0 0360
-ð "
-~n 7,10 0 0361
-ñ "
-`o 7,10 0 0362
-ò "
-'o 7,10 0 0363
-ó "
-^o 7,11 0 0364
-ô "
-~o 7,10 0 0365
-õ "
-:o 7,9 0 0366
-ö "
-di 10,7 0 0367
-÷ "
-/o 7,8,1 0 0370
-ø "
-`u 7,10 0 0371
-ù "
-'u 7,10 0 0372
-ú "
-^u 7,11 0 0373
-û "
-:u 7,9 0 0374
-ü "
-'y 7,10,3 0 0375
-ý "
-Tp 7,10,3 0 0376
-þ "
-:y 7,9,3 0 0377
-ÿ "
diff --git a/devhtml/TR b/devhtml/TR
deleted file mode 100644
index c5c5f54e6..000000000
--- a/devhtml/TR
+++ /dev/null
@@ -1,306 +0,0 @@
-name TR
-spacewidth 3
-charset
---- 3,1 0 040
-! 5,10 0 041
-" 6,10 0 042
-# 7,10 0 043
-sh "
-$ 7,11,1 0 044
-Do "
-% 12,10 0 045
-& 11,10 0 046
-' 4,10 0 047
-( 5,10,3 0 050
-) 5,10,3 0 051
-* 7,10 0 052
-+ 8,7 0 053
-, 4,1,2 0 054
-\- 9,4 0 055
-. 4,1 0 056
-/ 4,10,2 0 057
-sl "
-0 7,10 0 060
-1 7,10 0 061
-2 7,10 0 062
-3 7,10 0 063
-4 7,10 0 064
-5 7,10 0 065
-6 7,10 0 066
-7 7,10 0 067
-8 7,10 0 070
-9 7,10 0 071
-: 4,7 0 072
-; 4,7,2 0 073
-< 8,7 0 074
-= 8,5 0 075
-eq "
-> 8,7 0 076
-? 6,10 0 077
-@ 13,10,2 0 0100
-at "
-A 11,10 0 0101
-B 9,10 0 0102
-C 10,10 0 0103
-D 10,10 0 0104
-E 9,10 0 0105
-F 8,10 0 0106
-G 11,10 0 0107
-H 10,10 0 0110
-I 5,10 0 0111
-J 6,10 0 0112
-K 10,10 0 0113
-L 9,10 0 0114
-M 13,10 0 0115
-N 11,10 0 0116
-O 10,10 0 0117
-P 8,10 0 0120
-Q 10,10,3 0 0121
-R 9,10 0 0122
-S 8,10 0 0123
-T 9,10 0 0124
-U 10,10 0 0125
-V 9,10 0 0126
-W 13,10 0 0127
-X 10,10 0 0130
-Y 9,10 0 0131
-Z 8,10 0 0132
-[ 5,10,3 0 0133
-lB "
-\ 4,10 0 0134
-rs "
-] 5,10,3 0 0135
-rB "
-^ 7,10 0 0136
-a^ "
-ha "
-_ 7,0,3 0 0137
-` 4,10 0 0140
-oq "
-a 7,7 0 0141
-b 7,10 0 0142
-c 7,7 0 0143
-d 7,10 0 0144
-e 7,7 0 0145
-f 4,10 0 0146
-g 7,7,3 0 0147
-h 7,10 0 0150
-i 3,10 0 0151
-j 4,10,3 0 0152
-k 7,10 0 0153
-l 3,10 0 0154
-m 11,7 0 0155
-n 7,7 0 0156
-o 7,7 0 0157
-p 7,7,3 0 0160
-q 7,7,3 0 0161
-r 5,7 0 0162
-s 6,7 0 0163
-t 4,8 0 0164
-u 7,7 0 0165
-v 7,7 0 0166
-w 11,7 0 0167
-x 7,7 0 0170
-y 7,7,3 0 0171
-z 6,7 0 0172
-{ 7,10,3 0 0173
-lC "
-| 3,10 0 0174
-or "
-ba "
-} 7,10,3 0 0175
-rC "
-~ 8,5 0 0176
-a~ "
-ap "
-ti "
-r! 5,7,3 0 0241
-¡ "
-ct 7,8,1 0 0242
-¢ "
-Po 8,10 0 0243
-£ "
-Cs 7,8 0 0244
-¤ "
-Ye 7,10 0 0245
-¥ "
-bb 3,10 0 0246
-¦ "
-sc 7,10,3 0 0247
-§ "
-ad 5,10 0 0250
-¨ "
-co 12,10 0 0251
-© "
-Of 4,10 0 0252
-ª "
-Fo 7,6 0 0253
-« "
-no 9,6 0 0254
-¬ "
-- 4,4 0 055
-hy "
-­ "
-rg 12,10 0 0256
-® "
-a- 4,9 0 0257
-¯ "
-de 6,10 0 0260
-° "
-+- 8,7 0 0261
-± "
-S2 4,10 0 0262
-² "
-S3 4,10 0 0263
-³ "
-aa 5,11 0 0264
-´ "
-µ 7,7,3 0 0265
-ps 7,10,3 0 0266
-¶ "
-md 4,5 0 0267
-· "
-ac 5,0,3 0 0270
-¸ "
-S1 4,10 0 0271
-¹ "
-Om 5,10 0 0272
-º "
-Fc 7,6 0 0273
-» "
-14 10,10 0 0274
-¼ "
-12 10,10 0 0275
-½ "
-34 10,10 0 0276
-¾ "
-r? 6,7,3 0 0277
-¿ "
-`A 11,14 0 0300
-À "
-'A 11,14 0 0301
-Á "
-^A 11,14 0 0302
-Â "
-~A 11,14 0 0303
-Ã "
-:A 11,13 0 0304
-Ä "
-oA 11,14 0 0305
-Å "
-AE 13,10 0 0306
-Æ "
-,C 10,10,3 0 0307
-Ç "
-`E 9,14 0 0310
-È "
-'E 9,14 0 0311
-É "
-^E 9,14 0 0312
-Ê "
-:E 9,13 0 0313
-Ë "
-`I 5,14 0 0314
-Ì "
-'I 5,14 0 0315
-Í "
-^I 5,14 0 0316
-Î "
-:I 5,13 0 0317
-Ï "
--D 10,10 0 0320
-Ð "
-~N 11,14 0 0321
-Ñ "
-`O 10,14 0 0322
-Ò "
-'O 10,14 0 0323
-Ó "
-^O 10,14 0 0324
-Ô "
-~O 10,14 0 0325
-Õ "
-:O 10,13 0 0326
-Ö "
-mu 8,7 0 0327
-× "
-/O 10,11,1 0 0330
-Ø "
-`U 10,14 0 0331
-Ù "
-'U 10,14 0 0332
-Ú "
-^U 10,14 0 0333
-Û "
-:U 10,13 0 0334
-Ü "
-'Y 9,14 0 0335
-Ý "
-TP 8,10 0 0336
-Þ "
-ss 7,10 0 0337
-ß "
-`a 7,11 0 0340
-à "
-'a 7,11 0 0341
-á "
-^a 7,11 0 0342
-â "
-~a 7,11 0 0343
-ã "
-:a 7,10 0 0344
-ä "
-oa 7,11 0 0345
-å "
-ae 11,7 0 0346
-æ "
-,c 7,7,3 0 0347
-ç "
-`e 7,11 0 0350
-è "
-'e 7,11 0 0351
-é "
-^e 7,11 0 0352
-ê "
-:e 7,10 0 0353
-ë "
-`i 3,11 0 0354
-ì "
-'i 3,11 0 0355
-í "
-^i 3,11 0 0356
-î "
-:i 3,10 0 0357
-ï "
-Sd 7,10 0 0360
-ð "
-~n 7,11 0 0361
-ñ "
-`o 7,11 0 0362
-ò "
-'o 7,11 0 0363
-ó "
-^o 7,11 0 0364
-ô "
-~o 7,11 0 0365
-õ "
-:o 7,10 0 0366
-ö "
-di 8,7 0 0367
-÷ "
-/o 7,8,1 0 0370
-ø "
-`u 7,11 0 0371
-ù "
-'u 7,11 0 0372
-ú "
-^u 7,11 0 0373
-û "
-:u 7,10 0 0374
-ü "
-'y 7,11,3 0 0375
-ý "
-Tp 7,10,3 0 0376
-þ "
-:y 7,10,3 0 0377
-ÿ "
diff --git a/devps/AB b/devps/AB
deleted file mode 100644
index d5313f0de..000000000
--- a/devps/AB
+++ /dev/null
@@ -1,559 +0,0 @@
-name AB
-internalname AvantGarde-Demi
-spacewidth 280
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -50
-A w -65
-A v -70
-A u -20
-A ' -90
-A Y -80
-A W -60
-A V -102
-A U -40
-A T -25
-A Q -50
-A O -50
-A G -40
-A C -40
-B A -10
-C A -40
-D . -20
-D , -20
-D Y -45
-D W -25
-D V -50
-D A -50
-F . -129
-F e -20
-F , -162
-F a -20
-F A -75
-G . -20
-G , -20
-G Y -15
-J . -15
-J a -20
-J A -30
-K y -20
-K u -15
-K o -45
-K e -40
-K O -30
-L y -23
-L ' -30
-L rq -30
-L Y -80
-L W -55
-L V -85
-L T -46
-O . -30
-O , -30
-O Y -30
-O X -30
-O W -20
-O V -45
-O T -15
-O A -60
-P . -200
-P o -20
-P e -20
-P , -220
-P a -20
-P A -100
-Q , 20
-R W 25
-R V -10
-R U 25
-R T 40
-R O 25
-S , 20
-T y -10
-T w -55
-T u -46
-T ; -29
-T r -30
-T . -91
-T o -49
-T - -75
-T hy -75
-T char173 -75
-T e -49
-T , -82
-T : -15
-T a -70
-T O -15
-T A -25
-U . -20
-U , -20
-U A -40
-V u -55
-V ; -33
-V . -145
-V o -101
-V i -15
-V - -75
-V hy -75
-V char173 -75
-V e -101
-V , -145
-V : -18
-V a -95
-V O -45
-V G -20
-V A -102
-W y -15
-W u -30
-W ; -33
-W . -106
-W o -46
-W i -10
-W - -35
-W hy -35
-W char173 -35
-W e -47
-W , -106
-W : -15
-W a -50
-W O -20
-W A -58
-Y u -52
-Y ; -23
-Y . -145
-Y o -89
-Y - -100
-Y hy -100
-Y char173 -100
-Y e -89
-Y , -145
-Y : -10
-Y a -93
-Y O -30
-Y A -80
-a t 5
-a p 20
-a b 5
-b y -20
-b v -20
-c y -20
-c l -15
-c k -15
-, ' -70
-, rq -70
-e y -20
-e x -20
-e w -20
-e v -20
-f . -40
-f o -20
-f l -15
-f i -15
-f f -20
-f .i -15
-f , -40
-f a -15
-g i 25
-g a 15
-h y -30
-k y -5
-k o -30
-k e -40
-m y -20
-m u -20
-n y -15
-n v -30
-o y -20
-o x -30
-o w -20
-o v -30
-p y -20
-. ' -70
-. rq -70
-lq A -50
-` ` -80
-` oq -80
-oq ` -80
-oq oq -80
-` A -50
-oq A -50
-' v -10
-' t 10
-' s -15
-' r -20
-' ' -80
-' d -50
-r y 40
-r v 40
-r u 20
-r t 20
-r s 20
-r q -8
-r . -73
-r p 20
-r o -15
-r n 21
-r m 15
-r l 20
-r k 5
-r i 20
-r - -60
-r hy -60
-r char173 -60
-r g 1
-r e -4
-r d -6
-r , -75
-r c -7
-s . 20
-s , 20
-v . -90
-v o -20
-v e -20
-v , -90
-v a -30
-w . -90
-w o -30
-w e -20
-w , -90
-w a -30
-x e -20
-y . -100
-y o -30
-y e -20
-y , -100
-y c -35
-y a -30
-charset
-ha 600,740 2 0000 asciicircum
-ti 600,347 0 0001 asciitilde
-vS 520,944,15 2 0002 Scaron
-vZ 500,944 2 0003 Zcaron
-vs 440,774,18 2 0004 scaron
-vz 460,774 2 0005 zcaron
-:Y 620,939 2 0006 Ydieresis
-tm 1000,740 2 0007 trademark
-aq 220,740 2 0010 quotesingle
-space 280 0 0040
-! 280,740 2 0041 exclam
-" 360,740 2 0042 quotedbl
-# 560,700 0 0043 numbersign
-sh "
-$ 560,857,86 2 0044 dollar
-Do "
-% 860,755,15 2 0045 percent
-& 680,755,15 2 0046 ampersand
-' 280,740 2 0047 quoteright
-( 380,754,157 2 0050 parenleft
-) 380,754,157 2 0051 parenright
-* 440,755 2 0052 asterisk
-+ 600,506 0 0053 plus
-, 280,133,141 0 0054 comma
-- 420,348 0 0055 hyphen
-hy "
-char173 "
-. 280,133 0 0056 period
-/ 460,740,100 2 0057 slash
-sl "
-0 560,755,15 2 0060 zero
-1 560,740 2 0061 one
-2 560,755 2 0062 two
-3 560,755,15 2 0063 three
-4 560,740 2 0064 four
-5 560,740,15 2 0065 five
-6 560,739,15 2 0066 six
-7 560,740 2 0067 seven
-8 560,755,15 2 0070 eight
-9 560,754 2 0071 nine
-: 280,555 0 0072 colon
-; 280,555,141 0 0073 semicolon
-< 600,514,8 0 0074 less
-= 600,425 0 0075 equal
-> 600,514,8 0 0076 greater
-? 560,755 2 0077 question
-@ 740,712,12 0 0100 at
-at "
-A 740,740 2 0101 A
-B 580,740 2 0102 B
-C 780,755,15 2 0103 C
-D 700,740 2 0104 D
-E 520,740 2 0105 E
-F 480,740 2 0106 F
-G 840,755,15 2 0107 G
-H 680,740 2 0110 H
-I 280,740 2 0111 I
-J 480,740,15 2 0112 J
-K 620,740 2 0113 K
-L 440,740 2 0114 L
-M 900,740 2 0115 M
-N 740,740 2 0116 N
-O 840,755,15 2 0117 O
-P 560,740 2 0120 P
-Q 840,755,15 2 0121 Q
-R 580,740 2 0122 R
-S 520,755,15 2 0123 S
-T 420,740 2 0124 T
-U 640,740,15 2 0125 U
-V 700,740 2 0126 V
-W 900,740 2 0127 W
-X 680,740 2 0130 X
-Y 620,740 2 0131 Y
-Z 500,740 2 0132 Z
-[ 320,754,157 2 0133 bracketleft
-lB "
-\ 640,740,100 2 0134 backslash
-rs "
-] 320,754,157 2 0135 bracketright
-rB "
-a^ 540,774 2 0136 circumflex
-^ "
-_ 500,0,125 0 0137 underscore
-` 280,740 2 0140 quoteleft
-oq "
-a 660,574,18 0 0141 a
-b 660,740,18 2 0142 b
-c 640,574,18 0 0143 c
-d 660,740,18 2 0144 d
-e 640,577,18 0 0145 e
-f 280,755 2 0146 f
-g 660,574,226 1 0147 g
-h 600,740 2 0150 h
-i 240,740 2 0151 i
-j 260,740,185 3 0152 j
-k 580,740 2 0153 k
-l 240,740 2 0154 l
-m 940,574 0 0155 m
-n 600,574 0 0156 n
-o 640,574,18 0 0157 o
-p 660,574,185 1 0160 p
-q 660,574,185 1 0161 q
-r 320,574 0 0162 r
-s 440,574,18 0 0163 s
-t 300,740 2 0164 t
-u 600,555,18 0 0165 u
-v 560,555 0 0166 v
-w 800,555 0 0167 w
-x 560,555 0 0170 x
-y 580,555,185 1 0171 y
-z 460,555 0 0172 z
-lC 340,747,191 3 0173 braceleft
-{ "
-ba 600,740,100 2 0174 bar
-| "
-rC 340,747,191 3 0175 braceright
-} "
-a~ 480,767 2 0176 tilde
-~ "
-bq 280,133,141 0 0200 quotesinglbase
-Fo 460,469 0 0201 guillemotleft
-char171 "
-Fc 460,469 0 0202 guillemotright
-char187 "
-bu 600,532 0 0203 bullet
-Fn 560,824,151 2 0204 florin
-f/ 160,740 2 0205 fraction
-%0 1280,755,15 2 0206 perthousand
-dg 560,740,142 2 0207 dagger
-dd 560,740,142 2 0210 daggerdbl
-en 500,348 0 0211 endash
-em 1000,348 0 0212 emdash
-fi 520,755 2 0214 fi
-fl 520,755 2 0215 fl
-.i 240,555 0 0220 dotlessi
-ga 420,851 2 0222 grave
-a" 700,862 2 0223 hungarumlaut
-a. 280,769 2 0224 dotaccent
-ab 480,770 2 0225 breve
-ah 540,774 2 0226 caron
-ao 360,834 2 0227 ring
-ho 340,9,195 1 0230 ogonek
-lq 480,740 2 0231 quotedblleft
-rq 480,740 2 0232 quotedblright
-oe 1080,574,18 0 0233 oe
-/l 320,740 2 0234 lslash
-Bq 480,133,141 0 0235 quotedblbase
-OE 1060,755,15 2 0236 OE
-/L 480,740 2 0237 Lslash
-r! 280,555,185 1 0241 exclamdown
-char161 "
-ct 560,715 0 0242 cent
-char162 "
-Po 560,755 2 0243 sterling
-char163 "
-Cs 560,577 0 0244 currency
-char164 "
-Ye 560,740 2 0245 yen
-char165 "
-bb 600,740,100 2 0246 brokenbar
-char166 "
-sc 560,755,158 2 0247 section
-char167 "
-ad 500,769 2 0250 dieresis
-char168 "
-co 740,752,12 2 0251 copyright
-char169 "
-Of 360,755 2 0252 ordfeminine
-char170 "
-fo 240,469 0 0253 guilsinglleft
-no 600,425 0 0254 logicalnot
-char172 "
-\- 600,313 0 0255 minus
-rg 740,752,12 2 0256 registered
-char174 "
-a- 420,759 2 0257 macron
-char175 "
-de 400,712 0 0260 degree
-char176 "
-char177 600,556,62 0 0261 plusminus
-S2 336,749 2 0262 twosuperior
-char178 "
-S3 336,749 2 0263 threesuperior
-char179 "
-aa 420,849 2 0264 acute
-char180 "
-char181 576,555,187 1 0265 mu
-ps 600,740,103 2 0266 paragraph
-char182 "
-char183 280,320 0 0267 periodcentered
-ac 340,6,251 1 0270 cedilla
-char184 "
-S1 336,740 2 0271 onesuperior
-char185 "
-Om 360,755 2 0272 ordmasculine
-char186 "
-fc 240,469 0 0273 guilsinglright
-14 840,740 2 0274 onequarter
-char188 "
-12 840,740 2 0275 onehalf
-char189 "
-34 840,749 2 0276 threequarters
-char190 "
-r? 560,555,200 1 0277 questiondown
-char191 "
-`A 740,1021 2 0300 Agrave
-char192 "
-'A 740,1019 2 0301 Aacute
-char193 "
-^A 740,944 2 0302 Acircumflex
-char194 "
-~A 740,937 2 0303 Atilde
-char195 "
-:A 740,939 2 0304 Adieresis
-char196 "
-oA 740,969 2 0305 Aring
-char197 "
-AE 900,740 2 0306 AE
-char198 "
-,C 780,755,251 3 0307 Ccedilla
-char199 "
-`E 520,1021 2 0310 Egrave
-char200 "
-'E 520,1019 2 0311 Eacute
-char201 "
-^E 520,944 2 0312 Ecircumflex
-char202 "
-:E 520,939 2 0313 Edieresis
-char203 "
-`I 280,1021 2 0314 Igrave
-char204 "
-'I 280,1019 2 0315 Iacute
-char205 "
-^I 280,944 2 0316 Icircumflex
-char206 "
-:I 280,939 2 0317 Idieresis
-char207 "
--D 742,740 2 0320 Eth
-char208 "
-~N 740,937 2 0321 Ntilde
-char209 "
-`O 840,1021,15 2 0322 Ograve
-char210 "
-'O 840,1019,15 2 0323 Oacute
-char211 "
-^O 840,944,15 2 0324 Ocircumflex
-char212 "
-~O 840,937,15 2 0325 Otilde
-char213 "
-:O 840,939,15 2 0326 Odieresis
-char214 "
-char215 600,494 0 0327 multiply
-/O 840,814,71 2 0330 Oslash
-char216 "
-`U 640,1021,15 2 0331 Ugrave
-char217 "
-'U 640,1019,15 2 0332 Uacute
-char218 "
-^U 640,944,15 2 0333 Ucircumflex
-char219 "
-:U 640,939,15 2 0334 Udieresis
-char220 "
-'Y 620,1019 2 0335 Yacute
-char221 "
-TP 560,740 2 0336 Thorn
-char222 "
-ss 600,755,18 2 0337 germandbls
-char223 "
-`a 660,851,18 2 0340 agrave
-char224 "
-'a 660,849,18 2 0341 aacute
-char225 "
-^a 660,774,18 2 0342 acircumflex
-char226 "
-~a 660,767,18 2 0343 atilde
-char227 "
-:a 660,769,18 2 0344 adieresis
-char228 "
-oa 660,834,18 2 0345 aring
-char229 "
-ae 1080,574,18 0 0346 ae
-char230 "
-,c 640,574,251 1 0347 ccedilla
-char231 "
-`e 640,851,18 2 0350 egrave
-char232 "
-'e 640,849,18 2 0351 eacute
-char233 "
-^e 640,774,18 2 0352 ecircumflex
-char234 "
-:e 640,769,18 2 0353 edieresis
-char235 "
-`i 240,851 2 0354 igrave
-char236 "
-'i 240,849 2 0355 iacute
-char237 "
-^i 240,774 2 0356 icircumflex
-char238 "
-:i 240,769 2 0357 idieresis
-char239 "
-Sd 640,754,18 2 0360 eth
-char240 "
-~n 600,767 2 0361 ntilde
-char241 "
-`o 640,851,18 2 0362 ograve
-char242 "
-'o 640,849,18 2 0363 oacute
-char243 "
-^o 640,774,18 2 0364 ocircumflex
-char244 "
-~o 640,767,18 2 0365 otilde
-char245 "
-:o 640,769,18 2 0366 odieresis
-char246 "
-char247 600,526,20 0 0367 divide
-/o 660,608,50 0 0370 oslash
-char248 "
-`u 600,851,18 2 0371 ugrave
-char249 "
-'u 600,849,18 2 0372 uacute
-char250 "
-^u 600,774,18 2 0373 ucircumflex
-char251 "
-:u 600,769,18 2 0374 udieresis
-char252 "
-'y 580,849,185 3 0375 yacute
-char253 "
-Tp 660,740,185 3 0376 thorn
-char254 "
-:y 580,769,185 3 0377 ydieresis
-char255 "
diff --git a/devps/ABI b/devps/ABI
deleted file mode 100644
index 000d95885..000000000
--- a/devps/ABI
+++ /dev/null
@@ -1,560 +0,0 @@
-name ABI
-internalname AvantGarde-DemiOblique
-slant 10.5
-spacewidth 280
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -50
-A w -65
-A v -70
-A u -20
-A ' -90
-A Y -80
-A W -60
-A V -102
-A U -40
-A T -25
-A Q -50
-A O -50
-A G -40
-A C -40
-B A -10
-C A -40
-D . -20
-D , -20
-D Y -45
-D W -25
-D V -50
-D A -50
-F . -129
-F e -20
-F , -162
-F a -20
-F A -75
-G . -20
-G , -20
-G Y -15
-J . -15
-J a -20
-J A -30
-K y -20
-K u -15
-K o -45
-K e -40
-K O -30
-L y -23
-L ' -30
-L rq -30
-L Y -80
-L W -55
-L V -85
-L T -46
-O . -30
-O , -30
-O Y -30
-O X -30
-O W -20
-O V -45
-O T -15
-O A -60
-P . -200
-P o -20
-P e -20
-P , -220
-P a -20
-P A -100
-Q , 20
-R W 25
-R V -10
-R U 25
-R T 40
-R O 25
-S , 20
-T y -10
-T w -55
-T u -46
-T ; -29
-T r -30
-T . -91
-T o -49
-T - -75
-T hy -75
-T char173 -75
-T e -49
-T , -82
-T : -15
-T a -70
-T O -15
-T A -25
-U . -20
-U , -20
-U A -40
-V u -55
-V ; -33
-V . -145
-V o -101
-V i -15
-V - -75
-V hy -75
-V char173 -75
-V e -101
-V , -145
-V : -18
-V a -95
-V O -45
-V G -20
-V A -102
-W y -15
-W u -30
-W ; -33
-W . -106
-W o -46
-W i -10
-W - -35
-W hy -35
-W char173 -35
-W e -47
-W , -106
-W : -15
-W a -50
-W O -20
-W A -58
-Y u -52
-Y ; -23
-Y . -145
-Y o -89
-Y - -100
-Y hy -100
-Y char173 -100
-Y e -89
-Y , -145
-Y : -10
-Y a -93
-Y O -30
-Y A -80
-a t 5
-a p 20
-a b 5
-b y -20
-b v -20
-c y -20
-c l -15
-c k -15
-, ' -70
-, rq -70
-e y -20
-e x -20
-e w -20
-e v -20
-f . -40
-f o -20
-f l -15
-f i -15
-f f -20
-f .i -15
-f , -40
-f a -15
-g i 25
-g a 15
-h y -30
-k y -5
-k o -30
-k e -40
-m y -20
-m u -20
-n y -15
-n v -30
-o y -20
-o x -30
-o w -20
-o v -30
-p y -20
-. ' -70
-. rq -70
-lq A -50
-` ` -80
-` oq -80
-oq ` -80
-oq oq -80
-` A -50
-oq A -50
-' v -10
-' t 10
-' s -15
-' r -20
-' ' -80
-' d -50
-r y 40
-r v 40
-r u 20
-r t 20
-r s 20
-r q -8
-r . -73
-r p 20
-r o -15
-r n 21
-r m 15
-r l 20
-r k 5
-r i 20
-r - -60
-r hy -60
-r char173 -60
-r g 1
-r e -4
-r d -6
-r , -75
-r c -7
-s . 20
-s , 20
-v . -90
-v o -20
-v e -20
-v , -90
-v a -30
-w . -90
-w o -30
-w e -20
-w , -90
-w a -30
-x e -20
-y . -100
-y o -30
-y e -20
-y , -100
-y c -35
-y a -30
-charset
-ha 600,740,0,46,-92,46 2 0000 asciicircum
-ti 600,347,0,29,-64,29 0 0001 asciitilde
-vS 520,944,15,165,1,82 2 0002 Scaron
-vZ 500,944,0,200,31,82 2 0003 Zcaron
-vs 440,774,18,173,1,82 2 0004 scaron
-vz 460,774,0,188,30,82 2 0005 zcaron
-:Y 620,939,0,189,-85,82 2 0006 Ydieresis
-tm 1000,740,0,8,-81,8 2 0007 trademark
-aq 220,740,0,144,-102,82 2 0010 quotesingle
-space 280 0 0040
-! 280,740,0,113,-23,82 2 0041 exclam
-" 360,740,0,168,-77,82 2 0042 quotedbl
-# 560,700,0,108,-16,82 0 0043 numbersign
-sh "
-$ 560,857,86,72,-49,72 2 0044 dollar
-Do "
-% 860,755,15,46,-89,46 2 0045 percent
-& 680,755,15,112,-21,82 2 0046 ampersand
-' 280,740,0,112,-109,82 2 0047 quoteright
-( 380,754,157,160,-70,82 2 0050 parenleft
-) 380,754,157,48,42,48 2 0051 parenright
-* 440,755,0,102,-124,82 2 0052 asterisk
-+ 600,506,0,60,-34,60 0 0053 plus
-, 280,133,141,1,2,1 0 0054 comma
-- 420,348,0,43,-64,43 0 0055 hyphen
-hy "
-char173 "
-. 280,133,0,1,-23,1 0 0056 period
-/ 460,740,100,181,63,82 2 0057 slash
-sl "
-0 560,755,15,118,-20,82 2 0060 zero
-1 560,740,0,0,-180 2 0061 one
-2 560,755,0,112,6,82 2 0062 two
-3 560,755,15,75,-17,75 2 0063 three
-4 560,740,0,94,14,82 2 0064 four
-5 560,740,15,90,-14,82 2 0065 five
-6 560,739,15,77,-14,77 2 0066 six
-7 560,740,0,125,-33,82 2 0067 seven
-8 560,755,15,80,-21,80 2 0070 eight
-9 560,754,0,123,-60,82 2 0071 nine
-: 280,555,0,79,-23,79 0 0072 colon
-; 280,555,141,79,2,79 0 0073 semicolon
-< 600,514,8,99,-34,82 0 0074 less
-= 600,425,0,81,-13,81 0 0075 equal
-> 600,514,8,60,5,60 0 0076 greater
-? 560,755,0,83,-85,82 2 0077 question
-@ 740,712,12,142,-59,82 0 0100 at
-at "
-A 740,740,0,42,43,42 2 0101 A
-B 580,740,0,80,-20,80 2 0102 B
-C 780,755,15,134,-47,82 2 0103 C
-D 700,740,0,82,-13,82 2 0104 D
-E 520,740,0,126,-11,82 2 0105 E
-F 480,740,0,145,-11,82 2 0106 F
-G 840,755,15,97,-39,82 2 0107 G
-H 680,740,0,117,-21,82 2 0110 H
-I 280,740,0,116,-22,82 2 0111 I
-J 480,740,15,116,16,82 2 0112 J
-K 620,740,0,187,-39,82 2 0113 K
-L 440,740,0,69,-22,69 2 0114 L
-M 900,740,0,124,-13,82 2 0115 M
-N 740,740,0,118,-20,82 2 0116 N
-O 840,755,15,92,-45,82 2 0117 O
-P 560,740,0,135,-22,82 2 0120 P
-Q 840,755,15,92,-44,82 2 0121 Q
-R 580,740,0,126,-14,82 2 0122 R
-S 520,755,15,108,1,82 2 0123 S
-T 420,740,0,185,-69,82 2 0124 T
-U 640,740,15,132,-47,82 2 0125 U
-V 700,740,0,182,-95,82 2 0126 V
-W 900,740,0,186,-94,82 2 0127 W
-X 680,740,0,183,46,82 2 0130 X
-Y 620,740,0,189,-85,82 2 0131 Y
-Z 500,740,0,149,31,82 2 0132 Z
-[ 320,754,157,154,-39,82 2 0133 bracketleft
-lB "
-\ 640,740,100,0,-183 2 0134 backslash
-rs "
-] 320,754,157,72,43,72 2 0135 bracketright
-rB "
-a^ 540,774,0,98,-139,82 2 0136 circumflex
-^ "
-_ 500,0,125,36,73,36 0 0137 underscore
-` 280,740,0,111,-108,82 2 0140 quoteleft
-oq "
-a 660,574,18,106,-23,82 0 0141 a
-b 660,740,18,79,3,79 2 0142 b
-c 640,574,18,89,-34,82 0 0143 c
-d 660,740,18,145,-30,82 2 0144 d
-e 640,577,18,77,-27,77 0 0145 e
-f 280,755,0,190,-12,82 2 0146 f
-g 660,574,226,116,17,82 1 0147 g
-h 600,740,0,64,-4,64 2 0150 h
-i 240,740,0,133,-3,82 2 0151 i
-j 260,740,185,132,68,82 3 0152 j
-k 580,740,0,118,-30,82 2 0153 k
-l 240,740,0,134,-4,82 2 0154 l
-m 940,574,0,64,-4,64 0 0155 m
-n 600,574,0,63,-4,63 0 0156 n
-o 640,574,18,82,-21,82 0 0157 o
-p 660,574,185,76,37,76 1 0160 p
-q 660,574,185,106,-28,82 1 0161 q
-r 320,574,0,153,-13,82 0 0162 r
-s 440,574,18,93,1,82 0 0163 s
-t 300,740,0,152,-36,82 2 0164 t
-u 600,555,18,97,-37,82 0 0165 u
-v 560,555,0,149,-56,82 0 0166 v
-w 800,555,0,142,-64,82 0 0167 w
-x 560,555,0,122,47,82 0 0170 x
-y 580,555,185,144,-25,82 1 0171 y
-z 460,555,0,118,30,82 0 0172 z
-lC 340,747,191,165,10,82 3 0173 braceleft
-{ "
-ba 600,740,100,0,-164 2 0174 bar
-| "
-rC 340,747,191,115,62,82 3 0175 braceright
-} "
-a~ 480,767,0,134,-128,82 2 0176 tilde
-~ "
-bq 280,133,141,0,3 0 0200 quotesinglbase
-Fo 460,469,0,77,-55,77 0 0201 guillemotleft
-char171 "
-Fc 460,469,0,53,-31,53 0 0202 guillemotright
-char187 "
-bu 600,532,0,0,-165 0 0203 bullet
-Fn 560,824,151,154,77,82 2 0204 florin
-f/ 160,740,0,309,173,82 2 0205 fraction
-%0 1280,755,15,26,-89,26 2 0206 perthousand
-dg 560,740,142,102,-83,82 2 0207 dagger
-dd 560,740,142,108,-13,82 2 0210 daggerdbl
-en 500,348,0,79,-28,79 0 0211 endash
-em 1000,348,0,79,-28,79 0 0212 emdash
-fi 520,755,0,128,-22,82 2 0214 fi
-fl 520,755,0,128,-22,82 2 0215 fl
-.i 240,555,0,99,-3,82 0 0220 dotlessi
-ga 420,851,0,92,-139,82 2 0222 grave
-a" 700,862,0,104,-208,82 2 0223 hungarumlaut
-a. 280,769,0,120,-142,82 2 0224 dotaccent
-ab 480,770,0,152,-135,82 2 0225 breve
-ah 540,774,0,123,-164,82 2 0226 caron
-ao 360,834,0,114,-156,82 2 0227 ring
-ho 340,9,195,0,-9 1 0230 ogonek
-lq 480,740,0,116,-106,82 2 0231 quotedblleft
-rq 480,740,0,117,-107,82 2 0232 quotedblright
-oe 1080,574,18,78,-26,78 0 0233 oe
-/l 320,740,0,134,-24,82 2 0234 lslash
-Bq 480,133,141,5,5,5 0 0235 quotedblbase
-OE 1060,755,15,134,-48,82 2 0236 OE
-/L 480,740,0,54,-18,54 2 0237 Lslash
-r! 280,555,185,80,10,80 1 0241 exclamdown
-char161 "
-ct 560,715,0,89,-60,82 0 0242 cent
-char162 "
-Po 560,755,0,105,12,82 2 0243 sterling
-char163 "
-Cs 560,577,0,118,-3,82 0 0244 currency
-char164 "
-Ye 560,740,0,197,-33,82 2 0245 yen
-char165 "
-bb 600,740,100,0,-164 2 0246 brokenbar
-char166 "
-sc 560,755,158,92,-15,82 2 0247 section
-char167 "
-ad 500,769,0,115,-146,82 2 0250 dieresis
-char168 "
-co 740,752,12,137,0,82 2 0251 copyright
-char169 "
-Of 360,755,0,162,-77,82 2 0252 ordfeminine
-char170 "
-fo 240,469,0,87,-44,82 0 0253 guilsinglleft
-no 600,425,0,81,-55,81 0 0254 logicalnot
-char172 "
-\- 600,313,0,60,-34,60 0 0255 minus
-rg 740,752,12,137,0,82 2 0256 registered
-char174 "
-a- 420,759,0,120,-142,82 2 0257 macron
-char175 "
-de 400,712,0,101,-110,82 0 0260 degree
-char176 "
-char177 600,556,62,76,13,76 0 0261 plusminus
-S2 336,749,0,150,-23,82 2 0262 twosuperior
-char178 "
-S3 336,749,0,127,-37,82 2 0263 threesuperior
-char179 "
-aa 420,849,0,138,-174,82 2 0264 acute
-char180 "
-char181 576,555,187,116,47,82 1 0265 mu
-ps 600,740,103,194,-40,82 2 0266 paragraph
-char182 "
-char183 280,320,0,35,-58,35 0 0267 periodcentered
-ac 340,6,251,0,-17 1 0270 cedilla
-char184 "
-S1 336,740,0,74,-132,74 2 0271 onesuperior
-char185 "
-Om 360,755,0,141,-81,82 2 0272 ordmasculine
-char186 "
-fc 240,469,0,63,-20,63 0 0273 guilsinglright
-14 840,740,0,0,-137 2 0274 onequarter
-char188 "
-12 840,740,0,40,-107,40 2 0275 onehalf
-char189 "
-34 840,749,0,46,-47,46 2 0276 threequarters
-char190 "
-r? 560,555,200,17,-19,17 1 0277 questiondown
-char191 "
-`A 740,1021,0,42,43,42 2 0300 Agrave
-char192 "
-'A 740,1019,0,42,43,42 2 0301 Aacute
-char193 "
-^A 740,944,0,42,43,42 2 0302 Acircumflex
-char194 "
-~A 740,937,0,42,43,42 2 0303 Atilde
-char195 "
-:A 740,939,0,42,43,42 2 0304 Adieresis
-char196 "
-oA 740,969,0,42,43,42 2 0305 Aring
-char197 "
-AE 900,740,0,111,55,82 2 0306 AE
-char198 "
-,C 780,755,251,134,-47,82 3 0307 Ccedilla
-char199 "
-`E 520,1021,0,126,-11,82 2 0310 Egrave
-char200 "
-'E 520,1019,0,126,-11,82 2 0311 Eacute
-char201 "
-^E 520,944,0,139,-11,82 2 0312 Ecircumflex
-char202 "
-:E 520,939,0,136,-11,82 2 0313 Edieresis
-char203 "
-`I 280,1021,0,168,-22,82 2 0314 Igrave
-char204 "
-'I 280,1019,0,264,-22,82 2 0315 Iacute
-char205 "
-^I 280,944,0,259,-22,82 2 0316 Icircumflex
-char206 "
-:I 280,939,0,256,-22,82 2 0317 Idieresis
-char207 "
--D 742,740,0,74,-33,74 2 0320 Eth
-char208 "
-~N 740,937,0,118,-20,82 2 0321 Ntilde
-char209 "
-`O 840,1021,15,92,-45,82 2 0322 Ograve
-char210 "
-'O 840,1019,15,92,-45,82 2 0323 Oacute
-char211 "
-^O 840,944,15,92,-45,82 2 0324 Ocircumflex
-char212 "
-~O 840,937,15,92,-45,82 2 0325 Otilde
-char213 "
-:O 840,939,15,92,-45,82 2 0326 Odieresis
-char214 "
-char215 600,494,0,67,-26,67 0 0327 multiply
-/O 840,814,71,101,-44,82 2 0330 Oslash
-char216 "
-`U 640,1021,15,132,-47,82 2 0331 Ugrave
-char217 "
-'U 640,1019,15,132,-47,82 2 0332 Uacute
-char218 "
-^U 640,944,15,132,-47,82 2 0333 Ucircumflex
-char219 "
-:U 640,939,15,132,-47,82 2 0334 Udieresis
-char220 "
-'Y 620,1019,0,189,-85,82 2 0335 Yacute
-char221 "
-TP 560,740,0,109,-22,82 2 0336 Thorn
-char222 "
-ss 600,755,18,79,-1,79 2 0337 germandbls
-char223 "
-`a 660,851,18,106,-23,82 2 0340 agrave
-char224 "
-'a 660,849,18,106,-23,82 2 0341 aacute
-char225 "
-^a 660,774,18,106,-23,82 2 0342 acircumflex
-char226 "
-~a 660,767,18,106,-23,82 2 0343 atilde
-char227 "
-:a 660,769,18,106,-23,82 2 0344 adieresis
-char228 "
-oa 660,834,18,106,-23,82 2 0345 aring
-char229 "
-ae 1080,574,18,75,-25,75 0 0346 ae
-char230 "
-,c 640,574,251,89,-33,82 1 0347 ccedilla
-char231 "
-`e 640,851,18,77,-27,77 2 0350 egrave
-char232 "
-'e 640,849,18,77,-27,77 2 0351 eacute
-char233 "
-^e 640,774,18,77,-27,77 2 0352 ecircumflex
-char234 "
-:e 640,769,18,77,-27,77 2 0353 edieresis
-char235 "
-`i 240,851,0,157,-3,82 2 0354 igrave
-char236 "
-'i 240,849,0,253,-3,82 2 0355 iacute
-char237 "
-^i 240,774,0,248,11,82 2 0356 icircumflex
-char238 "
-:i 240,769,0,245,-3,82 2 0357 idieresis
-char239 "
-Sd 640,754,18,109,-23,82 2 0360 eth
-char240 "
-~n 600,767,0,74,-4,74 2 0361 ntilde
-char241 "
-`o 640,851,18,82,-21,82 2 0362 ograve
-char242 "
-'o 640,849,18,82,-21,82 2 0363 oacute
-char243 "
-^o 640,774,18,82,-21,82 2 0364 ocircumflex
-char244 "
-~o 640,767,18,82,-21,82 2 0365 otilde
-char245 "
-:o 640,769,18,82,-21,82 2 0366 odieresis
-char246 "
-char247 600,526,20,60,-34,60 0 0367 divide
-/o 660,608,50,75,-31,75 0 0370 oslash
-char248 "
-`u 600,851,18,97,-37,82 2 0371 ugrave
-char249 "
-'u 600,849,18,97,-37,82 2 0372 uacute
-char250 "
-^u 600,774,18,97,-37,82 2 0373 ucircumflex
-char251 "
-:u 600,769,18,97,-37,82 2 0374 udieresis
-char252 "
-'y 580,849,185,144,-25,82 3 0375 yacute
-char253 "
-Tp 660,740,185,76,37,76 3 0376 thorn
-char254 "
-:y 580,769,185,144,-25,82 3 0377 ydieresis
-char255 "
diff --git a/devps/AI b/devps/AI
deleted file mode 100644
index 686823706..000000000
--- a/devps/AI
+++ /dev/null
@@ -1,559 +0,0 @@
-name AI
-internalname AvantGarde-BookOblique
-slant 10.5
-spacewidth 277
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -62
-A w -65
-A v -70
-A u -20
-A ' -100
-A rq -100
-A Y -92
-A W -60
-A V -102
-A U -40
-A T -45
-A Q -40
-A O -50
-A G -40
-A C -40
-B A -10
-C A -40
-D . -20
-D , -20
-D Y -30
-D W -10
-D V -50
-D A -50
-F . -160
-F e -20
-F , -180
-F a -20
-F A -75
-G . -20
-G , -20
-G Y -20
-J . -15
-J a -20
-J A -30
-K o -15
-K e -20
-K O -20
-L y -23
-L ' -130
-L rq -130
-L Y -91
-L W -67
-L V -113
-L T -46
-O . -30
-O , -30
-O Y -30
-O X -30
-O W -20
-O V -60
-O T -30
-O A -60
-P . -300
-P o -60
-P e -20
-P , -280
-P a -20
-P A -114
-Q , 20
-R Y -10
-R W 10
-R V -10
-R T 6
-S , 20
-T y -50
-T w -55
-T u -46
-T ; -29
-T r -30
-T . -91
-T o -70
-T i 10
-T - -75
-T hy -75
-T char173 -75
-T e -49
-T , -82
-T : -15
-T a -90
-T O -30
-T A -45
-U . -20
-U , -20
-U A -40
-V u -40
-V ; -33
-V . -165
-V o -101
-V i -5
-V - -75
-V hy -75
-V char173 -75
-V e -101
-V , -145
-V : -18
-V a -104
-V O -60
-V G -20
-V A -102
-W y -2
-W u -30
-W ; -33
-W . -106
-W o -46
-W i 6
-W - -35
-W hy -35
-W char173 -35
-W e -47
-W , -106
-W : -15
-W a -50
-W O -20
-W A -58
-Y u -52
-Y ; -23
-Y . -175
-Y o -89
-Y - -85
-Y hy -85
-Y char173 -85
-Y e -89
-Y , -145
-Y : -10
-Y a -93
-Y O -30
-Y A -92
-a p 20
-a b 20
-b y -20
-b v -20
-c y -20
-c k -15
-, ' -120
-, rq -120
-e y -20
-e w -20
-e v -20
-f . -50
-f o -40
-f l -30
-f i -34
-f f -60
-f e -20
-f .i -34
-f , -50
-f a -40
-g a -15
-h y -30
-k y -5
-k e -15
-m y -20
-m u -20
-m a -20
-n y -15
-n v -20
-o y -20
-o x -15
-o w -20
-o v -30
-p y -20
-. ' -120
-. rq -120
-lq ` -35
-lq oq -35
-lq A -100
-` ` -203
-` oq -203
-oq ` -203
-oq oq -203
-` A -100
-oq A -100
-' v -30
-' t 10
-' s -15
-' r -20
-' ' -203
-' rq -35
-' d -110
-r y 40
-r v 40
-r u 20
-r t 20
-r s 20
-r q -8
-r . -73
-r p 20
-r o -20
-r n 21
-r m 28
-r l 20
-r k 20
-r i 20
-r - -60
-r hy -60
-r char173 -60
-r g -15
-r e -4
-r d -6
-r , -75
-r c -20
-r a -20
-s . 20
-s , 20
-v . -130
-v o -30
-v e -20
-v , -100
-v a -30
-w . -100
-w o -30
-w h 15
-w e -20
-w , -90
-w a -30
-y . -125
-y o -30
-y e -20
-y , -110
-y a -30
-charset
-ha 606,740,0,54,-60,54 2 0000 asciicircum
-ti 606,319,0,28,-64,28 0 0001 asciitilde
-vS 498,927,13,145,-7,81 2 0002 Scaron
-vZ 480,927,0,166,38,81 2 0003 Zcaron
-vs 388,764,13,170,1,81 2 0004 scaron
-vz 425,764,0,152,40,81 2 0005 zcaron
-:Y 592,928,0,187,-88,81 2 0006 Ydieresis
-tm 1000,740,0,3,-87,3 2 0007 trademark
-aq 198,740,0,129,-103,81 2 0010 quotesingle
-space 277 0 0040
-! 295,740,0,77,-61,77 2 0041 exclam
-" 309,740,0,151,-80,81 2 0042 quotedbl
-# 554,740,0,116,-21,81 2 0043 numbersign
-sh "
-$ 554,811,70,77,-57,77 2 0044 dollar
-Do "
-% 775,751,13,62,-74,62 2 0045 percent
-& 757,753,12,68,-42,68 2 0046 ampersand
-' 351,740,0,92,-145,81 2 0047 quoteright
-( 369,757,205,176,-39,81 3 0050 parenleft
-) 369,757,205,63,74,63 3 0051 parenright
-* 425,740,0,104,-120,81 2 0052 asterisk
-+ 606,506,0,52,-42,52 0 0053 plus
-, 277,126,67,0,48 0 0054 comma
-- 332,315,0,78,-26,78 0 0055 hyphen
-hy "
-char173 "
-. 277,126,0,0,-52 0 0056 period
-/ 437,740,100,153,25,81 2 0057 slash
-sl "
-0 554,753,13,118,-21,81 2 0060 zero
-1 554,740,0,0,-210 2 0061 one
-2 554,753,0,111,10,81 2 0062 two
-3 554,753,13,61,-23,61 2 0063 three
-4 554,740,0,94,11,81 2 0064 four
-5 554,740,13,101,-19,81 2 0065 five
-6 554,739,13,76,-15,76 2 0066 six
-7 554,740,0,124,-60,81 2 0067 seven
-8 554,753,13,76,-27,76 2 0070 eight
-9 554,752,0,122,-61,81 2 0071 nine
-: 277,548,0,51,-52,51 0 0072 colon
-; 277,548,67,51,48,51 0 0073 semicolon
-< 606,514,8,93,-37,81 0 0074 less
-= 606,388,0,71,-23,71 0 0075 equal
-> 606,514,8,57,-1,57 0 0076 greater
-? 591,752,0,87,-108,81 2 0077 question
-@ 867,753,13,71,-76,71 2 0100 at
-at "
-A 740,740,0,39,38,39 2 0101 A
-B 574,740,0,82,-24,81 2 0102 B
-C 813,752,13,107,-55,81 2 0103 C
-D 744,740,0,79,-24,79 2 0104 D
-E 536,740,0,126,-20,81 2 0105 E
-F 485,740,0,146,-20,81 2 0106 F
-G 872,753,13,69,-53,69 2 0107 G
-H 683,740,0,111,-26,81 2 0110 H
-I 226,740,0,111,-26,81 2 0111 I
-J 482,740,13,107,13,81 2 0112 J
-K 591,740,0,187,-31,81 2 0113 K
-L 462,740,0,62,-32,62 2 0114 L
-M 919,740,0,111,-26,81 2 0115 M
-N 740,740,0,111,-25,81 2 0116 N
-O 869,753,13,82,-55,81 2 0117 O
-P 592,740,0,122,-25,81 2 0120 P
-Q 871,753,13,91,-52,81 2 0121 Q
-R 607,740,0,112,-20,81 2 0122 R
-S 498,753,13,113,-7,81 2 0123 S
-T 426,740,0,180,-81,81 2 0124 T
-U 655,740,13,111,-68,81 2 0125 U
-V 702,740,0,178,-95,81 2 0126 V
-W 960,740,0,177,-98,81 2 0127 W
-X 609,740,0,165,42,81 2 0130 X
-Y 592,740,0,187,-88,81 2 0131 Y
-Z 480,740,0,166,38,81 2 0132 Z
-[ 351,753,179,176,-95,81 2 0133 bracketleft
-lB "
-\ 605,740,100,0,-205 2 0134 backslash
-rs "
-] 351,753,179,11,69,11 2 0135 bracketright
-rB "
-a^ 502,764,0,94,-142,81 2 0136 circumflex
-^ "
-_ 500,0,125,36,73,36 0 0137 underscore
-` 351,740,0,57,-182,57 2 0140 quoteleft
-oq "
-a 683,561,13,89,-38,81 0 0141 a
-b 682,740,13,71,-18,71 2 0142 b
-c 647,561,13,81,-37,81 0 0143 c
-d 685,740,13,120,-35,81 2 0144 d
-e 650,561,13,64,-34,64 0 0145 e
-f 314,753,0,190,-54,81 2 0146 f
-g 673,561,215,84,-6,81 1 0147 g
-h 610,740,0,46,-12,46 2 0150 h
-i 200,740,0,122,-15,81 2 0151 i
-j 203,740,192,121,130,81 3 0152 j
-k 502,740,0,136,-20,81 2 0153 k
-l 200,740,0,122,-15,81 2 0154 l
-m 938,561,0,50,-16,50 0 0155 m
-n 610,561,0,49,-15,49 0 0156 n
-o 655,561,13,64,-38,64 0 0157 o
-p 682,561,192,67,22,67 1 0160 p
-q 682,561,192,85,-33,81 1 0161 q
-r 301,561,0,144,-15,81 0 0162 r
-s 388,561,13,86,1,81 0 0163 s
-t 339,740,0,142,-54,81 2 0164 t
-u 608,547,13,84,-50,81 0 0165 u
-v 554,547,0,143,-58,81 0 0166 v
-w 831,547,0,140,-64,81 0 0167 w
-x 480,547,0,139,38,81 0 0170 x
-y 536,547,192,138,-47,81 1 0171 y
-z 425,547,0,123,40,81 0 0172 z
-lC 351,740,189,167,-65,81 2 0173 braceleft
-{ "
-ba 672,740,100,0,-230 2 0174 bar
-| "
-rC 351,740,189,37,65,37 2 0175 braceright
-} "
-a~ 439,754,0,131,-129,81 2 0176 tilde
-~ "
-bq 354,126,68,0,-26 0 0200 quotesinglbase
-Fo 425,481,0,94,-42,81 0 0201 guillemotleft
-char171 "
-Fc 425,481,0,62,-10,62 0 0202 guillemotright
-char187 "
-bu 606,532,0,0,-167 0 0203 bullet
-Fn 554,818,153,165,89,81 2 0204 florin
-f/ 166,740,0,301,163,81 2 0205 fraction
-%0 1174,751,13,58,-78,58 2 0206 perthousand
-dg 553,740,133,90,-96,81 2 0207 dagger
-dd 553,740,133,90,-22,81 2 0210 daggerdbl
-en 500,315,0,73,-31,73 0 0211 endash
-em 1000,315,0,73,-31,73 0 0212 emdash
-fi 487,753,0,122,-54,81 2 0214 fi
-fl 485,753,0,122,-54,81 2 0215 fl
-.i 200,547,0,86,-15,81 0 0220 dotlessi
-ga 378,786,0,97,-154,81 2 0222 grave
-a" 552,800,0,92,-189,81 2 0223 hungarumlaut
-a. 222,765,0,118,-142,81 2 0224 dotaccent
-ab 453,754,0,138,-142,81 2 0225 breve
-ah 502,764,0,113,-160,81 2 0226 caron
-ao 332,807,0,119,-141,81 2 0227 ring
-ho 302,0,191,0,-3 1 0230 ogonek
-lq 502,740,0,55,-184,55 2 0231 quotedblleft
-rq 484,740,0,108,-147,81 2 0232 quotedblright
-oe 1137,561,13,73,-30,73 0 0233 oe
-/l 300,740,0,104,-45,81 2 0234 lslash
-Bq 502,126,68,0,-26 0 0235 quotedblbase
-OE 1194,753,13,135,-57,81 2 0236 OE
-/L 517,740,0,62,-57,62 2 0237 Lslash
-r! 295,548,192,41,-24,41 1 0241 exclamdown
-char161 "
-ct 554,707,0,92,-65,81 0 0242 cent
-char162 "
-Po 554,753,0,110,21,81 2 0243 sterling
-char163 "
-Cs 554,580,0,141,26,81 0 0244 currency
-char164 "
-Ye 554,740,0,183,-25,81 2 0245 yen
-char165 "
-bb 672,740,100,0,-230 2 0246 brokenbar
-char166 "
-sc 615,753,141,32,-68,32 2 0247 section
-char167 "
-ad 369,765,0,118,-141,81 2 0250 dieresis
-char168 "
-co 747,752,12,133,-3,81 2 0251 copyright
-char169 "
-Of 369,753,0,175,-52,81 2 0252 ordfeminine
-char170 "
-fo 251,481,0,94,-42,81 0 0253 guilsinglleft
-no 606,388,0,71,-60,71 0 0254 logicalnot
-char172 "
-\- 606,287,0,52,-42,52 0 0255 minus
-rg 747,752,12,133,-3,81 2 0256 registered
-char174 "
-a- 485,736,0,112,-147,81 0 0257 macron
-char175 "
-de 400,709,0,101,-108,81 0 0260 degree
-char176 "
-char177 606,518,24,62,3,62 0 0261 plusminus
-S2 332,747,0,151,-24,81 2 0262 twosuperior
-char178 "
-S3 332,747,0,126,-48,81 2 0263 threesuperior
-char179 "
-aa 375,786,0,119,-153,81 2 0264 acute
-char180 "
-char181 608,547,184,70,4,70 0 0265 mu
-ps 564,740,110,174,-69,81 2 0266 paragraph
-char182 "
-char183 277,316,0,8,-87,8 0 0267 periodcentered
-ac 324,0,222,0,-2 1 0270 cedilla
-char184 "
-S1 332,740,0,53,-140,53 2 0271 onesuperior
-char185 "
-Om 369,753,0,147,-66,81 2 0272 ordmasculine
-char186 "
-fc 251,481,0,62,-10,62 0 0273 guilsinglright
-14 831,740,0,0,-133 2 0274 onequarter
-char188 "
-12 831,740,0,29,-114,29 2 0275 onehalf
-char189 "
-34 831,747,0,44,-76,44 2 0276 threequarters
-char190 "
-r? 591,548,205,0,-14 1 0277 questiondown
-char191 "
-`A 740,949,0,39,38,39 2 0300 Agrave
-char192 "
-'A 740,949,0,39,38,39 2 0301 Aacute
-char193 "
-^A 740,927,0,39,38,39 2 0302 Acircumflex
-char194 "
-~A 740,917,0,39,38,39 2 0303 Atilde
-char195 "
-:A 740,928,0,39,38,39 2 0304 Adieresis
-char196 "
-oA 740,955,0,39,38,39 2 0305 Aring
-char197 "
-AE 992,740,0,102,70,81 2 0306 AE
-char198 "
-,C 813,752,222,107,-55,81 3 0307 Ccedilla
-char199 "
-`E 536,949,0,126,-20,81 2 0310 Egrave
-char200 "
-'E 536,949,0,126,-20,81 2 0311 Eacute
-char201 "
-^E 536,927,0,126,-20,81 2 0312 Ecircumflex
-char202 "
-:E 536,928,0,126,-20,81 2 0313 Edieresis
-char203 "
-`I 226,949,0,164,-26,81 2 0314 Igrave
-char204 "
-'I 226,949,0,264,-26,81 2 0315 Iacute
-char205 "
-^I 226,927,0,263,-26,81 2 0316 Icircumflex
-char206 "
-:I 226,928,0,220,-26,81 2 0317 Idieresis
-char207 "
--D 790,740,0,73,-54,73 2 0320 Eth
-char208 "
-~N 740,917,0,111,-25,81 2 0321 Ntilde
-char209 "
-`O 869,949,13,82,-55,81 2 0322 Ograve
-char210 "
-'O 869,949,13,82,-55,81 2 0323 Oacute
-char211 "
-^O 869,927,13,82,-55,81 2 0324 Ocircumflex
-char212 "
-~O 869,917,13,82,-55,81 2 0325 Otilde
-char213 "
-:O 869,928,13,82,-55,81 2 0326 Odieresis
-char214 "
-char215 606,482,0,56,-37,56 0 0327 multiply
-/O 868,819,83,111,-26,81 2 0330 Oslash
-char216 "
-`U 655,949,13,111,-68,81 2 0331 Ugrave
-char217 "
-'U 655,949,13,111,-68,81 2 0332 Uacute
-char218 "
-^U 655,927,13,111,-68,81 2 0333 Ucircumflex
-char219 "
-:U 655,928,13,111,-68,81 2 0334 Udieresis
-char220 "
-'Y 592,949,0,187,-88,81 2 0335 Yacute
-char221 "
-TP 592,740,0,79,-10,79 2 0336 Thorn
-char222 "
-ss 554,753,13,74,-11,74 2 0337 germandbls
-char223 "
-`a 683,786,13,89,-38,81 2 0340 agrave
-char224 "
-'a 683,786,13,89,-38,81 2 0341 aacute
-char225 "
-^a 683,764,13,89,-38,81 2 0342 acircumflex
-char226 "
-~a 683,754,13,89,-38,81 2 0343 atilde
-char227 "
-:a 683,765,13,89,-38,81 2 0344 adieresis
-char228 "
-oa 683,807,13,89,-38,81 2 0345 aring
-char229 "
-ae 1157,561,13,62,-30,62 0 0346 ae
-char230 "
-,c 647,561,222,81,-37,81 1 0347 ccedilla
-char231 "
-`e 650,786,13,64,-34,64 2 0350 egrave
-char232 "
-'e 650,786,13,64,-34,64 2 0351 eacute
-char233 "
-^e 650,764,13,64,-34,64 2 0352 ecircumflex
-char234 "
-:e 650,765,13,64,-34,64 2 0353 edieresis
-char235 "
-`i 200,786,0,146,-15,81 2 0354 igrave
-char236 "
-'i 200,786,0,247,-15,81 2 0355 iacute
-char237 "
-^i 200,764,0,245,9,81 2 0356 icircumflex
-char238 "
-:i 200,765,0,203,-15,81 2 0357 idieresis
-char239 "
-Sd 655,753,12,70,-38,70 2 0360 eth
-char240 "
-~n 610,754,0,49,-15,49 2 0361 ntilde
-char241 "
-`o 655,786,13,64,-38,64 2 0362 ograve
-char242 "
-'o 655,786,13,64,-38,64 2 0363 oacute
-char243 "
-^o 655,764,13,64,-38,64 2 0364 ocircumflex
-char244 "
-~o 655,754,13,64,-38,64 2 0365 otilde
-char245 "
-:o 655,765,13,64,-38,64 2 0366 odieresis
-char246 "
-char247 606,519,13,52,-42,52 0 0367 divide
-/o 653,614,64,100,-1,81 0 0370 oslash
-char248 "
-`u 608,786,13,84,-50,81 2 0371 ugrave
-char249 "
-'u 608,786,13,84,-50,81 2 0372 uacute
-char250 "
-^u 608,764,13,84,-50,81 2 0373 ucircumflex
-char251 "
-:u 608,765,13,84,-50,81 2 0374 udieresis
-char252 "
-'y 536,786,192,138,-47,81 3 0375 yacute
-char253 "
-Tp 682,740,192,67,22,67 3 0376 thorn
-char254 "
-:y 536,765,192,138,-47,81 3 0377 ydieresis
-char255 "
diff --git a/devps/AR b/devps/AR
deleted file mode 100644
index 00fd6320b..000000000
--- a/devps/AR
+++ /dev/null
@@ -1,558 +0,0 @@
-name AR
-internalname AvantGarde-Book
-spacewidth 277
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -62
-A w -65
-A v -70
-A u -20
-A ' -100
-A rq -100
-A Y -92
-A W -60
-A V -102
-A U -40
-A T -45
-A Q -40
-A O -50
-A G -40
-A C -40
-B A -10
-C A -40
-D . -20
-D , -20
-D Y -30
-D W -10
-D V -50
-D A -50
-F . -160
-F e -20
-F , -180
-F a -20
-F A -75
-G . -20
-G , -20
-G Y -20
-J . -15
-J a -20
-J A -30
-K o -15
-K e -20
-K O -20
-L y -23
-L ' -130
-L rq -130
-L Y -91
-L W -67
-L V -113
-L T -46
-O . -30
-O , -30
-O Y -30
-O X -30
-O W -20
-O V -60
-O T -30
-O A -60
-P . -300
-P o -60
-P e -20
-P , -280
-P a -20
-P A -114
-Q , 20
-R Y -10
-R W 10
-R V -10
-R T 6
-S , 20
-T y -50
-T w -55
-T u -46
-T ; -29
-T r -30
-T . -91
-T o -70
-T i 10
-T - -75
-T hy -75
-T char173 -75
-T e -49
-T , -82
-T : -15
-T a -90
-T O -30
-T A -45
-U . -20
-U , -20
-U A -40
-V u -40
-V ; -33
-V . -165
-V o -101
-V i -5
-V - -75
-V hy -75
-V char173 -75
-V e -101
-V , -145
-V : -18
-V a -104
-V O -60
-V G -20
-V A -102
-W y -2
-W u -30
-W ; -33
-W . -106
-W o -46
-W i 6
-W - -35
-W hy -35
-W char173 -35
-W e -47
-W , -106
-W : -15
-W a -50
-W O -20
-W A -58
-Y u -52
-Y ; -23
-Y . -175
-Y o -89
-Y - -85
-Y hy -85
-Y char173 -85
-Y e -89
-Y , -145
-Y : -10
-Y a -93
-Y O -30
-Y A -92
-a p 20
-a b 20
-b y -20
-b v -20
-c y -20
-c k -15
-, ' -120
-, rq -120
-e y -20
-e w -20
-e v -20
-f . -50
-f o -40
-f l -30
-f i -34
-f f -60
-f e -20
-f .i -34
-f , -50
-f a -40
-g a -15
-h y -30
-k y -5
-k e -15
-m y -20
-m u -20
-m a -20
-n y -15
-n v -20
-o y -20
-o x -15
-o w -20
-o v -30
-p y -20
-. ' -120
-. rq -120
-lq ` -35
-lq oq -35
-lq A -100
-` ` -203
-` oq -203
-oq ` -203
-oq oq -203
-` A -100
-oq A -100
-' v -30
-' t 10
-' s -15
-' r -20
-' ' -203
-' rq -35
-' d -110
-r y 40
-r v 40
-r u 20
-r t 20
-r s 20
-r q -8
-r . -73
-r p 20
-r o -20
-r n 21
-r m 28
-r l 20
-r k 20
-r i 20
-r - -60
-r hy -60
-r char173 -60
-r g -15
-r e -4
-r d -6
-r , -75
-r c -20
-r a -20
-s . 20
-s , 20
-v . -130
-v o -30
-v e -20
-v , -100
-v a -30
-w . -100
-w o -30
-w h 15
-w e -20
-w , -90
-w a -30
-y . -125
-y o -30
-y e -20
-y , -110
-y a -30
-charset
-ha 606,740 2 0000 asciicircum
-ti 606,319 0 0001 asciitilde
-vS 498,927,13 2 0002 Scaron
-vZ 480,927 2 0003 Zcaron
-vs 388,764,13 2 0004 scaron
-vz 425,764 2 0005 zcaron
-:Y 592,928 2 0006 Ydieresis
-tm 1000,740 2 0007 trademark
-aq 198,740 2 0010 quotesingle
-space 277 0 0040
-! 295,740 2 0041 exclam
-" 309,740 2 0042 quotedbl
-# 554,740 2 0043 numbersign
-sh "
-$ 554,811,70 2 0044 dollar
-Do "
-% 775,751,13 2 0045 percent
-& 757,753,12 2 0046 ampersand
-' 351,740 2 0047 quoteright
-( 369,757,205 3 0050 parenleft
-) 369,757,205 3 0051 parenright
-* 425,740 2 0052 asterisk
-+ 606,506 0 0053 plus
-, 277,126,67 0 0054 comma
-- 332,315 0 0055 hyphen
-hy "
-char173 "
-. 277,126 0 0056 period
-/ 437,740,100 2 0057 slash
-sl "
-0 554,753,13 2 0060 zero
-1 554,740 2 0061 one
-2 554,753 2 0062 two
-3 554,753,13 2 0063 three
-4 554,740 2 0064 four
-5 554,740,13 2 0065 five
-6 554,739,13 2 0066 six
-7 554,740 2 0067 seven
-8 554,753,13 2 0070 eight
-9 554,752 2 0071 nine
-: 277,548 0 0072 colon
-; 277,548,67 0 0073 semicolon
-< 606,514,8 0 0074 less
-= 606,388 0 0075 equal
-> 606,514,8 0 0076 greater
-? 591,752 2 0077 question
-@ 867,753,13 2 0100 at
-at "
-A 740,740 2 0101 A
-B 574,740 2 0102 B
-C 813,752,13 2 0103 C
-D 744,740 2 0104 D
-E 536,740 2 0105 E
-F 485,740 2 0106 F
-G 872,753,13 2 0107 G
-H 683,740 2 0110 H
-I 226,740 2 0111 I
-J 482,740,13 2 0112 J
-K 591,740 2 0113 K
-L 462,740 2 0114 L
-M 919,740 2 0115 M
-N 740,740 2 0116 N
-O 869,753,13 2 0117 O
-P 592,740 2 0120 P
-Q 871,753,13 2 0121 Q
-R 607,740 2 0122 R
-S 498,753,13 2 0123 S
-T 426,740 2 0124 T
-U 655,740,13 2 0125 U
-V 702,740 2 0126 V
-W 960,740 2 0127 W
-X 609,740 2 0130 X
-Y 592,740 2 0131 Y
-Z 480,740 2 0132 Z
-[ 351,753,179 2 0133 bracketleft
-lB "
-\ 605,740,100 2 0134 backslash
-rs "
-] 351,753,179 2 0135 bracketright
-rB "
-a^ 502,764 2 0136 circumflex
-^ "
-_ 500,0,125 0 0137 underscore
-` 351,740 2 0140 quoteleft
-oq "
-a 683,561,13 0 0141 a
-b 682,740,13 2 0142 b
-c 647,561,13 0 0143 c
-d 685,740,13 2 0144 d
-e 650,561,13 0 0145 e
-f 314,753 2 0146 f
-g 673,561,215 1 0147 g
-h 610,740 2 0150 h
-i 200,740 2 0151 i
-j 203,740,192 3 0152 j
-k 502,740 2 0153 k
-l 200,740 2 0154 l
-m 938,561 0 0155 m
-n 610,561 0 0156 n
-o 655,561,13 0 0157 o
-p 682,561,192 1 0160 p
-q 682,561,192 1 0161 q
-r 301,561 0 0162 r
-s 388,561,13 0 0163 s
-t 339,740 2 0164 t
-u 608,547,13 0 0165 u
-v 554,547 0 0166 v
-w 831,547 0 0167 w
-x 480,547 0 0170 x
-y 536,547,192 1 0171 y
-z 425,547 0 0172 z
-lC 351,740,189 2 0173 braceleft
-{ "
-ba 672,740,100 2 0174 bar
-| "
-rC 351,740,189 2 0175 braceright
-} "
-a~ 439,754 2 0176 tilde
-~ "
-bq 354,126,68 0 0200 quotesinglbase
-Fo 425,481 0 0201 guillemotleft
-char171 "
-Fc 425,481 0 0202 guillemotright
-char187 "
-bu 606,532 0 0203 bullet
-Fn 554,818,153 2 0204 florin
-f/ 166,740 2 0205 fraction
-%0 1174,751,13 2 0206 perthousand
-dg 553,740,133 2 0207 dagger
-dd 553,740,133 2 0210 daggerdbl
-en 500,315 0 0211 endash
-em 1000,315 0 0212 emdash
-fi 487,753 2 0214 fi
-fl 485,753 2 0215 fl
-.i 200,547 0 0220 dotlessi
-ga 378,786 2 0222 grave
-a" 552,800 2 0223 hungarumlaut
-a. 222,765 2 0224 dotaccent
-ab 453,754 2 0225 breve
-ah 502,764 2 0226 caron
-ao 332,807 2 0227 ring
-ho 302,0,191 1 0230 ogonek
-lq 502,740 2 0231 quotedblleft
-rq 484,740 2 0232 quotedblright
-oe 1137,561,13 0 0233 oe
-/l 300,740 2 0234 lslash
-Bq 502,126,68 0 0235 quotedblbase
-OE 1194,753,13 2 0236 OE
-/L 517,740 2 0237 Lslash
-r! 295,548,192 1 0241 exclamdown
-char161 "
-ct 554,707 0 0242 cent
-char162 "
-Po 554,753 2 0243 sterling
-char163 "
-Cs 554,580 0 0244 currency
-char164 "
-Ye 554,740 2 0245 yen
-char165 "
-bb 672,740,100 2 0246 brokenbar
-char166 "
-sc 615,753,141 2 0247 section
-char167 "
-ad 369,765 2 0250 dieresis
-char168 "
-co 747,752,12 2 0251 copyright
-char169 "
-Of 369,753 2 0252 ordfeminine
-char170 "
-fo 251,481 0 0253 guilsinglleft
-no 606,388 0 0254 logicalnot
-char172 "
-\- 606,287 0 0255 minus
-rg 747,752,12 2 0256 registered
-char174 "
-a- 485,736 0 0257 macron
-char175 "
-de 400,709 0 0260 degree
-char176 "
-char177 606,518,24 0 0261 plusminus
-S2 332,747 2 0262 twosuperior
-char178 "
-S3 332,747 2 0263 threesuperior
-char179 "
-aa 375,786 2 0264 acute
-char180 "
-char181 608,547,184 0 0265 mu
-ps 564,740,110 2 0266 paragraph
-char182 "
-char183 277,316 0 0267 periodcentered
-ac 324,0,222 1 0270 cedilla
-char184 "
-S1 332,740 2 0271 onesuperior
-char185 "
-Om 369,753 2 0272 ordmasculine
-char186 "
-fc 251,481 0 0273 guilsinglright
-14 831,740 2 0274 onequarter
-char188 "
-12 831,740 2 0275 onehalf
-char189 "
-34 831,747 2 0276 threequarters
-char190 "
-r? 591,548,205 1 0277 questiondown
-char191 "
-`A 740,949 2 0300 Agrave
-char192 "
-'A 740,949 2 0301 Aacute
-char193 "
-^A 740,927 2 0302 Acircumflex
-char194 "
-~A 740,917 2 0303 Atilde
-char195 "
-:A 740,928 2 0304 Adieresis
-char196 "
-oA 740,955 2 0305 Aring
-char197 "
-AE 992,740 2 0306 AE
-char198 "
-,C 813,752,222 3 0307 Ccedilla
-char199 "
-`E 536,949 2 0310 Egrave
-char200 "
-'E 536,949 2 0311 Eacute
-char201 "
-^E 536,927 2 0312 Ecircumflex
-char202 "
-:E 536,928 2 0313 Edieresis
-char203 "
-`I 226,949 2 0314 Igrave
-char204 "
-'I 226,949 2 0315 Iacute
-char205 "
-^I 226,927 2 0316 Icircumflex
-char206 "
-:I 226,928 2 0317 Idieresis
-char207 "
--D 790,740 2 0320 Eth
-char208 "
-~N 740,917 2 0321 Ntilde
-char209 "
-`O 869,949,13 2 0322 Ograve
-char210 "
-'O 869,949,13 2 0323 Oacute
-char211 "
-^O 869,927,13 2 0324 Ocircumflex
-char212 "
-~O 869,917,13 2 0325 Otilde
-char213 "
-:O 869,928,13 2 0326 Odieresis
-char214 "
-char215 606,482 0 0327 multiply
-/O 868,819,83 2 0330 Oslash
-char216 "
-`U 655,949,13 2 0331 Ugrave
-char217 "
-'U 655,949,13 2 0332 Uacute
-char218 "
-^U 655,927,13 2 0333 Ucircumflex
-char219 "
-:U 655,928,13 2 0334 Udieresis
-char220 "
-'Y 592,949 2 0335 Yacute
-char221 "
-TP 592,740 2 0336 Thorn
-char222 "
-ss 554,753,13 2 0337 germandbls
-char223 "
-`a 683,786,13 2 0340 agrave
-char224 "
-'a 683,786,13 2 0341 aacute
-char225 "
-^a 683,764,13 2 0342 acircumflex
-char226 "
-~a 683,754,13 2 0343 atilde
-char227 "
-:a 683,765,13 2 0344 adieresis
-char228 "
-oa 683,807,13 2 0345 aring
-char229 "
-ae 1157,561,13 0 0346 ae
-char230 "
-,c 647,561,222 1 0347 ccedilla
-char231 "
-`e 650,786,13 2 0350 egrave
-char232 "
-'e 650,786,13 2 0351 eacute
-char233 "
-^e 650,764,13 2 0352 ecircumflex
-char234 "
-:e 650,765,13 2 0353 edieresis
-char235 "
-`i 200,786 2 0354 igrave
-char236 "
-'i 200,786 2 0355 iacute
-char237 "
-^i 200,764 2 0356 icircumflex
-char238 "
-:i 200,765 2 0357 idieresis
-char239 "
-Sd 655,753,12 2 0360 eth
-char240 "
-~n 610,754 2 0361 ntilde
-char241 "
-`o 655,786,13 2 0362 ograve
-char242 "
-'o 655,786,13 2 0363 oacute
-char243 "
-^o 655,764,13 2 0364 ocircumflex
-char244 "
-~o 655,754,13 2 0365 otilde
-char245 "
-:o 655,765,13 2 0366 odieresis
-char246 "
-char247 606,519,13 0 0367 divide
-/o 653,614,64 0 0370 oslash
-char248 "
-`u 608,786,13 2 0371 ugrave
-char249 "
-'u 608,786,13 2 0372 uacute
-char250 "
-^u 608,764,13 2 0373 ucircumflex
-char251 "
-:u 608,765,13 2 0374 udieresis
-char252 "
-'y 536,786,192 3 0375 yacute
-char253 "
-Tp 682,740,192 3 0376 thorn
-char254 "
-:y 536,765,192 3 0377 ydieresis
-char255 "
diff --git a/devps/BMB b/devps/BMB
deleted file mode 100644
index 270f7db56..000000000
--- a/devps/BMB
+++ /dev/null
@@ -1,438 +0,0 @@
-name BMB
-internalname Bookman-Demi
-spacewidth 340
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -1
-A w -9
-A v -8
-A Y -52
-A W -20
-A V -68
-A T -40
-F . -132
-F , -130
-F A -59
-L y 19
-L Y -35
-L W -41
-L V -50
-L T -4
-P . -128
-P , -129
-P A -46
-R y -8
-R Y -20
-R W -24
-R V -29
-R T -4
-T ; 5
-T s -10
-T r 27
-T . -122
-T o -28
-T i 27
-T - -10
-T hy -10
-T char173 -10
-T e -29
-T , -122
-T : 7
-T c -29
-T a -24
-T A -42
-V y 12
-V u -11
-V ; -38
-V r -15
-V . -105
-V o -79
-V i 15
-V - -10
-V hy -10
-V char173 -10
-V e -80
-V , -103
-V : -37
-V a -74
-V A -88
-W y 12
-W u -11
-W ; -38
-W r -15
-W . -105
-W o -78
-W i 15
-W - -10
-W hy -10
-W char173 -10
-W e -79
-W , -103
-W : -37
-W a -73
-W A -60
-Y v 24
-Y u -13
-Y ; -34
-Y q -66
-Y . -105
-Y p -23
-Y o -66
-Y i 2
-Y - -10
-Y hy -10
-Y char173 -10
-Y e -67
-Y , -103
-Y : -32
-Y a -60
-Y A -56
-f f 21
-r q -9
-r . -102
-r o -9
-r n 20
-r m 20
-r - -10
-r hy -10
-r char173 -10
-r h -23
-r g -9
-r f 20
-r e -10
-r d -10
-r , -101
-r c -9
-charset
-ha 600,681 2 0000 asciicircum
-ti 600,368 0 0001 asciitilde
-vS 660,896,17 2 0002 Scaron
-vZ 640,896 2 0003 Zcaron
-vs 520,717,8 2 0004 scaron
-vz 560,717 2 0005 zcaron
-:Y 700,877 2 0006 Ydieresis
-tm 980,681 2 0007 trademark
-aq 240,698 2 0010 quotesingle
-space 340 0 0040
-! 360,698,8 2 0041 exclam
-" 420,698 2 0042 quotedbl
-# 660,681 2 0043 numbersign
-sh "
-$ 660,805,119 2 0044 dollar
-Do "
-% 940,698,8 2 0045 percent
-& 800,698,17 2 0046 ampersand
-' 320,698 2 0047 quoteright
-( 320,749,150 2 0050 parenleft
-) 320,749,150 2 0051 parenright
-* 460,697 2 0052 asterisk
-+ 600,514 0 0053 plus
-, 340,162,124 0 0054 comma
-- 360,318 0 0055 hyphen
-hy "
-char173 "
-. 340,172,8 0 0056 period
-/ 600,725,149 2 0057 slash
-sl "
-0 660,698,17 2 0060 zero
-1 660,681 2 0061 one
-2 660,698 2 0062 two
-3 660,698,17 2 0063 three
-4 660,681 2 0064 four
-5 660,723,17 2 0065 five
-6 660,698,17 2 0066 six
-7 660,681 2 0067 seven
-8 660,698,17 2 0070 eight
-9 660,698,17 2 0071 nine
-: 340,515,8 0 0072 colon
-; 340,515,124 0 0073 semicolon
-< 600,542,9 0 0074 less
-= 600,421 0 0075 equal
-> 600,542,9 0 0076 greater
-? 660,698,8 2 0077 question
-@ 820,698,17 2 0100 at
-at "
-A 720,681 2 0101 A
-B 720,681 2 0102 B
-C 740,698,17 2 0103 C
-D 780,681 2 0104 D
-E 720,681 2 0105 E
-F 680,681 2 0106 F
-G 780,698,17 2 0107 G
-H 820,681 2 0110 H
-I 400,681 2 0111 I
-J 640,681,17 2 0112 J
-K 800,681 2 0113 K
-L 640,681 2 0114 L
-M 940,681 2 0115 M
-N 740,681 2 0116 N
-O 800,698,17 2 0117 O
-P 660,681 2 0120 P
-Q 800,698,226 3 0121 Q
-R 780,681 2 0122 R
-S 660,698,17 2 0123 S
-T 700,681 2 0124 T
-U 740,681,17 2 0125 U
-V 720,681 2 0126 V
-W 940,681 2 0127 W
-X 780,681 2 0130 X
-Y 700,681 2 0131 Y
-Z 640,681 2 0132 Z
-[ 300,725,138 2 0133 bracketleft
-lB "
-\ 600,725 2 0134 backslash
-rs "
-] 300,725,138 2 0135 bracketright
-rB "
-a^ 500,731 2 0136 circumflex
-^ "
-_ 500,0,155 0 0137 underscore
-` 320,698 2 0140 quoteleft
-oq "
-a 580,515,8 0 0141 a
-b 600,725,8 2 0142 b
-c 580,515,8 0 0143 c
-d 640,725,8 2 0144 d
-e 580,515,8 0 0145 e
-f 380,741 2 0146 f
-g 580,595,243 1 0147 g
-h 680,725 2 0150 h
-i 360,729 2 0151 i
-j 340,729,221 3 0152 j
-k 660,725 2 0153 k
-l 340,725 2 0154 l
-m 1000,515 0 0155 m
-n 680,515 0 0156 n
-o 620,515,8 0 0157 o
-p 640,515,212 1 0160 p
-q 620,515,212 1 0161 q
-r 460,502 0 0162 r
-s 520,515,8 0 0163 s
-t 460,660,8 2 0164 t
-u 660,502,8 0 0165 u
-v 600,502 0 0166 v
-w 800,502 0 0167 w
-x 600,502 0 0170 x
-y 620,502,221 1 0171 y
-z 560,502 0 0172 z
-lC 320,726,139 2 0173 braceleft
-{ "
-ba 600,725 2 0174 bar
-| "
-rC 320,726,139 2 0175 braceright
-} "
-a~ 480,691 2 0176 tilde
-~ "
-bq 320,144,114 0 0200 quotesinglbase
-Fo 400,457 0 0201 guillemotleft
-char171 "
-Fc 400,457 0 0202 guillemotright
-char187 "
-bu 460,511 0 0203 bullet
-Fn 660,749,209 2 0204 florin
-f/ 120,681 2 0205 fraction
-%0 1360,698,8 2 0206 perthousand
-dg 440,698,156 2 0207 dagger
-dd 380,698,156 2 0210 daggerdbl
-en 500,318 0 0211 endash
-em 1000,318 0 0212 emdash
-fi 740,741 2 0214 fi
-fl 740,741 2 0215 fl
-.i 360,502 0 0220 dotlessi
-ga 400,730 2 0222 grave
-a" 440,741 2 0223 hungarumlaut
-a. 320,730 2 0224 dotaccent
-ab 500,722 2 0225 breve
-ah 500,717 2 0226 caron
-ao 340,755 2 0227 ring
-ho 320,0,163 0 0230 ogonek
-lq 540,698 2 0231 quotedblleft
-rq 540,698 2 0232 quotedblright
-oe 940,515,8 0 0233 oe
-/l 340,725 2 0234 lslash
-Bq 540,144,114 0 0235 quotedblbase
-OE 1220,698,17 2 0236 OE
-/L 640,681 2 0237 Lslash
-r! 360,515,191 0 0241 exclamdown
-char161 "
-ct 660,674 2 0242 cent
-char162 "
-Po 660,698,17 2 0243 sterling
-char163 "
-Cs 660,593 0 0244 currency
-char164 "
-Ye 660,681 2 0245 yen
-char165 "
-bb 600,725 2 0246 brokenbar
-char166 "
-sc 600,698,153 2 0247 section
-char167 "
-ad 500,698 2 0250 dieresis
-char168 "
-co 740,698,17 2 0251 copyright
-char169 "
-Of 400,698 2 0252 ordfeminine
-char170 "
-fo 220,457 0 0253 guilsinglleft
-no 600,421 0 0254 logicalnot
-char172 "
-\- 600,323 0 0255 minus
-rg 740,698,17 2 0256 registered
-char174 "
-a- 460,663 2 0257 macron
-char175 "
-de 400,698 2 0260 degree
-char176 "
-char177 600,514 0 0261 plusminus
-S2 396,698 2 0262 twosuperior
-char178 "
-S3 396,698 2 0263 threesuperior
-char179 "
-aa 400,731 2 0264 acute
-char180 "
-char181 660,502,221 1 0265 mu
-ps 800,681,101 2 0266 paragraph
-char182 "
-char183 340,355 0 0267 periodcentered
-ac 360,0,213 1 0270 cedilla
-char184 "
-S1 396,687 2 0271 onesuperior
-char185 "
-Om 400,698 2 0272 ordmasculine
-char186 "
-fc 220,457 0 0273 guilsinglright
-14 990,681 2 0274 onequarter
-char188 "
-12 990,681 2 0275 onehalf
-char189 "
-34 990,692 2 0276 threequarters
-char190 "
-r? 660,515,191 0 0277 questiondown
-char191 "
-`A 720,909 2 0300 Agrave
-char192 "
-'A 720,910 2 0301 Aacute
-char193 "
-^A 720,910 2 0302 Acircumflex
-char194 "
-~A 720,870 2 0303 Atilde
-char195 "
-:A 720,877 2 0304 Adieresis
-char196 "
-oA 720,934 2 0305 Aring
-char197 "
-AE 1140,681 2 0306 AE
-char198 "
-,C 740,698,213 3 0307 Ccedilla
-char199 "
-`E 720,909 2 0310 Egrave
-char200 "
-'E 720,910 2 0311 Eacute
-char201 "
-^E 720,910 2 0312 Ecircumflex
-char202 "
-:E 720,877 2 0313 Edieresis
-char203 "
-`I 400,909 2 0314 Igrave
-char204 "
-'I 400,910 2 0315 Iacute
-char205 "
-^I 400,910 2 0316 Icircumflex
-char206 "
-:I 400,877 2 0317 Idieresis
-char207 "
--D 780,681 2 0320 Eth
-char208 "
-~N 740,870 2 0321 Ntilde
-char209 "
-`O 800,909,17 2 0322 Ograve
-char210 "
-'O 800,910,17 2 0323 Oacute
-char211 "
-^O 800,910,17 2 0324 Ocircumflex
-char212 "
-~O 800,870,17 2 0325 Otilde
-char213 "
-:O 800,877,17 2 0326 Odieresis
-char214 "
-char215 600,514 0 0327 multiply
-/O 800,781,110 2 0330 Oslash
-char216 "
-`U 740,909,17 2 0331 Ugrave
-char217 "
-'U 740,910,17 2 0332 Uacute
-char218 "
-^U 740,910,17 2 0333 Ucircumflex
-char219 "
-:U 740,877,17 2 0334 Udieresis
-char220 "
-'Y 700,910 2 0335 Yacute
-char221 "
-TP 660,681 2 0336 Thorn
-char222 "
-ss 660,699,91 2 0337 germandbls
-char223 "
-`a 580,730,8 2 0340 agrave
-char224 "
-'a 580,731,8 2 0341 aacute
-char225 "
-^a 580,731,8 2 0342 acircumflex
-char226 "
-~a 580,691,8 2 0343 atilde
-char227 "
-:a 580,698,8 2 0344 adieresis
-char228 "
-oa 580,755,8 2 0345 aring
-char229 "
-ae 880,515,8 0 0346 ae
-char230 "
-,c 580,515,213 1 0347 ccedilla
-char231 "
-`e 580,730,8 2 0350 egrave
-char232 "
-'e 580,731,8 2 0351 eacute
-char233 "
-^e 580,731,8 2 0352 ecircumflex
-char234 "
-:e 580,698,8 2 0353 edieresis
-char235 "
-`i 360,730 2 0354 igrave
-char236 "
-'i 360,731 2 0355 iacute
-char237 "
-^i 360,731 2 0356 icircumflex
-char238 "
-:i 360,698 2 0357 idieresis
-char239 "
-Sd 620,741,8 2 0360 eth
-char240 "
-~n 680,691 2 0361 ntilde
-char241 "
-`o 620,730,8 2 0362 ograve
-char242 "
-'o 620,731,8 2 0363 oacute
-char243 "
-^o 620,731,8 2 0364 ocircumflex
-char244 "
-~o 620,691,8 2 0365 otilde
-char245 "
-:o 620,698,8 2 0366 odieresis
-char246 "
-char247 600,521 0 0367 divide
-/o 620,551,40 0 0370 oslash
-char248 "
-`u 660,730,8 2 0371 ugrave
-char249 "
-'u 660,731,8 2 0372 uacute
-char250 "
-^u 660,731,8 2 0373 ucircumflex
-char251 "
-:u 660,698,8 2 0374 udieresis
-char252 "
-'y 620,731,221 3 0375 yacute
-char253 "
-Tp 640,725,212 3 0376 thorn
-char254 "
-:y 620,698,221 3 0377 ydieresis
-char255 "
diff --git a/devps/BMBI b/devps/BMBI
deleted file mode 100644
index 0670451a9..000000000
--- a/devps/BMBI
+++ /dev/null
@@ -1,441 +0,0 @@
-name BMBI
-internalname Bookman-DemiItalic
-slant 10
-spacewidth 340
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y 20
-A w 20
-A v 20
-A Y -25
-A W -35
-A V -40
-A T -17
-F . -105
-F , -98
-F A -35
-L y 62
-L Y -5
-L W -15
-L V -19
-L T -26
-P . -105
-P , -98
-P A -31
-R y 27
-R Y 4
-R W -4
-R V -8
-R T -3
-T y 56
-T w 69
-T u 42
-T ; 31
-T s -1
-T r 41
-T . -107
-T o -5
-T i 42
-T - -20
-T hy -20
-T char173 -20
-T e -10
-T , -100
-T : 26
-T c -8
-T a -8
-T A -42
-V y 17
-V u -1
-V ; -22
-V r 2
-V . -115
-V o -50
-V i 32
-V - -20
-V hy -20
-V char173 -20
-V e -50
-V , -137
-V : -28
-V a -50
-V A -50
-W y -51
-W u -69
-W ; -81
-W r -66
-W . -183
-W o -100
-W i -36
-W - -22
-W hy -22
-W char173 -22
-W e -100
-W , -201
-W : -86
-W a -100
-W A -77
-Y v 26
-Y u -1
-Y ; -4
-Y q -43
-Y . -113
-Y o -41
-Y i 20
-Y - -20
-Y hy -20
-Y char173 -20
-Y e -46
-Y , -106
-Y : -9
-Y a -45
-Y A -30
-f f 10
-r q -3
-r . -120
-r o -1
-r n 39
-r m 39
-r - -20
-r hy -20
-r char173 -20
-r h -35
-r g -23
-r f 42
-r e -6
-r d -3
-r , -113
-r c -5
-charset
-ha 620,681,0,24,-42,24 2 0000 asciicircum
-ti 620,368,0,35,-51,35 0 0001 asciitilde
-vS 700,915,17,81,-9,73 2 0002 Scaron
-vZ 680,915,0,110,27,73 2 0003 Zcaron
-vs 540,749,8,83,18,73 2 0004 scaron
-vz 560,749,8,76,14,73 2 0005 zcaron
-:Y 660,900,0,207,-22,73 2 0006 Ydieresis
-tm 940,681,0,92,8,73 2 0007 trademark
-aq 180,696,0,165,-76,73 2 0010 quotesingle
-space 340 0 0040
-! 320,698,8,96,-36,73 2 0041 exclam
-" 380,697,0,177,-90,73 2 0042 quotedbl
-# 680,681,0,19,-107,19 2 0043 numbersign
-sh "
-$ 680,790,164,67,5,67 2 0044 dollar
-Do "
-% 880,698,17,69,-56,69 2 0045 percent
-& 980,698,17,86,2,73 2 0046 ampersand
-' 320,698,0,79,-121,73 2 0047 quoteright
-( 260,741,134,178,19,73 2 0050 parenleft
-) 260,741,134,112,85,73 2 0051 parenright
-* 460,698,0,98,-76,73 2 0052 asterisk
-+ 600,514,0,45,-41,45 0 0053 plus
-, 340,185,124,8,-50,8 0 0054 comma
-- 280,313,0,89,-9,73 0 0055 hyphen
-hy "
-char173 "
-. 340,177,8,6,-56,6 0 0056 period
-/ 360,742,106,192,41,73 2 0057 slash
-sl "
-0 680,698,17,73,-37,73 2 0060 zero
-1 680,681,0,0,-73 2 0061 one
-2 680,698,0,44,-17,44 2 0062 two
-3 680,698,17,53,-22,53 2 0063 three
-4 680,681,0,78,-13,73 2 0064 four
-5 680,681,17,39,-28,39 2 0065 five
-6 680,698,17,74,-38,73 2 0066 six
-7 680,681,0,109,-73,73 2 0067 seven
-8 680,698,17,56,-18,56 2 0070 eight
-9 680,698,17,82,-21,73 2 0071 nine
-: 340,515,8,66,-56,66 0 0072 colon
-; 340,515,124,62,-50,62 0 0073 semicolon
-< 620,540,9,18,-29,18 0 0074 less
-= 600,421,0,45,-41,45 0 0075 equal
-> 620,540,9,28,-39,28 0 0076 greater
-? 620,698,8,98,-95,73 2 0077 question
-@ 780,698,17,60,-30,60 2 0100 at
-at "
-A 720,681,0,99,77,73 2 0101 A
-B 720,681,0,92,36,73 2 0102 B
-C 700,698,17,104,-28,73 2 0103 C
-D 760,681,0,95,36,73 2 0104 D
-E 720,681,0,107,36,73 2 0105 E
-F 660,681,0,153,36,73 2 0106 F
-G 760,698,17,118,-27,73 2 0107 G
-H 800,681,0,160,36,73 2 0110 H
-I 380,681,0,155,36,73 2 0111 I
-J 620,681,17,151,42,73 2 0112 J
-K 780,681,0,149,36,73 2 0113 K
-L 640,681,0,135,36,73 2 0114 L
-M 860,681,0,160,36,73 2 0115 M
-N 740,681,0,155,36,73 2 0116 N
-O 760,698,17,96,-28,73 2 0117 O
-P 640,681,0,134,56,73 2 0120 P
-Q 760,698,213,95,13,73 3 0121 Q
-R 740,681,0,75,36,73 2 0122 R
-S 700,698,17,81,-9,73 2 0123 S
-T 700,681,0,152,-20,73 2 0124 T
-U 740,681,17,165,-62,73 2 0125 U
-V 660,681,0,209,-22,73 2 0126 V
-W 1000,681,0,140,-22,73 2 0127 W
-X 740,681,0,145,57,73 2 0130 X
-Y 660,681,0,207,-22,73 2 0131 Y
-Z 680,681,0,110,27,73 2 0132 Z
-[ 260,741,118,164,41,73 2 0133 bracketleft
-lB "
-\ 580,741,0,45,-23,45 2 0134 backslash
-rs "
-] 260,741,118,137,68,73 2 0135 bracketright
-rB "
-a^ 480,749,0,93,-133,73 2 0136 circumflex
-^ "
-_ 500,0,155,50,50,50 0 0137 underscore
-` 320,698,0,63,-105,63 2 0140 quoteleft
-oq "
-a 680,515,8,105,-34,73 0 0141 a
-b 600,732,8,83,-7,73 2 0142 b
-c 560,515,8,87,-8,73 0 0143 c
-d 680,732,8,84,-10,73 2 0144 d
-e 560,515,8,86,-9,73 0 0145 e
-f 420,741,213,271,242,73 3 0146 f
-g 620,515,213,99,29,73 1 0147 g
-h 700,732,8,86,-43,73 2 0150 h
-i 380,755,8,90,-33,73 2 0151 i
-j 320,755,213,122,210,73 3 0152 j
-k 700,732,8,82,-47,73 2 0153 k
-l 380,732,8,80,-59,73 2 0154 l
-m 960,515,8,86,-33,73 0 0155 m
-n 680,515,8,85,-33,73 0 0156 n
-o 600,515,8,77,-9,73 0 0157 o
-p 660,515,213,72,74,72 1 0160 p
-q 620,515,213,70,-10,70 1 0161 q
-r 500,515,0,132,-34,73 0 0162 r
-s 540,515,8,83,18,73 0 0163 s
-t 440,658,8,98,-56,73 2 0164 t
-u 680,507,8,90,-33,73 0 0165 u
-v 540,515,8,82,-6,73 0 0166 v
-w 860,515,8,81,-6,73 0 0167 w
-x 620,515,8,84,40,73 0 0170 x
-y 600,507,213,92,25,73 1 0171 y
-z 560,515,8,76,14,73 0 0172 z
-lC 300,742,123,159,-3,73 2 0173 braceleft
-{ "
-ba 620,741,0,0,-253 2 0174 bar
-| "
-rC 300,742,123,102,54,73 2 0175 braceright
-} "
-a~ 480,709,0,103,-128,73 2 0176 tilde
-~ "
-bq 300,166,112,34,-56,34 0 0200 quotesinglbase
-Fo 380,503,0,76,-12,73 0 0201 guillemotleft
-char171 "
-Fc 380,503,0,76,-12,73 0 0202 guillemotright
-char187 "
-bu 360,511,0,94,-10,73 0 0203 bullet
-Fn 680,741,199,113,78,73 2 0204 florin
-f/ 120,681,0,312,194,73 2 0205 fraction
-%0 1360,698,17,23,-56,23 2 0206 perthousand
-dg 420,698,137,96,-39,73 2 0207 dagger
-dd 420,698,137,116,-29,73 2 0210 daggerdbl
-en 500,311,0,123,10,73 0 0211 endash
-em 1000,311,0,123,10,73 0 0212 emdash
-fi 820,741,213,80,241,73 3 0214 fi
-fl 820,741,213,80,241,73 3 0215 fl
-.i 380,507,8,90,-33,73 0 0220 dotlessi
-ga 380,771,0,94,-143,73 2 0222 grave
-a" 560,775,0,106,-131,73 2 0223 hungarumlaut
-a. 380,734,0,15,-130,15 2 0224 dotaccent
-ab 460,707,0,106,-127,73 2 0225 breve
-ah 480,749,0,93,-133,73 2 0226 caron
-ao 360,775,0,96,-135,73 2 0227 ring
-ho 320,0,182,0,-18 0 0230 ogonek
-lq 520,698,0,75,-106,73 2 0231 quotedblleft
-rq 520,698,0,90,-121,73 2 0232 quotedblright
-oe 920,515,8,91,2,73 0 0233 oe
-/l 380,732,8,82,-13,73 2 0234 lslash
-Bq 520,166,112,25,-56,25 0 0235 quotedblbase
-OE 1180,698,17,115,-44,73 2 0236 OE
-/L 640,681,0,134,36,73 2 0237 Lslash
-r! 320,515,191,74,-14,73 0 0241 exclamdown
-char161 "
-ct 680,718,0,0,-111 2 0242 cent
-char162 "
-Po 680,698,17,157,50,73 2 0243 sterling
-char163 "
-Cs 680,571,0,7,-98,7 0 0244 currency
-char164 "
-Ye 680,681,0,152,-42,73 2 0245 yen
-char165 "
-bb 620,741,0,0,-253 2 0246 brokenbar
-char166 "
-sc 620,698,137,68,4,68 2 0247 section
-char167 "
-ad 520,734,0,99,-130,73 2 0250 dieresis
-char168 "
-co 780,698,17,53,-33,53 2 0251 copyright
-char169 "
-Of 440,685,0,105,-5,73 2 0252 ordfeminine
-char170 "
-fo 220,503,0,79,-12,73 0 0253 guilsinglleft
-no 620,421,0,15,-31,15 0 0254 logicalnot
-char172 "
-\- 600,323,0,45,-41,45 0 0255 minus
-rg 780,698,17,53,-33,53 2 0256 registered
-char174 "
-a- 480,691,0,101,-127,73 2 0257 macron
-char175 "
-de 400,698,0,80,-80,73 2 0260 degree
-char176 "
-char177 600,514,0,45,-41,45 0 0261 plusminus
-S2 408,698,0,127,-41,73 2 0262 twosuperior
-char178 "
-S3 408,698,0,125,-36,73 2 0263 threesuperior
-char179 "
-aa 340,771,0,117,-126,73 2 0264 acute
-char180 "
-char181 680,507,213,90,-4,73 1 0265 mu
-ps 680,681,204,96,-20,73 2 0266 paragraph
-char182 "
-char183 340,358,0,26,-76,26 0 0267 periodcentered
-ac 360,0,220,0,-18 1 0270 cedilla
-char184 "
-S1 408,688,0,48,-68,48 2 0271 onesuperior
-char185 "
-Om 440,685,0,77,3,73 2 0272 ordmasculine
-char186 "
-fc 220,503,0,79,-12,73 0 0273 guilsinglright
-14 1020,681,0,84,-68,73 2 0274 onequarter
-char188 "
-12 1020,681,0,66,-68,66 2 0275 onehalf
-char189 "
-34 1020,691,0,84,-36,73 2 0276 threequarters
-char190 "
-r? 620,515,189,36,-33,36 0 0277 questiondown
-char191 "
-`A 720,937,0,99,77,73 2 0300 Agrave
-char192 "
-'A 720,937,0,99,77,73 2 0301 Aacute
-char193 "
-^A 720,915,0,99,77,73 2 0302 Acircumflex
-char194 "
-~A 720,875,0,99,77,73 2 0303 Atilde
-char195 "
-:A 720,900,0,99,77,73 2 0304 Adieresis
-char196 "
-oA 720,941,0,99,77,73 2 0305 Aring
-char197 "
-AE 1140,681,0,117,77,73 2 0306 AE
-char198 "
-,C 700,698,220,104,-28,73 3 0307 Ccedilla
-char199 "
-`E 720,937,0,107,36,73 2 0310 Egrave
-char200 "
-'E 720,937,0,107,36,73 2 0311 Eacute
-char201 "
-^E 720,915,0,107,36,73 2 0312 Ecircumflex
-char202 "
-:E 720,900,0,107,36,73 2 0313 Edieresis
-char203 "
-`I 380,937,0,155,36,73 2 0314 Igrave
-char204 "
-'I 380,937,0,155,36,73 2 0315 Iacute
-char205 "
-^I 380,915,0,163,36,73 2 0316 Icircumflex
-char206 "
-:I 380,900,0,169,36,73 2 0317 Idieresis
-char207 "
--D 760,681,0,95,36,73 2 0320 Eth
-char208 "
-~N 740,875,0,155,36,73 2 0321 Ntilde
-char209 "
-`O 760,937,17,96,-28,73 2 0322 Ograve
-char210 "
-'O 760,937,17,96,-28,73 2 0323 Oacute
-char211 "
-^O 760,915,17,96,-28,73 2 0324 Ocircumflex
-char212 "
-~O 760,875,17,96,-28,73 2 0325 Otilde
-char213 "
-:O 760,900,17,96,-28,73 2 0326 Odieresis
-char214 "
-char215 600,514,0,45,-41,45 0 0327 multiply
-/O 760,725,29,137,29,73 2 0330 Oslash
-char216 "
-`U 740,937,17,165,-62,73 2 0331 Ugrave
-char217 "
-'U 740,937,17,165,-62,73 2 0332 Uacute
-char218 "
-^U 740,915,17,165,-62,73 2 0333 Ucircumflex
-char219 "
-:U 740,900,17,165,-62,73 2 0334 Udieresis
-char220 "
-'Y 660,937,0,207,-22,73 2 0335 Yacute
-char221 "
-TP 640,681,0,111,56,73 2 0336 Thorn
-char222 "
-ss 660,741,213,92,281,73 3 0337 germandbls
-char223 "
-`a 680,771,8,105,-34,73 2 0340 agrave
-char224 "
-'a 680,771,8,105,-34,73 2 0341 aacute
-char225 "
-^a 680,749,8,105,-34,73 2 0342 acircumflex
-char226 "
-~a 680,709,8,105,-34,73 2 0343 atilde
-char227 "
-:a 680,734,8,105,-34,73 2 0344 adieresis
-char228 "
-oa 680,775,8,105,-34,73 2 0345 aring
-char229 "
-ae 880,515,8,83,11,73 0 0346 ae
-char230 "
-,c 560,515,220,87,-8,73 1 0347 ccedilla
-char231 "
-`e 560,771,8,86,-9,73 2 0350 egrave
-char232 "
-'e 560,771,8,86,-9,73 2 0351 eacute
-char233 "
-^e 560,749,8,86,-9,73 2 0352 ecircumflex
-char234 "
-:e 560,734,8,86,-9,73 2 0353 edieresis
-char235 "
-`i 380,771,8,94,-33,73 2 0354 igrave
-char236 "
-'i 380,771,8,90,-33,73 2 0355 iacute
-char237 "
-^i 380,749,8,103,-33,73 2 0356 icircumflex
-char238 "
-:i 380,734,8,149,-33,73 2 0357 idieresis
-char239 "
-Sd 600,741,8,112,-9,73 2 0360 eth
-char240 "
-~n 680,709,8,85,-33,73 2 0361 ntilde
-char241 "
-`o 600,771,8,77,-9,73 2 0362 ograve
-char242 "
-'o 600,771,8,77,-9,73 2 0363 oacute
-char243 "
-^o 600,749,8,77,-9,73 2 0364 ocircumflex
-char244 "
-~o 600,709,8,77,-9,73 2 0365 otilde
-char245 "
-:o 600,734,8,77,-9,73 2 0366 odieresis
-char246 "
-char247 600,521,0,45,-41,45 0 0367 divide
-/o 600,571,54,111,33,73 0 0370 oslash
-char248 "
-`u 680,771,8,90,-33,73 2 0371 ugrave
-char249 "
-'u 680,771,8,90,-33,73 2 0372 uacute
-char250 "
-^u 680,749,8,90,-33,73 2 0373 ucircumflex
-char251 "
-:u 680,734,8,90,-33,73 2 0374 udieresis
-char252 "
-'y 600,771,213,92,25,73 3 0375 yacute
-char253 "
-Tp 660,732,213,72,74,72 3 0376 thorn
-char254 "
-:y 600,734,213,92,25,73 3 0377 ydieresis
-char255 "
diff --git a/devps/BMI b/devps/BMI
deleted file mode 100644
index 7eaa3f1f6..000000000
--- a/devps/BMI
+++ /dev/null
@@ -1,434 +0,0 @@
-name BMI
-internalname Bookman-LightItalic
-slant 10
-spacewidth 300
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A Y -62
-A W -73
-A V -78
-A T -5
-F . -97
-F , -98
-F A -16
-L y 20
-L Y 7
-L W 9
-L V 4
-P . -105
-P , -106
-P A -30
-R Y 11
-R W 2
-R V 2
-R T 65
-T ; 48
-T s -7
-T r 67
-T . -78
-T o 14
-T i 71
-T - 20
-T hy 20
-T char173 20
-T e 10
-T , -79
-T : 48
-T c 16
-T a 9
-T A -14
-V y -14
-V u -10
-V ; -44
-V r -20
-V . -100
-V o -70
-V i 3
-V - 20
-V hy 20
-V char173 20
-V e -70
-V , -109
-V : -35
-V a -70
-V A -70
-W y -14
-W u -20
-W ; -42
-W r -30
-W . -100
-W o -60
-W i 3
-W - 20
-W hy 20
-W char173 20
-W e -60
-W , -109
-W : -35
-W a -60
-W A -60
-Y v -19
-Y u -31
-Y ; -40
-Y q -72
-Y . -100
-Y p -37
-Y o -75
-Y i -11
-Y - 20
-Y hy 20
-Y char173 20
-Y e -78
-Y , -109
-Y : -35
-Y a -79
-Y A -82
-f f -19
-r q -14
-r . -134
-r o -10
-r n 38
-r m 37
-r - 20
-r hy 20
-r char173 20
-r h -20
-r g -3
-r f -9
-r e -15
-r d -9
-r , -143
-r c -8
-charset
-ha 600,681,0,49,-47,49 2 0000 asciicircum
-ti 600,386,0,45,-41,45 0 0001 asciitilde
-vS 640,871,17,78,-11,70 2 0002 Scaron
-vZ 580,871,0,165,42,70 2 0003 Zcaron
-vs 540,684,8,57,-15,57 2 0004 scaron
-vz 520,684,8,91,12,70 2 0005 zcaron
-:Y 660,875,0,199,-37,70 2 0006 Ydieresis
-tm 980,681,0,35,-19,35 2 0007 trademark
-aq 200,698,0,97,-49,70 2 0010 quotesingle
-space 300 0 0040
-! 320,698,8,72,-53,70 2 0041 exclam
-" 360,698,0,92,-57,70 2 0042 quotedbl
-# 620,681,0,28,-57,28 2 0043 numbersign
-sh "
-$ 620,762,85,49,-28,49 2 0044 dollar
-Do "
-% 800,691,8,61,-6,61 2 0045 percent
-& 820,698,18,78,-15,70 2 0046 ampersand
-' 280,698,0,58,-98,58 2 0047 quoteright
-( 280,727,146,153,-46,70 2 0050 parenleft
-) 280,727,146,49,58,49 2 0051 parenright
-* 440,698,0,115,-89,70 2 0052 asterisk
-+ 600,548,0,45,-41,45 0 0053 plus
-, 300,112,115,0,-38 0 0054 comma
-- 320,325,0,66,-28,66 0 0055 hyphen
-hy "
-char173 "
-. 300,127,8,0,-46 0 0056 period
-/ 600,717,149,12,-54,12 2 0057 slash
-sl "
-0 620,698,17,76,-36,70 2 0060 zero
-1 620,681,0,0,-104 2 0061 one
-2 620,698,0,66,-16,66 2 0062 two
-3 620,698,17,52,-5,52 2 0063 three
-4 620,681,0,64,-19,64 2 0064 four
-5 620,681,17,44,-20,44 2 0065 five
-6 620,698,17,87,-39,70 2 0066 six
-7 620,681,0,102,-93,70 2 0067 seven
-8 620,698,17,85,-11,70 2 0070 eight
-9 620,698,17,79,-27,70 2 0071 nine
-: 300,494,8,42,-46,42 0 0072 colon
-; 300,494,114,42,-38,42 0 0073 semicolon
-< 600,561,0,38,-29,38 0 0074 less
-= 600,433,0,45,-41,45 0 0075 equal
-> 600,561,0,52,-43,52 0 0076 greater
-? 540,698,8,114,-64,70 2 0077 question
-@ 780,698,17,72,-52,70 2 0100 at
-at "
-A 700,681,0,70,75,70 2 0101 A
-B 720,681,0,76,29,70 2 0102 B
-C 720,698,17,76,-38,70 2 0103 C
-D 740,681,0,92,29,70 2 0104 D
-E 680,681,0,106,29,70 2 0105 E
-F 620,681,0,173,29,70 2 0106 F
-G 760,698,17,103,-38,70 2 0107 G
-H 800,681,0,138,29,70 2 0110 H
-I 320,681,0,142,29,70 2 0111 I
-J 560,681,17,156,52,70 2 0112 J
-K 720,681,0,134,29,70 2 0113 K
-L 580,681,0,126,29,70 2 0114 L
-M 860,681,0,146,32,70 2 0115 M
-N 720,681,0,153,32,70 2 0116 N
-O 760,698,17,89,-38,70 2 0117 O
-P 600,681,0,131,29,70 2 0120 P
-Q 780,698,191,82,-11,70 2 0121 Q
-R 700,681,0,86,29,70 2 0122 R
-S 640,698,17,78,-11,70 2 0123 S
-T 600,681,0,175,0,70 2 0124 T
-U 720,681,17,172,-68,70 2 0125 U
-V 680,681,0,185,-37,70 2 0126 V
-W 960,681,0,185,-37,70 2 0127 W
-X 700,681,0,165,75,70 2 0130 X
-Y 660,681,0,199,-37,70 2 0131 Y
-Z 580,681,0,165,42,70 2 0132 Z
-[ 260,717,136,141,-6,70 2 0133 bracketleft
-lB "
-\ 600,717,0,0,-34 2 0134 backslash
-rs "
-] 260,717,136,99,35,70 2 0135 bracketright
-rB "
-a^ 440,685,0,89,-126,70 2 0136 circumflex
-^ "
-_ 500,0,155,50,50,50 0 0137 underscore
-` 280,698,0,100,-141,70 2 0140 quoteleft
-oq "
-a 620,494,8,116,-21,70 0 0141 a
-b 600,717,8,71,-38,70 2 0142 b
-c 480,494,8,92,-15,70 0 0143 c
-d 640,717,8,105,-15,70 2 0144 d
-e 540,494,8,85,-15,70 0 0145 e
-f 340,725,218,267,210,70 3 0146 f
-g 560,494,221,71,46,70 1 0147 g
-h 620,717,8,119,-38,70 2 0150 h
-i 280,663,8,121,-38,70 2 0151 i
-j 280,663,221,78,250,70 3 0152 j
-k 600,717,8,107,-38,70 2 0153 k
-l 280,717,8,112,-50,70 2 0154 l
-m 880,494,8,122,-38,70 0 0155 m
-n 620,494,8,103,-38,70 0 0156 n
-o 540,494,8,82,-15,70 0 0157 o
-p 600,494,212,70,74,70 1 0160 p
-q 560,494,212,74,-15,70 1 0161 q
-r 400,494,0,131,-38,70 0 0162 r
-s 540,494,8,57,-15,57 0 0163 s
-t 340,664,8,121,-38,70 2 0164 t
-u 620,484,8,116,-38,70 0 0165 u
-v 540,494,8,72,-38,70 0 0166 v
-w 880,494,8,63,-38,63 0 0167 w
-x 540,494,8,136,41,70 0 0170 x
-y 600,484,221,59,-10,59 1 0171 y
-z 520,494,8,91,12,70 0 0172 z
-lC 360,717,191,129,-75,70 2 0173 braceleft
-{ "
-ba 600,717,0,0,-244 2 0174 bar
-| "
-rC 380,717,191,0,35 2 0175 braceright
-} "
-a~ 440,671,0,98,-130,70 2 0176 tilde
-~ "
-bq 320,113,114,0,-37 0 0200 quotesinglbase
-Fo 300,434,0,63,-20,63 0 0201 guillemotleft
-char171 "
-Fc 300,434,0,53,-10,53 0 0202 guillemotright
-char187 "
-bu 460,511,0,34,-50,34 0 0203 bullet
-Fn 620,725,218,122,76,70 3 0204 florin
-f/ 20,681,0,353,278,70 2 0205 fraction
-%0 1180,691,8,69,-6,69 2 0206 perthousand
-dg 620,698,130,0,-142 2 0207 dagger
-dd 620,698,122,0,-94 2 0210 daggerdbl
-en 500,325,0,111,17,70 0 0211 endash
-em 1000,325,0,111,17,70 0 0212 emdash
-fi 640,725,222,119,209,70 3 0214 fi
-fl 660,725,218,103,209,70 3 0215 fl
-.i 280,484,8,121,-38,70 0 0220 dotlessi
-ga 340,706,0,87,-132,70 2 0222 grave
-a" 340,738,0,112,-117,70 2 0223 hungarumlaut
-a. 260,664,0,80,-119,70 2 0224 dotaccent
-ab 440,680,0,110,-141,70 2 0225 breve
-ah 440,684,0,91,-128,70 2 0226 caron
-ao 300,706,0,84,-128,70 2 0227 ring
-ho 260,0,173,0,-1 0 0230 ogonek
-lq 440,698,0,103,-141,70 2 0231 quotedblleft
-rq 440,698,0,61,-98,61 2 0232 quotedblright
-oe 900,494,8,98,-15,70 0 0233 oe
-/l 340,717,8,108,0,70 2 0234 lslash
-Bq 480,113,114,0,-37 0 0235 quotedblbase
-OE 1180,698,17,107,-38,70 2 0236 OE
-/L 580,681,0,126,29,70 2 0237 Lslash
-r! 320,494,213,31,-23,31 1 0241 exclamdown
-char161 "
-ct 620,715,29,26,-98,26 2 0242 cent
-char162 "
-Po 620,698,17,132,46,70 2 0243 sterling
-char163 "
-Cs 620,591,0,35,-50,35 0 0244 currency
-char164 "
-Ye 620,681,0,165,-21,70 2 0245 yen
-char165 "
-bb 600,717,0,0,-244 2 0246 brokenbar
-char166 "
-sc 620,698,178,68,12,68 2 0247 section
-char167 "
-ad 420,688,0,97,-135,70 2 0250 dieresis
-char168 "
-co 740,698,17,94,-34,70 2 0251 copyright
-char169 "
-Of 440,698,0,123,-44,70 2 0252 ordfeminine
-char170 "
-fo 180,434,0,78,-25,70 0 0253 guilsinglleft
-no 600,433,0,45,-41,45 0 0254 logicalnot
-char172 "
-\- 600,335,0,45,-41,45 0 0255 minus
-rg 740,698,17,94,-34,70 2 0256 registered
-char174 "
-a- 440,658,0,94,-128,70 0 0257 macron
-char175 "
-de 400,698,0,70,-70,70 2 0260 degree
-char176 "
-char177 600,548,0,45,-41,45 0 0261 plusminus
-S2 372,698,0,117,-18,70 2 0262 twosuperior
-char178 "
-S3 372,698,0,117,-20,70 2 0263 threesuperior
-char179 "
-aa 320,706,0,103,-128,70 2 0264 acute
-char180 "
-char181 620,484,221,116,-3,70 1 0265 mu
-ps 620,681,0,148,-62,70 2 0266 paragraph
-char182 "
-char183 300,364,0,22,-87,22 0 0267 periodcentered
-ac 320,0,178,0,5 0 0270 cedilla
-char184 "
-S1 372,688,0,17,-64,17 2 0271 onesuperior
-char185 "
-Om 400,698,0,105,-44,70 2 0272 ordmasculine
-char186 "
-fc 180,434,0,73,-20,70 0 0273 guilsinglright
-14 930,681,0,33,-41,33 2 0274 onequarter
-char188 "
-12 930,681,0,45,-41,45 2 0275 onehalf
-char189 "
-34 930,691,0,33,-49,33 2 0276 threequarters
-char190 "
-r? 540,494,212,18,32,18 1 0277 questiondown
-char191 "
-`A 700,893,0,70,75,70 2 0300 Agrave
-char192 "
-'A 700,893,0,70,75,70 2 0301 Aacute
-char193 "
-^A 700,872,0,70,75,70 2 0302 Acircumflex
-char194 "
-~A 700,858,0,70,75,70 2 0303 Atilde
-char195 "
-:A 700,875,0,70,75,70 2 0304 Adieresis
-char196 "
-oA 700,893,0,70,75,70 2 0305 Aring
-char197 "
-AE 1220,681,0,99,95,70 2 0306 AE
-char198 "
-,C 720,698,178,76,-38,70 2 0307 Ccedilla
-char199 "
-`E 680,893,0,106,29,70 2 0310 Egrave
-char200 "
-'E 680,893,0,106,29,70 2 0311 Eacute
-char201 "
-^E 680,872,0,106,29,70 2 0312 Ecircumflex
-char202 "
-:E 680,875,0,106,29,70 2 0313 Edieresis
-char203 "
-`I 320,893,0,142,29,70 2 0314 Igrave
-char204 "
-'I 320,893,0,142,29,70 2 0315 Iacute
-char205 "
-^I 320,872,0,149,29,70 2 0316 Icircumflex
-char206 "
-:I 320,875,0,147,29,70 2 0317 Idieresis
-char207 "
--D 740,681,0,92,29,70 2 0320 Eth
-char208 "
-~N 720,858,0,153,32,70 2 0321 Ntilde
-char209 "
-`O 760,893,17,89,-38,70 2 0322 Ograve
-char210 "
-'O 760,893,17,89,-38,70 2 0323 Oacute
-char211 "
-^O 760,872,17,89,-38,70 2 0324 Ocircumflex
-char212 "
-~O 760,858,17,89,-38,70 2 0325 Otilde
-char213 "
-:O 760,875,17,89,-38,70 2 0326 Odieresis
-char214 "
-char215 600,548,0,45,-41,45 0 0327 multiply
-/O 760,777,95,89,-38,70 2 0330 Oslash
-char216 "
-`U 720,893,17,172,-68,70 2 0331 Ugrave
-char217 "
-'U 720,893,17,172,-68,70 2 0332 Uacute
-char218 "
-^U 720,872,17,172,-68,70 2 0333 Ucircumflex
-char219 "
-:U 720,875,17,172,-68,70 2 0334 Udieresis
-char220 "
-'Y 660,893,0,199,-37,70 2 0335 Yacute
-char221 "
-TP 600,681,0,106,29,70 2 0336 Thorn
-char222 "
-ss 620,698,111,83,171,70 2 0337 germandbls
-char223 "
-`a 620,706,8,116,-21,70 2 0340 agrave
-char224 "
-'a 620,706,8,116,-21,70 2 0341 aacute
-char225 "
-^a 620,685,8,116,-21,70 2 0342 acircumflex
-char226 "
-~a 620,671,8,116,-21,70 2 0343 atilde
-char227 "
-:a 620,688,8,116,-21,70 2 0344 adieresis
-char228 "
-oa 620,706,8,116,-21,70 2 0345 aring
-char229 "
-ae 880,494,8,88,-21,70 0 0346 ae
-char230 "
-,c 480,494,178,92,-15,70 0 0347 ccedilla
-char231 "
-`e 540,706,8,85,-15,70 2 0350 egrave
-char232 "
-'e 540,706,8,85,-15,70 2 0351 eacute
-char233 "
-^e 540,685,8,85,-15,70 2 0352 ecircumflex
-char234 "
-:e 540,688,8,85,-15,70 2 0353 edieresis
-char235 "
-`i 280,706,8,121,-38,70 2 0354 igrave
-char236 "
-'i 280,706,8,121,-38,70 2 0355 iacute
-char237 "
-^i 280,685,8,149,-26,70 2 0356 icircumflex
-char238 "
-:i 280,688,8,147,-38,70 2 0357 idieresis
-char239 "
-Sd 540,725,8,152,-15,70 2 0360 eth
-char240 "
-~n 620,671,8,103,-38,70 2 0361 ntilde
-char241 "
-`o 540,706,8,82,-15,70 2 0362 ograve
-char242 "
-'o 540,706,8,82,-15,70 2 0363 oacute
-char243 "
-^o 540,685,8,82,-15,70 2 0364 ocircumflex
-char244 "
-~o 540,671,8,82,-15,70 2 0365 otilde
-char245 "
-:o 540,688,8,82,-15,70 2 0366 odieresis
-char246 "
-char247 600,548,0,45,-41,45 0 0367 divide
-/o 540,532,49,81,-15,70 0 0370 oslash
-char248 "
-`u 620,706,8,116,-38,70 2 0371 ugrave
-char249 "
-'u 620,706,8,116,-38,70 2 0372 uacute
-char250 "
-^u 620,685,8,116,-38,70 2 0373 ucircumflex
-char251 "
-:u 620,688,8,116,-38,70 2 0374 udieresis
-char252 "
-'y 600,706,221,59,-10,59 3 0375 yacute
-char253 "
-Tp 600,717,212,70,74,70 3 0376 thorn
-char254 "
-:y 600,688,221,59,-10,59 3 0377 ydieresis
-char255 "
diff --git a/devps/BMR b/devps/BMR
deleted file mode 100644
index 8e90c1000..000000000
--- a/devps/BMR
+++ /dev/null
@@ -1,430 +0,0 @@
-name BMR
-internalname Bookman-Light
-spacewidth 320
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y 32
-A w 4
-A v 7
-A Y -35
-A W -40
-A V -56
-A T 1
-F . -46
-F , -41
-F A -21
-L y 79
-L Y 13
-L W 1
-L V -4
-L T 28
-P . -60
-P , -55
-P A -8
-R y 59
-R Y 26
-R W 13
-R V 8
-R T 71
-T s 16
-T r 38
-T . -33
-T o 15
-T i 42
-T - 90
-T hy 90
-T char173 90
-T e 13
-T , -28
-T c 14
-T a 17
-T A 1
-V y 15
-V u -38
-V r -41
-V . -40
-V o -71
-V i -20
-V - 11
-V hy 11
-V char173 11
-V e -72
-V , -34
-V a -69
-V A -66
-W y 15
-W u -38
-W r -41
-W . -40
-W o -68
-W i -20
-W - 11
-W hy 11
-W char173 11
-W e -69
-W , -34
-W a -66
-W A -64
-Y v 15
-Y u -38
-Y q -55
-Y . -40
-Y p -31
-Y o -57
-Y i -37
-Y - 11
-Y hy 11
-Y char173 11
-Y e -58
-Y , -34
-Y a -54
-Y A -53
-f f 29
-r q 9
-r . -64
-r o 8
-r n 31
-r m 31
-r - 70
-r hy 70
-r char173 70
-r h -21
-r g -4
-r f 33
-r e 7
-r d 7
-r , -58
-r c 7
-charset
-ha 600,681 2 0000 asciicircum
-ti 600,352 0 0001 asciitilde
-vS 660,869,17 2 0002 Scaron
-vZ 640,869 2 0003 Zcaron
-vs 520,672,8 2 0004 scaron
-vz 480,672 2 0005 zcaron
-:Y 640,871 2 0006 Ydieresis
-tm 980,681 2 0007 trademark
-aq 220,698 2 0010 quotesingle
-space 320 0 0040
-! 300,698,8 2 0041 exclam
-" 380,698 2 0042 quotedbl
-# 620,681 2 0043 numbersign
-sh "
-$ 620,791,109 2 0044 dollar
-Do "
-% 900,698,8 2 0045 percent
-& 800,698,17 2 0046 ampersand
-' 220,698 2 0047 quoteright
-( 300,727,145 2 0050 parenleft
-) 300,727,146 2 0051 parenright
-* 440,698 2 0052 asterisk
-+ 600,513 0 0053 plus
-, 320,114,114 0 0054 comma
-- 400,292 0 0055 hyphen
-hy "
-char173 "
-. 320,123,8 0 0056 period
-/ 600,717,149 2 0057 slash
-sl "
-0 620,698,17 2 0060 zero
-1 620,681 2 0061 one
-2 620,698 2 0062 two
-3 620,698,17 2 0063 three
-4 620,681 2 0064 four
-5 620,717,17 2 0065 five
-6 620,698,17 2 0066 six
-7 620,681 2 0067 seven
-8 620,698,17 2 0070 eight
-9 620,698,17 2 0071 nine
-: 320,494,8 0 0072 colon
-; 320,494,114 0 0073 semicolon
-< 600,526,2 0 0074 less
-= 600,398 0 0075 equal
-> 600,526,2 0 0076 greater
-? 540,698,8 2 0077 question
-@ 820,698,17 2 0100 at
-at "
-A 680,681 2 0101 A
-B 740,681 2 0102 B
-C 740,698,17 2 0103 C
-D 800,681 2 0104 D
-E 720,681 2 0105 E
-F 640,681 2 0106 F
-G 800,698,17 2 0107 G
-H 800,681 2 0110 H
-I 340,681 2 0111 I
-J 600,681,17 2 0112 J
-K 720,681 2 0113 K
-L 600,681 2 0114 L
-M 920,681 2 0115 M
-N 740,681 2 0116 N
-O 800,698,17 2 0117 O
-P 620,681 2 0120 P
-Q 820,698,189 2 0121 Q
-R 720,681 2 0122 R
-S 660,698,17 2 0123 S
-T 620,681 2 0124 T
-U 780,681,17 2 0125 U
-V 700,681 2 0126 V
-W 960,681 2 0127 W
-X 720,681 2 0130 X
-Y 640,681 2 0131 Y
-Z 640,681 2 0132 Z
-[ 300,717,136 2 0133 bracketleft
-lB "
-\ 600,717 2 0134 backslash
-rs "
-] 300,717,136 2 0135 bracketright
-rB "
-a^ 420,685 2 0136 circumflex
-^ "
-_ 500,0,155 0 0137 underscore
-` 220,698 2 0140 quoteleft
-oq "
-a 580,494,8 0 0141 a
-b 620,717,8 2 0142 b
-c 520,494,8 0 0143 c
-d 620,717,8 2 0144 d
-e 520,494,8 0 0145 e
-f 320,734 2 0146 f
-g 540,567,243 1 0147 g
-h 660,717 2 0150 h
-i 300,654 0 0151 i
-j 300,654,251 1 0152 j
-k 620,717 2 0153 k
-l 300,717 2 0154 l
-m 940,494 0 0155 m
-n 660,494 0 0156 n
-o 560,494,8 0 0157 o
-p 620,494,228 1 0160 p
-q 580,494,228 1 0161 q
-r 440,494 0 0162 r
-s 520,494,8 0 0163 s
-t 380,667,8 2 0164 t
-u 680,484,8 0 0165 u
-v 520,484 0 0166 v
-w 780,484 0 0167 w
-x 560,484 0 0170 x
-y 540,484,236 1 0171 y
-z 480,484 0 0172 z
-lC 280,717,136 2 0173 braceleft
-{ "
-ba 600,717 2 0174 bar
-| "
-rC 280,717,136 2 0175 braceright
-} "
-a~ 440,661 0 0176 tilde
-~ "
-bq 220,110,108 0 0200 quotesinglbase
-Fo 360,437 0 0201 guillemotleft
-char171 "
-Fc 360,437 0 0202 guillemotright
-char187 "
-bu 460,511 0 0203 bullet
-Fn 620,749,155 2 0204 florin
-f/ 140,681 2 0205 fraction
-%0 1280,698,8 2 0206 perthousand
-dg 540,698,156 2 0207 dagger
-dd 540,698,156 2 0210 daggerdbl
-en 500,292 0 0211 endash
-em 1000,292 0 0212 emdash
-fi 620,734 2 0214 fi
-fl 620,734 2 0215 fl
-.i 300,484 0 0220 dotlessi
-ga 340,689 2 0222 grave
-a" 380,699 2 0223 hungarumlaut
-a. 260,672 2 0224 dotaccent
-ab 460,687 2 0225 breve
-ah 420,672 2 0226 caron
-ao 320,731 2 0227 ring
-ho 320,0,145 0 0230 ogonek
-lq 400,698 2 0231 quotedblleft
-rq 400,698 2 0232 quotedblright
-oe 900,494,8 0 0233 oe
-/l 320,717 2 0234 lslash
-Bq 400,110,108 0 0235 quotedblbase
-OE 1240,698,17 2 0236 OE
-/L 600,681 2 0237 Lslash
-r! 300,494,214 0 0241 exclamdown
-char161 "
-ct 620,651 0 0242 cent
-char162 "
-Po 620,698,17 2 0243 sterling
-char163 "
-Cs 620,591 0 0244 currency
-char164 "
-Ye 620,681 2 0245 yen
-char165 "
-bb 600,717 2 0246 brokenbar
-char166 "
-sc 520,698,178 2 0247 section
-char167 "
-ad 420,674 2 0250 dieresis
-char168 "
-co 740,698,17 2 0251 copyright
-char169 "
-Of 420,698 2 0252 ordfeminine
-char170 "
-fo 240,437 0 0253 guilsinglleft
-no 600,398 0 0254 logicalnot
-char172 "
-\- 600,300 0 0255 minus
-rg 740,698,17 2 0256 registered
-char174 "
-a- 440,635 0 0257 macron
-char175 "
-de 400,698 2 0260 degree
-char176 "
-char177 600,513 0 0261 plusminus
-S2 372,698 2 0262 twosuperior
-char178 "
-S3 372,698 2 0263 threesuperior
-char179 "
-aa 340,689 2 0264 acute
-char180 "
-char181 680,484,251 1 0265 mu
-ps 600,681 2 0266 paragraph
-char182 "
-char183 320,327 0 0267 periodcentered
-ac 320,0,200 0 0270 cedilla
-char184 "
-S1 372,688 2 0271 onesuperior
-char185 "
-Om 420,698 2 0272 ordmasculine
-char186 "
-fc 240,437 0 0273 guilsinglright
-14 930,681 2 0274 onequarter
-char188 "
-12 930,681 2 0275 onehalf
-char189 "
-34 930,691 2 0276 threequarters
-char190 "
-r? 540,494,217 0 0277 questiondown
-char191 "
-`A 680,886 2 0300 Agrave
-char192 "
-'A 680,886 2 0301 Aacute
-char193 "
-^A 680,882 2 0302 Acircumflex
-char194 "
-~A 680,858 2 0303 Atilde
-char195 "
-:A 680,871 2 0304 Adieresis
-char196 "
-oA 680,928 2 0305 Aring
-char197 "
-AE 1260,681 2 0306 AE
-char198 "
-,C 740,698,200 2 0307 Ccedilla
-char199 "
-`E 720,886 2 0310 Egrave
-char200 "
-'E 720,886 2 0311 Eacute
-char201 "
-^E 720,882 2 0312 Ecircumflex
-char202 "
-:E 720,871 2 0313 Edieresis
-char203 "
-`I 340,886 2 0314 Igrave
-char204 "
-'I 340,886 2 0315 Iacute
-char205 "
-^I 340,882 2 0316 Icircumflex
-char206 "
-:I 340,871 2 0317 Idieresis
-char207 "
--D 800,681 2 0320 Eth
-char208 "
-~N 740,858 2 0321 Ntilde
-char209 "
-`O 800,886,17 2 0322 Ograve
-char210 "
-'O 800,886,17 2 0323 Oacute
-char211 "
-^O 800,882,17 2 0324 Ocircumflex
-char212 "
-~O 800,858,17 2 0325 Otilde
-char213 "
-:O 800,871,17 2 0326 Odieresis
-char214 "
-char215 600,513 0 0327 multiply
-/O 800,733,53 2 0330 Oslash
-char216 "
-`U 780,886,17 2 0331 Ugrave
-char217 "
-'U 780,886,17 2 0332 Uacute
-char218 "
-^U 780,882,17 2 0333 Ucircumflex
-char219 "
-:U 780,871,17 2 0334 Udieresis
-char220 "
-'Y 640,886 2 0335 Yacute
-char221 "
-TP 620,681 2 0336 Thorn
-char222 "
-ss 660,698,110 2 0337 germandbls
-char223 "
-`a 580,689,8 2 0340 agrave
-char224 "
-'a 580,689,8 2 0341 aacute
-char225 "
-^a 580,685,8 2 0342 acircumflex
-char226 "
-~a 580,661,8 0 0343 atilde
-char227 "
-:a 580,674,8 2 0344 adieresis
-char228 "
-oa 580,731,8 2 0345 aring
-char229 "
-ae 860,494,8 0 0346 ae
-char230 "
-,c 520,494,200 0 0347 ccedilla
-char231 "
-`e 520,689,8 2 0350 egrave
-char232 "
-'e 520,689,8 2 0351 eacute
-char233 "
-^e 520,685,8 2 0352 ecircumflex
-char234 "
-:e 520,674,8 2 0353 edieresis
-char235 "
-`i 300,689 2 0354 igrave
-char236 "
-'i 300,689 2 0355 iacute
-char237 "
-^i 300,685 2 0356 icircumflex
-char238 "
-:i 300,674 2 0357 idieresis
-char239 "
-Sd 560,734,8 2 0360 eth
-char240 "
-~n 660,661 0 0361 ntilde
-char241 "
-`o 560,689,8 2 0362 ograve
-char242 "
-'o 560,689,8 2 0363 oacute
-char243 "
-^o 560,685,8 2 0364 ocircumflex
-char244 "
-~o 560,661,8 0 0365 otilde
-char245 "
-:o 560,674,8 2 0366 odieresis
-char246 "
-char247 600,514 0 0367 divide
-/o 560,534,40 0 0370 oslash
-char248 "
-`u 680,689,8 2 0371 ugrave
-char249 "
-'u 680,689,8 2 0372 uacute
-char250 "
-^u 680,685,8 2 0373 ucircumflex
-char251 "
-:u 680,674,8 2 0374 udieresis
-char252 "
-'y 540,689,236 3 0375 yacute
-char253 "
-Tp 620,717,228 3 0376 thorn
-char254 "
-:y 540,674,236 3 0377 ydieresis
-char255 "
diff --git a/devps/CB b/devps/CB
deleted file mode 100644
index c199fd93f..000000000
--- a/devps/CB
+++ /dev/null
@@ -1,336 +0,0 @@
-name CB
-internalname Courier-Bold
-spacewidth 600
-encoding text.enc
-charset
-ha 600,616 2 0000 asciicircum
-ti 600,356 0 0001 asciitilde
-vS 600,790,22 2 0002 Scaron
-vZ 600,790 2 0003 Zcaron
-vs 600,667,17 2 0004 scaron
-vz 600,667 2 0005 zcaron
-:Y 600,748 2 0006 Ydieresis
-tm 600,562 2 0007 trademark
-aq 600,562 2 0010 quotesingle
-space 600 0 0040
-! 600,572,15 2 0041 exclam
-" 600,562 2 0042 quotedbl
-# 600,651,45 2 0043 numbersign
-sh "
-$ 600,666,126 2 0044 dollar
-Do "
-% 600,616,15 2 0045 percent
-& 600,543,15 0 0046 ampersand
-' 600,562 2 0047 quoteright
-( 600,616,102 2 0050 parenleft
-) 600,616,102 2 0051 parenright
-* 600,601 2 0052 asterisk
-+ 600,478 0 0053 plus
-, 600,174,111 0 0054 comma
-- 600,313 0 0055 hyphen
-hy "
-char173 "
-. 600,171,15 0 0056 period
-/ 600,626,77 2 0057 slash
-sl "
-0 600,616,15 2 0060 zero
-1 600,616 2 0061 one
-2 600,616 2 0062 two
-3 600,616,15 2 0063 three
-4 600,616 2 0064 four
-5 600,601,15 2 0065 five
-6 600,616,15 2 0066 six
-7 600,601 2 0067 seven
-8 600,616,15 2 0070 eight
-9 600,616,15 2 0071 nine
-: 600,425,15 0 0072 colon
-; 600,425,111 0 0073 semicolon
-< 600,501 0 0074 less
-= 600,398 0 0075 equal
-> 600,501 0 0076 greater
-? 600,580,14 2 0077 question
-@ 600,616,15 2 0100 at
-at "
-A 600,562 2 0101 A
-B 600,562 2 0102 B
-C 600,580,18 2 0103 C
-D 600,562 2 0104 D
-E 600,562 2 0105 E
-F 600,562 2 0106 F
-G 600,580,18 2 0107 G
-H 600,562 2 0110 H
-I 600,562 2 0111 I
-J 600,562,18 2 0112 J
-K 600,562 2 0113 K
-L 600,562 2 0114 L
-M 600,562 2 0115 M
-N 600,562,12 2 0116 N
-O 600,580,18 2 0117 O
-P 600,562 2 0120 P
-Q 600,580,138 2 0121 Q
-R 600,562 2 0122 R
-S 600,582,22 2 0123 S
-T 600,562 2 0124 T
-U 600,562,18 2 0125 U
-V 600,562 2 0126 V
-W 600,562 2 0127 W
-X 600,562 2 0130 X
-Y 600,562 2 0131 Y
-Z 600,562 2 0132 Z
-[ 600,616,102 2 0133 bracketleft
-lB "
-\ 600,626,77 2 0134 backslash
-rs "
-] 600,616,102 2 0135 bracketright
-rB "
-a^ 600,657 2 0136 circumflex
-^ "
-_ 600,0,125 0 0137 underscore
-` 600,562 2 0140 quoteleft
-oq "
-a 600,454,15 0 0141 a
-b 600,626,15 2 0142 b
-c 600,459,15 0 0143 c
-d 600,626,15 2 0144 d
-e 600,454,15 0 0145 e
-f 600,626 2 0146 f
-g 600,454,146 1 0147 g
-h 600,626 2 0150 h
-i 600,658 2 0151 i
-j 600,658,146 3 0152 j
-k 600,626 2 0153 k
-l 600,626 2 0154 l
-m 600,454 0 0155 m
-n 600,454 0 0156 n
-o 600,454,15 0 0157 o
-p 600,454,142 1 0160 p
-q 600,454,142 1 0161 q
-r 600,454 0 0162 r
-s 600,459,17 0 0163 s
-t 600,562,15 2 0164 t
-u 600,439,15 0 0165 u
-v 600,439 0 0166 v
-w 600,439 0 0167 w
-x 600,439 0 0170 x
-y 600,439,142 1 0171 y
-z 600,439 0 0172 z
-lC 600,616,102 2 0173 braceleft
-{ "
-ba 600,750,250 3 0174 bar
-| "
-rC 600,616,102 2 0175 braceright
-} "
-a~ 600,636 2 0176 tilde
-~ "
-bq 600,143,142 1 0200 quotesinglbase
-Fo 600,446 0 0201 guillemotleft
-char171 "
-Fc 600,446 0 0202 guillemotright
-char187 "
-bu 600,430 0 0203 bullet
-Fn 600,616,131 2 0204 florin
-f/ 600,661,60 2 0205 fraction
-%0 600,616,15 2 0206 perthousand
-dg 600,580,70 2 0207 dagger
-dd 600,580,70 2 0210 daggerdbl
-en 600,313 0 0211 endash
-em 600,313 0 0212 emdash
-fi 600,626 2 0214 fi
-fl 600,626 2 0215 fl
-.i 600,439 0 0220 dotlessi
-ga 600,661 2 0222 grave
-a" 600,661 2 0223 hungarumlaut
-a. 600,625 2 0224 dotaccent
-ab 600,631 2 0225 breve
-ah 600,667 2 0226 caron
-ao 600,678 2 0227 ring
-ho 600,0,199 1 0230 ogonek
-lq 600,562 2 0231 quotedblleft
-rq 600,562 2 0232 quotedblright
-oe 600,454,15 0 0233 oe
-/l 600,626 2 0234 lslash
-Bq 600,143,142 1 0235 quotedblbase
-OE 600,562 2 0236 OE
-/L 600,562 2 0237 Lslash
-r! 600,449,146 1 0241 exclamdown
-char161 "
-ct 600,614,49 2 0242 cent
-char162 "
-Po 600,611,28 2 0243 sterling
-char163 "
-Cs 600,517 0 0244 currency
-char164 "
-Ye 600,562 2 0245 yen
-char165 "
-bb 600,675,175 3 0246 brokenbar
-char166 "
-sc 600,580,70 2 0247 section
-char167 "
-ad 600,625 2 0250 dieresis
-char168 "
-co 600,580,18 2 0251 copyright
-char169 "
-Of 600,580 2 0252 ordfeminine
-char170 "
-fo 600,446 0 0253 guilsinglleft
-no 600,413 0 0254 logicalnot
-char172 "
-\- 600,313 0 0255 minus
-rg 600,580,18 2 0256 registered
-char174 "
-a- 600,585 2 0257 macron
-char175 "
-de 600,616 2 0260 degree
-char176 "
-char177 600,515 0 0261 plusminus
-S2 600,616 2 0262 twosuperior
-char178 "
-S3 600,616 2 0263 threesuperior
-char179 "
-aa 600,661 2 0264 acute
-char180 "
-char181 600,439,142 1 0265 mu
-ps 600,580,70 2 0266 paragraph
-char182 "
-char183 600,351 0 0267 periodcentered
-ac 600,0,206 1 0270 cedilla
-char184 "
-S1 600,616 2 0271 onesuperior
-char185 "
-Om 600,580 2 0272 ordmasculine
-char186 "
-fc 600,446 0 0273 guilsinglright
-14 600,661,60 2 0274 onequarter
-char188 "
-12 600,661,60 2 0275 onehalf
-char189 "
-34 600,661,60 2 0276 threequarters
-char190 "
-r? 600,449,146 1 0277 questiondown
-char191 "
-`A 600,784 2 0300 Agrave
-char192 "
-'A 600,784 2 0301 Aacute
-char193 "
-^A 600,780 2 0302 Acircumflex
-char194 "
-~A 600,759 2 0303 Atilde
-char195 "
-:A 600,748 2 0304 Adieresis
-char196 "
-oA 600,801 2 0305 Aring
-char197 "
-AE 600,562 2 0306 AE
-char198 "
-,C 600,580,206 3 0307 Ccedilla
-char199 "
-`E 600,784 2 0310 Egrave
-char200 "
-'E 600,784 2 0311 Eacute
-char201 "
-^E 600,780 2 0312 Ecircumflex
-char202 "
-:E 600,748 2 0313 Edieresis
-char203 "
-`I 600,784 2 0314 Igrave
-char204 "
-'I 600,784 2 0315 Iacute
-char205 "
-^I 600,780 2 0316 Icircumflex
-char206 "
-:I 600,748 2 0317 Idieresis
-char207 "
--D 600,562 2 0320 Eth
-char208 "
-~N 600,759,12 2 0321 Ntilde
-char209 "
-`O 600,784,18 2 0322 Ograve
-char210 "
-'O 600,784,18 2 0323 Oacute
-char211 "
-^O 600,780,18 2 0324 Ocircumflex
-char212 "
-~O 600,759,18 2 0325 Otilde
-char213 "
-:O 600,748,18 2 0326 Odieresis
-char214 "
-char215 600,478 0 0327 multiply
-/O 600,584,22 2 0330 Oslash
-char216 "
-`U 600,784,18 2 0331 Ugrave
-char217 "
-'U 600,784,18 2 0332 Uacute
-char218 "
-^U 600,780,18 2 0333 Ucircumflex
-char219 "
-:U 600,748,18 2 0334 Udieresis
-char220 "
-'Y 600,784 2 0335 Yacute
-char221 "
-TP 600,562 2 0336 Thorn
-char222 "
-ss 600,626,15 2 0337 germandbls
-char223 "
-`a 600,661,15 2 0340 agrave
-char224 "
-'a 600,661,15 2 0341 aacute
-char225 "
-^a 600,657,15 2 0342 acircumflex
-char226 "
-~a 600,636,15 2 0343 atilde
-char227 "
-:a 600,625,15 2 0344 adieresis
-char228 "
-oa 600,678,15 2 0345 aring
-char229 "
-ae 600,454,15 0 0346 ae
-char230 "
-,c 600,459,206 1 0347 ccedilla
-char231 "
-`e 600,661,15 2 0350 egrave
-char232 "
-'e 600,661,15 2 0351 eacute
-char233 "
-^e 600,657,15 2 0352 ecircumflex
-char234 "
-:e 600,625,15 2 0353 edieresis
-char235 "
-`i 600,661 2 0354 igrave
-char236 "
-'i 600,661 2 0355 iacute
-char237 "
-^i 600,657 2 0356 icircumflex
-char238 "
-:i 600,625 2 0357 idieresis
-char239 "
-Sd 600,626,27 2 0360 eth
-char240 "
-~n 600,636 2 0361 ntilde
-char241 "
-`o 600,661,15 2 0362 ograve
-char242 "
-'o 600,661,15 2 0363 oacute
-char243 "
-^o 600,657,15 2 0364 ocircumflex
-char244 "
-~o 600,636,15 2 0365 otilde
-char245 "
-:o 600,625,15 2 0366 odieresis
-char246 "
-char247 600,500 0 0367 divide
-/o 600,463,24 0 0370 oslash
-char248 "
-`u 600,661,15 2 0371 ugrave
-char249 "
-'u 600,661,15 2 0372 uacute
-char250 "
-^u 600,657,15 2 0373 ucircumflex
-char251 "
-:u 600,625,15 2 0374 udieresis
-char252 "
-'y 600,661,142 3 0375 yacute
-char253 "
-Tp 600,626,142 3 0376 thorn
-char254 "
-:y 600,625,142 3 0377 ydieresis
-char255 "
diff --git a/devps/CBI b/devps/CBI
deleted file mode 100644
index 802e3366d..000000000
--- a/devps/CBI
+++ /dev/null
@@ -1,337 +0,0 @@
-name CBI
-internalname Courier-BoldOblique
-slant 12
-spacewidth 600
-encoding text.enc
-charset
-ha 600,616,0,5,-121,5 2 0000 asciicircum
-ti 600,356,0,39,-70,39 0 0001 asciitilde
-vS 600,790,22,122,-4,75 2 0002 Scaron
-vZ 600,790,0,109,-12,75 2 0003 Zcaron
-vs 600,667,17,82,-17,75 2 0004 scaron
-vz 600,667,0,82,-31,75 2 0005 zcaron
-:Y 600,748,0,158,-59,75 2 0006 Ydieresis
-tm 600,562,0,318,-36,75 2 0007 trademark
-aq 600,562,0,0,-254 2 0010 quotesingle
-space 600 0 0040
-! 600,572,15,0,-166 2 0041 exclam
-" 600,562,0,34,-162,34 2 0042 quotedbl
-# 600,651,45,90,-38,75 2 0043 numbersign
-sh "
-$ 600,666,126,79,-37,75 2 0044 dollar
-Do "
-% 600,616,15,74,-52,74 2 0045 percent
-& 600,543,15,44,-12,44 0 0046 ampersand
-' 600,562,0,0,-180 2 0047 quoteright
-( 600,616,102,42,-216,42 2 0050 parenleft
-) 600,616,102,0,-67 2 0051 parenright
-* 600,601,0,47,-129,47 2 0052 asterisk
-+ 600,478,0,46,-64,46 0 0053 plus
-, 600,174,111,0,-49 0 0054 comma
-- 600,313,0,17,-93,17 0 0055 hyphen
-hy "
-char173 "
-. 600,171,15,0,-157 0 0056 period
-/ 600,626,77,76,-41,75 2 0057 slash
-sl "
-0 600,616,15,42,-86,42 2 0060 zero
-1 600,616,0,11,-43,11 2 0061 one
-2 600,616,0,43,-11,43 2 0062 two
-3 600,616,15,21,-22,21 2 0063 three
-4 600,616,0,8,-32,8 2 0064 four
-5 600,601,15,71,-27,71 2 0065 five
-6 600,616,15,102,-86,75 2 0066 six
-7 600,601,0,72,-97,72 2 0067 seven
-8 600,616,15,54,-65,54 2 0070 eight
-9 600,616,15,42,-26,42 2 0071 nine
-: 600,425,15,0,-156 0 0072 colon
-; 600,425,111,0,-49 0 0073 semicolon
-< 600,501,0,62,-71,62 0 0074 less
-= 600,398,0,64,-46,64 0 0075 equal
-> 600,501,0,39,-47,39 0 0076 greater
-? 600,580,14,41,-133,41 2 0077 question
-@ 600,616,15,91,-16,75 2 0100 at
-at "
-A 600,562,0,81,59,75 2 0101 A
-B 600,562,0,79,20,75 2 0102 B
-C 600,580,18,124,-25,75 2 0103 C
-D 600,562,0,114,20,75 2 0104 D
-E 600,562,0,119,25,75 2 0105 E
-F 600,562,0,133,11,75 2 0106 F
-G 600,580,18,124,-25,75 2 0107 G
-H 600,562,0,149,30,75 2 0110 H
-I 600,562,0,92,-27,75 2 0111 I
-J 600,562,18,170,-9,75 2 0112 J
-K 600,562,0,141,29,75 2 0113 K
-L 600,562,0,85,11,75 2 0114 L
-M 600,562,0,171,52,75 2 0115 M
-N 600,562,12,179,42,75 2 0116 N
-O 600,580,18,95,-24,75 2 0117 O
-P 600,562,0,92,2,75 2 0120 P
-Q 600,580,138,86,-34,75 2 0121 Q
-R 600,562,0,67,26,67 2 0122 R
-S 600,582,22,122,-4,75 2 0123 S
-T 600,562,0,128,-36,75 2 0124 T
-U 600,562,18,165,-51,75 2 0125 U
-V 600,562,0,182,-34,75 2 0126 V
-W 600,562,0,187,-34,75 2 0127 W
-X 600,562,0,139,38,75 2 0130 X
-Y 600,562,0,158,-59,75 2 0131 Y
-Z 600,562,0,86,-12,75 2 0132 Z
-[ 600,616,102,56,-173,56 2 0133 bracketleft
-lB "
-\ 600,626,77,0,-173 2 0134 backslash
-rs "
-] 600,616,102,0,-53 2 0135 bracketright
-rB "
-a^ 600,657,0,56,-162,56 2 0136 circumflex
-^ "
-_ 600,0,125,34,77,34 0 0137 underscore
-` 600,562,0,0,-247 2 0140 quoteleft
-oq "
-a 600,454,15,42,-12,42 0 0141 a
-b 600,626,15,86,37,75 2 0142 b
-c 600,459,15,81,-31,75 0 0143 c
-d 600,626,15,94,-11,75 2 0144 d
-e 600,454,15,54,-31,54 0 0145 e
-f 600,626,0,127,-33,75 2 0146 f
-g 600,454,146,123,9,75 1 0147 g
-h 600,626,0,64,32,64 2 0150 h
-i 600,658,0,0,-27 2 0151 i
-j 600,658,146,30,13,30 3 0152 j
-k 600,626,0,92,17,75 2 0153 k
-l 600,626,0,0,-27 2 0154 l
-m 600,454,0,98,72,75 0 0155 m
-n 600,454,0,64,32,64 0 0156 n
-o 600,454,15,72,-21,72 0 0157 o
-p 600,454,142,72,81,72 1 0160 p
-q 600,454,142,134,-11,75 1 0161 q
-r 600,454,0,104,3,75 0 0162 r
-s 600,459,17,57,-17,57 0 0163 s
-t 600,562,15,16,-68,16 2 0164 t
-u 600,439,15,41,-20,41 0 0165 u
-v 600,439,0,144,-20,75 0 0166 v
-w 600,439,0,161,-3,75 0 0167 w
-x 600,439,0,120,44,75 0 0170 x
-y 600,439,142,144,70,75 1 0171 y
-z 600,439,0,63,-31,63 0 0172 z
-lC 600,616,102,45,-154,45 2 0173 braceleft
-{ "
-ba 600,750,250,0,-152 3 0174 bar
-| "
-rC 600,616,102,0,-64 2 0175 braceright
-} "
-a~ 600,636,0,92,-150,75 2 0176 tilde
-~ "
-bq 600,143,142,0,-95 1 0200 quotesinglbase
-Fo 600,446,0,88,-13,75 0 0201 guillemotleft
-char171 "
-Fc 600,446,0,97,-22,75 0 0202 guillemotright
-char187 "
-bu 600,430,0,0,-147 0 0203 bullet
-Fn 600,616,131,151,106,75 2 0204 florin
-f/ 600,661,60,157,28,75 2 0205 fraction
-%0 600,616,15,192,94,75 2 0206 perthousand
-dg 600,580,70,36,-126,36 2 0207 dagger
-dd 600,580,70,36,-72,36 2 0210 daggerdbl
-en 600,313,0,52,-58,52 0 0211 endash
-em 600,313,0,127,17,75 0 0212 emdash
-fi 600,626,0,93,38,75 2 0214 fi
-fl 600,626,0,93,38,75 2 0215 fl
-.i 600,439,0,0,-27 0 0220 dotlessi
-ga 600,661,0,0,-222 2 0222 grave
-a" 600,661,0,178,-122,75 2 0223 hungarumlaut
-a. 600,625,0,0,-296 2 0224 dotaccent
-ab 600,631,0,101,-167,75 2 0225 breve
-ah 600,667,0,82,-188,75 2 0226 caron
-ao 600,678,0,0,-269 2 0227 ring
-ho 600,0,199,0,-94 1 0230 ogonek
-lq 600,562,0,44,-140,44 2 0231 quotedblleft
-rq 600,562,0,94,-70,75 2 0232 quotedblright
-oe 600,454,15,111,31,75 0 0233 oe
-/l 600,626,0,28,-27,28 2 0234 lslash
-Bq 600,143,142,9,15,9 1 0235 quotedblbase
-OE 600,562,0,150,24,75 2 0236 OE
-/L 600,562,0,85,11,75 2 0237 Lslash
-r! 600,449,146,0,-147 1 0241 exclamdown
-char161 "
-ct 600,614,49,54,-71,54 2 0242 cent
-char162 "
-Po 600,611,28,100,-57,75 2 0243 sterling
-char163 "
-Cs 600,517,0,93,-27,75 0 0244 currency
-char164 "
-Ye 600,562,0,159,-48,75 2 0245 yen
-char165 "
-bb 600,675,175,0,-168 3 0246 brokenbar
-char166 "
-sc 600,580,70,69,-24,69 2 0247 section
-char167 "
-ad 600,625,0,42,-194,42 2 0250 dieresis
-char168 "
-co 600,580,18,117,-3,75 2 0251 copyright
-char169 "
-Of 600,580,0,0,-139 2 0252 ordfeminine
-char170 "
-fo 600,446,0,0,-146 0 0253 guilsinglleft
-no 600,413,0,67,-85,67 0 0254 logicalnot
-char172 "
-\- 600,313,0,46,-64,46 0 0255 minus
-rg 600,580,18,117,-3,75 2 0256 registered
-char174 "
-a- 600,585,0,86,-145,75 2 0257 macron
-char175 "
-de 600,616,0,19,-123,19 2 0260 degree
-char176 "
-char177 600,515,0,64,-26,64 0 0261 plusminus
-S2 600,616,0,0,-142 2 0262 twosuperior
-char178 "
-S3 600,616,0,0,-143 2 0263 threesuperior
-char179 "
-aa 600,661,0,58,-263,58 2 0264 acute
-char180 "
-char181 600,439,142,41,0,41 1 0265 mu
-ps 600,580,70,149,-11,75 2 0266 paragraph
-char182 "
-char183 600,351,0,0,-199 0 0267 periodcentered
-ac 600,0,206,0,-119 1 0270 cedilla
-char184 "
-S1 600,616,0,0,-163 2 0271 onesuperior
-char185 "
-Om 600,580,0,0,-139 2 0272 ordmasculine
-char186 "
-fc 600,446,0,0,-116 0 0273 guilsinglright
-14 600,661,60,156,36,75 2 0274 onequarter
-char188 "
-12 600,661,60,165,27,75 2 0275 onehalf
-char189 "
-34 600,661,60,148,42,75 2 0276 threequarters
-char190 "
-r? 600,449,146,0,-51 1 0277 questiondown
-char191 "
-`A 600,784,0,81,59,75 2 0300 Agrave
-char192 "
-'A 600,784,0,115,59,75 2 0301 Aacute
-char193 "
-^A 600,780,0,81,59,75 2 0302 Acircumflex
-char194 "
-~A 600,759,0,88,59,75 2 0303 Atilde
-char195 "
-:A 600,748,0,81,59,75 2 0304 Adieresis
-char196 "
-oA 600,801,0,81,59,75 2 0305 Aring
-char197 "
-AE 600,562,0,157,79,75 2 0306 AE
-char198 "
-,C 600,580,206,124,-24,75 3 0307 Ccedilla
-char199 "
-`E 600,784,0,119,25,75 2 0310 Egrave
-char200 "
-'E 600,784,0,119,25,75 2 0311 Eacute
-char201 "
-^E 600,780,0,119,25,75 2 0312 Ecircumflex
-char202 "
-:E 600,748,0,119,25,75 2 0313 Edieresis
-char203 "
-`I 600,784,0,92,-27,75 2 0314 Igrave
-char204 "
-'I 600,784,0,92,-27,75 2 0315 Iacute
-char205 "
-^I 600,780,0,92,-27,75 2 0316 Icircumflex
-char206 "
-:I 600,748,0,92,-27,75 2 0317 Idieresis
-char207 "
--D 600,562,0,114,20,75 2 0320 Eth
-char208 "
-~N 600,759,12,179,42,75 2 0321 Ntilde
-char209 "
-`O 600,784,18,95,-24,75 2 0322 Ograve
-char210 "
-'O 600,784,18,95,-24,75 2 0323 Oacute
-char211 "
-^O 600,780,18,95,-24,75 2 0324 Ocircumflex
-char212 "
-~O 600,759,18,118,-24,75 2 0325 Otilde
-char213 "
-:O 600,748,18,95,-24,75 2 0326 Odieresis
-char214 "
-char215 600,478,0,56,-55,56 0 0327 multiply
-/O 600,584,22,122,2,75 2 0330 Oslash
-char216 "
-`U 600,784,18,165,-51,75 2 0331 Ugrave
-char217 "
-'U 600,784,18,165,-51,75 2 0332 Uacute
-char218 "
-^U 600,780,18,165,-51,75 2 0333 Ucircumflex
-char219 "
-:U 600,748,18,165,-51,75 2 0334 Udieresis
-char220 "
-'Y 600,784,0,158,-59,75 2 0335 Yacute
-char221 "
-TP 600,562,0,69,2,69 2 0336 Thorn
-char222 "
-ss 600,626,15,78,28,75 2 0337 germandbls
-char223 "
-`a 600,661,15,42,-12,42 2 0340 agrave
-char224 "
-'a 600,661,15,58,-12,58 2 0341 aacute
-char225 "
-^a 600,657,15,42,-12,42 2 0342 acircumflex
-char226 "
-~a 600,636,15,92,-12,75 2 0343 atilde
-char227 "
-:a 600,625,15,42,-12,42 2 0344 adieresis
-char228 "
-oa 600,678,15,42,-12,42 2 0345 aring
-char229 "
-ae 600,454,15,101,29,75 0 0346 ae
-char230 "
-,c 600,459,206,81,-31,75 1 0347 ccedilla
-char231 "
-`e 600,661,15,54,-31,54 2 0350 egrave
-char232 "
-'e 600,661,15,58,-31,58 2 0351 eacute
-char233 "
-^e 600,657,15,56,-31,56 2 0352 ecircumflex
-char234 "
-:e 600,625,15,54,-31,54 2 0353 edieresis
-char235 "
-`i 600,661,0,0,-27 2 0354 igrave
-char236 "
-'i 600,661,0,58,-27,58 2 0355 iacute
-char237 "
-^i 600,657,0,16,-27,16 2 0356 icircumflex
-char238 "
-:i 600,625,0,2,-27,2 2 0357 idieresis
-char239 "
-Sd 600,626,27,111,-43,75 2 0360 eth
-char240 "
-~n 600,636,0,92,32,75 2 0361 ntilde
-char241 "
-`o 600,661,15,72,-21,72 2 0362 ograve
-char242 "
-'o 600,661,15,72,-21,72 2 0363 oacute
-char243 "
-^o 600,657,15,72,-21,72 2 0364 ocircumflex
-char244 "
-~o 600,636,15,92,-21,75 2 0365 otilde
-char245 "
-:o 600,625,15,72,-21,72 2 0366 odieresis
-char246 "
-char247 600,500,0,46,-64,46 0 0367 divide
-/o 600,463,24,87,-5,75 0 0370 oslash
-char248 "
-`u 600,661,15,41,-20,41 2 0371 ugrave
-char249 "
-'u 600,661,15,58,-20,58 2 0372 uacute
-char250 "
-^u 600,657,15,41,-20,41 2 0373 ucircumflex
-char251 "
-:u 600,625,15,41,-20,41 2 0374 udieresis
-char252 "
-'y 600,661,142,144,70,75 3 0375 yacute
-char253 "
-Tp 600,626,142,72,81,72 3 0376 thorn
-char254 "
-:y 600,625,142,144,70,75 3 0377 ydieresis
-char255 "
diff --git a/devps/CI b/devps/CI
deleted file mode 100644
index f63f1931e..000000000
--- a/devps/CI
+++ /dev/null
@@ -1,337 +0,0 @@
-name CI
-internalname Courier-Oblique
-slant 12
-spacewidth 600
-encoding text.enc
-charset
-ha 600,622,0,37,-125,37 2 0000 asciicircum
-ti 600,320,0,50,-66,50 0 0001 asciitilde
-vS 600,805,20,123,-26,72 2 0002 Scaron
-vZ 600,805,0,93,-36,72 2 0003 Zcaron
-vs 600,669,15,64,-28,64 2 0004 scaron
-vz 600,669,0,74,-49,72 2 0005 zcaron
-:Y 600,731,0,145,-83,72 2 0006 Ydieresis
-tm 600,562,0,192,-25,72 2 0007 trademark
-aq 600,562,0,0,-295 2 0010 quotesingle
-space 600 0 0040
-! 600,572,15,0,-193 2 0041 exclam
-" 600,562,0,0,-223 2 0042 quotedbl
-# 600,639,32,46,-83,46 2 0043 numbersign
-sh "
-$ 600,662,126,46,-58,46 2 0044 dollar
-Do "
-% 600,622,15,49,-84,49 2 0045 percent
-& 600,543,15,30,-37,30 0 0046 ampersand
-' 600,562,0,0,-233 2 0047 quoteright
-( 600,622,108,22,-263,22 2 0050 parenleft
-) 600,622,108,0,-87 2 0051 parenright
-* 600,607,0,30,-162,30 2 0052 asterisk
-+ 600,470,0,30,-79,30 0 0053 plus
-, 600,122,112,0,-107 0 0054 comma
-- 600,285,0,8,-102,8 0 0055 hyphen
-hy "
-char173 "
-. 600,109,15,0,-188 0 0056 period
-/ 600,629,80,54,-62,54 2 0057 slash
-sl "
-0 600,622,15,25,-104,25 2 0060 zero
-1 600,622,0,0,-48 2 0061 one
-2 600,622,0,18,-20,18 2 0062 two
-3 600,622,15,0,-32 2 0063 three
-4 600,622,0,0,-58 2 0064 four
-5 600,607,15,39,-49,39 2 0065 five
-6 600,622,15,79,-105,72 2 0066 six
-7 600,607,0,62,-132,62 2 0067 seven
-8 600,622,15,38,-82,38 2 0070 eight
-9 600,622,15,24,-43,24 2 0071 nine
-: 600,385,15,0,-188 0 0072 colon
-; 600,385,112,0,-107 0 0073 semicolon
-< 600,472,0,60,-46,60 0 0074 less
-= 600,376,0,50,-59,50 0 0075 equal
-> 600,472,0,49,-35,49 0 0076 greater
-? 600,572,15,33,-172,33 2 0077 question
-@ 600,622,15,32,-77,32 2 0100 at
-at "
-A 600,562,0,57,47,57 2 0101 A
-B 600,562,0,66,7,66 2 0102 B
-C 600,580,18,105,-43,72 2 0103 C
-D 600,562,0,95,7,72 2 0104 D
-E 600,562,0,110,-3,72 2 0105 E
-F 600,562,0,110,-3,72 2 0106 F
-G 600,580,18,95,-33,72 2 0107 G
-H 600,562,0,137,18,72 2 0110 H
-I 600,562,0,73,-46,72 2 0111 I
-J 600,562,18,135,-2,72 2 0112 J
-K 600,562,0,121,12,72 2 0113 K
-L 600,562,0,57,3,57 2 0114 L
-M 600,562,0,165,46,72 2 0115 M
-N 600,562,13,162,43,72 2 0116 N
-O 600,580,18,75,-44,72 2 0117 O
-P 600,562,0,94,-29,72 2 0120 P
-Q 600,580,138,75,-45,72 2 0121 Q
-R 600,562,0,48,12,48 2 0122 R
-S 600,580,20,100,-26,72 2 0123 S
-T 600,562,0,115,-58,72 2 0124 T
-U 600,562,18,152,-75,72 2 0125 U
-V 600,562,13,173,-55,72 2 0126 V
-W 600,562,13,172,-56,72 2 0127 W
-X 600,562,0,125,27,72 2 0130 X
-Y 600,562,0,145,-83,72 2 0131 Y
-Z 600,562,0,60,-36,60 2 0132 Z
-[ 600,622,108,24,-196,24 2 0133 bracketleft
-lB "
-\ 600,629,80,0,-199 2 0134 backslash
-rs "
-] 600,622,108,0,-85 2 0135 bracketright
-rB "
-a^ 600,654,0,31,-179,31 2 0136 circumflex
-^ "
-_ 600,0,125,34,77,34 0 0137 underscore
-` 600,562,0,0,-293 2 0140 quoteleft
-oq "
-a 600,441,15,19,-26,19 0 0141 a
-b 600,629,15,75,21,72 2 0142 b
-c 600,441,15,58,-56,58 0 0143 c
-d 600,629,15,90,-35,72 2 0144 d
-e 600,441,15,48,-56,48 0 0145 e
-f 600,629,0,112,-64,72 2 0146 f
-g 600,441,157,107,-11,72 1 0147 g
-h 600,629,0,42,17,42 2 0150 h
-i 600,657,0,0,-45 2 0151 i
-j 600,657,157,0,-2 3 0152 j
-k 600,629,0,83,-8,72 2 0153 k
-l 600,629,0,0,-45 2 0154 l
-m 600,441,0,65,55,65 0 0155 m
-n 600,441,0,35,24,35 0 0156 n
-o 600,441,15,38,-52,38 0 0157 o
-p 600,441,157,55,74,55 1 0160 p
-q 600,441,157,132,-35,72 1 0161 q
-r 600,441,0,86,-10,72 0 0162 r
-s 600,441,15,34,-28,34 0 0163 s
-t 600,561,15,11,-117,11 2 0164 t
-u 600,426,15,22,-51,22 0 0165 u
-v 600,426,10,131,-40,72 0 0166 v
-w 600,426,10,145,-26,72 0 0167 w
-x 600,426,0,105,30,72 0 0170 x
-y 600,426,157,133,54,72 1 0171 y
-z 600,426,0,43,-49,43 0 0172 z
-lC 600,622,108,19,-183,19 2 0173 braceleft
-{ "
-ba 600,750,250,0,-172 3 0174 bar
-| "
-rC 600,622,108,0,-90 2 0175 braceright
-} "
-a~ 600,606,0,79,-162,72 2 0176 tilde
-~ "
-bq 600,100,134,0,-135 0 0200 quotesinglbase
-Fo 600,446,0,102,-42,72 0 0201 guillemotleft
-char171 "
-Fc 600,446,0,68,-8,68 0 0202 guillemotright
-char187 "
-bu 600,383,0,0,-174 0 0203 bullet
-Fn 600,622,143,121,76,72 2 0204 florin
-f/ 600,665,57,96,-34,72 2 0205 fraction
-%0 600,622,15,77,-9,72 2 0206 perthousand
-dg 600,580,78,0,-167 2 0207 dagger
-dd 600,580,78,0,-113 2 0210 daggerdbl
-en 600,285,0,36,-74,36 0 0211 endash
-em 600,285,0,111,1,72 0 0212 emdash
-fi 600,629,0,69,47,69 2 0214 fi
-fl 600,629,0,69,47,69 2 0215 fl
-.i 600,426,0,0,-45 0 0220 dotlessi
-ga 600,672,0,0,-244 2 0222 grave
-a" 600,672,0,133,-189,72 2 0223 hungarumlaut
-a. 600,580,0,0,-310 2 0224 dotaccent
-ab 600,609,0,26,-229,26 2 0225 breve
-ah 600,669,0,64,-212,64 2 0226 caron
-ao 600,627,0,0,-282 2 0227 ring
-ho 600,0,151,0,-157 0 0230 ogonek
-lq 600,562,0,0,-212 2 0231 quotedblleft
-rq 600,562,0,26,-163,26 2 0232 quotedblright
-oe 600,441,15,65,-4,65 0 0233 oe
-/l 600,629,0,33,-45,33 2 0234 lslash
-Bq 600,100,134,0,-65 0 0235 quotedblbase
-OE 600,562,0,122,-9,72 2 0236 OE
-/L 600,562,0,57,3,57 2 0237 Lslash
-r! 600,430,157,0,-175 1 0241 exclamdown
-char161 "
-ct 600,614,49,38,-101,38 2 0242 cent
-char162 "
-Po 600,611,21,71,-74,71 2 0243 sterling
-char163 "
-Cs 600,506,0,78,-44,72 0 0244 currency
-char164 "
-Ye 600,562,0,143,-70,72 2 0245 yen
-char165 "
-bb 600,675,175,0,-188 3 0246 brokenbar
-char166 "
-sc 600,580,78,40,-54,40 2 0247 section
-char167 "
-ad 600,595,0,20,-212,20 2 0250 dieresis
-char168 "
-co 600,580,18,117,-3,72 2 0251 copyright
-char169 "
-Of 600,580,0,0,-159 2 0252 ordfeminine
-char170 "
-fo 600,446,0,0,-154 0 0253 guilsinglleft
-no 600,369,0,41,-105,41 0 0254 logicalnot
-char172 "
-\- 600,283,0,30,-79,30 0 0255 minus
-rg 600,580,18,117,-3,72 2 0256 registered
-char174 "
-a- 600,565,0,50,-182,50 2 0257 macron
-char175 "
-de 600,622,0,26,-164,26 2 0260 degree
-char176 "
-char177 600,558,0,44,-46,44 0 0261 plusminus
-S2 600,622,0,0,-180 2 0262 twosuperior
-char178 "
-S3 600,622,0,0,-163 2 0263 threesuperior
-char179 "
-aa 600,672,0,62,-298,62 2 0264 acute
-char180 "
-char181 600,426,157,22,-22,22 1 0265 mu
-ps 600,562,78,80,-50,72 2 0266 paragraph
-char182 "
-char183 600,327,0,0,-225 0 0267 periodcentered
-ac 600,10,151,0,-147 0 0270 cedilla
-char184 "
-S1 600,622,0,0,-181 2 0271 onesuperior
-char185 "
-Om 600,580,0,0,-160 2 0272 ordmasculine
-char186 "
-fc 600,446,0,0,-120 0 0273 guilsinglright
-14 600,665,57,124,-15,72 2 0274 onequarter
-char188 "
-12 600,665,57,119,-15,72 2 0275 onehalf
-char189 "
-34 600,666,56,109,-23,72 2 0276 threequarters
-char190 "
-r? 600,430,157,0,-55 1 0277 questiondown
-char191 "
-`A 600,793,0,57,47,57 2 0300 Agrave
-char192 "
-'A 600,793,0,108,47,72 2 0301 Aacute
-char193 "
-^A 600,775,0,57,47,57 2 0302 Acircumflex
-char194 "
-~A 600,732,0,106,47,72 2 0303 Atilde
-char195 "
-:A 600,731,0,57,47,57 2 0304 Adieresis
-char196 "
-oA 600,753,0,57,47,57 2 0305 Aring
-char197 "
-AE 600,562,0,105,47,72 2 0306 AE
-char198 "
-,C 600,580,151,108,-43,72 2 0307 Ccedilla
-char199 "
-`E 600,793,0,110,-3,72 2 0310 Egrave
-char200 "
-'E 600,793,0,118,-3,72 2 0311 Eacute
-char201 "
-^E 600,775,0,110,-3,72 2 0312 Ecircumflex
-char202 "
-:E 600,731,0,110,-3,72 2 0313 Edieresis
-char203 "
-`I 600,793,0,73,-46,72 2 0314 Igrave
-char204 "
-'I 600,793,0,88,-46,72 2 0315 Iacute
-char205 "
-^I 600,775,0,73,-46,72 2 0316 Icircumflex
-char206 "
-:I 600,731,0,73,-46,72 2 0317 Idieresis
-char207 "
--D 600,562,0,95,7,72 2 0320 Eth
-char208 "
-~N 600,732,13,162,43,72 2 0321 Ntilde
-char209 "
-`O 600,793,18,75,-44,72 2 0322 Ograve
-char210 "
-'O 600,793,18,88,-44,72 2 0323 Oacute
-char211 "
-^O 600,775,18,75,-44,72 2 0324 Ocircumflex
-char212 "
-~O 600,732,18,106,-44,72 2 0325 Otilde
-char213 "
-:O 600,731,18,75,-44,72 2 0326 Odieresis
-char214 "
-char215 600,470,0,57,-53,57 0 0327 multiply
-/O 600,629,80,75,-44,72 2 0330 Oslash
-char216 "
-`U 600,793,18,152,-75,72 2 0331 Ugrave
-char217 "
-'U 600,793,18,152,-75,72 2 0332 Uacute
-char218 "
-^U 600,775,18,152,-75,72 2 0333 Ucircumflex
-char219 "
-:U 600,731,18,152,-75,72 2 0334 Udieresis
-char220 "
-'Y 600,793,0,145,-83,72 2 0335 Yacute
-char221 "
-TP 600,562,0,56,-29,56 2 0336 Thorn
-char222 "
-ss 600,629,15,67,2,67 2 0337 germandbls
-char223 "
-`a 600,672,15,19,-26,19 2 0340 agrave
-char224 "
-'a 600,672,15,62,-26,62 2 0341 aacute
-char225 "
-^a 600,654,15,31,-26,31 2 0342 acircumflex
-char226 "
-~a 600,606,15,79,-26,72 2 0343 atilde
-char227 "
-:a 600,595,15,20,-26,20 2 0344 adieresis
-char228 "
-oa 600,627,15,19,-26,19 2 0345 aring
-char229 "
-ae 600,441,15,76,9,72 0 0346 ae
-char230 "
-,c 600,441,151,64,-56,64 0 0347 ccedilla
-char231 "
-`e 600,672,15,48,-56,48 2 0350 egrave
-char232 "
-'e 600,672,15,62,-56,62 2 0351 eacute
-char233 "
-^e 600,654,15,48,-56,48 2 0352 ecircumflex
-char234 "
-:e 600,595,15,48,-56,48 2 0353 edieresis
-char235 "
-`i 600,672,0,0,-45 2 0354 igrave
-char236 "
-'i 600,672,0,62,-45,62 2 0355 iacute
-char237 "
-^i 600,654,0,1,-45,1 2 0356 icircumflex
-char238 "
-:i 600,595,0,0,-45 2 0357 idieresis
-char239 "
-Sd 600,629,15,89,-52,72 2 0360 eth
-char240 "
-~n 600,606,0,79,24,72 2 0361 ntilde
-char241 "
-`o 600,672,15,38,-52,38 2 0362 ograve
-char242 "
-'o 600,672,15,62,-52,62 2 0363 oacute
-char243 "
-^o 600,654,15,38,-52,38 2 0364 ocircumflex
-char244 "
-~o 600,606,15,79,-52,72 2 0365 otilde
-char245 "
-:o 600,595,15,38,-52,38 2 0366 odieresis
-char246 "
-char247 600,467,0,23,-86,23 0 0367 divide
-/o 600,506,80,38,-52,38 0 0370 oslash
-char248 "
-`u 600,672,15,22,-51,22 2 0371 ugrave
-char249 "
-'u 600,672,15,52,-51,52 2 0372 uacute
-char250 "
-^u 600,654,15,22,-51,22 2 0373 ucircumflex
-char251 "
-:u 600,595,15,22,-51,22 2 0374 udieresis
-char252 "
-'y 600,672,157,133,54,72 3 0375 yacute
-char253 "
-Tp 600,629,157,55,74,55 3 0376 thorn
-char254 "
-:y 600,595,157,133,54,72 3 0377 ydieresis
-char255 "
diff --git a/devps/CR b/devps/CR
deleted file mode 100644
index c6a92a16d..000000000
--- a/devps/CR
+++ /dev/null
@@ -1,336 +0,0 @@
-name CR
-internalname Courier
-spacewidth 600
-encoding text.enc
-charset
-ha 600,622 2 0000 asciicircum
-ti 600,320 0 0001 asciitilde
-vS 600,805,20 2 0002 Scaron
-vZ 600,805 2 0003 Zcaron
-vs 600,669,15 2 0004 scaron
-vz 600,669 2 0005 zcaron
-:Y 600,731 2 0006 Ydieresis
-tm 600,562 2 0007 trademark
-aq 600,562 2 0010 quotesingle
-space 600 0 0040
-! 600,572,15 2 0041 exclam
-" 600,562 2 0042 quotedbl
-# 600,639,32 2 0043 numbersign
-sh "
-$ 600,662,126 2 0044 dollar
-Do "
-% 600,622,15 2 0045 percent
-& 600,543,15 0 0046 ampersand
-' 600,562 2 0047 quoteright
-( 600,622,108 2 0050 parenleft
-) 600,622,108 2 0051 parenright
-* 600,607 2 0052 asterisk
-+ 600,470 0 0053 plus
-, 600,122,112 0 0054 comma
-- 600,285 0 0055 hyphen
-hy "
-char173 "
-. 600,109,15 0 0056 period
-/ 600,629,80 2 0057 slash
-sl "
-0 600,622,15 2 0060 zero
-1 600,622 2 0061 one
-2 600,622 2 0062 two
-3 600,622,15 2 0063 three
-4 600,622 2 0064 four
-5 600,607,15 2 0065 five
-6 600,622,15 2 0066 six
-7 600,607 2 0067 seven
-8 600,622,15 2 0070 eight
-9 600,622,15 2 0071 nine
-: 600,385,15 0 0072 colon
-; 600,385,112 0 0073 semicolon
-< 600,472 0 0074 less
-= 600,376 0 0075 equal
-> 600,472 0 0076 greater
-? 600,572,15 2 0077 question
-@ 600,622,15 2 0100 at
-at "
-A 600,562 2 0101 A
-B 600,562 2 0102 B
-C 600,580,18 2 0103 C
-D 600,562 2 0104 D
-E 600,562 2 0105 E
-F 600,562 2 0106 F
-G 600,580,18 2 0107 G
-H 600,562 2 0110 H
-I 600,562 2 0111 I
-J 600,562,18 2 0112 J
-K 600,562 2 0113 K
-L 600,562 2 0114 L
-M 600,562 2 0115 M
-N 600,562,13 2 0116 N
-O 600,580,18 2 0117 O
-P 600,562 2 0120 P
-Q 600,580,138 2 0121 Q
-R 600,562 2 0122 R
-S 600,580,20 2 0123 S
-T 600,562 2 0124 T
-U 600,562,18 2 0125 U
-V 600,562,13 2 0126 V
-W 600,562,13 2 0127 W
-X 600,562 2 0130 X
-Y 600,562 2 0131 Y
-Z 600,562 2 0132 Z
-[ 600,622,108 2 0133 bracketleft
-lB "
-\ 600,629,80 2 0134 backslash
-rs "
-] 600,622,108 2 0135 bracketright
-rB "
-a^ 600,654 2 0136 circumflex
-^ "
-_ 600,0,125 0 0137 underscore
-` 600,562 2 0140 quoteleft
-oq "
-a 600,441,15 0 0141 a
-b 600,629,15 2 0142 b
-c 600,441,15 0 0143 c
-d 600,629,15 2 0144 d
-e 600,441,15 0 0145 e
-f 600,629 2 0146 f
-g 600,441,157 1 0147 g
-h 600,629 2 0150 h
-i 600,657 2 0151 i
-j 600,657,157 3 0152 j
-k 600,629 2 0153 k
-l 600,629 2 0154 l
-m 600,441 0 0155 m
-n 600,441 0 0156 n
-o 600,441,15 0 0157 o
-p 600,441,157 1 0160 p
-q 600,441,157 1 0161 q
-r 600,441 0 0162 r
-s 600,441,15 0 0163 s
-t 600,561,15 2 0164 t
-u 600,426,15 0 0165 u
-v 600,426,10 0 0166 v
-w 600,426,10 0 0167 w
-x 600,426 0 0170 x
-y 600,426,157 1 0171 y
-z 600,426 0 0172 z
-lC 600,622,108 2 0173 braceleft
-{ "
-ba 600,750,250 3 0174 bar
-| "
-rC 600,622,108 2 0175 braceright
-} "
-a~ 600,606 2 0176 tilde
-~ "
-bq 600,100,134 0 0200 quotesinglbase
-Fo 600,446 0 0201 guillemotleft
-char171 "
-Fc 600,446 0 0202 guillemotright
-char187 "
-bu 600,383 0 0203 bullet
-Fn 600,622,143 2 0204 florin
-f/ 600,665,57 2 0205 fraction
-%0 600,622,15 2 0206 perthousand
-dg 600,580,78 2 0207 dagger
-dd 600,580,78 2 0210 daggerdbl
-en 600,285 0 0211 endash
-em 600,285 0 0212 emdash
-fi 600,629 2 0214 fi
-fl 600,629 2 0215 fl
-.i 600,426 0 0220 dotlessi
-ga 600,672 2 0222 grave
-a" 600,672 2 0223 hungarumlaut
-a. 600,580 2 0224 dotaccent
-ab 600,609 2 0225 breve
-ah 600,669 2 0226 caron
-ao 600,627 2 0227 ring
-ho 600,0,151 0 0230 ogonek
-lq 600,562 2 0231 quotedblleft
-rq 600,562 2 0232 quotedblright
-oe 600,441,15 0 0233 oe
-/l 600,629 2 0234 lslash
-Bq 600,100,134 0 0235 quotedblbase
-OE 600,562 2 0236 OE
-/L 600,562 2 0237 Lslash
-r! 600,430,157 1 0241 exclamdown
-char161 "
-ct 600,614,49 2 0242 cent
-char162 "
-Po 600,611,21 2 0243 sterling
-char163 "
-Cs 600,506 0 0244 currency
-char164 "
-Ye 600,562 2 0245 yen
-char165 "
-bb 600,675,175 3 0246 brokenbar
-char166 "
-sc 600,580,78 2 0247 section
-char167 "
-ad 600,595 2 0250 dieresis
-char168 "
-co 600,580,18 2 0251 copyright
-char169 "
-Of 600,580 2 0252 ordfeminine
-char170 "
-fo 600,446 0 0253 guilsinglleft
-no 600,369 0 0254 logicalnot
-char172 "
-\- 600,283 0 0255 minus
-rg 600,580,18 2 0256 registered
-char174 "
-a- 600,565 2 0257 macron
-char175 "
-de 600,622 2 0260 degree
-char176 "
-char177 600,558 0 0261 plusminus
-S2 600,622 2 0262 twosuperior
-char178 "
-S3 600,622 2 0263 threesuperior
-char179 "
-aa 600,672 2 0264 acute
-char180 "
-char181 600,426,157 1 0265 mu
-ps 600,562,78 2 0266 paragraph
-char182 "
-char183 600,327 0 0267 periodcentered
-ac 600,10,151 0 0270 cedilla
-char184 "
-S1 600,622 2 0271 onesuperior
-char185 "
-Om 600,580 2 0272 ordmasculine
-char186 "
-fc 600,446 0 0273 guilsinglright
-14 600,665,57 2 0274 onequarter
-char188 "
-12 600,665,57 2 0275 onehalf
-char189 "
-34 600,666,56 2 0276 threequarters
-char190 "
-r? 600,430,157 1 0277 questiondown
-char191 "
-`A 600,793 2 0300 Agrave
-char192 "
-'A 600,793 2 0301 Aacute
-char193 "
-^A 600,775 2 0302 Acircumflex
-char194 "
-~A 600,732 2 0303 Atilde
-char195 "
-:A 600,731 2 0304 Adieresis
-char196 "
-oA 600,753 2 0305 Aring
-char197 "
-AE 600,562 2 0306 AE
-char198 "
-,C 600,580,151 2 0307 Ccedilla
-char199 "
-`E 600,793 2 0310 Egrave
-char200 "
-'E 600,793 2 0311 Eacute
-char201 "
-^E 600,775 2 0312 Ecircumflex
-char202 "
-:E 600,731 2 0313 Edieresis
-char203 "
-`I 600,793 2 0314 Igrave
-char204 "
-'I 600,793 2 0315 Iacute
-char205 "
-^I 600,775 2 0316 Icircumflex
-char206 "
-:I 600,731 2 0317 Idieresis
-char207 "
--D 600,562 2 0320 Eth
-char208 "
-~N 600,732,13 2 0321 Ntilde
-char209 "
-`O 600,793,18 2 0322 Ograve
-char210 "
-'O 600,793,18 2 0323 Oacute
-char211 "
-^O 600,775,18 2 0324 Ocircumflex
-char212 "
-~O 600,732,18 2 0325 Otilde
-char213 "
-:O 600,731,18 2 0326 Odieresis
-char214 "
-char215 600,470 0 0327 multiply
-/O 600,629,80 2 0330 Oslash
-char216 "
-`U 600,793,18 2 0331 Ugrave
-char217 "
-'U 600,793,18 2 0332 Uacute
-char218 "
-^U 600,775,18 2 0333 Ucircumflex
-char219 "
-:U 600,731,18 2 0334 Udieresis
-char220 "
-'Y 600,793 2 0335 Yacute
-char221 "
-TP 600,562 2 0336 Thorn
-char222 "
-ss 600,629,15 2 0337 germandbls
-char223 "
-`a 600,672,15 2 0340 agrave
-char224 "
-'a 600,672,15 2 0341 aacute
-char225 "
-^a 600,654,15 2 0342 acircumflex
-char226 "
-~a 600,606,15 2 0343 atilde
-char227 "
-:a 600,595,15 2 0344 adieresis
-char228 "
-oa 600,627,15 2 0345 aring
-char229 "
-ae 600,441,15 0 0346 ae
-char230 "
-,c 600,441,151 0 0347 ccedilla
-char231 "
-`e 600,672,15 2 0350 egrave
-char232 "
-'e 600,672,15 2 0351 eacute
-char233 "
-^e 600,654,15 2 0352 ecircumflex
-char234 "
-:e 600,595,15 2 0353 edieresis
-char235 "
-`i 600,672 2 0354 igrave
-char236 "
-'i 600,672 2 0355 iacute
-char237 "
-^i 600,654 2 0356 icircumflex
-char238 "
-:i 600,595 2 0357 idieresis
-char239 "
-Sd 600,629,15 2 0360 eth
-char240 "
-~n 600,606 2 0361 ntilde
-char241 "
-`o 600,672,15 2 0362 ograve
-char242 "
-'o 600,672,15 2 0363 oacute
-char243 "
-^o 600,654,15 2 0364 ocircumflex
-char244 "
-~o 600,606,15 2 0365 otilde
-char245 "
-:o 600,595,15 2 0366 odieresis
-char246 "
-char247 600,467 0 0367 divide
-/o 600,506,80 0 0370 oslash
-char248 "
-`u 600,672,15 2 0371 ugrave
-char249 "
-'u 600,672,15 2 0372 uacute
-char250 "
-^u 600,654,15 2 0373 ucircumflex
-char251 "
-:u 600,595,15 2 0374 udieresis
-char252 "
-'y 600,672,157 3 0375 yacute
-char253 "
-Tp 600,629,157 3 0376 thorn
-char254 "
-:y 600,595,157 3 0377 ydieresis
-char255 "
diff --git a/devps/HB b/devps/HB
deleted file mode 100644
index 8c2ed083a..000000000
--- a/devps/HB
+++ /dev/null
@@ -1,546 +0,0 @@
-name HB
-internalname Helvetica-Bold
-spacewidth 278
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -30
-A w -30
-A v -40
-A u -30
-A Y -110
-A W -60
-A V -80
-A U -50
-A T -90
-A Q -40
-A O -40
-A G -50
-A C -40
-B U -10
-B A -30
-D . -30
-D , -30
-D Y -70
-D W -40
-D V -40
-D A -40
-F . -100
-F , -100
-F a -20
-F A -80
-J u -20
-J . -20
-J , -20
-J A -20
-K y -40
-K u -30
-K o -35
-K e -15
-K O -30
-L y -30
-L ' -140
-L rq -140
-L Y -120
-L W -80
-L V -110
-L T -90
-O . -40
-O , -40
-O Y -70
-O X -50
-O W -50
-O V -50
-O T -40
-O A -50
-P . -120
-P o -40
-P e -30
-P , -120
-P a -30
-P A -100
-Q . 20
-Q , 20
-Q U -10
-R Y -50
-R W -40
-R V -50
-R U -20
-R T -20
-R O -20
-T y -60
-T w -60
-T u -90
-T ; -40
-T r -80
-T . -80
-T o -80
-T - -120
-T hy -120
-T char173 -120
-T e -60
-T , -80
-T : -40
-T a -80
-T O -40
-T A -90
-U . -30
-U , -30
-U A -50
-V u -60
-V ; -40
-V . -120
-V o -90
-V - -80
-V hy -80
-V char173 -80
-V e -50
-V , -120
-V : -40
-V a -60
-V O -50
-V G -50
-V A -80
-W y -20
-W u -45
-W ; -10
-W . -80
-W o -60
-W - -40
-W hy -40
-W char173 -40
-W e -35
-W , -80
-W : -10
-W a -40
-W O -20
-W A -60
-Y u -100
-Y ; -50
-Y . -100
-Y o -100
-Y e -80
-Y , -100
-Y : -50
-Y a -90
-Y O -70
-Y A -110
-a y -20
-a w -15
-a v -15
-a g -10
-b y -20
-b v -20
-b u -20
-b l -10
-c y -10
-c l -20
-c k -20
-c h -10
-, ' -120
-, rq -120
-d y -15
-d w -15
-d v -15
-d d -10
-e y -15
-e x -15
-e w -15
-e v -15
-e . 20
-e , 10
-f ' 30
-f rq 30
-f . -10
-f o -20
-f e -10
-f , -10
-g g -10
-g e 10
-h y -20
-k o -15
-l y -15
-l w -15
-m y -30
-m u -20
-n y -20
-n v -40
-n u -10
-o y -20
-o x -30
-o w -15
-o v -20
-p y -15
-. ' -120
-. rq -120
-` ` -46
-` oq -46
-oq ` -46
-oq oq -46
-' v -20
-' s -60
-' r -40
-' ' -46
-' l -20
-' d -80
-r y 10
-r v 10
-r t 20
-r s -15
-r q -20
-r . -60
-r o -20
-r - -20
-r hy -20
-r char173 -20
-r g -15
-r d -20
-r , -60
-r c -20
-s w -15
-v . -80
-v o -30
-v , -80
-v a -20
-w . -40
-w o -20
-w , -40
-x e -10
-y . -80
-y o -25
-y e -10
-y , -80
-y a -30
-z e 10
-charset
-ha 584,698 2 0000 asciicircum
-ti 584,343 0 0001 asciitilde
-vS 667,936,19 2 0002 Scaron
-vZ 611,936 2 0003 Zcaron
-vs 556,750,14 2 0004 scaron
-vz 500,750 2 0005 zcaron
-:Y 667,915 2 0006 Ydieresis
-tm 1000,718 2 0007 trademark
-aq 238,718 2 0010 quotesingle
-space 278 0 0040
-! 333,718 2 0041 exclam
-" 474,718 2 0042 quotedbl
-# 556,698 2 0043 numbersign
-sh "
-$ 556,775,115 2 0044 dollar
-Do "
-% 889,710,19 2 0045 percent
-& 722,718,19 2 0046 ampersand
-' 278,718 2 0047 quoteright
-( 333,734,208 3 0050 parenleft
-) 333,734,208 3 0051 parenright
-* 389,718 2 0052 asterisk
-+ 584,506 0 0053 plus
-, 278,146,168 0 0054 comma
-- 333,345 0 0055 hyphen
-hy "
-char173 "
-. 278,146 0 0056 period
-/ 278,737,19 2 0057 slash
-sl "
-0 556,710,19 2 0060 zero
-1 556,710 2 0061 one
-2 556,710 2 0062 two
-3 556,710,19 2 0063 three
-4 556,710 2 0064 four
-5 556,698,19 2 0065 five
-6 556,710,19 2 0066 six
-7 556,698 2 0067 seven
-8 556,710,19 2 0070 eight
-9 556,710,19 2 0071 nine
-: 333,512 0 0072 colon
-; 333,512,168 0 0073 semicolon
-< 584,514,8 0 0074 less
-= 584,419 0 0075 equal
-> 584,514,8 0 0076 greater
-? 611,727 2 0077 question
-@ 975,737,19 2 0100 at
-at "
-A 722,718 2 0101 A
-B 722,718 2 0102 B
-C 722,737,19 2 0103 C
-D 722,718 2 0104 D
-E 667,718 2 0105 E
-F 611,718 2 0106 F
-G 778,737,19 2 0107 G
-H 722,718 2 0110 H
-I 278,718 2 0111 I
-J 556,718,18 2 0112 J
-K 722,718 2 0113 K
-L 611,718 2 0114 L
-M 833,718 2 0115 M
-N 722,718 2 0116 N
-O 778,737,19 2 0117 O
-P 667,718 2 0120 P
-Q 778,737,52 2 0121 Q
-R 722,718 2 0122 R
-S 667,737,19 2 0123 S
-T 611,718 2 0124 T
-U 722,718,19 2 0125 U
-V 667,718 2 0126 V
-W 944,718 2 0127 W
-X 667,718 2 0130 X
-Y 667,718 2 0131 Y
-Z 611,718 2 0132 Z
-[ 333,722,196 2 0133 bracketleft
-lB "
-\ 278,737,19 2 0134 backslash
-rs "
-] 333,722,196 2 0135 bracketright
-rB "
-a^ 333,750 2 0136 circumflex
-^ "
-_ 556,0,125 0 0137 underscore
-` 278,727 2 0140 quoteleft
-oq "
-a 556,546,14 0 0141 a
-b 611,718,14 2 0142 b
-c 556,546,14 0 0143 c
-d 611,718,14 2 0144 d
-e 556,546,14 0 0145 e
-f 333,727 2 0146 f
-g 611,546,217 1 0147 g
-h 611,718 2 0150 h
-i 278,725 2 0151 i
-j 278,725,214 3 0152 j
-k 556,718 2 0153 k
-l 278,718 2 0154 l
-m 889,546 0 0155 m
-n 611,546 0 0156 n
-o 611,546,14 0 0157 o
-p 611,546,207 1 0160 p
-q 611,546,207 1 0161 q
-r 389,546 0 0162 r
-s 556,546,14 0 0163 s
-t 333,676,6 2 0164 t
-u 611,532,14 0 0165 u
-v 556,532 0 0166 v
-w 778,532 0 0167 w
-x 556,532 0 0170 x
-y 556,532,214 1 0171 y
-z 500,532 0 0172 z
-lC 389,722,196 2 0173 braceleft
-{ "
-ba 280,737,19 2 0174 bar
-| "
-rC 389,722,196 2 0175 braceright
-} "
-a~ 333,737 2 0176 tilde
-~ "
-bq 278,127,146 0 0200 quotesinglbase
-Fo 556,484 0 0201 guillemotleft
-char171 "
-Fc 556,484 0 0202 guillemotright
-char187 "
-bu 350,524 0 0203 bullet
-Fn 556,737,210 3 0204 florin
-f/ 167,710,19 2 0205 fraction
-%0 1000,710,19 2 0206 perthousand
-dg 556,718,171 2 0207 dagger
-dd 556,718,171 2 0210 daggerdbl
-en 556,333 0 0211 endash
-em 1000,333 0 0212 emdash
-fi 611,727 2 0214 fi
-fl 611,727 2 0215 fl
-.i 278,532 0 0220 dotlessi
-ga 333,750 2 0222 grave
-a" 333,750 2 0223 hungarumlaut
-a. 333,729 2 0224 dotaccent
-ab 333,750 2 0225 breve
-ah 333,750 2 0226 caron
-ao 333,776 2 0227 ring
-ho 333,0,228 1 0230 ogonek
-lq 500,727 2 0231 quotedblleft
-rq 500,718 2 0232 quotedblright
-oe 944,546,14 0 0233 oe
-/l 278,718 2 0234 lslash
-Bq 500,127,146 0 0235 quotedblbase
-OE 1000,737,19 2 0236 OE
-/L 611,718 2 0237 Lslash
-r! 333,532,186 0 0241 exclamdown
-char161 "
-ct 556,628,118 0 0242 cent
-char162 "
-Po 556,718,16 2 0243 sterling
-char163 "
-Cs 556,636 0 0244 currency
-char164 "
-Ye 556,698 2 0245 yen
-char165 "
-bb 280,737,19 2 0246 brokenbar
-char166 "
-sc 556,727,184 2 0247 section
-char167 "
-ad 333,729 2 0250 dieresis
-char168 "
-co 737,737,19 2 0251 copyright
-char169 "
-Of 370,737 2 0252 ordfeminine
-char170 "
-fo 333,484 0 0253 guilsinglleft
-no 584,419 0 0254 logicalnot
-char172 "
-\- 584,309 0 0255 minus
-rg 737,737,19 2 0256 registered
-char174 "
-a- 333,678 2 0257 macron
-char175 "
-de 400,712 2 0260 degree
-char176 "
-char177 584,506 0 0261 plusminus
-S2 333,710 2 0262 twosuperior
-char178 "
-S3 333,710 2 0263 threesuperior
-char179 "
-aa 333,750 2 0264 acute
-char180 "
-char181 611,532,207 1 0265 mu
-ps 556,700,191 2 0266 paragraph
-char182 "
-char183 278,334 0 0267 periodcentered
-ac 333,0,228 1 0270 cedilla
-char184 "
-S1 333,710 2 0271 onesuperior
-char185 "
-Om 365,737 2 0272 ordmasculine
-char186 "
-fc 333,484 0 0273 guilsinglright
-14 834,710,19 2 0274 onequarter
-char188 "
-12 834,710,19 2 0275 onehalf
-char189 "
-34 834,710,19 2 0276 threequarters
-char190 "
-r? 611,532,195 0 0277 questiondown
-char191 "
-`A 722,936 2 0300 Agrave
-char192 "
-'A 722,936 2 0301 Aacute
-char193 "
-^A 722,936 2 0302 Acircumflex
-char194 "
-~A 722,923 2 0303 Atilde
-char195 "
-:A 722,915 2 0304 Adieresis
-char196 "
-oA 722,962 2 0305 Aring
-char197 "
-AE 1000,718 2 0306 AE
-char198 "
-,C 722,737,228 3 0307 Ccedilla
-char199 "
-`E 667,936 2 0310 Egrave
-char200 "
-'E 667,936 2 0311 Eacute
-char201 "
-^E 667,936 2 0312 Ecircumflex
-char202 "
-:E 667,915 2 0313 Edieresis
-char203 "
-`I 278,936 2 0314 Igrave
-char204 "
-'I 278,936 2 0315 Iacute
-char205 "
-^I 278,936 2 0316 Icircumflex
-char206 "
-:I 278,915 2 0317 Idieresis
-char207 "
--D 722,718 2 0320 Eth
-char208 "
-~N 722,923 2 0321 Ntilde
-char209 "
-`O 778,936,19 2 0322 Ograve
-char210 "
-'O 778,936,19 2 0323 Oacute
-char211 "
-^O 778,936,19 2 0324 Ocircumflex
-char212 "
-~O 778,923,19 2 0325 Otilde
-char213 "
-:O 778,915,19 2 0326 Odieresis
-char214 "
-char215 584,505 0 0327 multiply
-/O 778,745,27 2 0330 Oslash
-char216 "
-`U 722,936,19 2 0331 Ugrave
-char217 "
-'U 722,936,19 2 0332 Uacute
-char218 "
-^U 722,936,19 2 0333 Ucircumflex
-char219 "
-:U 722,915,19 2 0334 Udieresis
-char220 "
-'Y 667,936 2 0335 Yacute
-char221 "
-TP 667,718 2 0336 Thorn
-char222 "
-ss 611,731,14 2 0337 germandbls
-char223 "
-`a 556,750,14 2 0340 agrave
-char224 "
-'a 556,750,14 2 0341 aacute
-char225 "
-^a 556,750,14 2 0342 acircumflex
-char226 "
-~a 556,737,14 2 0343 atilde
-char227 "
-:a 556,729,14 2 0344 adieresis
-char228 "
-oa 556,776,14 2 0345 aring
-char229 "
-ae 889,546,14 0 0346 ae
-char230 "
-,c 556,546,228 1 0347 ccedilla
-char231 "
-`e 556,750,14 2 0350 egrave
-char232 "
-'e 556,750,14 2 0351 eacute
-char233 "
-^e 556,750,14 2 0352 ecircumflex
-char234 "
-:e 556,729,14 2 0353 edieresis
-char235 "
-`i 278,750 2 0354 igrave
-char236 "
-'i 278,750 2 0355 iacute
-char237 "
-^i 278,750 2 0356 icircumflex
-char238 "
-:i 278,729 2 0357 idieresis
-char239 "
-Sd 611,737,14 2 0360 eth
-char240 "
-~n 611,737 2 0361 ntilde
-char241 "
-`o 611,750,14 2 0362 ograve
-char242 "
-'o 611,750,14 2 0363 oacute
-char243 "
-^o 611,750,14 2 0364 ocircumflex
-char244 "
-~o 611,737,14 2 0365 otilde
-char245 "
-:o 611,729,14 2 0366 odieresis
-char246 "
-char247 584,548,42 0 0367 divide
-/o 611,560,29 0 0370 oslash
-char248 "
-`u 611,750,14 2 0371 ugrave
-char249 "
-'u 611,750,14 2 0372 uacute
-char250 "
-^u 611,750,14 2 0373 ucircumflex
-char251 "
-:u 611,729,14 2 0374 udieresis
-char252 "
-'y 556,750,214 3 0375 yacute
-char253 "
-Tp 611,718,208 3 0376 thorn
-char254 "
-:y 556,729,214 3 0377 ydieresis
-char255 "
diff --git a/devps/HBI b/devps/HBI
deleted file mode 100644
index 595e58f90..000000000
--- a/devps/HBI
+++ /dev/null
@@ -1,547 +0,0 @@
-name HBI
-internalname Helvetica-BoldOblique
-slant 12
-spacewidth 278
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -30
-A w -30
-A v -40
-A u -30
-A Y -110
-A W -60
-A V -80
-A U -50
-A T -90
-A Q -40
-A O -40
-A G -50
-A C -40
-B U -10
-B A -30
-D . -30
-D , -30
-D Y -70
-D W -40
-D V -40
-D A -40
-F . -100
-F , -100
-F a -20
-F A -80
-J u -20
-J . -20
-J , -20
-J A -20
-K y -40
-K u -30
-K o -35
-K e -15
-K O -30
-L y -30
-L ' -140
-L rq -140
-L Y -120
-L W -80
-L V -110
-L T -90
-O . -40
-O , -40
-O Y -70
-O X -50
-O W -50
-O V -50
-O T -40
-O A -50
-P . -120
-P o -40
-P e -30
-P , -120
-P a -30
-P A -100
-Q . 20
-Q , 20
-Q U -10
-R Y -50
-R W -40
-R V -50
-R U -20
-R T -20
-R O -20
-T y -60
-T w -60
-T u -90
-T ; -40
-T r -80
-T . -80
-T o -80
-T - -120
-T hy -120
-T char173 -120
-T e -60
-T , -80
-T : -40
-T a -80
-T O -40
-T A -90
-U . -30
-U , -30
-U A -50
-V u -60
-V ; -40
-V . -120
-V o -90
-V - -80
-V hy -80
-V char173 -80
-V e -50
-V , -120
-V : -40
-V a -60
-V O -50
-V G -50
-V A -80
-W y -20
-W u -45
-W ; -10
-W . -80
-W o -60
-W - -40
-W hy -40
-W char173 -40
-W e -35
-W , -80
-W : -10
-W a -40
-W O -20
-W A -60
-Y u -100
-Y ; -50
-Y . -100
-Y o -100
-Y e -80
-Y , -100
-Y : -50
-Y a -90
-Y O -70
-Y A -110
-a y -20
-a w -15
-a v -15
-a g -10
-b y -20
-b v -20
-b u -20
-b l -10
-c y -10
-c l -20
-c k -20
-c h -10
-, ' -120
-, rq -120
-d y -15
-d w -15
-d v -15
-d d -10
-e y -15
-e x -15
-e w -15
-e v -15
-e . 20
-e , 10
-f ' 30
-f rq 30
-f . -10
-f o -20
-f e -10
-f , -10
-g g -10
-g e 10
-h y -20
-k o -15
-l y -15
-l w -15
-m y -30
-m u -20
-n y -20
-n v -40
-n u -10
-o y -20
-o x -30
-o w -15
-o v -20
-p y -15
-. ' -120
-. rq -120
-` ` -46
-` oq -46
-oq ` -46
-oq oq -46
-' v -20
-' s -60
-' r -40
-' ' -46
-' l -20
-' d -80
-r y 10
-r v 10
-r t 20
-r s -15
-r q -20
-r . -60
-r o -20
-r - -20
-r hy -20
-r char173 -20
-r g -15
-r d -20
-r , -60
-r c -20
-s w -15
-v . -80
-v o -30
-v , -80
-v a -20
-w . -40
-w o -20
-w , -40
-x e -10
-y . -80
-y o -25
-y e -10
-y , -80
-y a -30
-z e 10
-charset
-ha 584,698,0,57,-81,57 2 0000 asciicircum
-ti 584,343,0,43,-65,43 0 0001 asciitilde
-vS 667,936,19,101,-31,90 2 0002 Scaron
-vZ 611,936,0,176,25,90 2 0003 Zcaron
-vs 556,750,14,108,-13,90 2 0004 scaron
-vz 500,750,0,136,30,90 2 0005 zcaron
-:Y 667,915,0,189,-118,90 2 0006 Ydieresis
-tm 1000,718,0,159,-129,90 2 0007 trademark
-aq 238,718,0,133,-115,90 2 0010 quotesingle
-space 278 0 0040
-! 333,718,0,114,-44,90 2 0041 exclam
-" 474,718,0,105,-143,90 2 0042 quotedbl
-# 556,698,0,138,-10,90 2 0043 numbersign
-sh "
-$ 556,775,115,116,-17,90 2 0044 dollar
-Do "
-% 889,710,19,62,-86,62 2 0045 percent
-& 722,718,19,60,-39,60 2 0046 ampersand
-' 278,718,0,134,-117,90 2 0047 quoteright
-( 333,734,208,187,-26,90 3 0050 parenleft
-) 333,734,208,86,75,86 3 0051 parenright
-* 389,718,0,142,-96,90 2 0052 asterisk
-+ 584,506,0,76,-32,76 0 0053 plus
-, 278,146,168,17,22,17 0 0054 comma
-- 333,345,0,96,-23,90 0 0055 hyphen
-hy "
-char173 "
-. 278,146,0,17,-14,17 0 0056 period
-/ 278,737,19,240,87,90 2 0057 slash
-sl "
-0 556,710,19,111,-36,90 2 0060 zero
-1 556,710,0,23,-123,23 2 0061 one
-2 556,710,0,113,24,90 2 0062 two
-3 556,710,19,102,-15,90 2 0063 three
-4 556,710,0,92,-10,90 2 0064 four
-5 556,698,19,130,-14,90 2 0065 five
-6 556,710,19,113,-35,90 2 0066 six
-7 556,698,0,170,-75,90 2 0067 seven
-8 556,710,19,110,-19,90 2 0070 eight
-9 556,710,19,109,-28,90 2 0071 nine
-: 333,512,0,68,-42,68 0 0072 colon
-; 333,512,168,68,-6,68 0 0073 semicolon
-< 584,514,8,121,-32,90 0 0074 less
-= 584,419,0,99,-8,90 0 0075 equal
-> 584,514,8,75,14,75 0 0076 greater
-? 611,727,0,110,-115,90 2 0077 question
-@ 975,737,19,29,-136,29 2 0100 at
-at "
-A 722,718,0,30,30,30 2 0101 A
-B 722,718,0,92,-26,90 2 0102 B
-C 722,737,19,117,-57,90 2 0103 C
-D 722,718,0,105,-26,90 2 0104 D
-E 667,718,0,140,-26,90 2 0105 E
-F 611,718,0,179,-26,90 2 0106 F
-G 778,737,19,89,-58,89 2 0107 G
-H 722,718,0,132,-21,90 2 0110 H
-I 278,718,0,139,-14,90 2 0111 I
-J 556,718,18,131,-10,90 2 0112 J
-K 722,718,0,186,-37,90 2 0113 K
-L 611,718,0,50,-26,50 2 0114 L
-M 833,718,0,135,-19,90 2 0115 M
-N 722,718,0,135,-19,90 2 0116 N
-O 778,737,19,95,-57,90 2 0117 O
-P 667,718,0,121,-26,90 2 0120 P
-Q 778,737,52,95,-57,90 2 0121 Q
-R 722,718,0,106,-26,90 2 0122 R
-S 667,737,19,101,-31,90 2 0123 S
-T 611,718,0,190,-90,90 2 0124 T
-U 722,718,19,132,-66,90 2 0125 U
-V 667,718,0,184,-122,90 2 0126 V
-W 944,718,0,188,-119,90 2 0127 W
-X 667,718,0,174,36,90 2 0130 X
-Y 667,718,0,189,-118,90 2 0131 Y
-Z 611,718,0,176,25,90 2 0132 Z
-[ 333,722,196,179,29,90 2 0133 bracketleft
-lB "
-\ 278,737,19,79,-74,79 2 0134 backslash
-rs "
-] 333,722,196,140,68,90 2 0135 bracketright
-rB "
-a^ 333,750,0,188,-68,90 2 0136 circumflex
-^ "
-_ 556,0,125,34,77,34 0 0137 underscore
-` 278,727,0,133,-115,90 2 0140 quoteleft
-oq "
-a 556,546,14,77,-5,77 0 0141 a
-b 611,718,14,84,-11,84 2 0142 b
-c 556,546,14,93,-29,90 0 0143 c
-d 611,718,14,143,-32,90 2 0144 d
-e 556,546,14,87,-20,87 0 0145 e
-f 333,727,0,186,-37,90 2 0146 f
-g 611,546,217,105,12,90 1 0147 g
-h 611,718,0,68,-15,68 2 0150 h
-i 278,725,0,135,-19,90 2 0151 i
-j 278,725,214,135,92,90 3 0152 j
-k 556,718,0,164,-19,90 2 0153 k
-l 278,718,0,134,-19,90 2 0154 l
-m 889,546,0,70,-14,70 0 0155 m
-n 611,546,0,68,-15,68 0 0156 n
-o 611,546,14,82,-32,82 0 0157 o
-p 611,546,207,84,32,84 1 0160 p
-q 611,546,207,104,-30,90 1 0161 q
-r 389,546,0,150,-14,90 0 0162 r
-s 556,546,14,78,-13,78 0 0163 s
-t 333,676,6,139,-50,90 2 0164 t
-u 611,532,14,97,-48,90 0 0165 u
-v 556,532,0,150,-76,90 0 0166 v
-w 778,532,0,154,-73,90 0 0167 w
-x 556,532,0,142,35,90 0 0170 x
-y 556,532,214,146,8,90 1 0171 y
-z 500,532,0,133,30,90 0 0172 z
-lC 389,722,196,179,-44,90 2 0173 braceleft
-{ "
-ba 280,737,19,123,-30,90 2 0174 bar
-| "
-rC 389,722,196,68,68,68 2 0175 braceright
-} "
-a~ 333,737,0,224,-63,90 2 0176 tilde
-~ "
-bq 278,127,146,8,9,8 0 0200 quotesinglbase
-Fo 556,484,0,65,-85,65 0 0201 guillemotleft
-char171 "
-Fc 556,484,0,34,-54,34 0 0202 guillemotright
-char187 "
-bu 350,524,0,120,-33,90 0 0203 bullet
-Fn 556,737,210,163,100,90 3 0204 florin
-f/ 167,710,19,370,224,90 2 0205 fraction
-%0 1000,710,19,88,-26,88 2 0206 perthousand
-dg 556,718,171,120,-68,90 2 0207 dagger
-dd 556,718,171,122,4,90 2 0210 daggerdbl
-en 556,333,0,121,2,90 0 0211 endash
-em 1000,333,0,121,2,90 0 0212 emdash
-fi 611,727,0,135,-37,90 2 0214 fi
-fl 611,727,0,134,-37,90 2 0215 fl
-.i 278,532,0,94,-19,90 0 0220 dotlessi
-ga 333,750,0,70,-86,70 2 0222 grave
-a" 333,750,0,362,-87,90 2 0223 hungarumlaut
-a. 333,729,0,102,-185,90 2 0224 dotaccent
-ab 333,750,0,211,-106,90 2 0225 breve
-ah 333,750,0,219,-99,90 2 0226 caron
-ao 333,776,0,137,-150,90 2 0227 ring
-ho 333,0,228,0,9 1 0230 ogonek
-lq 500,727,0,138,-110,90 2 0231 quotedblleft
-rq 500,718,0,139,-112,90 2 0232 quotedblright
-oe 944,546,14,83,-32,83 0 0233 oe
-/l 278,718,0,179,10,90 2 0234 lslash
-Bq 500,127,146,13,14,13 0 0235 quotedblbase
-OE 1000,737,19,164,-49,90 2 0236 OE
-/L 611,718,0,50,16,50 2 0237 Lslash
-r! 333,532,186,70,0,70 0 0241 exclamdown
-char161 "
-ct 556,628,118,93,-29,90 0 0242 cent
-char162 "
-Po 556,718,16,129,0,90 2 0243 sterling
-char163 "
-Cs 556,636,0,174,23,90 0 0244 currency
-char164 "
-Ye 556,698,0,207,-10,90 2 0245 yen
-char165 "
-bb 280,737,19,123,-30,90 2 0246 brokenbar
-char166 "
-sc 556,727,184,92,-11,90 2 0247 section
-char167 "
-ad 333,729,0,199,-87,90 2 0250 dieresis
-char168 "
-co 737,737,19,148,-6,90 2 0251 copyright
-char169 "
-Of 370,737,0,145,-42,90 2 0252 ordfeminine
-char170 "
-fo 333,484,0,70,-80,70 0 0253 guilsinglleft
-no 584,419,0,99,-55,90 0 0254 logicalnot
-char172 "
-\- 584,309,0,76,-32,76 0 0255 minus
-rg 737,737,19,147,-5,90 2 0256 registered
-char174 "
-a- 333,678,0,200,-72,90 2 0257 macron
-char175 "
-de 400,712,0,117,-125,90 2 0260 degree
-char176 "
-char177 584,506,0,91,10,90 0 0261 plusminus
-S2 333,710,0,166,-19,90 2 0262 twosuperior
-char178 "
-S3 333,710,0,158,-41,90 2 0263 threesuperior
-char179 "
-aa 333,750,0,232,-186,90 2 0264 acute
-char180 "
-char181 611,532,207,97,28,90 1 0265 mu
-ps 556,700,191,182,-48,90 2 0266 paragraph
-char182 "
-char183 278,334,0,48,-60,48 0 0267 periodcentered
-ac 333,0,228,0,87 1 0270 cedilla
-char184 "
-S1 333,710,0,105,-98,90 2 0271 onesuperior
-char185 "
-Om 365,737,0,170,-42,90 2 0272 ordmasculine
-char186 "
-fc 333,484,0,39,-49,39 0 0273 guilsinglright
-14 834,710,19,22,-82,22 2 0274 onequarter
-char188 "
-12 834,710,19,74,-82,74 2 0275 onehalf
-char189 "
-34 834,710,19,55,-49,55 2 0276 threequarters
-char190 "
-r? 611,532,195,0,-3 0 0277 questiondown
-char191 "
-`A 722,936,0,30,30,30 2 0300 Agrave
-char192 "
-'A 722,936,0,78,30,78 2 0301 Aacute
-char193 "
-^A 722,936,0,34,30,34 2 0302 Acircumflex
-char194 "
-~A 722,923,0,69,30,69 2 0303 Atilde
-char195 "
-:A 722,915,0,44,30,44 2 0304 Adieresis
-char196 "
-oA 722,962,0,30,30,30 2 0305 Aring
-char197 "
-AE 1000,718,0,150,45,90 2 0306 AE
-char198 "
-,C 722,737,228,117,-57,90 3 0307 Ccedilla
-char199 "
-`E 667,936,0,140,-26,90 2 0310 Egrave
-char200 "
-'E 667,936,0,140,-26,90 2 0311 Eacute
-char201 "
-^E 667,936,0,140,-26,90 2 0312 Ecircumflex
-char202 "
-:E 667,915,0,140,-26,90 2 0313 Edieresis
-char203 "
-`I 278,936,0,139,-14,90 2 0314 Igrave
-char204 "
-'I 278,936,0,300,-14,90 2 0315 Iacute
-char205 "
-^I 278,936,0,256,-14,90 2 0316 Icircumflex
-char206 "
-:I 278,915,0,266,-14,90 2 0317 Idieresis
-char207 "
--D 722,718,0,105,-12,90 2 0320 Eth
-char208 "
-~N 722,923,0,135,-19,90 2 0321 Ntilde
-char209 "
-`O 778,936,19,95,-57,90 2 0322 Ograve
-char210 "
-'O 778,936,19,95,-57,90 2 0323 Oacute
-char211 "
-^O 778,936,19,95,-57,90 2 0324 Ocircumflex
-char212 "
-~O 778,923,19,95,-57,90 2 0325 Otilde
-char213 "
-:O 778,915,19,95,-57,90 2 0326 Odieresis
-char214 "
-char215 584,505,0,101,-7,90 0 0327 multiply
-/O 778,745,27,166,15,90 2 0330 Oslash
-char216 "
-`U 722,936,19,132,-66,90 2 0331 Ugrave
-char217 "
-'U 722,936,19,132,-66,90 2 0332 Uacute
-char218 "
-^U 722,936,19,132,-66,90 2 0333 Ucircumflex
-char219 "
-:U 722,915,19,132,-66,90 2 0334 Udieresis
-char220 "
-'Y 667,936,0,189,-118,90 2 0335 Yacute
-char221 "
-TP 667,718,0,99,-26,90 2 0336 Thorn
-char222 "
-ss 611,731,14,96,-19,90 2 0337 germandbls
-char223 "
-`a 556,750,14,77,-5,77 2 0340 agrave
-char224 "
-'a 556,750,14,121,-5,90 2 0341 aacute
-char225 "
-^a 556,750,14,77,-5,77 2 0342 acircumflex
-char226 "
-~a 556,737,14,113,-5,90 2 0343 atilde
-char227 "
-:a 556,729,14,88,-5,88 2 0344 adieresis
-char228 "
-oa 556,776,14,77,-5,77 2 0345 aring
-char229 "
-ae 889,546,14,84,-6,84 0 0346 ae
-char230 "
-,c 556,546,228,93,-29,90 1 0347 ccedilla
-char231 "
-`e 556,750,14,87,-20,87 2 0350 egrave
-char232 "
-'e 556,750,14,121,-20,90 2 0351 eacute
-char233 "
-^e 556,750,14,87,-20,87 2 0352 ecircumflex
-char234 "
-:e 556,729,14,88,-20,88 2 0353 edieresis
-char235 "
-`i 278,750,0,98,-19,90 2 0354 igrave
-char236 "
-'i 278,750,0,260,-19,90 2 0355 iacute
-char237 "
-^i 278,750,0,216,-19,90 2 0356 icircumflex
-char238 "
-:i 278,729,0,227,-19,90 2 0357 idieresis
-char239 "
-Sd 611,737,14,109,-32,90 2 0360 eth
-char240 "
-~n 611,737,0,85,-15,85 2 0361 ntilde
-char241 "
-`o 611,750,14,82,-32,82 2 0362 ograve
-char242 "
-'o 611,750,14,93,-32,90 2 0363 oacute
-char243 "
-^o 611,750,14,82,-32,82 2 0364 ocircumflex
-char244 "
-~o 611,737,14,85,-32,85 2 0365 otilde
-char245 "
-:o 611,729,14,82,-32,82 2 0366 odieresis
-char246 "
-char247 584,548,42,76,-32,76 0 0367 divide
-/o 611,560,29,140,28,90 0 0370 oslash
-char248 "
-`u 611,750,14,97,-48,90 2 0371 ugrave
-char249 "
-'u 611,750,14,97,-48,90 2 0372 uacute
-char250 "
-^u 611,750,14,97,-48,90 2 0373 ucircumflex
-char251 "
-:u 611,729,14,97,-48,90 2 0374 udieresis
-char252 "
-'y 556,750,214,146,8,90 3 0375 yacute
-char253 "
-Tp 611,718,208,84,32,84 3 0376 thorn
-char254 "
-:y 556,729,214,146,8,90 3 0377 ydieresis
-char255 "
diff --git a/devps/HI b/devps/HI
deleted file mode 100644
index bfdcb3280..000000000
--- a/devps/HI
+++ /dev/null
@@ -1,617 +0,0 @@
-name HI
-internalname Helvetica-Oblique
-slant 12
-spacewidth 278
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -40
-A w -40
-A v -40
-A u -30
-A Y -100
-A W -50
-A V -70
-A U -50
-A T -120
-A Q -30
-A O -30
-A G -30
-A C -30
-B . -20
-B , -20
-B U -10
-C . -30
-C , -30
-D . -70
-D , -70
-D Y -90
-D W -40
-D V -70
-D A -40
-F r -45
-F . -150
-F o -30
-F e -30
-F , -150
-F a -50
-F A -80
-J u -20
-J . -30
-J , -30
-J a -20
-J A -20
-K y -50
-K u -30
-K o -40
-K e -40
-K O -50
-L y -30
-L ' -160
-L rq -140
-L Y -140
-L W -70
-L V -110
-L T -110
-O . -40
-O , -40
-O Y -70
-O X -60
-O W -30
-O V -50
-O T -40
-O A -20
-P . -180
-P o -50
-P e -50
-P , -180
-P a -40
-P A -120
-Q U -10
-R Y -50
-R W -30
-R V -50
-R U -40
-R T -30
-R O -20
-S . -20
-S , -20
-T y -120
-T w -120
-T u -120
-T ; -20
-T r -120
-T . -120
-T o -120
-T - -140
-T hy -140
-T char173 -140
-T e -120
-T , -120
-T : -20
-T a -120
-T O -40
-T A -120
-U . -40
-U , -40
-U A -40
-V u -70
-V ; -40
-V . -125
-V o -80
-V - -80
-V hy -80
-V char173 -80
-V e -80
-V , -125
-V : -40
-V a -70
-V O -40
-V G -40
-V A -80
-W y -20
-W u -30
-W . -80
-W o -30
-W - -40
-W hy -40
-W char173 -40
-W e -30
-W , -80
-W a -40
-W O -20
-W A -50
-Y u -110
-Y ; -60
-Y . -140
-Y o -140
-Y i -20
-Y - -140
-Y hy -140
-Y char173 -140
-Y e -140
-Y , -140
-Y : -60
-Y a -140
-Y O -85
-Y A -110
-a y -30
-a w -20
-a v -20
-b y -20
-b v -20
-b u -20
-b . -40
-b l -20
-b , -40
-b b -10
-c k -20
-c , -15
-, ' -100
-, rq -100
-e y -20
-e x -30
-e w -20
-e v -30
-e . -15
-e , -15
-f ' 50
-f rq 60
-f . -30
-f o -30
-f e -30
-f .i -28
-f , -30
-f a -30
-g r -10
-h y -30
-k o -20
-k e -20
-m y -15
-m u -10
-n y -15
-n v -20
-n u -10
-o y -30
-o x -30
-o w -15
-o v -15
-o . -40
-o , -40
-/o z -55
-char248 z -55
-/o y -70
-char248 y -70
-/o x -85
-char248 x -85
-/o w -70
-char248 w -70
-/o v -70
-char248 v -70
-/o u -55
-char248 u -55
-/o t -55
-char248 t -55
-/o s -55
-char248 s -55
-/o r -55
-char248 r -55
-/o q -55
-char248 q -55
-/o . -95
-char248 . -95
-/o p -55
-char248 p -55
-/o o -55
-char248 o -55
-/o n -55
-char248 n -55
-/o m -55
-char248 m -55
-/o l -55
-char248 l -55
-/o k -55
-char248 k -55
-/o j -55
-char248 j -55
-/o i -55
-char248 i -55
-/o h -55
-char248 h -55
-/o g -55
-char248 g -55
-/o f -55
-char248 f -55
-/o e -55
-char248 e -55
-/o d -55
-char248 d -55
-/o , -95
-char248 , -95
-/o c -55
-char248 c -55
-/o b -55
-char248 b -55
-/o a -55
-char248 a -55
-p y -30
-p . -35
-p , -35
-. ' -100
-. rq -100
-` ` -57
-` oq -57
-oq ` -57
-oq oq -57
-' s -50
-' r -50
-' ' -57
-' d -50
-r y 30
-r v 30
-r u 15
-r t 40
-r ; 30
-r . -50
-r p 30
-r n 25
-r m 25
-r l 15
-r k 15
-r i 15
-r , -50
-r : 30
-r a -10
-s w -30
-s . -15
-s , -15
-v . -80
-v o -25
-v e -25
-v , -80
-v a -25
-w . -60
-w o -10
-w e -10
-w , -60
-w a -15
-x e -30
-y . -100
-y o -20
-y e -20
-y , -100
-y a -20
-z o -15
-z e -15
-charset
-ha 469,688,0,120,8,89 2 0000 asciicircum
-ti 584,326,0,46,-61,46 0 0001 asciitilde
-vS 667,929,19,96,-40,89 2 0002 Scaron
-vZ 611,929,0,180,27,89 2 0003 Zcaron
-vs 500,734,15,102,-13,89 2 0004 scaron
-vz 500,734,0,121,19,89 2 0005 zcaron
-:Y 667,901,0,189,-117,89 2 0006 Ydieresis
-tm 1000,718,0,106,-136,89 2 0007 trademark
-aq 191,718,0,144,-107,89 2 0010 quotesingle
-space 278 0 0040
-! 278,718,0,112,-40,89 2 0041 exclam
-" 355,718,0,133,-118,89 2 0042 quotedbl
-# 556,688,0,125,-23,89 2 0043 numbersign
-sh "
-$ 556,775,115,111,-19,89 2 0044 dollar
-Do "
-% 889,703,19,50,-97,50 2 0045 percent
-& 667,718,15,30,-27,30 2 0046 ampersand
-' 222,718,0,138,-101,89 2 0047 quoteright
-( 333,733,207,171,-58,89 3 0050 parenleft
-) 333,733,207,54,59,54 3 0051 parenright
-* 389,718,0,136,-115,89 2 0052 asterisk
-+ 584,505,0,72,-35,72 0 0053 plus
-, 278,106,147,0,-6 0 0054 comma
-- 333,322,0,74,-43,74 0 0055 hyphen
-hy "
-char173 "
-. 278,106,0,0,-37 0 0056 period
-/ 278,737,19,224,71,89 2 0057 slash
-sl "
-0 556,703,19,102,-43,89 2 0060 zero
-1 556,703,0,2,-157,2 2 0061 one
-2 556,703,0,111,24,89 2 0062 two
-3 556,703,19,104,-25,89 2 0063 three
-4 556,703,0,70,-11,70 2 0064 four
-5 556,688,19,115,-18,89 2 0065 five
-6 556,703,19,109,-41,89 2 0066 six
-7 556,688,0,163,-87,89 2 0067 seven
-8 556,703,19,101,-24,89 2 0070 eight
-9 556,703,19,103,-32,89 2 0071 nine
-: 278,516,0,73,-37,73 0 0072 colon
-; 278,516,147,73,-6,73 0 0073 semicolon
-< 584,495,0,107,-44,89 0 0074 less
-= 584,390,0,94,-13,89 0 0075 equal
-> 584,495,0,63,0,63 0 0076 greater
-? 556,727,0,104,-111,89 2 0077 question
-@ 1015,737,19,0,-165 2 0100 at
-at "
-A 667,718,0,37,36,37 2 0101 A
-B 667,718,0,95,-24,89 2 0102 B
-C 722,737,19,110,-58,89 2 0103 C
-D 722,718,0,92,-31,89 2 0104 D
-E 667,718,0,145,-36,89 2 0105 E
-F 611,718,0,175,-36,89 2 0106 F
-G 778,737,19,71,-61,71 2 0107 G
-H 722,718,0,127,-27,89 2 0110 H
-I 278,718,0,113,-41,89 2 0111 I
-J 500,718,19,131,3,89 2 0112 J
-K 667,718,0,191,-26,89 2 0113 K
-L 556,718,0,49,-26,49 2 0114 L
-M 833,718,0,131,-23,89 2 0115 M
-N 722,718,0,127,-26,89 2 0116 N
-O 778,737,19,98,-55,89 2 0117 O
-P 667,718,0,120,-36,89 2 0120 P
-Q 778,737,56,98,-55,89 2 0121 Q
-R 722,718,0,101,-38,89 2 0122 R
-S 667,737,19,96,-40,89 2 0123 S
-T 611,718,0,189,-98,89 2 0124 T
-U 722,718,19,125,-73,89 2 0125 U
-V 667,718,0,183,-123,89 2 0126 V
-W 944,718,0,187,-119,89 2 0127 W
-X 667,718,0,173,31,89 2 0130 X
-Y 667,718,0,189,-117,89 2 0131 Y
-Z 611,718,0,180,27,89 2 0132 Z
-[ 278,722,196,175,29,89 2 0133 bracketleft
-lB "
-\ 278,737,19,63,-90,63 2 0134 backslash
-rs "
-] 278,722,196,140,64,89 2 0135 bracketright
-rB "
-a^ 333,734,0,155,-97,89 2 0136 circumflex
-^ "
-_ 556,0,125,34,77,34 0 0137 underscore
-` 222,725,0,151,-115,89 2 0140 quoteleft
-oq "
-a 556,538,15,53,-11,53 0 0141 a
-b 556,718,15,78,-8,78 2 0142 b
-c 500,538,15,103,-24,89 0 0143 c
-d 556,718,15,146,-34,89 2 0144 d
-e 556,538,15,72,-34,72 0 0145 e
-f 278,728,0,188,-36,89 2 0146 f
-g 556,538,220,104,8,89 1 0147 g
-h 556,718,0,67,-15,67 2 0150 h
-i 222,718,0,136,-17,89 2 0151 i
-j 222,718,210,136,110,89 3 0152 j
-k 500,718,0,150,-17,89 2 0153 k
-l 222,718,0,136,-17,89 2 0154 l
-m 833,538,0,69,-15,69 0 0155 m
-n 556,538,0,67,-15,67 0 0156 n
-o 556,538,14,79,-33,79 0 0157 o
-p 556,538,207,78,36,78 1 0160 p
-q 556,538,207,99,-34,89 1 0161 q
-r 333,538,0,163,-27,89 0 0162 r
-s 500,538,15,79,-13,79 0 0163 s
-t 278,669,7,140,-52,89 2 0164 t
-u 556,523,15,94,-44,89 0 0165 u
-v 500,523,0,153,-69,89 0 0166 v
-w 722,523,0,148,-75,89 0 0167 w
-x 500,523,0,144,39,89 0 0170 x
-y 500,523,214,150,35,89 1 0171 y
-z 500,523,0,121,19,89 0 0172 z
-lC 334,722,196,161,-42,89 2 0173 braceleft
-{ "
-ba 260,737,19,114,-40,89 2 0174 bar
-| "
-rC 334,722,196,70,50,70 2 0175 braceright
-} "
-a~ 333,722,0,207,-75,89 2 0176 tilde
-~ "
-bq 222,106,149,8,29,8 0 0200 quotesinglbase
-Fo 556,446,0,48,-96,48 0 0201 guillemotleft
-char171 "
-Fc 556,446,0,22,-70,22 0 0202 guillemotright
-char187 "
-bu 350,517,0,113,-41,89 0 0203 bullet
-Fn 556,737,207,148,102,89 3 0204 florin
-f/ 167,703,19,365,220,89 2 0205 fraction
-%0 1000,703,19,79,-38,79 2 0206 perthousand
-dg 556,718,159,116,-85,89 2 0207 dagger
-dd 556,718,159,117,-2,89 2 0210 daggerdbl
-en 556,313,0,117,-1,89 0 0211 endash
-em 1000,313,0,117,-1,89 0 0212 emdash
-fi 500,728,0,137,-36,89 2 0214 fi
-fl 500,728,0,135,-36,89 2 0215 fl
-.i 278,523,0,66,-45,66 0 0220 dotlessi
-ga 333,734,0,54,-120,54 2 0222 grave
-a" 333,734,0,282,-107,89 2 0223 hungarumlaut
-a. 333,706,0,79,-199,79 2 0224 dotaccent
-ab 333,731,0,193,-117,89 2 0225 breve
-ah 333,734,0,185,-127,89 2 0226 caron
-ao 333,756,0,119,-164,89 2 0227 ring
-ho 333,0,225,0,7 1 0230 ogonek
-lq 333,725,0,178,-88,89 2 0231 quotedblleft
-rq 333,718,0,165,-74,89 2 0232 quotedblright
-oe 944,538,15,70,-33,70 0 0233 oe
-/l 222,718,0,175,9,89 2 0234 lslash
-Bq 333,106,149,35,56,35 0 0235 quotedblbase
-OE 1000,737,19,166,-48,89 2 0236 OE
-/L 556,718,0,49,9,49 2 0237 Lslash
-r! 333,523,195,43,-27,43 0 0241 exclamdown
-char161 "
-ct 556,623,115,78,-45,78 0 0242 cent
-char162 "
-Po 556,718,16,128,1,89 2 0243 sterling
-char163 "
-Cs 556,603,0,140,-10,89 0 0244 currency
-char164 "
-Ye 556,688,0,193,-31,89 2 0245 yen
-char165 "
-bb 260,737,19,114,-40,89 2 0246 brokenbar
-char166 "
-sc 556,737,191,78,-26,78 2 0247 section
-char167 "
-ad 333,706,0,160,-118,89 2 0250 dieresis
-char168 "
-co 737,737,19,150,-4,89 2 0251 copyright
-char169 "
-Of 370,737,0,129,-50,89 2 0252 ordfeminine
-char170 "
-fo 333,446,0,57,-87,57 0 0253 guilsinglleft
-no 584,390,0,94,-56,89 0 0254 logicalnot
-char172 "
-\- 584,289,0,72,-35,72 0 0255 minus
-rg 737,737,19,150,-4,89 2 0256 registered
-char174 "
-a- 333,684,0,185,-93,89 2 0257 macron
-char175 "
-de 400,703,0,118,-119,89 2 0260 degree
-char176 "
-char177 584,506,0,84,11,84 0 0261 plusminus
-S2 333,703,0,166,-14,89 2 0262 twosuperior
-char178 "
-S3 333,703,0,153,-40,89 2 0263 threesuperior
-char179 "
-aa 333,734,0,192,-198,89 2 0264 acute
-char180 "
-char181 556,523,207,94,26,89 1 0265 mu
-ps 537,718,173,163,-76,89 2 0266 paragraph
-char182 "
-char183 278,315,0,29,-79,29 0 0267 periodcentered
-ac 333,0,225,0,48 1 0270 cedilla
-char184 "
-S1 333,703,0,88,-116,88 2 0271 onesuperior
-char185 "
-Om 365,737,0,153,-50,89 2 0272 ordmasculine
-char186 "
-fc 333,446,0,31,-61,31 0 0273 guilsinglright
-14 834,703,19,18,-100,18 2 0274 onequarter
-char188 "
-12 834,703,19,55,-64,55 2 0275 onehalf
-char189 "
-34 834,703,19,77,-80,77 2 0276 threequarters
-char190 "
-r? 611,525,201,0,-35 0 0277 questiondown
-char191 "
-`A 667,929,0,37,36,37 2 0300 Agrave
-char192 "
-'A 667,929,0,66,36,66 2 0301 Aacute
-char193 "
-^A 667,929,0,37,36,37 2 0302 Acircumflex
-char194 "
-~A 667,917,0,82,36,82 2 0303 Atilde
-char195 "
-:A 667,901,0,37,36,37 2 0304 Adieresis
-char196 "
-oA 667,931,0,37,36,37 2 0305 Aring
-char197 "
-AE 1000,718,0,147,42,89 2 0306 AE
-char198 "
-,C 722,737,225,110,-58,89 3 0307 Ccedilla
-char199 "
-`E 667,929,0,145,-36,89 2 0310 Egrave
-char200 "
-'E 667,929,0,145,-36,89 2 0311 Eacute
-char201 "
-^E 667,929,0,145,-36,89 2 0312 Ecircumflex
-char202 "
-:E 667,901,0,145,-36,89 2 0313 Edieresis
-char203 "
-`I 278,929,0,123,-41,89 2 0314 Igrave
-char204 "
-'I 278,929,0,261,-41,89 2 0315 Iacute
-char205 "
-^I 278,929,0,224,-41,89 2 0316 Icircumflex
-char206 "
-:I 278,901,0,230,-41,89 2 0317 Idieresis
-char207 "
--D 722,718,0,92,-19,89 2 0320 Eth
-char208 "
-~N 722,917,0,127,-26,89 2 0321 Ntilde
-char209 "
-`O 778,929,19,98,-55,89 2 0322 Ograve
-char210 "
-'O 778,929,19,98,-55,89 2 0323 Oacute
-char211 "
-^O 778,929,19,98,-55,89 2 0324 Ocircumflex
-char212 "
-~O 778,917,19,98,-55,89 2 0325 Otilde
-char213 "
-:O 778,901,19,98,-55,89 2 0326 Odieresis
-char214 "
-char215 584,506,0,108,0,89 0 0327 multiply
-/O 778,737,19,162,7,89 2 0330 Oslash
-char216 "
-`U 722,929,19,125,-73,89 2 0331 Ugrave
-char217 "
-'U 722,929,19,125,-73,89 2 0332 Uacute
-char218 "
-^U 722,929,19,125,-73,89 2 0333 Ucircumflex
-char219 "
-:U 722,901,19,125,-73,89 2 0334 Udieresis
-char220 "
-'Y 667,929,0,189,-117,89 2 0335 Yacute
-char221 "
-TP 667,718,0,95,-36,89 2 0336 Thorn
-char222 "
-ss 611,728,15,97,-17,89 2 0337 germandbls
-char223 "
-`a 556,734,15,53,-11,53 2 0340 agrave
-char224 "
-'a 556,734,15,81,-11,81 2 0341 aacute
-char225 "
-^a 556,734,15,53,-11,53 2 0342 acircumflex
-char226 "
-~a 556,722,15,86,-11,86 2 0343 atilde
-char227 "
-:a 556,706,15,53,-11,53 2 0344 adieresis
-char228 "
-oa 556,756,15,53,-11,53 2 0345 aring
-char229 "
-ae 889,538,15,70,-11,70 0 0346 ae
-char230 "
-,c 500,538,225,103,-24,89 1 0347 ccedilla
-char231 "
-`e 556,734,15,72,-34,72 2 0350 egrave
-char232 "
-'e 556,734,15,81,-34,81 2 0351 eacute
-char233 "
-^e 556,734,15,72,-34,72 2 0352 ecircumflex
-char234 "
-:e 556,706,15,72,-34,72 2 0353 edieresis
-char235 "
-`i 278,734,0,82,-45,82 2 0354 igrave
-char236 "
-'i 278,734,0,220,-45,89 2 0355 iacute
-char237 "
-^i 278,734,0,183,-45,89 2 0356 icircumflex
-char238 "
-:i 278,706,0,188,-45,89 2 0357 idieresis
-char239 "
-Sd 556,737,15,111,-31,89 2 0360 eth
-char240 "
-~n 556,722,0,86,-15,86 2 0361 ntilde
-char241 "
-`o 556,734,14,79,-33,79 2 0362 ograve
-char242 "
-'o 556,734,14,81,-33,81 2 0363 oacute
-char243 "
-^o 556,734,14,79,-33,79 2 0364 ocircumflex
-char244 "
-~o 556,722,14,96,-33,89 2 0365 otilde
-char245 "
-:o 556,706,14,79,-33,79 2 0366 odieresis
-char246 "
-char247 584,524,19,72,-35,72 0 0367 divide
-/o 611,545,22,86,21,86 0 0370 oslash
-char248 "
-`u 556,734,15,94,-44,89 2 0371 ugrave
-char249 "
-'u 556,734,15,94,-44,89 2 0372 uacute
-char250 "
-^u 556,734,15,94,-44,89 2 0373 ucircumflex
-char251 "
-:u 556,706,15,94,-44,89 2 0374 udieresis
-char252 "
-'y 500,734,214,150,35,89 3 0375 yacute
-char253 "
-Tp 556,718,207,78,36,78 3 0376 thorn
-char254 "
-:y 500,706,214,150,35,89 3 0377 ydieresis
-char255 "
diff --git a/devps/HNB b/devps/HNB
deleted file mode 100644
index 6e6467427..000000000
--- a/devps/HNB
+++ /dev/null
@@ -1,546 +0,0 @@
-name HNB
-internalname Helvetica-Narrow-Bold
-spacewidth 228
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -24
-A w -24
-A v -32
-A u -24
-A Y -89
-A W -48
-A V -65
-A U -40
-A T -73
-A Q -32
-A O -32
-A G -40
-A C -32
-B U -7
-B A -24
-D . -24
-D , -24
-D Y -56
-D W -32
-D V -32
-D A -32
-F . -81
-F , -81
-F a -15
-F A -65
-J u -15
-J . -15
-J , -15
-J A -15
-K y -32
-K u -24
-K o -28
-K e -11
-K O -24
-L y -24
-L ' -114
-L rq -114
-L Y -97
-L W -65
-L V -89
-L T -73
-O . -32
-O , -32
-O Y -56
-O X -40
-O W -40
-O V -40
-O T -32
-O A -40
-P . -97
-P o -32
-P e -24
-P , -97
-P a -24
-P A -81
-Q . 16
-Q , 16
-Q U -7
-R Y -40
-R W -32
-R V -40
-R U -15
-R T -15
-R O -15
-T y -48
-T w -48
-T u -73
-T ; -32
-T r -65
-T . -65
-T o -65
-T - -97
-T hy -97
-T char173 -97
-T e -48
-T , -65
-T : -32
-T a -65
-T O -32
-T A -73
-U . -24
-U , -24
-U A -40
-V u -48
-V ; -32
-V . -97
-V o -73
-V - -65
-V hy -65
-V char173 -65
-V e -40
-V , -97
-V : -32
-V a -48
-V O -40
-V G -40
-V A -65
-W y -15
-W u -36
-W ; -7
-W . -65
-W o -48
-W - -32
-W hy -32
-W char173 -32
-W e -28
-W , -65
-W : -7
-W a -32
-W O -15
-W A -48
-Y u -81
-Y ; -40
-Y . -81
-Y o -81
-Y e -65
-Y , -81
-Y : -40
-Y a -73
-Y O -56
-Y A -89
-a y -15
-a w -11
-a v -11
-a g -7
-b y -15
-b v -15
-b u -15
-b l -7
-c y -7
-c l -15
-c k -15
-c h -7
-, ' -97
-, rq -97
-d y -11
-d w -11
-d v -11
-d d -7
-e y -11
-e x -11
-e w -11
-e v -11
-e . 16
-e , 8
-f ' 25
-f rq 25
-f . -7
-f o -15
-f e -7
-f , -7
-g g -7
-g e 8
-h y -15
-k o -11
-l y -11
-l w -11
-m y -24
-m u -15
-n y -15
-n v -32
-n u -7
-o y -15
-o x -24
-o w -11
-o v -15
-p y -11
-. ' -97
-. rq -97
-` ` -37
-` oq -37
-oq ` -37
-oq oq -37
-' v -15
-' s -48
-' r -32
-' ' -37
-' l -15
-' d -65
-r y 8
-r v 8
-r t 16
-r s -11
-r q -15
-r . -48
-r o -15
-r - -15
-r hy -15
-r char173 -15
-r g -11
-r d -15
-r , -48
-r c -15
-s w -11
-v . -65
-v o -24
-v , -65
-v a -15
-w . -32
-w o -15
-w , -32
-x e -7
-y . -65
-y o -20
-y e -7
-y , -65
-y a -24
-z e 8
-charset
-ha 479,698 2 0000 asciicircum
-ti 479,343 0 0001 asciitilde
-vS 547,936,19 2 0002 Scaron
-vZ 501,936 2 0003 Zcaron
-vs 456,750,14 2 0004 scaron
-vz 410,750 2 0005 zcaron
-:Y 547,915 2 0006 Ydieresis
-tm 820,718 2 0007 trademark
-aq 195,718 2 0010 quotesingle
-space 228 0 0040
-! 273,718 2 0041 exclam
-" 389,718 2 0042 quotedbl
-# 456,698 2 0043 numbersign
-sh "
-$ 456,775,115 2 0044 dollar
-Do "
-% 729,710,19 2 0045 percent
-& 592,718,19 2 0046 ampersand
-' 228,718 2 0047 quoteright
-( 273,734,208 3 0050 parenleft
-) 273,734,208 3 0051 parenright
-* 319,718 2 0052 asterisk
-+ 479,506 0 0053 plus
-, 228,146,168 0 0054 comma
-- 273,345 0 0055 hyphen
-hy "
-char173 "
-. 228,146 0 0056 period
-/ 228,737,19 2 0057 slash
-sl "
-0 456,710,19 2 0060 zero
-1 456,710 2 0061 one
-2 456,710 2 0062 two
-3 456,710,19 2 0063 three
-4 456,710 2 0064 four
-5 456,698,19 2 0065 five
-6 456,710,19 2 0066 six
-7 456,698 2 0067 seven
-8 456,710,19 2 0070 eight
-9 456,710,19 2 0071 nine
-: 273,512 0 0072 colon
-; 273,512,168 0 0073 semicolon
-< 479,514,8 0 0074 less
-= 479,419 0 0075 equal
-> 479,514,8 0 0076 greater
-? 501,727 2 0077 question
-@ 800,737,19 2 0100 at
-at "
-A 592,718 2 0101 A
-B 592,718 2 0102 B
-C 592,737,19 2 0103 C
-D 592,718 2 0104 D
-E 547,718 2 0105 E
-F 501,718 2 0106 F
-G 638,737,19 2 0107 G
-H 592,718 2 0110 H
-I 228,718 2 0111 I
-J 456,718,18 2 0112 J
-K 592,718 2 0113 K
-L 501,718 2 0114 L
-M 683,718 2 0115 M
-N 592,718 2 0116 N
-O 638,737,19 2 0117 O
-P 547,718 2 0120 P
-Q 638,737,52 2 0121 Q
-R 592,718 2 0122 R
-S 547,737,19 2 0123 S
-T 501,718 2 0124 T
-U 592,718,19 2 0125 U
-V 547,718 2 0126 V
-W 774,718 2 0127 W
-X 547,718 2 0130 X
-Y 547,718 2 0131 Y
-Z 501,718 2 0132 Z
-[ 273,722,196 2 0133 bracketleft
-lB "
-\ 228,737,19 2 0134 backslash
-rs "
-] 273,722,196 2 0135 bracketright
-rB "
-a^ 273,750 2 0136 circumflex
-^ "
-_ 456,0,125 0 0137 underscore
-` 228,727 2 0140 quoteleft
-oq "
-a 456,546,14 0 0141 a
-b 501,718,14 2 0142 b
-c 456,546,14 0 0143 c
-d 501,718,14 2 0144 d
-e 456,546,14 0 0145 e
-f 273,727 2 0146 f
-g 501,546,217 1 0147 g
-h 501,718 2 0150 h
-i 228,725 2 0151 i
-j 228,725,214 3 0152 j
-k 456,718 2 0153 k
-l 228,718 2 0154 l
-m 729,546 0 0155 m
-n 501,546 0 0156 n
-o 501,546,14 0 0157 o
-p 501,546,207 1 0160 p
-q 501,546,207 1 0161 q
-r 319,546 0 0162 r
-s 456,546,14 0 0163 s
-t 273,676,6 2 0164 t
-u 501,532,14 0 0165 u
-v 456,532 0 0166 v
-w 638,532 0 0167 w
-x 456,532 0 0170 x
-y 456,532,214 1 0171 y
-z 410,532 0 0172 z
-lC 319,722,196 2 0173 braceleft
-{ "
-ba 230,737,19 2 0174 bar
-| "
-rC 319,722,196 2 0175 braceright
-} "
-a~ 273,737 2 0176 tilde
-~ "
-bq 228,127,146 0 0200 quotesinglbase
-Fo 456,484 0 0201 guillemotleft
-char171 "
-Fc 456,484 0 0202 guillemotright
-char187 "
-bu 287,524 0 0203 bullet
-Fn 456,737,210 3 0204 florin
-f/ 137,710,19 2 0205 fraction
-%0 820,710,19 2 0206 perthousand
-dg 456,718,171 2 0207 dagger
-dd 456,718,171 2 0210 daggerdbl
-en 456,333 0 0211 endash
-em 820,333 0 0212 emdash
-fi 501,727 2 0214 fi
-fl 501,727 2 0215 fl
-.i 228,532 0 0220 dotlessi
-ga 273,750 2 0222 grave
-a" 273,750 2 0223 hungarumlaut
-a. 273,729 2 0224 dotaccent
-ab 273,750 2 0225 breve
-ah 273,750 2 0226 caron
-ao 273,776 2 0227 ring
-ho 273,0,228 1 0230 ogonek
-lq 410,727 2 0231 quotedblleft
-rq 410,718 2 0232 quotedblright
-oe 774,546,14 0 0233 oe
-/l 228,718 2 0234 lslash
-Bq 410,127,146 0 0235 quotedblbase
-OE 820,737,19 2 0236 OE
-/L 501,718 2 0237 Lslash
-r! 273,532,186 0 0241 exclamdown
-char161 "
-ct 456,628,118 0 0242 cent
-char162 "
-Po 456,718,16 2 0243 sterling
-char163 "
-Cs 456,636 0 0244 currency
-char164 "
-Ye 456,698 2 0245 yen
-char165 "
-bb 230,737,19 2 0246 brokenbar
-char166 "
-sc 456,727,184 2 0247 section
-char167 "
-ad 273,729 2 0250 dieresis
-char168 "
-co 604,737,19 2 0251 copyright
-char169 "
-Of 303,737 2 0252 ordfeminine
-char170 "
-fo 273,484 0 0253 guilsinglleft
-no 479,419 0 0254 logicalnot
-char172 "
-\- 479,309 0 0255 minus
-rg 604,737,19 2 0256 registered
-char174 "
-a- 273,678 2 0257 macron
-char175 "
-de 328,712 2 0260 degree
-char176 "
-char177 479,506 0 0261 plusminus
-S2 273,710 2 0262 twosuperior
-char178 "
-S3 273,710 2 0263 threesuperior
-char179 "
-aa 273,750 2 0264 acute
-char180 "
-char181 501,532,207 1 0265 mu
-ps 456,700,191 2 0266 paragraph
-char182 "
-char183 228,334 0 0267 periodcentered
-ac 273,0,228 1 0270 cedilla
-char184 "
-S1 273,710 2 0271 onesuperior
-char185 "
-Om 299,737 2 0272 ordmasculine
-char186 "
-fc 273,484 0 0273 guilsinglright
-14 684,710,19 2 0274 onequarter
-char188 "
-12 684,710,19 2 0275 onehalf
-char189 "
-34 684,710,19 2 0276 threequarters
-char190 "
-r? 501,532,195 0 0277 questiondown
-char191 "
-`A 592,936 2 0300 Agrave
-char192 "
-'A 592,936 2 0301 Aacute
-char193 "
-^A 592,936 2 0302 Acircumflex
-char194 "
-~A 592,923 2 0303 Atilde
-char195 "
-:A 592,915 2 0304 Adieresis
-char196 "
-oA 592,962 2 0305 Aring
-char197 "
-AE 820,718 2 0306 AE
-char198 "
-,C 592,737,228 3 0307 Ccedilla
-char199 "
-`E 547,936 2 0310 Egrave
-char200 "
-'E 547,936 2 0311 Eacute
-char201 "
-^E 547,936 2 0312 Ecircumflex
-char202 "
-:E 547,915 2 0313 Edieresis
-char203 "
-`I 228,936 2 0314 Igrave
-char204 "
-'I 228,936 2 0315 Iacute
-char205 "
-^I 228,936 2 0316 Icircumflex
-char206 "
-:I 228,915 2 0317 Idieresis
-char207 "
--D 592,718 2 0320 Eth
-char208 "
-~N 592,923 2 0321 Ntilde
-char209 "
-`O 638,936,19 2 0322 Ograve
-char210 "
-'O 638,936,19 2 0323 Oacute
-char211 "
-^O 638,936,19 2 0324 Ocircumflex
-char212 "
-~O 638,923,19 2 0325 Otilde
-char213 "
-:O 638,915,19 2 0326 Odieresis
-char214 "
-char215 479,505 0 0327 multiply
-/O 638,745,27 2 0330 Oslash
-char216 "
-`U 592,936,19 2 0331 Ugrave
-char217 "
-'U 592,936,19 2 0332 Uacute
-char218 "
-^U 592,936,19 2 0333 Ucircumflex
-char219 "
-:U 592,915,19 2 0334 Udieresis
-char220 "
-'Y 547,936 2 0335 Yacute
-char221 "
-TP 547,718 2 0336 Thorn
-char222 "
-ss 501,731,14 2 0337 germandbls
-char223 "
-`a 456,750,14 2 0340 agrave
-char224 "
-'a 456,750,14 2 0341 aacute
-char225 "
-^a 456,750,14 2 0342 acircumflex
-char226 "
-~a 456,737,14 2 0343 atilde
-char227 "
-:a 456,729,14 2 0344 adieresis
-char228 "
-oa 456,776,14 2 0345 aring
-char229 "
-ae 729,546,14 0 0346 ae
-char230 "
-,c 456,546,228 1 0347 ccedilla
-char231 "
-`e 456,750,14 2 0350 egrave
-char232 "
-'e 456,750,14 2 0351 eacute
-char233 "
-^e 456,750,14 2 0352 ecircumflex
-char234 "
-:e 456,729,14 2 0353 edieresis
-char235 "
-`i 228,750 2 0354 igrave
-char236 "
-'i 228,750 2 0355 iacute
-char237 "
-^i 228,750 2 0356 icircumflex
-char238 "
-:i 228,729 2 0357 idieresis
-char239 "
-Sd 501,737,14 2 0360 eth
-char240 "
-~n 501,737 2 0361 ntilde
-char241 "
-`o 501,750,14 2 0362 ograve
-char242 "
-'o 501,750,14 2 0363 oacute
-char243 "
-^o 501,750,14 2 0364 ocircumflex
-char244 "
-~o 501,737,14 2 0365 otilde
-char245 "
-:o 501,729,14 2 0366 odieresis
-char246 "
-char247 479,548,42 0 0367 divide
-/o 501,560,29 0 0370 oslash
-char248 "
-`u 501,750,14 2 0371 ugrave
-char249 "
-'u 501,750,14 2 0372 uacute
-char250 "
-^u 501,750,14 2 0373 ucircumflex
-char251 "
-:u 501,729,14 2 0374 udieresis
-char252 "
-'y 456,750,214 3 0375 yacute
-char253 "
-Tp 501,718,208 3 0376 thorn
-char254 "
-:y 456,729,214 3 0377 ydieresis
-char255 "
diff --git a/devps/HNBI b/devps/HNBI
deleted file mode 100644
index c0bb37eea..000000000
--- a/devps/HNBI
+++ /dev/null
@@ -1,547 +0,0 @@
-name HNBI
-internalname Helvetica-Narrow-BoldOblique
-slant 12
-spacewidth 228
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -30
-A w -30
-A v -40
-A u -30
-A Y -110
-A W -60
-A V -80
-A U -50
-A T -90
-A Q -40
-A O -40
-A G -50
-A C -40
-B U -10
-B A -30
-D . -30
-D , -30
-D Y -70
-D W -40
-D V -40
-D A -40
-F . -100
-F , -100
-F a -20
-F A -80
-J u -20
-J . -20
-J , -20
-J A -20
-K y -40
-K u -30
-K o -35
-K e -15
-K O -30
-L y -30
-L ' -140
-L rq -140
-L Y -120
-L W -80
-L V -110
-L T -90
-O . -40
-O , -40
-O Y -70
-O X -50
-O W -50
-O V -50
-O T -40
-O A -50
-P . -120
-P o -40
-P e -30
-P , -120
-P a -30
-P A -100
-Q . 20
-Q , 20
-Q U -10
-R Y -50
-R W -40
-R V -50
-R U -20
-R T -20
-R O -20
-T y -60
-T w -60
-T u -90
-T ; -40
-T r -80
-T . -80
-T o -80
-T - -120
-T hy -120
-T char173 -120
-T e -60
-T , -80
-T : -40
-T a -80
-T O -40
-T A -90
-U . -30
-U , -30
-U A -50
-V u -60
-V ; -40
-V . -120
-V o -90
-V - -80
-V hy -80
-V char173 -80
-V e -50
-V , -120
-V : -40
-V a -60
-V O -50
-V G -50
-V A -80
-W y -20
-W u -45
-W ; -10
-W . -80
-W o -60
-W - -40
-W hy -40
-W char173 -40
-W e -35
-W , -80
-W : -10
-W a -40
-W O -20
-W A -60
-Y u -100
-Y ; -50
-Y . -100
-Y o -100
-Y e -80
-Y , -100
-Y : -50
-Y a -90
-Y O -70
-Y A -110
-a y -20
-a w -15
-a v -15
-a g -10
-b y -20
-b v -20
-b u -20
-b l -10
-c y -10
-c l -20
-c k -20
-c h -10
-, ' -120
-, rq -120
-d y -15
-d w -15
-d v -15
-d d -10
-e y -15
-e x -15
-e w -15
-e v -15
-e . 20
-e , 10
-f ' 30
-f rq 30
-f . -10
-f o -20
-f e -10
-f , -10
-g g -10
-g e 10
-h y -20
-k o -15
-l y -15
-l w -15
-m y -30
-m u -20
-n y -20
-n v -40
-n u -10
-o y -20
-o x -30
-o w -15
-o v -20
-p y -15
-. ' -120
-. rq -120
-` ` -46
-` oq -46
-oq ` -46
-oq oq -46
-' v -20
-' s -60
-' r -40
-' ' -46
-' l -20
-' d -80
-r y 10
-r v 10
-r t 20
-r s -15
-r q -20
-r . -60
-r o -20
-r - -20
-r hy -20
-r char173 -20
-r g -15
-r d -20
-r , -60
-r c -20
-s w -15
-v . -80
-v o -30
-v , -80
-v a -20
-w . -40
-w o -20
-w , -40
-x e -10
-y . -80
-y o -25
-y e -10
-y , -80
-y a -30
-z e 10
-charset
-ha 479,698,0,55,-57,55 2 0000 asciicircum
-ti 479,343,0,44,-44,44 0 0001 asciitilde
-vS 547,936,19,91,-16,90 2 0002 Scaron
-vZ 501,936,0,153,30,90 2 0003 Zcaron
-vs 456,750,14,98,-2,90 2 0004 scaron
-vz 410,750,0,121,34,90 2 0005 zcaron
-:Y 547,915,0,164,-87,90 2 0006 Ydieresis
-tm 820,718,0,139,-96,90 2 0007 trademark
-aq 195,718,0,118,-85,90 2 0010 quotesingle
-space 228 0 0040
-! 273,718,0,102,-27,90 2 0041 exclam
-" 389,718,0,94,-108,90 2 0042 quotedbl
-# 456,698,0,122,1,90 2 0043 numbersign
-sh "
-$ 456,775,115,104,-5,90 2 0044 dollar
-Do "
-% 729,710,19,60,-62,60 2 0045 percent
-& 592,718,19,58,-23,58 2 0046 ampersand
-' 228,718,0,119,-87,90 2 0047 quoteright
-( 273,734,208,162,-12,90 3 0050 parenleft
-) 273,734,208,79,71,79 3 0051 parenright
-* 319,718,0,125,-70,90 2 0052 asterisk
-+ 479,506,0,71,-17,71 0 0053 plus
-, 228,146,168,23,27,23 0 0054 comma
-- 273,345,0,88,-10,88 0 0055 hyphen
-hy "
-char173 "
-. 228,146,0,23,-2,23 0 0056 period
-/ 228,737,19,205,80,90 2 0057 slash
-sl "
-0 456,710,19,100,-21,90 2 0060 zero
-1 456,710,0,28,-92,28 2 0061 one
-2 456,710,0,102,29,90 2 0062 two
-3 456,710,19,93,-4,90 2 0063 three
-4 456,710,0,84,0,84 2 0064 four
-5 456,698,19,116,-3,90 2 0065 five
-6 456,710,19,101,-20,90 2 0066 six
-7 456,698,0,149,-52,90 2 0067 seven
-8 456,710,19,99,-7,90 2 0070 eight
-9 456,710,19,98,-14,90 2 0071 nine
-: 273,512,0,65,-25,65 0 0072 colon
-; 273,512,168,65,4,65 0 0073 semicolon
-< 479,514,8,108,-17,90 0 0074 less
-= 479,419,0,90,2,90 0 0075 equal
-> 479,514,8,71,20,71 0 0076 greater
-? 501,727,0,99,-85,90 2 0077 question
-@ 800,737,19,32,-102,32 2 0100 at
-at "
-A 592,718,0,34,34,34 2 0101 A
-B 592,718,0,84,-12,84 2 0102 B
-C 592,737,19,105,-38,90 2 0103 C
-D 592,718,0,95,-12,90 2 0104 D
-E 547,718,0,123,-12,90 2 0105 E
-F 501,718,0,155,-12,90 2 0106 F
-G 638,737,19,82,-39,82 2 0107 G
-H 592,718,0,117,-8,90 2 0110 H
-I 228,718,0,123,-2,90 2 0111 I
-J 456,718,18,116,1,90 2 0112 J
-K 592,718,0,161,-21,90 2 0113 K
-L 501,718,0,50,-12,50 2 0114 L
-M 683,718,0,119,-7,90 2 0115 M
-N 592,718,0,119,-7,90 2 0116 N
-O 638,737,19,87,-38,87 2 0117 O
-P 547,718,0,108,-12,90 2 0120 P
-Q 638,737,52,87,-38,87 2 0121 Q
-R 592,718,0,96,-12,90 2 0122 R
-S 547,737,19,91,-16,90 2 0123 S
-T 501,718,0,164,-64,90 2 0124 T
-U 592,718,19,117,-46,90 2 0125 U
-V 547,718,0,159,-91,90 2 0126 V
-W 774,718,0,163,-88,90 2 0127 W
-X 547,718,0,151,39,90 2 0130 X
-Y 547,718,0,164,-87,90 2 0131 Y
-Z 501,718,0,153,30,90 2 0132 Z
-[ 273,722,196,156,33,90 2 0133 bracketleft
-lB "
-\ 228,737,19,74,-51,74 2 0134 backslash
-rs "
-] 273,722,196,124,64,90 2 0135 bracketright
-rB "
-a^ 273,750,0,164,-47,90 2 0136 circumflex
-^ "
-_ 456,0,125,37,72,37 0 0137 underscore
-` 228,727,0,118,-86,90 2 0140 quoteleft
-oq "
-a 456,546,14,72,5,72 0 0141 a
-b 501,718,14,78,0,78 2 0142 b
-c 456,546,14,85,-15,85 0 0143 c
-d 501,718,14,126,-17,90 2 0144 d
-e 456,546,14,80,-8,80 0 0145 e
-f 273,727,0,162,-21,90 2 0146 f
-g 501,546,217,95,19,90 1 0147 g
-h 501,718,0,65,-3,65 2 0150 h
-i 228,725,0,120,-7,90 2 0151 i
-j 228,725,214,120,85,90 3 0152 j
-k 456,718,0,143,-7,90 2 0153 k
-l 228,718,0,119,-7,90 2 0154 l
-m 729,546,0,67,-2,67 0 0155 m
-n 501,546,0,65,-3,65 0 0156 n
-o 501,546,14,76,-17,76 0 0157 o
-p 501,546,207,78,35,78 1 0160 p
-q 501,546,207,94,-16,90 1 0161 q
-r 319,546,0,132,-2,90 0 0162 r
-s 456,546,14,73,-2,73 0 0163 s
-t 273,676,6,123,-32,90 2 0164 t
-u 501,532,14,89,-30,89 0 0165 u
-v 456,532,0,132,-53,90 0 0166 v
-w 638,532,0,135,-51,90 0 0167 w
-x 456,532,0,125,38,90 0 0170 x
-y 456,532,214,129,16,90 1 0171 y
-z 410,532,0,118,34,90 0 0172 z
-lC 319,722,196,156,-27,90 2 0173 braceleft
-{ "
-ba 230,737,19,109,-16,90 2 0174 bar
-| "
-rC 319,722,196,64,64,64 2 0175 braceright
-} "
-a~ 273,737,0,192,-42,90 2 0176 tilde
-~ "
-bq 228,127,146,16,16,16 0 0200 quotesinglbase
-Fo 456,484,0,62,-61,62 0 0201 guillemotleft
-char171 "
-Fc 456,484,0,37,-35,37 0 0202 guillemotright
-char187 "
-bu 287,524,0,108,-18,90 0 0203 bullet
-Fn 456,737,210,142,91,90 3 0204 florin
-f/ 137,710,19,312,193,90 2 0205 fraction
-%0 820,710,19,81,-12,81 2 0206 perthousand
-dg 456,718,171,107,-47,90 2 0207 dagger
-dd 456,718,171,109,12,90 2 0210 daggerdbl
-en 456,333,0,108,10,90 0 0211 endash
-em 820,333,0,108,10,90 0 0212 emdash
-fi 501,727,0,120,-21,90 2 0214 fi
-fl 501,727,0,119,-21,90 2 0215 fl
-.i 228,532,0,86,-7,86 0 0220 dotlessi
-ga 273,750,0,67,-62,67 2 0222 grave
-a" 273,750,0,306,-63,90 2 0223 hungarumlaut
-a. 273,729,0,93,-142,90 2 0224 dotaccent
-ab 273,750,0,182,-78,90 2 0225 breve
-ah 273,750,0,189,-73,90 2 0226 caron
-ao 273,776,0,121,-114,90 2 0227 ring
-ho 273,0,228,0,17 1 0230 ogonek
-lq 410,727,0,122,-82,90 2 0231 quotedblleft
-rq 410,718,0,123,-82,90 2 0232 quotedblright
-oe 774,546,14,77,-17,77 0 0233 oe
-/l 228,718,0,156,17,90 2 0234 lslash
-Bq 410,127,146,20,21,20 0 0235 quotedblbase
-OE 820,737,19,143,-31,90 2 0236 OE
-/L 501,718,0,50,22,50 2 0237 Lslash
-r! 273,532,186,67,9,67 0 0241 exclamdown
-char161 "
-ct 456,628,118,85,-15,85 0 0242 cent
-char162 "
-Po 456,718,16,114,9,90 2 0243 sterling
-char163 "
-Cs 456,636,0,152,28,90 0 0244 currency
-char164 "
-Ye 456,698,0,179,1,90 2 0245 yen
-char165 "
-bb 230,737,19,109,-16,90 2 0246 brokenbar
-char166 "
-sc 456,727,184,85,0,85 2 0247 section
-char167 "
-ad 273,729,0,172,-62,90 2 0250 dieresis
-char168 "
-co 604,737,19,131,4,90 2 0251 copyright
-char169 "
-Of 303,737,0,128,-25,90 2 0252 ordfeminine
-char170 "
-fo 273,484,0,66,-56,66 0 0253 guilsinglleft
-no 479,419,0,90,-36,90 0 0254 logicalnot
-char172 "
-\- 479,309,0,71,-17,71 0 0255 minus
-rg 604,737,19,130,5,90 2 0256 registered
-char174 "
-a- 273,678,0,173,-50,90 2 0257 macron
-char175 "
-de 328,712,0,105,-93,90 2 0260 degree
-char176 "
-char177 479,506,0,83,17,83 0 0261 plusminus
-S2 273,710,0,145,-7,90 2 0262 twosuperior
-char178 "
-S3 273,710,0,138,-25,90 2 0263 threesuperior
-char179 "
-aa 273,750,0,200,-144,90 2 0264 acute
-char180 "
-char181 501,532,207,89,32,89 1 0265 mu
-ps 456,700,191,158,-30,90 2 0266 paragraph
-char182 "
-char183 228,334,0,48,-40,48 0 0267 periodcentered
-ac 273,0,228,0,80 1 0270 cedilla
-char184 "
-S1 273,710,0,95,-71,90 2 0271 onesuperior
-char185 "
-Om 299,737,0,149,-25,90 2 0272 ordmasculine
-char186 "
-fc 273,484,0,41,-31,41 0 0273 guilsinglright
-14 684,710,19,27,-58,27 2 0274 onequarter
-char188 "
-12 684,710,19,70,-58,70 2 0275 onehalf
-char189 "
-34 684,710,19,54,-32,54 2 0276 threequarters
-char190 "
-r? 501,532,195,8,6,8 0 0277 questiondown
-char191 "
-`A 592,936,0,34,34,34 2 0300 Agrave
-char192 "
-'A 592,936,0,73,34,73 2 0301 Aacute
-char193 "
-^A 592,936,0,37,34,37 2 0302 Acircumflex
-char194 "
-~A 592,923,0,66,34,66 2 0303 Atilde
-char195 "
-:A 592,915,0,46,34,46 2 0304 Adieresis
-char196 "
-oA 592,962,0,34,34,34 2 0305 Aring
-char197 "
-AE 820,718,0,132,46,90 2 0306 AE
-char198 "
-,C 592,737,228,105,-38,90 3 0307 Ccedilla
-char199 "
-`E 547,936,0,123,-12,90 2 0310 Egrave
-char200 "
-'E 547,936,0,123,-12,90 2 0311 Eacute
-char201 "
-^E 547,936,0,123,-12,90 2 0312 Ecircumflex
-char202 "
-:E 547,915,0,123,-12,90 2 0313 Edieresis
-char203 "
-`I 228,936,0,123,-2,90 2 0314 Igrave
-char204 "
-'I 228,936,0,255,-2,90 2 0315 Iacute
-char205 "
-^I 228,936,0,219,-2,90 2 0316 Icircumflex
-char206 "
-:I 228,915,0,227,-2,90 2 0317 Idieresis
-char207 "
--D 592,718,0,95,-1,90 2 0320 Eth
-char208 "
-~N 592,923,0,119,-7,90 2 0321 Ntilde
-char209 "
-`O 638,936,19,87,-38,87 2 0322 Ograve
-char210 "
-'O 638,936,19,87,-38,87 2 0323 Oacute
-char211 "
-^O 638,936,19,87,-38,87 2 0324 Ocircumflex
-char212 "
-~O 638,923,19,87,-38,87 2 0325 Otilde
-char213 "
-:O 638,915,19,87,-38,87 2 0326 Odieresis
-char214 "
-char215 479,505,0,91,3,90 0 0327 multiply
-/O 638,745,27,145,21,90 2 0330 Oslash
-char216 "
-`U 592,936,19,117,-46,90 2 0331 Ugrave
-char217 "
-'U 592,936,19,117,-46,90 2 0332 Uacute
-char218 "
-^U 592,936,19,117,-46,90 2 0333 Ucircumflex
-char219 "
-:U 592,915,19,117,-46,90 2 0334 Udieresis
-char220 "
-'Y 547,936,0,164,-87,90 2 0335 Yacute
-char221 "
-TP 547,718,0,91,-12,90 2 0336 Thorn
-char222 "
-ss 501,731,14,88,-7,88 2 0337 germandbls
-char223 "
-`a 456,750,14,72,5,72 2 0340 agrave
-char224 "
-'a 456,750,14,108,5,90 2 0341 aacute
-char225 "
-^a 456,750,14,72,5,72 2 0342 acircumflex
-char226 "
-~a 456,737,14,101,5,90 2 0343 atilde
-char227 "
-:a 456,729,14,81,5,81 2 0344 adieresis
-char228 "
-oa 456,776,14,72,5,72 2 0345 aring
-char229 "
-ae 729,546,14,78,4,78 0 0346 ae
-char230 "
-,c 456,546,228,85,-15,85 1 0347 ccedilla
-char231 "
-`e 456,750,14,80,-8,80 2 0350 egrave
-char232 "
-'e 456,750,14,108,-8,90 2 0351 eacute
-char233 "
-^e 456,750,14,80,-8,80 2 0352 ecircumflex
-char234 "
-:e 456,729,14,81,-8,81 2 0353 edieresis
-char235 "
-`i 228,750,0,90,-7,90 2 0354 igrave
-char236 "
-'i 228,750,0,222,-7,90 2 0355 iacute
-char237 "
-^i 228,750,0,186,-7,90 2 0356 icircumflex
-char238 "
-:i 228,729,0,195,-7,90 2 0357 idieresis
-char239 "
-Sd 501,737,14,98,-17,90 2 0360 eth
-char240 "
-~n 501,737,0,78,-3,78 2 0361 ntilde
-char241 "
-`o 501,750,14,76,-17,76 2 0362 ograve
-char242 "
-'o 501,750,14,86,-17,86 2 0363 oacute
-char243 "
-^o 501,750,14,76,-17,76 2 0364 ocircumflex
-char244 "
-~o 501,737,14,78,-17,78 2 0365 otilde
-char245 "
-:o 501,729,14,76,-17,76 2 0366 odieresis
-char246 "
-char247 479,548,42,71,-17,71 0 0367 divide
-/o 501,560,29,124,32,90 0 0370 oslash
-char248 "
-`u 501,750,14,89,-30,89 2 0371 ugrave
-char249 "
-'u 501,750,14,89,-30,89 2 0372 uacute
-char250 "
-^u 501,750,14,89,-30,89 2 0373 ucircumflex
-char251 "
-:u 501,729,14,89,-30,89 2 0374 udieresis
-char252 "
-'y 456,750,214,129,16,90 3 0375 yacute
-char253 "
-Tp 501,718,208,78,35,78 3 0376 thorn
-char254 "
-:y 456,729,214,129,16,90 3 0377 ydieresis
-char255 "
diff --git a/devps/HNI b/devps/HNI
deleted file mode 100644
index e9ded2f04..000000000
--- a/devps/HNI
+++ /dev/null
@@ -1,617 +0,0 @@
-name HNI
-internalname Helvetica-Narrow-Oblique
-slant 12
-spacewidth 228
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -40
-A w -40
-A v -40
-A u -30
-A Y -100
-A W -50
-A V -70
-A U -50
-A T -120
-A Q -30
-A O -30
-A G -30
-A C -30
-B . -20
-B , -20
-B U -10
-C . -30
-C , -30
-D . -70
-D , -70
-D Y -90
-D W -40
-D V -70
-D A -40
-F r -45
-F . -150
-F o -30
-F e -30
-F , -150
-F a -50
-F A -80
-J u -20
-J . -30
-J , -30
-J a -20
-J A -20
-K y -50
-K u -30
-K o -40
-K e -40
-K O -50
-L y -30
-L ' -160
-L rq -140
-L Y -140
-L W -70
-L V -110
-L T -110
-O . -40
-O , -40
-O Y -70
-O X -60
-O W -30
-O V -50
-O T -40
-O A -20
-P . -180
-P o -50
-P e -50
-P , -180
-P a -40
-P A -120
-Q U -10
-R Y -50
-R W -30
-R V -50
-R U -40
-R T -30
-R O -20
-S . -20
-S , -20
-T y -120
-T w -120
-T u -120
-T ; -20
-T r -120
-T . -120
-T o -120
-T - -140
-T hy -140
-T char173 -140
-T e -120
-T , -120
-T : -20
-T a -120
-T O -40
-T A -120
-U . -40
-U , -40
-U A -40
-V u -70
-V ; -40
-V . -125
-V o -80
-V - -80
-V hy -80
-V char173 -80
-V e -80
-V , -125
-V : -40
-V a -70
-V O -40
-V G -40
-V A -80
-W y -20
-W u -30
-W . -80
-W o -30
-W - -40
-W hy -40
-W char173 -40
-W e -30
-W , -80
-W a -40
-W O -20
-W A -50
-Y u -110
-Y ; -60
-Y . -140
-Y o -140
-Y i -20
-Y - -140
-Y hy -140
-Y char173 -140
-Y e -140
-Y , -140
-Y : -60
-Y a -140
-Y O -85
-Y A -110
-a y -30
-a w -20
-a v -20
-b y -20
-b v -20
-b u -20
-b . -40
-b l -20
-b , -40
-b b -10
-c k -20
-c , -15
-, ' -100
-, rq -100
-e y -20
-e x -30
-e w -20
-e v -30
-e . -15
-e , -15
-f ' 50
-f rq 60
-f . -30
-f o -30
-f e -30
-f .i -28
-f , -30
-f a -30
-g r -10
-h y -30
-k o -20
-k e -20
-m y -15
-m u -10
-n y -15
-n v -20
-n u -10
-o y -30
-o x -30
-o w -15
-o v -15
-o . -40
-o , -40
-/o z -55
-char248 z -55
-/o y -70
-char248 y -70
-/o x -85
-char248 x -85
-/o w -70
-char248 w -70
-/o v -70
-char248 v -70
-/o u -55
-char248 u -55
-/o t -55
-char248 t -55
-/o s -55
-char248 s -55
-/o r -55
-char248 r -55
-/o q -55
-char248 q -55
-/o . -95
-char248 . -95
-/o p -55
-char248 p -55
-/o o -55
-char248 o -55
-/o n -55
-char248 n -55
-/o m -55
-char248 m -55
-/o l -55
-char248 l -55
-/o k -55
-char248 k -55
-/o j -55
-char248 j -55
-/o i -55
-char248 i -55
-/o h -55
-char248 h -55
-/o g -55
-char248 g -55
-/o f -55
-char248 f -55
-/o e -55
-char248 e -55
-/o d -55
-char248 d -55
-/o , -95
-char248 , -95
-/o c -55
-char248 c -55
-/o b -55
-char248 b -55
-/o a -55
-char248 a -55
-p y -30
-p . -35
-p , -35
-. ' -100
-. rq -100
-` ` -57
-` oq -57
-oq ` -57
-oq oq -57
-' s -50
-' r -50
-' ' -57
-' d -50
-r y 30
-r v 30
-r u 15
-r t 40
-r ; 30
-r . -50
-r p 30
-r n 25
-r m 25
-r l 15
-r k 15
-r i 15
-r , -50
-r : 30
-r a -10
-s w -30
-s . -15
-s , -15
-v . -80
-v o -25
-v e -25
-v , -80
-v a -25
-w . -60
-w o -10
-w e -10
-w , -60
-w a -15
-x e -30
-y . -100
-y o -20
-y e -20
-y , -100
-y a -20
-z o -15
-z e -15
-charset
-ha 385,688,0,107,15,89 2 0000 asciicircum
-ti 479,326,0,47,-41,47 0 0001 asciitilde
-vS 547,929,19,87,-24,87 2 0002 Scaron
-vZ 501,929,0,156,31,89 2 0003 Zcaron
-vs 410,734,15,93,-2,89 2 0004 scaron
-vz 410,734,0,108,25,89 2 0005 zcaron
-:Y 547,901,0,164,-87,89 2 0006 Ydieresis
-tm 820,718,0,96,-102,89 2 0007 trademark
-aq 157,718,0,126,-79,89 2 0010 quotesingle
-space 228 0 0040
-! 228,718,0,100,-24,89 2 0041 exclam
-" 291,718,0,118,-88,89 2 0042 quotedbl
-# 456,688,0,111,-10,89 2 0043 numbersign
-sh "
-$ 456,775,115,100,-7,89 2 0044 dollar
-Do "
-% 729,703,19,50,-70,50 2 0045 percent
-& 547,718,15,33,-13,33 2 0046 ampersand
-' 182,718,0,122,-74,89 2 0047 quoteright
-( 273,733,207,149,-39,89 3 0050 parenleft
-) 273,733,207,53,57,53 3 0051 parenright
-* 319,718,0,120,-85,89 2 0052 asterisk
-+ 479,505,0,68,-20,68 0 0053 plus
-, 228,106,147,0,4 0 0054 comma
-- 273,322,0,70,-27,70 0 0055 hyphen
-hy "
-char173 "
-. 228,106,0,0,-21 0 0056 period
-/ 228,737,19,192,67,89 2 0057 slash
-sl "
-0 456,703,19,93,-27,89 2 0060 zero
-1 456,703,0,11,-120,11 2 0061 one
-2 456,703,0,100,29,89 2 0062 two
-3 456,703,19,94,-11,89 2 0063 three
-4 456,703,0,66,0,66 2 0064 four
-5 456,688,19,103,-5,89 2 0065 five
-6 456,703,19,98,-24,89 2 0066 six
-7 456,688,0,143,-62,89 2 0067 seven
-8 456,703,19,91,-10,89 2 0070 eight
-9 456,703,19,93,-17,89 2 0071 nine
-: 228,516,0,69,-21,69 0 0072 colon
-; 228,516,147,69,4,69 0 0073 semicolon
-< 479,495,0,97,-27,89 0 0074 less
-= 479,390,0,86,-2,86 0 0075 equal
-> 479,495,0,61,9,61 0 0076 greater
-? 456,727,0,94,-82,89 2 0077 question
-@ 832,737,19,9,-126,9 2 0100 at
-at "
-A 547,718,0,39,39,39 2 0101 A
-B 547,718,0,86,-11,86 2 0102 B
-C 592,737,19,98,-38,89 2 0103 C
-D 592,718,0,84,-16,84 2 0104 D
-E 547,718,0,128,-21,89 2 0105 E
-F 501,718,0,152,-21,89 2 0106 F
-G 638,737,19,67,-41,67 2 0107 G
-H 592,718,0,113,-13,89 2 0110 H
-I 228,718,0,101,-25,89 2 0111 I
-J 410,718,19,116,11,89 2 0112 J
-K 547,718,0,165,-12,89 2 0113 K
-L 456,718,0,49,-12,49 2 0114 L
-M 683,718,0,116,-10,89 2 0115 M
-N 592,718,0,113,-12,89 2 0116 N
-O 638,737,19,89,-36,89 2 0117 O
-P 547,718,0,107,-21,89 2 0120 P
-Q 638,737,56,89,-36,89 2 0121 Q
-R 592,718,0,92,-22,89 2 0122 R
-S 547,737,19,87,-24,87 2 0123 S
-T 501,718,0,164,-72,89 2 0124 T
-U 592,718,19,111,-51,89 2 0125 U
-V 547,718,0,159,-92,89 2 0126 V
-W 774,718,0,162,-88,89 2 0127 W
-X 547,718,0,150,34,89 2 0130 X
-Y 547,718,0,164,-87,89 2 0131 Y
-Z 501,718,0,156,31,89 2 0132 Z
-[ 228,722,196,153,33,89 2 0133 bracketleft
-lB "
-\ 228,737,19,61,-65,61 2 0134 backslash
-rs "
-] 228,722,196,124,61,89 2 0135 bracketright
-rB "
-a^ 273,734,0,136,-71,89 2 0136 circumflex
-^ "
-_ 456,0,125,37,72,37 0 0137 underscore
-` 182,725,0,133,-85,89 2 0140 quoteleft
-oq "
-a 456,538,15,52,0,52 0 0141 a
-b 456,718,15,73,2,73 2 0142 b
-c 410,538,15,94,-11,89 0 0143 c
-d 456,718,15,128,-19,89 2 0144 d
-e 456,538,15,68,-19,68 0 0145 e
-f 228,728,0,163,-21,89 2 0146 f
-g 456,538,220,94,16,89 1 0147 g
-h 456,718,0,64,-3,64 2 0150 h
-i 182,718,0,120,-5,89 2 0151 i
-j 182,718,210,120,99,89 3 0152 j
-k 410,718,0,132,-5,89 2 0153 k
-l 182,718,0,120,-5,89 2 0154 l
-m 683,538,0,66,-3,66 0 0155 m
-n 456,538,0,64,-3,64 0 0156 n
-o 456,538,14,73,-18,73 0 0157 o
-p 456,538,207,73,39,73 1 0160 p
-q 456,538,207,90,-19,89 1 0161 q
-r 273,538,0,142,-13,89 0 0162 r
-s 410,538,15,74,-2,74 0 0163 s
-t 228,669,7,124,-34,89 2 0164 t
-u 456,523,15,86,-27,86 0 0165 u
-v 410,523,0,135,-48,89 0 0166 v
-w 592,523,0,131,-53,89 0 0167 w
-x 410,523,0,127,41,89 0 0170 x
-y 410,523,214,132,38,89 1 0171 y
-z 410,523,0,108,25,89 0 0172 z
-lC 274,722,196,141,-25,89 2 0173 braceleft
-{ "
-ba 213,737,19,102,-24,89 2 0174 bar
-| "
-rC 274,722,196,67,50,67 2 0175 braceright
-} "
-a~ 273,722,0,179,-52,89 2 0176 tilde
-~ "
-bq 182,106,149,15,33,15 0 0200 quotesinglbase
-Fo 456,446,0,48,-70,48 0 0201 guillemotleft
-char171 "
-Fc 456,446,0,27,-48,27 0 0202 guillemotright
-char187 "
-bu 287,517,0,102,-24,89 0 0203 bullet
-Fn 456,737,207,131,93,89 3 0204 florin
-f/ 137,703,19,309,189,89 2 0205 fraction
-%0 820,703,19,74,-22,74 2 0206 perthousand
-dg 456,718,159,104,-60,89 2 0207 dagger
-dd 456,718,159,105,7,89 2 0210 daggerdbl
-en 456,313,0,104,8,89 0 0211 endash
-em 820,313,0,105,8,89 0 0212 emdash
-fi 410,728,0,121,-21,89 2 0214 fi
-fl 410,728,0,119,-21,89 2 0215 fl
-.i 228,523,0,63,-28,63 0 0220 dotlessi
-ga 273,734,0,53,-89,53 2 0222 grave
-a" 273,734,0,240,-79,89 2 0223 hungarumlaut
-a. 273,706,0,74,-154,74 2 0224 dotaccent
-ab 273,731,0,168,-87,89 2 0225 breve
-ah 273,734,0,161,-95,89 2 0226 caron
-ao 273,756,0,107,-125,89 2 0227 ring
-ho 273,0,225,0,15 1 0230 ogonek
-lq 273,725,0,155,-63,89 2 0231 quotedblleft
-rq 273,718,0,144,-52,89 2 0232 quotedblright
-oe 774,538,15,67,-18,67 0 0233 oe
-/l 182,718,0,152,16,89 2 0234 lslash
-Bq 273,106,149,37,55,37 0 0235 quotedblbase
-OE 820,737,19,145,-30,89 2 0236 OE
-/L 456,718,0,49,16,49 2 0237 Lslash
-r! 273,523,195,44,-13,44 0 0241 exclamdown
-char161 "
-ct 456,623,115,73,-28,73 0 0242 cent
-char162 "
-Po 456,718,16,114,10,89 2 0243 sterling
-char163 "
-Cs 456,603,0,124,1,89 0 0244 currency
-char164 "
-Ye 456,688,0,167,-17,89 2 0245 yen
-char165 "
-bb 213,737,19,102,-24,89 2 0246 brokenbar
-char166 "
-sc 456,737,191,73,-13,73 2 0247 section
-char167 "
-ad 273,706,0,140,-88,89 2 0250 dieresis
-char168 "
-co 604,737,19,133,6,89 2 0251 copyright
-char169 "
-Of 303,737,0,115,-32,89 2 0252 ordfeminine
-char170 "
-fo 273,446,0,56,-62,56 0 0253 guilsinglleft
-no 479,390,0,86,-37,86 0 0254 logicalnot
-char172 "
-\- 479,289,0,68,-20,68 0 0255 minus
-rg 604,737,19,133,6,89 2 0256 registered
-char174 "
-a- 273,684,0,161,-67,89 2 0257 macron
-char175 "
-de 328,703,0,106,-88,89 2 0260 degree
-char176 "
-char177 479,506,0,78,18,78 0 0261 plusminus
-S2 273,703,0,145,-2,89 2 0262 twosuperior
-char178 "
-S3 273,703,0,135,-24,89 2 0263 threesuperior
-char179 "
-aa 273,734,0,167,-153,89 2 0264 acute
-char180 "
-char181 456,523,207,86,30,86 1 0265 mu
-ps 440,718,173,143,-53,89 2 0266 paragraph
-char182 "
-char183 228,315,0,33,-56,33 0 0267 periodcentered
-ac 273,0,225,0,48 1 0270 cedilla
-char184 "
-S1 273,703,0,82,-86,82 2 0271 onesuperior
-char185 "
-Om 299,737,0,135,-32,89 2 0272 ordmasculine
-char186 "
-fc 273,446,0,34,-41,34 0 0273 guilsinglright
-14 684,703,19,24,-73,24 2 0274 onequarter
-char188 "
-12 684,703,19,54,-43,54 2 0275 onehalf
-char189 "
-34 684,703,19,72,-56,72 2 0276 threequarters
-char190 "
-r? 501,525,201,0,-20 0 0277 questiondown
-char191 "
-`A 547,929,0,39,39,39 2 0300 Agrave
-char192 "
-'A 547,929,0,63,39,63 2 0301 Aacute
-char193 "
-^A 547,929,0,39,39,39 2 0302 Acircumflex
-char194 "
-~A 547,917,0,76,39,76 2 0303 Atilde
-char195 "
-:A 547,901,0,39,39,39 2 0304 Adieresis
-char196 "
-oA 547,931,0,39,39,39 2 0305 Aring
-char197 "
-AE 820,718,0,129,43,89 2 0306 AE
-char198 "
-,C 592,737,225,98,-38,89 3 0307 Ccedilla
-char199 "
-`E 547,929,0,128,-21,89 2 0310 Egrave
-char200 "
-'E 547,929,0,128,-21,89 2 0311 Eacute
-char201 "
-^E 547,929,0,128,-21,89 2 0312 Ecircumflex
-char202 "
-:E 547,901,0,128,-21,89 2 0313 Edieresis
-char203 "
-`I 228,929,0,110,-25,89 2 0314 Igrave
-char204 "
-'I 228,929,0,223,-25,89 2 0315 Iacute
-char205 "
-^I 228,929,0,193,-25,89 2 0316 Icircumflex
-char206 "
-:I 228,901,0,197,-25,89 2 0317 Idieresis
-char207 "
--D 592,718,0,84,-7,84 2 0320 Eth
-char208 "
-~N 592,917,0,113,-12,89 2 0321 Ntilde
-char209 "
-`O 638,929,19,89,-36,89 2 0322 Ograve
-char210 "
-'O 638,929,19,89,-36,89 2 0323 Oacute
-char211 "
-^O 638,929,19,89,-36,89 2 0324 Ocircumflex
-char212 "
-~O 638,917,19,89,-36,89 2 0325 Otilde
-char213 "
-:O 638,901,19,89,-36,89 2 0326 Odieresis
-char214 "
-char215 479,506,0,97,9,89 0 0327 multiply
-/O 638,737,19,142,15,89 2 0330 Oslash
-char216 "
-`U 592,929,19,111,-51,89 2 0331 Ugrave
-char217 "
-'U 592,929,19,111,-51,89 2 0332 Uacute
-char218 "
-^U 592,929,19,111,-51,89 2 0333 Ucircumflex
-char219 "
-:U 592,901,19,111,-51,89 2 0334 Udieresis
-char220 "
-'Y 547,929,0,164,-87,89 2 0335 Yacute
-char221 "
-TP 547,718,0,87,-21,87 2 0336 Thorn
-char222 "
-ss 501,728,15,88,-5,88 2 0337 germandbls
-char223 "
-`a 456,734,15,52,0,52 2 0340 agrave
-char224 "
-'a 456,734,15,75,0,75 2 0341 aacute
-char225 "
-^a 456,734,15,52,0,52 2 0342 acircumflex
-char226 "
-~a 456,722,15,80,0,80 2 0343 atilde
-char227 "
-:a 456,706,15,52,0,52 2 0344 adieresis
-char228 "
-oa 456,756,15,52,0,52 2 0345 aring
-char229 "
-ae 729,538,15,67,0,67 0 0346 ae
-char230 "
-,c 410,538,225,94,-11,89 1 0347 ccedilla
-char231 "
-`e 456,734,15,68,-19,68 2 0350 egrave
-char232 "
-'e 456,734,15,75,-19,75 2 0351 eacute
-char233 "
-^e 456,734,15,68,-19,68 2 0352 ecircumflex
-char234 "
-:e 456,706,15,68,-19,68 2 0353 edieresis
-char235 "
-`i 228,734,0,76,-28,76 2 0354 igrave
-char236 "
-'i 228,734,0,189,-28,89 2 0355 iacute
-char237 "
-^i 228,734,0,159,-28,89 2 0356 icircumflex
-char238 "
-:i 228,706,0,163,-28,89 2 0357 idieresis
-char239 "
-Sd 456,737,15,100,-17,89 2 0360 eth
-char240 "
-~n 456,722,0,80,-3,80 2 0361 ntilde
-char241 "
-`o 456,734,14,73,-18,73 2 0362 ograve
-char242 "
-'o 456,734,14,75,-18,75 2 0363 oacute
-char243 "
-^o 456,734,14,73,-18,73 2 0364 ocircumflex
-char244 "
-~o 456,722,14,88,-18,88 2 0365 otilde
-char245 "
-:o 456,706,14,73,-18,73 2 0366 odieresis
-char246 "
-char247 479,524,19,68,-20,68 0 0367 divide
-/o 501,545,22,80,26,80 0 0370 oslash
-char248 "
-`u 456,734,15,86,-27,86 2 0371 ugrave
-char249 "
-'u 456,734,15,86,-27,86 2 0372 uacute
-char250 "
-^u 456,734,15,86,-27,86 2 0373 ucircumflex
-char251 "
-:u 456,706,15,86,-27,86 2 0374 udieresis
-char252 "
-'y 410,734,214,132,38,89 3 0375 yacute
-char253 "
-Tp 456,718,207,73,39,73 3 0376 thorn
-char254 "
-:y 410,706,214,132,38,89 3 0377 ydieresis
-char255 "
diff --git a/devps/HNR b/devps/HNR
deleted file mode 100644
index ecd911561..000000000
--- a/devps/HNR
+++ /dev/null
@@ -1,616 +0,0 @@
-name HNR
-internalname Helvetica-Narrow
-spacewidth 228
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -32
-A w -32
-A v -32
-A u -24
-A Y -81
-A W -40
-A V -56
-A U -40
-A T -97
-A Q -24
-A O -24
-A G -24
-A C -24
-B . -15
-B , -15
-B U -7
-C . -24
-C , -24
-D . -56
-D , -56
-D Y -73
-D W -32
-D V -56
-D A -32
-F r -36
-F . -122
-F o -24
-F e -24
-F , -122
-F a -40
-F A -65
-J u -15
-J . -24
-J , -24
-J a -15
-J A -15
-K y -40
-K u -24
-K o -32
-K e -32
-K O -40
-L y -24
-L ' -130
-L rq -114
-L Y -114
-L W -56
-L V -89
-L T -89
-O . -32
-O , -32
-O Y -56
-O X -48
-O W -24
-O V -40
-O T -32
-O A -15
-P . -147
-P o -40
-P e -40
-P , -147
-P a -32
-P A -97
-Q U -7
-R Y -40
-R W -24
-R V -40
-R U -32
-R T -24
-R O -15
-S . -15
-S , -15
-T y -97
-T w -97
-T u -97
-T ; -15
-T r -97
-T . -97
-T o -97
-T - -114
-T hy -114
-T char173 -114
-T e -97
-T , -97
-T : -15
-T a -97
-T O -32
-T A -97
-U . -32
-U , -32
-U A -32
-V u -56
-V ; -32
-V . -102
-V o -65
-V - -65
-V hy -65
-V char173 -65
-V e -65
-V , -102
-V : -32
-V a -56
-V O -32
-V G -32
-V A -65
-W y -15
-W u -24
-W . -65
-W o -24
-W - -32
-W hy -32
-W char173 -32
-W e -24
-W , -65
-W a -32
-W O -15
-W A -40
-Y u -89
-Y ; -48
-Y . -114
-Y o -114
-Y i -15
-Y - -114
-Y hy -114
-Y char173 -114
-Y e -114
-Y , -114
-Y : -48
-Y a -114
-Y O -69
-Y A -89
-a y -24
-a w -15
-a v -15
-b y -15
-b v -15
-b u -15
-b . -32
-b l -15
-b , -32
-b b -7
-c k -15
-c , -11
-, ' -81
-, rq -81
-e y -15
-e x -24
-e w -15
-e v -24
-e . -11
-e , -11
-f ' 41
-f rq 49
-f . -24
-f o -24
-f e -24
-f .i -22
-f , -24
-f a -24
-g r -7
-h y -24
-k o -15
-k e -15
-m y -11
-m u -7
-n y -11
-n v -15
-n u -7
-o y -24
-o x -24
-o w -11
-o v -11
-o . -32
-o , -32
-/o z -44
-char248 z -44
-/o y -56
-char248 y -56
-/o x -69
-char248 x -69
-/o w -56
-char248 w -56
-/o v -56
-char248 v -56
-/o u -44
-char248 u -44
-/o t -44
-char248 t -44
-/o s -44
-char248 s -44
-/o r -44
-char248 r -44
-/o q -44
-char248 q -44
-/o . -77
-char248 . -77
-/o p -44
-char248 p -44
-/o o -44
-char248 o -44
-/o n -44
-char248 n -44
-/o m -44
-char248 m -44
-/o l -44
-char248 l -44
-/o k -44
-char248 k -44
-/o j -44
-char248 j -44
-/o i -44
-char248 i -44
-/o h -44
-char248 h -44
-/o g -44
-char248 g -44
-/o f -44
-char248 f -44
-/o e -44
-char248 e -44
-/o d -44
-char248 d -44
-/o , -77
-char248 , -77
-/o c -44
-char248 c -44
-/o b -44
-char248 b -44
-/o a -44
-char248 a -44
-p y -24
-p . -28
-p , -28
-. ' -81
-. rq -81
-` ` -46
-` oq -46
-oq ` -46
-oq oq -46
-' s -40
-' r -40
-' ' -46
-' d -40
-r y 25
-r v 25
-r u 12
-r t 33
-r ; 25
-r . -40
-r p 25
-r n 21
-r m 21
-r l 12
-r k 12
-r i 12
-r , -40
-r : 25
-r a -7
-s w -24
-s . -11
-s , -11
-v . -65
-v o -20
-v e -20
-v , -65
-v a -20
-w . -48
-w o -7
-w e -7
-w , -48
-w a -11
-x e -24
-y . -81
-y o -15
-y e -15
-y , -81
-y a -15
-z o -11
-z e -11
-charset
-ha 385,688 2 0000 asciicircum
-ti 479,326 0 0001 asciitilde
-vS 547,929,19 2 0002 Scaron
-vZ 501,929 2 0003 Zcaron
-vs 410,734,15 2 0004 scaron
-vz 410,734 2 0005 zcaron
-:Y 547,901 2 0006 Ydieresis
-tm 820,718 2 0007 trademark
-aq 157,718 2 0010 quotesingle
-space 228 0 0040
-! 228,718 2 0041 exclam
-" 291,718 2 0042 quotedbl
-# 456,688 2 0043 numbersign
-sh "
-$ 456,775,115 2 0044 dollar
-Do "
-% 729,703,19 2 0045 percent
-& 547,718,15 2 0046 ampersand
-' 182,718 2 0047 quoteright
-( 273,733,207 3 0050 parenleft
-) 273,733,207 3 0051 parenright
-* 319,718 2 0052 asterisk
-+ 479,505 0 0053 plus
-, 228,106,147 0 0054 comma
-- 273,322 0 0055 hyphen
-hy "
-char173 "
-. 228,106 0 0056 period
-/ 228,737,19 2 0057 slash
-sl "
-0 456,703,19 2 0060 zero
-1 456,703 2 0061 one
-2 456,703 2 0062 two
-3 456,703,19 2 0063 three
-4 456,703 2 0064 four
-5 456,688,19 2 0065 five
-6 456,703,19 2 0066 six
-7 456,688 2 0067 seven
-8 456,703,19 2 0070 eight
-9 456,703,19 2 0071 nine
-: 228,516 0 0072 colon
-; 228,516,147 0 0073 semicolon
-< 479,495 0 0074 less
-= 479,390 0 0075 equal
-> 479,495 0 0076 greater
-? 456,727 2 0077 question
-@ 832,737,19 2 0100 at
-at "
-A 547,718 2 0101 A
-B 547,718 2 0102 B
-C 592,737,19 2 0103 C
-D 592,718 2 0104 D
-E 547,718 2 0105 E
-F 501,718 2 0106 F
-G 638,737,19 2 0107 G
-H 592,718 2 0110 H
-I 228,718 2 0111 I
-J 410,718,19 2 0112 J
-K 547,718 2 0113 K
-L 456,718 2 0114 L
-M 683,718 2 0115 M
-N 592,718 2 0116 N
-O 638,737,19 2 0117 O
-P 547,718 2 0120 P
-Q 638,737,56 2 0121 Q
-R 592,718 2 0122 R
-S 547,737,19 2 0123 S
-T 501,718 2 0124 T
-U 592,718,19 2 0125 U
-V 547,718 2 0126 V
-W 774,718 2 0127 W
-X 547,718 2 0130 X
-Y 547,718 2 0131 Y
-Z 501,718 2 0132 Z
-[ 228,722,196 2 0133 bracketleft
-lB "
-\ 228,737,19 2 0134 backslash
-rs "
-] 228,722,196 2 0135 bracketright
-rB "
-a^ 273,734 2 0136 circumflex
-^ "
-_ 456,0,125 0 0137 underscore
-` 182,725 2 0140 quoteleft
-oq "
-a 456,538,15 0 0141 a
-b 456,718,15 2 0142 b
-c 410,538,15 0 0143 c
-d 456,718,15 2 0144 d
-e 456,538,15 0 0145 e
-f 228,728 2 0146 f
-g 456,538,220 1 0147 g
-h 456,718 2 0150 h
-i 182,718 2 0151 i
-j 182,718,210 3 0152 j
-k 410,718 2 0153 k
-l 182,718 2 0154 l
-m 683,538 0 0155 m
-n 456,538 0 0156 n
-o 456,538,14 0 0157 o
-p 456,538,207 1 0160 p
-q 456,538,207 1 0161 q
-r 273,538 0 0162 r
-s 410,538,15 0 0163 s
-t 228,669,7 2 0164 t
-u 456,523,15 0 0165 u
-v 410,523 0 0166 v
-w 592,523 0 0167 w
-x 410,523 0 0170 x
-y 410,523,214 1 0171 y
-z 410,523 0 0172 z
-lC 274,722,196 2 0173 braceleft
-{ "
-ba 213,737,19 2 0174 bar
-| "
-rC 274,722,196 2 0175 braceright
-} "
-a~ 273,722 2 0176 tilde
-~ "
-bq 182,106,149 0 0200 quotesinglbase
-Fo 456,446 0 0201 guillemotleft
-char171 "
-Fc 456,446 0 0202 guillemotright
-char187 "
-bu 287,517 0 0203 bullet
-Fn 456,737,207 3 0204 florin
-f/ 137,703,19 2 0205 fraction
-%0 820,703,19 2 0206 perthousand
-dg 456,718,159 2 0207 dagger
-dd 456,718,159 2 0210 daggerdbl
-en 456,313 0 0211 endash
-em 820,313 0 0212 emdash
-fi 410,728 2 0214 fi
-fl 410,728 2 0215 fl
-.i 228,523 0 0220 dotlessi
-ga 273,734 2 0222 grave
-a" 273,734 2 0223 hungarumlaut
-a. 273,706 2 0224 dotaccent
-ab 273,731 2 0225 breve
-ah 273,734 2 0226 caron
-ao 273,756 2 0227 ring
-ho 273,0,225 1 0230 ogonek
-lq 273,725 2 0231 quotedblleft
-rq 273,718 2 0232 quotedblright
-oe 774,538,15 0 0233 oe
-/l 182,718 2 0234 lslash
-Bq 273,106,149 0 0235 quotedblbase
-OE 820,737,19 2 0236 OE
-/L 456,718 2 0237 Lslash
-r! 273,523,195 0 0241 exclamdown
-char161 "
-ct 456,623,115 0 0242 cent
-char162 "
-Po 456,718,16 2 0243 sterling
-char163 "
-Cs 456,603 0 0244 currency
-char164 "
-Ye 456,688 2 0245 yen
-char165 "
-bb 213,737,19 2 0246 brokenbar
-char166 "
-sc 456,737,191 2 0247 section
-char167 "
-ad 273,706 2 0250 dieresis
-char168 "
-co 604,737,19 2 0251 copyright
-char169 "
-Of 303,737 2 0252 ordfeminine
-char170 "
-fo 273,446 0 0253 guilsinglleft
-no 479,390 0 0254 logicalnot
-char172 "
-\- 479,289 0 0255 minus
-rg 604,737,19 2 0256 registered
-char174 "
-a- 273,684 2 0257 macron
-char175 "
-de 328,703 2 0260 degree
-char176 "
-char177 479,506 0 0261 plusminus
-S2 273,703 2 0262 twosuperior
-char178 "
-S3 273,703 2 0263 threesuperior
-char179 "
-aa 273,734 2 0264 acute
-char180 "
-char181 456,523,207 1 0265 mu
-ps 440,718,173 2 0266 paragraph
-char182 "
-char183 228,315 0 0267 periodcentered
-ac 273,0,225 1 0270 cedilla
-char184 "
-S1 273,703 2 0271 onesuperior
-char185 "
-Om 299,737 2 0272 ordmasculine
-char186 "
-fc 273,446 0 0273 guilsinglright
-14 684,703,19 2 0274 onequarter
-char188 "
-12 684,703,19 2 0275 onehalf
-char189 "
-34 684,703,19 2 0276 threequarters
-char190 "
-r? 501,525,201 0 0277 questiondown
-char191 "
-`A 547,929 2 0300 Agrave
-char192 "
-'A 547,929 2 0301 Aacute
-char193 "
-^A 547,929 2 0302 Acircumflex
-char194 "
-~A 547,917 2 0303 Atilde
-char195 "
-:A 547,901 2 0304 Adieresis
-char196 "
-oA 547,931 2 0305 Aring
-char197 "
-AE 820,718 2 0306 AE
-char198 "
-,C 592,737,225 3 0307 Ccedilla
-char199 "
-`E 547,929 2 0310 Egrave
-char200 "
-'E 547,929 2 0311 Eacute
-char201 "
-^E 547,929 2 0312 Ecircumflex
-char202 "
-:E 547,901 2 0313 Edieresis
-char203 "
-`I 228,929 2 0314 Igrave
-char204 "
-'I 228,929 2 0315 Iacute
-char205 "
-^I 228,929 2 0316 Icircumflex
-char206 "
-:I 228,901 2 0317 Idieresis
-char207 "
--D 592,718 2 0320 Eth
-char208 "
-~N 592,917 2 0321 Ntilde
-char209 "
-`O 638,929,19 2 0322 Ograve
-char210 "
-'O 638,929,19 2 0323 Oacute
-char211 "
-^O 638,929,19 2 0324 Ocircumflex
-char212 "
-~O 638,917,19 2 0325 Otilde
-char213 "
-:O 638,901,19 2 0326 Odieresis
-char214 "
-char215 479,506 0 0327 multiply
-/O 638,737,19 2 0330 Oslash
-char216 "
-`U 592,929,19 2 0331 Ugrave
-char217 "
-'U 592,929,19 2 0332 Uacute
-char218 "
-^U 592,929,19 2 0333 Ucircumflex
-char219 "
-:U 592,901,19 2 0334 Udieresis
-char220 "
-'Y 547,929 2 0335 Yacute
-char221 "
-TP 547,718 2 0336 Thorn
-char222 "
-ss 501,728,15 2 0337 germandbls
-char223 "
-`a 456,734,15 2 0340 agrave
-char224 "
-'a 456,734,15 2 0341 aacute
-char225 "
-^a 456,734,15 2 0342 acircumflex
-char226 "
-~a 456,722,15 2 0343 atilde
-char227 "
-:a 456,706,15 2 0344 adieresis
-char228 "
-oa 456,756,15 2 0345 aring
-char229 "
-ae 729,538,15 0 0346 ae
-char230 "
-,c 410,538,225 1 0347 ccedilla
-char231 "
-`e 456,734,15 2 0350 egrave
-char232 "
-'e 456,734,15 2 0351 eacute
-char233 "
-^e 456,734,15 2 0352 ecircumflex
-char234 "
-:e 456,706,15 2 0353 edieresis
-char235 "
-`i 228,734 2 0354 igrave
-char236 "
-'i 228,734 2 0355 iacute
-char237 "
-^i 228,734 2 0356 icircumflex
-char238 "
-:i 228,706 2 0357 idieresis
-char239 "
-Sd 456,737,15 2 0360 eth
-char240 "
-~n 456,722 2 0361 ntilde
-char241 "
-`o 456,734,14 2 0362 ograve
-char242 "
-'o 456,734,14 2 0363 oacute
-char243 "
-^o 456,734,14 2 0364 ocircumflex
-char244 "
-~o 456,722,14 2 0365 otilde
-char245 "
-:o 456,706,14 2 0366 odieresis
-char246 "
-char247 479,524,19 0 0367 divide
-/o 501,545,22 0 0370 oslash
-char248 "
-`u 456,734,15 2 0371 ugrave
-char249 "
-'u 456,734,15 2 0372 uacute
-char250 "
-^u 456,734,15 2 0373 ucircumflex
-char251 "
-:u 456,706,15 2 0374 udieresis
-char252 "
-'y 410,734,214 3 0375 yacute
-char253 "
-Tp 456,718,207 3 0376 thorn
-char254 "
-:y 410,706,214 3 0377 ydieresis
-char255 "
diff --git a/devps/HR b/devps/HR
deleted file mode 100644
index 9dd2687e3..000000000
--- a/devps/HR
+++ /dev/null
@@ -1,616 +0,0 @@
-name HR
-internalname Helvetica
-spacewidth 278
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -40
-A w -40
-A v -40
-A u -30
-A Y -100
-A W -50
-A V -70
-A U -50
-A T -120
-A Q -30
-A O -30
-A G -30
-A C -30
-B . -20
-B , -20
-B U -10
-C . -30
-C , -30
-D . -70
-D , -70
-D Y -90
-D W -40
-D V -70
-D A -40
-F r -45
-F . -150
-F o -30
-F e -30
-F , -150
-F a -50
-F A -80
-J u -20
-J . -30
-J , -30
-J a -20
-J A -20
-K y -50
-K u -30
-K o -40
-K e -40
-K O -50
-L y -30
-L ' -160
-L rq -140
-L Y -140
-L W -70
-L V -110
-L T -110
-O . -40
-O , -40
-O Y -70
-O X -60
-O W -30
-O V -50
-O T -40
-O A -20
-P . -180
-P o -50
-P e -50
-P , -180
-P a -40
-P A -120
-Q U -10
-R Y -50
-R W -30
-R V -50
-R U -40
-R T -30
-R O -20
-S . -20
-S , -20
-T y -120
-T w -120
-T u -120
-T ; -20
-T r -120
-T . -120
-T o -120
-T - -140
-T hy -140
-T char173 -140
-T e -120
-T , -120
-T : -20
-T a -120
-T O -40
-T A -120
-U . -40
-U , -40
-U A -40
-V u -70
-V ; -40
-V . -125
-V o -80
-V - -80
-V hy -80
-V char173 -80
-V e -80
-V , -125
-V : -40
-V a -70
-V O -40
-V G -40
-V A -80
-W y -20
-W u -30
-W . -80
-W o -30
-W - -40
-W hy -40
-W char173 -40
-W e -30
-W , -80
-W a -40
-W O -20
-W A -50
-Y u -110
-Y ; -60
-Y . -140
-Y o -140
-Y i -20
-Y - -140
-Y hy -140
-Y char173 -140
-Y e -140
-Y , -140
-Y : -60
-Y a -140
-Y O -85
-Y A -110
-a y -30
-a w -20
-a v -20
-b y -20
-b v -20
-b u -20
-b . -40
-b l -20
-b , -40
-b b -10
-c k -20
-c , -15
-, ' -100
-, rq -100
-e y -20
-e x -30
-e w -20
-e v -30
-e . -15
-e , -15
-f ' 50
-f rq 60
-f . -30
-f o -30
-f e -30
-f .i -28
-f , -30
-f a -30
-g r -10
-h y -30
-k o -20
-k e -20
-m y -15
-m u -10
-n y -15
-n v -20
-n u -10
-o y -30
-o x -30
-o w -15
-o v -15
-o . -40
-o , -40
-/o z -55
-char248 z -55
-/o y -70
-char248 y -70
-/o x -85
-char248 x -85
-/o w -70
-char248 w -70
-/o v -70
-char248 v -70
-/o u -55
-char248 u -55
-/o t -55
-char248 t -55
-/o s -55
-char248 s -55
-/o r -55
-char248 r -55
-/o q -55
-char248 q -55
-/o . -95
-char248 . -95
-/o p -55
-char248 p -55
-/o o -55
-char248 o -55
-/o n -55
-char248 n -55
-/o m -55
-char248 m -55
-/o l -55
-char248 l -55
-/o k -55
-char248 k -55
-/o j -55
-char248 j -55
-/o i -55
-char248 i -55
-/o h -55
-char248 h -55
-/o g -55
-char248 g -55
-/o f -55
-char248 f -55
-/o e -55
-char248 e -55
-/o d -55
-char248 d -55
-/o , -95
-char248 , -95
-/o c -55
-char248 c -55
-/o b -55
-char248 b -55
-/o a -55
-char248 a -55
-p y -30
-p . -35
-p , -35
-. ' -100
-. rq -100
-` ` -57
-` oq -57
-oq ` -57
-oq oq -57
-' s -50
-' r -50
-' ' -57
-' d -50
-r y 30
-r v 30
-r u 15
-r t 40
-r ; 30
-r . -50
-r p 30
-r n 25
-r m 25
-r l 15
-r k 15
-r i 15
-r , -50
-r : 30
-r a -10
-s w -30
-s . -15
-s , -15
-v . -80
-v o -25
-v e -25
-v , -80
-v a -25
-w . -60
-w o -10
-w e -10
-w , -60
-w a -15
-x e -30
-y . -100
-y o -20
-y e -20
-y , -100
-y a -20
-z o -15
-z e -15
-charset
-ha 469,688 2 0000 asciicircum
-ti 584,326 0 0001 asciitilde
-vS 667,929,19 2 0002 Scaron
-vZ 611,929 2 0003 Zcaron
-vs 500,734,15 2 0004 scaron
-vz 500,734 2 0005 zcaron
-:Y 667,901 2 0006 Ydieresis
-tm 1000,718 2 0007 trademark
-aq 191,718 2 0010 quotesingle
-space 278 0 0040
-! 278,718 2 0041 exclam
-" 355,718 2 0042 quotedbl
-# 556,688 2 0043 numbersign
-sh "
-$ 556,775,115 2 0044 dollar
-Do "
-% 889,703,19 2 0045 percent
-& 667,718,15 2 0046 ampersand
-' 222,718 2 0047 quoteright
-( 333,733,207 3 0050 parenleft
-) 333,733,207 3 0051 parenright
-* 389,718 2 0052 asterisk
-+ 584,505 0 0053 plus
-, 278,106,147 0 0054 comma
-- 333,322 0 0055 hyphen
-hy "
-char173 "
-. 278,106 0 0056 period
-/ 278,737,19 2 0057 slash
-sl "
-0 556,703,19 2 0060 zero
-1 556,703 2 0061 one
-2 556,703 2 0062 two
-3 556,703,19 2 0063 three
-4 556,703 2 0064 four
-5 556,688,19 2 0065 five
-6 556,703,19 2 0066 six
-7 556,688 2 0067 seven
-8 556,703,19 2 0070 eight
-9 556,703,19 2 0071 nine
-: 278,516 0 0072 colon
-; 278,516,147 0 0073 semicolon
-< 584,495 0 0074 less
-= 584,390 0 0075 equal
-> 584,495 0 0076 greater
-? 556,727 2 0077 question
-@ 1015,737,19 2 0100 at
-at "
-A 667,718 2 0101 A
-B 667,718 2 0102 B
-C 722,737,19 2 0103 C
-D 722,718 2 0104 D
-E 667,718 2 0105 E
-F 611,718 2 0106 F
-G 778,737,19 2 0107 G
-H 722,718 2 0110 H
-I 278,718 2 0111 I
-J 500,718,19 2 0112 J
-K 667,718 2 0113 K
-L 556,718 2 0114 L
-M 833,718 2 0115 M
-N 722,718 2 0116 N
-O 778,737,19 2 0117 O
-P 667,718 2 0120 P
-Q 778,737,56 2 0121 Q
-R 722,718 2 0122 R
-S 667,737,19 2 0123 S
-T 611,718 2 0124 T
-U 722,718,19 2 0125 U
-V 667,718 2 0126 V
-W 944,718 2 0127 W
-X 667,718 2 0130 X
-Y 667,718 2 0131 Y
-Z 611,718 2 0132 Z
-[ 278,722,196 2 0133 bracketleft
-lB "
-\ 278,737,19 2 0134 backslash
-rs "
-] 278,722,196 2 0135 bracketright
-rB "
-a^ 333,734 2 0136 circumflex
-^ "
-_ 556,0,125 0 0137 underscore
-` 222,725 2 0140 quoteleft
-oq "
-a 556,538,15 0 0141 a
-b 556,718,15 2 0142 b
-c 500,538,15 0 0143 c
-d 556,718,15 2 0144 d
-e 556,538,15 0 0145 e
-f 278,728 2 0146 f
-g 556,538,220 1 0147 g
-h 556,718 2 0150 h
-i 222,718 2 0151 i
-j 222,718,210 3 0152 j
-k 500,718 2 0153 k
-l 222,718 2 0154 l
-m 833,538 0 0155 m
-n 556,538 0 0156 n
-o 556,538,14 0 0157 o
-p 556,538,207 1 0160 p
-q 556,538,207 1 0161 q
-r 333,538 0 0162 r
-s 500,538,15 0 0163 s
-t 278,669,7 2 0164 t
-u 556,523,15 0 0165 u
-v 500,523 0 0166 v
-w 722,523 0 0167 w
-x 500,523 0 0170 x
-y 500,523,214 1 0171 y
-z 500,523 0 0172 z
-lC 334,722,196 2 0173 braceleft
-{ "
-ba 260,737,19 2 0174 bar
-| "
-rC 334,722,196 2 0175 braceright
-} "
-a~ 333,722 2 0176 tilde
-~ "
-bq 222,106,149 0 0200 quotesinglbase
-Fo 556,446 0 0201 guillemotleft
-char171 "
-Fc 556,446 0 0202 guillemotright
-char187 "
-bu 350,517 0 0203 bullet
-Fn 556,737,207 3 0204 florin
-f/ 167,703,19 2 0205 fraction
-%0 1000,703,19 2 0206 perthousand
-dg 556,718,159 2 0207 dagger
-dd 556,718,159 2 0210 daggerdbl
-en 556,313 0 0211 endash
-em 1000,313 0 0212 emdash
-fi 500,728 2 0214 fi
-fl 500,728 2 0215 fl
-.i 278,523 0 0220 dotlessi
-ga 333,734 2 0222 grave
-a" 333,734 2 0223 hungarumlaut
-a. 333,706 2 0224 dotaccent
-ab 333,731 2 0225 breve
-ah 333,734 2 0226 caron
-ao 333,756 2 0227 ring
-ho 333,0,225 1 0230 ogonek
-lq 333,725 2 0231 quotedblleft
-rq 333,718 2 0232 quotedblright
-oe 944,538,15 0 0233 oe
-/l 222,718 2 0234 lslash
-Bq 333,106,149 0 0235 quotedblbase
-OE 1000,737,19 2 0236 OE
-/L 556,718 2 0237 Lslash
-r! 333,523,195 0 0241 exclamdown
-char161 "
-ct 556,623,115 0 0242 cent
-char162 "
-Po 556,718,16 2 0243 sterling
-char163 "
-Cs 556,603 0 0244 currency
-char164 "
-Ye 556,688 2 0245 yen
-char165 "
-bb 260,737,19 2 0246 brokenbar
-char166 "
-sc 556,737,191 2 0247 section
-char167 "
-ad 333,706 2 0250 dieresis
-char168 "
-co 737,737,19 2 0251 copyright
-char169 "
-Of 370,737 2 0252 ordfeminine
-char170 "
-fo 333,446 0 0253 guilsinglleft
-no 584,390 0 0254 logicalnot
-char172 "
-\- 584,289 0 0255 minus
-rg 737,737,19 2 0256 registered
-char174 "
-a- 333,684 2 0257 macron
-char175 "
-de 400,703 2 0260 degree
-char176 "
-char177 584,506 0 0261 plusminus
-S2 333,703 2 0262 twosuperior
-char178 "
-S3 333,703 2 0263 threesuperior
-char179 "
-aa 333,734 2 0264 acute
-char180 "
-char181 556,523,207 1 0265 mu
-ps 537,718,173 2 0266 paragraph
-char182 "
-char183 278,315 0 0267 periodcentered
-ac 333,0,225 1 0270 cedilla
-char184 "
-S1 333,703 2 0271 onesuperior
-char185 "
-Om 365,737 2 0272 ordmasculine
-char186 "
-fc 333,446 0 0273 guilsinglright
-14 834,703,19 2 0274 onequarter
-char188 "
-12 834,703,19 2 0275 onehalf
-char189 "
-34 834,703,19 2 0276 threequarters
-char190 "
-r? 611,525,201 0 0277 questiondown
-char191 "
-`A 667,929 2 0300 Agrave
-char192 "
-'A 667,929 2 0301 Aacute
-char193 "
-^A 667,929 2 0302 Acircumflex
-char194 "
-~A 667,917 2 0303 Atilde
-char195 "
-:A 667,901 2 0304 Adieresis
-char196 "
-oA 667,931 2 0305 Aring
-char197 "
-AE 1000,718 2 0306 AE
-char198 "
-,C 722,737,225 3 0307 Ccedilla
-char199 "
-`E 667,929 2 0310 Egrave
-char200 "
-'E 667,929 2 0311 Eacute
-char201 "
-^E 667,929 2 0312 Ecircumflex
-char202 "
-:E 667,901 2 0313 Edieresis
-char203 "
-`I 278,929 2 0314 Igrave
-char204 "
-'I 278,929 2 0315 Iacute
-char205 "
-^I 278,929 2 0316 Icircumflex
-char206 "
-:I 278,901 2 0317 Idieresis
-char207 "
--D 722,718 2 0320 Eth
-char208 "
-~N 722,917 2 0321 Ntilde
-char209 "
-`O 778,929,19 2 0322 Ograve
-char210 "
-'O 778,929,19 2 0323 Oacute
-char211 "
-^O 778,929,19 2 0324 Ocircumflex
-char212 "
-~O 778,917,19 2 0325 Otilde
-char213 "
-:O 778,901,19 2 0326 Odieresis
-char214 "
-char215 584,506 0 0327 multiply
-/O 778,737,19 2 0330 Oslash
-char216 "
-`U 722,929,19 2 0331 Ugrave
-char217 "
-'U 722,929,19 2 0332 Uacute
-char218 "
-^U 722,929,19 2 0333 Ucircumflex
-char219 "
-:U 722,901,19 2 0334 Udieresis
-char220 "
-'Y 667,929 2 0335 Yacute
-char221 "
-TP 667,718 2 0336 Thorn
-char222 "
-ss 611,728,15 2 0337 germandbls
-char223 "
-`a 556,734,15 2 0340 agrave
-char224 "
-'a 556,734,15 2 0341 aacute
-char225 "
-^a 556,734,15 2 0342 acircumflex
-char226 "
-~a 556,722,15 2 0343 atilde
-char227 "
-:a 556,706,15 2 0344 adieresis
-char228 "
-oa 556,756,15 2 0345 aring
-char229 "
-ae 889,538,15 0 0346 ae
-char230 "
-,c 500,538,225 1 0347 ccedilla
-char231 "
-`e 556,734,15 2 0350 egrave
-char232 "
-'e 556,734,15 2 0351 eacute
-char233 "
-^e 556,734,15 2 0352 ecircumflex
-char234 "
-:e 556,706,15 2 0353 edieresis
-char235 "
-`i 278,734 2 0354 igrave
-char236 "
-'i 278,734 2 0355 iacute
-char237 "
-^i 278,734 2 0356 icircumflex
-char238 "
-:i 278,706 2 0357 idieresis
-char239 "
-Sd 556,737,15 2 0360 eth
-char240 "
-~n 556,722 2 0361 ntilde
-char241 "
-`o 556,734,14 2 0362 ograve
-char242 "
-'o 556,734,14 2 0363 oacute
-char243 "
-^o 556,734,14 2 0364 ocircumflex
-char244 "
-~o 556,722,14 2 0365 otilde
-char245 "
-:o 556,706,14 2 0366 odieresis
-char246 "
-char247 584,524,19 0 0367 divide
-/o 611,545,22 0 0370 oslash
-char248 "
-`u 556,734,15 2 0371 ugrave
-char249 "
-'u 556,734,15 2 0372 uacute
-char250 "
-^u 556,734,15 2 0373 ucircumflex
-char251 "
-:u 556,706,15 2 0374 udieresis
-char252 "
-'y 500,734,214 3 0375 yacute
-char253 "
-Tp 556,718,207 3 0376 thorn
-char254 "
-:y 500,706,214 3 0377 ydieresis
-char255 "
diff --git a/devps/NB b/devps/NB
deleted file mode 100644
index 2805367ab..000000000
--- a/devps/NB
+++ /dev/null
@@ -1,446 +0,0 @@
-name NB
-internalname NewCenturySchlbk-Bold
-spacewidth 287
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -74
-A w -74
-A v -74
-A ' -74
-A Y -92
-A W -74
-A V -92
-A T -55
-F . -111
-F , -111
-F A -74
-L y -55
-L ' -55
-L Y -92
-L W -74
-L V -92
-L T -55
-P . -129
-P , -129
-P A -74
-R y -18
-R Y -37
-R W -37
-R V -37
-T y -52
-T w -71
-T u -71
-T ; -55
-T s -62
-T r -62
-T . -92
-T o -92
-T i -25
-T - -92
-T hy -92
-T char173 -92
-T e -92
-T , -92
-T : -55
-T c -81
-T a -62
-T A -55
-V y -92
-V u -74
-V ; -74
-V r -74
-V . -129
-V o -92
-V i -44
-V - -92
-V hy -92
-V char173 -92
-V e -92
-V : -74
-V a -92
-V A -92
-W y -74
-W u -55
-W ; -37
-W r -55
-W . -111
-W o -55
-W i -37
-W - -37
-W hy -37
-W char173 -37
-W e -55
-W , -111
-W : -37
-W a -74
-W A -74
-Y v -81
-Y u -92
-Y ; -92
-Y q -111
-Y . -111
-Y p -81
-Y o -111
-Y i -44
-Y - -111
-Y hy -111
-Y char173 -111
-Y e -111
-Y , -111
-Y : -92
-Y a -111
-Y A -92
-f ' 94
-1 1 -55
-` ` -18
-` oq -18
-oq ` -18
-oq oq -18
-' t -18
-' s -37
-' ' -18
-r ' 55
-r . -74
-r - -18
-r hy -18
-r char173 -18
-r , -74
-v . -111
-v , -111
-w . -92
-w , -92
-y . -111
-y , -111
-charset
-ha 606,722 2 0000 asciicircum
-ti 606,347 0 0001 asciitilde
-vS 667,970,15 2 0002 Scaron
-vZ 667,970 2 0003 Zcaron
-vs 500,723,15 2 0004 scaron
-vz 537,723 2 0005 zcaron
-:Y 722,940 2 0006 Ydieresis
-tm 1000,722 2 0007 trademark
-aq 241,737 2 0010 quotesingle
-space 287 0 0040
-! 296,737,15 2 0041 exclam
-" 333,737 2 0042 quotedbl
-# 574,705 2 0043 numbersign
-sh "
-$ 574,801,140 2 0044 dollar
-Do "
-% 833,704,18 2 0045 percent
-& 852,737,15 2 0046 ampersand
-' 241,737 2 0047 quoteright
-( 389,737,122 2 0050 parenleft
-) 389,737,122 2 0051 parenright
-* 500,738 2 0052 asterisk
-+ 606,514 0 0053 plus
-, 278,169,189 0 0054 comma
-- 333,309 0 0055 hyphen
-hy "
-char173 "
-. 278,172,15 0 0056 period
-/ 278,737,15 2 0057 slash
-sl "
-0 574,705,15 2 0060 zero
-1 574,705 2 0061 one
-2 574,705,4 2 0062 two
-3 574,705,15 2 0063 three
-4 574,705 2 0064 four
-5 574,705,15 2 0065 five
-6 574,705,15 2 0066 six
-7 574,705,15 2 0067 seven
-8 574,705,15 2 0070 eight
-9 574,705,15 2 0071 nine
-: 278,485,15 0 0072 colon
-; 278,485,189 0 0073 semicolon
-< 606,538,13 0 0074 less
-= 606,399 0 0075 equal
-> 606,538,13 0 0076 greater
-? 500,737,15 2 0077 question
-@ 747,737,15 2 0100 at
-at "
-A 759,737 2 0101 A
-B 778,722 2 0102 B
-C 778,737,15 2 0103 C
-D 833,722 2 0104 D
-E 759,722 2 0105 E
-F 722,722 2 0106 F
-G 833,737,15 2 0107 G
-H 870,722 2 0110 H
-I 444,722 2 0111 I
-J 648,722,15 2 0112 J
-K 815,722 2 0113 K
-L 722,722 2 0114 L
-M 981,722 2 0115 M
-N 833,722,8 2 0116 N
-O 833,737,15 2 0117 O
-P 759,722 2 0120 P
-Q 833,737,189 2 0121 Q
-R 815,722,15 2 0122 R
-S 667,737,15 2 0123 S
-T 722,722 2 0124 T
-U 833,722,15 2 0125 U
-V 759,722,15 2 0126 V
-W 981,722,15 2 0127 W
-X 722,722 2 0130 X
-Y 722,722 2 0131 Y
-Z 667,722 2 0132 Z
-[ 389,722,113 2 0133 bracketleft
-lB "
-\ 606,737 2 0134 backslash
-rs "
-] 389,722,113 2 0135 bracketright
-rB "
-a^ 333,723 2 0136 circumflex
-^ "
-_ 500,0,148 0 0137 underscore
-` 241,747 2 0140 quoteleft
-oq "
-a 611,485,15 0 0141 a
-b 648,737,15 2 0142 b
-c 556,485,15 0 0143 c
-d 667,737,15 2 0144 d
-e 574,485,15 0 0145 e
-f 389,737 2 0146 f
-g 611,536,205 1 0147 g
-h 685,737 2 0150 h
-i 370,737 2 0151 i
-j 352,737,205 3 0152 j
-k 667,737 2 0153 k
-l 352,737 2 0154 l
-m 963,485 0 0155 m
-n 685,485 0 0156 n
-o 611,485,15 0 0157 o
-p 667,485,205 1 0160 p
-q 648,485,205 1 0161 q
-r 519,485 0 0162 r
-s 500,485,15 0 0163 s
-t 426,675,15 2 0164 t
-u 685,475,15 0 0165 u
-v 611,475,8 0 0166 v
-w 889,475,8 0 0167 w
-x 611,475 0 0170 x
-y 611,475,207 1 0171 y
-z 537,475 0 0172 z
-lC 389,723,111 2 0173 braceleft
-{ "
-ba 606,737 2 0174 bar
-| "
-rC 389,723,111 2 0175 braceright
-} "
-a~ 333,704 2 0176 tilde
-~ "
-bq 241,169,189 0 0200 quotesinglbase
-Fo 500,405 0 0201 guillemotleft
-char171 "
-Fc 500,405 0 0202 guillemotright
-char187 "
-bu 606,511 0 0203 bullet
-Fn 574,737,205 3 0204 florin
-f/ 167,705 2 0205 fraction
-%0 1000,694,27 2 0206 perthousand
-dg 500,737,88 2 0207 dagger
-dd 500,736,89 2 0210 daggerdbl
-en 500,296 0 0211 endash
-em 1000,296 0 0212 emdash
-fi 685,737 2 0214 fi
-fl 685,737 2 0215 fl
-.i 370,475 0 0220 dotlessi
-ga 333,734 2 0222 grave
-a" 333,737 2 0223 hungarumlaut
-a. 333,693 2 0224 dotaccent
-ab 333,712 2 0225 breve
-ah 333,723 2 0226 caron
-ao 333,760 2 0227 ring
-ho 333,0,163 0 0230 ogonek
-lq 481,747 2 0231 quotedblleft
-rq 481,737 2 0232 quotedblright
-oe 907,485,15 0 0233 oe
-/l 352,737 2 0234 lslash
-Bq 481,169,189 0 0235 quotedblbase
-OE 1000,722 2 0236 OE
-/L 722,722 2 0237 Lslash
-r! 296,547,205 1 0241 exclamdown
-char161 "
-ct 574,566,108 0 0242 cent
-char162 "
-Po 574,705,15 2 0243 sterling
-char163 "
-Cs 574,591 0 0244 currency
-char164 "
-Ye 574,705 2 0245 yen
-char165 "
-bb 606,737 2 0246 brokenbar
-char166 "
-sc 500,737,86 2 0247 section
-char167 "
-ad 333,693 2 0250 dieresis
-char168 "
-co 747,737,15 2 0251 copyright
-char169 "
-Of 367,737 2 0252 ordfeminine
-char170 "
-fo 333,405 0 0253 guilsinglleft
-no 606,399 0 0254 logicalnot
-char172 "
-\- 606,302 0 0255 minus
-rg 747,737,15 2 0256 registered
-char174 "
-a- 333,663 0 0257 macron
-char175 "
-de 400,705 2 0260 degree
-char176 "
-char177 606,514 0 0261 plusminus
-S2 344,705 2 0262 twosuperior
-char178 "
-S3 344,705 2 0263 threesuperior
-char179 "
-aa 333,737 2 0264 acute
-char180 "
-char181 685,475,205 1 0265 mu
-ps 747,722 2 0266 paragraph
-char182 "
-char183 278,338 0 0267 periodcentered
-ac 333,0,221 1 0270 cedilla
-char184 "
-S1 344,705 2 0271 onesuperior
-char185 "
-Om 367,737 2 0272 ordmasculine
-char186 "
-fc 333,408 0 0273 guilsinglright
-14 861,705 2 0274 onequarter
-char188 "
-12 861,705,2 2 0275 onehalf
-char189 "
-34 861,705 2 0276 threequarters
-char190 "
-r? 500,547,205 1 0277 questiondown
-char191 "
-`A 759,981 2 0300 Agrave
-char192 "
-'A 759,984 2 0301 Aacute
-char193 "
-^A 759,970 2 0302 Acircumflex
-char194 "
-~A 759,951 2 0303 Atilde
-char195 "
-:A 759,940 2 0304 Adieresis
-char196 "
-oA 759,1007 2 0305 Aring
-char197 "
-AE 981,722 2 0306 AE
-char198 "
-,C 778,737,221 3 0307 Ccedilla
-char199 "
-`E 759,981 2 0310 Egrave
-char200 "
-'E 759,984 2 0311 Eacute
-char201 "
-^E 759,970 2 0312 Ecircumflex
-char202 "
-:E 759,940 2 0313 Edieresis
-char203 "
-`I 444,981 2 0314 Igrave
-char204 "
-'I 444,984 2 0315 Iacute
-char205 "
-^I 444,970 2 0316 Icircumflex
-char206 "
-:I 444,940 2 0317 Idieresis
-char207 "
--D 833,722 2 0320 Eth
-char208 "
-~N 833,951,8 2 0321 Ntilde
-char209 "
-`O 833,981,15 2 0322 Ograve
-char210 "
-'O 833,984,15 2 0323 Oacute
-char211 "
-^O 833,970,15 2 0324 Ocircumflex
-char212 "
-~O 833,951,15 2 0325 Otilde
-char213 "
-:O 833,940,15 2 0326 Odieresis
-char214 "
-char215 606,504 0 0327 multiply
-/O 833,768,60 2 0330 Oslash
-char216 "
-`U 833,981,15 2 0331 Ugrave
-char217 "
-'U 833,984,15 2 0332 Uacute
-char218 "
-^U 833,970,15 2 0333 Ucircumflex
-char219 "
-:U 833,940,15 2 0334 Udieresis
-char220 "
-'Y 722,984 2 0335 Yacute
-char221 "
-TP 759,722 2 0336 Thorn
-char222 "
-ss 611,737,15 2 0337 germandbls
-char223 "
-`a 611,734,15 2 0340 agrave
-char224 "
-'a 611,737,15 2 0341 aacute
-char225 "
-^a 611,723,15 2 0342 acircumflex
-char226 "
-~a 611,704,15 2 0343 atilde
-char227 "
-:a 611,693,15 2 0344 adieresis
-char228 "
-oa 611,760,15 2 0345 aring
-char229 "
-ae 870,485,15 0 0346 ae
-char230 "
-,c 556,485,221 1 0347 ccedilla
-char231 "
-`e 574,734,15 2 0350 egrave
-char232 "
-'e 574,737,15 2 0351 eacute
-char233 "
-^e 574,723,15 2 0352 ecircumflex
-char234 "
-:e 574,693,15 2 0353 edieresis
-char235 "
-`i 370,734 2 0354 igrave
-char236 "
-'i 370,737 2 0355 iacute
-char237 "
-^i 370,723 2 0356 icircumflex
-char238 "
-:i 370,693 2 0357 idieresis
-char239 "
-Sd 611,737,15 2 0360 eth
-char240 "
-~n 685,704 2 0361 ntilde
-char241 "
-`o 611,734,15 2 0362 ograve
-char242 "
-'o 611,737,15 2 0363 oacute
-char243 "
-^o 611,723,15 2 0364 ocircumflex
-char244 "
-~o 611,704,15 2 0365 otilde
-char245 "
-:o 611,693,15 2 0366 odieresis
-char246 "
-char247 606,514 0 0367 divide
-/o 611,565,111 0 0370 oslash
-char248 "
-`u 685,734,15 2 0371 ugrave
-char249 "
-'u 685,737,15 2 0372 uacute
-char250 "
-^u 685,723,15 2 0373 ucircumflex
-char251 "
-:u 685,693,15 2 0374 udieresis
-char252 "
-'y 611,737,207 3 0375 yacute
-char253 "
-Tp 667,675,205 3 0376 thorn
-char254 "
-:y 611,693,207 3 0377 ydieresis
-char255 "
diff --git a/devps/NBI b/devps/NBI
deleted file mode 100644
index 3471b41e7..000000000
--- a/devps/NBI
+++ /dev/null
@@ -1,447 +0,0 @@
-name NBI
-internalname NewCenturySchlbk-BoldItalic
-slant 16
-spacewidth 287
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -50
-A w -20
-A v -20
-A ' -74
-A Y -74
-A W -92
-A V -111
-A T -74
-F . -129
-F f -18
-F , -129
-F A -74
-L y -55
-L ' -55
-L Y -55
-L W -55
-L V -74
-L T -55
-P . -129
-P , -129
-P A -92
-R y -50
-R Y -20
-R W -20
-R V -20
-R T -20
-T y -89
-T w -89
-T u -89
-T ; -72
-T s -89
-T r -89
-T . -111
-T o -109
-T i -71
-T - -129
-T hy -129
-T char173 -129
-T e -109
-T , -111
-T : -62
-T c -89
-T a -74
-T A -50
-V y -89
-V u -89
-V ; -74
-V r -109
-V . -111
-V o -129
-V i -72
-V - -74
-V hy -74
-V char173 -74
-V e -129
-V , -111
-V : -74
-V a -129
-V A -129
-W y -74
-W u -74
-W ; -37
-W r -74
-W . -55
-W o -74
-W i -74
-W - -37
-W hy -37
-W char173 -37
-W e -74
-W , -55
-W : -37
-W a -74
-W A -89
-Y v -129
-Y u -129
-Y ; -111
-Y q -129
-Y . -129
-Y p -129
-Y o -129
-Y i -90
-Y - -129
-Y hy -129
-Y char173 -129
-Y e -129
-Y , -129
-Y : -111
-Y a -129
-Y A -111
-f ' 74
-1 1 -74
-` ` -18
-` oq -18
-oq ` -18
-oq oq -18
-' t -37
-' s -37
-' ' -18
-r ' 55
-r . -129
-r , -129
-v . -37
-v , -37
-w . -37
-w , -37
-y . -55
-y , -55
-charset
-ha 606,722,0,0,-2 2 0000 asciicircum
-ti 606,353,0,0,-1 0 0001 asciitilde
-vS 685,954,15,31,49,31 2 0002 Scaron
-vZ 704,954,0,61,79,61 2 0003 Zcaron
-vs 481,709,15,46,48,46 2 0004 scaron
-vz 519,709,15,27,69,27 2 0005 zcaron
-:Y 704,930,0,123,35,109 2 0006 Ydieresis
-tm 950,722,0,82,8,82 2 0007 trademark
-aq 287,736,0,32,-50,32 2 0010 quotesingle
-space 287 0 0040
-! 333,737,15,53,47,53 2 0041 exclam
-" 400,737,0,157,-50,109 2 0042 quotedbl
-# 574,705,0,9,9,9 2 0043 numbersign
-sh "
-$ 574,799,143,35,47,35 2 0044 dollar
-Do "
-% 889,721,34,0,-1 2 0045 percent
-& 889,737,15,0,19 2 0046 ampersand
-' 259,739,0,92,-20,92 2 0047 quoteright
-( 407,740,123,95,-21,95 2 0050 parenleft
-) 407,740,123,0,120 2 0051 parenright
-* 500,704,0,22,18,22 2 0052 asterisk
-+ 606,505,0,0,9 0 0053 plus
-, 287,159,190,0,98 0 0054 comma
-- 333,297,0,0,40 0 0055 hyphen
-hy "
-char173 "
-. 287,159,15,0,38 0 0056 period
-/ 278,737,15,83,75,83 2 0057 slash
-sl "
-0 574,705,15,29,29,29 2 0060 zero
-1 574,705,0,0,25 2 0061 one
-2 574,705,0,14,90,14 2 0062 two
-3 574,705,15,14,55,14 2 0063 three
-4 574,705,0,20,63,20 2 0064 four
-5 574,705,15,49,50,49 2 0065 five
-6 574,705,15,49,20,49 2 0066 six
-7 574,705,15,69,-14,69 2 0067 seven
-8 574,705,15,27,50,27 2 0070 eight
-9 574,705,15,20,49,20 2 0071 nine
-: 287,477,15,20,52,20 0 0072 colon
-; 287,477,190,20,89,20 0 0073 semicolon
-< 606,524,14,0,36 0 0074 less
-= 606,402,0,0,9 0 0075 equal
-> 606,524,14,0,12 0 0076 greater
-? 481,737,15,21,-29,21 2 0077 question
-@ 747,737,15,25,28,25 2 0100 at
-at "
-A 741,737,0,25,125,25 2 0101 A
-B 759,722,0,11,100,11 2 0102 B
-C 759,737,15,50,15,50 2 0103 C
-D 833,722,0,13,99,13 2 0104 D
-E 741,722,0,37,91,37 2 0105 E
-F 704,722,0,72,91,72 2 0106 F
-G 815,737,15,37,16,37 2 0107 G
-H 870,722,0,92,91,92 2 0110 H
-I 444,722,0,92,91,92 2 0111 I
-J 667,722,15,101,59,101 2 0112 J
-K 778,722,0,104,91,104 2 0113 K
-L 704,722,0,16,91,16 2 0114 L
-M 944,722,0,94,74,94 2 0115 M
-N 852,722,16,110,107,109 2 0116 N
-O 833,737,15,14,14,14 2 0117 O
-P 741,722,0,40,88,40 2 0120 P
-Q 833,737,186,13,15,13 2 0121 Q
-R 796,722,15,5,91,5 2 0122 R
-S 685,737,15,31,49,31 2 0123 S
-T 722,722,0,90,6,90 2 0124 T
-U 833,722,15,112,-38,109 2 0125 U
-V 741,722,15,111,18,109 2 0126 V
-W 944,722,15,100,10,100 2 0127 W
-X 741,722,0,120,122,109 2 0130 X
-Y 704,722,0,123,35,109 2 0131 Y
-Z 704,722,0,61,79,61 2 0132 Z
-[ 407,737,110,75,81,75 2 0133 bracketleft
-lB "
-\ 606,737,0,0,-31 2 0134 backslash
-rs "
-] 407,737,110,57,99,57 2 0135 bracketright
-rB "
-a^ 333,709,0,82,27,82 2 0136 circumflex
-^ "
-_ 500,0,129,50,50,50 0 0137 underscore
-` 259,747,0,61,11,61 2 0140 quoteleft
-oq "
-a 667,477,15,29,35,29 0 0141 a
-b 611,737,15,0,22 2 0142 b
-c 537,477,15,0,47 0 0143 c
-d 667,737,15,46,50,46 2 0144 d
-e 519,477,15,9,52,9 0 0145 e
-f 389,737,205,211,98,109 3 0146 f
-g 611,529,205,41,116,41 1 0147 g
-h 685,737,15,2,50,2 2 0150 h
-i 389,737,15,4,22,4 2 0151 i
-j 370,737,205,61,220,61 3 0152 j
-k 648,737,15,0,55 2 0153 k
-l 389,737,15,31,24,31 2 0154 l
-m 944,477,15,26,41,26 0 0155 m
-n 685,477,15,7,47,7 0 0156 n
-o 574,477,15,16,40,16 0 0157 o
-p 648,477,205,0,168 1 0160 p
-q 630,477,205,7,50,7 1 0161 q
-r 519,486,0,55,47,55 0 0162 r
-s 481,477,15,6,48,6 0 0163 s
-t 407,650,15,47,26,47 2 0164 t
-u 685,477,15,4,12,4 0 0165 u
-v 556,477,15,0,18 0 0166 v
-w 833,477,15,5,28,5 0 0167 w
-x 574,477,15,47,99,47 0 0170 x
-y 519,477,205,23,116,23 1 0171 y
-z 519,477,15,2,69,2 0 0172 z
-lC 407,738,115,45,-2,45 2 0173 braceleft
-{ "
-ba 606,737,0,0,-212 2 0174 bar
-| "
-rC 407,738,115,0,80 2 0175 braceright
-} "
-a~ 333,683,0,121,16,109 2 0176 tilde
-~ "
-bq 259,159,191,0,93 0 0200 quotesinglbase
-Fo 481,409,0,0,85 0 0201 guillemotleft
-char171 "
-Fc 481,408,0,25,56,25 0 0202 guillemotright
-char187 "
-bu 606,537,0,0,-59 0 0203 bullet
-Fn 574,737,205,64,77,64 3 0204 florin
-f/ 167,705,15,216,216,109 2 0205 fraction
-%0 1167,721,34,34,24,34 2 0206 perthousand
-dg 500,737,146,60,0,60 2 0207 dagger
-dd 500,737,147,64,98,64 2 0210 daggerdbl
-en 500,286,0,68,68,68 0 0211 endash
-em 1000,286,0,68,68,68 0 0212 emdash
-fi 685,737,205,11,120,11 3 0214 fi
-fl 685,737,205,46,120,46 3 0215 fl
-.i 389,477,15,14,12,14 0 0220 dotlessi
-ga 333,719,0,11,-24,11 2 0222 grave
-a" 333,719,0,189,27,109 2 0223 hungarumlaut
-a. 333,685,0,5,-95,5 2 0224 dotaccent
-ab 333,698,0,107,-17,107 2 0225 breve
-ah 333,709,0,120,-10,109 2 0226 caron
-ao 333,745,0,149,-167,109 2 0227 ring
-ho 333,0,155,0,-18 0 0230 ogonek
-lq 481,747,0,91,-2,91 2 0231 quotedblleft
-rq 481,739,0,102,-11,102 2 0232 quotedblright
-oe 852,477,15,8,55,8 0 0233 oe
-/l 389,737,15,58,24,58 2 0234 lslash
-Bq 481,159,191,0,120 0 0235 quotedblbase
-OE 963,722,0,67,31,67 2 0236 OE
-/L 704,722,0,16,91,16 2 0237 Lslash
-r! 333,544,205,6,89,6 1 0241 exclamdown
-char161 "
-ct 574,600,124,0,20 0 0242 cent
-char162 "
-Po 574,705,15,42,68,42 2 0243 sterling
-char163 "
-Cs 574,612,0,22,10,22 0 0244 currency
-char164 "
-Ye 574,705,0,111,27,109 2 0245 yen
-char165 "
-bb 606,737,0,0,-212 2 0246 brokenbar
-char166 "
-sc 500,737,145,55,90,55 2 0247 section
-char167 "
-ad 333,685,0,109,16,109 2 0250 dieresis
-char168 "
-co 747,737,15,26,27,26 2 0251 copyright
-char169 "
-Of 412,737,0,87,21,87 2 0252 ordfeminine
-char170 "
-fo 278,409,0,0,85 0 0253 guilsinglleft
-no 606,402,0,0,9 0 0254 logicalnot
-char172 "
-\- 606,304,0,0,9 0 0255 minus
-rg 747,737,15,26,27,26 2 0256 registered
-char174 "
-a- 333,649,0,104,18,104 2 0257 macron
-char175 "
-de 400,705,0,20,-20,20 2 0260 degree
-char176 "
-char177 606,505,0,0,9 0 0261 plusminus
-S2 344,705,0,66,66,66 2 0262 twosuperior
-char178 "
-S3 344,705,0,54,54,54 2 0263 threesuperior
-char179 "
-aa 333,719,0,88,-73,88 2 0264 acute
-char180 "
-char181 685,477,205,4,140,4 1 0265 mu
-ps 650,737,0,61,-17,61 2 0266 paragraph
-char182 "
-char183 287,342,0,0,9 0 0267 periodcentered
-ac 333,3,220,0,137 1 0270 cedilla
-char184 "
-S1 344,705,0,29,29,29 2 0271 onesuperior
-char185 "
-Om 356,737,0,77,21,77 2 0272 ordmasculine
-char186 "
-fc 278,408,0,25,56,25 0 0273 guilsinglright
-14 861,705,15,15,29,15 2 0274 onequarter
-char188 "
-12 861,705,15,46,29,46 2 0275 onehalf
-char189 "
-34 861,705,15,15,54,15 2 0276 threequarters
-char190 "
-r? 481,544,205,0,49 1 0277 questiondown
-char191 "
-`A 741,964,0,25,125,25 2 0300 Agrave
-char192 "
-'A 741,964,0,25,125,25 2 0301 Aacute
-char193 "
-^A 741,954,0,25,125,25 2 0302 Acircumflex
-char194 "
-~A 741,928,0,25,125,25 2 0303 Atilde
-char195 "
-:A 741,930,0,25,125,25 2 0304 Adieresis
-char196 "
-oA 741,990,0,25,125,25 2 0305 Aring
-char197 "
-AE 889,722,0,64,131,64 2 0306 AE
-char198 "
-,C 759,737,220,50,15,50 3 0307 Ccedilla
-char199 "
-`E 741,964,0,37,91,37 2 0310 Egrave
-char200 "
-'E 741,964,0,37,91,37 2 0311 Eacute
-char201 "
-^E 741,954,0,37,91,37 2 0312 Ecircumflex
-char202 "
-:E 741,930,0,37,91,37 2 0313 Edieresis
-char203 "
-`I 444,964,0,92,91,92 2 0314 Igrave
-char204 "
-'I 444,964,0,92,91,92 2 0315 Iacute
-char205 "
-^I 444,954,0,92,91,92 2 0316 Icircumflex
-char206 "
-:I 444,930,0,104,91,104 2 0317 Idieresis
-char207 "
--D 833,722,0,13,99,13 2 0320 Eth
-char208 "
-~N 852,928,16,110,107,109 2 0321 Ntilde
-char209 "
-`O 833,964,15,14,14,14 2 0322 Ograve
-char210 "
-'O 833,964,15,14,14,14 2 0323 Oacute
-char211 "
-^O 833,954,15,14,14,14 2 0324 Ocircumflex
-char212 "
-~O 833,928,15,14,14,14 2 0325 Otilde
-char213 "
-:O 833,930,15,14,14,14 2 0326 Odieresis
-char214 "
-char215 606,507,0,0,9 0 0327 multiply
-/O 833,775,82,14,33,14 2 0330 Oslash
-char216 "
-`U 833,964,15,112,-38,109 2 0331 Ugrave
-char217 "
-'U 833,964,15,112,-38,109 2 0332 Uacute
-char218 "
-^U 833,954,15,112,-38,109 2 0333 Ucircumflex
-char219 "
-:U 833,930,15,112,-38,109 2 0334 Udieresis
-char220 "
-'Y 704,964,0,123,35,109 2 0335 Yacute
-char221 "
-TP 741,722,0,0,88 2 0336 Thorn
-char222 "
-ss 574,737,205,0,116 3 0337 germandbls
-char223 "
-`a 667,719,15,29,35,29 2 0340 agrave
-char224 "
-'a 667,719,15,29,35,29 2 0341 aacute
-char225 "
-^a 667,709,15,29,35,29 2 0342 acircumflex
-char226 "
-~a 667,683,15,29,35,29 2 0343 atilde
-char227 "
-:a 667,685,15,29,35,29 2 0344 adieresis
-char228 "
-oa 667,745,15,29,35,29 2 0345 aring
-char229 "
-ae 815,477,15,9,69,9 0 0346 ae
-char230 "
-,c 537,477,220,0,47 1 0347 ccedilla
-char231 "
-`e 519,719,15,9,52,9 2 0350 egrave
-char232 "
-'e 519,719,15,9,52,9 2 0351 eacute
-char233 "
-^e 519,709,15,9,52,9 2 0352 ecircumflex
-char234 "
-:e 519,685,15,26,52,26 2 0353 edieresis
-char235 "
-`i 389,719,15,14,12,14 2 0354 igrave
-char236 "
-'i 389,719,15,60,12,60 2 0355 iacute
-char237 "
-^i 389,709,15,44,12,44 2 0356 icircumflex
-char238 "
-:i 389,685,15,71,12,71 2 0357 idieresis
-char239 "
-Sd 574,737,15,16,40,16 2 0360 eth
-char240 "
-~n 685,683,15,7,47,7 2 0361 ntilde
-char241 "
-`o 574,719,15,16,40,16 2 0362 ograve
-char242 "
-'o 574,719,15,16,40,16 2 0363 oacute
-char243 "
-^o 574,709,15,16,40,16 2 0364 ocircumflex
-char244 "
-~o 574,683,15,16,40,16 2 0365 otilde
-char245 "
-:o 574,685,15,16,40,16 2 0366 odieresis
-char246 "
-char247 606,505,0,0,9 0 0367 divide
-/o 574,578,126,16,40,16 0 0370 oslash
-char248 "
-`u 685,719,15,4,12,4 2 0371 ugrave
-char249 "
-'u 685,719,15,4,12,4 2 0372 uacute
-char250 "
-^u 685,709,15,4,12,4 2 0373 ucircumflex
-char251 "
-:u 685,685,15,4,12,4 2 0374 udieresis
-char252 "
-'y 519,719,205,23,116,23 3 0375 yacute
-char253 "
-Tp 648,650,205,0,168 3 0376 thorn
-char254 "
-:y 519,685,205,23,116,23 3 0377 ydieresis
-char255 "
diff --git a/devps/NI b/devps/NI
deleted file mode 100644
index eb250d77d..000000000
--- a/devps/NI
+++ /dev/null
@@ -1,447 +0,0 @@
-name NI
-internalname NewCenturySchlbk-Italic
-slant 16
-spacewidth 278
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -54
-A w -20
-A v -20
-A ' -74
-A Y -74
-A W -92
-A V -111
-A T -74
-F . -129
-F f -18
-F , -129
-F A -74
-L y -55
-L ' -55
-L Y -55
-L W -55
-L V -74
-L T -55
-P . -129
-P , -129
-P A -92
-R y -54
-R Y -74
-R W -55
-R V -20
-R T -20
-T y -89
-T w -89
-T u -89
-T ; -92
-T s -89
-T r -89
-T . -111
-T o -89
-T i -71
-T - -129
-T hy -129
-T char173 -129
-T e -89
-T , -111
-T : -92
-T c -89
-T a -74
-T A -18
-V y -109
-V u -109
-V ; -74
-V r -109
-V . -111
-V o -129
-V i -62
-V - -74
-V hy -74
-V char173 -74
-V e -129
-V , -140
-V : -74
-V a -129
-V A -111
-W y -74
-W u -74
-W ; -37
-W r -74
-W . -55
-W o -74
-W i -74
-W - -37
-W hy -37
-W char173 -37
-W e -74
-W , -55
-W : -37
-W a -74
-W A -74
-Y v -99
-Y u -99
-Y ; -111
-Y q -129
-Y . -129
-Y p -129
-Y o -129
-Y i -70
-Y - -129
-Y hy -129
-Y char173 -129
-Y e -129
-Y , -129
-Y : -111
-Y a -129
-Y A -74
-f ' 94
-1 1 -74
-` ` -18
-` oq -18
-oq ` -18
-oq oq -18
-' t -37
-' s -37
-' ' -18
-r ' 55
-r . -129
-r , -129
-v . -37
-v , -37
-w . -37
-w , -37
-y . -55
-y , -55
-charset
-ha 606,722,0,0,-2 2 0000 asciicircum
-ti 606,335,0,0,9 0 0001 asciitilde
-vS 667,944,15,15,50,15 2 0002 Scaron
-vZ 667,944,0,50,75,50 2 0003 Zcaron
-vs 444,688,15,40,51,40 2 0004 scaron
-vz 463,688,15,30,83,30 2 0005 zcaron
-:Y 685,900,0,123,18,107 2 0006 Ydieresis
-tm 950,722,0,71,2,71 2 0007 trademark
-aq 278,737,0,34,-64,34 2 0010 quotesingle
-space 278 0 0040
-! 333,737,15,33,20,33 2 0041 exclam
-" 400,737,0,45,-50,45 2 0042 quotedbl
-# 556,705,0,18,17,18 2 0043 numbersign
-sh "
-$ 556,800,133,30,47,30 2 0044 dollar
-Do "
-% 833,705,17,9,4,9 2 0045 percent
-& 852,737,15,0,26 2 0046 ampersand
-' 204,737,0,76,11,76 2 0047 quoteright
-( 333,737,124,116,10,107 2 0050 parenleft
-) 333,737,124,0,143 2 0051 parenright
-* 500,705,0,2,16,2 2 0052 asterisk
-+ 606,504,0,0,13 0 0053 plus
-, 278,109,165,0,89 0 0054 comma
-- 333,273,0,0,18 0 0055 hyphen
-hy "
-char173 "
-. 278,109,15,0,33 0 0056 period
-/ 606,737,102,0,-90 2 0057 slash
-sl "
-0 556,705,15,21,21,21 2 0060 zero
-1 556,705 2 0061 one
-2 556,705,0,2,85,2 2 0062 two
-3 556,705,15,0,52 2 0063 three
-4 556,705,0,6,58,6 2 0064 four
-5 556,705,15,34,46,34 2 0065 five
-6 556,705,15,41,14,41 2 0066 six
-7 556,705,15,55,-19,55 2 0067 seven
-8 556,705,15,21,42,21 2 0070 eight
-9 556,705,15,13,43,13 2 0071 nine
-: 278,466,15,26,8,26 0 0072 colon
-; 278,466,165,33,64,33 0 0073 semicolon
-< 606,518,10,0,16 0 0074 less
-= 606,381,0,0,14 0 0075 equal
-> 606,518,10,6,-3,6 0 0076 greater
-? 444,737,15,23,-52,23 2 0077 question
-@ 747,737,15,31,22,31 2 0100 at
-at "
-A 704,737,0,14,132,14 2 0101 A
-B 722,722,0,0,81 2 0102 B
-C 722,737,15,41,10,41 2 0103 C
-D 778,722,0,7,88,7 2 0104 D
-E 722,722,0,29,87,29 2 0105 E
-F 667,722,0,81,84,81 2 0106 F
-G 778,737,15,35,11,35 2 0107 G
-H 833,722,0,84,88,84 2 0110 H
-I 407,722,0,74,83,74 2 0111 I
-J 611,722,17,85,63,85 2 0112 J
-K 741,722,0,123,90,107 2 0113 K
-L 667,722,0,13,87,13 2 0114 L
-M 944,722,0,79,76,79 2 0115 M
-N 815,722,17,94,98,94 2 0116 N
-O 778,737,15,7,10,7 2 0117 O
-P 667,722,0,46,83,46 2 0120 P
-Q 778,737,190,7,10,7 2 0121 Q
-R 741,722,17,0,91 2 0122 R
-S 667,737,15,15,50,15 2 0123 S
-T 685,722,0,91,10,91 2 0124 T
-U 815,722,15,95,-43,95 2 0125 U
-V 704,722,15,118,14,107 2 0126 V
-W 926,722,15,97,-3,97 2 0127 W
-X 704,722,0,116,123,107 2 0130 X
-Y 685,722,0,123,18,107 2 0131 Y
-Z 667,722,0,50,75,50 2 0132 Z
-[ 333,737,109,127,83,107 2 0133 bracketleft
-lB "
-\ 606,737,0,0,-39 2 0134 backslash
-rs "
-] 333,737,109,76,133,76 2 0135 bracketright
-rB "
-a^ 333,688,0,48,13,48 2 0136 circumflex
-^ "
-_ 500,0,123,50,50,50 0 0137 underscore
-` 204,749,0,98,-11,98 2 0140 quoteleft
-oq "
-a 574,466,15,0,49 0 0141 a
-b 556,737,15,0,18 2 0142 b
-c 444,466,15,7,45,7 0 0143 c
-d 611,737,15,25,47,25 2 0144 d
-e 444,466,15,0,56 0 0145 e
-f 333,737,205,187,118,107 3 0146 f
-g 537,499,205,36,129,36 1 0147 g
-h 611,737,15,0,50 2 0150 h
-i 333,715,15,0,23 2 0151 i
-j 315,715,205,52,216,52 3 0152 j
-k 556,737,15,0,55 2 0153 k
-l 333,737,15,11,34,11 2 0154 l
-m 889,466,15,0,35 0 0155 m
-n 611,466,15,1,36,1 0 0156 n
-o 500,466,15,0,45 0 0157 o
-p 574,466,205,0,151 1 0160 p
-q 556,466,205,0,50 1 0161 q
-r 444,466,0,39,41,39 0 0162 r
-s 444,466,15,0,51 0 0163 s
-t 352,619,15,27,25,27 2 0164 t
-u 611,466,15,0,9 0 0165 u
-v 519,466,15,0,16 0 0166 v
-w 778,466,15,0,18 0 0167 w
-x 500,466,15,21,83,21 0 0170 x
-y 500,466,205,4,129,4 1 0171 y
-z 463,466,15,4,83,4 0 0172 z
-lC 333,737,116,98,-2,98 2 0173 braceleft
-{ "
-ba 606,737,0,0,-219 2 0174 bar
-| "
-rC 333,737,116,0,148 2 0175 braceright
-} "
-a~ 333,650,0,97,-2,97 2 0176 tilde
-~ "
-bq 204,109,167,0,129 0 0200 quotesinglbase
-Fo 426,399,0,26,65,26 0 0201 guillemotleft
-char171 "
-Fc 426,394,0,24,67,24 0 0202 guillemotright
-char187 "
-bu 606,537,0,0,-64 0 0203 bullet
-Fn 556,737,205,57,107,57 3 0204 florin
-f/ 167,705,17,216,154,107 2 0205 fraction
-%0 1000,705,15,53,56,53 2 0206 perthousand
-dg 500,737,147,68,-14,68 2 0207 dagger
-dd 500,737,148,78,80,78 2 0210 daggerdbl
-en 500,260,0,68,68,68 0 0211 endash
-em 1000,260,0,68,68,68 0 0212 emdash
-fi 611,737,205,3,110,3 3 0214 fi
-fl 611,737,205,33,110,33 3 0215 fl
-.i 333,466,15,0,23 0 0220 dotlessi
-ga 333,691,0,0,-23 2 0222 grave
-a" 333,689,0,237,-84,107 2 0223 hungarumlaut
-a. 333,644,0,0,-68 2 0224 dotaccent
-ab 333,677,0,87,-19,87 2 0225 breve
-ah 333,688,0,95,-23,95 2 0226 caron
-ao 333,712,0,146,-180,107 2 0227 ring
-ho 333,0,155,0,-18 0 0230 ogonek
-lq 389,749,0,93,-13,93 2 0231 quotedblleft
-rq 389,737,0,68,12,68 2 0232 quotedblright
-oe 778,466,17,0,50 0 0233 oe
-/l 333,737,15,59,34,59 2 0234 lslash
-Bq 389,109,167,0,129 0 0235 quotedblbase
-OE 981,722,0,32,14,32 2 0236 OE
-/L 667,722,0,13,87,13 2 0237 Lslash
-r! 333,542,205,0,57 1 0241 exclamdown
-char161 "
-ct 556,595,129,0,-11 0 0242 cent
-char162 "
-Po 556,705,15,39,58,39 2 0243 sterling
-char163 "
-Cs 556,603,0,24,25,24 0 0244 currency
-char164 "
-Ye 556,705,0,117,10,107 2 0245 yen
-char165 "
-bb 606,737,0,0,-219 2 0246 brokenbar
-char166 "
-sc 500,737,147,30,61,30 2 0247 section
-char167 "
-ad 333,644,0,76,-9,76 2 0250 dieresis
-char168 "
-co 747,737,15,27,26,27 2 0251 copyright
-char169 "
-Of 422,737,0,50,-33,50 2 0252 ordfeminine
-char170 "
-fo 333,399,0,0,8 0 0253 guilsinglleft
-no 606,381,0,0,9 0 0254 logicalnot
-char172 "
-\- 606,287,0,0,9 0 0255 minus
-rg 747,737,15,26,27,26 2 0256 registered
-char174 "
-a- 333,610,0,80,-1,80 0 0257 macron
-char175 "
-de 400,705,0,20,-20,20 2 0260 degree
-char176 "
-char177 606,504,0,0,13 0 0261 plusminus
-S2 333,705,0,70,50,70 2 0262 twosuperior
-char178 "
-S3 333,705,0,48,49,48 2 0263 threesuperior
-char179 "
-aa 333,689,0,72,-82,72 2 0264 acute
-char180 "
-char181 611,466,205,0,120 1 0265 mu
-ps 650,737,0,45,-38,45 2 0266 paragraph
-char182 "
-char183 278,316,0,0,-27 0 0267 periodcentered
-ac 333,0,227,0,47 1 0270 cedilla
-char184 "
-S1 333,705,0,26,7,26 2 0271 onesuperior
-char185 "
-Om 372,738,0,50,-33,50 2 0272 ordmasculine
-char186 "
-fc 333,394,0,0,10 0 0273 guilsinglright
-14 834,705,17,49,17,49 2 0274 onequarter
-char188 "
-12 834,705,17,60,17,60 2 0275 onehalf
-char189 "
-34 834,705,17,49,49,49 2 0276 threequarters
-char190 "
-r? 444,542,205,0,43 1 0277 questiondown
-char191 "
-`A 704,947,0,14,132,14 2 0300 Agrave
-char192 "
-'A 704,945,0,14,132,14 2 0301 Aacute
-char193 "
-^A 704,944,0,14,132,14 2 0302 Acircumflex
-char194 "
-~A 704,906,0,14,132,14 2 0303 Atilde
-char195 "
-:A 704,900,0,14,132,14 2 0304 Adieresis
-char196 "
-oA 704,968,0,14,132,14 2 0305 Aring
-char197 "
-AE 870,722,0,50,142,50 2 0306 AE
-char198 "
-,C 722,737,227,41,10,41 3 0307 Ccedilla
-char199 "
-`E 722,947,0,29,87,29 2 0310 Egrave
-char200 "
-'E 722,945,0,29,87,29 2 0311 Eacute
-char201 "
-^E 722,944,0,29,87,29 2 0312 Ecircumflex
-char202 "
-:E 722,900,0,29,87,29 2 0313 Edieresis
-char203 "
-`I 407,947,0,74,83,74 2 0314 Igrave
-char204 "
-'I 407,945,0,74,83,74 2 0315 Iacute
-char205 "
-^I 407,944,0,74,83,74 2 0316 Icircumflex
-char206 "
-:I 407,900,0,89,83,89 2 0317 Idieresis
-char207 "
--D 778,722,0,7,88,7 2 0320 Eth
-char208 "
-~N 815,906,17,94,98,94 2 0321 Ntilde
-char209 "
-`O 778,947,15,7,10,7 2 0322 Ograve
-char210 "
-'O 778,945,15,7,10,7 2 0323 Oacute
-char211 "
-^O 778,944,15,7,10,7 2 0324 Ocircumflex
-char212 "
-~O 778,906,15,7,10,7 2 0325 Otilde
-char213 "
-:O 778,900,15,7,10,7 2 0326 Odieresis
-char214 "
-char215 606,504,0,0,13 0 0327 multiply
-/O 778,755,87,7,49,7 2 0330 Oslash
-char216 "
-`U 815,947,15,95,-43,95 2 0331 Ugrave
-char217 "
-'U 815,945,15,95,-43,95 2 0332 Uacute
-char218 "
-^U 815,944,15,95,-43,95 2 0333 Ucircumflex
-char219 "
-:U 815,900,15,95,-43,95 2 0334 Udieresis
-char220 "
-'Y 685,945,0,123,18,107 2 0335 Yacute
-char221 "
-TP 667,722,0,7,83,7 2 0336 Thorn
-char222 "
-ss 556,737,205,19,126,19 3 0337 germandbls
-char223 "
-`a 574,691,15,0,49 2 0340 agrave
-char224 "
-'a 574,689,15,0,49 2 0341 aacute
-char225 "
-^a 574,688,15,0,49 2 0342 acircumflex
-char226 "
-~a 574,650,15,0,49 2 0343 atilde
-char227 "
-:a 574,644,15,0,49 2 0344 adieresis
-char228 "
-oa 574,712,15,0,49 2 0345 aring
-char229 "
-ae 722,466,15,0,68 0 0346 ae
-char230 "
-,c 444,466,227,7,45,7 1 0347 ccedilla
-char231 "
-`e 444,691,15,0,56 2 0350 egrave
-char232 "
-'e 444,689,15,17,56,17 2 0351 eacute
-char233 "
-^e 444,688,15,0,56 2 0352 ecircumflex
-char234 "
-:e 444,644,15,11,56,11 2 0353 edieresis
-char235 "
-`i 333,691,15,0,23 2 0354 igrave
-char236 "
-'i 333,689,15,72,23,72 2 0355 iacute
-char237 "
-^i 333,688,15,8,53,8 2 0356 icircumflex
-char238 "
-:i 333,644,15,66,23,66 2 0357 idieresis
-char239 "
-Sd 500,737,15,0,45 2 0360 eth
-char240 "
-~n 611,650,15,1,36,1 2 0361 ntilde
-char241 "
-`o 500,691,15,0,45 2 0362 ograve
-char242 "
-'o 500,689,15,0,45 2 0363 oacute
-char243 "
-^o 500,688,15,0,45 2 0364 ocircumflex
-char244 "
-~o 500,650,15,4,45,4 2 0365 otilde
-char245 "
-:o 500,644,15,0,45 2 0366 odieresis
-char246 "
-char247 606,504,0,0,13 0 0367 divide
-/o 500,549,121,0,55 0 0370 oslash
-char248 "
-`u 611,691,15,0,9 2 0371 ugrave
-char249 "
-'u 611,689,15,0,9 2 0372 uacute
-char250 "
-^u 611,688,15,0,9 2 0373 ucircumflex
-char251 "
-:u 611,644,15,0,9 2 0374 udieresis
-char252 "
-'y 500,689,205,4,129,4 3 0375 yacute
-char253 "
-Tp 574,656,205,0,151 3 0376 thorn
-char254 "
-:y 500,644,205,4,129,4 3 0377 ydieresis
-char255 "
diff --git a/devps/NR b/devps/NR
deleted file mode 100644
index d545b2ab8..000000000
--- a/devps/NR
+++ /dev/null
@@ -1,447 +0,0 @@
-name NR
-internalname NewCenturySchlbk-Roman
-spacewidth 278
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -74
-A w -74
-A v -74
-A ' -74
-A Y -92
-A W -92
-A V -111
-A T -55
-F . -111
-F , -111
-F A -74
-L y -55
-L ' -55
-L Y -92
-L W -74
-L V -92
-L T -55
-P . -129
-P , -129
-P A -74
-R y -18
-R Y -37
-R W -37
-R V -37
-T y -52
-T w -71
-T u -71
-T ; -55
-T s -62
-T r -62
-T . -92
-T o -92
-T i -25
-T - -92
-T hy -92
-T char173 -92
-T e -92
-T , -92
-T : -55
-T c -81
-T a -62
-T A -55
-V y -92
-V u -74
-V ; -74
-V r -74
-V . -129
-V o -92
-V i -44
-V - -92
-V hy -92
-V char173 -92
-V e -92
-V , -129
-V : -74
-V a -92
-V A -111
-W y -74
-W u -55
-W ; -37
-W r -55
-W . -111
-W o -55
-W i -37
-W - -37
-W hy -37
-W char173 -37
-W e -55
-W , -111
-W : -37
-W a -74
-W A -92
-Y v -111
-Y u -92
-Y ; -92
-Y q -111
-Y . -111
-Y p -111
-Y o -111
-Y i -44
-Y - -111
-Y hy -111
-Y char173 -111
-Y e -111
-Y , -111
-Y : -92
-Y a -111
-Y A -92
-f ' 114
-1 1 -55
-` ` -18
-` oq -18
-oq ` -18
-oq oq -18
-' t -18
-' s -37
-' ' -18
-r ' 55
-r . -74
-r - -18
-r hy -18
-r char173 -18
-r , -74
-v . -111
-v , -111
-w . -92
-w , -92
-y . -111
-y , -111
-charset
-ha 606,722 2 0000 asciicircum
-ti 606,329 0 0001 asciitilde
-vS 630,952,15 2 0002 Scaron
-vZ 611,952 2 0003 Zcaron
-vs 463,694,15 2 0004 scaron
-vz 481,694 2 0005 zcaron
-:Y 704,902 2 0006 Ydieresis
-tm 1000,737 2 0007 trademark
-aq 204,737 2 0010 quotesingle
-space 278 0 0040
-! 296,737,15 2 0041 exclam
-" 389,737 2 0042 quotedbl
-# 556,690 2 0043 numbersign
-sh "
-$ 556,804,129 2 0044 dollar
-Do "
-% 833,707,18 2 0045 percent
-& 815,737,15 2 0046 ampersand
-' 204,737 2 0047 quoteright
-( 333,737,124 2 0050 parenleft
-) 333,737,124 2 0051 parenright
-* 500,737 2 0052 asterisk
-+ 606,492,13 0 0053 plus
-, 278,109,184 0 0054 comma
-- 333,279 0 0055 hyphen
-hy "
-char173 "
-. 278,109,15 0 0056 period
-/ 278,737,15 2 0057 slash
-sl "
-0 556,705,15 2 0060 zero
-1 556,705 2 0061 one
-2 556,705,4 2 0062 two
-3 556,705,15 2 0063 three
-4 556,705 2 0064 four
-5 556,705,15 2 0065 five
-6 556,705,15 2 0066 six
-7 556,705,15 2 0067 seven
-8 556,705,15 2 0070 eight
-9 556,705,15 2 0071 nine
-: 278,475,15 0 0072 colon
-; 278,475,189 0 0073 semicolon
-< 606,503,25 0 0074 less
-= 606,374 0 0075 equal
-> 606,503,25 0 0076 greater
-? 444,737,15 2 0077 question
-@ 737,737,15 2 0100 at
-at "
-A 722,737 2 0101 A
-B 722,722 2 0102 B
-C 722,737,15 2 0103 C
-D 778,722 2 0104 D
-E 722,722 2 0105 E
-F 667,722 2 0106 F
-G 778,737,15 2 0107 G
-H 833,722 2 0110 H
-I 407,722 2 0111 I
-J 556,722,15 2 0112 J
-K 778,722 2 0113 K
-L 667,722 2 0114 L
-M 944,722 2 0115 M
-N 815,722,15 2 0116 N
-O 778,737,15 2 0117 O
-P 667,722 2 0120 P
-Q 778,737,189 2 0121 Q
-R 722,722,15 2 0122 R
-S 630,737,15 2 0123 S
-T 667,722 2 0124 T
-U 815,722,15 2 0125 U
-V 722,722,15 2 0126 V
-W 981,722,15 2 0127 W
-X 704,722 2 0130 X
-Y 704,722 2 0131 Y
-Z 611,722 2 0132 Z
-[ 333,722,109 2 0133 bracketleft
-lB "
-\ 606,737 2 0134 backslash
-rs "
-] 333,723,108 2 0135 bracketright
-rB "
-a^ 333,694 2 0136 circumflex
-^ "
-_ 500,0,134 0 0137 underscore
-` 204,737 2 0140 quoteleft
-oq "
-a 556,479,15 0 0141 a
-b 556,737,15 2 0142 b
-c 444,479,15 0 0143 c
-d 574,737,15 2 0144 d
-e 500,479,15 0 0145 e
-f 333,737 2 0146 f
-g 537,494,205 1 0147 g
-h 611,737 2 0150 h
-i 315,716 2 0151 i
-j 296,716,205 3 0152 j
-k 593,737 2 0153 k
-l 315,737 2 0154 l
-m 889,479 0 0155 m
-n 611,479 0 0156 n
-o 500,479,15 0 0157 o
-p 574,479,205 1 0160 p
-q 556,479,205 1 0161 q
-r 444,479 0 0162 r
-s 463,479,15 0 0163 s
-t 389,666,15 2 0164 t
-u 611,464,15 0 0165 u
-v 537,464,15 0 0166 v
-w 778,464,15 0 0167 w
-x 537,464 0 0170 x
-y 537,464,205 1 0171 y
-z 481,464 0 0172 z
-lC 333,722,109 2 0173 braceleft
-{ "
-ba 606,737 2 0174 bar
-| "
-rC 333,722,109 2 0175 braceright
-} "
-a~ 333,659 0 0176 tilde
-~ "
-bq 204,104,189 0 0200 quotesinglbase
-Fo 426,397 0 0201 guillemotleft
-char171 "
-Fc 426,399 0 0202 guillemotright
-char187 "
-bu 606,554 0 0203 bullet
-Fn 556,737,205 3 0204 florin
-f/ 167,705 2 0205 fraction
-%0 1000,699,1 2 0206 perthousand
-dg 500,737,147 2 0207 dagger
-dd 500,737,151 2 0210 daggerdbl
-en 556,269 0 0211 endash
-em 1000,269 0 0212 emdash
-fi 611,737 2 0214 fi
-fl 611,737 2 0215 fl
-.i 315,464 0 0220 dotlessi
-ga 333,699 2 0222 grave
-a" 333,714 2 0223 hungarumlaut
-a. 333,644 0 0224 dotaccent
-ab 333,685 2 0225 breve
-ah 333,694 2 0226 caron
-ao 333,722 2 0227 ring
-ho 333,0,163 0 0230 ogonek
-lq 389,737 2 0231 quotedblleft
-rq 389,737 2 0232 quotedblright
-oe 833,479,15 0 0233 oe
-/l 315,737 2 0234 lslash
-Bq 389,104,189 0 0235 quotedblbase
-OE 1000,722 2 0236 OE
-/L 667,722 2 0237 Lslash
-r! 296,547,205 1 0241 exclamdown
-char161 "
-ct 556,584,141 0 0242 cent
-char162 "
-Po 556,705,15 2 0243 sterling
-char163 "
-Cs 556,603 0 0244 currency
-char164 "
-Ye 556,705 2 0245 yen
-char165 "
-bb 606,737 2 0246 brokenbar
-char166 "
-sc 500,737,147 2 0247 section
-char167 "
-ad 333,644 0 0250 dieresis
-char168 "
-co 737,737,15 2 0251 copyright
-char169 "
-Of 334,722 2 0252 ordfeminine
-char170 "
-fo 259,397 0 0253 guilsinglleft
-no 606,374 0 0254 logicalnot
-char172 "
-\- 606,277 0 0255 minus
-rg 737,737,15 2 0256 registered
-char174 "
-a- 333,622 0 0257 macron
-char175 "
-de 400,705 2 0260 degree
-char176 "
-char177 606,492 0 0261 plusminus
-S2 333,705 2 0262 twosuperior
-char178 "
-S3 333,705 2 0263 threesuperior
-char179 "
-aa 333,699 2 0264 acute
-char180 "
-char181 611,464,205 1 0265 mu
-ps 606,722,147 2 0266 paragraph
-char182 "
-char183 278,302 0 0267 periodcentered
-ac 333,0,215 1 0270 cedilla
-char184 "
-S1 333,705 2 0271 onesuperior
-char185 "
-Om 300,722 2 0272 ordmasculine
-char186 "
-fc 259,399 0 0273 guilsinglright
-14 834,705 2 0274 onequarter
-char188 "
-12 834,705,2 2 0275 onehalf
-char189 "
-34 834,705 2 0276 threequarters
-char190 "
-r? 444,547,205 1 0277 questiondown
-char191 "
-`A 722,957 2 0300 Agrave
-char192 "
-'A 722,957 2 0301 Aacute
-char193 "
-^A 722,952 2 0302 Acircumflex
-char194 "
-~A 722,917 2 0303 Atilde
-char195 "
-:A 722,902 2 0304 Adieresis
-char196 "
-oA 722,980 2 0305 Aring
-char197 "
-AE 1000,722 2 0306 AE
-char198 "
-,C 722,737,215 3 0307 Ccedilla
-char199 "
-`E 722,957 2 0310 Egrave
-char200 "
-'E 722,957 2 0311 Eacute
-char201 "
-^E 722,952 2 0312 Ecircumflex
-char202 "
-:E 722,902 2 0313 Edieresis
-char203 "
-`I 407,957 2 0314 Igrave
-char204 "
-'I 407,957 2 0315 Iacute
-char205 "
-^I 407,952 2 0316 Icircumflex
-char206 "
-:I 407,902 2 0317 Idieresis
-char207 "
--D 778,722 2 0320 Eth
-char208 "
-~N 815,917,15 2 0321 Ntilde
-char209 "
-`O 778,957,15 2 0322 Ograve
-char210 "
-'O 778,957,15 2 0323 Oacute
-char211 "
-^O 778,952,15 2 0324 Ocircumflex
-char212 "
-~O 778,917,15 2 0325 Otilde
-char213 "
-:O 778,902,15 2 0326 Odieresis
-char214 "
-char215 606,491,13 0 0327 multiply
-/O 778,760,74 2 0330 Oslash
-char216 "
-`U 815,957,15 2 0331 Ugrave
-char217 "
-'U 815,957,15 2 0332 Uacute
-char218 "
-^U 815,952,15 2 0333 Ucircumflex
-char219 "
-:U 815,902,15 2 0334 Udieresis
-char220 "
-'Y 704,957 2 0335 Yacute
-char221 "
-TP 667,722 2 0336 Thorn
-char222 "
-ss 574,737,15 2 0337 germandbls
-char223 "
-`a 556,699,15 2 0340 agrave
-char224 "
-'a 556,699,15 2 0341 aacute
-char225 "
-^a 556,694,15 2 0342 acircumflex
-char226 "
-~a 556,659,15 0 0343 atilde
-char227 "
-:a 556,644,15 0 0344 adieresis
-char228 "
-oa 556,722,15 2 0345 aring
-char229 "
-ae 796,479,15 0 0346 ae
-char230 "
-,c 444,479,215 1 0347 ccedilla
-char231 "
-`e 500,699,15 2 0350 egrave
-char232 "
-'e 500,699,15 2 0351 eacute
-char233 "
-^e 500,694,15 2 0352 ecircumflex
-char234 "
-:e 500,644,15 0 0353 edieresis
-char235 "
-`i 315,699 2 0354 igrave
-char236 "
-'i 315,699 2 0355 iacute
-char237 "
-^i 315,694 2 0356 icircumflex
-char238 "
-:i 315,644 0 0357 idieresis
-char239 "
-Sd 500,740,15 2 0360 eth
-char240 "
-~n 611,659 0 0361 ntilde
-char241 "
-`o 500,699,15 2 0362 ograve
-char242 "
-'o 500,699,15 2 0363 oacute
-char243 "
-^o 500,694,15 2 0364 ocircumflex
-char244 "
-~o 500,659,15 0 0365 otilde
-char245 "
-:o 500,644,15 0 0366 odieresis
-char246 "
-char247 606,493,11 0 0367 divide
-/o 500,556,102 0 0370 oslash
-char248 "
-`u 611,699,15 2 0371 ugrave
-char249 "
-'u 611,699,15 2 0372 uacute
-char250 "
-^u 611,694,15 2 0373 ucircumflex
-char251 "
-:u 611,644,15 0 0374 udieresis
-char252 "
-'y 537,699,205 3 0375 yacute
-char253 "
-Tp 574,737,205 3 0376 thorn
-char254 "
-:y 537,644,205 1 0377 ydieresis
-char255 "
diff --git a/devps/PB b/devps/PB
deleted file mode 100644
index 348281ad3..000000000
--- a/devps/PB
+++ /dev/null
@@ -1,449 +0,0 @@
-name PB
-internalname Palatino-Bold
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -70
-A w -70
-A v -70
-A ' -92
-A Y -111
-A W -90
-A V -129
-A T -92
-F . -111
-F , -111
-F A -55
-L y -74
-L ' -74
-L Y -92
-L W -92
-L V -92
-L T -74
-P . -129
-P , -129
-P A -74
-R y -30
-R Y -55
-R W -37
-R V -74
-R T -55
-T y -90
-T w -90
-T u -129
-T ; -74
-T s -111
-T r -111
-T . -92
-T o -111
-T i -55
-T - -92
-T hy -92
-T char173 -92
-T e -111
-T , -92
-T : -74
-T c -129
-T a -111
-T A -92
-V y -90
-V u -92
-V ; -74
-V r -111
-V . -129
-V o -111
-V i -55
-V - -92
-V hy -92
-V char173 -92
-V e -111
-V , -129
-V : -74
-V a -111
-V A -129
-W y -74
-W u -74
-W ; -37
-W r -74
-W . -37
-W o -74
-W i -37
-W - -37
-W hy -37
-W char173 -37
-W e -74
-W , -92
-W : -37
-W a -74
-W A -90
-Y v -74
-Y u -74
-Y ; -55
-Y q -92
-Y . -74
-Y p -74
-Y o -74
-Y i -55
-Y - -74
-Y hy -74
-Y char173 -74
-Y e -74
-Y , -74
-Y : -55
-Y a -74
-Y A -55
-f ' 37
-f f -18
-1 1 -37
-` ` -55
-` oq -55
-oq ` -55
-oq oq -55
-' t -18
-' s -55
-' ' -55
-r ' 55
-r . -55
-r - -18
-r hy -18
-r char173 -18
-r , -55
-v . -111
-v , -111
-w . -92
-w , -92
-y . -92
-y , -92
-charset
-ha 606,678 2 0000 asciicircum
-ti 606,342 0 0001 asciitilde
-vS 611,909,17 2 0002 Scaron
-vZ 667,909,3 2 0003 Zcaron
-vs 444,693,17 2 0004 scaron
-vz 500,693,3 2 0005 zcaron
-:Y 667,895,3 2 0006 Ydieresis
-tm 998,678 2 0007 trademark
-aq 227,695 2 0010 quotesingle
-space 250 0 0040
-! 278,688,12 2 0041 exclam
-" 402,695 2 0042 quotedbl
-# 500,673 2 0043 numbersign
-sh "
-$ 500,721,114 2 0044 dollar
-Do "
-% 889,714,9 2 0045 percent
-& 833,684,17 2 0046 ampersand
-' 278,695 2 0047 quoteright
-( 333,723,104 2 0050 parenleft
-) 333,723,104 2 0051 parenright
-* 444,695 2 0052 asterisk
-+ 606,505 0 0053 plus
-, 250,141,166 0 0054 comma
-- 333,305 0 0055 hyphen
-hy "
-char173 "
-. 250,144,12 0 0056 period
-/ 296,720,17 2 0057 slash
-sl "
-0 500,660,17 2 0060 zero
-1 500,670,3 2 0061 one
-2 500,660,3 2 0062 two
-3 500,660,17 2 0063 three
-4 500,672,3 2 0064 four
-5 500,656,17 2 0065 five
-6 500,660,17 2 0066 six
-7 500,656,3 2 0067 seven
-8 500,660,17 2 0070 eight
-9 500,660,17 2 0071 nine
-: 250,454,12 0 0072 colon
-; 250,454,166 0 0073 semicolon
-< 606,519,15 0 0074 less
-= 606,396 0 0075 equal
-> 606,519,15 0 0076 greater
-? 444,687,12 2 0077 question
-@ 747,681,12 2 0100 at
-at "
-A 778,686,3 2 0101 A
-B 667,681,3 2 0102 B
-C 722,695,17 2 0103 C
-D 833,681,3 2 0104 D
-E 611,681,4 2 0105 E
-F 556,681,3 2 0106 F
-G 833,695,17 2 0107 G
-H 833,681,3 2 0110 H
-I 389,681,3 2 0111 I
-J 389,681,213 2 0112 J
-K 778,681,3 2 0113 K
-L 611,681,4 2 0114 L
-M 1000,681,10 2 0115 M
-N 833,681,16 2 0116 N
-O 833,695,17 2 0117 O
-P 611,681,3 2 0120 P
-Q 833,695,184 2 0121 Q
-R 722,681,3 2 0122 R
-S 611,695,17 2 0123 S
-T 667,681,3 2 0124 T
-U 778,681,17 2 0125 U
-V 778,681,3 2 0126 V
-W 1000,686,3 2 0127 W
-X 667,695,3 2 0130 X
-Y 667,695,3 2 0131 Y
-Z 667,681,3 2 0132 Z
-[ 333,720,104 2 0133 bracketleft
-lB "
-\ 606,720 2 0134 backslash
-rs "
-] 333,720,104 2 0135 bracketright
-rB "
-a^ 333,681 2 0136 circumflex
-^ "
-_ 500,0,125 0 0137 underscore
-` 278,695 2 0140 quoteleft
-oq "
-a 500,471,17 0 0141 a
-b 611,720,17 2 0142 b
-c 444,471,17 0 0143 c
-d 611,720,17 2 0144 d
-e 500,471,17 0 0145 e
-f 389,720,3 2 0146 f
-g 556,471,266 1 0147 g
-h 611,720,3 2 0150 h
-i 333,706,3 2 0151 i
-j 333,706,266 3 0152 j
-k 611,720,3 2 0153 k
-l 333,720,3 2 0154 l
-m 889,471,3 0 0155 m
-n 611,471,3 0 0156 n
-o 556,471,17 0 0157 o
-p 611,471,258 1 0160 p
-q 611,471,258 1 0161 q
-r 389,471,3 0 0162 r
-s 444,471,17 0 0163 s
-t 333,632,17 2 0164 t
-u 611,471,17 0 0165 u
-v 556,459,3 0 0166 v
-w 833,471,3 0 0167 w
-x 500,471,3 0 0170 x
-y 556,459,266 1 0171 y
-z 500,459,3 0 0172 z
-lC 310,725,117 2 0173 braceleft
-{ "
-ba 606,720 2 0174 bar
-| "
-rC 310,725,117 2 0175 braceright
-} "
-a~ 333,661 2 0176 tilde
-~ "
-bq 333,130,160 0 0200 quotesinglbase
-Fo 500,438 0 0201 guillemotleft
-char171 "
-Fc 500,438 0 0202 guillemotright
-char187 "
-bu 606,516 0 0203 bullet
-Fn 500,703,242 2 0204 florin
-f/ 167,660 2 0205 fraction
-%0 1000,724,9 2 0206 perthousand
-dg 500,682,6 2 0207 dagger
-dd 500,682,245 2 0210 daggerdbl
-en 500,291 0 0211 endash
-em 1000,291 0 0212 emdash
-fi 611,720,3 2 0214 fi
-fl 611,720,3 2 0215 fl
-.i 333,471,3 0 0220 dotlessi
-ga 333,691 2 0222 grave
-a" 333,691 2 0223 hungarumlaut
-a. 333,671 2 0224 dotaccent
-ab 333,669 2 0225 breve
-ah 333,685 2 0226 caron
-ao 333,700 2 0227 ring
-ho 333,0,246 0 0230 ogonek
-lq 500,695 2 0231 quotedblleft
-rq 500,695 2 0232 quotedblright
-oe 833,471,17 0 0233 oe
-/l 333,720,3 2 0234 lslash
-Bq 500,130,160 0 0235 quotedblbase
-OE 1000,695,17 2 0236 OE
-/L 611,681,4 2 0237 Lslash
-r! 278,471,227 0 0241 exclamdown
-char161 "
-ct 500,554,106 0 0242 cent
-char162 "
-Po 500,676,19 2 0243 sterling
-char163 "
-Cs 500,533 0 0244 currency
-char164 "
-Ye 500,695,3 2 0245 yen
-char165 "
-bb 606,720 2 0246 brokenbar
-char166 "
-sc 500,695,217 2 0247 section
-char167 "
-ad 333,671 2 0250 dieresis
-char168 "
-co 747,695,17 2 0251 copyright
-char169 "
-Of 438,660 2 0252 ordfeminine
-char170 "
-fo 389,438 0 0253 guilsinglleft
-no 606,396 0 0254 logicalnot
-char172 "
-\- 606,298 0 0255 minus
-rg 747,695,17 2 0256 registered
-char174 "
-a- 333,609 0 0257 macron
-char175 "
-de 400,660 2 0260 degree
-char176 "
-char177 606,505 0 0261 plusminus
-S2 300,660 2 0262 twosuperior
-char178 "
-S3 300,667 2 0263 threesuperior
-char179 "
-aa 333,691 2 0264 acute
-char180 "
-char181 611,471,225 0 0265 mu
-ps 641,683,161 2 0266 paragraph
-char182 "
-char183 250,335 0 0267 periodcentered
-ac 333,0,225 0 0270 cedilla
-char184 "
-S1 300,665 2 0271 onesuperior
-char185 "
-Om 488,660 2 0272 ordmasculine
-char186 "
-fc 389,438 0 0273 guilsinglright
-14 750,665,2 2 0274 onequarter
-char188 "
-12 750,665,2 2 0275 onehalf
-char189 "
-34 750,667,2 2 0276 threequarters
-char190 "
-r? 444,471,231 0 0277 questiondown
-char191 "
-`A 778,915,3 2 0300 Agrave
-char192 "
-'A 778,915,3 2 0301 Aacute
-char193 "
-^A 778,905,3 2 0302 Acircumflex
-char194 "
-~A 778,885,3 2 0303 Atilde
-char195 "
-:A 778,895,3 2 0304 Adieresis
-char196 "
-oA 778,924,3 2 0305 Aring
-char197 "
-AE 1000,681,4 2 0306 AE
-char198 "
-,C 722,695,225 2 0307 Ccedilla
-char199 "
-`E 611,915,4 2 0310 Egrave
-char200 "
-'E 611,915,4 2 0311 Eacute
-char201 "
-^E 611,905,4 2 0312 Ecircumflex
-char202 "
-:E 611,895,4 2 0313 Edieresis
-char203 "
-`I 389,915,3 2 0314 Igrave
-char204 "
-'I 389,915,3 2 0315 Iacute
-char205 "
-^I 389,905,3 2 0316 Icircumflex
-char206 "
-:I 389,895,3 2 0317 Idieresis
-char207 "
--D 833,681,3 2 0320 Eth
-char208 "
-~N 833,885,16 2 0321 Ntilde
-char209 "
-`O 833,915,17 2 0322 Ograve
-char210 "
-'O 833,915,17 2 0323 Oacute
-char211 "
-^O 833,905,17 2 0324 Ocircumflex
-char212 "
-~O 833,885,17 2 0325 Otilde
-char213 "
-:O 833,895,17 2 0326 Odieresis
-char214 "
-char215 606,483 0 0327 multiply
-/O 833,698,20 2 0330 Oslash
-char216 "
-`U 778,915,17 2 0331 Ugrave
-char217 "
-'U 778,915,17 2 0332 Uacute
-char218 "
-^U 778,905,17 2 0333 Ucircumflex
-char219 "
-:U 778,895,17 2 0334 Udieresis
-char220 "
-'Y 667,915,3 2 0335 Yacute
-char221 "
-TP 611,681,3 2 0336 Thorn
-char222 "
-ss 611,720,17 2 0337 germandbls
-char223 "
-`a 500,711,17 2 0340 agrave
-char224 "
-'a 500,711,17 2 0341 aacute
-char225 "
-^a 500,701,17 2 0342 acircumflex
-char226 "
-~a 500,673,17 2 0343 atilde
-char227 "
-:a 500,691,17 2 0344 adieresis
-char228 "
-oa 500,700,17 2 0345 aring
-char229 "
-ae 778,471,17 0 0346 ae
-char230 "
-,c 444,471,225 0 0347 ccedilla
-char231 "
-`e 500,711,17 2 0350 egrave
-char232 "
-'e 500,711,17 2 0351 eacute
-char233 "
-^e 500,701,17 2 0352 ecircumflex
-char234 "
-:e 500,691,17 2 0353 edieresis
-char235 "
-`i 333,711,3 2 0354 igrave
-char236 "
-'i 333,711,3 2 0355 iacute
-char237 "
-^i 333,701,3 2 0356 icircumflex
-char238 "
-:i 333,691,3 2 0357 idieresis
-char239 "
-Sd 556,720,17 2 0360 eth
-char240 "
-~n 611,673,3 2 0361 ntilde
-char241 "
-`o 556,711,17 2 0362 ograve
-char242 "
-'o 556,711,17 2 0363 oacute
-char243 "
-^o 556,701,17 2 0364 ocircumflex
-char244 "
-~o 556,673,17 2 0365 otilde
-char245 "
-:o 556,691,17 2 0366 odieresis
-char246 "
-char247 606,510 0 0367 divide
-/o 556,471,18 0 0370 oslash
-char248 "
-`u 611,711,17 2 0371 ugrave
-char249 "
-'u 611,711,17 2 0372 uacute
-char250 "
-^u 611,701,17 2 0373 ucircumflex
-char251 "
-:u 611,691,17 2 0374 udieresis
-char252 "
-'y 556,711,266 3 0375 yacute
-char253 "
-Tp 611,720,258 3 0376 thorn
-char254 "
-:y 556,691,266 3 0377 ydieresis
-char255 "
diff --git a/devps/PBI b/devps/PBI
deleted file mode 100644
index 37facbe94..000000000
--- a/devps/PBI
+++ /dev/null
@@ -1,451 +0,0 @@
-name PBI
-internalname Palatino-BoldItalic
-slant 10
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -55
-A w -37
-A v -55
-A ' -55
-A Y -74
-A W -74
-A V -74
-A T -55
-F . -111
-F , -111
-F A -74
-L y -37
-L ' -55
-L Y -74
-L W -74
-L V -74
-L T -74
-P . -129
-P , -129
-P A -92
-R y -20
-R Y -37
-R W -55
-R V -55
-R T -37
-T y -80
-T w -50
-T u -92
-T ; -55
-T s -92
-T r -92
-T . -55
-T o -111
-T i -74
-T - -92
-T hy -92
-T char173 -92
-T e -111
-T , -55
-T : -55
-T c -92
-T a -111
-T O -18
-T A -55
-V y -50
-V u -50
-V ; -37
-V r -74
-V . -111
-V o -74
-V i -50
-V - -37
-V hy -37
-V char173 -37
-V e -74
-V , -111
-V : -37
-V a -92
-V A -74
-W y -30
-W u -30
-W ; -18
-W r -30
-W . -55
-W o -55
-W i -30
-W e -55
-W , -55
-W : -28
-W a -74
-W A -74
-Y v -30
-Y u -50
-Y ; -55
-Y q -92
-Y . -55
-Y p -74
-Y o -111
-Y i -54
-Y - -55
-Y hy -55
-Y char173 -55
-Y e -92
-Y , -55
-Y : -55
-Y a -111
-Y A -55
-f ' 37
-f f -37
-1 1 -55
-` ` -55
-` oq -55
-oq ` -55
-oq oq -55
-' t -18
-' s -37
-' ' -55
-r ' 55
-r q -18
-r . -55
-r o -18
-r h -18
-r g -18
-r e -18
-r , -55
-r c -18
-v . -55
-v , -55
-w . -55
-w , -55
-y . -37
-y , -37
-charset
-ha 606,678,0,0,-13 2 0000 asciicircum
-ti 606,346,0,0,-1 0 0001 asciitilde
-vS 556,896,17,51,0,51 2 0002 Scaron
-vZ 667,896,3,59,49,59 2 0003 Zcaron
-vs 444,692,17,95,25,66 2 0004 scaron
-vz 500,692,17,67,19,66 2 0005 zcaron
-:Y 611,880,3,114,-4,66 2 0006 Ydieresis
-tm 1000,678,0,11,12,11 2 0007 trademark
-aq 250,720,0,93,-77,66 2 0010 quotesingle
-space 250 0 0040
-! 333,695,17,39,-8,39 2 0041 exclam
-" 500,720,0,43,-87,43 2 0042 quotedbl
-# 500,673,0,46,46,46 2 0043 numbersign
-sh "
-$ 500,737,108,27,30,27 2 0044 dollar
-Do "
-% 889,697,17,0,-6 2 0045 percent
-& 833,695,17,28,-24,28 2 0046 ampersand
-' 278,720,0,74,-26,66 2 0047 quoteright
-( 333,723,129,85,-8,66 2 0050 parenleft
-) 333,723,129,15,62,15 2 0051 parenright
-* 444,695,0,45,-34,45 2 0052 asterisk
-+ 606,501,5 0 0053 plus
-, 250,147,164,8,83,8 0 0054 comma
-- 389,300,0,23,13,23 0 0055 hyphen
-hy "
-char173 "
-. 250,135,17,0,2 0 0056 period
-/ 315,720,17,50,49,50 2 0057 slash
-sl "
-0 500,683,17,40,8,40 2 0060 zero
-1 500,678,3,0,9 2 0061 one
-2 500,683,3,4,49,4 2 0062 two
-3 500,683,17,0,42 2 0063 three
-4 500,683,3,37,47,37 2 0064 four
-5 500,675,17,31,36,31 2 0065 five
-6 500,683,17,38,11,38 2 0066 six
-7 500,674,3,94,-19,66 2 0067 seven
-8 500,683,17,34,24,34 2 0070 eight
-9 500,683,17,41,23,41 2 0071 nine
-: 250,452,17,36,12,36 0 0072 colon
-; 250,452,164,47,83,47 0 0073 semicolon
-< 606,517,21,2,1,2 0 0074 less
-= 606,390,0,0,-1 0 0075 equal
-> 606,517,21,1,2,1 0 0076 greater
-? 444,695,17,56,-41,56 2 0077 question
-@ 833,681,12,0,-32 2 0100 at
-at "
-A 722,683,3,13,85,13 2 0101 A
-B 667,681,3,12,42,12 2 0102 B
-C 685,695,17,60,-19,60 2 0103 C
-D 778,682,3,19,50,19 2 0104 D
-E 611,681,3,45,39,45 2 0105 E
-F 556,681,3,87,56,66 2 0106 F
-G 778,695,17,22,-22,22 2 0107 G
-H 778,681,3,98,62,66 2 0110 H
-I 389,681,3,73,51,66 2 0111 I
-J 389,681,207,78,79,66 2 0112 J
-K 722,681,3,74,60,66 2 0113 K
-L 611,681,3,17,24,17 2 0114 L
-M 944,681,17,91,73,66 2 0115 M
-N 778,681,3,101,52,66 2 0116 N
-O 833,695,17,11,-26,11 2 0117 O
-P 667,681,3,56,39,56 2 0120 P
-Q 833,695,222,11,-26,11 2 0121 Q
-R 722,681,3,25,46,25 2 0122 R
-S 556,695,17,11,0,11 2 0123 S
-T 611,681,3,113,-6,66 2 0124 T
-U 778,681,17,97,-33,66 2 0125 U
-V 667,681,3,128,-17,66 2 0126 V
-W 1000,689,3,123,-17,66 2 0127 W
-X 722,681,3,100,59,66 2 0130 X
-Y 611,695,3,114,-4,66 2 0131 Y
-Z 667,681,3,59,49,59 2 0132 Z
-[ 333,723,102,98,5,66 2 0133 bracketleft
-lB "
-\ 606,720,0,0,-22 2 0134 backslash
-rs "
-] 333,723,102,32,71,32 2 0135 bracketright
-rB "
-a^ 333,684,0,132,-38,66 2 0136 circumflex
-^ "
-_ 500,0,125,50,50,50 0 0137 underscore
-` 278,720,0,63,-15,63 2 0140 quoteleft
-oq "
-a 556,470,17,13,6,13 0 0141 a
-b 537,726,17,7,6,7 2 0142 b
-c 444,469,17,42,18,42 0 0143 c
-d 556,726,17,44,12,44 2 0144 d
-e 444,469,17,24,22,24 0 0145 e
-f 333,726,271,166,180,66 3 0146 f
-g 500,469,271,79,100,66 1 0147 g
-h 556,726,17,16,28,16 2 0150 h
-i 333,695,17,29,24,29 2 0151 i
-j 333,695,271,40,114,40 3 0152 j
-k 556,726,17,22,16,22 2 0153 k
-l 333,726,17,35,-14,35 2 0154 l
-m 833,469,17,20,31,20 0 0155 m
-n 556,469,17,15,33,15 0 0156 n
-o 556,469,17,0,2 0 0157 o
-p 556,469,271,10,71,10 1 0160 p
-q 537,469,271,26,18,26 1 0161 q
-r 389,469,17,72,30,66 0 0162 r
-s 444,469,17,12,25,12 0 0163 s
-t 389,636,17,70,8,66 2 0164 t
-u 556,469,17,15,28,15 0 0165 u
-v 556,469,17,7,31,7 0 0166 v
-w 833,469,17,19,23,19 0 0167 w
-x 500,469,17,50,58,50 0 0170 x
-y 556,469,271,35,37,35 1 0171 y
-z 500,469,17,20,19,20 0 0172 z
-lC 333,720,105,51,32,51 2 0173 braceleft
-{ "
-ba 606,720,0,0,-209 2 0174 bar
-| "
-rC 333,720,105,32,51,32 2 0175 braceright
-} "
-a~ 333,654,0,158,-32,66 2 0176 tilde
-~ "
-bq 250,145,144,20,53,20 0 0200 quotesinglbase
-Fo 500,446,0,8,15,8 0 0201 guillemotleft
-char171 "
-Fc 500,443,0,8,15,8 0 0202 guillemotright
-char187 "
-bu 606,516,0,0,-81 0 0203 bullet
-Fn 500,690,242,29,42,29 2 0204 florin
-f/ 167,683,0,221,220,66 2 0205 fraction
-%0 1000,691,17,0,-15 2 0206 perthousand
-dg 556,685,3,0,-17 2 0207 dagger
-dd 556,693,153,31,17,31 2 0210 daggerdbl
-en 500,282,0,62,62,62 0 0211 endash
-em 1000,282,0,62,62,62 0 0212 emdash
-fi 611,726,271,27,180,27 3 0214 fi
-fl 611,726,271,70,180,66 3 0215 fl
-.i 333,469,17,10,24,10 0 0220 dotlessi
-ga 333,699,0,39,-60,39 2 0222 grave
-a" 333,699,0,126,78,66 2 0223 hungarumlaut
-a. 333,668,0,42,-152,42 2 0224 dotaccent
-ab 333,680,0,129,-46,66 2 0225 breve
-ah 333,684,0,162,-63,66 2 0226 caron
-ao 556,714,0,0,-227 2 0227 ring
-ho 333,0,206,0,18 0 0230 ogonek
-lq 500,720,0,61,-15,61 2 0231 quotedblleft
-rq 500,720,0,69,-23,66 2 0232 quotedblright
-oe 778,469,17,27,2,27 0 0233 oe
-/l 333,726,17,82,37,66 2 0234 lslash
-Bq 500,145,144,0,68 0 0235 quotedblbase
-OE 944,695,17,67,11,66 2 0236 OE
-/L 611,681,3,17,44,17 2 0237 Lslash
-r! 333,479,225,0,48 0 0241 exclamdown
-char161 "
-ct 500,547,105,6,-2,6 0 0242 cent
-char162 "
-Po 500,683,5,51,29,51 2 0243 sterling
-char163 "
-Cs 500,533,0,18,18,18 0 0244 currency
-char164 "
-Ye 500,695,3,88,39,66 2 0245 yen
-char165 "
-bb 606,720,0,0,-209 2 0246 brokenbar
-char166 "
-sc 556,695,151,0,3 2 0247 section
-char167 "
-ad 333,668,0,143,-40,66 2 0250 dieresis
-char168 "
-co 747,695,17,23,24,23 2 0251 copyright
-char169 "
-Of 333,684,0,72,3,66 2 0252 ordfeminine
-char170 "
-fo 333,446,0,9,-10,9 0 0253 guilsinglleft
-no 606,390,0,0,-1 0 0254 logicalnot
-char172 "
-\- 606,292,0,0,-1 0 0255 minus
-rg 747,695,17,23,24,23 2 0256 registered
-char174 "
-a- 333,608,0,135,-26,66 0 0257 macron
-char175 "
-de 400,683 2 0260 degree
-char176 "
-char177 606,501 0 0261 plusminus
-S2 300,683,0,71,24,66 2 0262 twosuperior
-char178 "
-S3 300,683,0,60,27,60 2 0263 threesuperior
-char179 "
-aa 333,699,0,109,-103,66 2 0264 acute
-char180 "
-char181 556,469,232,15,65,15 0 0265 mu
-ps 556,681,204,123,36,66 2 0266 paragraph
-char182 "
-char183 250,324,0,6,-17,6 0 0267 periodcentered
-ac 333,5,218,0,38 0 0270 cedilla
-char184 "
-S1 300,680,0,48,9,48 2 0271 onesuperior
-char185 "
-Om 333,683,0,63,-1,63 2 0272 ordmasculine
-char186 "
-fc 333,443,0,0,15 0 0273 guilsinglright
-14 750,683,2,32,32,32 2 0274 onequarter
-char188 "
-12 750,683,2,36,36,36 2 0275 onehalf
-char189 "
-34 750,683,2,32,32,32 2 0276 threequarters
-char190 "
-r? 444,479,226,0,62 0 0277 questiondown
-char191 "
-`A 722,911,3,13,85,13 2 0300 Agrave
-char192 "
-'A 722,911,3,13,85,13 2 0301 Aacute
-char193 "
-^A 722,896,3,13,85,13 2 0302 Acircumflex
-char194 "
-~A 722,866,3,13,85,13 2 0303 Atilde
-char195 "
-:A 722,880,3,13,85,13 2 0304 Adieresis
-char196 "
-oA 722,926,3,13,85,13 2 0305 Aring
-char197 "
-AE 944,681,3,33,79,33 2 0306 AE
-char198 "
-,C 685,695,218,60,-19,60 2 0307 Ccedilla
-char199 "
-`E 611,911,3,45,39,45 2 0310 Egrave
-char200 "
-'E 611,911,3,45,39,45 2 0311 Eacute
-char201 "
-^E 611,896,3,45,39,45 2 0312 Ecircumflex
-char202 "
-:E 611,880,3,45,39,45 2 0313 Edieresis
-char203 "
-`I 389,911,3,73,51,66 2 0314 Igrave
-char204 "
-'I 389,911,3,81,51,66 2 0315 Iacute
-char205 "
-^I 389,896,3,104,51,66 2 0316 Icircumflex
-char206 "
-:I 389,880,3,115,51,66 2 0317 Idieresis
-char207 "
--D 778,682,3,19,50,19 2 0320 Eth
-char208 "
-~N 778,866,3,101,52,66 2 0321 Ntilde
-char209 "
-`O 833,911,17,11,-26,11 2 0322 Ograve
-char210 "
-'O 833,911,17,11,-26,11 2 0323 Oacute
-char211 "
-^O 833,896,17,11,-26,11 2 0324 Ocircumflex
-char212 "
-~O 833,866,17,11,-26,11 2 0325 Otilde
-char213 "
-:O 833,880,17,11,-26,11 2 0326 Odieresis
-char214 "
-char215 606,479,0,0,-22 0 0327 multiply
-/O 833,730,54,14,-7,14 2 0330 Oslash
-char216 "
-`U 778,911,17,97,-33,66 2 0331 Ugrave
-char217 "
-'U 778,911,17,97,-33,66 2 0332 Uacute
-char218 "
-^U 778,896,17,97,-33,66 2 0333 Ucircumflex
-char219 "
-:U 778,880,17,97,-33,66 2 0334 Udieresis
-char220 "
-'Y 611,911,3,114,-4,66 2 0335 Yacute
-char221 "
-TP 667,681,3,27,39,27 2 0336 Thorn
-char222 "
-ss 556,726,271,43,181,43 3 0337 germandbls
-char223 "
-`a 556,719,17,13,6,13 2 0340 agrave
-char224 "
-'a 556,719,17,13,6,13 2 0341 aacute
-char225 "
-^a 556,704,17,21,6,21 2 0342 acircumflex
-char226 "
-~a 556,666,17,47,6,47 2 0343 atilde
-char227 "
-:a 556,688,17,32,6,32 2 0344 adieresis
-char228 "
-oa 556,714,17,13,6,13 2 0345 aring
-char229 "
-ae 738,469,17,23,6,23 0 0346 ae
-char230 "
-,c 444,469,218,42,18,42 0 0347 ccedilla
-char231 "
-`e 444,719,17,24,22,24 2 0350 egrave
-char232 "
-'e 444,719,17,54,22,54 2 0351 eacute
-char233 "
-^e 444,704,17,77,22,66 2 0352 ecircumflex
-char234 "
-:e 444,688,17,88,22,66 2 0353 edieresis
-char235 "
-`i 333,719,17,39,24,39 2 0354 igrave
-char236 "
-'i 333,719,17,109,24,66 2 0355 iacute
-char237 "
-^i 333,704,17,120,24,66 2 0356 icircumflex
-char238 "
-:i 333,688,17,143,24,66 2 0357 idieresis
-char239 "
-Sd 556,726,17,40,2,40 2 0360 eth
-char240 "
-~n 556,666,17,47,33,47 2 0361 ntilde
-char241 "
-`o 556,719,17,0,2 2 0362 ograve
-char242 "
-'o 556,719,17,0,2 2 0363 oacute
-char243 "
-^o 556,704,17,9,2,9 2 0364 ocircumflex
-char244 "
-~o 556,666,17,47,2,47 2 0365 otilde
-char245 "
-:o 556,688,17,32,2,32 2 0366 odieresis
-char246 "
-char247 606,501,5 0 0367 divide
-/o 556,506,50,16,36,16 0 0370 oslash
-char248 "
-`u 556,719,17,15,28,15 2 0371 ugrave
-char249 "
-'u 556,719,17,15,28,15 2 0372 uacute
-char250 "
-^u 556,704,17,15,28,15 2 0373 ucircumflex
-char251 "
-:u 556,688,17,32,28,32 2 0374 udieresis
-char252 "
-'y 556,719,271,35,37,35 3 0375 yacute
-char253 "
-Tp 556,726,271,10,71,10 3 0376 thorn
-char254 "
-:y 556,688,271,35,37,35 3 0377 ydieresis
-char255 "
diff --git a/devps/PI b/devps/PI
deleted file mode 100644
index 7839606f4..000000000
--- a/devps/PI
+++ /dev/null
@@ -1,453 +0,0 @@
-name PI
-internalname Palatino-Italic
-slant 10
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -55
-A w -37
-A v -37
-A ' -55
-A Y -55
-A W -55
-A V -74
-A T -55
-F . -111
-F , -111
-F A -111
-L y -37
-L ' -37
-L Y -74
-L W -74
-L V -74
-L T -74
-P . -129
-P , -129
-P A -129
-R y -37
-R Y -55
-R W -55
-R V -74
-R T -55
-T y -92
-T w -92
-T u -111
-T ; -74
-T s -111
-T r -111
-T . -74
-T o -111
-T i -55
-T - -55
-T hy -55
-T char173 -55
-T e -111
-T , -74
-T : -74
-T c -111
-T a -111
-T O -18
-T A -92
-V y -74
-V u -74
-V ; -37
-V r -92
-V . -129
-V o -74
-V i -74
-V - -55
-V hy -55
-V char173 -55
-V e -92
-V , -129
-V : -37
-V a -74
-V A -210
-W y -20
-W u -20
-W ; -18
-W r -20
-W . -55
-W o -20
-W i -20
-W - -18
-W hy -18
-W char173 -18
-W e -20
-W , -55
-W : -18
-W a -20
-W A -92
-Y v -74
-Y u -92
-Y ; -74
-Y q -92
-Y . -92
-Y p -74
-Y o -111
-Y i -55
-Y - -74
-Y hy -74
-Y char173 -74
-Y e -111
-Y , -92
-Y : -74
-Y a -92
-Y A -92
-f ' 55
-1 1 -55
-` ` -74
-` oq -74
-oq ` -74
-oq oq -74
-' t -37
-' s -55
-' ' -74
-r ' 37
-r q -18
-r . -74
-r o -18
-r h -18
-r g -18
-r e -18
-r , -74
-r c -18
-v . -55
-v , -55
-w . -55
-w , -55
-y . -37
-y , -37
-charset
-ha 606,689,0,0,-1 2 0000 asciicircum
-ti 606,339,0,0,-1 0 0001 asciitilde
-vS 556,907,18,33,8,33 2 0002 Scaron
-vZ 667,907,3,20,30,20 2 0003 Zcaron
-vs 389,687,11,80,41,68 2 0004 scaron
-vz 444,687,11,53,51,53 2 0005 zcaron
-:Y 667,847,3,58,-2,58 2 0006 Ydieresis
-tm 1000,689,0,1,-2,1 2 0007 trademark
-aq 333,733,0,5,-90,5 2 0010 quotesingle
-space 250 0 0040
-! 333,733,8,9,-26,9 2 0041 exclam
-" 500,733,0,5,-90,5 2 0042 quotedbl
-# 500,692,0,45,46,45 2 0043 numbersign
-sh "
-$ 500,733,113,2,35,2 2 0044 dollar
-Do "
-% 889,710,7,0,-24 2 0045 percent
-& 778,692,18,38,3,38 2 0046 ampersand
-' 278,733,0,30,-28,30 2 0047 quoteright
-( 333,733,106,48,-4,48 2 0050 parenleft
-) 333,733,106,0,48 2 0051 parenright
-* 389,706,0,61,-26,61 2 0052 asterisk
-+ 606,504,0,0,-1 0 0053 plus
-, 250,123,143,3,42,3 0 0054 comma
-- 333,281,0,21,31,21 0 0055 hyphen
-hy "
-char173 "
-. 250,112,5,0,-3 0 0056 period
-/ 296,733,119,146,90,68 2 0057 slash
-sl "
-0 500,699,11,30,14,30 2 0060 zero
-1 500,699,3,0,-4 2 0061 one
-2 500,699,3,0,38 2 0062 two
-3 500,699,11,0,28 2 0063 three
-4 500,699,3,28,35,28 2 0064 four
-5 500,693,11,41,36,41 2 0065 five
-6 500,699,11,19,1,19 2 0066 six
-7 500,692,3,52,-3,52 2 0067 seven
-8 500,699,11,19,14,19 2 0070 eight
-9 500,699,11,18,18,18 2 0071 nine
-: 250,458,5,7,6,7 0 0072 colon
-; 250,456,146,19,59,19 0 0073 semicolon
-< 606,516,6,0,-3 0 0074 less
-= 606,378,0,0,-1 0 0075 equal
-> 606,516,6,0,-3 0 0076 greater
-? 500,706,8,0,-64 2 0077 question
-@ 747,706,18,21,23,21 2 0100 at
-at "
-A 722,705,3,5,69,5 2 0101 A
-B 611,692,6,0,24 2 0102 B
-C 667,706,18,34,5,34 2 0103 C
-D 778,692,3,13,22,13 2 0104 D
-E 611,692,3,9,20,9 2 0105 E
-F 556,692,3,42,50,42 2 0106 F
-G 722,706,18,22,0,22 2 0107 G
-H 778,692,3,72,53,68 2 0110 H
-I 333,692,3,71,43,68 2 0111 I
-J 333,692,206,75,85,68 2 0112 J
-K 667,692,3,66,37,66 2 0113 K
-L 556,692,3,17,34,17 2 0114 L
-M 944,692,18,46,69,46 2 0115 M
-N 778,692,11,76,48,68 2 0116 N
-O 778,706,18,20,-3,20 2 0117 O
-P 611,692,3,33,41,33 2 0120 P
-Q 778,706,201,20,-3,20 2 0121 Q
-R 667,692,3,22,41,22 2 0122 R
-S 556,706,18,0,8 2 0123 S
-T 611,692,3,74,-3,68 2 0124 T
-U 778,692,18,70,-38,68 2 0125 U
-V 722,692,8,82,-25,68 2 0126 V
-W 944,700,8,86,-21,68 2 0127 W
-X 722,692,3,62,30,62 2 0130 X
-Y 667,705,3,58,-2,58 2 0131 Y
-Z 667,692,3,20,30,20 2 0132 Z
-[ 333,733,100,43,32,43 2 0133 bracketleft
-lB "
-\ 606,733,0,0,-31 2 0134 backslash
-rs "
-] 333,733,100,32,43,32 2 0135 bracketright
-rB "
-a^ 333,679,0,67,-6,67 2 0136 circumflex
-^ "
-_ 500,0,125,50,50,50 0 0137 underscore
-` 278,733,0,30,-28,30 2 0140 quoteleft
-oq "
-a 444,482,11,12,46,12 0 0141 a
-b 463,733,11,20,13,20 2 0142 b
-c 407,482,11,32,25,32 0 0143 c
-d 500,733,11,33,33,33 2 0144 d
-e 389,482,11,35,35,35 0 0145 e
-f 278,733,276,185,212,68 3 0146 f
-g 500,482,276,48,87,48 1 0147 g
-h 500,733,9,21,40,21 2 0150 h
-i 278,712,9,36,16,36 2 0151 i
-j 278,712,276,37,120,37 3 0152 j
-k 444,733,9,55,42,55 2 0153 k
-l 278,733,9,23,14,23 2 0154 l
-m 778,482,9,12,26,12 0 0155 m
-n 556,482,9,8,26,8 0 0156 n
-o 444,482,11,17,33,17 0 0157 o
-p 500,482,276,15,57,15 1 0160 p
-q 463,482,276,19,26,19 1 0161 q
-r 389,482,9,45,24,45 0 0162 r
-s 389,482,11,6,41,6 0 0163 s
-t 333,646,9,27,9,27 2 0164 t
-u 556,482,11,6,18,6 0 0165 u
-v 500,482,11,27,29,27 0 0166 v
-w 722,482,11,27,29,27 0 0167 w
-x 500,482,11,34,41,34 0 0170 x
-y 500,482,276,40,58,40 1 0171 y
-z 444,482,11,22,51,22 0 0172 z
-lC 333,733,100,36,35,36 2 0173 braceleft
-{ "
-ba 606,733,0,0,-225 2 0174 bar
-| "
-rC 333,733,100,35,36,35 2 0175 braceright
-} "
-a~ 333,638,0,107,-13,68 0 0176 tilde
-~ "
-bq 278,120,122,0,23 0 0200 quotesinglbase
-Fo 500,440,0,0,-7 0 0201 guillemotleft
-char171 "
-Fc 500,440,0,0,-13 0 0202 guillemotright
-char187 "
-bu 500,526,0,0,-36 0 0203 bullet
-Fn 500,708,276,20,45,20 3 0204 florin
-f/ 167,699,0,220,220,68 2 0205 fraction
-%0 1000,717,6,0,-22 2 0206 perthousand
-dg 500,692,0,19,2,19 2 0207 dagger
-dd 500,692,162,44,40,44 2 0210 daggerdbl
-en 500,278,0,60,60,60 0 0211 endash
-em 1000,278,0,60,60,60 0 0212 emdash
-fi 528,733,276,24,212,24 3 0214 fi
-fl 545,733,276,25,212,25 3 0215 fl
-.i 278,482,9,13,16,13 0 0220 dotlessi
-ga 333,687,0,27,-36,27 2 0222 grave
-a" 333,730,0,102,4,68 2 0223 hungarumlaut
-a. 333,645,0,0,-125 2 0224 dotaccent
-ab 333,677,0,110,-42,68 2 0225 breve
-ah 333,679,0,126,-54,68 2 0226 caron
-ao 333,708,0,76,-109,68 2 0227 ring
-ho 333,0,207,0,12 0 0230 ogonek
-lq 500,733,0,25,-48,25 2 0231 quotedblleft
-rq 500,733,0,25,-48,25 2 0232 quotedblright
-oe 669,482,11,35,33,35 0 0233 oe
-/l 278,733,9,74,60,68 2 0234 lslash
-Bq 500,120,122,0,7 0 0235 quotedblbase
-OE 1028,706,18,11,-6,11 2 0236 OE
-/L 556,692,3,17,66,17 2 0237 Lslash
-r! 333,467,276,0,35 1 0241 exclamdown
-char161 "
-ct 500,551,96,0,-6 0 0242 cent
-char162 "
-Po 500,708,18,29,48,29 2 0243 sterling
-char163 "
-Cs 500,577,0,36,36,36 0 0244 currency
-char164 "
-Ye 500,699,3,62,15,62 2 0245 yen
-char165 "
-bb 606,733,0,0,-225 2 0246 brokenbar
-char166 "
-sc 500,706,220,13,36,13 2 0247 section
-char167 "
-ad 333,637,0,95,-28,68 0 0250 dieresis
-char168 "
-co 747,706,18,39,39,39 2 0251 copyright
-char169 "
-Of 333,699,0,38,-10,38 2 0252 ordfeminine
-char170 "
-fo 333,440,0,0,-7 0 0253 guilsinglleft
-no 606,378,0,0,-1 0 0254 logicalnot
-char172 "
-\- 606,280,0,0,-1 0 0255 minus
-rg 747,706,18,39,39,39 2 0256 registered
-char174 "
-a- 333,589,0,103,-24,68 0 0257 macron
-char175 "
-de 400,689,0,40,-40,40 2 0260 degree
-char176 "
-char177 606,504,0,0,-1 0 0261 plusminus
-S2 300,699,0,40,37,40 2 0262 twosuperior
-char178 "
-S3 300,699,0,54,22,54 2 0263 threesuperior
-char179 "
-aa 333,687,0,63,-72,63 2 0264 acute
-char180 "
-char181 556,482,226,6,35,6 0 0265 mu
-ps 500,692,224,161,17,68 2 0266 paragraph
-char182 "
-char183 250,312,0,0,-3 0 0267 periodcentered
-ac 333,0,216,0,59 0 0270 cedilla
-char184 "
-S1 300,699,0,35,-11,35 2 0271 onesuperior
-char185 "
-Om 333,699,0,39,-16,39 2 0272 ordmasculine
-char186 "
-fc 333,440,0,0,-13 0 0273 guilsinglright
-14 750,699,2,15,19,15 2 0274 onequarter
-char188 "
-12 750,699,2,21,19,21 2 0275 onehalf
-char189 "
-34 750,699,2,15,15,15 2 0276 threequarters
-char190 "
-r? 500,467,246,0,-7 0 0277 questiondown
-char191 "
-`A 722,897,3,5,69,5 2 0300 Agrave
-char192 "
-'A 722,897,3,5,69,5 2 0301 Aacute
-char193 "
-^A 722,889,3,5,69,5 2 0302 Acircumflex
-char194 "
-~A 722,866,3,5,69,5 2 0303 Atilde
-char195 "
-:A 722,847,3,5,69,5 2 0304 Adieresis
-char196 "
-oA 722,918,3,5,69,5 2 0305 Aring
-char197 "
-AE 941,692,3,11,54,11 2 0306 AE
-char198 "
-,C 667,706,216,34,5,34 2 0307 Ccedilla
-char199 "
-`E 611,897,3,9,20,9 2 0310 Egrave
-char200 "
-'E 611,897,3,9,20,9 2 0311 Eacute
-char201 "
-^E 611,889,3,9,20,9 2 0312 Ecircumflex
-char202 "
-:E 611,847,3,9,20,9 2 0313 Edieresis
-char203 "
-`I 333,897,3,71,43,68 2 0314 Igrave
-char204 "
-'I 333,897,3,123,43,68 2 0315 Iacute
-char205 "
-^I 333,889,3,107,43,68 2 0316 Icircumflex
-char206 "
-:I 333,847,3,135,43,68 2 0317 Idieresis
-char207 "
--D 778,692,3,13,31,13 2 0320 Eth
-char208 "
-~N 778,866,11,76,48,68 2 0321 Ntilde
-char209 "
-`O 778,897,18,20,-3,20 2 0322 Ograve
-char210 "
-'O 778,897,18,20,-3,20 2 0323 Oacute
-char211 "
-^O 778,889,18,20,-3,20 2 0324 Ocircumflex
-char212 "
-~O 778,866,18,20,-3,20 2 0325 Otilde
-char213 "
-:O 778,847,18,20,-3,20 2 0326 Odieresis
-char214 "
-char215 606,474,0,0,-33 0 0327 multiply
-/O 778,721,39,34,18,34 2 0330 Oslash
-char216 "
-`U 778,897,18,70,-38,68 2 0331 Ugrave
-char217 "
-'U 778,897,18,70,-38,68 2 0332 Uacute
-char218 "
-^U 778,889,18,70,-38,68 2 0333 Ucircumflex
-char219 "
-:U 778,847,18,70,-38,68 2 0334 Udieresis
-char220 "
-'Y 667,897,3,58,-2,58 2 0335 Yacute
-char221 "
-TP 611,692,3,9,41,9 2 0336 Thorn
-char222 "
-ss 500,733,276,38,210,38 3 0337 germandbls
-char223 "
-`a 444,707,11,12,46,12 2 0340 agrave
-char224 "
-'a 444,707,11,20,46,20 2 0341 aacute
-char225 "
-^a 444,699,11,12,46,12 2 0342 acircumflex
-char226 "
-~a 444,650,11,52,46,52 2 0343 atilde
-char227 "
-:a 444,657,11,40,46,40 2 0344 adieresis
-char228 "
-oa 444,728,11,12,46,12 2 0345 aring
-char229 "
-ae 638,482,11,35,49,35 0 0346 ae
-char230 "
-,c 407,482,216,32,25,32 0 0347 ccedilla
-char231 "
-`e 389,707,11,35,35,35 2 0350 egrave
-char232 "
-'e 389,707,11,55,35,55 2 0351 eacute
-char233 "
-^e 389,699,11,59,35,59 2 0352 ecircumflex
-char234 "
-:e 389,657,11,67,35,67 2 0353 edieresis
-char235 "
-`i 278,707,9,43,16,43 2 0354 igrave
-char236 "
-'i 278,707,9,103,16,68 2 0355 iacute
-char237 "
-^i 278,699,9,95,21,68 2 0356 icircumflex
-char238 "
-:i 278,657,9,123,16,68 2 0357 idieresis
-char239 "
-Sd 444,733,11,84,33,68 2 0360 eth
-char240 "
-~n 556,650,9,8,26,8 2 0361 ntilde
-char241 "
-`o 444,707,11,17,33,17 2 0362 ograve
-char242 "
-'o 444,707,11,20,33,20 2 0363 oacute
-char243 "
-^o 444,699,11,17,33,17 2 0364 ocircumflex
-char244 "
-~o 444,650,11,52,33,52 2 0365 otilde
-char245 "
-:o 444,657,11,40,33,40 2 0366 odieresis
-char246 "
-char247 606,504,0,0,-1 0 0367 divide
-/o 444,510,24,66,68,66 0 0370 oslash
-char248 "
-`u 556,707,11,6,18,6 2 0371 ugrave
-char249 "
-'u 556,707,11,6,18,6 2 0372 uacute
-char250 "
-^u 556,699,11,6,18,6 2 0373 ucircumflex
-char251 "
-:u 556,657,11,6,18,6 2 0374 udieresis
-char252 "
-'y 500,707,276,40,58,40 3 0375 yacute
-char253 "
-Tp 500,733,276,0,89 3 0376 thorn
-char254 "
-:y 500,657,276,40,58,40 3 0377 ydieresis
-char255 "
diff --git a/devps/PR b/devps/PR
deleted file mode 100644
index 4dd5626d4..000000000
--- a/devps/PR
+++ /dev/null
@@ -1,456 +0,0 @@
-name PR
-internalname Palatino-Roman
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -74
-A w -74
-A v -92
-A ' -74
-A Y -111
-A W -74
-A V -111
-A T -74
-F . -92
-F , -92
-F A -74
-L y -55
-L ' -74
-L Y -92
-L W -74
-L V -92
-L T -74
-P . -129
-P , -129
-P A -92
-R y -37
-R Y -37
-R W -37
-R V -55
-R T -37
-T y -90
-T w -90
-T u -90
-T ; -55
-T s -90
-T r -90
-T . -74
-T o -92
-T i -55
-T - -55
-T hy -55
-T char173 -55
-T e -92
-T , -74
-T : -55
-T c -111
-T a -92
-T O -18
-T A -74
-V y -92
-V u -92
-V ; -55
-V r -92
-V . -129
-V o -111
-V i -55
-V - -74
-V hy -74
-V char173 -74
-V e -111
-V , -129
-V : -55
-V a -92
-V A -111
-W y -50
-W u -50
-W ; -18
-W r -74
-W . -92
-W o -92
-W i -55
-W - -55
-W hy -55
-W char173 -55
-W e -92
-W , -92
-W : -18
-W a -92
-W A -92
-Y v -90
-Y u -90
-Y ; -74
-Y q -90
-Y . -111
-Y p -111
-Y o -92
-Y i -55
-Y - -92
-Y hy -92
-Y char173 -92
-Y e -92
-Y , -111
-Y : -74
-Y a -92
-Y A -92
-f ' 55
-f f -18
-1 1 -55
-` ` -37
-` oq -37
-oq ` -37
-oq oq -37
-' ' -37
-r u -8
-r ' 74
-r q -18
-r . -74
-r o -18
-r - -18
-r hy -18
-r char173 -18
-r h -18
-r g -18
-r e -18
-r d -18
-r , -74
-r c -18
-v . -111
-v , -111
-w . -92
-w , -92
-y . -111
-y , -111
-charset
-ha 606,689 2 0000 asciicircum
-ti 606,347 0 0001 asciitilde
-vS 525,908,20 2 0002 Scaron
-vZ 667,908,3 2 0003 Zcaron
-vs 424,685,20 2 0004 scaron
-vz 500,685,3 2 0005 zcaron
-:Y 667,868,3 2 0006 Ydieresis
-tm 979,689 2 0007 trademark
-aq 208,709 2 0010 quotesingle
-space 250 0 0040
-! 278,694,5 2 0041 exclam
-" 371,709 2 0042 quotedbl
-# 500,684 2 0043 numbersign
-sh "
-$ 500,731,116 2 0044 dollar
-Do "
-% 840,709,20 2 0045 percent
-& 778,689,20 2 0046 ampersand
-' 278,709 2 0047 quoteright
-( 333,726,215 2 0050 parenleft
-) 333,726,215 2 0051 parenright
-* 389,689 2 0052 asterisk
-+ 606,512 0 0053 plus
-, 250,123,155 0 0054 comma
-- 333,287 0 0055 hyphen
-hy "
-char173 "
-. 250,111,5 0 0056 period
-/ 606,726,119 2 0057 slash
-sl "
-0 500,689,20 2 0060 zero
-1 500,694,3 2 0061 one
-2 500,689,3 2 0062 two
-3 500,689,20 2 0063 three
-4 500,694,3 2 0064 four
-5 500,689,20 2 0065 five
-6 500,689,20 2 0066 six
-7 500,689,3 2 0067 seven
-8 500,689,20 2 0070 eight
-9 500,689,20 2 0071 nine
-: 250,456,5 0 0072 colon
-; 250,456,153 0 0073 semicolon
-< 606,522 0 0074 less
-= 606,386 0 0075 equal
-> 606,522 0 0076 greater
-? 444,694,5 2 0077 question
-@ 747,694,20 2 0100 at
-at "
-A 778,700,3 2 0101 A
-B 611,692,3 2 0102 B
-C 709,709,20 2 0103 C
-D 774,692,3 2 0104 D
-E 611,692,3 2 0105 E
-F 556,692,3 2 0106 F
-G 763,709,20 2 0107 G
-H 832,692,3 2 0110 H
-I 337,692,3 2 0111 I
-J 333,692,194 2 0112 J
-K 726,692,3 2 0113 K
-L 611,692,3 2 0114 L
-M 946,692,13 2 0115 M
-N 831,692,20 2 0116 N
-O 786,709,20 2 0117 O
-P 604,692,3 2 0120 P
-Q 786,709,176 2 0121 Q
-R 668,692,3 2 0122 R
-S 525,709,20 2 0123 S
-T 613,692,3 2 0124 T
-U 778,692,20 2 0125 U
-V 722,692,9 2 0126 V
-W 1000,700,9 2 0127 W
-X 667,700,3 2 0130 X
-Y 667,704,3 2 0131 Y
-Z 667,692,3 2 0132 Z
-[ 333,726,184 2 0133 bracketleft
-lB "
-\ 606,726 2 0134 backslash
-rs "
-] 333,726,184 2 0135 bracketright
-rB "
-a^ 333,677 2 0136 circumflex
-^ "
-_ 500,0,125 0 0137 underscore
-` 278,709 2 0140 quoteleft
-oq "
-a 500,469,12 0 0141 a
-b 553,726,12 2 0142 b
-c 444,469,20 0 0143 c
-d 611,726,12 2 0144 d
-e 479,469,20 0 0145 e
-f 333,728,3 2 0146 f
-g 556,469,283 1 0147 g
-h 582,726,3 2 0150 h
-i 291,687,3 2 0151 i
-j 234,688,283 3 0152 j
-k 556,726,12 2 0153 k
-l 291,726,3 2 0154 l
-m 883,469,3 0 0155 m
-n 582,469,3 0 0156 n
-o 546,469,20 0 0157 o
-p 601,469,281 1 0160 p
-q 560,469,281 1 0161 q
-r 395,469,3 0 0162 r
-s 424,469,20 0 0163 s
-t 326,621,12 2 0164 t
-u 603,469,12 0 0165 u
-v 565,459,7 0 0166 v
-w 834,469,7 0 0167 w
-x 516,469,3 0 0170 x
-y 556,459,283 1 0171 y
-z 500,462,3 0 0172 z
-lC 333,726,175 2 0173 braceleft
-{ "
-ba 606,726 2 0174 bar
-| "
-rC 333,726,175 2 0175 braceright
-} "
-a~ 333,640 2 0176 tilde
-~ "
-bq 278,110,153 0 0200 quotesinglbase
-Fo 500,428 0 0201 guillemotleft
-char171 "
-Fc 500,428 0 0202 guillemotright
-char187 "
-bu 606,516 0 0203 bullet
-Fn 500,706,262 2 0204 florin
-f/ 167,689 2 0205 fraction
-%0 1144,709,20 2 0206 perthousand
-dg 500,694,5 2 0207 dagger
-dd 500,694,249 2 0210 daggerdbl
-en 500,277 0 0211 endash
-em 1000,277 0 0212 emdash
-fi 605,728,3 2 0214 fi
-fl 608,728,3 2 0215 fl
-.i 287,469,3 0 0220 dotlessi
-ga 333,677 2 0222 grave
-a" 380,687 2 0223 hungarumlaut
-a. 250,637 2 0224 dotaccent
-ab 333,664 2 0225 breve
-ah 333,677 2 0226 caron
-ao 333,696 2 0227 ring
-ho 313,0,165 0 0230 ogonek
-lq 500,709 2 0231 quotedblleft
-rq 500,709 2 0232 quotedblright
-oe 827,469,20 0 0233 oe
-/l 291,726,3 2 0234 lslash
-Bq 500,110,153 0 0235 quotedblbase
-OE 998,709,20 2 0236 OE
-/L 611,692,3 2 0237 Lslash
-r! 278,469,225 0 0241 exclamdown
-char161 "
-ct 500,562,101 0 0242 cent
-char162 "
-Po 500,694,13 2 0243 sterling
-char163 "
-Cs 500,531 0 0244 currency
-char164 "
-Ye 500,701,3 2 0245 yen
-char165 "
-bb 606,726 2 0246 brokenbar
-char166 "
-sc 500,709,219 2 0247 section
-char167 "
-ad 333,637 2 0250 dieresis
-char168 "
-co 747,706,18 2 0251 copyright
-char169 "
-Of 333,709 2 0252 ordfeminine
-char170 "
-fo 331,428 0 0253 guilsinglleft
-no 606,386 0 0254 logicalnot
-char172 "
-\- 606,289 0 0255 minus
-rg 747,706,18 2 0256 registered
-char174 "
-a- 333,591 0 0257 macron
-char175 "
-de 400,689 2 0260 degree
-char176 "
-char177 606,512 0 0261 plusminus
-S2 300,689 2 0262 twosuperior
-char178 "
-S3 300,689 2 0263 threesuperior
-char179 "
-aa 333,677 2 0264 acute
-char180 "
-char181 603,469,236 0 0265 mu
-ps 628,694,150 2 0266 paragraph
-char182 "
-char183 250,319 0 0267 periodcentered
-ac 333,0,225 0 0270 cedilla
-char184 "
-S1 300,692 2 0271 onesuperior
-char185 "
-Om 333,709 2 0272 ordmasculine
-char186 "
-fc 331,428 0 0273 guilsinglright
-14 750,692,3 2 0274 onequarter
-char188 "
-12 750,692,3 2 0275 onehalf
-char189 "
-34 750,689,3 2 0276 threequarters
-char190 "
-r? 444,469,231 0 0277 questiondown
-char191 "
-`A 778,908,3 2 0300 Agrave
-char192 "
-'A 778,908,3 2 0301 Aacute
-char193 "
-^A 778,908,3 2 0302 Acircumflex
-char194 "
-~A 778,871,3 2 0303 Atilde
-char195 "
-:A 778,868,3 2 0304 Adieresis
-char196 "
-oA 778,927,3 2 0305 Aring
-char197 "
-AE 944,692,3 2 0306 AE
-char198 "
-,C 709,709,225 2 0307 Ccedilla
-char199 "
-`E 611,908,3 2 0310 Egrave
-char200 "
-'E 611,908,3 2 0311 Eacute
-char201 "
-^E 611,908,3 2 0312 Ecircumflex
-char202 "
-:E 611,868,3 2 0313 Edieresis
-char203 "
-`I 337,908,3 2 0314 Igrave
-char204 "
-'I 337,908,3 2 0315 Iacute
-char205 "
-^I 337,908,3 2 0316 Icircumflex
-char206 "
-:I 337,868,3 2 0317 Idieresis
-char207 "
--D 774,692,3 2 0320 Eth
-char208 "
-~N 831,871,20 2 0321 Ntilde
-char209 "
-`O 786,908,20 2 0322 Ograve
-char210 "
-'O 786,908,20 2 0323 Oacute
-char211 "
-^O 786,908,20 2 0324 Ocircumflex
-char212 "
-~O 786,883,20 2 0325 Otilde
-char213 "
-:O 786,868,20 2 0326 Odieresis
-char214 "
-char215 606,474 0 0327 multiply
-/O 833,709,20 2 0330 Oslash
-char216 "
-`U 778,908,20 2 0331 Ugrave
-char217 "
-'U 778,908,20 2 0332 Uacute
-char218 "
-^U 778,908,20 2 0333 Ucircumflex
-char219 "
-:U 778,868,20 2 0334 Udieresis
-char220 "
-'Y 667,908,3 2 0335 Yacute
-char221 "
-TP 604,692,3 2 0336 Thorn
-char222 "
-ss 556,731,9 2 0337 germandbls
-char223 "
-`a 500,697,12 2 0340 agrave
-char224 "
-'a 500,697,12 2 0341 aacute
-char225 "
-^a 500,697,12 2 0342 acircumflex
-char226 "
-~a 500,652,12 2 0343 atilde
-char227 "
-:a 500,657,12 2 0344 adieresis
-char228 "
-oa 500,716,12 2 0345 aring
-char229 "
-ae 758,469,20 0 0346 ae
-char230 "
-,c 444,469,225 0 0347 ccedilla
-char231 "
-`e 479,697,20 2 0350 egrave
-char232 "
-'e 479,697,20 2 0351 eacute
-char233 "
-^e 479,697,20 2 0352 ecircumflex
-char234 "
-:e 479,657,20 2 0353 edieresis
-char235 "
-`i 287,697,3 2 0354 igrave
-char236 "
-'i 287,697,3 2 0355 iacute
-char237 "
-^i 287,697,3 2 0356 icircumflex
-char238 "
-:i 287,657,3 2 0357 idieresis
-char239 "
-Sd 546,728,20 2 0360 eth
-char240 "
-~n 582,652,3 2 0361 ntilde
-char241 "
-`o 546,697,20 2 0362 ograve
-char242 "
-'o 546,697,20 2 0363 oacute
-char243 "
-^o 546,697,20 2 0364 ocircumflex
-char244 "
-~o 546,652,20 2 0365 otilde
-char245 "
-:o 546,657,20 2 0366 odieresis
-char246 "
-char247 606,512 0 0367 divide
-/o 556,474,23 0 0370 oslash
-char248 "
-`u 603,697,12 2 0371 ugrave
-char249 "
-'u 603,697,12 2 0372 uacute
-char250 "
-^u 603,697,12 2 0373 ucircumflex
-char251 "
-:u 603,657,12 2 0374 udieresis
-char252 "
-'y 556,697,283 3 0375 yacute
-char253 "
-Tp 601,726,281 3 0376 thorn
-char254 "
-:y 556,657,283 3 0377 ydieresis
-char255 "
diff --git a/devps/S b/devps/S
deleted file mode 100644
index 56fbaaa7a..000000000
--- a/devps/S
+++ /dev/null
@@ -1,227 +0,0 @@
-name S
-internalname Symbol
-special
-spacewidth 250
-charset
-space 250 0 0040
-! 333,672,17 3 0041 exclam
-fa 713,705 3 0042 universal
-# 500,673,16 3 0043 numbersign
-sh "
-te 549,707 3 0044 existential
-% 833,655,36 3 0045 percent
-& 778,661,18 3 0046 ampersand
-st 439,500,17 3 0047 suchthat
-( 333,673,191 3 0050 parenleft
-) 333,673,191 3 0051 parenright
-** 500,551 3 0052 asteriskmath
-+ 549,533 3 0053 plus
-pl "
-, 250,104,152 3 0054 comma
-\- 549,288 3 0055 minus
-mi "
-. 250,95,17 3 0056 period
-/ 278,646,18 3 0057 slash
-sl "
-0 500,685,17 3 0060 zero
-1 500,673 3 0061 one
-2 500,686 3 0062 two
-3 500,685,17 3 0063 three
-4 500,685 3 0064 four
-5 500,685,17 3 0065 five
-6 500,685,17 3 0066 six
-7 500,673,16 3 0067 seven
-8 500,685,18 3 0070 eight
-9 500,685,18 3 0071 nine
-: 278,460,17 3 0072 colon
-; 278,460,152 3 0073 semicolon
-< 549,522 3 0074 less
-= 549,390 3 0075 equal
-eq "
-> 549,522 3 0076 greater
-? 444,686,17 3 0077 question
-=~ 549,475 3 0100 congruent
-*A 722,673 3 0101 Alpha
-*B 667,673 3 0102 Beta
-*X 722,673 3 0103 Chi
-*D 612,688 3 0104 Delta
-*E 611,673 3 0105 Epsilon
-*F 763,673 3 0106 Phi
-*G 603,673 3 0107 Gamma
-*Y 722,673 3 0110 Eta
-*I 333,673 3 0111 Iota
-+h 631,689,18 3 0112 theta1
-*K 722,673 3 0113 Kappa
-*L 686,688 3 0114 Lambda
-*M 889,673 3 0115 Mu
-*N 722,673,8 3 0116 Nu
-*O 722,685,17 3 0117 Omicron
-*P 768,673 3 0120 Pi
-*H 741,685,17 3 0121 Theta
-*R 556,673 3 0122 Rho
-*S 592,673 3 0123 Sigma
-*T 611,673 3 0124 Tau
---- 690,673 3 0125 Upsilon
-ts 439,500,233 3 0126 sigma1
-*W 768,688 3 0127 Omega
-*C 645,673 3 0130 Xi
-*Q 795,684 3 0131 Psi
-*Z 611,673 3 0132 Zeta
-[ 333,674,155 3 0133 bracketleft
-lB "
-3d 863,478 3 0134 therefore
-tf "
-] 333,674,155 3 0135 bracketright
-rB "
-pp 658,674 3 0136 perpendicular
-_ 500,0,252 3 0137 underscore
-radicalex 500,917 3 0140 radicalex
-*a 631,500,18 3 0141 alpha
-*b 549,741,223 3 0142 beta
-*x 549,499,231 3 0143 chi
-*d 494,740,19 3 0144 delta
-*e 439,502,19 3 0145 epsilon
-*f 521,671,224 3 0146 phi
-*g 411,499,225 3 0147 gamma
-*y 603,514,202 3 0150 eta
-*i 329,503,17 3 0151 iota
-+f 603,499,224 3 0152 phi1
-*k 549,501 3 0153 kappa
-*l 549,739,17 3 0154 lambda
-char181 576,500,223 3 0155 mu
-*m "
-*n 521,507,16 3 0156 nu
-*o 549,499,19 3 0157 omicron
-*p 549,487,19 3 0160 pi
-*h 521,690,17 3 0161 theta
-*r 549,499,230 3 0162 rho
-*s 603,500,21 3 0163 sigma
-*t 439,500,19 3 0164 tau
-*u 576,507,18 3 0165 upsilon
-+p 713,583,18 3 0166 omega1
-*w 686,500,17 3 0167 omega
-*c 493,766,224 3 0170 xi
-*q 686,500,228 3 0171 psi
-*z 494,756,225 3 0172 zeta
-lC 480,673,183 3 0173 braceleft
-{ "
-ba 200,673,177 3 0174 bar
-| "
-rC 480,673,183 3 0175 braceright
-} "
-ap 549,307 3 0176 similar
-*U 620,685 3 0241 Upsilon1
-fm 247,735 3 0242 minute
-<= 549,639 3 0243 lessequal
-f/ 167,677,12 3 0244 fraction
-if 713,404 3 0245 infinity
-Fn 500,686,193 3 0246 florin
-CL 753,533,26 3 0247 club
-DI 753,550,36 3 0250 diamond
-HE 753,532,33 3 0251 heart
-SP 753,548,36 3 0252 spade
-<> 1042,511,15 3 0253 arrowboth
-<- 987,511,15 3 0254 arrowleft
-ua 603,910 3 0255 arrowup
-arrowverttp "
--> 987,511,15 3 0256 arrowright
-da 603,888,22 3 0257 arrowdown
-arrowvertbt "
-de 400,685 3 0260 degree
-char176 "
-char177 549,645 3 0261 plusminus
-+- "
-sd 411,737 3 0262 second
->= 549,639 3 0263 greaterequal
-char215 549,524 3 0264 multiply
-mu "
-pt 713,404 3 0265 proportional
-pd 494,746,20 3 0266 partialdiff
-bu 460,473 3 0267 bullet
-char247 549,456 3 0270 divide
-di "
-!= 549,549,25 3 0271 notequal
-== 549,443 3 0272 equivalence
-~~ 549,394 3 0273 approxequal
-~= "
---- 1000,95,17 3 0274 ellipsis
-arrowvertex 603,1010,120 3 0275 arrowvertex
-an 1000,276 3 0276 arrowhorizex
-CR 658,629,16 3 0277 carriagereturn
-Ah 823,658,18 3 0300 aleph
-Im 686,740,53 3 0301 Ifraktur
-Re 795,734,15 3 0302 Rfraktur
-wp 987,573,211 3 0303 weierstrass
-c* 768,673,17 3 0304 circlemultiply
-c+ 768,675,15 3 0305 circleplus
-es 823,719,24 3 0306 emptyset
-ca 768,509 3 0307 intersection
-cu 768,492,17 3 0310 union
-sp 713,470 3 0311 propersuperset
-ip 713,470,125 3 0312 reflexsuperset
-nb 713,540,70 3 0313 notsubset
-sb 713,470 3 0314 propersubset
-ib 713,470,125 3 0315 reflexsubset
-mo 713,468 3 0316 element
-nm 713,555,58 3 0317 notelement
-/_ 768,673 3 0320 angle
-gr 713,718,19 3 0321 gradient
---- 790,673,17 3 0322 registerserif
---- 790,675,15 3 0323 copyrightserif
---- 890,673 3 0324 trademarkserif
-product 823,751,101 3 0325 product
-sr 549,917,38 3 0326 radical
-md 250,310 3 0327 dotmath
-no 713,288 3 0330 logicalnot
-char172 "
-AN 603,454 3 0331 logicaland
-OR 603,477 3 0332 logicalor
-hA 1042,510,20 3 0333 arrowdblboth
-lA 987,513,15 3 0334 arrowdblleft
-uA 603,911 3 0335 arrowdblup
-rA 987,508,20 3 0336 arrowdblright
-dA 603,890,19 3 0337 arrowdbldown
-lz 494,745 3 0340 lozenge
-la 329,746,198 3 0341 angleleft
---- 790,670,20 3 0342 registersans
---- 790,675,15 3 0343 copyrightsans
---- 786,673 3 0344 trademarksans
-sum 713,752,108 3 0345 summation
-parenlefttp 384,926,293 3 0346 parenlefttp
-parenleftex 384,920,80 3 0347 parenleftex
-parenleftbt 384,920,293 3 0350 parenleftbt
-bracketlefttp 384,925,75 3 0351 bracketlefttp
-lc "
-bracketleftex 384,925,75 3 0352 bracketleftex
-bracketleftbt 384,925,75 3 0353 bracketleftbt
-lf "
-bracelefttp 494,925,75 3 0354 bracelefttp
-lt "
-braceleftmid 494,925,75 3 0355 braceleftmid
-lk "
-braceleftbt 494,925,75 3 0356 braceleftbt
-lb "
-braceex 494,925,75 3 0357 braceex
-bracerightex "
-braceleftex "
-barex "
-bv "
-ra 329,746,198 3 0361 angleright
-is 274,916,107,67,52,-10 3 0362 integral
---- 686,921,83 3 0363 integraltp
---- 686,975,88 3 0364 integralex
---- 686,921,81 3 0365 integralbt
-parenrighttp 384,926,293 3 0366 parenrighttp
-parenrightex 384,920,80 3 0367 parenrightex
-parenrightbt 384,920,293 3 0370 parenrightbt
-bracketrighttp 384,925,75 3 0371 bracketrighttp
-rc "
-bracketrightex 384,925,75 3 0372 bracketrightex
-bracketrightbt 384,925,75 3 0373 bracketrightbt
-rf "
-bracerighttp 494,925,75 3 0374 bracerighttp
-rt "
-bracerightmid 494,925,75 3 0375 bracerightmid
-rk "
-bracerightbt 494,925,75 3 0376 bracerightbt
-rb "
diff --git a/devps/SS b/devps/SS
deleted file mode 100644
index 02b999c17..000000000
--- a/devps/SS
+++ /dev/null
@@ -1,194 +0,0 @@
-name SS
-internalname Symbol-Slanted
-special
-slant 15.5
-spacewidth 223
-charset
-space 223 0 0040
---- 296,599,15,137,-72,99 3 0041 exclam
---- 635,627,0,216,-173,99 3 0042 universal
---- 445,599,15,162,-21,99 3 0043 numbersign
---- 489,629,0,183,28,99 3 0044 existential
---- 741,583,32,75,-97,75 3 0045 percent
---- 692,589,16,103,-18,99 3 0046 ampersand
---- 391,444,15,109,6,99 3 0047 suchthat
---- 296,599,170,203,-39,99 3 0050 parenleft
---- 296,600,170,93,72,93 3 0051 parenright
---- 445,490,0,105,-76,99 3 0052 asteriskmath
---- 489,474,0,123,-26,99 3 0053 plus
---- 223,93,136,10,41,10 3 0054 comma
---- 489,256,0,117,-24,99 3 0055 minus
---- 223,85,15,1,-20,1 3 0056 period
---- 247,575,15,208,55,99 3 0057 slash
---- 445,610,15,142,-40,99 3 0060 zero
---- 445,599,0,56,-57,56 3 0061 one
---- 445,611,0,129,28,99 3 0062 two
---- 445,611,16,115,-6,99 3 0063 three
---- 445,610,0,135,-8,99 3 0064 four
---- 445,610,15,188,14,99 3 0065 five
---- 445,610,16,193,-37,99 3 0066 six
---- 445,599,15,190,-101,99 3 0067 seven
---- 445,611,16,141,-32,99 3 0070 eight
---- 445,609,15,140,-2,99 3 0071 nine
---- 247,409,15,89,-31,89 3 0072 colon
---- 247,409,136,99,17,99 3 0073 semicolon
---- 489,464,0,171,-37,99 3 0074 less
---- 489,347,0,147,1,99 3 0075 equal
---- 489,464,0,108,27,99 3 0076 greater
---- 395,610,15,172,-113,99 3 0077 question
---- 489,423,0,158,40,99 3 0100 congruent
---- 643,599,0,21,47,21 3 0101 Alpha
---- 594,598,0,101,24,99 3 0102 Beta
---- 643,599,0,205,58,99 3 0103 Chi
---- 545,612,0,46,45,46 3 0104 Delta
---- 544,599,0,194,22,99 3 0105 Epsilon
---- 679,598,0,132,-55,99 3 0106 Phi
---- 537,599,0,227,19,99 3 0107 Gamma
---- 643,599,0,243,15,99 3 0110 Eta
---- 296,599,0,222,22,99 3 0111 Iota
-+h 562,614,15,133,-58,99 3 0112 theta1
---- 643,598,0,185,19,99 3 0113 Kappa
---- 611,612,0,49,45,49 3 0114 Lambda
---- 791,599,0,233,22,99 3 0115 Mu
---- 643,599,7,234,24,99 3 0116 Nu
---- 643,610,15,154,-62,99 3 0117 Omicron
---- 684,599,0,213,28,99 3 0120 Pi
---- 659,610,15,138,-62,99 3 0121 Theta
---- 495,599,0,200,25,99 3 0122 Rho
---- 527,599,0,186,45,99 3 0123 Sigma
---- 544,599,0,229,-109,99 3 0124 Tau
---- 614,599,0,240,-125,99 3 0125 Upsilon
-ts 391,445,208,151,-28,99 3 0126 sigma1
---- 684,612,0,126,20,99 3 0127 Omega
---- 574,598,0,176,14,99 3 0130 Xi
---- 708,608,0,227,-138,99 3 0131 Psi
---- 544,599,0,231,11,99 3 0132 Zeta
---- 296,599,138,207,16,99 3 0133 bracketleft
---- 768,426,0,0,-110 3 0134 therefore
---- 296,599,138,159,64,99 3 0135 bracketright
---- 586,600,0,60,37,60 3 0136 perpendicular
---- 445,0,224,0,122 3 0137 underscore
---- 445,816,0,829,-622,99 3 0140 radicalex
-*a 562,445,15,146,-34,99 3 0141 alpha
-*b 489,659,198,139,57,99 3 0142 beta
-*x 489,445,206,134,98,99 3 0143 chi
-*d 440,658,16,181,-33,99 3 0144 delta
-*e 391,447,17,127,1,99 3 0145 epsilon
-*f 464,596,200,103,-28,99 3 0146 phi
-*g 366,444,200,252,-42,99 3 0147 gamma
-*y 537,457,180,68,-50,68 3 0150 eta
-*i 293,448,16,53,-47,53 3 0151 iota
-+f 537,444,199,117,-42,99 3 0152 phi1
-*k 489,447,0,182,-56,99 3 0153 kappa
-*l 489,658,16,91,29,91 3 0154 lambda
-*m 513,445,198,70,68,70 3 0155 mu
-*n 464,451,15,134,-69,99 3 0156 nu
-*o 489,444,17,87,-36,87 3 0157 omicron
-*p 489,433,18,160,-8,99 3 0160 pi
-*h 464,614,16,140,-53,99 3 0161 theta
-*r 489,444,205,82,69,82 3 0162 rho
-*s 537,445,19,175,-37,99 3 0163 sigma
-*t 391,445,16,170,-45,99 3 0164 tau
-*u 513,451,15,95,-55,95 3 0165 upsilon
-+p 635,519,15,173,-28,99 3 0166 omega1
-*w 611,445,16,126,-35,99 3 0167 omega
-*c 439,681,200,126,-20,99 3 0170 xi
-*q 611,445,203,198,-91,99 3 0171 psi
-*z 440,673,200,190,-50,99 3 0172 zeta
---- 427,599,163,163,-66,99 3 0173 braceleft
---- 178,599,158,179,41,99 3 0174 bar
---- 427,599,163,67,31,67 3 0175 braceright
---- 489,273,0,110,-28,99 3 0176 similar
---- 552,609,0,208,-84,99 3 0241 Upsilon1
---- 220,654,0,223,-106,99 3 0242 minute
---- 489,569,0,206,24,99 3 0243 lessequal
---- 149,603,11,391,214,99 3 0244 fraction
---- 635,360,0,107,-41,99 3 0245 infinity
---- 445,612,172,219,86,99 3 0246 florin
---- 670,474,23,25,-69,25 3 0247 club
---- 670,490,32,0,-148 3 0250 diamond
---- 670,473,29,59,-155,59 3 0251 heart
---- 670,488,32,0,-82 3 0252 spade
---- 927,455,13,103,-40,99 3 0253 arrowboth
---- 878,455,13,87,-47,87 3 0254 arrowleft
---- 537,810,0,204,-173,99 3 0255 arrowup
---- 878,455,13,94,-55,94 3 0256 arrowright
---- 537,790,20,85,-54,85 3 0257 arrowdown
---- 356,609,0,160,-137,99 3 0260 degree
---- 489,574,0,154,41,99 3 0261 plusminus
---- 366,656,0,244,-100,99 3 0262 second
---- 489,569,0,143,24,99 3 0263 greaterequal
---- 489,466,0,170,22,99 3 0264 multiply
---- 635,360,0,82,-40,82 3 0265 proportional
---- 440,664,18,152,-12,99 3 0266 partialdiff
---- 409,421,0,95,-68,95 3 0267 bullet
---- 489,406,0,119,-24,99 3 0270 divide
---- 489,489,22,148,-1,99 3 0271 notequal
---- 489,394,0,163,15,99 3 0272 equivalence
---- 489,351,0,133,-7,99 3 0273 approxequal
---- 890,85,15,0,-57 3 0274 ellipsis
---- 537,899,107,92,-166,92 3 0275 arrowvertex
---- 890,246,0,171,42,99 3 0276 arrowhorizex
---- 586,560,14,174,10,99 3 0277 carriagereturn
---- 732,586,16,58,-109,58 3 0300 aleph
---- 611,659,47,123,24,99 3 0301 Ifraktur
---- 708,653,13,175,-21,99 3 0302 Rfraktur
---- 878,510,188,50,-62,50 3 0303 weierstrass
---- 684,599,15,124,-64,99 3 0304 circlemultiply
---- 684,601,13,125,-65,99 3 0305 circleplus
---- 732,640,21,202,12,99 3 0306 emptyset
---- 684,453,0,80,14,80 3 0307 intersection
---- 684,438,15,154,-60,99 3 0310 union
---- 635,418,0,90,32,90 3 0311 propersuperset
---- 635,418,111,89,67,89 3 0312 reflexsuperset
---- 635,481,62,159,-37,99 3 0313 notsubset
---- 635,418,0,159,-37,99 3 0314 propersubset
---- 635,418,111,159,34,99 3 0315 reflexsubset
---- 635,417,0,0,-43 3 0316 element
---- 635,494,52,0,-24 3 0317 notelement
---- 684,599,0,199,27,99 3 0320 angle
---- 635,639,17,220,-181,99 3 0321 gradient
---- 703,596,18,110,-70,99 3 0322 registerserif
---- 703,601,13,113,-72,99 3 0323 copyrightserif
---- 792,599,0,205,-119,99 3 0324 trademarkserif
---- 732,668,90,238,56,99 3 0325 product
---- 489,816,34,272,-84,99 3 0326 radical
---- 223,276,0,52,-81,52 3 0327 dotmath
---- 635,256,0,100,-28,99 3 0330 logicalnot
---- 537,404,0,32,29,32 3 0331 logicaland
---- 537,424,0,152,-101,99 3 0332 logicalor
---- 927,454,18,101,-42,99 3 0333 arrowdblboth
---- 878,457,13,114,-46,99 3 0334 arrowdblleft
---- 537,811,0,201,-102,99 3 0335 arrowdblup
---- 878,452,18,89,-21,89 3 0336 arrowdblright
---- 537,792,17,152,-53,99 3 0337 arrowdbldown
---- 440,663,0,129,-71,99 3 0340 lozenge
---- 293,664,176,229,-48,99 3 0341 angleleft
---- 703,596,18,110,-70,99 3 0342 registersans
---- 703,601,13,111,-70,99 3 0343 copyrightsans
---- 700,599,0,182,-129,99 3 0344 trademarksans
---- 635,669,96,171,65,99 3 0345 summation
---- 342,824,261,350,96,99 3 0346 parenlefttp
---- 342,823,76,46,38,46 3 0347 parenleftex
---- 342,824,261,47,-63,47 3 0350 parenleftbt
---- 342,824,71,268,72,99 3 0351 bracketlefttp
---- 342,823,70,13,72,13 3 0352 bracketleftex
---- 342,824,71,14,72,14 3 0353 bracketleftbt
---- 440,824,67,258,-108,99 3 0354 bracelefttp
---- 440,832,76,96,-76,96 3 0355 braceleftmid
---- 440,824,62,94,-169,94 3 0356 braceleftbt
---- 440,832,71,96,-107,96 3 0357 braceex
---- 293,664,176,102,79,99 3 0361 angleright
---- 244,815,95,305,63,99 3 0362 integral
---- 611,820,74,312,-222,99 3 0363 integraltp
---- 611,868,78,79,-221,79 3 0364 integralex
---- 611,820,72,64,20,64 3 0365 integralbt
---- 342,824,261,206,-223,99 3 0366 parenrighttp
---- 342,823,76,365,-281,99 3 0367 parenrightex
---- 342,824,261,365,80,99 3 0370 parenrightbt
---- 342,824,71,285,-199,99 3 0371 bracketrighttp
---- 342,823,70,285,-200,99 3 0372 bracketrightex
---- 342,824,71,285,54,99 3 0373 bracketrightbt
---- 440,824,67,35,-108,35 3 0374 bracerighttp
---- 440,832,76,127,-105,99 3 0375 bracerightmid
---- 440,824,62,94,54,94 3 0376 bracerightbt
diff --git a/devps/TB b/devps/TB
deleted file mode 100644
index 9dae3ad18..000000000
--- a/devps/TB
+++ /dev/null
@@ -1,533 +0,0 @@
-name TB
-internalname Times-Bold
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -74
-A w -90
-A v -100
-A u -50
-A ' -74
-A p -25
-A Y -100
-A W -130
-A V -145
-A U -50
-A T -95
-A Q -45
-A O -45
-A G -55
-A C -55
-B U -10
-B A -30
-D . -20
-D Y -40
-D W -40
-D V -40
-D A -35
-F . -110
-F o -25
-F e -25
-F , -92
-F a -25
-F A -90
-J u -15
-J . -20
-J o -15
-J e -15
-J a -15
-J A -30
-K y -45
-K u -15
-K o -25
-K e -25
-K O -30
-L y -55
-L ' -110
-L rq -20
-L Y -92
-L W -92
-L V -92
-L T -92
-N A -20
-O Y -50
-O X -40
-O W -50
-O V -50
-O T -40
-O A -40
-P . -110
-P o -20
-P e -20
-P , -92
-P a -10
-P A -74
-Q . -20
-Q U -10
-R Y -35
-R W -35
-R V -55
-R U -30
-R T -40
-R O -30
-T y -74
-T w -74
-T u -92
-T ; -74
-T r -74
-T . -90
-T o -92
-T i -18
-T - -92
-T hy -92
-T char173 -92
-T e -92
-T , -74
-T : -74
-T a -92
-T O -18
-T A -90
-U . -50
-U , -50
-U A -60
-V u -92
-V ; -92
-V . -145
-V o -100
-V i -37
-V - -74
-V hy -74
-V char173 -74
-V e -100
-V , -129
-V : -92
-V a -92
-V O -45
-V G -30
-V A -135
-W y -60
-W u -50
-W ; -55
-W . -92
-W o -75
-W i -18
-W - -37
-W hy -37
-W char173 -37
-W e -65
-W , -92
-W : -55
-W a -65
-W O -10
-W A -120
-Y u -92
-Y ; -92
-Y . -92
-Y o -111
-Y i -37
-Y - -92
-Y hy -92
-Y char173 -92
-Y e -111
-Y , -92
-Y : -92
-Y a -85
-Y O -35
-Y A -110
-a v -25
-b v -15
-b u -20
-b . -40
-b b -10
-, ' -55
-, rq -45
-d w -15
-e v -15
-f ' 55
-f rq 50
-f . -15
-f o -25
-f i -25
-f .i -35
-f , -15
-g . -15
-h y -15
-i v -10
-k y -15
-k o -15
-k e -10
-n v -40
-o w -10
-o v -10
-. ' -55
-. rq -55
-lq A -10
-` ` -63
-` oq -63
-oq ` -63
-oq oq -63
-` A -10
-oq A -10
-' v -20
-' s -37
-' r -20
-' ' -63
-' d -20
-r v -10
-r q -18
-r . -100
-r p -10
-r o -18
-r n -15
-r - -37
-r hy -37
-r char173 -37
-r g -10
-r e -18
-r , -92
-r c -18
-v . -70
-v o -10
-v e -10
-v , -55
-v a -10
-w . -70
-w o -10
-w , -55
-y . -70
-y o -25
-y e -10
-y , -55
-charset
-ha 581,676 2 0000 asciicircum
-ti 520,333 0 0001 asciitilde
-vS 556,914,19 2 0002 Scaron
-vZ 667,914 2 0003 Zcaron
-vs 389,704,14 2 0004 scaron
-vz 444,704 2 0005 zcaron
-:Y 722,877 2 0006 Ydieresis
-tm 1000,676 2 0007 trademark
-aq 278,691 2 0010 quotesingle
-space 250 0 0040
-! 333,691,13 2 0041 exclam
-" 555,691 2 0042 quotedbl
-# 500,700 2 0043 numbersign
-sh "
-$ 500,750,99 2 0044 dollar
-Do "
-% 1000,692,14 2 0045 percent
-& 833,691,16 2 0046 ampersand
-' 333,691 2 0047 quoteright
-( 333,694,168 2 0050 parenleft
-) 333,694,168 2 0051 parenright
-* 500,691 2 0052 asterisk
-+ 570,506 0 0053 plus
-, 250,155,180 0 0054 comma
-- 333,287 0 0055 hyphen
-hy "
-char173 "
-. 250,156,13 0 0056 period
-/ 278,691,19 2 0057 slash
-sl "
-0 500,688,13 2 0060 zero
-1 500,688 2 0061 one
-2 500,688 2 0062 two
-3 500,688,14 2 0063 three
-4 500,688 2 0064 four
-5 500,676,8 2 0065 five
-6 500,688,13 2 0066 six
-7 500,676 2 0067 seven
-8 500,688,13 2 0070 eight
-9 500,688,13 2 0071 nine
-: 333,472,13 0 0072 colon
-; 333,472,180 0 0073 semicolon
-< 570,514,8 0 0074 less
-= 570,399 0 0075 equal
-> 570,514,8 0 0076 greater
-? 500,689,13 2 0077 question
-@ 930,691,19 2 0100 at
-at "
-A 722,690 2 0101 A
-B 667,676 2 0102 B
-C 722,691,19 2 0103 C
-D 722,676 2 0104 D
-E 667,676 2 0105 E
-F 611,676 2 0106 F
-G 778,691,19 2 0107 G
-H 778,676 2 0110 H
-I 389,676 2 0111 I
-J 500,676,96 2 0112 J
-K 778,676 2 0113 K
-L 667,676 2 0114 L
-M 944,676 2 0115 M
-N 722,676,18 2 0116 N
-O 778,691,19 2 0117 O
-P 611,676 2 0120 P
-Q 778,691,176 2 0121 Q
-R 722,676 2 0122 R
-S 556,692,19 2 0123 S
-T 667,676 2 0124 T
-U 722,676,19 2 0125 U
-V 722,676,18 2 0126 V
-W 1000,676,15 2 0127 W
-X 722,676 2 0130 X
-Y 722,676 2 0131 Y
-Z 667,676 2 0132 Z
-[ 333,678,149 2 0133 bracketleft
-lB "
-\ 278,691,19 2 0134 backslash
-rs "
-] 333,678,149 2 0135 bracketright
-rB "
-a^ 333,704 2 0136 circumflex
-^ "
-_ 500,0,125 0 0137 underscore
-` 333,691 2 0140 quoteleft
-oq "
-a 500,473,14 0 0141 a
-b 556,676,14 2 0142 b
-c 444,473,14 0 0143 c
-d 556,676,14 2 0144 d
-e 444,473,14 0 0145 e
-f 333,691 2 0146 f
-g 500,473,206 1 0147 g
-h 556,676 2 0150 h
-i 278,691 2 0151 i
-j 333,691,203 3 0152 j
-k 556,676 2 0153 k
-l 278,676 2 0154 l
-m 833,473 0 0155 m
-n 556,473 0 0156 n
-o 500,473,14 0 0157 o
-p 556,473,205 1 0160 p
-q 556,473,205 1 0161 q
-r 444,473 0 0162 r
-s 389,473,14 0 0163 s
-t 333,630,12 2 0164 t
-u 556,461,14 0 0165 u
-v 500,461,14 0 0166 v
-w 722,461,14 0 0167 w
-x 500,461 0 0170 x
-y 500,461,205 1 0171 y
-z 444,461 0 0172 z
-lC 394,698,175 2 0173 braceleft
-{ "
-ba 220,691,19 2 0174 bar
-| "
-rC 394,698,175 2 0175 braceright
-} "
-a~ 333,674 2 0176 tilde
-~ "
-bq 333,155,180 0 0200 quotesinglbase
-Fo 500,415 0 0201 guillemotleft
-char171 "
-Fc 500,415 0 0202 guillemotright
-char187 "
-bu 350,478 0 0203 bullet
-Fn 500,706,155 2 0204 florin
-f/ 167,688,12 2 0205 fraction
-%0 1000,706,29 2 0206 perthousand
-dg 500,691,134 2 0207 dagger
-dd 500,691,132 2 0210 daggerdbl
-en 500,271 0 0211 endash
-em 1000,271 0 0212 emdash
-fi 556,691 2 0214 fi
-fl 556,691 2 0215 fl
-.i 278,461 0 0220 dotlessi
-ga 333,713 2 0222 grave
-a" 333,713 2 0223 hungarumlaut
-a. 333,667 2 0224 dotaccent
-ab 333,691 2 0225 breve
-ah 333,704 2 0226 caron
-ao 333,740 2 0227 ring
-ho 333,44,173 0 0230 ogonek
-lq 500,691 2 0231 quotedblleft
-rq 500,691 2 0232 quotedblright
-oe 722,473,14 0 0233 oe
-/l 278,676 2 0234 lslash
-Bq 500,155,180 0 0235 quotedblbase
-OE 1000,684,5 2 0236 OE
-/L 667,676 2 0237 Lslash
-r! 333,501,203 1 0241 exclamdown
-char161 "
-ct 500,588,140 0 0242 cent
-char162 "
-Po 500,684,14 2 0243 sterling
-char163 "
-Cs 500,613 0 0244 currency
-char164 "
-Ye 500,676 2 0245 yen
-char165 "
-bb 220,691,19 2 0246 brokenbar
-char166 "
-sc 500,691,132 2 0247 section
-char167 "
-ad 333,667 2 0250 dieresis
-char168 "
-co 747,691,19 2 0251 copyright
-char169 "
-Of 300,688 2 0252 ordfeminine
-char170 "
-fo 333,415 0 0253 guilsinglleft
-no 570,399 0 0254 logicalnot
-char172 "
-\- 570,297 0 0255 minus
-rg 747,691,19 2 0256 registered
-char174 "
-a- 333,637 2 0257 macron
-char175 "
-de 400,688 2 0260 degree
-char176 "
-char177 570,506 0 0261 plusminus
-S2 300,688 2 0262 twosuperior
-char178 "
-S3 300,688 2 0263 threesuperior
-char179 "
-aa 333,713 2 0264 acute
-char180 "
-char181 556,461,206 1 0265 mu
-ps 540,676,186 2 0266 paragraph
-char182 "
-char183 250,417 0 0267 periodcentered
-ac 333,0,218 1 0270 cedilla
-char184 "
-S1 300,688 2 0271 onesuperior
-char185 "
-Om 330,688 2 0272 ordmasculine
-char186 "
-fc 333,415 0 0273 guilsinglright
-14 750,688,12 2 0274 onequarter
-char188 "
-12 750,688,12 2 0275 onehalf
-char189 "
-34 750,688,12 2 0276 threequarters
-char190 "
-r? 500,501,201 0 0277 questiondown
-char191 "
-`A 722,923 2 0300 Agrave
-char192 "
-'A 722,923 2 0301 Aacute
-char193 "
-^A 722,914 2 0302 Acircumflex
-char194 "
-~A 722,884 2 0303 Atilde
-char195 "
-:A 722,877 2 0304 Adieresis
-char196 "
-oA 722,935 2 0305 Aring
-char197 "
-AE 1000,676 2 0306 AE
-char198 "
-,C 722,691,218 3 0307 Ccedilla
-char199 "
-`E 667,923 2 0310 Egrave
-char200 "
-'E 667,923 2 0311 Eacute
-char201 "
-^E 667,914 2 0312 Ecircumflex
-char202 "
-:E 667,877 2 0313 Edieresis
-char203 "
-`I 389,923 2 0314 Igrave
-char204 "
-'I 389,923 2 0315 Iacute
-char205 "
-^I 389,914 2 0316 Icircumflex
-char206 "
-:I 389,877 2 0317 Idieresis
-char207 "
--D 722,676 2 0320 Eth
-char208 "
-~N 722,884,18 2 0321 Ntilde
-char209 "
-`O 778,923,19 2 0322 Ograve
-char210 "
-'O 778,923,19 2 0323 Oacute
-char211 "
-^O 778,914,19 2 0324 Ocircumflex
-char212 "
-~O 778,884,19 2 0325 Otilde
-char213 "
-:O 778,877,19 2 0326 Odieresis
-char214 "
-char215 570,490 0 0327 multiply
-/O 778,737,74 2 0330 Oslash
-char216 "
-`U 722,923,19 2 0331 Ugrave
-char217 "
-'U 722,923,19 2 0332 Uacute
-char218 "
-^U 722,914,19 2 0333 Ucircumflex
-char219 "
-:U 722,877,19 2 0334 Udieresis
-char220 "
-'Y 722,928 2 0335 Yacute
-char221 "
-TP 611,676 2 0336 Thorn
-char222 "
-ss 556,691,12 2 0337 germandbls
-char223 "
-`a 500,713,14 2 0340 agrave
-char224 "
-'a 500,713,14 2 0341 aacute
-char225 "
-^a 500,704,14 2 0342 acircumflex
-char226 "
-~a 500,674,14 2 0343 atilde
-char227 "
-:a 500,667,14 2 0344 adieresis
-char228 "
-oa 500,740,14 2 0345 aring
-char229 "
-ae 722,473,14 0 0346 ae
-char230 "
-,c 444,473,218 1 0347 ccedilla
-char231 "
-`e 444,713,14 2 0350 egrave
-char232 "
-'e 444,713,14 2 0351 eacute
-char233 "
-^e 444,704,14 2 0352 ecircumflex
-char234 "
-:e 444,667,14 2 0353 edieresis
-char235 "
-`i 278,713 2 0354 igrave
-char236 "
-'i 278,713 2 0355 iacute
-char237 "
-^i 278,704 2 0356 icircumflex
-char238 "
-:i 278,667 2 0357 idieresis
-char239 "
-Sd 500,691,14 2 0360 eth
-char240 "
-~n 556,674 2 0361 ntilde
-char241 "
-`o 500,713,14 2 0362 ograve
-char242 "
-'o 500,713,14 2 0363 oacute
-char243 "
-^o 500,704,14 2 0364 ocircumflex
-char244 "
-~o 500,674,14 2 0365 otilde
-char245 "
-:o 500,667,14 2 0366 odieresis
-char246 "
-char247 570,537,31 0 0367 divide
-/o 500,549,92 0 0370 oslash
-char248 "
-`u 556,713,14 2 0371 ugrave
-char249 "
-'u 556,713,14 2 0372 uacute
-char250 "
-^u 556,704,14 2 0373 ucircumflex
-char251 "
-:u 556,667,14 2 0374 udieresis
-char252 "
-'y 500,713,205 3 0375 yacute
-char253 "
-Tp 556,676,205 3 0376 thorn
-char254 "
-:y 500,667,205 3 0377 ydieresis
-char255 "
diff --git a/devps/TBI b/devps/TBI
deleted file mode 100644
index ba58a3af3..000000000
--- a/devps/TBI
+++ /dev/null
@@ -1,515 +0,0 @@
-name TBI
-internalname Times-BoldItalic
-slant 15
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -74
-A w -74
-A v -74
-A u -30
-A ' -74
-A Y -70
-A W -100
-A V -95
-A U -50
-A T -55
-A Q -55
-A O -50
-A G -60
-A C -65
-B U -10
-B A -25
-D Y -50
-D W -40
-D V -50
-D A -25
-F r -50
-F . -129
-F o -70
-F i -40
-F e -100
-F , -129
-F a -95
-F A -100
-J u -40
-J . -10
-J o -40
-J e -40
-J , -10
-J a -40
-J A -25
-K y -20
-K u -20
-K o -25
-K e -25
-K O -30
-L y -37
-L ' -55
-L Y -37
-L W -37
-L V -37
-L T -18
-N A -30
-O Y -50
-O X -40
-O W -50
-O V -50
-O T -40
-O A -40
-P . -129
-P o -55
-P e -50
-P , -129
-P a -40
-P A -85
-Q U -10
-R Y -18
-R W -18
-R V -18
-R U -40
-R T -30
-R O -40
-T y -37
-T w -37
-T u -37
-T ; -74
-T r -37
-T . -92
-T o -95
-T i -37
-T - -92
-T hy -92
-T char173 -92
-T e -92
-T , -92
-T : -74
-T a -92
-T O -18
-T A -55
-U A -45
-V u -55
-V ; -74
-V . -129
-V o -111
-V i -55
-V - -70
-V hy -70
-V char173 -70
-V e -111
-V , -129
-V : -74
-V a -111
-V O -30
-V G -10
-V A -85
-W y -55
-W u -55
-W ; -55
-W . -74
-W o -80
-W i -37
-W - -50
-W hy -50
-W char173 -50
-W e -90
-W , -74
-W : -55
-W a -85
-W O -15
-W A -74
-Y u -92
-Y ; -92
-Y . -74
-Y o -111
-Y i -55
-Y - -92
-Y hy -92
-Y char173 -92
-Y e -111
-Y , -92
-Y : -92
-Y a -92
-Y O -25
-Y A -74
-b u -20
-b . -40
-b b -10
-c k -10
-c h -10
-, ' -95
-, rq -95
-e b -10
-f ' 55
-f . -10
-f o -10
-f f -18
-f e -10
-f .i -30
-f , -10
-k o -10
-k e -30
-n v -40
-o y -10
-o x -10
-o w -25
-o v -15
-. ' -95
-. rq -95
-` ` -74
-` oq -74
-oq ` -74
-oq oq -74
-' v -15
-' t -37
-' s -74
-' r -15
-' ' -74
-' d -15
-r . -65
-r , -65
-v . -37
-v o -15
-v e -15
-v , -37
-w . -37
-w o -15
-w e -10
-w , -37
-w a -10
-x e -10
-y . -37
-y , -37
-charset
-ha 570,669,0,0,-17 2 0000 asciicircum
-ti 570,333,0,0,-4 0 0001 asciitilde
-vS 556,897,18,20,48,20 2 0002 Scaron
-vZ 611,897,0,29,61,29 2 0003 Zcaron
-vs 389,690,13,100,69,99 2 0004 scaron
-vz 389,690,78,85,93,85 2 0005 zcaron
-:Y 611,862,0,98,-23,98 2 0006 Ydieresis
-tm 1000,669,0,18,18,18 2 0007 trademark
-aq 278,685,0,40,-78,40 2 0010 quotesingle
-space 250 0 0040
-! 389,684,13,31,-17,31 2 0041 exclam
-" 555,685,0,31,-86,31 2 0042 quotedbl
-# 500,700,0,83,83,83 2 0043 numbersign
-sh "
-$ 500,733,100,47,70,47 2 0044 dollar
-Do "
-% 833,692,10,10,11,10 2 0045 percent
-& 778,682,19,0,45 2 0046 ampersand
-' 333,685,0,19,-48,19 2 0047 quoteright
-( 333,685,179,61,22,61 2 0050 parenleft
-) 333,685,179,0,94 2 0051 parenright
-* 500,685,0,6,-15,6 2 0052 asterisk
-+ 570,506,0,17,17,17 0 0053 plus
-, 250,134,182,0,110 0 0054 comma
-- 333,282,0,0,48 0 0055 hyphen
-hy "
-char173 "
-. 250,135,13,0,59 0 0056 period
-/ 278,685,18,114,114,99 2 0057 slash
-sl "
-0 500,683,14,27,33,27 2 0060 zero
-1 500,683,0,0,45 2 0061 one
-2 500,683,0,0,77 2 0062 two
-3 500,683,13,0,65 2 0063 three
-4 500,683,0,53,65,53 2 0064 four
-5 500,669,13,37,61,37 2 0065 five
-6 500,679,15,59,27,59 2 0066 six
-7 500,669,0,75,-2,75 2 0067 seven
-8 500,683,13,26,47,26 2 0070 eight
-9 500,683,10,25,62,25 2 0071 nine
-: 333,459,13,0,27 0 0072 colon
-; 333,459,183,0,75 0 0073 semicolon
-< 570,514,8,19,19,19 0 0074 less
-= 570,399,0,17,17,17 0 0075 equal
-> 570,514,8,19,19,19 0 0076 greater
-? 500,684,13,20,-29,20 2 0077 question
-@ 832,685,18,0,-13 2 0100 at
-at "
-A 667,683,0,0,117 2 0101 A
-B 667,669,0,7,74,7 2 0102 B
-C 667,685,18,60,18,60 2 0103 C
-D 722,669,0,13,96,13 2 0104 D
-E 667,669,0,36,77,36 2 0105 E
-F 667,669,0,43,63,43 2 0106 F
-G 722,685,18,34,29,34 2 0107 G
-H 778,669,0,71,74,71 2 0110 H
-I 389,669,0,67,82,67 2 0111 I
-J 500,669,99,74,96,74 2 0112 J
-K 667,669,0,85,71,85 2 0113 K
-L 611,669,0,29,72,29 2 0114 L
-M 889,669,12,78,79,78 2 0115 M
-N 722,669,15,76,77,76 2 0116 N
-O 722,685,18,19,23,19 2 0117 O
-P 611,669,0,52,77,52 2 0120 P
-Q 722,685,208,19,23,19 3 0121 Q
-R 667,669,0,6,79,6 2 0122 R
-S 556,685,18,20,48,20 2 0123 S
-T 611,669,0,89,0,89 2 0124 T
-U 722,669,18,72,-17,72 2 0125 U
-V 667,669,18,98,-15,98 2 0126 V
-W 889,669,18,101,-15,99 2 0127 W
-X 667,669,0,77,74,77 2 0130 X
-Y 611,669,0,98,-23,98 2 0131 Y
-Z 611,669,0,29,61,29 2 0132 Z
-[ 333,674,159,79,87,79 2 0133 bracketleft
-lB "
-\ 278,685,18,51,51,51 2 0134 backslash
-rs "
-] 333,674,157,60,106,60 2 0135 bracketright
-rB "
-a^ 333,690,0,84,10,84 2 0136 circumflex
-^ "
-_ 500,0,125,50,50,50 0 0137 underscore
-` 333,685,0,49,-78,49 2 0140 quoteleft
-oq "
-a 500,462,14,5,71,5 0 0141 a
-b 500,699,13,0,64 2 0142 b
-c 444,462,13,0,55 0 0143 c
-d 500,699,13,67,71,67 2 0144 d
-e 444,462,13,4,45,4 0 0145 e
-f 333,698,205,163,219,99 3 0146 f
-g 500,462,203,28,102,28 1 0147 g
-h 556,699,9,0,63 2 0150 h
-i 278,684,9,35,48,35 2 0151 i
-j 278,684,207,51,239,51 3 0152 j
-k 500,699,8,33,73,33 2 0153 k
-l 278,699,9,62,48,62 2 0154 l
-m 778,462,9,0,64 0 0155 m
-n 556,462,9,0,56 0 0156 n
-o 500,462,13,0,53 0 0157 o
-p 500,462,205,0,170 1 0160 p
-q 500,462,205,21,49,21 1 0161 q
-r 389,462,0,50,71,50 0 0162 r
-s 389,462,13,0,69 0 0163 s
-t 278,594,9,53,61,53 2 0164 t
-u 556,462,9,0,35 0 0165 u
-v 444,462,13,7,34,7 0 0166 v
-w 667,462,13,0,34 0 0167 w
-x 500,462,13,19,96,19 0 0170 x
-y 444,462,205,0,144 1 0171 y
-z 389,449,78,29,93,29 0 0172 z
-lC 348,686,187,138,45,99 2 0173 braceleft
-{ "
-ba 220,685,18,0,-16 2 0174 bar
-| "
-rC 348,686,187,4,179,4 2 0175 braceright
-} "
-a~ 333,655,0,124,2,99 2 0176 tilde
-~ "
-bq 333,134,182,0,55 0 0200 quotesinglbase
-Fo 500,415,0,18,38,18 0 0201 guillemotleft
-char171 "
-Fc 500,415,0,18,38,18 0 0202 guillemotright
-char187 "
-bu 350,525,0,50,50,50 0 0203 bullet
-Fn 500,707,156,87,137,87 2 0204 florin
-f/ 167,683,14,207,219,99 2 0205 fraction
-%0 1000,706,29,46,43,46 2 0206 perthousand
-dg 500,685,145,44,-41,44 2 0207 dagger
-dd 500,685,139,43,40,43 2 0210 daggerdbl
-en 500,269,0,27,90,27 0 0211 endash
-em 1000,269,0,27,90,27 0 0212 emdash
-fi 556,703,205,8,238,8 3 0214 fi
-fl 556,704,205,47,236,47 3 0215 fl
-.i 278,462,9,10,48,10 0 0220 dotlessi
-ga 333,697,0,14,-35,14 2 0222 grave
-a" 333,697,0,215,-19,99 2 0223 hungarumlaut
-a. 333,655,0,10,-113,10 2 0224 dotaccent
-ab 333,678,0,104,-21,99 2 0225 breve
-ah 333,690,0,128,-29,99 2 0226 caron
-ao 333,729,0,57,-77,57 2 0227 ring
-ho 333,44,173,0,90 0 0230 ogonek
-lq 500,685,0,63,-3,63 2 0231 quotedblleft
-rq 500,685,0,63,-3,63 2 0232 quotedblright
-oe 722,462,13,2,44,2 0 0233 oe
-/l 278,699,9,73,63,73 2 0234 lslash
-Bq 500,134,182,0,107 0 0235 quotedblbase
-OE 944,677,8,52,27,52 2 0236 OE
-/L 611,669,0,29,72,29 2 0237 Lslash
-r! 389,492,205,0,31 1 0241 exclamdown
-char161 "
-ct 500,576,143,0,8 0 0242 cent
-char162 "
-Po 500,683,12,60,82,60 2 0243 sterling
-char163 "
-Cs 500,586,0,76,76,76 0 0244 currency
-char164 "
-Ye 500,669,0,178,17,99 2 0245 yen
-char165 "
-bb 220,685,18,0,-16 2 0246 brokenbar
-char166 "
-sc 500,685,143,9,14,9 2 0247 section
-char167 "
-ad 333,655,0,114,-5,99 2 0250 dieresis
-char168 "
-co 747,685,18,21,20,21 2 0251 copyright
-char169 "
-Of 266,685,0,114,34,99 2 0252 ordfeminine
-char170 "
-fo 333,415,0,20,18,20 0 0253 guilsinglleft
-no 606,399,0,0,-1 0 0254 logicalnot
-char172 "
-\- 606,297,0,0,-1 0 0255 minus
-rg 747,685,18,21,20,21 2 0256 registered
-char174 "
-a- 333,623,0,110,-1,99 2 0257 macron
-char175 "
-de 400,683,0,19,-33,19 2 0260 degree
-char176 "
-char177 570,506,0,17,17,17 0 0261 plusminus
-S2 300,683,0,63,48,63 2 0262 twosuperior
-char178 "
-S3 300,683,0,71,33,71 2 0263 threesuperior
-char179 "
-aa 333,697,0,96,-89,96 2 0264 acute
-char180 "
-char181 576,449,207,0,110 1 0265 mu
-ps 500,669,193,112,107,99 2 0266 paragraph
-char182 "
-char183 250,405,0,0,-1 0 0267 periodcentered
-ac 333,5,218,0,130 1 0270 cedilla
-char184 "
-S1 300,683,0,51,20,51 2 0271 onesuperior
-char185 "
-Om 300,685,0,97,-6,97 2 0272 ordmasculine
-char186 "
-fc 333,415,0,0,40 0 0273 guilsinglright
-14 750,683,14,21,43,21 2 0274 onequarter
-char188 "
-12 750,683,14,23,59,23 2 0275 onehalf
-char189 "
-34 750,683,14,26,43,26 2 0276 threequarters
-char190 "
-r? 500,492,205,0,20 1 0277 questiondown
-char191 "
-`A 667,904,0,0,117 2 0300 Agrave
-char192 "
-'A 667,904,0,0,117 2 0301 Aacute
-char193 "
-^A 667,897,0,0,117 2 0302 Acircumflex
-char194 "
-~A 667,862,0,0,117 2 0303 Atilde
-char195 "
-:A 667,862,0,0,117 2 0304 Adieresis
-char196 "
-oA 667,921,0,0,117 2 0305 Aring
-char197 "
-AE 944,669,0,24,114,24 2 0306 AE
-char198 "
-,C 667,685,218,60,18,60 3 0307 Ccedilla
-char199 "
-`E 667,904,0,36,77,36 2 0310 Egrave
-char200 "
-'E 667,904,0,36,77,36 2 0311 Eacute
-char201 "
-^E 667,897,0,36,77,36 2 0312 Ecircumflex
-char202 "
-:E 667,862,0,36,77,36 2 0313 Edieresis
-char203 "
-`I 389,904,0,67,82,67 2 0314 Igrave
-char204 "
-'I 389,904,0,73,82,73 2 0315 Iacute
-char205 "
-^I 389,897,0,81,82,81 2 0316 Icircumflex
-char206 "
-:I 389,862,0,106,82,99 2 0317 Idieresis
-char207 "
--D 722,669,0,28,81,28 2 0320 Eth
-char208 "
-~N 722,862,15,76,77,76 2 0321 Ntilde
-char209 "
-`O 722,904,18,19,23,19 2 0322 Ograve
-char210 "
-'O 722,904,18,19,23,19 2 0323 Oacute
-char211 "
-^O 722,897,18,19,23,19 2 0324 Ocircumflex
-char212 "
-~O 722,862,18,19,23,19 2 0325 Otilde
-char213 "
-:O 722,862,18,19,23,19 2 0326 Odieresis
-char214 "
-char215 570,490,0,2,2,2 0 0327 multiply
-/O 722,764,125,19,23,19 2 0330 Oslash
-char216 "
-`U 722,904,18,72,-17,72 2 0331 Ugrave
-char217 "
-'U 722,904,18,72,-17,72 2 0332 Uacute
-char218 "
-^U 722,897,18,72,-17,72 2 0333 Ucircumflex
-char219 "
-:U 722,862,18,72,-17,72 2 0334 Udieresis
-char220 "
-'Y 611,904,0,98,-23,98 2 0335 Yacute
-char221 "
-TP 611,669,0,12,77,12 2 0336 Thorn
-char222 "
-ss 500,705,200,23,250,23 2 0337 germandbls
-char223 "
-`a 500,697,14,5,71,5 2 0340 agrave
-char224 "
-'a 500,697,14,13,71,13 2 0341 aacute
-char225 "
-^a 500,690,14,5,71,5 2 0342 acircumflex
-char226 "
-~a 500,655,14,41,71,41 2 0343 atilde
-char227 "
-:a 500,655,14,21,71,21 2 0344 adieresis
-char228 "
-oa 500,729,14,5,71,5 2 0345 aring
-char229 "
-ae 722,462,13,1,55,1 0 0346 ae
-char230 "
-,c 444,462,218,0,74 1 0347 ccedilla
-char231 "
-`e 444,697,13,4,45,4 2 0350 egrave
-char232 "
-'e 444,697,13,41,45,41 2 0351 eacute
-char233 "
-^e 444,690,13,29,45,29 2 0352 ecircumflex
-char234 "
-:e 444,655,13,49,45,49 2 0353 edieresis
-char235 "
-`i 278,697,9,32,48,32 2 0354 igrave
-char236 "
-'i 278,697,9,124,48,99 2 0355 iacute
-char237 "
-^i 278,690,9,97,52,97 2 0356 icircumflex
-char238 "
-:i 278,655,9,132,48,99 2 0357 idieresis
-char239 "
-Sd 500,699,13,4,53,4 2 0360 eth
-char240 "
-~n 556,655,9,0,56 2 0361 ntilde
-char241 "
-`o 500,697,13,0,53 2 0362 ograve
-char242 "
-'o 500,697,13,13,53,13 2 0363 oacute
-char243 "
-^o 500,690,13,1,53,1 2 0364 ocircumflex
-char244 "
-~o 500,655,13,41,53,41 2 0365 otilde
-char245 "
-:o 500,655,13,16,53,16 2 0366 odieresis
-char246 "
-char247 570,535,29,17,17,17 0 0367 divide
-/o 500,560,119,0,53 0 0370 oslash
-char248 "
-`u 556,697,9,0,35 2 0371 ugrave
-char249 "
-'u 556,697,9,0,35 2 0372 uacute
-char250 "
-^u 556,690,9,0,35 2 0373 ucircumflex
-char251 "
-:u 556,655,9,0,35 2 0374 udieresis
-char252 "
-'y 444,697,205,41,144,41 3 0375 yacute
-char253 "
-Tp 500,699,205,0,170 3 0376 thorn
-char254 "
-:y 444,655,205,44,144,44 3 0377 ydieresis
-char255 "
diff --git a/devps/TI b/devps/TI
deleted file mode 100644
index 156cba796..000000000
--- a/devps/TI
+++ /dev/null
@@ -1,528 +0,0 @@
-name TI
-internalname Times-Italic
-slant 7
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -55
-A w -55
-A v -55
-A u -20
-A ' -37
-A Y -55
-A W -95
-A V -105
-A U -50
-A T -37
-A Q -40
-A O -40
-A G -35
-A C -30
-B U -10
-B A -25
-D Y -40
-D W -40
-D V -40
-D A -35
-F r -55
-F . -135
-F o -105
-F i -45
-F e -75
-F , -135
-F a -75
-F A -115
-J u -35
-J . -25
-J o -25
-J e -25
-J , -25
-J a -35
-J A -40
-K y -40
-K u -40
-K o -40
-K e -35
-K O -50
-L y -30
-L ' -37
-L Y -20
-L W -55
-L V -55
-L T -20
-N A -27
-O Y -50
-O X -40
-O W -50
-O V -50
-O T -40
-O A -55
-P . -135
-P o -80
-P e -80
-P , -135
-P a -80
-P A -90
-Q U -10
-R Y -18
-R W -18
-R V -18
-R U -40
-R O -40
-T y -74
-T w -74
-T u -55
-T ; -65
-T r -55
-T . -74
-T o -92
-T i -55
-T - -74
-T hy -74
-T char173 -74
-T e -92
-T , -74
-T : -55
-T a -92
-T O -18
-T A -50
-U . -25
-U , -25
-U A -40
-V u -74
-V ; -74
-V . -129
-V o -111
-V i -74
-V - -55
-V hy -55
-V char173 -55
-V e -111
-V , -129
-V : -65
-V a -111
-V O -30
-V A -60
-W y -70
-W u -55
-W ; -65
-W . -92
-W o -92
-W i -55
-W - -37
-W hy -37
-W char173 -37
-W e -92
-W , -92
-W : -65
-W a -92
-W O -25
-W A -60
-Y u -92
-Y ; -65
-Y . -92
-Y o -92
-Y i -74
-Y - -74
-Y hy -74
-Y char173 -74
-Y e -92
-Y , -92
-Y : -65
-Y a -92
-Y O -15
-Y A -50
-a g -10
-b u -20
-b . -40
-c k -20
-c h -15
-, ' -140
-, rq -140
-e y -30
-e x -20
-e w -15
-e v -15
-e . -15
-e g -40
-e , -10
-f ' 92
-f . -15
-f i -20
-f f -18
-f .i -60
-f , -10
-g . -15
-g g -10
-g e -10
-g , -10
-k y -10
-k o -10
-k e -10
-n v -40
-o v -10
-o g -10
-. ' -140
-. rq -140
-` ` -111
-` oq -111
-oq ` -111
-oq oq -111
-' v -10
-' t -30
-' s -40
-' r -25
-' ' -111
-' d -25
-r s -10
-r q -37
-r . -111
-r o -45
-r - -20
-r hy -20
-r char173 -20
-r g -37
-r e -37
-r d -37
-r , -111
-r c -37
-r a -15
-v . -74
-v , -74
-w . -74
-w , -74
-y . -55
-y , -55
-charset
-ha 422,666,0,50,50,43 2 0000 asciicircum
-ti 541,323,0,11,10,11 0 0001 asciitilde
-vS 500,873,18,70,33,43 2 0002 Scaron
-vZ 556,873,0,100,56,43 2 0003 Zcaron
-vs 389,661,13,115,34,43 2 0004 scaron
-vz 389,661,81,95,52,43 2 0005 zcaron
-:Y 556,818,0,127,-28,43 2 0006 Ydieresis
-tm 980,653,0,27,20,27 2 0007 trademark
-aq 214,666,0,77,-82,43 2 0010 quotesingle
-space 250 0 0040
-! 333,667,11,19,11,19 2 0041 exclam
-" 420,666,0,62,-94,43 2 0042 quotedbl
-# 500,676,0,90,48,43 2 0043 numbersign
-sh "
-$ 500,731,89,47,19,43 2 0044 dollar
-Do "
-% 833,676,13,7,-29,7 2 0045 percent
-& 778,666,18,0,-26 2 0046 ampersand
-' 333,666,0,7,-101,7 2 0047 quoteright
-( 333,669,181,32,8,32 2 0050 parenleft
-) 333,669,180,6,34,6 2 0051 parenright
-* 500,666,0,42,-78,42 2 0052 asterisk
-+ 675,506,0,0,-36 0 0053 plus
-, 250,101,129,0,54 0 0054 comma
-- 333,255,0,0,1 0 0055 hyphen
-hy "
-char173 "
-. 250,100,11,0,23 0 0056 period
-/ 278,666,18,158,115,43 2 0057 slash
-sl "
-0 500,676,7,47,18,43 2 0060 zero
-1 500,676,0,0,1 2 0061 one
-2 500,676,0,2,38,2 2 0062 two
-3 500,676,7,15,35,15 2 0063 three
-4 500,676,0,29,49,29 2 0064 four
-5 500,666,7,41,35,41 2 0065 five
-6 500,686,7,71,20,43 2 0066 six
-7 500,666,8,87,-25,43 2 0067 seven
-8 500,676,7,43,20,43 2 0070 eight
-9 500,676,17,42,27,42 2 0071 nine
-: 333,441,11 0 0072 colon
-; 333,441,129,0,23 0 0073 semicolon
-< 675,514,8,0,-34 0 0074 less
-= 675,386,0,0,-36 0 0075 equal
-> 675,514,8,0,-34 0 0076 greater
-? 500,664,12,22,-82,22 2 0077 question
-@ 920,666,18,0,-68 2 0100 at
-at "
-A 611,668,0,3,101,3 2 0101 A
-B 611,653,0,27,58,27 2 0102 B
-C 667,666,18,72,-16,43 2 0103 C
-D 722,653,0,28,58,28 2 0104 D
-E 611,653,0,73,51,43 2 0105 E
-F 611,653,0,84,42,43 2 0106 F
-G 722,666,18,50,-2,43 2 0107 G
-H 722,653,0,95,58,43 2 0110 H
-I 333,653,0,101,58,43 2 0111 I
-J 444,653,18,97,56,43 2 0112 J
-K 667,653,0,105,43,43 2 0113 K
-L 556,653,0,53,58,43 2 0114 L
-M 833,653,0,90,68,43 2 0115 M
-N 667,653,15,110,70,43 2 0116 N
-O 722,666,18,27,-10,27 2 0117 O
-P 611,653,0,44,50,43 2 0120 P
-Q 722,666,182,27,-9,27 2 0121 Q
-R 611,653,0,27,63,27 2 0122 R
-S 500,667,18,58,33,43 2 0123 S
-T 556,653,0,127,-9,43 2 0124 T
-U 722,653,18,93,-52,43 2 0125 U
-V 611,653,18,127,-26,43 2 0126 V
-W 833,653,18,123,-21,43 2 0127 W
-X 611,653,0,94,79,43 2 0130 X
-Y 556,653,0,127,-28,43 2 0131 Y
-Z 556,653,0,100,56,43 2 0132 Z
-[ 389,663,153,52,29,43 2 0133 bracketleft
-lB "
-\ 278,666,18,91,91,43 2 0134 backslash
-rs "
-] 389,663,153,43,38,43 2 0135 bracketright
-rB "
-a^ 333,661,0,102,-41,43 2 0136 circumflex
-^ "
-_ 500,0,125,50,50,43 0 0137 underscore
-` 333,666,0,27,-121,27 2 0140 quoteleft
-oq "
-a 500,441,11,26,33,26 0 0141 a
-b 500,683,11,23,27,23 2 0142 b
-c 444,441,11,31,20,31 0 0143 c
-d 500,683,13,77,35,43 2 0144 d
-e 444,441,11,18,19,18 0 0145 e
-f 278,678,207,196,197,43 3 0146 f
-g 500,441,206,22,42,22 1 0147 g
-h 500,683,9,28,31,28 2 0150 h
-i 278,654,11,36,1,36 2 0151 i
-j 278,654,207,48,174,43 3 0152 j
-k 444,683,11,67,36,43 2 0153 k
-l 278,683,11,51,9,43 2 0154 l
-m 722,441,9,32,38,32 0 0155 m
-n 500,441,9,24,36,24 0 0156 n
-o 500,441,11,18,23,18 0 0157 o
-p 500,441,205,19,125,19 1 0160 p
-q 500,441,209,33,25,33 1 0161 q
-r 389,441,0,73,5,43 0 0162 r
-s 389,442,13,27,34,27 0 0163 s
-t 278,546,11,68,13,43 2 0164 t
-u 500,441,11,25,8,25 0 0165 u
-v 444,441,18,32,29,32 0 0166 v
-w 667,441,18,31,34,31 0 0167 w
-x 444,441,11,53,77,43 0 0170 x
-y 444,441,206,32,74,32 1 0171 y
-z 389,428,81,41,52,41 0 0172 z
-lC 400,687,177,57,-1,43 2 0173 braceleft
-{ "
-ba 275,666,18,0,-55 2 0174 bar
-| "
-rC 400,687,177,0,57 2 0175 braceright
-} "
-a~ 333,624,0,144,-50,43 2 0176 tilde
-~ "
-bq 333,101,129,0,6 0 0200 quotesinglbase
-Fo 500,403,0,0,-3 0 0201 guillemotleft
-char171 "
-Fc 500,403,0,0,-5 0 0202 guillemotright
-char187 "
-bu 350,461,0,10,10,10 0 0203 bullet
-Fn 500,682,182,57,25,43 2 0204 florin
-f/ 167,676,10,220,219,43 2 0205 fraction
-%0 1000,706,19,60,25,43 2 0206 perthousand
-dg 500,666,159,38,-51,38 2 0207 dagger
-dd 500,666,143,41,28,41 2 0210 daggerdbl
-en 500,243,0,55,56,43 0 0211 endash
-em 889,243,0,55,56,43 0 0212 emdash
-fi 500,681,207,31,191,31 3 0214 fi
-fl 500,682,204,68,191,43 3 0215 fl
-.i 278,441,11,7,1,7 0 0220 dotlessi
-ga 333,664,0,28,-71,28 2 0222 grave
-a" 333,664,0,203,-43,43 2 0223 hungarumlaut
-a. 333,606,0,22,-157,22 2 0224 dotaccent
-ab 333,650,0,135,-67,43 2 0225 breve
-ah 333,661,0,143,-71,43 2 0226 caron
-ao 333,691,0,72,-105,43 2 0227 ring
-ho 333,40,169,0,70 0 0230 ogonek
-lq 556,666,0,8,-116,8 2 0231 quotedblleft
-rq 556,666,0,0,-101 2 0232 quotedblright
-oe 667,441,12,29,30,29 0 0233 oe
-/l 278,683,11,79,13,43 2 0234 lslash
-Bq 556,101,129,0,-7 0 0235 quotedblbase
-OE 944,666,8,70,1,43 2 0236 OE
-/L 556,653,0,53,58,43 2 0237 Lslash
-r! 389,473,205,0,-9 1 0241 exclamdown
-char161 "
-ct 500,560,143,22,-27,22 2 0242 cent
-char162 "
-Po 500,670,6,67,40,43 2 0243 sterling
-char163 "
-Cs 500,597,0,72,72,43 2 0244 currency
-char164 "
-Ye 500,653,0,153,23,43 2 0245 yen
-char165 "
-bb 275,666,18,0,-55 2 0246 brokenbar
-char166 "
-sc 500,666,162,11,-3,11 2 0247 section
-char167 "
-ad 333,606,0,122,-57,43 2 0250 dieresis
-char168 "
-co 760,666,18,9,9,9 2 0251 copyright
-char169 "
-Of 276,676,0,126,8,43 2 0252 ordfeminine
-char170 "
-fo 333,403,0,0,-1 0 0253 guilsinglleft
-no 675,386,0,0,-36 0 0254 logicalnot
-char172 "
-\- 675,286,0,0,-36 0 0255 minus
-rg 760,666,18,9,9,9 2 0256 registered
-char174 "
-a- 333,583,0,128,-49,43 2 0257 macron
-char175 "
-de 400,676,0,37,-51,37 2 0260 degree
-char176 "
-char177 675,506,0,0,-36 0 0261 plusminus
-S2 300,676,0,74,17,43 2 0262 twosuperior
-char178 "
-S3 300,676,0,89,7,43 2 0263 threesuperior
-char179 "
-aa 333,664,0,120,-130,43 2 0264 acute
-char180 "
-char181 500,428,209,47,80,43 1 0265 mu
-ps 523,653,123,143,-5,43 2 0266 paragraph
-char182 "
-char183 250,310,0,0,-20 0 0267 periodcentered
-ac 333,0,217,0,80 1 0270 cedilla
-char184 "
-S1 300,676,0,34,7,34 2 0271 onesuperior
-char185 "
-Om 310,676,0,102,-17,43 2 0272 ordmasculine
-char186 "
-fc 333,403,0,0,-2 0 0273 guilsinglright
-14 750,676,10,36,17,36 2 0274 onequarter
-char188 "
-12 750,676,10,49,16,43 2 0275 onehalf
-char189 "
-34 750,676,10,36,27,36 2 0276 threequarters
-char190 "
-r? 500,471,205,0,22 1 0277 questiondown
-char191 "
-`A 611,876,0,3,101,3 2 0300 Agrave
-char192 "
-'A 611,876,0,3,101,3 2 0301 Aacute
-char193 "
-^A 611,873,0,3,101,3 2 0302 Acircumflex
-char194 "
-~A 611,836,0,5,101,5 2 0303 Atilde
-char195 "
-:A 611,818,0,3,101,3 2 0304 Adieresis
-char196 "
-oA 611,883,0,3,101,3 2 0305 Aring
-char197 "
-AE 889,653,0,72,77,43 2 0306 AE
-char198 "
-,C 667,666,217,72,-16,43 3 0307 Ccedilla
-char199 "
-`E 611,876,0,73,51,43 2 0310 Egrave
-char200 "
-'E 611,876,0,73,51,43 2 0311 Eacute
-char201 "
-^E 611,873,0,73,51,43 2 0312 Ecircumflex
-char202 "
-:E 611,818,0,73,51,43 2 0313 Edieresis
-char203 "
-`I 333,876,0,101,58,43 2 0314 Igrave
-char204 "
-'I 333,876,0,130,58,43 2 0315 Iacute
-char205 "
-^I 333,873,0,142,58,43 2 0316 Icircumflex
-char206 "
-:I 333,818,0,152,58,43 2 0317 Idieresis
-char207 "
--D 722,653,0,28,58,28 2 0320 Eth
-char208 "
-~N 667,836,15,110,70,43 2 0321 Ntilde
-char209 "
-`O 722,876,18,27,-10,27 2 0322 Ograve
-char210 "
-'O 722,876,18,27,-10,27 2 0323 Oacute
-char211 "
-^O 722,873,18,27,-10,27 2 0324 Ocircumflex
-char212 "
-~O 722,836,18,27,-10,27 2 0325 Otilde
-char213 "
-:O 722,818,18,27,-10,27 2 0326 Odieresis
-char214 "
-char215 675,497,0,0,-43 0 0327 multiply
-/O 722,722,105,27,-10,27 2 0330 Oslash
-char216 "
-`U 722,876,18,93,-52,43 2 0331 Ugrave
-char217 "
-'U 722,876,18,93,-52,43 2 0332 Uacute
-char218 "
-^U 722,873,18,93,-52,43 2 0333 Ucircumflex
-char219 "
-:U 722,818,18,93,-52,43 2 0334 Udieresis
-char220 "
-'Y 556,876,0,127,-28,43 2 0335 Yacute
-char221 "
-TP 611,653,0,8,50,8 2 0336 Thorn
-char222 "
-ss 500,679,207,43,218,43 3 0337 germandbls
-char223 "
-`a 500,664,11,26,33,26 2 0340 agrave
-char224 "
-'a 500,664,11,37,33,37 2 0341 aacute
-char225 "
-^a 500,661,11,26,33,26 2 0342 acircumflex
-char226 "
-~a 500,624,11,61,33,43 2 0343 atilde
-char227 "
-:a 500,606,11,39,33,39 2 0344 adieresis
-char228 "
-oa 500,691,11,26,33,26 2 0345 aring
-char229 "
-ae 667,441,11,23,27,23 0 0346 ae
-char230 "
-,c 444,441,217,31,24,31 1 0347 ccedilla
-char231 "
-`e 444,664,11,18,19,18 2 0350 egrave
-char232 "
-'e 444,664,11,65,19,43 2 0351 eacute
-char233 "
-^e 444,661,11,47,19,43 2 0352 ecircumflex
-char234 "
-:e 444,606,11,57,19,43 2 0353 edieresis
-char235 "
-`i 278,664,11,56,1,43 2 0354 igrave
-char236 "
-'i 278,664,11,128,1,43 2 0355 iacute
-char237 "
-^i 278,661,11,100,16,43 2 0356 icircumflex
-char238 "
-:i 278,606,11,125,1,43 2 0357 idieresis
-char239 "
-Sd 500,683,11,32,23,32 2 0360 eth
-char240 "
-~n 500,624,9,26,36,26 2 0361 ntilde
-char241 "
-`o 500,664,11,18,23,18 2 0362 ograve
-char242 "
-'o 500,664,11,37,23,37 2 0363 oacute
-char243 "
-^o 500,661,11,18,23,18 2 0364 ocircumflex
-char244 "
-~o 500,624,11,46,23,43 2 0365 otilde
-char245 "
-:o 500,606,11,39,23,39 2 0366 odieresis
-char246 "
-char247 675,517,11,0,-36 0 0367 divide
-/o 500,554,135,19,22,19 2 0370 oslash
-char248 "
-`u 500,664,11,25,8,25 2 0371 ugrave
-char249 "
-'u 500,664,11,27,8,27 2 0372 uacute
-char250 "
-^u 500,661,11,25,8,25 2 0373 ucircumflex
-char251 "
-:u 500,606,11,29,8,29 2 0374 udieresis
-char252 "
-'y 444,664,206,65,74,43 3 0375 yacute
-char253 "
-Tp 500,683,205,19,125,19 3 0376 thorn
-char254 "
-:y 444,606,206,47,74,43 3 0377 ydieresis
-char255 "
diff --git a/devps/TR b/devps/TR
deleted file mode 100644
index 25232c6d1..000000000
--- a/devps/TR
+++ /dev/null
@@ -1,519 +0,0 @@
-name TR
-internalname Times-Roman
-spacewidth 250
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A y -92
-A w -92
-A v -74
-A ' -111
-A Y -105
-A W -90
-A V -135
-A U -55
-A T -111
-A Q -55
-A O -55
-A G -40
-A C -40
-B U -10
-B A -35
-D Y -55
-D W -30
-D V -40
-D A -40
-F . -80
-F o -15
-F , -80
-F a -15
-F A -74
-J A -60
-K y -25
-K u -15
-K o -35
-K e -25
-K O -30
-L y -55
-L ' -92
-L Y -100
-L W -74
-L V -100
-L T -92
-N A -35
-O Y -50
-O X -40
-O W -35
-O V -50
-O T -40
-O A -35
-P . -111
-P , -111
-P a -15
-P A -92
-Q U -10
-R Y -65
-R W -55
-R V -80
-R U -40
-R T -60
-R O -40
-T y -80
-T w -80
-T u -45
-T ; -55
-T r -35
-T . -74
-T o -80
-T i -35
-T - -92
-T hy -92
-T char173 -92
-T e -70
-T , -74
-T : -50
-T a -80
-T O -18
-T A -93
-U A -40
-V u -75
-V ; -74
-V . -129
-V o -129
-V i -60
-V - -100
-V hy -100
-V char173 -100
-V e -111
-V , -129
-V : -74
-V a -111
-V O -40
-V G -15
-V A -135
-W y -73
-W u -50
-W ; -37
-W . -92
-W o -80
-W i -40
-W - -65
-W hy -65
-W char173 -65
-W e -80
-W , -92
-W : -37
-W a -80
-W O -10
-W A -120
-Y u -111
-Y ; -92
-Y . -129
-Y o -110
-Y i -55
-Y - -111
-Y hy -111
-Y char173 -111
-Y e -100
-Y , -129
-Y : -92
-Y a -100
-Y O -30
-Y A -120
-a w -15
-a v -20
-b v -15
-b u -20
-b . -40
-c y -15
-, ' -70
-, rq -70
-e y -15
-e x -15
-e w -25
-e v -25
-e g -15
-f ' 55
-f i -20
-f f -25
-f .i -50
-f a -10
-g a -5
-h y -5
-i v -25
-k y -15
-k o -10
-k e -10
-l w -10
-n y -15
-n v -40
-o y -10
-o w -25
-o v -15
-p y -10
-. ' -70
-. rq -70
-lq A -80
-` ` -74
-` oq -74
-oq ` -74
-oq oq -74
-` A -80
-oq A -80
-' v -50
-' t -18
-' s -55
-' r -50
-' ' -74
-' l -10
-' d -50
-r . -55
-r - -20
-r hy -20
-r char173 -20
-r g -18
-r , -40
-v . -65
-v o -20
-v e -15
-v , -65
-v a -25
-w . -65
-w o -10
-w , -65
-w a -10
-x e -15
-y . -65
-y , -65
-charset
-ha 469,662 2 0000 asciicircum
-ti 541,323 0 0001 asciitilde
-vS 556,886,14 2 0002 Scaron
-vZ 611,886 2 0003 Zcaron
-vs 389,674,10 2 0004 scaron
-vz 444,674 2 0005 zcaron
-:Y 722,835 2 0006 Ydieresis
-tm 980,662 2 0007 trademark
-aq 180,676 2 0010 quotesingle
-space 250 0 0040
-! 333,676,9 2 0041 exclam
-" 408,676 2 0042 quotedbl
-# 500,662 2 0043 numbersign
-sh "
-$ 500,727,87 2 0044 dollar
-Do "
-% 833,676,13 2 0045 percent
-& 778,676,13 2 0046 ampersand
-' 333,676 2 0047 quoteright
-( 333,676,177 2 0050 parenleft
-) 333,676,177 2 0051 parenright
-* 500,676 2 0052 asterisk
-+ 564,506 0 0053 plus
-, 250,102,141 0 0054 comma
-- 333,257 0 0055 hyphen
-hy "
-char173 "
-. 250,100,11 0 0056 period
-/ 278,676,14 2 0057 slash
-sl "
-0 500,676,14 2 0060 zero
-1 500,676 2 0061 one
-2 500,676 2 0062 two
-3 500,676,14 2 0063 three
-4 500,676 2 0064 four
-5 500,688,14 2 0065 five
-6 500,684,14 2 0066 six
-7 500,662,8 2 0067 seven
-8 500,676,14 2 0070 eight
-9 500,676,22 2 0071 nine
-: 278,459,11 0 0072 colon
-; 278,459,141 0 0073 semicolon
-< 564,514,8 0 0074 less
-= 564,386 0 0075 equal
-> 564,514,8 0 0076 greater
-? 444,676,8 2 0077 question
-@ 921,676,14 2 0100 at
-at "
-A 722,674 2 0101 A
-B 667,662 2 0102 B
-C 667,676,14 2 0103 C
-D 722,662 2 0104 D
-E 611,662 2 0105 E
-F 556,662 2 0106 F
-G 722,676,14 2 0107 G
-H 722,662 2 0110 H
-I 333,662 2 0111 I
-J 389,662,14 2 0112 J
-K 722,662 2 0113 K
-L 611,662 2 0114 L
-M 889,662 2 0115 M
-N 722,662,11 2 0116 N
-O 722,676,14 2 0117 O
-P 556,662 2 0120 P
-Q 722,676,178 2 0121 Q
-R 667,662 2 0122 R
-S 556,676,14 2 0123 S
-T 611,662 2 0124 T
-U 722,662,14 2 0125 U
-V 722,662,11 2 0126 V
-W 944,662,11 2 0127 W
-X 722,662 2 0130 X
-Y 722,662 2 0131 Y
-Z 611,662 2 0132 Z
-[ 333,662,156 2 0133 bracketleft
-lB "
-\ 278,676,14 2 0134 backslash
-rs "
-] 333,662,156 2 0135 bracketright
-rB "
-a^ 333,674 2 0136 circumflex
-^ "
-_ 500,0,125 0 0137 underscore
-` 333,676 2 0140 quoteleft
-oq "
-a 444,460,10 0 0141 a
-b 500,683,10 2 0142 b
-c 444,460,10 0 0143 c
-d 500,683,10 2 0144 d
-e 444,460,10 0 0145 e
-f 333,683 2 0146 f
-g 500,460,218 1 0147 g
-h 500,683 2 0150 h
-i 278,683 2 0151 i
-j 278,683,218 3 0152 j
-k 500,683 2 0153 k
-l 278,683 2 0154 l
-m 778,460 0 0155 m
-n 500,460 0 0156 n
-o 500,460,10 0 0157 o
-p 500,460,217 1 0160 p
-q 500,460,217 1 0161 q
-r 333,460 0 0162 r
-s 389,460,10 0 0163 s
-t 278,579,10 2 0164 t
-u 500,450,10 0 0165 u
-v 500,450,14 0 0166 v
-w 722,450,14 0 0167 w
-x 500,450 0 0170 x
-y 500,450,218 1 0171 y
-z 444,450 0 0172 z
-lC 480,680,181 2 0173 braceleft
-{ "
-ba 200,676,14 2 0174 bar
-| "
-rC 480,680,181 2 0175 braceright
-} "
-a~ 333,638 2 0176 tilde
-~ "
-bq 333,102,141 0 0200 quotesinglbase
-Fo 500,416 0 0201 guillemotleft
-char171 "
-Fc 500,416 0 0202 guillemotright
-char187 "
-bu 350,466 0 0203 bullet
-Fn 500,676,189 2 0204 florin
-f/ 167,676,14 2 0205 fraction
-%0 1000,706,19 2 0206 perthousand
-dg 500,676,149 2 0207 dagger
-dd 500,676,153 2 0210 daggerdbl
-en 500,250 0 0211 endash
-em 1000,250 0 0212 emdash
-fi 556,683 2 0214 fi
-fl 556,683 2 0215 fl
-.i 278,460 0 0220 dotlessi
-ga 333,678 2 0222 grave
-a" 333,678 2 0223 hungarumlaut
-a. 333,623 2 0224 dotaccent
-ab 333,664 2 0225 breve
-ah 333,674 2 0226 caron
-ao 333,711 2 0227 ring
-ho 333,0,165 0 0230 ogonek
-lq 444,676 2 0231 quotedblleft
-rq 444,676 2 0232 quotedblright
-oe 722,460,10 0 0233 oe
-/l 278,683 2 0234 lslash
-Bq 444,102,141 0 0235 quotedblbase
-OE 889,668,6 2 0236 OE
-/L 611,662 2 0237 Lslash
-r! 333,467,218 1 0241 exclamdown
-char161 "
-ct 500,579,138 2 0242 cent
-char162 "
-Po 500,676,8 2 0243 sterling
-char163 "
-Cs 500,602 2 0244 currency
-char164 "
-Ye 500,662 2 0245 yen
-char165 "
-bb 200,676,14 2 0246 brokenbar
-char166 "
-sc 500,676,148 2 0247 section
-char167 "
-ad 333,623 2 0250 dieresis
-char168 "
-co 760,676,14 2 0251 copyright
-char169 "
-Of 276,676 2 0252 ordfeminine
-char170 "
-fo 333,416 0 0253 guilsinglleft
-no 564,386 0 0254 logicalnot
-char172 "
-\- 564,286 0 0255 minus
-rg 760,676,14 2 0256 registered
-char174 "
-a- 333,601 2 0257 macron
-char175 "
-de 400,676 2 0260 degree
-char176 "
-char177 564,506 0 0261 plusminus
-S2 300,676 2 0262 twosuperior
-char178 "
-S3 300,676 2 0263 threesuperior
-char179 "
-aa 333,678 2 0264 acute
-char180 "
-char181 500,450,218 1 0265 mu
-ps 453,662,154 2 0266 paragraph
-char182 "
-char183 250,310 0 0267 periodcentered
-ac 333,0,215 0 0270 cedilla
-char184 "
-S1 300,676 2 0271 onesuperior
-char185 "
-Om 310,676 2 0272 ordmasculine
-char186 "
-fc 333,416 0 0273 guilsinglright
-14 750,676,14 2 0274 onequarter
-char188 "
-12 750,676,14 2 0275 onehalf
-char189 "
-34 750,676,14 2 0276 threequarters
-char190 "
-r? 444,466,218 1 0277 questiondown
-char191 "
-`A 722,890 2 0300 Agrave
-char192 "
-'A 722,890 2 0301 Aacute
-char193 "
-^A 722,886 2 0302 Acircumflex
-char194 "
-~A 722,850 2 0303 Atilde
-char195 "
-:A 722,835 2 0304 Adieresis
-char196 "
-oA 722,898 2 0305 Aring
-char197 "
-AE 889,662 2 0306 AE
-char198 "
-,C 667,676,215 2 0307 Ccedilla
-char199 "
-`E 611,890 2 0310 Egrave
-char200 "
-'E 611,890 2 0311 Eacute
-char201 "
-^E 611,886 2 0312 Ecircumflex
-char202 "
-:E 611,835 2 0313 Edieresis
-char203 "
-`I 333,890 2 0314 Igrave
-char204 "
-'I 333,890 2 0315 Iacute
-char205 "
-^I 333,886 2 0316 Icircumflex
-char206 "
-:I 333,835 2 0317 Idieresis
-char207 "
--D 722,662 2 0320 Eth
-char208 "
-~N 722,850,11 2 0321 Ntilde
-char209 "
-`O 722,890,14 2 0322 Ograve
-char210 "
-'O 722,890,14 2 0323 Oacute
-char211 "
-^O 722,886,14 2 0324 Ocircumflex
-char212 "
-~O 722,850,14 2 0325 Otilde
-char213 "
-:O 722,835,14 2 0326 Odieresis
-char214 "
-char215 564,497 0 0327 multiply
-/O 722,734,80 2 0330 Oslash
-char216 "
-`U 722,890,14 2 0331 Ugrave
-char217 "
-'U 722,890,14 2 0332 Uacute
-char218 "
-^U 722,886,14 2 0333 Ucircumflex
-char219 "
-:U 722,835,14 2 0334 Udieresis
-char220 "
-'Y 722,890 2 0335 Yacute
-char221 "
-TP 556,662 2 0336 Thorn
-char222 "
-ss 500,683,9 2 0337 germandbls
-char223 "
-`a 444,678,10 2 0340 agrave
-char224 "
-'a 444,678,10 2 0341 aacute
-char225 "
-^a 444,674,10 2 0342 acircumflex
-char226 "
-~a 444,638,10 2 0343 atilde
-char227 "
-:a 444,623,10 2 0344 adieresis
-char228 "
-oa 444,711,10 2 0345 aring
-char229 "
-ae 667,460,10 0 0346 ae
-char230 "
-,c 444,460,215 0 0347 ccedilla
-char231 "
-`e 444,678,10 2 0350 egrave
-char232 "
-'e 444,678,10 2 0351 eacute
-char233 "
-^e 444,674,10 2 0352 ecircumflex
-char234 "
-:e 444,623,10 2 0353 edieresis
-char235 "
-`i 278,678 2 0354 igrave
-char236 "
-'i 278,678 2 0355 iacute
-char237 "
-^i 278,674 2 0356 icircumflex
-char238 "
-:i 278,623 2 0357 idieresis
-char239 "
-Sd 500,686,10 2 0360 eth
-char240 "
-~n 500,638 2 0361 ntilde
-char241 "
-`o 500,678,10 2 0362 ograve
-char242 "
-'o 500,678,10 2 0363 oacute
-char243 "
-^o 500,674,10 2 0364 ocircumflex
-char244 "
-~o 500,638,10 2 0365 otilde
-char245 "
-:o 500,623,10 2 0366 odieresis
-char246 "
-char247 564,516,10 0 0367 divide
-/o 500,551,112 0 0370 oslash
-char248 "
-`u 500,678,10 2 0371 ugrave
-char249 "
-'u 500,678,10 2 0372 uacute
-char250 "
-^u 500,674,10 2 0373 ucircumflex
-char251 "
-:u 500,623,10 2 0374 udieresis
-char252 "
-'y 500,678,218 3 0375 yacute
-char253 "
-Tp 500,683,217 3 0376 thorn
-char254 "
-:y 500,623,218 3 0377 ydieresis
-char255 "
diff --git a/devps/ZCMI b/devps/ZCMI
deleted file mode 100644
index 53e56fd71..000000000
--- a/devps/ZCMI
+++ /dev/null
@@ -1,477 +0,0 @@
-name ZCMI
-internalname ZapfChancery-MediumItalic
-slant 14
-spacewidth 220
-encoding text.enc
-ligatures fi fl 0
-kernpairs
-A ' -40
-A rq -40
-A U -10
-A T 10
-A Q 10
-A O 10
-A G -30
-A C 20
-D . -30
-D , -20
-D Y 10
-D A -10
-F . -40
-F i 10
-F , -30
-G . -20
-G , -10
-J . -20
-J , -10
-K u -20
-K o -20
-K e -20
-L y -10
-L ' -25
-L rq -25
-L W -10
-L V -20
-O . -20
-O , -10
-O Y 10
-O T 20
-O A -20
-P . -50
-P o -10
-P e -10
-P , -40
-P a -20
-P A -10
-Q U -10
-R Y 10
-R W 10
-R T 20
-T o -20
-T i 20
-T - -20
-T hy -20
-T char173 -20
-T h 20
-T e -20
-T a -20
-T O 30
-T A 10
-V . -100
-V o -20
-V e -20
-V , -90
-V a -20
-V O 10
-V G -20
-W . -50
-W o -20
-W i 10
-W h 10
-W e -20
-W , -40
-W a -20
-W O 10
-Y u -20
-Y . -50
-Y o -50
-Y i 10
-Y e -40
-Y , -40
-Y a -60
-b . -30
-b l -20
-b , -20
-b b -20
-c k -10
-, ' -70
-, rq -70
-d w -20
-d v -10
-d d -40
-e y 10
-f ' 30
-f rq 30
-f . -50
-f f -50
-f e -10
-f , -40
-f a -20
-g y 10
-g . -30
-g i 10
-g e 10
-g , -20
-g a 10
-k y 10
-k o -10
-k e -20
-m y 10
-m u 10
-n y 20
-o . -30
-o , -20
-p . -30
-p p -10
-p , -20
-. ' -80
-. rq -80
-lq ` 20
-lq oq 20
-lq A 10
-` ` -115
-` oq -115
-oq ` -115
-oq oq -115
-` A 10
-oq A 10
-' v 30
-' t 20
-' s -25
-' r 30
-' ' -115
-' rq 20
-' l 20
-r . -50
-r i 10
-r , -40
-s . -20
-s , -10
-v . -30
-v , -20
-w . -30
-w o 10
-w h 20
-w , -20
-charset
-ha 520,594,0,62,-82,62 2 0000 asciicircum
-ti 520,320,0,69,-73,69 0 0001 asciitilde
-vS 460,831,81,184,5,87 2 0002 Scaron
-vZ 620,831,19,99,8,87 2 0003 Zcaron
-vs 320,659,14,194,4,87 2 0004 scaron
-vz 440,659,14,124,24,87 2 0005 zcaron
-:Y 560,762,168,264,9,87 2 0006 Ydieresis
-tm 1000,594,0,96,-77,87 2 0007 trademark
-aq 160,610,0,105,-95,87 2 0010 quotesingle
-space 220 0 0040
-! 280,610,14,123,-69,87 2 0041 exclam
-" 220,610,0,163,-70,87 2 0042 quotedbl
-# 440,594,0,131,-33,87 2 0043 numbersign
-sh "
-$ 440,709,144,118,-10,87 2 0044 dollar
-Do "
-% 680,700,160,80,-82,80 2 0045 percent
-& 780,610,16,185,-76,87 2 0046 ampersand
-' 240,610,0,148,-118,87 2 0047 quoteright
-( 260,664,216,201,-46,87 2 0050 parenleft
-) 220,664,216,132,63,87 2 0051 parenright
-* 420,610,0,109,-89,87 2 0052 asterisk
-+ 520,426,0,73,-67,73 0 0053 plus
-, 220,148,140,43,25,43 0 0054 comma
-- 280,248,0,104,-19,87 0 0055 hyphen
-hy "
-char173 "
-. 220,128,14,58,-52,58 0 0056 period
-/ 340,610,16,168,-24,87 2 0057 slash
-sl "
-0 440,610,16,148,-29,87 2 0060 zero
-1 440,610,0,38,9,38 2 0061 one
-2 440,610,16,95,33,87 2 0062 two
-3 440,610,16,95,49,87 2 0063 three
-4 440,610,35,109,-27,87 2 0064 four
-5 440,679,16,205,-10,87 2 0065 five
-6 440,610,16,166,-40,87 2 0066 six
-7 440,645,33,171,-107,87 2 0067 seven
-8 440,610,16,139,-15,87 2 0070 eight
-9 440,610,16,127,18,87 2 0071 nine
-: 260,438,14,86,-48,86 0 0072 colon
-; 240,438,140,109,21,87 0 0073 semicolon
-< 520,468,0,57,-89,57 0 0074 less
-= 520,340,0,73,-67,73 0 0075 equal
-> 520,468,0,57,-89,57 0 0076 greater
-? 380,610,14,125,-100,87 2 0077 question
-@ 700,610,16,103,-77,87 2 0100 at
-at "
-A 620,632,16,127,37,87 2 0101 A
-B 600,640,6,124,-35,87 2 0102 B
-C 520,610,16,161,-43,87 2 0103 C
-D 700,640,6,118,-36,87 2 0104 D
-E 620,618,12,139,-41,87 2 0105 E
-F 580,629,118,263,-70,87 2 0106 F
-G 620,610,242,139,-98,87 2 0107 G
-H 680,708,16,248,32,87 2 0110 H
-I 380,594,0,174,-49,87 2 0111 I
-J 400,594,147,188,64,87 2 0112 J
-K 660,610,153,234,-3,87 2 0113 K
-L 580,610,16,127,-3,87 2 0114 L
-M 840,722,16,230,-8,87 2 0115 M
-N 700,708,168,265,-35,87 2 0116 N
-O 600,610,16,110,-44,87 2 0117 O
-P 540,628,0,168,8,87 2 0120 P
-Q 600,610,177,225,-34,87 2 0121 Q
-R 600,640,168,255,-8,87 2 0122 R
-S 460,610,81,148,5,87 2 0123 S
-T 500,667,0,294,-13,87 2 0124 T
-U 740,617,16,102,-76,87 2 0125 U
-V 640,714,16,220,-74,87 2 0126 V
-W 880,723,16,216,-44,87 2 0127 W
-X 560,610,16,189,80,87 2 0130 X
-Y 560,647,168,264,9,87 2 0131 Y
-Z 620,624,19,99,8,87 2 0132 Z
-[ 240,655,207,215,63,87 2 0133 bracketleft
-lB "
-\ 480,610,16,94,-90,87 2 0134 backslash
-rs "
-] 320,655,207,121,77,87 2 0135 bracketright
-rB "
-a^ 340,649,0,153,-173,87 2 0136 circumflex
-^ "
-_ 500,0,125,50,50,50 0 0137 underscore
-` 240,610,0,149,-119,87 2 0140 quoteleft
-oq "
-a 420,438,15,115,-42,87 0 0141 a
-b 420,714,23,122,-32,87 2 0142 b
-c 340,438,14,116,-37,87 0 0143 c
-d 440,714,14,261,-52,87 2 0144 d
-e 340,438,14,113,-37,87 0 0145 e
-f 320,714,314,277,169,87 3 0146 f
-g 400,438,314,153,158,87 1 0147 g
-h 440,714,14,134,-5,87 2 0150 h
-i 240,635,14,151,-50,87 2 0151 i
-j 220,635,314,162,162,87 3 0152 j
-k 440,714,184,238,-37,87 2 0153 k
-l 240,714,14,290,-52,87 2 0154 l
-m 620,438,14,134,-36,87 0 0155 m
-n 460,438,14,134,-51,87 0 0156 n
-o 400,438,14,99,-37,87 0 0157 o
-p 440,432,314,94,73,87 1 0160 p
-q 400,510,300,140,-37,87 1 0161 q
-r 300,438,14,174,-51,87 0 0162 r
-s 320,438,14,133,4,87 0 0163 s
-t 320,539,14,156,-56,87 2 0164 t
-u 460,438,14,118,-52,87 0 0165 u
-v 440,488,14,143,-37,87 0 0166 v
-w 680,488,14,152,-37,87 0 0167 w
-x 420,438,195,219,-20,87 0 0170 x
-y 400,438,314,133,74,87 1 0171 y
-z 440,445,14,118,24,87 0 0172 z
-lC 240,655,207,193,-5,87 2 0173 braceleft
-{ "
-ba 520,714,16,0,-270 2 0174 bar
-| "
-rC 240,655,207,128,60,87 2 0175 braceright
-} "
-a~ 440,619,0,132,-193,87 2 0176 tilde
-~ "
-bq 180,146,121,61,29,61 0 0200 quotesinglbase
-Fo 340,414,0,66,-48,66 0 0201 guillemotleft
-char171 "
-Fc 380,414,0,45,-67,45 0 0202 guillemotright
-char187 "
-bu 600,445,0,0,-178 0 0203 bullet
-Fn 440,610,314,192,114,87 3 0204 florin
-f/ 60,610,16,310,231,87 2 0205 fraction
-%0 960,700,160,95,-62,87 2 0206 perthousand
-dg 460,610,37,158,-88,87 2 0207 dagger
-dd 480,610,59,103,-88,87 2 0210 daggerdbl
-en 500,239,0,115,-1,87 0 0211 endash
-em 1000,239,0,115,-1,87 0 0212 emdash
-fi 520,714,314,135,174,87 3 0214 fi
-fl 520,714,314,200,174,87 3 0215 fl
-.i 240,438,14,116,-50,87 0 0220 dotlessi
-ga 220,659,0,169,-143,87 2 0222 grave
-a" 400,659,0,145,-158,87 2 0223 hungarumlaut
-a. 220,610,0,158,-186,87 2 0224 dotaccent
-ab 440,631,0,111,-203,87 2 0225 breve
-ah 340,659,0,184,-204,87 2 0226 caron
-ao 300,659,0,166,-190,87 2 0227 ring
-ho 280,6,191,3,12,3 0 0230 ogonek
-lq 340,610,0,174,-119,87 2 0231 quotedblleft
-rq 360,610,0,143,-108,87 2 0232 quotedblright
-oe 560,438,14,118,-28,87 0 0233 oe
-/l 300,714,14,265,-71,87 2 0234 lslash
-Bq 280,146,121,51,64,51 0 0235 quotedblbase
-OE 820,610,16,139,-13,87 2 0236 OE
-/L 580,610,16,127,1,87 2 0237 Lslash
-r! 280,438,186,76,-22,76 0 0241 exclamdown
-char161 "
-ct 440,543,134,86,-72,86 2 0242 cent
-char162 "
-Po 440,610,52,116,66,87 2 0243 sterling
-char163 "
-Cs 440,509,0,84,0,84 0 0244 currency
-char164 "
-Ye 440,647,168,223,51,87 2 0245 yen
-char165 "
-bb 520,714,16,0,-270 2 0246 brokenbar
-char166 "
-sc 420,610,215,144,-3,87 2 0247 section
-char167 "
-ad 360,610,0,159,-193,87 2 0250 dieresis
-char168 "
-co 740,610,16,73,-87,73 2 0251 copyright
-char169 "
-Of 260,610,0,176,-61,87 2 0252 ordfeminine
-char170 "
-fo 240,414,0,68,-48,68 0 0253 guilsinglleft
-no 520,340,0,73,-67,73 0 0254 logicalnot
-char172 "
-\- 520,242,0,73,-67,73 0 0255 minus
-rg 740,610,16,73,-87,73 2 0256 registered
-char174 "
-a- 440,578,0,75,-172,75 2 0257 macron
-char175 "
-de 400,610,0,107,-121,87 2 0260 degree
-char176 "
-char177 520,436,0,73,-67,73 0 0261 plusminus
-S2 264,610,0,140,-22,87 2 0262 twosuperior
-char178 "
-S3 264,610,0,134,-9,87 2 0263 threesuperior
-char179 "
-aa 300,659,0,172,-215,87 2 0264 acute
-char180 "
-char181 460,438,314,113,43,87 1 0265 mu
-ps 500,594,199,188,-55,87 2 0266 paragraph
-char182 "
-char183 220,310,0,71,-89,71 0 0267 periodcentered
-ac 300,6,191,0,38 0 0270 cedilla
-char184 "
-S1 264,610,0,97,-33,87 2 0271 onesuperior
-char185 "
-Om 260,610,0,163,-78,87 2 0272 ordmasculine
-char186 "
-fc 260,414,0,56,-56,56 0 0273 guilsinglright
-14 660,610,16,92,-6,87 2 0274 onequarter
-char188 "
-12 660,610,16,92,-6,87 2 0275 onehalf
-char189 "
-34 660,610,16,96,11,87 2 0276 threequarters
-char190 "
-r? 400,438,186,37,-32,37 0 0277 questiondown
-char191 "
-`A 620,821,16,127,37,87 2 0300 Agrave
-char192 "
-'A 620,821,16,132,37,87 2 0301 Aacute
-char193 "
-^A 620,821,16,127,37,87 2 0302 Acircumflex
-char194 "
-~A 620,771,16,132,37,87 2 0303 Atilde
-char195 "
-:A 620,762,16,139,37,87 2 0304 Adieresis
-char196 "
-oA 620,831,16,127,37,87 2 0305 Aring
-char197 "
-AE 740,594,16,109,71,87 2 0306 AE
-char198 "
-,C 520,610,191,161,-43,87 2 0307 Ccedilla
-char199 "
-`E 620,821,12,139,-41,87 2 0310 Egrave
-char200 "
-'E 620,821,12,139,-41,87 2 0311 Eacute
-char201 "
-^E 620,821,12,139,-41,87 2 0312 Ecircumflex
-char202 "
-:E 620,762,12,139,-41,87 2 0313 Edieresis
-char203 "
-`I 380,821,0,174,-49,87 2 0314 Igrave
-char204 "
-'I 380,821,0,202,-49,87 2 0315 Iacute
-char205 "
-^I 380,821,0,174,-49,87 2 0316 Icircumflex
-char206 "
-:I 380,762,0,189,-49,87 2 0317 Idieresis
-char207 "
--D 700,640,6,118,-36,87 2 0320 Eth
-char208 "
-~N 700,761,168,265,-35,87 2 0321 Ntilde
-char209 "
-`O 600,821,16,110,-44,87 2 0322 Ograve
-char210 "
-'O 600,821,16,110,-44,87 2 0323 Oacute
-char211 "
-^O 600,821,16,110,-44,87 2 0324 Ocircumflex
-char212 "
-~O 600,761,16,110,-44,87 2 0325 Otilde
-char213 "
-:O 600,762,16,110,-44,87 2 0326 Odieresis
-char214 "
-char215 520,410,0,57,-83,57 0 0327 multiply
-/O 660,672,78,141,-33,87 2 0330 Oslash
-char216 "
-`U 740,821,16,102,-76,87 2 0331 Ugrave
-char217 "
-'U 740,821,16,102,-76,87 2 0332 Uacute
-char218 "
-^U 740,821,16,102,-76,87 2 0333 Ucircumflex
-char219 "
-:U 740,762,16,102,-76,87 2 0334 Udieresis
-char220 "
-'Y 560,821,168,264,9,87 2 0335 Yacute
-char221 "
-TP 540,623,0,157,-2,87 2 0336 Thorn
-char222 "
-ss 420,714,314,172,177,87 3 0337 germandbls
-char223 "
-`a 420,659,15,115,-42,87 2 0340 agrave
-char224 "
-'a 420,659,15,122,-42,87 2 0341 aacute
-char225 "
-^a 420,649,15,115,-42,87 2 0342 acircumflex
-char226 "
-~a 420,619,15,152,-42,87 2 0343 atilde
-char227 "
-:a 420,610,15,115,-42,87 2 0344 adieresis
-char228 "
-oa 420,659,15,115,-42,87 2 0345 aring
-char229 "
-ae 540,468,14,134,-17,87 0 0346 ae
-char230 "
-,c 340,438,191,116,-12,87 0 0347 ccedilla
-char231 "
-`e 340,659,14,113,-37,87 2 0350 egrave
-char232 "
-'e 340,659,14,172,-37,87 2 0351 eacute
-char233 "
-^e 340,649,14,143,-37,87 2 0352 ecircumflex
-char234 "
-:e 340,610,14,159,-37,87 2 0353 edieresis
-char235 "
-`i 240,659,14,116,-50,87 2 0354 igrave
-char236 "
-'i 240,659,14,202,-50,87 2 0355 iacute
-char237 "
-^i 240,649,14,173,-50,87 2 0356 icircumflex
-char238 "
-:i 240,610,14,179,-50,87 2 0357 idieresis
-char239 "
-Sd 400,714,14,172,-37,87 2 0360 eth
-char240 "
-~n 460,619,14,134,-51,87 2 0361 ntilde
-char241 "
-`o 400,659,14,99,-37,87 2 0362 ograve
-char242 "
-'o 400,659,14,132,-37,87 2 0363 oacute
-char243 "
-^o 400,649,14,103,-37,87 2 0364 ocircumflex
-char244 "
-~o 400,619,14,152,-37,87 2 0365 otilde
-char245 "
-:o 400,610,14,129,-37,87 2 0366 odieresis
-char246 "
-char247 520,440,14,73,-67,73 0 0367 divide
-/o 440,488,64,150,4,87 0 0370 oslash
-char248 "
-`u 460,659,14,118,-52,87 2 0371 ugrave
-char249 "
-'u 460,659,14,118,-52,87 2 0372 uacute
-char250 "
-^u 460,649,14,118,-52,87 2 0373 ucircumflex
-char251 "
-:u 460,610,14,118,-52,87 2 0374 udieresis
-char252 "
-'y 400,659,314,133,74,87 3 0375 yacute
-char253 "
-Tp 440,714,314,115,88,87 3 0376 thorn
-char254 "
-:y 400,610,314,133,74,87 3 0377 ydieresis
-char255 "
diff --git a/devps/ZD b/devps/ZD
deleted file mode 100644
index c2bd4eb8f..000000000
--- a/devps/ZD
+++ /dev/null
@@ -1,193 +0,0 @@
-name ZD
-internalname ZapfDingbats
-special
-spacewidth 278
-charset
-space 278 0 0040
---- 974,621 3 0041 a1
---- 961,611 3 0042 a2
---- 974,621 3 0043 a202
---- 980,692 3 0044 a3
---- 719,566 3 0045 a4
---- 789,705,14 3 0046 a5
---- 790,705,14 3 0047 a119
---- 791,705,13 3 0050 a118
---- 690,553 3 0051 a117
---- 960,568 3 0052 a11
-rh 939,559 3 0053 a12
---- 549,705,11 3 0054 a13
---- 855,632 3 0055 a14
---- 911,642 3 0056 a15
---- 933,550 3 0057 a16
---- 911,642 3 0060 a105
---- 945,553 3 0061 a17
---- 974,587 3 0062 a18
-OK 755,705,13 3 0063 a19
---- 846,705,14 3 0064 a20
---- 762,692 3 0065 a21
---- 761,692 3 0066 a22
---- 571,661,68 3 0067 a23
---- 677,705,13 3 0070 a24
---- 763,692 3 0071 a25
---- 760,692 3 0072 a26
---- 759,692 3 0073 a27
---- 754,692 3 0074 a28
---- 494,692 3 0075 a6
---- 552,692 3 0076 a7
---- 537,692 3 0077 a8
---- 577,596 3 0100 a9
---- 692,705,14 3 0101 a10
---- 786,705,14 3 0102 a29
---- 788,705,14 3 0103 a30
---- 788,705,14 3 0104 a31
---- 790,705,14 3 0105 a32
---- 793,705,13 3 0106 a33
---- 794,705,13 3 0107 a34
---- 816,705,14 3 0110 a35
---- 823,705,14 3 0111 a36
---- 789,705,14 3 0112 a37
---- 841,705,14 3 0113 a38
---- 823,705,14 3 0114 a39
---- 833,705,14 3 0115 a40
---- 816,705,13 3 0116 a41
---- 831,705,14 3 0117 a42
---- 923,705,14 3 0120 a43
---- 744,692 3 0121 a44
---- 723,692 3 0122 a45
---- 749,692 3 0123 a46
---- 790,705,14 3 0124 a47
---- 792,705,14 3 0125 a48
---- 695,706,14 3 0126 a49
---- 776,699,6 3 0127 a50
---- 768,699,7 3 0130 a51
---- 792,705,14 3 0131 a52
---- 759,692 3 0132 a53
---- 707,704,13 3 0133 a54
---- 708,705,14 3 0134 a55
---- 682,705,14 3 0135 a56
---- 701,705,14 3 0136 a57
---- 826,705,14 3 0137 a58
---- 815,705,14 3 0140 a59
---- 789,705,14 3 0141 a60
---- 789,705,14 3 0142 a61
---- 707,705,14 3 0143 a62
---- 687,692 3 0144 a63
---- 696,691 3 0145 a64
---- 689,692 3 0146 a65
---- 786,705,14 3 0147 a66
---- 787,705,14 3 0150 a67
---- 713,705,14 3 0151 a68
---- 791,705,14 3 0152 a69
---- 785,705,14 3 0153 a70
---- 791,705,14 3 0154 a71
---- 873,705,14 3 0155 a72
---- 761,692 3 0156 a73
---- 762,692 3 0157 a74
---- 762,692 3 0160 a203
---- 759,692 3 0161 a75
---- 759,692 3 0162 a204
---- 892,705 3 0163 a76
---- 892,692,14 3 0164 a77
---- 788,705,14 3 0165 a78
---- 784,705,14 3 0166 a79
---- 438,705,14 3 0167 a81
---- 138,692 3 0170 a82
---- 277,692 3 0171 a83
---- 415,692 3 0172 a84
---- 392,705 3 0173 a97
---- 392,705 3 0174 a98
---- 668,705 3 0175 a99
---- 668,705 3 0176 a100
---- 732,806,143 3 0241 a101
---- 544,706,14 3 0242 a102
---- 544,705,14 3 0243 a103
---- 910,651 3 0244 a104
---- 667,705,14 3 0245 a106
---- 760,705,14 3 0246 a107
---- 760,569 3 0247 a108
---- 776,705 3 0250 a112
---- 595,705,14 3 0251 a111
---- 694,705,14 3 0252 a110
---- 626,705 3 0253 a109
---- 788,705,14 3 0254 a120
---- 788,705,14 3 0255 a121
---- 788,705,14 3 0256 a122
---- 788,705,14 3 0257 a123
---- 788,705,14 3 0260 a124
---- 788,705,14 3 0261 a125
---- 788,705,14 3 0262 a126
---- 788,705,14 3 0263 a127
---- 788,705,14 3 0264 a128
---- 788,705,14 3 0265 a129
---- 788,705,14 3 0266 a130
---- 788,705,14 3 0267 a131
---- 788,705,14 3 0270 a132
---- 788,705,14 3 0271 a133
---- 788,705,14 3 0272 a134
---- 788,705,14 3 0273 a135
---- 788,705,14 3 0274 a136
---- 788,705,14 3 0275 a137
---- 788,705,14 3 0276 a138
---- 788,705,14 3 0277 a139
---- 788,705,14 3 0300 a140
---- 788,705,14 3 0301 a141
---- 788,705,14 3 0302 a142
---- 788,705,14 3 0303 a143
---- 788,705,14 3 0304 a144
---- 788,705,14 3 0305 a145
---- 788,705,14 3 0306 a146
---- 788,705,14 3 0307 a147
---- 788,705,14 3 0310 a148
---- 788,705,14 3 0311 a149
---- 788,705,14 3 0312 a150
---- 788,705,14 3 0313 a151
---- 788,705,14 3 0314 a152
---- 788,705,14 3 0315 a153
---- 788,705,14 3 0316 a154
---- 788,705,14 3 0317 a155
---- 788,705,14 3 0320 a156
---- 788,705,14 3 0321 a157
---- 788,705,14 3 0322 a158
---- 788,705,14 3 0323 a159
---- 894,634 3 0324 a160
---- 838,540 3 0325 a161
---- 1016,540 3 0326 a163
---- 458,820,127 3 0327 a164
---- 748,597 3 0330 a196
---- 924,552 3 0331 a165
---- 748,597 3 0332 a192
---- 918,526 3 0333 a166
---- 927,660 3 0334 a167
---- 928,562 3 0335 a168
---- 928,563 3 0336 a169
---- 834,537 3 0337 a170
---- 873,599 3 0340 a171
---- 828,588 3 0341 a172
---- 924,594 3 0342 a173
---- 924,594 3 0343 a162
---- 917,692 3 0344 a174
---- 930,608 3 0345 a175
---- 931,608 3 0346 a176
---- 463,791,99 3 0347 a177
---- 883,623 3 0350 a178
---- 836,648 3 0351 a179
---- 836,648 3 0352 a193
---- 867,591 3 0353 a180
---- 867,591 3 0354 a199
---- 696,648 3 0355 a181
---- 696,648 3 0356 a200
---- 874,619 3 0357 a182
---- 874,615 3 0361 a201
---- 760,692 3 0362 a183
---- 946,533 3 0363 a184
---- 771,655 3 0364 a197
---- 865,481 3 0365 a185
---- 771,655 3 0366 a194
---- 888,712,19 3 0367 a198
---- 967,568 3 0370 a186
---- 888,712,19 3 0371 a195
---- 831,579 3 0372 a187
---- 873,578 3 0373 a188
---- 927,542 3 0374 a189
---- 970,616 3 0375 a190
---- 918,593 3 0376 a191
diff --git a/devps/ZDR b/devps/ZDR
deleted file mode 100644
index 3b7f0a64c..000000000
--- a/devps/ZDR
+++ /dev/null
@@ -1,193 +0,0 @@
-name ZDR
-internalname ZapfDingbats-Reverse
-special
-spacewidth 278
-charset
-space 278 0 0040
---- 974,621 3 0041 a1
---- 961,611 3 0042 a2
---- 974,621 3 0043 a202
---- 980,692 3 0044 a3
---- 719,566 3 0045 a4
---- 789,705,14 3 0046 a5
---- 790,705,14 3 0047 a119
---- 791,705,13 3 0050 a118
---- 690,553 3 0051 a117
---- 960,568 3 0052 a11
-lh 939,559 3 0053 a12
---- 549,705,11 3 0054 a13
---- 855,632 3 0055 a14
---- 911,642 3 0056 a15
---- 933,550 3 0057 a16
---- 911,642 3 0060 a105
---- 945,553 3 0061 a17
---- 974,587 3 0062 a18
---- 755,705,13 3 0063 a19
---- 846,705,14 3 0064 a20
---- 762,692 3 0065 a21
---- 761,692 3 0066 a22
---- 571,661,68 3 0067 a23
---- 677,705,13 3 0070 a24
---- 763,692 3 0071 a25
---- 760,692 3 0072 a26
---- 759,692 3 0073 a27
---- 754,692 3 0074 a28
---- 494,692 3 0075 a6
---- 552,692 3 0076 a7
---- 537,692 3 0077 a8
---- 577,596 3 0100 a9
---- 692,705,14 3 0101 a10
---- 786,705,14 3 0102 a29
---- 788,705,14 3 0103 a30
---- 788,705,14 3 0104 a31
---- 790,705,14 3 0105 a32
---- 793,705,13 3 0106 a33
---- 794,705,13 3 0107 a34
---- 816,705,14 3 0110 a35
---- 823,705,14 3 0111 a36
---- 789,705,14 3 0112 a37
---- 841,705,14 3 0113 a38
---- 823,705,14 3 0114 a39
---- 833,705,14 3 0115 a40
---- 816,705,13 3 0116 a41
---- 831,705,14 3 0117 a42
---- 923,705,14 3 0120 a43
---- 744,692 3 0121 a44
---- 723,692 3 0122 a45
---- 749,692 3 0123 a46
---- 790,705,14 3 0124 a47
---- 792,705,14 3 0125 a48
---- 695,706,14 3 0126 a49
---- 776,699,6 3 0127 a50
---- 768,699,7 3 0130 a51
---- 792,705,14 3 0131 a52
---- 759,692 3 0132 a53
---- 707,704,13 3 0133 a54
---- 708,705,14 3 0134 a55
---- 682,705,14 3 0135 a56
---- 701,705,14 3 0136 a57
---- 826,705,14 3 0137 a58
---- 815,705,14 3 0140 a59
---- 789,705,14 3 0141 a60
---- 789,705,14 3 0142 a61
---- 707,705,14 3 0143 a62
---- 687,692 3 0144 a63
---- 696,691 3 0145 a64
---- 689,692 3 0146 a65
---- 786,705,14 3 0147 a66
---- 787,705,14 3 0150 a67
---- 713,705,14 3 0151 a68
---- 791,705,14 3 0152 a69
---- 785,705,14 3 0153 a70
---- 791,705,14 3 0154 a71
---- 873,705,14 3 0155 a72
---- 761,692 3 0156 a73
---- 762,692 3 0157 a74
---- 762,692 3 0160 a203
---- 759,692 3 0161 a75
---- 759,692 3 0162 a204
---- 892,705 3 0163 a76
---- 892,692,14 3 0164 a77
---- 788,705,14 3 0165 a78
---- 784,705,14 3 0166 a79
---- 438,705,14 3 0167 a81
---- 138,692 3 0170 a82
---- 277,692 3 0171 a83
---- 415,692 3 0172 a84
---- 392,705 3 0173 a97
---- 392,705 3 0174 a98
---- 668,705 3 0175 a99
---- 668,705 3 0176 a100
---- 732,806,143 3 0241 a101
---- 544,706,14 3 0242 a102
---- 544,705,14 3 0243 a103
---- 910,651 3 0244 a104
---- 667,705,14 3 0245 a106
---- 760,705,14 3 0246 a107
---- 760,569 3 0247 a108
---- 776,705 3 0250 a112
---- 595,705,14 3 0251 a111
---- 694,705,14 3 0252 a110
---- 626,705 3 0253 a109
---- 788,705,14 3 0254 a120
---- 788,705,14 3 0255 a121
---- 788,705,14 3 0256 a122
---- 788,705,14 3 0257 a123
---- 788,705,14 3 0260 a124
---- 788,705,14 3 0261 a125
---- 788,705,14 3 0262 a126
---- 788,705,14 3 0263 a127
---- 788,705,14 3 0264 a128
---- 788,705,14 3 0265 a129
---- 788,705,14 3 0266 a130
---- 788,705,14 3 0267 a131
---- 788,705,14 3 0270 a132
---- 788,705,14 3 0271 a133
---- 788,705,14 3 0272 a134
---- 788,705,14 3 0273 a135
---- 788,705,14 3 0274 a136
---- 788,705,14 3 0275 a137
---- 788,705,14 3 0276 a138
---- 788,705,14 3 0277 a139
---- 788,705,14 3 0300 a140
---- 788,705,14 3 0301 a141
---- 788,705,14 3 0302 a142
---- 788,705,14 3 0303 a143
---- 788,705,14 3 0304 a144
---- 788,705,14 3 0305 a145
---- 788,705,14 3 0306 a146
---- 788,705,14 3 0307 a147
---- 788,705,14 3 0310 a148
---- 788,705,14 3 0311 a149
---- 788,705,14 3 0312 a150
---- 788,705,14 3 0313 a151
---- 788,705,14 3 0314 a152
---- 788,705,14 3 0315 a153
---- 788,705,14 3 0316 a154
---- 788,705,14 3 0317 a155
---- 788,705,14 3 0320 a156
---- 788,705,14 3 0321 a157
---- 788,705,14 3 0322 a158
---- 788,705,14 3 0323 a159
---- 894,634 3 0324 a160
---- 838,540 3 0325 a161
---- 1016,540 3 0326 a163
---- 458,820,127 3 0327 a164
---- 748,597 3 0330 a196
---- 924,552 3 0331 a165
---- 748,597 3 0332 a192
---- 918,526 3 0333 a166
---- 927,660 3 0334 a167
---- 928,562 3 0335 a168
---- 928,563 3 0336 a169
---- 834,537 3 0337 a170
---- 873,599 3 0340 a171
---- 828,588 3 0341 a172
---- 924,594 3 0342 a173
---- 924,594 3 0343 a162
---- 917,692 3 0344 a174
---- 930,608 3 0345 a175
---- 931,608 3 0346 a176
---- 463,791,99 3 0347 a177
---- 883,623 3 0350 a178
---- 836,648 3 0351 a179
---- 836,648 3 0352 a193
---- 867,591 3 0353 a180
---- 867,591 3 0354 a199
---- 696,648 3 0355 a181
---- 696,648 3 0356 a200
---- 874,619 3 0357 a182
---- 874,615 3 0361 a201
---- 760,692 3 0362 a183
---- 946,533 3 0363 a184
---- 771,655 3 0364 a197
---- 865,481 3 0365 a185
---- 771,655 3 0366 a194
---- 888,712,19 3 0367 a198
---- 967,568 3 0370 a186
---- 888,712,19 3 0371 a195
---- 831,579 3 0372 a187
---- 873,578 3 0373 a188
---- 927,542 3 0374 a189
---- 970,616 3 0375 a190
---- 918,593 3 0376 a191
diff --git a/doc/Makefile b/doc/Makefile
index cccc52c1d..b82ff180e 100644..100755
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,28 +1,33 @@
-#Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
-# Written by James Clark (jjc@jclark.com)
-#
-#This file is part of groff.
-#
-#groff is free software; you can redistribute it and/or modify it under
-#the terms of the GNU General Public License as published by the Free
-#Software Foundation; either version 2, or (at your option) any later
-#version.
-#
-#groff is distributed in the hope that it will be useful, but WITHOUT ANY
-#WARRANTY; without even the implied warranty of MERCHANTABILITY or
-#FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-#for more details.
-#
-#You should have received a copy of the GNU General Public License along
-#with groff; see the file COPYING. If not, write to the Free Software
-#Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-FFLAG=-F..
-TROFF=../troff/troff -M../tmac $(FFLAG)
-GROPS=../grops/grops $(FFLAG)
-DOCS=meref.ps meintro.ps pic.ps
-MEMACROS=../macros/tmac.e
-SOELIM=../soelim/soelim
+# Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
+# Written by James Clark (jjc@jclark.com)
+#
+# This file is part of groff.
+#
+# groff is free software; you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free
+# Software Foundation; either version 2, or (at your option) any later
+# version.
+#
+# groff is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with groff; see the file COPYING. If not, write to the Free Software
+# Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+FFLAG=-F../font
+TROFF=../src/roff/troff/troff -M../tmac $(FFLAG)
+GROFF=../src/rof/groff/groff -p -e -t
+GROPS=../src/devices/grops/grops $(FFLAG)
+DOCS=meref.ps meintro.ps pic.ps pic.html homepage.html
+MEMACROS=../tmac/tmac.e
+SOELIM=../src/preproc/soelim/soelim
+
+version=`cat ../VERSION`
+# No additional number for the groff archive if revision is zero
+revision=`sed -e 's/^0$$//' -e 's/^[1-9].*$$/.&/' ../REVISION`
all: $(DOCS)
@@ -33,28 +38,40 @@ all: $(DOCS)
.me.dit:
$(SOELIM) $< \
- | sed -e "s;@VERSION@;`cat ../VERSION`;" \
+ | sed -e "s;@VERSION@;$(version)$(revision);" \
| $(TROFF) -Tps $(FFLAG) -me >$@
.tr.dit:
$(TROFF) -Tps $< >$@
+%.html: %.ms
+ export GROFF_TMAC_PATH=../tmac ; \
+ sed -e "s;@VERSION@;$(version)$(revision);" $< \
+ | $(GROFF) -Thtml $(FFLAG) -U -ms >$@
+
+%.ascii: %.ms
+ export GROFF_TMAC_PATH=../tmac ; \
+ sed -e "s;@VERSION@;$(version)$(revision);" $< \
+ | $(GROFF) -Tascii $(FFLAG) -U -ms -markup >$@
+
+%.ps: %.ms
+ export GROFF_TMAC_PATH=../tmac ; \
+ sed -e "s;@VERSION@;$(version)$(revision);" $< \
+ | $(GROFF) -Tps $(FFLAG) -U -ms -markup >$@
+
meref.ps: meref.dit
meintro.ps: meintro.dit
# This production must use -p -e -t so pic/eqn processing is done
pic.ps: pic.ms
- sed -e "s;@VERSION@;`cat ../VERSION`;" $< \
- | ../groff/groff -p -e -t -Tps $(FFLAG) -ms >$@
-
-pic.html: pic.ms
- sed -e "s;@VERSION@;`cat ../VERSION`;" $< \
- | ../groff/groff -p -e -t -Thtml $(FFLAG) -ms -mhtml >$@
+ export GROFF_TMAC_PATH=../tmac ; \
+ sed -e "s;@VERSION@;$(version)$(revision);" $< \
+ | $(GROFF) -Tps $(FFLAG) -ms >$@
install:
clean:
- -rm -f *.ps *.html *.png *.gif *.dit core
+ -rm -f *.ps *.html *.ascii *.png *.gif *.dit core
-rm -f *.aux *.cp *.cps *.cv *.cn *.dvi *.fn *.fns *.ky *.kys \
*.log *.op *.pg *.pgs *.ps *.toc *.tp *.tps *.tr *.vr *.vrs
diff --git a/doc/groff.texinfo b/doc/groff.texinfo
index 85d92c666..5a0a7f1f2 100644
--- a/doc/groff.texinfo
+++ b/doc/groff.texinfo
@@ -22,13 +22,13 @@
@ifinfo
-This Info file documents GNU troff version 1.12.
+This Info file documents GNU troff version 1.16.
Published by the Free Software Foundation
59 Temple Place, Suite 330
Boston, MA 02111-1307 USA
-Copyright (C) 1994, 1999 Free Software Foundation, Inc.
+Copyright (C) 1994-2000 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
@@ -69,8 +69,8 @@ instead of in the original English.
@titlepage
@title groff
@subtitle The GNU implementation of @code{groff}
-@subtitle Edition 1.12
-@subtitle October 1999
+@subtitle Edition 1.16
+@subtitle Spring 2000
@author by Trent A.@w{ }Fisher
@author and the maintainer of groff
@@ -79,11 +79,11 @@ instead of in the original English.
@page
@vskip 0pt plus 1filll
-Copyright @copyright{} 1994, 1999 Free Software Foundation, Inc.
+Copyright @copyright{} 1994-2000 Free Software Foundation, Inc.
@sp 2
-Version 1.13 of @code{groff}, @*
-October 1999
+Version 1.16 of @code{groff}, @*
+Spring 2000
@sp 2
Published by the Free Software Foundation @*
59 Temple Place, Suite 330 @*
@@ -116,7 +116,7 @@ Cover art by Etienne Suvasa.
@node Top, Copying, (dir), (dir)
@ifinfo
-This Info file documents groff version 1.13, the GNU implementation of
+This Info file documents groff version 1.16, the GNU implementation of
the troff typesetting system.
This is an in-progress document; contributions, comments, or
@@ -967,7 +967,10 @@ For a 100dpi X11 previewer.
@item ascii
For typewriter-like devices.
@item latin1
-For typewriter-like devices using the ISO Latin-1 character set.
+For typewriter-like devices using the ISO Latin-1 (ISO 8859-1) character set.
+@item utf8
+For typewriter-like devices using the Unicode (ISO 10646) character set with
+UTF-8 encoding.
@item lj4
For an HP LaserJet4-compatible (or other PCL5-compatible) printer.
@item html
@@ -2294,9 +2297,35 @@ Day of the year (1-31).
@item mo
@vindex mo
Current month (1-12).
+@item year
+@vindex year
+The year.
@item yr
@vindex yr
-Last two digits of the current year (see you in 7 years :-)
+The year minus 1900. Unfortunately, the Unix Version 7 troff
+documentation had a year 2000 bug: it incorrectly claimed that
+@samp{\n(yr} was the last two digits of the year. That claim has never
+been true of either traditional troff or GNU troff. If you see old
+troff input that looks like this:
+
+@example
+'\" (The following line stopped working after 1999.)
+This document was formatted in 19\n(yr.
+@end example
+
+you can correct it as follows:
+
+@example
+This document was formatted in \n[year].
+@end example
+
+or, if you want to be portable to older troff versions, as follows:
+
+@example
+.nr y4 1900+\n(yr
+This document was formatted in \n(y4.
+@end example
+
@item .c
@vindex .c
@itemx c.
@@ -2313,6 +2342,9 @@ then @code{.x} will contain 1.
@vindex .y
The minor version number. For example, if the version number is 1.03
then @code{.y} will contain 03.
+@item .Y
+@vindex .Y
+The revision number of groff.
@item .g
@vindex .g
Always 1.
@@ -3920,7 +3952,7 @@ request can make a macro have more than one name.
This would be called as
@example
-.vl $Id: groff.texinfo,v 1.5 1999/12/09 09:42:29 wlemb Exp $
+.vl $Id$
@end example
diff --git a/doc/homepage.ms b/doc/homepage.ms
new file mode 100755
index 000000000..b542d7323
--- /dev/null
+++ b/doc/homepage.ms
@@ -0,0 +1,162 @@
+.\" This file gives a small example how a web page could look like if created
+.\" with groff.
+.\"
+.\"
+.\" To make it work with other output devices also, we include tmac.arkup
+.\" directly.
+.mso tmac.arkup
+.\"
+.LP
+.\"
+.\" set a longer line than the default as we have some long ftp addresses
+.\" which groff cannot split
+.nr LL 7i
+.TL
+Home of Groff (GNU Troff).
+.sp 1i
+.LP
+GNU Troff
+.URL (Groff) http://groff.ffii.org/
+\(em a
+.URL GNU http://www.gnu.org/
+project.
+Hosted by
+.URL FFII http://ffii.org/ .
+.br
+.LINE
+.LP
+Groff (GNU Troff) is a document processor which reads plain text mixed with
+formatting commands and produces formatted output.
+.LP
+Groff now supports HTML for the Web.
+Please see
+.URL "Groff Web Tips" "#Web Tips" .
+.sp
+.SH
+Download
+.LP
+.URL Germany "ftp://groff.ffii.org/pub/groff/"
+|
+.URL USA "ftp://ftp.gnu.org/gnu/groff/"
+.LP
+.URL License http://www.gnu.org/copyleft/gpl.html
+|
+.URL "Mailing list" http://ffii.org/mailman/listinfo/groff/
+|
+.URL "Groff for Windows" "http://www.cs.vu.nl/~tmgil/misc/wingroff.html"
+.sp
+User issues lead:
+.MAILTO Ted.Harding@nessie.mcc.ac.uk "Ted Harding"
+.br
+Technical issues lead:
+.MAILTO wl@gnu.org "Werner Lemberg"
+.SH
+README
+.LP
+This is the GNU groff document formatting system.
+The version number is given in the file VERSION.
+.LP
+Included in this release are implementations of troff, pic, eqn, tbl, refer,
+the -man macros and the -ms macros, and drivers for PostScript, TeX dvi
+format, HP LaserJet 4 printers, HTML format (still alpha), and
+typewriter-like devices.
+Also included is a modified version of the Berkeley -me macros, an enhanced
+version of the X11 xditview previewer, and an implementation of the -mm
+macros contributed by
+.MAILTO jh@axis.se "J\(:orgen H\(:agg" .
+.LP
+See the file INSTALL for installation instructions.
+You will require a C++ compiler.
+.LP
+The file NEWS describes recent user-visible changes to groff.
+.LP
+Groff is free software.
+See the file COPYING for copying permission.
+.LP
+The file PROBLEMS describes various problems that have been encountered in
+compiling, installing, and running groff.
+.LP
+For the moment, the documentation assumes that you are already familiar with
+the Unix versions of troff, -man, -ms and the preprocessors.
+.LP
+The most recent released version of groff is always available by anonymous
+ftp from ftp.gnu.org in the directory pub/gnu/groff.
+.LP
+A CVS repository is now available, containing the current development
+version of groff.
+You can access it with the commands:
+.sp
+.RS
+.nf
+\fC
+export CVSROOT=:pserver:anoncvs@anoncvs.ffii.org:/var/cvs
+cvs login
+cvs -z9 co groff
+\fR
+.fi
+.RE
+.sp
+.LP
+(if the prompt for the password appears, just press the enter key).
+After a successful login you no longer need the first two commands; an
+update of a checked out repository should be done with:
+.sp
+.RS
+\fC
+cvs -z9 update -dP
+\fR
+.RE
+.sp
+.LP
+Please read the info pages of cvs for further details.
+.LP
+Alternatively, you can download snapshots (which are updated twice a day)
+from
+.URL here ftp://ftp.ffii.org/pub/groff/devel/groff-current.tar.gz
+or a diff file relative to the latest official groff release as:
+.sp
+.RS
+\fC
+ftp://ftp.ffii.org/pub/groff/devel/groff-[version]-current.diff.gz
+\fR
+.RE
+.sp
+.LP
+Please report bugs using the form in the file BUG-REPORT; the idea of this
+is to make sure that FSF has all the information it needs to fix the bug.
+At the very least, read the BUG-REPORT form and make sure that you supply
+all the information that it asks for.
+Even if you are not sure that something is a bug, report it using
+BUG-REPORT: this will enable us to determine whether it really is a bug or
+not.
+.LP
+Three mailing lists are available:
+.sp
+.RS
+.nf
+\fC
+bug-groff@gnu.org for reporting bugs
+groff@gnu.org for general discussion of groff
+groff-commit@ffii.org a read-only list showing logs of
+ commitments to the CVS repository
+\fR
+.fi
+.RE
+.sp
+.LP
+Note that groff@gnu.org is an alias for groff@ffii.org; you must be
+subscribed to the `groff' and `groff-commit' lists to send mails.
+.LP
+To subscribe, send e-mail to [list]-request@[domain] (example:
+groff-request@ffii.org) with the word `subscribe' in either the
+subject or body of the e-mail (don't include the quotes).
+.LP
+GNU groff was written by
+.MAILTO jjc@jclark.com "James Clark" .
+It is now maintained by
+.MAILTO Ted.Harding@nessie.mcc.ac.uk "Ted Harding"
+and
+.MAILTO wl@gnu.org "Werner Lemberg" .
+.LINE
+.
+.\" EOF
diff --git a/doc/pic.ms b/doc/pic.ms
index 948617c34..aa38c07cb 100644
--- a/doc/pic.ms
+++ b/doc/pic.ms
@@ -10,7 +10,7 @@
.\" This document was written for free use and redistribution by
.\" Eric S. Raymond <esr@thyrsus.com> in August 1995.
.\"
-.\" $Id: pic.ms,v 1.2 1999/12/04 08:57:07 wlemb Exp $
+.\" $Id$
.\"
.\" Set a proper TeX
.ie t .ds tx T\h'-.1667m'\v'.224m'E\v'-.224m'\h'-.125m'X
diff --git a/eqn/Makefile.dep b/eqn/Makefile.dep
deleted file mode 100644
index 2e0e9f158..000000000
--- a/eqn/Makefile.dep
+++ /dev/null
@@ -1,31 +0,0 @@
-main.o: main.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h ../include/stringclass.h \
- ../include/device.h ../include/searchpath.h ../include/macropath.h
-lex.o: lex.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h eqn.cc \
- ../include/stringclass.h ../include/ptable.h
-box.o: box.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-limit.o: limit.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-list.o: list.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-over.o: over.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-text.o: text.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h ../include/ptable.h
-script.o: script.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-mark.o: mark.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-other.o: other.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-delim.o: delim.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-sqrt.o: sqrt.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-pile.o: pile.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-special.o: special.cc eqn.h ../include/cset.h ../include/errarg.h \
- ../include/error.h ../include/lib.h box.h pbox.h
-eqn.o: eqn.cc ../include/lib.h box.h
diff --git a/eqn/Makefile.sub b/eqn/Makefile.sub
deleted file mode 100644
index 692bf42e4..000000000
--- a/eqn/Makefile.sub
+++ /dev/null
@@ -1,27 +0,0 @@
-PROG=eqn
-MAN1=eqn.n
-XLIBS=$(LIBGROFF)
-OBJS=eqn.o main.o lex.o box.o limit.o list.o over.o text.o script.o \
- mark.o other.o delim.o sqrt.o pile.o special.o
-CCSRCS=main.cc lex.cc box.cc limit.cc list.cc over.cc text.cc \
- script.cc mark.cc other.cc delim.cc sqrt.cc pile.cc special.cc
-HDRS=box.h eqn.h pbox.h
-GRAM=eqn.y
-YTABC=eqn.cc
-YTABH=eqn.tab.h
-NAMEPREFIX=$(g)
-CLEANADD=neqn
-
-all: neqn
-
-neqn: neqn.sh
- -rm -f neqn
- sed -e 's/@g@/$(g)/g' -e "$(SH_SCRIPT_SED_CMD)" $(srcdir)/neqn.sh >neqn
- chmod +x neqn
-
-install_data: neqn
- -rm -f $(bindir)/$(NAMEPREFIX)neqn
- $(INSTALL_PROGRAM) neqn $(bindir)/$(NAMEPREFIX)neqn
-
-uninstall_sub:
- -rm -f $(bindir)/$(NAMEPREFIX)neqn
diff --git a/devX100-12/CB b/font/devX100-12/CB
index 3751184aa..3751184aa 100644
--- a/devX100-12/CB
+++ b/font/devX100-12/CB
diff --git a/devX100-12/CBI b/font/devX100-12/CBI
index d7d0145a0..d7d0145a0 100644
--- a/devX100-12/CBI
+++ b/font/devX100-12/CBI
diff --git a/devX100-12/CI b/font/devX100-12/CI
index 804f71f77..804f71f77 100644
--- a/devX100-12/CI
+++ b/font/devX100-12/CI
diff --git a/devX100-12/CR b/font/devX100-12/CR
index 140ec55d0..140ec55d0 100644
--- a/devX100-12/CR
+++ b/font/devX100-12/CR
diff --git a/devX100-12/DESC b/font/devX100-12/DESC
index ead70b97f..ead70b97f 100644
--- a/devX100-12/DESC
+++ b/font/devX100-12/DESC
diff --git a/devX100-12/HB b/font/devX100-12/HB
index e68615e14..e68615e14 100644
--- a/devX100-12/HB
+++ b/font/devX100-12/HB
diff --git a/devX100-12/HBI b/font/devX100-12/HBI
index 6723ddff1..6723ddff1 100644
--- a/devX100-12/HBI
+++ b/font/devX100-12/HBI
diff --git a/devX100-12/HI b/font/devX100-12/HI
index f002cd630..f002cd630 100644
--- a/devX100-12/HI
+++ b/font/devX100-12/HI
diff --git a/devX100-12/HR b/font/devX100-12/HR
index d2b296f64..d2b296f64 100644
--- a/devX100-12/HR
+++ b/font/devX100-12/HR
diff --git a/devX100-12/Makefile.sub b/font/devX100-12/Makefile.sub
index d0747579a..d0747579a 100644
--- a/devX100-12/Makefile.sub
+++ b/font/devX100-12/Makefile.sub
diff --git a/devX100-12/NB b/font/devX100-12/NB
index f997df596..f997df596 100644
--- a/devX100-12/NB
+++ b/font/devX100-12/NB
diff --git a/devX100-12/NBI b/font/devX100-12/NBI
index 38c32819b..38c32819b 100644
--- a/devX100-12/NBI
+++ b/font/devX100-12/NBI
diff --git a/devX100-12/NI b/font/devX100-12/NI
index 7a34f2af9..7a34f2af9 100644
--- a/devX100-12/NI
+++ b/font/devX100-12/NI
diff --git a/devX100-12/NR b/font/devX100-12/NR
index 0a9a0cfa8..0a9a0cfa8 100644
--- a/devX100-12/NR
+++ b/font/devX100-12/NR
diff --git a/devX100-12/S b/font/devX100-12/S
index 453c295e2..453c295e2 100644
--- a/devX100-12/S
+++ b/font/devX100-12/S
diff --git a/devX100-12/TB b/font/devX100-12/TB
index 83073d528..83073d528 100644
--- a/devX100-12/TB
+++ b/font/devX100-12/TB
diff --git a/devX100-12/TBI b/font/devX100-12/TBI
index 71ca71362..71ca71362 100644
--- a/devX100-12/TBI
+++ b/font/devX100-12/TBI
diff --git a/devX100-12/TI b/font/devX100-12/TI
index fad269f92..fad269f92 100644
--- a/devX100-12/TI
+++ b/font/devX100-12/TI
diff --git a/devX100-12/TR b/font/devX100-12/TR
index 6db573e8b..6db573e8b 100644
--- a/devX100-12/TR
+++ b/font/devX100-12/TR
diff --git a/devX100/CB b/font/devX100/CB
index 7239ed1e0..7239ed1e0 100644
--- a/devX100/CB
+++ b/font/devX100/CB
diff --git a/devX100/CBI b/font/devX100/CBI
index 384f91d72..384f91d72 100644
--- a/devX100/CBI
+++ b/font/devX100/CBI
diff --git a/devX100/CI b/font/devX100/CI
index 07fd0a685..07fd0a685 100644
--- a/devX100/CI
+++ b/font/devX100/CI
diff --git a/devX100/CR b/font/devX100/CR
index e425fa602..e425fa602 100644
--- a/devX100/CR
+++ b/font/devX100/CR
diff --git a/devX100/DESC b/font/devX100/DESC
index 7f63535e0..7f63535e0 100644
--- a/devX100/DESC
+++ b/font/devX100/DESC
diff --git a/devX100/HB b/font/devX100/HB
index d877fd65a..d877fd65a 100644
--- a/devX100/HB
+++ b/font/devX100/HB
diff --git a/devX100/HBI b/font/devX100/HBI
index 1cf0e56e6..1cf0e56e6 100644
--- a/devX100/HBI
+++ b/font/devX100/HBI
diff --git a/devX100/HI b/font/devX100/HI
index 7908492d4..7908492d4 100644
--- a/devX100/HI
+++ b/font/devX100/HI
diff --git a/devX100/HR b/font/devX100/HR
index c2f6af390..c2f6af390 100644
--- a/devX100/HR
+++ b/font/devX100/HR
diff --git a/devX100/Makefile.sub b/font/devX100/Makefile.sub
index 4d40f0fd5..4d40f0fd5 100644
--- a/devX100/Makefile.sub
+++ b/font/devX100/Makefile.sub
diff --git a/devX100/NB b/font/devX100/NB
index d47fdb2e1..d47fdb2e1 100644
--- a/devX100/NB
+++ b/font/devX100/NB
diff --git a/devX100/NBI b/font/devX100/NBI
index c46b945ae..c46b945ae 100644
--- a/devX100/NBI
+++ b/font/devX100/NBI
diff --git a/devX100/NI b/font/devX100/NI
index 3216f64a0..3216f64a0 100644
--- a/devX100/NI
+++ b/font/devX100/NI
diff --git a/devX100/NR b/font/devX100/NR
index 8e6717eef..8e6717eef 100644
--- a/devX100/NR
+++ b/font/devX100/NR
diff --git a/devX100/S b/font/devX100/S
index 59af889e1..59af889e1 100644
--- a/devX100/S
+++ b/font/devX100/S
diff --git a/devX100/TB b/font/devX100/TB
index ebafbac74..ebafbac74 100644
--- a/devX100/TB
+++ b/font/devX100/TB
diff --git a/devX100/TBI b/font/devX100/TBI
index 2297b4b2b..2297b4b2b 100644
--- a/devX100/TBI
+++ b/font/devX100/TBI
diff --git a/devX100/TI b/font/devX100/TI
index 80a2f1c40..80a2f1c40 100644
--- a/devX100/TI
+++ b/font/devX100/TI
diff --git a/devX100/TR b/font/devX100/TR
index eafc811b2..eafc811b2 100644
--- a/devX100/TR
+++ b/font/devX100/TR
diff --git a/devX75-12/CB b/font/devX75-12/CB
index a5d1baff2..a5d1baff2 100644
--- a/devX75-12/CB
+++ b/font/devX75-12/CB
diff --git a/devX75-12/CBI b/font/devX75-12/CBI
index 764eaf778..764eaf778 100644
--- a/devX75-12/CBI
+++ b/font/devX75-12/CBI
diff --git a/devX75-12/CI b/font/devX75-12/CI
index acc9ec864..acc9ec864 100644
--- a/devX75-12/CI
+++ b/font/devX75-12/CI
diff --git a/devX75-12/CR b/font/devX75-12/CR
index 666e837b4..666e837b4 100644
--- a/devX75-12/CR
+++ b/font/devX75-12/CR
diff --git a/devX75-12/DESC b/font/devX75-12/DESC
index 4793e599e..4793e599e 100644
--- a/devX75-12/DESC
+++ b/font/devX75-12/DESC
diff --git a/devX75-12/HB b/font/devX75-12/HB
index b8cbb6ef5..b8cbb6ef5 100644
--- a/devX75-12/HB
+++ b/font/devX75-12/HB
diff --git a/devX75-12/HBI b/font/devX75-12/HBI
index 3014c9027..3014c9027 100644
--- a/devX75-12/HBI
+++ b/font/devX75-12/HBI
diff --git a/devX75-12/HI b/font/devX75-12/HI
index 587e1451e..587e1451e 100644
--- a/devX75-12/HI
+++ b/font/devX75-12/HI
diff --git a/devX75-12/HR b/font/devX75-12/HR
index 86958ed6b..86958ed6b 100644
--- a/devX75-12/HR
+++ b/font/devX75-12/HR
diff --git a/devX75-12/Makefile.sub b/font/devX75-12/Makefile.sub
index 37f4b7cba..37f4b7cba 100644
--- a/devX75-12/Makefile.sub
+++ b/font/devX75-12/Makefile.sub
diff --git a/devX75-12/NB b/font/devX75-12/NB
index 5fea01717..5fea01717 100644
--- a/devX75-12/NB
+++ b/font/devX75-12/NB
diff --git a/devX75-12/NBI b/font/devX75-12/NBI
index 0da124adf..0da124adf 100644
--- a/devX75-12/NBI
+++ b/font/devX75-12/NBI
diff --git a/devX75-12/NI b/font/devX75-12/NI
index 05ee8cdbd..05ee8cdbd 100644
--- a/devX75-12/NI
+++ b/font/devX75-12/NI
diff --git a/devX75-12/NR b/font/devX75-12/NR
index a1df48679..a1df48679 100644
--- a/devX75-12/NR
+++ b/font/devX75-12/NR
diff --git a/devX75-12/S b/font/devX75-12/S
index 2e66ad091..2e66ad091 100644
--- a/devX75-12/S
+++ b/font/devX75-12/S
diff --git a/devX75-12/TB b/font/devX75-12/TB
index 348d38810..348d38810 100644
--- a/devX75-12/TB
+++ b/font/devX75-12/TB
diff --git a/devX75-12/TBI b/font/devX75-12/TBI
index 02793a580..02793a580 100644
--- a/devX75-12/TBI
+++ b/font/devX75-12/TBI
diff --git a/devX75-12/TI b/font/devX75-12/TI
index dd79bd1d5..dd79bd1d5 100644
--- a/devX75-12/TI
+++ b/font/devX75-12/TI
diff --git a/devX75-12/TR b/font/devX75-12/TR
index da7c961a1..da7c961a1 100644
--- a/devX75-12/TR
+++ b/font/devX75-12/TR
diff --git a/devX75/CB b/font/devX75/CB
index 558313595..558313595 100644
--- a/devX75/CB
+++ b/font/devX75/CB
diff --git a/devX75/CBI b/font/devX75/CBI
index e6281f44b..e6281f44b 100644
--- a/devX75/CBI
+++ b/font/devX75/CBI
diff --git a/devX75/CI b/font/devX75/CI
index f19be187d..f19be187d 100644
--- a/devX75/CI
+++ b/font/devX75/CI
diff --git a/devX75/CR b/font/devX75/CR
index 8bb40b275..8bb40b275 100644
--- a/devX75/CR
+++ b/font/devX75/CR
diff --git a/devX75/DESC b/font/devX75/DESC
index 172170c9c..172170c9c 100644
--- a/devX75/DESC
+++ b/font/devX75/DESC
diff --git a/devX75/HB b/font/devX75/HB
index 26894e07f..26894e07f 100644
--- a/devX75/HB
+++ b/font/devX75/HB
diff --git a/devX75/HBI b/font/devX75/HBI
index 648800341..648800341 100644
--- a/devX75/HBI
+++ b/font/devX75/HBI
diff --git a/devX75/HI b/font/devX75/HI
index 07509511f..07509511f 100644
--- a/devX75/HI
+++ b/font/devX75/HI
diff --git a/devX75/HR b/font/devX75/HR
index aeac63ed2..aeac63ed2 100644
--- a/devX75/HR
+++ b/font/devX75/HR
diff --git a/devX75/Makefile.sub b/font/devX75/Makefile.sub
index 2a90fcab7..2a90fcab7 100644
--- a/devX75/Makefile.sub
+++ b/font/devX75/Makefile.sub
diff --git a/devX75/NB b/font/devX75/NB
index d783d02b7..d783d02b7 100644
--- a/devX75/NB
+++ b/font/devX75/NB
diff --git a/devX75/NBI b/font/devX75/NBI
index bdad10599..bdad10599 100644
--- a/devX75/NBI
+++ b/font/devX75/NBI
diff --git a/devX75/NI b/font/devX75/NI
index 20c2c4246..20c2c4246 100644
--- a/devX75/NI
+++ b/font/devX75/NI
diff --git a/devX75/NR b/font/devX75/NR
index aa05125e7..aa05125e7 100644
--- a/devX75/NR
+++ b/font/devX75/NR
diff --git a/devX75/S b/font/devX75/S
index b1cfbbf11..b1cfbbf11 100644
--- a/devX75/S
+++ b/font/devX75/S
diff --git a/devX75/TB b/font/devX75/TB
index 090771428..090771428 100644
--- a/devX75/TB
+++ b/font/devX75/TB
diff --git a/devX75/TBI b/font/devX75/TBI
index 37d92b0a7..37d92b0a7 100644
--- a/devX75/TBI
+++ b/font/devX75/TBI
diff --git a/devX75/TI b/font/devX75/TI
index daa858e2e..daa858e2e 100644
--- a/devX75/TI
+++ b/font/devX75/TI
diff --git a/devX75/TR b/font/devX75/TR
index c1ac847b4..c1ac847b4 100644
--- a/devX75/TR
+++ b/font/devX75/TR
diff --git a/devascii/DESC.proto b/font/devascii/DESC.proto
index 88399ab16..88399ab16 100644
--- a/devascii/DESC.proto
+++ b/font/devascii/DESC.proto
diff --git a/devascii/Makefile.sub b/font/devascii/Makefile.sub
index 238f7b742..238f7b742 100644
--- a/devascii/Makefile.sub
+++ b/font/devascii/Makefile.sub
diff --git a/devascii/R.proto b/font/devascii/R.proto
index 876c74c4a..876c74c4a 100644
--- a/devascii/R.proto
+++ b/font/devascii/R.proto
diff --git a/devdvi/B b/font/devdvi/B
index 240731a75..240731a75 100644..100755
--- a/devdvi/B
+++ b/font/devdvi/B
diff --git a/devdvi/BI b/font/devdvi/BI
index 16d0193c4..16d0193c4 100644..100755
--- a/devdvi/BI
+++ b/font/devdvi/BI
diff --git a/devdvi/CW b/font/devdvi/CW
index fd94235ce..fd94235ce 100644
--- a/devdvi/CW
+++ b/font/devdvi/CW
diff --git a/devdvi/DESC.in b/font/devdvi/DESC.in
index b605255d4..b605255d4 100644
--- a/devdvi/DESC.in
+++ b/font/devdvi/DESC.in
diff --git a/devdvi/EX b/font/devdvi/EX
index 6e83d02bd..6e83d02bd 100644
--- a/devdvi/EX
+++ b/font/devdvi/EX
diff --git a/devdvi/H b/font/devdvi/H
index 96ae0f5fe..96ae0f5fe 100644..100755
--- a/devdvi/H
+++ b/font/devdvi/H
diff --git a/devdvi/HB b/font/devdvi/HB
index aaff89681..aaff89681 100644
--- a/devdvi/HB
+++ b/font/devdvi/HB
diff --git a/devdvi/HI b/font/devdvi/HI
index dcfcced1a..dcfcced1a 100644
--- a/devdvi/HI
+++ b/font/devdvi/HI
diff --git a/devdvi/I b/font/devdvi/I
index a46501669..a46501669 100644..100755
--- a/devdvi/I
+++ b/font/devdvi/I
diff --git a/devdvi/MI b/font/devdvi/MI
index 2b2e3491b..2b2e3491b 100644
--- a/devdvi/MI
+++ b/font/devdvi/MI
diff --git a/devdvi/Makefile.sub b/font/devdvi/Makefile.sub
index 8c3248fdf..8c3248fdf 100644
--- a/devdvi/Makefile.sub
+++ b/font/devdvi/Makefile.sub
diff --git a/devdvi/R b/font/devdvi/R
index 3e49b938e..3e49b938e 100644..100755
--- a/devdvi/R
+++ b/font/devdvi/R
diff --git a/devdvi/S b/font/devdvi/S
index 11b79ff9c..11b79ff9c 100644
--- a/devdvi/S
+++ b/font/devdvi/S
diff --git a/devdvi/SA b/font/devdvi/SA
index f2b258f16..f2b258f16 100644
--- a/devdvi/SA
+++ b/font/devdvi/SA
diff --git a/devdvi/SB b/font/devdvi/SB
index a4be59db2..a4be59db2 100644
--- a/devdvi/SB
+++ b/font/devdvi/SB
diff --git a/devdvi/generate/CompileFonts b/font/devdvi/generate/CompileFonts
index 8859f8ea8..8859f8ea8 100755
--- a/devdvi/generate/CompileFonts
+++ b/font/devdvi/generate/CompileFonts
diff --git a/devdvi/generate/Makefile b/font/devdvi/generate/Makefile
index aeca9774f..aeca9774f 100644
--- a/devdvi/generate/Makefile
+++ b/font/devdvi/generate/Makefile
diff --git a/devdvi/generate/cork.map b/font/devdvi/generate/cork.map
index 52cac9c8b..52cac9c8b 100644..100755
--- a/devdvi/generate/cork.map
+++ b/font/devdvi/generate/cork.map
diff --git a/devdvi/generate/msam.map b/font/devdvi/generate/msam.map
index 90006c957..90006c957 100644
--- a/devdvi/generate/msam.map
+++ b/font/devdvi/generate/msam.map
diff --git a/devdvi/generate/msbm.map b/font/devdvi/generate/msbm.map
index 07ee095d4..07ee095d4 100644
--- a/devdvi/generate/msbm.map
+++ b/font/devdvi/generate/msbm.map
diff --git a/devdvi/generate/texb.map b/font/devdvi/generate/texb.map
index 67008339e..67008339e 100644
--- a/devdvi/generate/texb.map
+++ b/font/devdvi/generate/texb.map
diff --git a/devdvi/generate/texex.map b/font/devdvi/generate/texex.map
index a5b26901d..a5b26901d 100644
--- a/devdvi/generate/texex.map
+++ b/font/devdvi/generate/texex.map
diff --git a/devdvi/generate/texi.map b/font/devdvi/generate/texi.map
index 835c6421f..835c6421f 100644
--- a/devdvi/generate/texi.map
+++ b/font/devdvi/generate/texi.map
diff --git a/devdvi/generate/texmi.map b/font/devdvi/generate/texmi.map
index 6d01dc4cf..6d01dc4cf 100644
--- a/devdvi/generate/texmi.map
+++ b/font/devdvi/generate/texmi.map
diff --git a/devdvi/generate/texr.map b/font/devdvi/generate/texr.map
index bebf67b80..bebf67b80 100644
--- a/devdvi/generate/texr.map
+++ b/font/devdvi/generate/texr.map
diff --git a/devdvi/generate/texsy.map b/font/devdvi/generate/texsy.map
index 2c970bc2a..2c970bc2a 100644
--- a/devdvi/generate/texsy.map
+++ b/font/devdvi/generate/texsy.map
diff --git a/devdvi/generate/textt.map b/font/devdvi/generate/textt.map
index 1461d0abe..1461d0abe 100644
--- a/devdvi/generate/textt.map
+++ b/font/devdvi/generate/textt.map
diff --git a/font/devhtml/CB b/font/devhtml/CB
new file mode 100755
index 000000000..a1285e01a
--- /dev/null
+++ b/font/devhtml/CB
@@ -0,0 +1,306 @@
+name CB
+spacewidth 9
+charset
+--- 9,1 0 040
+! 9,9 0 041
+" 9,10 0 042 &quot;
+# 9,10,1 0 043
+sh "
+$ 9,11,1 0 044
+Do "
+% 9,10 0 045
+& 9,8 0 046 &amp;
+' 9,10 0 047
+( 9,9,2 0 050
+) 9,9,2 0 051
+* 9,9 0 052
++ 9,8 0 053
+, 9,2,2 0 054
+\- 9,5 0 055
+. 9,2 0 056
+/ 9,10,2 0 057
+sl "
+0 9,10 0 060
+1 9,10 0 061
+2 9,10 0 062
+3 9,10 0 063
+4 9,10 0 064
+5 9,10 0 065
+6 9,10 0 066
+7 9,10 0 067
+8 9,10 0 070
+9 9,10 0 071
+: 9,7 0 072
+; 9,7,2 0 073
+< 9,8 0 074 &lt;
+= 9,6 0 075
+eq "
+> 9,8 0 076 &gt;
+? 9,9 0 077
+@ 9,9 0 0100
+at "
+A 9,9 0 0101
+B 9,9 0 0102
+C 9,9 0 0103
+D 9,9 0 0104
+E 9,9 0 0105
+F 9,9 0 0106
+G 9,9 0 0107
+H 9,9 0 0110
+I 9,9 0 0111
+J 9,9 0 0112
+K 9,9 0 0113
+L 9,9 0 0114
+M 9,9 0 0115
+N 9,9 0 0116
+O 9,9 0 0117
+P 9,9 0 0120
+Q 9,9,2 0 0121
+R 9,9 0 0122
+S 9,9 0 0123
+T 9,9 0 0124
+U 9,9 0 0125
+V 9,9 0 0126
+W 9,9 0 0127
+X 9,9 0 0130
+Y 9,9 0 0131
+Z 9,9 0 0132
+[ 9,9,2 0 0133
+lB "
+\ 9,10,2 0 0134
+rs "
+] 9,9,2 0 0135
+rB "
+^ 9,9 0 0136
+a^ "
+ha "
+_ 9,0,2 0 0137
+` 9,10 0 0140
+oq "
+a 9,7 0 0141
+b 9,10 0 0142
+c 9,7 0 0143
+d 9,10 0 0144
+e 9,7 0 0145
+f 9,10 0 0146
+g 9,7,3 0 0147
+h 9,10 0 0150
+i 9,10 0 0151
+j 9,10,3 0 0152
+k 9,10 0 0153
+l 9,10 0 0154
+m 9,7 0 0155
+n 9,7 0 0156
+o 9,7 0 0157
+p 9,7,3 0 0160
+q 9,7,3 0 0161
+r 9,7 0 0162
+s 9,7 0 0163
+t 9,9 0 0164
+u 9,7 0 0165
+v 9,7 0 0166
+w 9,7 0 0167
+x 9,7 0 0170
+y 9,7,3 0 0171
+z 9,7 0 0172
+{ 9,9,2 0 0173
+lC "
+| 9,9,2 0 0174
+or "
+ba "
+} 9,9,2 0 0175
+rC "
+~ 9,6 0 0176
+a~ "
+ap "
+ti "
+r! 9,7,2 0 0241 &iexcl;
+¡ "
+ct 9,9,1 0 0242 &cent;
+¢ "
+Po 9,9 0 0243 &pound;
+£ "
+Cs 9,7 0 0244 &curren;
+¤ "
+Ye 9,9 0 0245 &yen;
+¥ "
+bb 9,9,2 0 0246 &brvbar;
+¦ "
+sc 9,10,1 0 0247 &sect;
+§ "
+ad 9,10 0 0250 &uml;
+¨ "
+co 9,9 0 0251 &copy;
+© "
+Of 9,9 0 0252 &ordf;
+ª "
+Fo 9,6 0 0253 &laquo;
+« "
+no 9,5 0 0254 &not;
+¬ "
+- 9,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 9,9 0 0256 &reg;
+® "
+a- 9,9 0 0257 &macr;
+¯ "
+de 9,9 0 0260 &deg;
+° "
++- 9,8 0 0261 &plusmn;
+± "
+S2 9,10 0 0262 &sup2;
+² "
+S3 9,10 0 0263 &sup3;
+³ "
+aa 9,9 0 0264 &acute;
+´ "
+µ 9,7,3 0 0265 &micro;
+ps 9,10,1 0 0266 &para;
+¶ "
+md 9,5 0 0267 &middot;
+· "
+ac 9,1,3 0 0270 &cedil;
+¸ "
+S1 9,10 0 0271 &sup1;
+¹ "
+Om 9,9 0 0272 &ordm;
+º "
+Fc 9,6 0 0273 &raquo;
+» "
+14 9,10 0 0274 &frac14;
+¼ "
+12 9,10 0 0275 &frac12;
+½ "
+34 9,10 0 0276 &frac34;
+¾ "
+r? 9,7,2 0 0277 &iquest;
+¿ "
+`A 9,12 0 0300 &Agrave;
+À "
+'A 9,12 0 0301 &Aacute;
+Á "
+^A 9,12 0 0302 &Acirc;
+Â "
+~A 9,12 0 0303 &Atilde;
+Ã "
+:A 9,12 0 0304 &Auml;
+Ä "
+oA 9,12 0 0305 &Aring;
+Å "
+AE 9,9 0 0306 &AElig;
+Æ "
+,C 9,9,4 0 0307 &Ccedil;
+Ç "
+`E 9,12 0 0310 &Egrave;
+È "
+'E 9,12 0 0311 &Eacute;
+É "
+^E 9,12 0 0312 &Ecirc;
+Ê "
+:E 9,12 0 0313 &Euml;
+Ë "
+`I 9,12 0 0314 &Igrave;
+Ì "
+'I 9,12 0 0315 &Iacute;
+Í "
+^I 9,12 0 0316 &Icirc;
+Î "
+:I 9,12 0 0317 &Iuml;
+Ï "
+-D 9,9 0 0320 &ETH;
+Ð "
+~N 9,12 0 0321 &Ntilde;
+Ñ "
+`O 9,12 0 0322 &Ograve;
+Ò "
+'O 9,12 0 0323 &Oacute;
+Ó "
+^O 9,12 0 0324 &Ocirc;
+Ô "
+~O 9,12 0 0325 &Otilde;
+Õ "
+:O 9,12 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 9,10 0 0330 &Oslash;
+Ø "
+`U 9,12 0 0331 &Ugrave;
+Ù "
+'U 9,12 0 0332 &Uacute;
+Ú "
+^U 9,12 0 0333 &Ucirc;
+Û "
+:U 9,12 0 0334 &Uuml;
+Ü "
+'Y 9,12 0 0335 &Yacute;
+Ý "
+TP 9,9 0 0336 &THORN;
+Þ "
+ss 9,9 0 0337 &szlig;
+ß "
+`a 9,10 0 0340 &agrave;
+à "
+'a 9,10 0 0341 &aacute;
+á "
+^a 9,10 0 0342 &acirc;
+â "
+~a 9,10 0 0343 &atilde;
+ã "
+:a 9,10 0 0344 &auml;
+ä "
+oa 9,10 0 0345 &aring;
+å "
+ae 9,7 0 0346 &aelig;
+æ "
+,c 9,7,4 0 0347 &ccedil;
+ç "
+`e 9,10 0 0350 &egrave;
+è "
+'e 9,10 0 0351 &eacute;
+é "
+^e 9,10 0 0352 &ecirc;
+ê "
+:e 9,10 0 0353 &euml;
+ë "
+`i 9,10 0 0354 &igrave;
+ì "
+'i 9,10 0 0355 &iacute;
+í "
+^i 9,10 0 0356 &icirc;
+î "
+:i 9,10 0 0357 &iuml;
+ï "
+Sd 9,10 0 0360 &eth;
+ð "
+~n 9,10 0 0361 &ntilde;
+ñ "
+`o 9,10 0 0362 &ograve;
+ò "
+'o 9,10 0 0363 &oacute;
+ó "
+^o 9,10 0 0364 &ocirc;
+ô "
+~o 9,10 0 0365 &otilde;
+õ "
+:o 9,10 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 9,7 0 0370 &oslash;
+ø "
+`u 9,10 0 0371 &ugrave;
+ù "
+'u 9,10 0 0372 &uacute;
+ú "
+^u 9,10 0 0373 &ucirc;
+û "
+:u 9,10 0 0374 &uuml;
+ü "
+'y 9,10,3 0 0375 &yacute;
+ý "
+Tp 9,9,3 0 0376 &thorn;
+þ "
+:y 9,10,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/CBI b/font/devhtml/CBI
new file mode 100755
index 000000000..971039339
--- /dev/null
+++ b/font/devhtml/CBI
@@ -0,0 +1,306 @@
+name CBI
+spacewidth 9
+charset
+--- 9,1 0 040
+! 9,10 0 041
+" 9,9 0 042 &quot;
+# 9,11,1 0 043
+sh "
+$ 9,11,1 0 044
+Do "
+% 9,10 0 045
+& 9,8 0 046 &amp;
+' 9,9 0 047
+( 9,9,2 0 050
+) 9,9,2 0 051
+* 9,10 0 052
++ 9,8 0 053
+, 9,2,2 0 054
+\- 9,5 0 055
+. 9,2 0 056
+/ 9,10,2 0 057
+sl "
+0 9,10 0 060
+1 9,10 0 061
+2 9,10 0 062
+3 9,10 0 063
+4 9,10 0 064
+5 9,10 0 065
+6 9,10 0 066
+7 9,10 0 067
+8 9,10 0 070
+9 9,10 0 071
+: 9,7 0 072
+; 9,7,2 0 073
+< 9,8 0 074 &lt;
+= 9,6 0 075
+eq "
+> 9,8 0 076 &gt;
+? 9,9 0 077
+@ 9,9 0 0100
+at "
+A 9,9 0 0101
+B 9,9 0 0102
+C 9,9 0 0103
+D 9,9 0 0104
+E 9,9 0 0105
+F 9,9 0 0106
+G 9,9 0 0107
+H 9,9 0 0110
+I 9,9 0 0111
+J 9,9 0 0112
+K 9,9 0 0113
+L 9,9 0 0114
+M 9,9 0 0115
+N 9,9 0 0116
+O 9,9 0 0117
+P 9,9 0 0120
+Q 9,9,2 0 0121
+R 9,9 0 0122
+S 9,9 0 0123
+T 9,9 0 0124
+U 9,9 0 0125
+V 9,9 0 0126
+W 9,9 0 0127
+X 9,9 0 0130
+Y 9,9 0 0131
+Z 9,9 0 0132
+[ 9,9,2 0 0133
+lB "
+\ 9,10,2 0 0134
+rs "
+] 9,9,2 0 0135
+rB "
+^ 9,9 0 0136
+a^ "
+ha "
+_ 9,0,3 0 0137
+` 9,9 0 0140
+oq "
+a 9,7 0 0141
+b 9,10 0 0142
+c 9,7 0 0143
+d 9,10 0 0144
+e 9,7 0 0145
+f 9,10 0 0146
+g 9,7,3 0 0147
+h 9,10 0 0150
+i 9,10 0 0151
+j 9,10,3 0 0152
+k 9,10 0 0153
+l 9,10 0 0154
+m 9,7 0 0155
+n 9,7 0 0156
+o 9,7 0 0157
+p 9,7,3 0 0160
+q 9,7,3 0 0161
+r 9,7 0 0162
+s 9,7 0 0163
+t 9,9 0 0164
+u 9,7 0 0165
+v 9,7 0 0166
+w 9,7 0 0167
+x 9,7 0 0170
+y 9,7,3 0 0171
+z 9,7 0 0172
+{ 9,9,2 0 0173
+lC "
+| 9,9,2 0 0174
+or "
+ba "
+} 9,9,2 0 0175
+rC "
+~ 9,6 0 0176
+a~ "
+ap "
+ti "
+r! 9,7,3 0 0241 &iexcl;
+¡ "
+ct 9,9,1 0 0242 &cent;
+¢ "
+Po 9,9 0 0243 &pound;
+£ "
+Cs 9,7 0 0244 &curren;
+¤ "
+Ye 9,9 0 0245 &yen;
+¥ "
+bb 9,10,2 0 0246 &brvbar;
+¦ "
+sc 9,10,1 0 0247 &sect;
+§ "
+ad 9,10 0 0250 &uml;
+¨ "
+co 9,9 0 0251 &copy;
+© "
+Of 9,9 0 0252 &ordf;
+ª "
+Fo 9,6 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 9,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 9,9 0 0256 &reg;
+® "
+a- 9,9 0 0257 &macr;
+¯ "
+de 9,10 0 0260 &deg;
+° "
++- 9,8 0 0261 &plusmn;
+± "
+S2 9,10 0 0262 &sup2;
+² "
+S3 9,10 0 0263 &sup3;
+³ "
+aa 9,10 0 0264 &acute;
+´ "
+µ 9,7,3 0 0265 &micro;
+ps 9,10,1 0 0266 &para;
+¶ "
+md 9,5 0 0267 &middot;
+· "
+ac 9,1,3 0 0270 &cedil;
+¸ "
+S1 9,10 0 0271 &sup1;
+¹ "
+Om 9,9 0 0272 &ordm;
+º "
+Fc 9,6 0 0273 &raquo;
+» "
+14 9,10 0 0274 &frac14;
+¼ "
+12 9,10 0 0275 &frac12;
+½ "
+34 9,10 0 0276 &frac34;
+¾ "
+r? 9,7,2 0 0277 &iquest;
+¿ "
+`A 9,12 0 0300 &Agrave;
+À "
+'A 9,12 0 0301 &Aacute;
+Á "
+^A 9,12 0 0302 &Acirc;
+Â "
+~A 9,12 0 0303 &Atilde;
+Ã "
+:A 9,12 0 0304 &Auml;
+Ä "
+oA 9,12 0 0305 &Aring;
+Å "
+AE 9,9 0 0306 &AElig;
+Æ "
+,C 9,9,4 0 0307 &Ccedil;
+Ç "
+`E 9,12 0 0310 &Egrave;
+È "
+'E 9,12 0 0311 &Eacute;
+É "
+^E 9,12 0 0312 &Ecirc;
+Ê "
+:E 9,12 0 0313 &Euml;
+Ë "
+`I 9,12 0 0314 &Igrave;
+Ì "
+'I 9,12 0 0315 &Iacute;
+Í "
+^I 9,12 0 0316 &Icirc;
+Î "
+:I 9,12 0 0317 &Iuml;
+Ï "
+-D 9,9 0 0320 &ETH;
+Ð "
+~N 9,12 0 0321 &Ntilde;
+Ñ "
+`O 9,12 0 0322 &Ograve;
+Ò "
+'O 9,12 0 0323 &Oacute;
+Ó "
+^O 9,12 0 0324 &Ocirc;
+Ô "
+~O 9,12 0 0325 &Otilde;
+Õ "
+:O 9,12 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 9,9 0 0330 &Oslash;
+Ø "
+`U 9,12 0 0331 &Ugrave;
+Ù "
+'U 9,12 0 0332 &Uacute;
+Ú "
+^U 9,12 0 0333 &Ucirc;
+Û "
+:U 9,12 0 0334 &Uuml;
+Ü "
+'Y 9,12 0 0335 &Yacute;
+Ý "
+TP 9,9 0 0336 &THORN;
+Þ "
+ss 9,9 0 0337 &szlig;
+ß "
+`a 9,10 0 0340 &agrave;
+à "
+'a 9,10 0 0341 &aacute;
+á "
+^a 9,10 0 0342 &acirc;
+â "
+~a 9,10 0 0343 &atilde;
+ã "
+:a 9,10 0 0344 &auml;
+ä "
+oa 9,10 0 0345 &aring;
+å "
+ae 9,7 0 0346 &aelig;
+æ "
+,c 9,7,4 0 0347 &ccedil;
+ç "
+`e 9,10 0 0350 &egrave;
+è "
+'e 9,10 0 0351 &eacute;
+é "
+^e 9,10 0 0352 &ecirc;
+ê "
+:e 9,10 0 0353 &euml;
+ë "
+`i 9,10 0 0354 &igrave;
+ì "
+'i 9,10 0 0355 &iacute;
+í "
+^i 9,10 0 0356 &icirc;
+î "
+:i 9,10 0 0357 &iuml;
+ï "
+Sd 9,10 0 0360 &eth;
+ð "
+~n 9,10 0 0361 &ntilde;
+ñ "
+`o 9,10 0 0362 &ograve;
+ò "
+'o 9,10 0 0363 &oacute;
+ó "
+^o 9,10 0 0364 &ocirc;
+ô "
+~o 9,10 0 0365 &otilde;
+õ "
+:o 9,10 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 9,8 0 0370 &oslash;
+ø "
+`u 9,10 0 0371 &ugrave;
+ù "
+'u 9,10 0 0372 &uacute;
+ú "
+^u 9,10 0 0373 &ucirc;
+û "
+:u 9,10 0 0374 &uuml;
+ü "
+'y 9,10,3 0 0375 &yacute;
+ý "
+Tp 9,9,3 0 0376 &thorn;
+þ "
+:y 9,10,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/CI b/font/devhtml/CI
new file mode 100755
index 000000000..e1ca215ed
--- /dev/null
+++ b/font/devhtml/CI
@@ -0,0 +1,306 @@
+name CI
+spacewidth 9
+charset
+--- 9,1 0 040
+! 9,9 0 041
+" 9,10 0 042 &quot;
+# 9,10,1 0 043
+sh "
+$ 9,10,1 0 044
+Do "
+% 9,10 0 045
+& 9,8 0 046 &amp;
+' 9,10 0 047
+( 9,10,3 0 050
+) 9,10,3 0 051
+* 9,9 0 052
++ 9,8 0 053
+, 9,2,2 0 054
+\- 9,5 0 055
+. 9,2 0 056
+/ 9,10,2 0 057
+sl "
+0 9,10 0 060
+1 9,10 0 061
+2 9,10 0 062
+3 9,10 0 063
+4 9,10 0 064
+5 9,10 0 065
+6 9,10 0 066
+7 9,10 0 067
+8 9,10 0 070
+9 9,10 0 071
+: 9,7 0 072
+; 9,7,2 0 073
+< 9,8 0 074 &lt;
+= 9,6 0 075
+eq "
+> 9,8 0 076 &gt;
+? 9,9 0 077
+@ 9,9 0 0100
+at "
+A 9,9 0 0101
+B 9,9 0 0102
+C 9,9 0 0103
+D 9,9 0 0104
+E 9,9 0 0105
+F 9,9 0 0106
+G 9,9 0 0107
+H 9,9 0 0110
+I 9,9 0 0111
+J 9,9 0 0112
+K 9,9 0 0113
+L 9,9 0 0114
+M 9,9 0 0115
+N 9,9 0 0116
+O 9,9 0 0117
+P 9,9 0 0120
+Q 9,9,2 0 0121
+R 9,9 0 0122
+S 9,9 0 0123
+T 9,9 0 0124
+U 9,9 0 0125
+V 9,9 0 0126
+W 9,9 0 0127
+X 9,9 0 0130
+Y 9,9 0 0131
+Z 9,9 0 0132
+[ 9,10,3 0 0133
+lB "
+\ 9,10,2 0 0134
+rs "
+] 9,10,3 0 0135
+rB "
+^ 9,9 0 0136
+a^ "
+ha "
+_ 9,0,3 0 0137
+` 9,10 0 0140
+oq "
+a 9,7 0 0141
+b 9,10 0 0142
+c 9,7 0 0143
+d 9,10 0 0144
+e 9,7 0 0145
+f 9,10 0 0146
+g 9,7,3 0 0147
+h 9,10 0 0150
+i 9,10 0 0151
+j 9,10,3 0 0152
+k 9,10 0 0153
+l 9,10 0 0154
+m 9,7 0 0155
+n 9,7 0 0156
+o 9,7 0 0157
+p 9,7,3 0 0160
+q 9,7,3 0 0161
+r 9,7 0 0162
+s 9,7 0 0163
+t 9,9 0 0164
+u 9,7 0 0165
+v 9,7 0 0166
+w 9,7 0 0167
+x 9,7 0 0170
+y 9,7,3 0 0171
+z 9,7 0 0172
+{ 9,10,3 0 0173
+lC "
+| 9,9,2 0 0174
+or "
+ba "
+} 9,10,3 0 0175
+rC "
+~ 9,5 0 0176
+a~ "
+ap "
+ti "
+r! 9,7,2 0 0241 &iexcl;
+¡ "
+ct 9,10 0 0242 &cent;
+¢ "
+Po 9,9 0 0243 &pound;
+£ "
+Cs 9,7 0 0244 &curren;
+¤ "
+Ye 9,9 0 0245 &yen;
+¥ "
+bb 9,9,2 0 0246 &brvbar;
+¦ "
+sc 9,9,1 0 0247 &sect;
+§ "
+ad 9,9 0 0250 &uml;
+¨ "
+co 9,9 0 0251 &copy;
+© "
+Of 9,9 0 0252 &ordf;
+ª "
+Fo 9,7 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 9,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 9,9 0 0256 &reg;
+® "
+a- 9,9 0 0257 &macr;
+¯ "
+de 9,10 0 0260 &deg;
+° "
++- 9,8 0 0261 &plusmn;
+± "
+S2 9,10 0 0262 &sup2;
+² "
+S3 9,10 0 0263 &sup3;
+³ "
+aa 9,9 0 0264 &acute;
+´ "
+µ 9,7,3 0 0265 &micro;
+ps 9,9,1 0 0266 &para;
+¶ "
+md 9,5 0 0267 &middot;
+· "
+ac 9,1,3 0 0270 &cedil;
+¸ "
+S1 9,10 0 0271 &sup1;
+¹ "
+Om 9,9 0 0272 &ordm;
+º "
+Fc 9,7 0 0273 &raquo;
+» "
+14 9,10 0 0274 &frac14;
+¼ "
+12 9,10 0 0275 &frac12;
+½ "
+34 9,10 0 0276 &frac34;
+¾ "
+r? 9,7,2 0 0277 &iquest;
+¿ "
+`A 9,12 0 0300 &Agrave;
+À "
+'A 9,12 0 0301 &Aacute;
+Á "
+^A 9,12 0 0302 &Acirc;
+Â "
+~A 9,12 0 0303 &Atilde;
+Ã "
+:A 9,11 0 0304 &Auml;
+Ä "
+oA 9,12 0 0305 &Aring;
+Å "
+AE 9,9 0 0306 &AElig;
+Æ "
+,C 9,9,3 0 0307 &Ccedil;
+Ç "
+`E 9,12 0 0310 &Egrave;
+È "
+'E 9,12 0 0311 &Eacute;
+É "
+^E 9,12 0 0312 &Ecirc;
+Ê "
+:E 9,11 0 0313 &Euml;
+Ë "
+`I 9,12 0 0314 &Igrave;
+Ì "
+'I 9,12 0 0315 &Iacute;
+Í "
+^I 9,12 0 0316 &Icirc;
+Î "
+:I 9,11 0 0317 &Iuml;
+Ï "
+-D 9,9 0 0320 &ETH;
+Ð "
+~N 9,12 0 0321 &Ntilde;
+Ñ "
+`O 9,12 0 0322 &Ograve;
+Ò "
+'O 9,12 0 0323 &Oacute;
+Ó "
+^O 9,12 0 0324 &Ocirc;
+Ô "
+~O 9,12 0 0325 &Otilde;
+Õ "
+:O 9,11 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 9,9 0 0330 &Oslash;
+Ø "
+`U 9,12 0 0331 &Ugrave;
+Ù "
+'U 9,12 0 0332 &Uacute;
+Ú "
+^U 9,12 0 0333 &Ucirc;
+Û "
+:U 9,11 0 0334 &Uuml;
+Ü "
+'Y 9,12 0 0335 &Yacute;
+Ý "
+TP 9,9 0 0336 &THORN;
+Þ "
+ss 9,9 0 0337 &szlig;
+ß "
+`a 9,10 0 0340 &agrave;
+à "
+'a 9,10 0 0341 &aacute;
+á "
+^a 9,10 0 0342 &acirc;
+â "
+~a 9,10 0 0343 &atilde;
+ã "
+:a 9,9 0 0344 &auml;
+ä "
+oa 9,11 0 0345 &aring;
+å "
+ae 9,7 0 0346 &aelig;
+æ "
+,c 9,7,3 0 0347 &ccedil;
+ç "
+`e 9,10 0 0350 &egrave;
+è "
+'e 9,10 0 0351 &eacute;
+é "
+^e 9,10 0 0352 &ecirc;
+ê "
+:e 9,9 0 0353 &euml;
+ë "
+`i 9,10 0 0354 &igrave;
+ì "
+'i 9,10 0 0355 &iacute;
+í "
+^i 9,10 0 0356 &icirc;
+î "
+:i 9,9 0 0357 &iuml;
+ï "
+Sd 9,10 0 0360 &eth;
+ð "
+~n 9,10 0 0361 &ntilde;
+ñ "
+`o 9,10 0 0362 &ograve;
+ò "
+'o 9,10 0 0363 &oacute;
+ó "
+^o 9,10 0 0364 &ocirc;
+ô "
+~o 9,10 0 0365 &otilde;
+õ "
+:o 9,9 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 9,7 0 0370 &oslash;
+ø "
+`u 9,10 0 0371 &ugrave;
+ù "
+'u 9,10 0 0372 &uacute;
+ú "
+^u 9,10 0 0373 &ucirc;
+û "
+:u 9,9 0 0374 &uuml;
+ü "
+'y 9,10,3 0 0375 &yacute;
+ý "
+Tp 9,9,3 0 0376 &thorn;
+þ "
+:y 9,9,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/CR b/font/devhtml/CR
new file mode 100755
index 000000000..44f52c12c
--- /dev/null
+++ b/font/devhtml/CR
@@ -0,0 +1,306 @@
+name CR
+spacewidth 9
+charset
+--- 9,1 0 040
+! 9,9 0 041
+" 9,10 0 042 &quot;
+# 9,9,1 0 043
+sh "
+$ 9,11,2 0 044
+Do "
+% 9,10 0 045
+& 9,8 0 046 &amp;
+' 9,10 0 047
+( 9,10,2 0 050
+) 9,10,2 0 051
+* 9,9 0 052
++ 9,8 0 053
+, 9,2,2 0 054
+\- 9,5 0 055
+. 9,2 0 056
+/ 9,10,1 0 057
+sl "
+0 9,10 0 060
+1 9,10 0 061
+2 9,10 0 062
+3 9,10 0 063
+4 9,10 0 064
+5 9,10 0 065
+6 9,10 0 066
+7 9,10 0 067
+8 9,10 0 070
+9 9,10 0 071
+: 9,7 0 072
+; 9,7,2 0 073
+< 9,8 0 074 &lt;
+= 9,6 0 075
+eq "
+> 9,8 0 076 &gt;
+? 9,9 0 077
+@ 9,9,1 0 0100
+at "
+A 9,9 0 0101
+B 9,9 0 0102
+C 9,9 0 0103
+D 9,9 0 0104
+E 9,9 0 0105
+F 9,9 0 0106
+G 9,9 0 0107
+H 9,9 0 0110
+I 9,9 0 0111
+J 9,9 0 0112
+K 9,9 0 0113
+L 9,9 0 0114
+M 9,9 0 0115
+N 9,9 0 0116
+O 9,9 0 0117
+P 9,9 0 0120
+Q 9,9,2 0 0121
+R 9,9 0 0122
+S 9,9 0 0123
+T 9,9 0 0124
+U 9,9 0 0125
+V 9,9 0 0126
+W 9,9 0 0127
+X 9,9 0 0130
+Y 9,9 0 0131
+Z 9,9 0 0132
+[ 9,10,2 0 0133
+lB "
+\ 9,10,1 0 0134
+rs "
+] 9,10,2 0 0135
+rB "
+^ 9,9 0 0136
+a^ "
+ha "
+_ 9,0,3 0 0137
+` 9,10 0 0140
+oq "
+a 9,7 0 0141
+b 9,10 0 0142
+c 9,7 0 0143
+d 9,10 0 0144
+e 9,7 0 0145
+f 9,10 0 0146
+g 9,7,3 0 0147
+h 9,10 0 0150
+i 9,10 0 0151
+j 9,10,3 0 0152
+k 9,10 0 0153
+l 9,10 0 0154
+m 9,7 0 0155
+n 9,7 0 0156
+o 9,7 0 0157
+p 9,7,3 0 0160
+q 9,7,3 0 0161
+r 9,7 0 0162
+s 9,7 0 0163
+t 9,9 0 0164
+u 9,7 0 0165
+v 9,7 0 0166
+w 9,7 0 0167
+x 9,7 0 0170
+y 9,7,3 0 0171
+z 9,7 0 0172
+{ 9,10,2 0 0173
+lC "
+| 9,9,2 0 0174
+or "
+ba "
+} 9,10,2 0 0175
+rC "
+~ 9,5 0 0176
+a~ "
+ap "
+ti "
+r! 9,7,2 0 0241 &iexcl;
+¡ "
+ct 9,9 0 0242 &cent;
+¢ "
+Po 9,9 0 0243 &pound;
+£ "
+Cs 9,7 0 0244 &curren;
+¤ "
+Ye 9,9 0 0245 &yen;
+¥ "
+bb 9,9,2 0 0246 &brvbar;
+¦ "
+sc 9,9,1 0 0247 &sect;
+§ "
+ad 9,9 0 0250 &uml;
+¨ "
+co 9,9 0 0251 &copy;
+© "
+Of 9,9 0 0252 &ordf;
+ª "
+Fo 9,7 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 9,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 9,9 0 0256 &reg;
+® "
+a- 9,9 0 0257 &macr;
+¯ "
+de 9,10 0 0260 &deg;
+° "
++- 9,8 0 0261 &plusmn;
+± "
+S2 9,10 0 0262 &sup2;
+² "
+S3 9,10 0 0263 &sup3;
+³ "
+aa 9,10 0 0264 &acute;
+´ "
+µ 9,7,3 0 0265 &micro;
+ps 9,9,1 0 0266 &para;
+¶ "
+md 9,5 0 0267 &middot;
+· "
+ac 9,0,3 0 0270 &cedil;
+¸ "
+S1 9,10 0 0271 &sup1;
+¹ "
+Om 9,9 0 0272 &ordm;
+º "
+Fc 9,7 0 0273 &raquo;
+» "
+14 9,10 0 0274 &frac14;
+¼ "
+12 9,10 0 0275 &frac12;
+½ "
+34 9,10 0 0276 &frac34;
+¾ "
+r? 9,7,2 0 0277 &iquest;
+¿ "
+`A 9,12 0 0300 &Agrave;
+À "
+'A 9,12 0 0301 &Aacute;
+Á "
+^A 9,12 0 0302 &Acirc;
+Â "
+~A 9,12 0 0303 &Atilde;
+Ã "
+:A 9,11 0 0304 &Auml;
+Ä "
+oA 9,12 0 0305 &Aring;
+Å "
+AE 9,9 0 0306 &AElig;
+Æ "
+,C 9,9,3 0 0307 &Ccedil;
+Ç "
+`E 9,12 0 0310 &Egrave;
+È "
+'E 9,12 0 0311 &Eacute;
+É "
+^E 9,12 0 0312 &Ecirc;
+Ê "
+:E 9,11 0 0313 &Euml;
+Ë "
+`I 9,12 0 0314 &Igrave;
+Ì "
+'I 9,12 0 0315 &Iacute;
+Í "
+^I 9,12 0 0316 &Icirc;
+Î "
+:I 9,11 0 0317 &Iuml;
+Ï "
+-D 9,9 0 0320 &ETH;
+Ð "
+~N 9,12 0 0321 &Ntilde;
+Ñ "
+`O 9,12 0 0322 &Ograve;
+Ò "
+'O 9,12 0 0323 &Oacute;
+Ó "
+^O 9,12 0 0324 &Ocirc;
+Ô "
+~O 9,12 0 0325 &Otilde;
+Õ "
+:O 9,11 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 9,9 0 0330 &Oslash;
+Ø "
+`U 9,12 0 0331 &Ugrave;
+Ù "
+'U 9,12 0 0332 &Uacute;
+Ú "
+^U 9,12 0 0333 &Ucirc;
+Û "
+:U 9,11 0 0334 &Uuml;
+Ü "
+'Y 9,12 0 0335 &Yacute;
+Ý "
+TP 9,9 0 0336 &THORN;
+Þ "
+ss 9,9 0 0337 &szlig;
+ß "
+`a 9,10 0 0340 &agrave;
+à "
+'a 9,10 0 0341 &aacute;
+á "
+^a 9,10 0 0342 &acirc;
+â "
+~a 9,10 0 0343 &atilde;
+ã "
+:a 9,9 0 0344 &auml;
+ä "
+oa 9,10 0 0345 &aring;
+å "
+ae 9,7 0 0346 &aelig;
+æ "
+,c 9,7,3 0 0347 &ccedil;
+ç "
+`e 9,10 0 0350 &egrave;
+è "
+'e 9,10 0 0351 &eacute;
+é "
+^e 9,10 0 0352 &ecirc;
+ê "
+:e 9,9 0 0353 &euml;
+ë "
+`i 9,10 0 0354 &igrave;
+ì "
+'i 9,10 0 0355 &iacute;
+í "
+^i 9,10 0 0356 &icirc;
+î "
+:i 9,9 0 0357 &iuml;
+ï "
+Sd 9,12 0 0360 &eth;
+ð "
+~n 9,10 0 0361 &ntilde;
+ñ "
+`o 9,10 0 0362 &ograve;
+ò "
+'o 9,10 0 0363 &oacute;
+ó "
+^o 9,10 0 0364 &ocirc;
+ô "
+~o 9,10 0 0365 &otilde;
+õ "
+:o 9,9 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 9,7 0 0370 &oslash;
+ø "
+`u 9,10 0 0371 &ugrave;
+ù "
+'u 9,10 0 0372 &uacute;
+ú "
+^u 9,10 0 0373 &ucirc;
+û "
+:u 9,9 0 0374 &uuml;
+ü "
+'y 9,10,3 0 0375 &yacute;
+ý "
+Tp 9,9,3 0 0376 &thorn;
+þ "
+:y 9,9,3 0 0377 &yuml;
+ÿ "
diff --git a/devhtml/DESC b/font/devhtml/DESC
index dcab7cd4a..a89775265 100644..100755
--- a/devhtml/DESC
+++ b/font/devhtml/DESC
@@ -8,3 +8,5 @@ hor 1
vert 1
unitwidth 10
postpro grohtml
+use_charnames_in_special
+pass_filenames
diff --git a/font/devhtml/HB b/font/devhtml/HB
new file mode 100755
index 000000000..fc8b02046
--- /dev/null
+++ b/font/devhtml/HB
@@ -0,0 +1,306 @@
+name HB
+spacewidth 4
+charset
+--- 4,1 0 040
+! 4,11 0 041
+" 7,11 0 042 &quot;
+# 9,10 0 043
+sh "
+$ 8,12,2 0 044
+Do "
+% 13,11 0 045
+& 11,10 0 046 &amp;
+' 5,11 0 047
+( 5,11,3 0 050
+) 5,11,3 0 051
+* 6,11 0 052
++ 9,8 0 053
+, 4,2,1 0 054
+\- 9,5 0 055
+. 4,2 0 056
+/ 4,11 0 057
+sl "
+0 8,11 0 060
+1 8,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 5,8 0 072
+; 5,8,1 0 073
+< 8,7 0 074 &lt;
+= 9,6 0 075
+eq "
+> 8,7 0 076 &gt;
+? 9,11 0 077
+@ 14,11,1 0 0100
+at "
+A 10,11 0 0101
+B 10,11 0 0102
+C 11,11 0 0103
+D 11,11 0 0104
+E 9,11 0 0105
+F 9,11 0 0106
+G 11,11 0 0107
+H 10,11 0 0110
+I 4,11 0 0111
+J 8,11 0 0112
+K 10,11 0 0113
+L 8,11 0 0114
+M 13,11 0 0115
+N 11,11 0 0116
+O 12,11 0 0117
+P 10,11 0 0120
+Q 12,11 0 0121
+R 11,11 0 0122
+S 10,11 0 0123
+T 8,11 0 0124
+U 11,11 0 0125
+V 10,11 0 0126
+W 14,11 0 0127
+X 9,11 0 0130
+Y 10,11 0 0131
+Z 9,11 0 0132
+[ 5,11,3 0 0133
+lB "
+\ 4,11 0 0134
+rs "
+] 5,11,3 0 0135
+rB "
+^ 8,11 0 0136
+a^ "
+ha "
+_ 8,0,3 0 0137
+` 5,11 0 0140
+oq "
+a 8,8 0 0141
+b 9,11 0 0142
+c 8,8 0 0143
+d 9,11 0 0144
+e 8,8 0 0145
+f 4,11 0 0146
+g 9,8,3 0 0147
+h 9,11 0 0150
+i 4,11 0 0151
+j 4,11,3 0 0152
+k 8,11 0 0153
+l 4,11 0 0154
+m 12,8 0 0155
+n 9,8 0 0156
+o 9,8 0 0157
+p 9,8,3 0 0160
+q 9,8,3 0 0161
+r 6,8 0 0162
+s 8,8 0 0163
+t 5,10 0 0164
+u 9,8 0 0165
+v 8,8 0 0166
+w 10,8 0 0167
+x 7,8 0 0170
+y 8,8,3 0 0171
+z 6,8 0 0172
+{ 6,11,3 0 0173
+lC "
+| 4,11,3 0 0174
+or "
+ba "
+} 6,11,3 0 0175
+rC "
+~ 9,6 0 0176
+a~ "
+ap "
+ti "
+r! 4,8,3 0 0241 &iexcl;
+¡ "
+ct 8,9,1 0 0242 &cent;
+¢ "
+Po 8,11 0 0243 &pound;
+£ "
+Cs 8,9 0 0244 &curren;
+¤ "
+Ye 9,11 0 0245 &yen;
+¥ "
+bb 4,11,3 0 0246 &brvbar;
+¦ "
+sc 8,11,3 0 0247 &sect;
+§ "
+ad 5,11 0 0250 &uml;
+¨ "
+co 12,11 0 0251 &copy;
+© "
+Of 6,11 0 0252 &ordf;
+ª "
+Fo 9,7 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 4,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,11 0 0256 &reg;
+® "
+a- 5,10 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 9,9 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 5,11 0 0264 &acute;
+´ "
+µ 9,8,3 0 0265 &micro;
+ps 8,11,3 0 0266 &para;
+¶ "
+md 4,5 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 4,11 0 0271 &sup1;
+¹ "
+Om 6,11 0 0272 &ordm;
+º "
+Fc 9,7 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 12,11 0 0276 &frac34;
+¾ "
+r? 9,8,3 0 0277 &iquest;
+¿ "
+`A 10,14 0 0300 &Agrave;
+À "
+'A 10,14 0 0301 &Aacute;
+Á "
+^A 10,14 0 0302 &Acirc;
+Â "
+~A 10,14 0 0303 &Atilde;
+Ã "
+:A 10,14 0 0304 &Auml;
+Ä "
+oA 10,14 0 0305 &Aring;
+Å "
+AE 15,11 0 0306 &AElig;
+Æ "
+,C 11,11,3 0 0307 &Ccedil;
+Ç "
+`E 9,14 0 0310 &Egrave;
+È "
+'E 9,14 0 0311 &Eacute;
+É "
+^E 9,14 0 0312 &Ecirc;
+Ê "
+:E 9,14 0 0313 &Euml;
+Ë "
+`I 4,14 0 0314 &Igrave;
+Ì "
+'I 4,14 0 0315 &Iacute;
+Í "
+^I 4,14 0 0316 &Icirc;
+Î "
+:I 4,14 0 0317 &Iuml;
+Ï "
+-D 11,11 0 0320 &ETH;
+Ð "
+~N 11,14 0 0321 &Ntilde;
+Ñ "
+`O 12,14 0 0322 &Ograve;
+Ò "
+'O 12,14 0 0323 &Oacute;
+Ó "
+^O 12,14 0 0324 &Ocirc;
+Ô "
+~O 12,14 0 0325 &Otilde;
+Õ "
+:O 12,14 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 12,11 0 0330 &Oslash;
+Ø "
+`U 11,14 0 0331 &Ugrave;
+Ù "
+'U 11,14 0 0332 &Uacute;
+Ú "
+^U 11,14 0 0333 &Ucirc;
+Û "
+:U 11,14 0 0334 &Uuml;
+Ü "
+'Y 10,14 0 0335 &Yacute;
+Ý "
+TP 10,11 0 0336 &THORN;
+Þ "
+ss 8,11 0 0337 &szlig;
+ß "
+`a 8,11 0 0340 &agrave;
+à "
+'a 8,11 0 0341 &aacute;
+á "
+^a 8,11 0 0342 &acirc;
+â "
+~a 8,11 0 0343 &atilde;
+ã "
+:a 8,11 0 0344 &auml;
+ä "
+oa 8,11 0 0345 &aring;
+å "
+ae 13,8 0 0346 &aelig;
+æ "
+,c 9,8,3 0 0347 &ccedil;
+ç "
+`e 8,11 0 0350 &egrave;
+è "
+'e 8,11 0 0351 &eacute;
+é "
+^e 8,11 0 0352 &ecirc;
+ê "
+:e 8,11 0 0353 &euml;
+ë "
+`i 4,11 0 0354 &igrave;
+ì "
+'i 4,11 0 0355 &iacute;
+í "
+^i 4,11 0 0356 &icirc;
+î "
+:i 4,11 0 0357 &iuml;
+ï "
+Sd 9,11 0 0360 &eth;
+ð "
+~n 9,11 0 0361 &ntilde;
+ñ "
+`o 9,11 0 0362 &ograve;
+ò "
+'o 9,11 0 0363 &oacute;
+ó "
+^o 9,11 0 0364 &ocirc;
+ô "
+~o 9,11 0 0365 &otilde;
+õ "
+:o 9,11 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 9,8 0 0370 &oslash;
+ø "
+`u 9,11 0 0371 &ugrave;
+ù "
+'u 9,11 0 0372 &uacute;
+ú "
+^u 9,11 0 0373 &ucirc;
+û "
+:u 9,11 0 0374 &uuml;
+ü "
+'y 8,11,3 0 0375 &yacute;
+ý "
+Tp 9,11,3 0 0376 &thorn;
+þ "
+:y 8,11,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/HBI b/font/devhtml/HBI
new file mode 100755
index 000000000..ede7b5d58
--- /dev/null
+++ b/font/devhtml/HBI
@@ -0,0 +1,306 @@
+name HBI
+spacewidth 4
+charset
+--- 4,1 0 040
+! 5,11 0 041
+" 7,11 0 042 &quot;
+# 10,10 0 043
+sh "
+$ 8,12,1 0 044
+Do "
+% 13,11 0 045
+& 11,10 0 046 &amp;
+' 5,11 0 047
+( 5,11,3 0 050
+) 6,11,3 0 051
+* 6,11 0 052
++ 9,8 0 053
+, 4,2,2 0 054
+\- 9,5 0 055
+. 4,2 0 056
+/ 4,11 0 057
+sl "
+0 8,11 0 060
+1 8,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 5,8 0 072
+; 5,8,2 0 073
+< 8,7 0 074 &lt;
+= 9,6 0 075
+eq "
+> 9,7 0 076 &gt;
+? 9,11 0 077
+@ 14,11,2 0 0100
+at "
+A 9,11 0 0101
+B 10,11 0 0102
+C 11,11 0 0103
+D 11,11 0 0104
+E 9,11 0 0105
+F 8,11 0 0106
+G 11,11 0 0107
+H 10,11 0 0110
+I 4,11 0 0111
+J 8,11 0 0112
+K 10,11 0 0113
+L 8,11 0 0114
+M 13,11 0 0115
+N 11,11 0 0116
+O 12,11 0 0117
+P 10,11 0 0120
+Q 12,11 0 0121
+R 10,11 0 0122
+S 10,11 0 0123
+T 8,11 0 0124
+U 11,11 0 0125
+V 10,11 0 0126
+W 14,11 0 0127
+X 9,11 0 0130
+Y 10,11 0 0131
+Z 9,11 0 0132
+[ 5,11,3 0 0133
+lB "
+\ 6,11 0 0134
+rs "
+] 5,11,3 0 0135
+rB "
+^ 8,11 0 0136
+a^ "
+ha "
+_ 8,0,3 0 0137
+` 5,11 0 0140
+oq "
+a 8,8 0 0141
+b 9,11 0 0142
+c 8,8 0 0143
+d 9,11 0 0144
+e 8,8 0 0145
+f 5,11 0 0146
+g 9,8,3 0 0147
+h 9,11 0 0150
+i 4,11 0 0151
+j 4,11,3 0 0152
+k 8,11 0 0153
+l 4,11 0 0154
+m 12,8 0 0155
+n 9,8 0 0156
+o 8,8 0 0157
+p 9,8,3 0 0160
+q 9,8,3 0 0161
+r 6,8 0 0162
+s 8,8 0 0163
+t 5,10 0 0164
+u 9,8 0 0165
+v 8,8 0 0166
+w 11,8 0 0167
+x 7,8 0 0170
+y 7,8,3 0 0171
+z 6,8 0 0172
+{ 6,11,3 0 0173
+lC "
+| 4,11,3 0 0174
+or "
+ba "
+} 6,11,3 0 0175
+rC "
+~ 9,6 0 0176
+a~ "
+ap "
+ti "
+r! 5,8,3 0 0241 &iexcl;
+¡ "
+ct 8,9,1 0 0242 &cent;
+¢ "
+Po 9,11 0 0243 &pound;
+£ "
+Cs 9,8 0 0244 &curren;
+¤ "
+Ye 9,11 0 0245 &yen;
+¥ "
+bb 4,11,3 0 0246 &brvbar;
+¦ "
+sc 9,11,3 0 0247 &sect;
+§ "
+ad 5,11 0 0250 &uml;
+¨ "
+co 12,11 0 0251 &copy;
+© "
+Of 6,11 0 0252 &ordf;
+ª "
+Fo 11,7 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 5,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,11 0 0256 &reg;
+® "
+a- 5,11 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 9,9 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 5,11 0 0264 &acute;
+´ "
+µ 9,8,3 0 0265 &micro;
+ps 8,11,3 0 0266 &para;
+¶ "
+md 4,5 0 0267 &middot;
+· "
+ac 5,1,3 0 0270 &cedil;
+¸ "
+S1 5,11 0 0271 &sup1;
+¹ "
+Om 6,11 0 0272 &ordm;
+º "
+Fc 11,7 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 13,11 0 0276 &frac34;
+¾ "
+r? 8,8,3 0 0277 &iquest;
+¿ "
+`A 9,14 0 0300 &Agrave;
+À "
+'A 9,14 0 0301 &Aacute;
+Á "
+^A 9,14 0 0302 &Acirc;
+Â "
+~A 9,14 0 0303 &Atilde;
+Ã "
+:A 9,14 0 0304 &Auml;
+Ä "
+oA 9,14 0 0305 &Aring;
+Å "
+AE 14,11 0 0306 &AElig;
+Æ "
+,C 11,11,3 0 0307 &Ccedil;
+Ç "
+`E 9,14 0 0310 &Egrave;
+È "
+'E 9,14 0 0311 &Eacute;
+É "
+^E 9,14 0 0312 &Ecirc;
+Ê "
+:E 9,14 0 0313 &Euml;
+Ë "
+`I 4,14 0 0314 &Igrave;
+Ì "
+'I 4,14 0 0315 &Iacute;
+Í "
+^I 4,14 0 0316 &Icirc;
+Î "
+:I 4,14 0 0317 &Iuml;
+Ï "
+-D 11,11 0 0320 &ETH;
+Ð "
+~N 11,14 0 0321 &Ntilde;
+Ñ "
+`O 12,14 0 0322 &Ograve;
+Ò "
+'O 12,14 0 0323 &Oacute;
+Ó "
+^O 12,14 0 0324 &Ocirc;
+Ô "
+~O 12,14 0 0325 &Otilde;
+Õ "
+:O 12,14 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 12,11 0 0330 &Oslash;
+Ø "
+`U 11,14 0 0331 &Ugrave;
+Ù "
+'U 11,14 0 0332 &Uacute;
+Ú "
+^U 11,14 0 0333 &Ucirc;
+Û "
+:U 11,14 0 0334 &Uuml;
+Ü "
+'Y 10,14 0 0335 &Yacute;
+Ý "
+TP 10,11 0 0336 &THORN;
+Þ "
+ss 9,11 0 0337 &szlig;
+ß "
+`a 8,11 0 0340 &agrave;
+à "
+'a 8,11 0 0341 &aacute;
+á "
+^a 8,11 0 0342 &acirc;
+â "
+~a 8,11 0 0343 &atilde;
+ã "
+:a 8,11 0 0344 &auml;
+ä "
+oa 8,11 0 0345 &aring;
+å "
+ae 13,8 0 0346 &aelig;
+æ "
+,c 8,8,3 0 0347 &ccedil;
+ç "
+`e 8,11 0 0350 &egrave;
+è "
+'e 8,11 0 0351 &eacute;
+é "
+^e 8,11 0 0352 &ecirc;
+ê "
+:e 8,11 0 0353 &euml;
+ë "
+`i 4,11 0 0354 &igrave;
+ì "
+'i 4,11 0 0355 &iacute;
+í "
+^i 4,11 0 0356 &icirc;
+î "
+:i 4,11 0 0357 &iuml;
+ï "
+Sd 8,11 0 0360 &eth;
+ð "
+~n 9,11 0 0361 &ntilde;
+ñ "
+`o 8,11 0 0362 &ograve;
+ò "
+'o 8,11 0 0363 &oacute;
+ó "
+^o 8,11 0 0364 &ocirc;
+ô "
+~o 8,11 0 0365 &otilde;
+õ "
+:o 8,11 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 8,8 0 0370 &oslash;
+ø "
+`u 9,11 0 0371 &ugrave;
+ù "
+'u 9,11 0 0372 &uacute;
+ú "
+^u 9,11 0 0373 &ucirc;
+û "
+:u 9,11 0 0374 &uuml;
+ü "
+'y 7,11,3 0 0375 &yacute;
+ý "
+Tp 9,11,3 0 0376 &thorn;
+þ "
+:y 7,11,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/HI b/font/devhtml/HI
new file mode 100755
index 000000000..6497a1604
--- /dev/null
+++ b/font/devhtml/HI
@@ -0,0 +1,306 @@
+name HI
+spacewidth 4
+charset
+--- 4,1 0 040
+! 4,11 0 041
+" 5,11 0 042 &quot;
+# 9,10 0 043
+sh "
+$ 8,12,2 0 044
+Do "
+% 12,11 0 045
+& 10,10 0 046 &amp;
+' 3,11 0 047
+( 5,11,3 0 050
+) 5,11,3 0 051
+* 8,11 0 052
++ 9,8 0 053
+, 3,2,2 0 054
+\- 9,5 0 055
+. 3,2 0 056
+/ 4,11 0 057
+sl "
+0 8,11 0 060
+1 8,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 4,8 0 072
+; 4,8,2 0 073
+< 9,7 0 074 &lt;
+= 9,6 0 075
+eq "
+> 9,7 0 076 &gt;
+? 8,11 0 077
+@ 13,11,1 0 0100
+at "
+A 11,11 0 0101
+B 10,11 0 0102
+C 10,11 0 0103
+D 10,11 0 0104
+E 9,11 0 0105
+F 9,11 0 0106
+G 11,11 0 0107
+H 11,11 0 0110
+I 5,11 0 0111
+J 9,11 0 0112
+K 10,11 0 0113
+L 8,11 0 0114
+M 14,11 0 0115
+N 11,11 0 0116
+O 11,11 0 0117
+P 9,11 0 0120
+Q 11,11 0 0121
+R 10,11 0 0122
+S 9,11 0 0123
+T 8,11 0 0124
+U 11,11 0 0125
+V 11,11 0 0126
+W 14,11 0 0127
+X 10,11 0 0130
+Y 9,11 0 0131
+Z 9,11 0 0132
+[ 5,11,3 0 0133
+lB "
+\ 6,11 0 0134
+rs "
+] 5,11,3 0 0135
+rB "
+^ 7,11 0 0136
+a^ "
+ha "
+_ 8,0,3 0 0137
+` 3,11 0 0140
+oq "
+a 8,8 0 0141
+b 8,11 0 0142
+c 7,8 0 0143
+d 8,11 0 0144
+e 8,8 0 0145
+f 4,11 0 0146
+g 8,8,3 0 0147
+h 8,11 0 0150
+i 4,11 0 0151
+j 3,11,3 0 0152
+k 7,11 0 0153
+l 3,11 0 0154
+m 11,8 0 0155
+n 8,8 0 0156
+o 8,8 0 0157
+p 8,8,3 0 0160
+q 8,8,3 0 0161
+r 5,8 0 0162
+s 7,8 0 0163
+t 4,10 0 0164
+u 8,8 0 0165
+v 7,8 0 0166
+w 10,8 0 0167
+x 7,8 0 0170
+y 7,8,3 0 0171
+z 7,8 0 0172
+{ 5,11,3 0 0173
+lC "
+| 4,11,3 0 0174
+or "
+ba "
+} 5,11,3 0 0175
+rC "
+~ 8,6 0 0176
+a~ "
+ap "
+ti "
+r! 4,8,3 0 0241 &iexcl;
+¡ "
+ct 8,9,1 0 0242 &cent;
+¢ "
+Po 9,11 0 0243 &pound;
+£ "
+Cs 8,8 0 0244 &curren;
+¤ "
+Ye 9,11 0 0245 &yen;
+¥ "
+bb 4,11,3 0 0246 &brvbar;
+¦ "
+sc 8,11,3 0 0247 &sect;
+§ "
+ad 5,10 0 0250 &uml;
+¨ "
+co 12,11 0 0251 &copy;
+© "
+Of 5,11 0 0252 &ordf;
+ª "
+Fo 8,6 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 5,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,11 0 0256 &reg;
+® "
+a- 4,10 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 9,9 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 4,11 0 0264 &acute;
+´ "
+µ 8,8,3 0 0265 &micro;
+ps 8,11,3 0 0266 &para;
+¶ "
+md 4,5 0 0267 &middot;
+· "
+ac 3,0,3 0 0270 &cedil;
+¸ "
+S1 5,11 0 0271 &sup1;
+¹ "
+Om 5,11 0 0272 &ordm;
+º "
+Fc 8,6 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 12,11 0 0276 &frac34;
+¾ "
+r? 8,8,3 0 0277 &iquest;
+¿ "
+`A 11,14 0 0300 &Agrave;
+À "
+'A 11,14 0 0301 &Aacute;
+Á "
+^A 11,14 0 0302 &Acirc;
+Â "
+~A 11,14 0 0303 &Atilde;
+Ã "
+:A 11,13 0 0304 &Auml;
+Ä "
+oA 11,14 0 0305 &Aring;
+Å "
+AE 15,11 0 0306 &AElig;
+Æ "
+,C 10,11,3 0 0307 &Ccedil;
+Ç "
+`E 9,14 0 0310 &Egrave;
+È "
+'E 9,14 0 0311 &Eacute;
+É "
+^E 9,14 0 0312 &Ecirc;
+Ê "
+:E 9,13 0 0313 &Euml;
+Ë "
+`I 5,14 0 0314 &Igrave;
+Ì "
+'I 5,14 0 0315 &Iacute;
+Í "
+^I 5,14 0 0316 &Icirc;
+Î "
+:I 5,13 0 0317 &Iuml;
+Ï "
+-D 10,11 0 0320 &ETH;
+Ð "
+~N 11,14 0 0321 &Ntilde;
+Ñ "
+`O 11,14 0 0322 &Ograve;
+Ò "
+'O 11,14 0 0323 &Oacute;
+Ó "
+^O 11,14 0 0324 &Ocirc;
+Ô "
+~O 11,14 0 0325 &Otilde;
+Õ "
+:O 11,13 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 11,11 0 0330 &Oslash;
+Ø "
+`U 11,14 0 0331 &Ugrave;
+Ù "
+'U 11,14 0 0332 &Uacute;
+Ú "
+^U 11,14 0 0333 &Ucirc;
+Û "
+:U 11,13 0 0334 &Uuml;
+Ü "
+'Y 9,14 0 0335 &Yacute;
+Ý "
+TP 9,11 0 0336 &THORN;
+Þ "
+ss 8,11 0 0337 &szlig;
+ß "
+`a 8,11 0 0340 &agrave;
+à "
+'a 8,11 0 0341 &aacute;
+á "
+^a 8,11 0 0342 &acirc;
+â "
+~a 8,11 0 0343 &atilde;
+ã "
+:a 8,11 0 0344 &auml;
+ä "
+oa 8,11 0 0345 &aring;
+å "
+ae 12,8 0 0346 &aelig;
+æ "
+,c 7,8,3 0 0347 &ccedil;
+ç "
+`e 8,11 0 0350 &egrave;
+è "
+'e 8,11 0 0351 &eacute;
+é "
+^e 8,11 0 0352 &ecirc;
+ê "
+:e 8,11 0 0353 &euml;
+ë "
+`i 3,11 0 0354 &igrave;
+ì "
+'i 3,11 0 0355 &iacute;
+í "
+^i 3,11 0 0356 &icirc;
+î "
+:i 3,11 0 0357 &iuml;
+ï "
+Sd 8,11 0 0360 &eth;
+ð "
+~n 8,11 0 0361 &ntilde;
+ñ "
+`o 8,11 0 0362 &ograve;
+ò "
+'o 8,11 0 0363 &oacute;
+ó "
+^o 8,11 0 0364 &ocirc;
+ô "
+~o 8,11 0 0365 &otilde;
+õ "
+:o 8,11 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 8,9,1 0 0370 &oslash;
+ø "
+`u 8,11 0 0371 &ugrave;
+ù "
+'u 8,11 0 0372 &uacute;
+ú "
+^u 8,11 0 0373 &ucirc;
+û "
+:u 8,11 0 0374 &uuml;
+ü "
+'y 7,11,3 0 0375 &yacute;
+ý "
+Tp 8,11,3 0 0376 &thorn;
+þ "
+:y 7,11,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/HR b/font/devhtml/HR
new file mode 100755
index 000000000..7ca413102
--- /dev/null
+++ b/font/devhtml/HR
@@ -0,0 +1,306 @@
+name HR
+spacewidth 4
+charset
+--- 4,1 0 040
+! 4,11 0 041
+" 5,11 0 042 &quot;
+# 8,10 0 043
+sh "
+$ 8,12,2 0 044
+Do "
+% 12,11 0 045
+& 10,10 0 046 &amp;
+' 3,11 0 047
+( 5,11,3 0 050
+) 5,11,3 0 051
+* 7,11 0 052
++ 9,8 0 053
+, 3,2,2 0 054
+\- 9,5 0 055
+. 3,2 0 056
+/ 4,11 0 057
+sl "
+0 8,11 0 060
+1 8,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 3,8 0 072
+; 4,8,2 0 073
+< 8,7 0 074 &lt;
+= 9,6 0 075
+eq "
+> 8,7 0 076 &gt;
+? 8,11 0 077
+@ 13,11,1 0 0100
+at "
+A 9,11 0 0101
+B 9,11 0 0102
+C 10,11 0 0103
+D 10,11 0 0104
+E 9,11 0 0105
+F 8,11 0 0106
+G 11,11 0 0107
+H 10,11 0 0110
+I 4,11 0 0111
+J 7,11 0 0112
+K 9,11 0 0113
+L 8,11 0 0114
+M 12,11 0 0115
+N 10,11 0 0116
+O 11,11 0 0117
+P 9,11 0 0120
+Q 11,11 0 0121
+R 10,11 0 0122
+S 9,11 0 0123
+T 9,11 0 0124
+U 10,11 0 0125
+V 9,11 0 0126
+W 13,11 0 0127
+X 9,11 0 0130
+Y 9,11 0 0131
+Z 9,11 0 0132
+[ 4,11,3 0 0133
+lB "
+\ 4,11 0 0134
+rs "
+] 4,11,3 0 0135
+rB "
+^ 7,11 0 0136
+a^ "
+ha "
+_ 8,0,3 0 0137
+` 3,11 0 0140
+oq "
+a 8,8 0 0141
+b 7,11 0 0142
+c 7,8 0 0143
+d 8,11 0 0144
+e 8,8 0 0145
+f 4,11 0 0146
+g 8,8,3 0 0147
+h 8,11 0 0150
+i 3,11 0 0151
+j 3,11,3 0 0152
+k 7,11 0 0153
+l 3,11 0 0154
+m 11,8 0 0155
+n 8,8 0 0156
+o 8,8 0 0157
+p 8,8,3 0 0160
+q 8,8,3 0 0161
+r 5,8 0 0162
+s 7,8 0 0163
+t 4,10 0 0164
+u 7,8 0 0165
+v 7,8 0 0166
+w 10,8 0 0167
+x 7,8 0 0170
+y 7,8,3 0 0171
+z 7,8 0 0172
+{ 5,11,3 0 0173
+lC "
+| 3,11,3 0 0174
+or "
+ba "
+} 5,11,3 0 0175
+rC "
+~ 8,6 0 0176
+a~ "
+ap "
+ti "
+r! 4,8,3 0 0241 &iexcl;
+¡ "
+ct 8,9,1 0 0242 &cent;
+¢ "
+Po 8,11 0 0243 &pound;
+£ "
+Cs 8,8 0 0244 &curren;
+¤ "
+Ye 7,11 0 0245 &yen;
+¥ "
+bb 3,11,3 0 0246 &brvbar;
+¦ "
+sc 8,11,3 0 0247 &sect;
+§ "
+ad 5,10 0 0250 &uml;
+¨ "
+co 12,11 0 0251 &copy;
+© "
+Of 6,11 0 0252 &ordf;
+ª "
+Fo 8,7 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 4,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,11 0 0256 &reg;
+® "
+a- 4,10 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 9,9 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 5,11 0 0264 &acute;
+´ "
+µ 8,8,3 0 0265 &micro;
+ps 8,11,3 0 0266 &para;
+¶ "
+md 4,5 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 5,11 0 0271 &sup1;
+¹ "
+Om 6,11 0 0272 &ordm;
+º "
+Fc 8,7 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 12,11 0 0276 &frac34;
+¾ "
+r? 8,8,3 0 0277 &iquest;
+¿ "
+`A 9,14 0 0300 &Agrave;
+À "
+'A 9,14 0 0301 &Aacute;
+Á "
+^A 9,14 0 0302 &Acirc;
+Â "
+~A 9,13 0 0303 &Atilde;
+Ã "
+:A 9,14 0 0304 &Auml;
+Ä "
+oA 9,14 0 0305 &Aring;
+Å "
+AE 14,11 0 0306 &AElig;
+Æ "
+,C 10,11,3 0 0307 &Ccedil;
+Ç "
+`E 9,14 0 0310 &Egrave;
+È "
+'E 9,14 0 0311 &Eacute;
+É "
+^E 9,14 0 0312 &Ecirc;
+Ê "
+:E 9,13 0 0313 &Euml;
+Ë "
+`I 4,14 0 0314 &Igrave;
+Ì "
+'I 4,14 0 0315 &Iacute;
+Í "
+^I 4,14 0 0316 &Icirc;
+Î "
+:I 4,13 0 0317 &Iuml;
+Ï "
+-D 10,11 0 0320 &ETH;
+Ð "
+~N 10,14 0 0321 &Ntilde;
+Ñ "
+`O 11,14 0 0322 &Ograve;
+Ò "
+'O 11,14 0 0323 &Oacute;
+Ó "
+^O 11,14 0 0324 &Ocirc;
+Ô "
+~O 11,14 0 0325 &Otilde;
+Õ "
+:O 11,13 0 0326 &Ouml;
+Ö "
+mu 9,8 0 0327 &times;
+× "
+/O 11,11 0 0330 &Oslash;
+Ø "
+`U 10,14 0 0331 &Ugrave;
+Ù "
+'U 10,14 0 0332 &Uacute;
+Ú "
+^U 10,14 0 0333 &Ucirc;
+Û "
+:U 10,13 0 0334 &Uuml;
+Ü "
+'Y 9,14 0 0335 &Yacute;
+Ý "
+TP 9,11 0 0336 &THORN;
+Þ "
+ss 7,11 0 0337 &szlig;
+ß "
+`a 8,11 0 0340 &agrave;
+à "
+'a 8,11 0 0341 &aacute;
+á "
+^a 8,11 0 0342 &acirc;
+â "
+~a 8,11 0 0343 &atilde;
+ã "
+:a 8,11 0 0344 &auml;
+ä "
+oa 8,12 0 0345 &aring;
+å "
+ae 13,8 0 0346 &aelig;
+æ "
+,c 8,8,3 0 0347 &ccedil;
+ç "
+`e 8,11 0 0350 &egrave;
+è "
+'e 8,11 0 0351 &eacute;
+é "
+^e 8,11 0 0352 &ecirc;
+ê "
+:e 8,11 0 0353 &euml;
+ë "
+`i 3,11 0 0354 &igrave;
+ì "
+'i 3,11 0 0355 &iacute;
+í "
+^i 3,11 0 0356 &icirc;
+î "
+:i 3,11 0 0357 &iuml;
+ï "
+Sd 8,11 0 0360 &eth;
+ð "
+~n 8,11 0 0361 &ntilde;
+ñ "
+`o 8,11 0 0362 &ograve;
+ò "
+'o 8,11 0 0363 &oacute;
+ó "
+^o 8,11 0 0364 &ocirc;
+ô "
+~o 8,11 0 0365 &otilde;
+õ "
+:o 8,11 0 0366 &ouml;
+ö "
+di 9,8 0 0367 &divide;
+÷ "
+/o 8,8 0 0370 &oslash;
+ø "
+`u 8,11 0 0371 &ugrave;
+ù "
+'u 8,11 0 0372 &uacute;
+ú "
+^u 8,11 0 0373 &ucirc;
+û "
+:u 8,11 0 0374 &uuml;
+ü "
+'y 7,11,3 0 0375 &yacute;
+ý "
+Tp 8,11,3 0 0376 &thorn;
+þ "
+:y 7,10,3 0 0377 &yuml;
+ÿ "
diff --git a/devhtml/Makefile.sub b/font/devhtml/Makefile.sub
index 57c9f44de..57c9f44de 100644
--- a/devhtml/Makefile.sub
+++ b/font/devhtml/Makefile.sub
diff --git a/font/devhtml/NB b/font/devhtml/NB
new file mode 100755
index 000000000..82f8ca62e
--- /dev/null
+++ b/font/devhtml/NB
@@ -0,0 +1,306 @@
+name NB
+spacewidth 11
+charset
+--- 11,1 0 040
+! 4,11 0 041
+" 5,11 0 042 &quot;
+# 8,10 0 043
+sh "
+$ 8,12,1 0 044
+Do "
+% 13,11 0 045
+& 13,11 0 046 &amp;
+' 4,11 0 047
+( 5,11,2 0 050
+) 5,11,2 0 051
+* 6,11 0 052
++ 8,8 0 053
+, 4,3,2 0 054
+\- 8,5 0 055
+. 4,3 0 056
+/ 5,11 0 057
+sl "
+0 8,11 0 060
+1 6,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 4,7 0 072
+; 4,7,2 0 073
+< 8,8 0 074 &lt;
+= 8,6 0 075
+eq "
+> 8,8 0 076 &gt;
+? 7,11 0 077
+@ 14,11 0 0100
+at "
+A 11,11 0 0101
+B 10,11 0 0102
+C 11,11 0 0103
+D 12,11 0 0104
+E 10,11 0 0105
+F 10,11 0 0106
+G 12,11 0 0107
+H 12,11 0 0110
+I 7,11 0 0111
+J 9,11 0 0112
+K 12,11 0 0113
+L 10,11 0 0114
+M 14,11 0 0115
+N 12,11 0 0116
+O 12,11 0 0117
+P 10,11 0 0120
+Q 12,11,3 0 0121
+R 12,11 0 0122
+S 10,11 0 0123
+T 11,11 0 0124
+U 12,11 0 0125
+V 11,11 0 0126
+W 14,11 0 0127
+X 12,11 0 0130
+Y 11,11 0 0131
+Z 9,11 0 0132
+[ 5,11,2 0 0133
+lB "
+\ 7,11 0 0134
+rs "
+] 5,11,2 0 0135
+rB "
+^ 8,11 0 0136
+a^ "
+ha "
+_ 7,0,2 0 0137
+` 4,11 0 0140
+oq "
+a 9,7 0 0141
+b 10,11 0 0142
+c 8,7 0 0143
+d 10,11 0 0144
+e 9,7 0 0145
+f 6,11 0 0146
+g 8,8,3 0 0147
+h 10,11 0 0150
+i 5,10 0 0151
+j 5,10,3 0 0152
+k 9,11 0 0153
+l 5,11 0 0154
+m 15,7 0 0155
+n 10,7 0 0156
+o 9,7 0 0157
+p 10,7,3 0 0160
+q 9,7,3 0 0161
+r 7,7 0 0162
+s 7,7 0 0163
+t 6,10 0 0164
+u 10,7 0 0165
+v 7,7 0 0166
+w 12,7 0 0167
+x 9,7 0 0170
+y 7,7,3 0 0171
+z 7,7 0 0172
+{ 6,11,2 0 0173
+lC "
+| 8,11 0 0174
+or "
+ba "
+} 6,11,2 0 0175
+rC "
+~ 8,6 0 0176
+a~ "
+ap "
+ti "
+r! 5,8,3 0 0241 &iexcl;
+¡ "
+ct 8,8,1 0 0242 &cent;
+¢ "
+Po 9,11 0 0243 &pound;
+£ "
+Cs 9,10 0 0244 &curren;
+¤ "
+Ye 11,11 0 0245 &yen;
+¥ "
+bb 8,11 0 0246 &brvbar;
+¦ "
+sc 7,11,2 0 0247 &sect;
+§ "
+ad 7,10 0 0250 &uml;
+¨ "
+co 12,11 0 0251 &copy;
+© "
+Of 6,11 0 0252 &ordf;
+ª "
+Fo 8,6 0 0253 &laquo;
+« "
+no 8,6 0 0254 &not;
+¬ "
+- 5,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,11 0 0256 &reg;
+® "
+a- 7,9 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 8,8 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 6,11 0 0264 &acute;
+´ "
+µ 10,7,3 0 0265 &micro;
+ps 10,11 0 0266 &para;
+¶ "
+md 5,6 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 5,11 0 0271 &sup1;
+¹ "
+Om 6,11 0 0272 &ordm;
+º "
+Fc 8,6 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 12,11 0 0276 &frac34;
+¾ "
+r? 7,8,3 0 0277 &iquest;
+¿ "
+`A 11,15 0 0300 &Agrave;
+À "
+'A 11,15 0 0301 &Aacute;
+Á "
+^A 11,15 0 0302 &Acirc;
+Â "
+~A 11,14 0 0303 &Atilde;
+Ã "
+:A 11,14 0 0304 &Auml;
+Ä "
+oA 11,15 0 0305 &Aring;
+Å "
+AE 15,11 0 0306 &AElig;
+Æ "
+,C 11,11,3 0 0307 &Ccedil;
+Ç "
+`E 10,15 0 0310 &Egrave;
+È "
+'E 10,15 0 0311 &Eacute;
+É "
+^E 10,15 0 0312 &Ecirc;
+Ê "
+:E 10,14 0 0313 &Euml;
+Ë "
+`I 7,15 0 0314 &Igrave;
+Ì "
+'I 7,15 0 0315 &Iacute;
+Í "
+^I 7,15 0 0316 &Icirc;
+Î "
+:I 7,14 0 0317 &Iuml;
+Ï "
+-D 12,11 0 0320 &ETH;
+Ð "
+~N 12,14 0 0321 &Ntilde;
+Ñ "
+`O 12,15 0 0322 &Ograve;
+Ò "
+'O 12,15 0 0323 &Oacute;
+Ó "
+^O 12,15 0 0324 &Ocirc;
+Ô "
+~O 12,14 0 0325 &Otilde;
+Õ "
+:O 12,14 0 0326 &Ouml;
+Ö "
+mu 8,8 0 0327 &times;
+× "
+/O 12,11 0 0330 &Oslash;
+Ø "
+`U 12,15 0 0331 &Ugrave;
+Ù "
+'U 12,15 0 0332 &Uacute;
+Ú "
+^U 12,15 0 0333 &Ucirc;
+Û "
+:U 12,14 0 0334 &Uuml;
+Ü "
+'Y 11,14 0 0335 &Yacute;
+Ý "
+TP 10,11 0 0336 &THORN;
+Þ "
+ss 9,11 0 0337 &szlig;
+ß "
+`a 9,11 0 0340 &agrave;
+à "
+'a 9,11 0 0341 &aacute;
+á "
+^a 9,11 0 0342 &acirc;
+â "
+~a 9,10 0 0343 &atilde;
+ã "
+:a 9,10 0 0344 &auml;
+ä "
+oa 9,11 0 0345 &aring;
+å "
+ae 14,7 0 0346 &aelig;
+æ "
+,c 8,7,3 0 0347 &ccedil;
+ç "
+`e 9,11 0 0350 &egrave;
+è "
+'e 9,11 0 0351 &eacute;
+é "
+^e 9,11 0 0352 &ecirc;
+ê "
+:e 9,10 0 0353 &euml;
+ë "
+`i 5,11 0 0354 &igrave;
+ì "
+'i 5,11 0 0355 &iacute;
+í "
+^i 5,11 0 0356 &icirc;
+î "
+:i 5,10 0 0357 &iuml;
+ï "
+Sd 9,11 0 0360 &eth;
+ð "
+~n 10,10 0 0361 &ntilde;
+ñ "
+`o 9,11 0 0362 &ograve;
+ò "
+'o 9,11 0 0363 &oacute;
+ó "
+^o 9,11 0 0364 &ocirc;
+ô "
+~o 9,10 0 0365 &otilde;
+õ "
+:o 9,10 0 0366 &ouml;
+ö "
+di 8,8 0 0367 &divide;
+÷ "
+/o 9,8,1 0 0370 &oslash;
+ø "
+`u 10,11 0 0371 &ugrave;
+ù "
+'u 10,11 0 0372 &uacute;
+ú "
+^u 10,11 0 0373 &ucirc;
+û "
+:u 10,10 0 0374 &uuml;
+ü "
+'y 7,11,3 0 0375 &yacute;
+ý "
+Tp 10,11,3 0 0376 &thorn;
+þ "
+:y 7,10,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/NBI b/font/devhtml/NBI
new file mode 100755
index 000000000..c288f6939
--- /dev/null
+++ b/font/devhtml/NBI
@@ -0,0 +1,306 @@
+name NBI
+spacewidth 4
+charset
+--- 4,1 0 040
+! 5,11 0 041
+" 6,11 0 042 &quot;
+# 8,10 0 043
+sh "
+$ 8,12,1 0 044
+Do "
+% 13,11,1 0 045
+& 13,11 0 046 &amp;
+' 4,11 0 047
+( 5,11,2 0 050
+) 6,11,2 0 051
+* 7,11 0 052
++ 8,8 0 053
+, 4,2,3 0 054
+\- 8,5 0 055
+. 4,2 0 056
+/ 5,11 0 057
+sl "
+0 8,11 0 060
+1 8,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 4,7 0 072
+; 5,7,3 0 073
+< 9,9 0 074 &lt;
+= 9,7 0 075
+eq "
+> 9,9 0 076 &gt;
+? 7,11 0 077
+@ 13,11 0 0100
+at "
+A 11,11 0 0101
+B 10,11 0 0102
+C 11,11 0 0103
+D 12,11 0 0104
+E 10,11 0 0105
+F 10,11 0 0106
+G 11,11 0 0107
+H 12,11 0 0110
+I 6,11 0 0111
+J 8,11 0 0112
+K 12,11 0 0113
+L 10,11 0 0114
+M 15,11 0 0115
+N 13,11 0 0116
+O 12,11 0 0117
+P 11,11 0 0120
+Q 12,11,2 0 0121
+R 12,11 0 0122
+S 10,11 0 0123
+T 11,11 0 0124
+U 12,11 0 0125
+V 11,11 0 0126
+W 15,11 0 0127
+X 11,11 0 0130
+Y 9,11 0 0131
+Z 10,11 0 0132
+[ 7,11,2 0 0133
+lB "
+\ 9,11 0 0134
+rs "
+] 7,11,2 0 0135
+rB "
+^ 8,11 0 0136
+a^ "
+ha "
+_ 9,0,2 0 0137
+` 4,11 0 0140
+oq "
+a 10,7 0 0141
+b 8,11 0 0142
+c 8,7 0 0143
+d 10,11 0 0144
+e 8,7 0 0145
+f 5,11,3 0 0146
+g 8,9,3 0 0147
+h 10,11 0 0150
+i 5,10 0 0151
+j 4,10,3 0 0152
+k 9,11 0 0153
+l 5,11 0 0154
+m 15,7 0 0155
+n 10,7 0 0156
+o 8,7 0 0157
+p 8,7,3 0 0160
+q 9,7,3 0 0161
+r 7,7 0 0162
+s 8,7 0 0163
+t 5,9 0 0164
+u 10,7 0 0165
+v 8,7 0 0166
+w 13,7 0 0167
+x 9,7 0 0170
+y 9,7,3 0 0171
+z 9,7 0 0172
+{ 6,11,2 0 0173
+lC "
+| 9,11 0 0174
+or "
+ba "
+} 6,11,2 0 0175
+rC "
+~ 11,6 0 0176
+a~ "
+ap "
+ti "
+r! 5,8,3 0 0241 &iexcl;
+¡ "
+ct 8,8,1 0 0242 &cent;
+¢ "
+Po 10,11 0 0243 &pound;
+£ "
+Cs 8,9 0 0244 &curren;
+¤ "
+Ye 10,11 0 0245 &yen;
+¥ "
+bb 8,11 0 0246 &brvbar;
+¦ "
+sc 9,11,2 0 0247 &sect;
+§ "
+ad 6,10 0 0250 &uml;
+¨ "
+co 12,11 0 0251 &copy;
+© "
+Of 8,11 0 0252 &ordf;
+ª "
+Fo 10,7 0 0253 &laquo;
+« "
+no 9,7 0 0254 &not;
+¬ "
+- 5,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,11 0 0256 &reg;
+® "
+a- 6,9 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 8,8 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 5,11 0 0264 &acute;
+´ "
+µ 10,7,3 0 0265 &micro;
+ps 9,11 0 0266 &para;
+¶ "
+md 5,6 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 5,11 0 0271 &sup1;
+¹ "
+Om 8,11 0 0272 &ordm;
+º "
+Fc 10,7 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 12,11 0 0276 &frac34;
+¾ "
+r? 7,8,3 0 0277 &iquest;
+¿ "
+`A 11,15 0 0300 &Agrave;
+À "
+'A 11,15 0 0301 &Aacute;
+Á "
+^A 11,15 0 0302 &Acirc;
+Â "
+~A 11,14 0 0303 &Atilde;
+Ã "
+:A 11,14 0 0304 &Auml;
+Ä "
+oA 11,15 0 0305 &Aring;
+Å "
+AE 14,11 0 0306 &AElig;
+Æ "
+,C 11,11,3 0 0307 &Ccedil;
+Ç "
+`E 10,15 0 0310 &Egrave;
+È "
+'E 10,15 0 0311 &Eacute;
+É "
+^E 10,15 0 0312 &Ecirc;
+Ê "
+:E 10,14 0 0313 &Euml;
+Ë "
+`I 6,15 0 0314 &Igrave;
+Ì "
+'I 6,15 0 0315 &Iacute;
+Í "
+^I 6,15 0 0316 &Icirc;
+Î "
+:I 6,14 0 0317 &Iuml;
+Ï "
+-D 12,11 0 0320 &ETH;
+Ð "
+~N 13,14 0 0321 &Ntilde;
+Ñ "
+`O 12,15 0 0322 &Ograve;
+Ò "
+'O 12,15 0 0323 &Oacute;
+Ó "
+^O 12,15 0 0324 &Ocirc;
+Ô "
+~O 12,14 0 0325 &Otilde;
+Õ "
+:O 12,14 0 0326 &Ouml;
+Ö "
+mu 8,8 0 0327 &times;
+× "
+/O 12,11 0 0330 &Oslash;
+Ø "
+`U 12,15 0 0331 &Ugrave;
+Ù "
+'U 12,15 0 0332 &Uacute;
+Ú "
+^U 12,15 0 0333 &Ucirc;
+Û "
+:U 12,14 0 0334 &Uuml;
+Ü "
+'Y 9,15 0 0335 &Yacute;
+Ý "
+TP 11,11 0 0336 &THORN;
+Þ "
+ss 10,11,3 0 0337 &szlig;
+ß "
+`a 10,11 0 0340 &agrave;
+à "
+'a 10,11 0 0341 &aacute;
+á "
+^a 10,11 0 0342 &acirc;
+â "
+~a 10,10 0 0343 &atilde;
+ã "
+:a 10,10 0 0344 &auml;
+ä "
+oa 10,11 0 0345 &aring;
+å "
+ae 13,7 0 0346 &aelig;
+æ "
+,c 8,7,3 0 0347 &ccedil;
+ç "
+`e 8,11 0 0350 &egrave;
+è "
+'e 8,11 0 0351 &eacute;
+é "
+^e 8,11 0 0352 &ecirc;
+ê "
+:e 8,10 0 0353 &euml;
+ë "
+`i 5,11 0 0354 &igrave;
+ì "
+'i 5,11 0 0355 &iacute;
+í "
+^i 5,11 0 0356 &icirc;
+î "
+:i 5,10 0 0357 &iuml;
+ï "
+Sd 8,11 0 0360 &eth;
+ð "
+~n 10,10 0 0361 &ntilde;
+ñ "
+`o 8,11 0 0362 &ograve;
+ò "
+'o 8,11 0 0363 &oacute;
+ó "
+^o 8,11 0 0364 &ocirc;
+ô "
+~o 8,10 0 0365 &otilde;
+õ "
+:o 8,10 0 0366 &ouml;
+ö "
+di 8,8 0 0367 &divide;
+÷ "
+/o 8,7 0 0370 &oslash;
+ø "
+`u 10,11 0 0371 &ugrave;
+ù "
+'u 10,11 0 0372 &uacute;
+ú "
+^u 10,11 0 0373 &ucirc;
+û "
+:u 10,10 0 0374 &uuml;
+ü "
+'y 9,11,3 0 0375 &yacute;
+ý "
+Tp 8,11,3 0 0376 &thorn;
+þ "
+:y 9,10,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/NI b/font/devhtml/NI
new file mode 100755
index 000000000..21e7263a6
--- /dev/null
+++ b/font/devhtml/NI
@@ -0,0 +1,306 @@
+name NI
+spacewidth 4
+charset
+--- 4,1 0 040
+! 5,11 0 041
+" 6,11 0 042 &quot;
+# 11,10 0 043
+sh "
+$ 8,12,1 0 044
+Do "
+% 12,11,1 0 045
+& 11,11 0 046 &amp;
+' 4,11 0 047
+( 5,11,2 0 050
+) 5,11,2 0 051
+* 6,11 0 052
++ 8,8 0 053
+, 4,2,2 0 054
+\- 9,5 0 055
+. 4,2 0 056
+/ 9,11,3 0 057
+sl "
+0 8,11 0 060
+1 8,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 4,7 0 072
+; 4,7,2 0 073
+< 9,8 0 074 &lt;
+= 8,6 0 075
+eq "
+> 9,8 0 076 &gt;
+? 6,11 0 077
+@ 12,11 0 0100
+at "
+A 11,11 0 0101
+B 9,11 0 0102
+C 10,11 0 0103
+D 11,11 0 0104
+E 9,11 0 0105
+F 8,11 0 0106
+G 10,11 0 0107
+H 11,11 0 0110
+I 7,11 0 0111
+J 8,11 0 0112
+K 10,11 0 0113
+L 9,11 0 0114
+M 14,11 0 0115
+N 12,11 0 0116
+O 10,11 0 0117
+P 10,11 0 0120
+Q 10,11,2 0 0121
+R 11,11 0 0122
+S 10,11 0 0123
+T 10,11 0 0124
+U 12,11 0 0125
+V 10,11 0 0126
+W 13,11 0 0127
+X 10,11 0 0130
+Y 9,11 0 0131
+Z 10,11 0 0132
+[ 6,11,2 0 0133
+lB "
+\ 8,11 0 0134
+rs "
+] 6,11,2 0 0135
+rB "
+^ 6,11 0 0136
+a^ "
+ha "
+_ 7,0,2 0 0137
+` 4,11 0 0140
+oq "
+a 9,7 0 0141
+b 7,11 0 0142
+c 6,7 0 0143
+d 9,11 0 0144
+e 6,7 0 0145
+f 5,11,3 0 0146
+g 7,8,3 0 0147
+h 9,11 0 0150
+i 4,11 0 0151
+j 4,11,3 0 0152
+k 8,11 0 0153
+l 4,11 0 0154
+m 14,7 0 0155
+n 9,7 0 0156
+o 7,7 0 0157
+p 7,7,3 0 0160
+q 8,7,3 0 0161
+r 7,7 0 0162
+s 7,7 0 0163
+t 5,9 0 0164
+u 9,7 0 0165
+v 7,7 0 0166
+w 11,7 0 0167
+x 8,7 0 0170
+y 7,7,3 0 0171
+z 8,7 0 0172
+{ 6,11,2 0 0173
+lC "
+| 9,11 0 0174
+or "
+ba "
+} 6,11,2 0 0175
+rC "
+~ 9,6 0 0176
+a~ "
+ap "
+ti "
+r! 4,8,3 0 0241 &iexcl;
+¡ "
+ct 8,9,2 0 0242 &cent;
+¢ "
+Po 9,11 0 0243 &pound;
+£ "
+Cs 8,9 0 0244 &curren;
+¤ "
+Ye 9,11 0 0245 &yen;
+¥ "
+bb 8,11 0 0246 &brvbar;
+¦ "
+sc 7,11,2 0 0247 &sect;
+§ "
+ad 7,10 0 0250 &uml;
+¨ "
+co 13,11 0 0251 &copy;
+© "
+Of 6,11 0 0252 &ordf;
+ª "
+Fo 8,7 0 0253 &laquo;
+« "
+no 8,6 0 0254 &not;
+¬ "
+- 5,5 0 055 &shy;
+hy " &shy;
+­ "
+rg 13,11 0 0256 &reg;
+® "
+a- 6,9 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 8,8 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 4,11 0 0264 &acute;
+´ "
+µ 9,7,3 0 0265 &micro;
+ps 9,11 0 0266 &para;
+¶ "
+md 5,6 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 5,11 0 0271 &sup1;
+¹ "
+Om 6,11 0 0272 &ordm;
+º "
+Fc 8,7 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 12,11 0 0276 &frac34;
+¾ "
+r? 6,8,3 0 0277 &iquest;
+¿ "
+`A 11,14 0 0300 &Agrave;
+À "
+'A 11,14 0 0301 &Aacute;
+Á "
+^A 11,14 0 0302 &Acirc;
+Â "
+~A 11,14 0 0303 &Atilde;
+Ã "
+:A 11,14 0 0304 &Auml;
+Ä "
+oA 11,14 0 0305 &Aring;
+Å "
+AE 14,11 0 0306 &AElig;
+Æ "
+,C 10,11,3 0 0307 &Ccedil;
+Ç "
+`E 9,14 0 0310 &Egrave;
+È "
+'E 9,14 0 0311 &Eacute;
+É "
+^E 9,14 0 0312 &Ecirc;
+Ê "
+:E 9,14 0 0313 &Euml;
+Ë "
+`I 7,14 0 0314 &Igrave;
+Ì "
+'I 7,14 0 0315 &Iacute;
+Í "
+^I 7,14 0 0316 &Icirc;
+Î "
+:I 7,14 0 0317 &Iuml;
+Ï "
+-D 11,11 0 0320 &ETH;
+Ð "
+~N 12,14 0 0321 &Ntilde;
+Ñ "
+`O 10,14 0 0322 &Ograve;
+Ò "
+'O 10,14 0 0323 &Oacute;
+Ó "
+^O 10,14 0 0324 &Ocirc;
+Ô "
+~O 10,14 0 0325 &Otilde;
+Õ "
+:O 10,14 0 0326 &Ouml;
+Ö "
+mu 8,8 0 0327 &times;
+× "
+/O 10,11 0 0330 &Oslash;
+Ø "
+`U 12,14 0 0331 &Ugrave;
+Ù "
+'U 12,14 0 0332 &Uacute;
+Ú "
+^U 12,14 0 0333 &Ucirc;
+Û "
+:U 12,14 0 0334 &Uuml;
+Ü "
+'Y 9,14 0 0335 &Yacute;
+Ý "
+TP 10,11 0 0336 &THORN;
+Þ "
+ss 8,11,3 0 0337 &szlig;
+ß "
+`a 9,11 0 0340 &agrave;
+à "
+'a 9,11 0 0341 &aacute;
+á "
+^a 9,11 0 0342 &acirc;
+â "
+~a 9,10 0 0343 &atilde;
+ã "
+:a 9,10 0 0344 &auml;
+ä "
+oa 9,11 0 0345 &aring;
+å "
+ae 10,7 0 0346 &aelig;
+æ "
+,c 6,7,3 0 0347 &ccedil;
+ç "
+`e 6,11 0 0350 &egrave;
+è "
+'e 6,11 0 0351 &eacute;
+é "
+^e 6,11 0 0352 &ecirc;
+ê "
+:e 6,10 0 0353 &euml;
+ë "
+`i 4,11 0 0354 &igrave;
+ì "
+'i 4,11 0 0355 &iacute;
+í "
+^i 4,11 0 0356 &icirc;
+î "
+:i 4,10 0 0357 &iuml;
+ï "
+Sd 7,11 0 0360 &eth;
+ð "
+~n 9,10 0 0361 &ntilde;
+ñ "
+`o 7,11 0 0362 &ograve;
+ò "
+'o 7,11 0 0363 &oacute;
+ó "
+^o 7,11 0 0364 &ocirc;
+ô "
+~o 7,10 0 0365 &otilde;
+õ "
+:o 7,10 0 0366 &ouml;
+ö "
+di 8,8 0 0367 &divide;
+÷ "
+/o 7,8,1 0 0370 &oslash;
+ø "
+`u 9,11 0 0371 &ugrave;
+ù "
+'u 9,11 0 0372 &uacute;
+ú "
+^u 9,11 0 0373 &ucirc;
+û "
+:u 9,10 0 0374 &uuml;
+ü "
+'y 7,11,3 0 0375 &yacute;
+ý "
+Tp 7,11,3 0 0376 &thorn;
+þ "
+:y 7,10,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/NR b/font/devhtml/NR
new file mode 100755
index 000000000..8741cf499
--- /dev/null
+++ b/font/devhtml/NR
@@ -0,0 +1,306 @@
+name NR
+spacewidth 4
+charset
+--- 4,1 0 040
+! 3,11 0 041
+" 5,11 0 042 &quot;
+# 8,11 0 043
+sh "
+$ 8,12,2 0 044
+Do "
+% 12,11 0 045
+& 13,11 0 046 &amp;
+' 4,11 0 047
+( 5,11,2 0 050
+) 6,11,2 0 051
+* 7,11 0 052
++ 9,7 0 053
+, 4,2,2 0 054
+\- 9,4 0 055
+. 4,2 0 056
+/ 4,11 0 057
+sl "
+0 8,11 0 060
+1 8,11 0 061
+2 8,11 0 062
+3 8,11 0 063
+4 8,11 0 064
+5 8,11 0 065
+6 8,11 0 066
+7 8,11 0 067
+8 8,11 0 070
+9 8,11 0 071
+: 4,7 0 072
+; 4,7,2 0 073
+< 10,7 0 074 &lt;
+= 9,6 0 075
+eq "
+> 10,7 0 076 &gt;
+? 6,11 0 077
+@ 13,11 0 0100
+at "
+A 10,11 0 0101
+B 10,11 0 0102
+C 11,11 0 0103
+D 11,11 0 0104
+E 10,11 0 0105
+F 10,11 0 0106
+G 11,11 0 0107
+H 12,11 0 0110
+I 6,11 0 0111
+J 7,11 0 0112
+K 11,11 0 0113
+L 10,11 0 0114
+M 16,11 0 0115
+N 13,11 0 0116
+O 11,11 0 0117
+P 10,11 0 0120
+Q 11,11,2 0 0121
+R 11,11 0 0122
+S 8,11 0 0123
+T 10,11 0 0124
+U 13,11 0 0125
+V 10,11 0 0126
+W 16,11 0 0127
+X 13,11 0 0130
+Y 10,11 0 0131
+Z 9,11 0 0132
+[ 4,11,2 0 0133
+lB "
+\ 8,11 0 0134
+rs "
+] 4,11,2 0 0135
+rB "
+^ 7,11 0 0136
+a^ "
+ha "
+_ 7,0,2 0 0137
+` 4,11 0 0140
+oq "
+a 8,7 0 0141
+b 7,11 0 0142
+c 7,7 0 0143
+d 8,11 0 0144
+e 7,7 0 0145
+f 5,11 0 0146
+g 8,7,3 0 0147
+h 9,11 0 0150
+i 4,10 0 0151
+j 4,10,3 0 0152
+k 9,11 0 0153
+l 4,11 0 0154
+m 14,7 0 0155
+n 9,7 0 0156
+o 7,7 0 0157
+p 8,7,3 0 0160
+q 7,7,3 0 0161
+r 7,7 0 0162
+s 6,7 0 0163
+t 5,9 0 0164
+u 9,7 0 0165
+v 8,7 0 0166
+w 12,7 0 0167
+x 8,7 0 0170
+y 8,7,3 0 0171
+z 7,7 0 0172
+{ 4,11,2 0 0173
+lC "
+| 9,11 0 0174
+or "
+ba "
+} 5,11,2 0 0175
+rC "
+~ 9,5 0 0176
+a~ "
+ap "
+ti "
+r! 4,8,3 0 0241 &iexcl;
+¡ "
+ct 8,9,2 0 0242 &cent;
+¢ "
+Po 8,11 0 0243 &pound;
+£ "
+Cs 8,9 0 0244 &curren;
+¤ "
+Ye 8,11 0 0245 &yen;
+¥ "
+bb 9,11 0 0246 &brvbar;
+¦ "
+sc 7,11,2 0 0247 &sect;
+§ "
+ad 6,10 0 0250 &uml;
+¨ "
+co 14,11 0 0251 &copy;
+© "
+Of 6,11 0 0252 &ordf;
+ª "
+Fo 7,6 0 0253 &laquo;
+« "
+no 9,5 0 0254 &not;
+¬ "
+- 5,4 0 055 &shy;
+hy " &shy;
+­ "
+rg 14,11 0 0256 &reg;
+® "
+a- 5,9 0 0257 &macr;
+¯ "
+de 6,11 0 0260 &deg;
+° "
++- 9,7 0 0261 &plusmn;
+± "
+S2 5,11 0 0262 &sup2;
+² "
+S3 5,11 0 0263 &sup3;
+³ "
+aa 5,11 0 0264 &acute;
+´ "
+µ 9,7,3 0 0265 &micro;
+ps 9,11,2 0 0266 &para;
+¶ "
+md 4,5 0 0267 &middot;
+· "
+ac 5,1,3 0 0270 &cedil;
+¸ "
+S1 5,11 0 0271 &sup1;
+¹ "
+Om 5,11 0 0272 &ordm;
+º "
+Fc 7,6 0 0273 &raquo;
+» "
+14 12,11 0 0274 &frac14;
+¼ "
+12 12,11 0 0275 &frac12;
+½ "
+34 12,11 0 0276 &frac34;
+¾ "
+r? 6,8,3 0 0277 &iquest;
+¿ "
+`A 10,14 0 0300 &Agrave;
+À "
+'A 10,14 0 0301 &Aacute;
+Á "
+^A 10,14 0 0302 &Acirc;
+Â "
+~A 10,14 0 0303 &Atilde;
+Ã "
+:A 10,13 0 0304 &Auml;
+Ä "
+oA 10,14 0 0305 &Aring;
+Å "
+AE 15,11 0 0306 &AElig;
+Æ "
+,C 11,11,3 0 0307 &Ccedil;
+Ç "
+`E 10,14 0 0310 &Egrave;
+È "
+'E 10,14 0 0311 &Eacute;
+É "
+^E 10,14 0 0312 &Ecirc;
+Ê "
+:E 10,14 0 0313 &Euml;
+Ë "
+`I 6,14 0 0314 &Igrave;
+Ì "
+'I 6,14 0 0315 &Iacute;
+Í "
+^I 6,14 0 0316 &Icirc;
+Î "
+:I 6,14 0 0317 &Iuml;
+Ï "
+-D 11,11 0 0320 &ETH;
+Ð "
+~N 13,14 0 0321 &Ntilde;
+Ñ "
+`O 11,14 0 0322 &Ograve;
+Ò "
+'O 11,14 0 0323 &Oacute;
+Ó "
+^O 11,14 0 0324 &Ocirc;
+Ô "
+~O 11,14 0 0325 &Otilde;
+Õ "
+:O 11,14 0 0326 &Ouml;
+Ö "
+mu 9,7 0 0327 &times;
+× "
+/O 11,11 0 0330 &Oslash;
+Ø "
+`U 13,14 0 0331 &Ugrave;
+Ù "
+'U 13,14 0 0332 &Uacute;
+Ú "
+^U 13,14 0 0333 &Ucirc;
+Û "
+:U 13,14 0 0334 &Uuml;
+Ü "
+'Y 10,14 0 0335 &Yacute;
+Ý "
+TP 10,11 0 0336 &THORN;
+Þ "
+ss 8,11 0 0337 &szlig;
+ß "
+`a 8,11 0 0340 &agrave;
+à "
+'a 8,11 0 0341 &aacute;
+á "
+^a 8,11 0 0342 &acirc;
+â "
+~a 8,10 0 0343 &atilde;
+ã "
+:a 8,10 0 0344 &auml;
+ä "
+oa 8,11 0 0345 &aring;
+å "
+ae 12,7 0 0346 &aelig;
+æ "
+,c 7,7,3 0 0347 &ccedil;
+ç "
+`e 7,11 0 0350 &egrave;
+è "
+'e 7,11 0 0351 &eacute;
+é "
+^e 7,11 0 0352 &ecirc;
+ê "
+:e 7,10 0 0353 &euml;
+ë "
+`i 4,11 0 0354 &igrave;
+ì "
+'i 4,11 0 0355 &iacute;
+í "
+^i 4,11 0 0356 &icirc;
+î "
+:i 4,10 0 0357 &iuml;
+ï "
+Sd 7,11 0 0360 &eth;
+ð "
+~n 9,10 0 0361 &ntilde;
+ñ "
+`o 7,11 0 0362 &ograve;
+ò "
+'o 7,11 0 0363 &oacute;
+ó "
+^o 7,11 0 0364 &ocirc;
+ô "
+~o 7,10 0 0365 &otilde;
+õ "
+:o 7,10 0 0366 &ouml;
+ö "
+di 9,7 0 0367 &divide;
+÷ "
+/o 7,8,1 0 0370 &oslash;
+ø "
+`u 9,11 0 0371 &ugrave;
+ù "
+'u 9,11 0 0372 &uacute;
+ú "
+^u 9,11 0 0373 &ucirc;
+û "
+:u 9,10 0 0374 &uuml;
+ü "
+'y 8,11,3 0 0375 &yacute;
+ý "
+Tp 8,11,3 0 0376 &thorn;
+þ "
+:y 8,10,3 0 0377 &yuml;
+ÿ "
diff --git a/devhtml/S b/font/devhtml/S
index 59af889e1..59af889e1 100644..100755
--- a/devhtml/S
+++ b/font/devhtml/S
diff --git a/font/devhtml/TB b/font/devhtml/TB
new file mode 100755
index 000000000..0c31f24d0
--- /dev/null
+++ b/font/devhtml/TB
@@ -0,0 +1,306 @@
+name TB
+spacewidth 3
+charset
+--- 3,1 0 040
+! 4,10 0 041
+" 7,10 0 042 &quot;
+# 7,10 0 043
+sh "
+$ 7,11,1 0 044
+Do "
+% 14,10 0 045
+& 12,10 0 046 &amp;
+' 4,10 0 047
+( 5,10,3 0 050
+) 5,10,3 0 051
+* 7,10 0 052
++ 8,7 0 053
+, 3,2,2 0 054
+\- 9,4 0 055
+. 3,2 0 056
+/ 4,10 0 057
+sl "
+0 7,10 0 060
+1 7,10 0 061
+2 7,10 0 062
+3 7,10 0 063
+4 7,10 0 064
+5 7,10 0 065
+6 7,10 0 066
+7 7,10 0 067
+8 7,10 0 070
+9 7,10 0 071
+: 4,7 0 072
+; 4,7,2 0 073
+< 8,7 0 074 &lt;
+= 8,5 0 075
+eq "
+> 8,7 0 076 &gt;
+? 7,10 0 077
+@ 14,10,2 0 0100
+at "
+A 10,10 0 0101
+B 9,10 0 0102
+C 10,10 0 0103
+D 10,10 0 0104
+E 9,10 0 0105
+F 8,10 0 0106
+G 11,10 0 0107
+H 11,10 0 0110
+I 5,10 0 0111
+J 7,10,1 0 0112
+K 11,10 0 0113
+L 9,10 0 0114
+M 13,10 0 0115
+N 10,10 0 0116
+O 11,10 0 0117
+P 9,10 0 0120
+Q 11,10,3 0 0121
+R 10,10 0 0122
+S 8,10 0 0123
+T 9,10 0 0124
+U 10,10 0 0125
+V 10,10 0 0126
+W 14,10 0 0127
+X 10,10 0 0130
+Y 10,10 0 0131
+Z 9,10 0 0132
+[ 5,10,3 0 0133
+lB "
+\ 4,10 0 0134
+rs "
+] 5,10,3 0 0135
+rB "
+^ 8,10 0 0136
+a^ "
+ha "
+_ 7,0,3 0 0137
+` 4,10 0 0140
+oq "
+a 7,7 0 0141
+b 8,10 0 0142
+c 6,7 0 0143
+d 7,10 0 0144
+e 6,7 0 0145
+f 5,10 0 0146
+g 7,7,3 0 0147
+h 8,10 0 0150
+i 4,10 0 0151
+j 4,10,3 0 0152
+k 8,10 0 0153
+l 4,10 0 0154
+m 12,7 0 0155
+n 8,7 0 0156
+o 7,7 0 0157
+p 8,7,3 0 0160
+q 7,7,3 0 0161
+r 6,7 0 0162
+s 6,7 0 0163
+t 5,9 0 0164
+u 7,7 0 0165
+v 7,7 0 0166
+w 10,7 0 0167
+x 7,7 0 0170
+y 7,7,3 0 0171
+z 6,7 0 0172
+{ 7,10,3 0 0173
+lC "
+| 3,10,2 0 0174
+or "
+ba "
+} 7,10,3 0 0175
+rC "
+~ 8,7 0 0176
+a~ "
+ap "
+ti "
+r! 4,7,3 0 0241 &iexcl;
+¡ "
+ct 7,9,2 0 0242 &cent;
+¢ "
+Po 8,10 0 0243 &pound;
+£ "
+Cs 8,8 0 0244 &curren;
+¤ "
+Ye 8,10 0 0245 &yen;
+¥ "
+bb 3,10,2 0 0246 &brvbar;
+¦ "
+sc 7,10,2 0 0247 &sect;
+§ "
+ad 5,10 0 0250 &uml;
+¨ "
+co 12,10 0 0251 &copy;
+© "
+Of 5,10 0 0252 &ordf;
+ª "
+Fo 9,6 0 0253 &laquo;
+« "
+no 9,5 0 0254 &not;
+¬ "
+- 4,4 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,10 0 0256 &reg;
+® "
+a- 5,9 0 0257 &macr;
+¯ "
+de 6,10 0 0260 &deg;
+° "
++- 8,9 0 0261 &plusmn;
+± "
+S2 4,10 0 0262 &sup2;
+² "
+S3 4,10 0 0263 &sup3;
+³ "
+aa 5,11 0 0264 &acute;
+´ "
+µ 7,7,3 0 0265 &micro;
+ps 8,10,3 0 0266 &para;
+¶ "
+md 4,6 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 4,10 0 0271 &sup1;
+¹ "
+Om 5,10 0 0272 &ordm;
+º "
+Fc 9,6 0 0273 &raquo;
+» "
+14 10,10 0 0274 &frac14;
+¼ "
+12 10,10 0 0275 &frac12;
+½ "
+34 10,10 0 0276 &frac34;
+¾ "
+r? 7,7,3 0 0277 &iquest;
+¿ "
+`A 10,14 0 0300 &Agrave;
+À "
+'A 10,14 0 0301 &Aacute;
+Á "
+^A 10,14 0 0302 &Acirc;
+Â "
+~A 10,13 0 0303 &Atilde;
+Ã "
+:A 10,13 0 0304 &Auml;
+Ä "
+oA 10,14 0 0305 &Aring;
+Å "
+AE 14,10 0 0306 &AElig;
+Æ "
+,C 10,10,3 0 0307 &Ccedil;
+Ç "
+`E 9,14 0 0310 &Egrave;
+È "
+'E 9,14 0 0311 &Eacute;
+É "
+^E 9,14 0 0312 &Ecirc;
+Ê "
+:E 9,13 0 0313 &Euml;
+Ë "
+`I 5,14 0 0314 &Igrave;
+Ì "
+'I 5,14 0 0315 &Iacute;
+Í "
+^I 5,14 0 0316 &Icirc;
+Î "
+:I 5,13 0 0317 &Iuml;
+Ï "
+-D 11,10 0 0320 &ETH;
+Ð "
+~N 10,13 0 0321 &Ntilde;
+Ñ "
+`O 11,14 0 0322 &Ograve;
+Ò "
+'O 11,14 0 0323 &Oacute;
+Ó "
+^O 11,14 0 0324 &Ocirc;
+Ô "
+~O 11,13 0 0325 &Otilde;
+Õ "
+:O 11,13 0 0326 &Ouml;
+Ö "
+mu 8,7 0 0327 &times;
+× "
+/O 11,11,1 0 0330 &Oslash;
+Ø "
+`U 10,14 0 0331 &Ugrave;
+Ù "
+'U 10,14 0 0332 &Uacute;
+Ú "
+^U 10,14 0 0333 &Ucirc;
+Û "
+:U 10,13 0 0334 &Uuml;
+Ü "
+'Y 10,14 0 0335 &Yacute;
+Ý "
+TP 9,10 0 0336 &THORN;
+Þ "
+ss 8,10 0 0337 &szlig;
+ß "
+`a 7,11 0 0340 &agrave;
+à "
+'a 7,11 0 0341 &aacute;
+á "
+^a 7,11 0 0342 &acirc;
+â "
+~a 7,10 0 0343 &atilde;
+ã "
+:a 7,10 0 0344 &auml;
+ä "
+oa 7,11 0 0345 &aring;
+å "
+ae 11,7 0 0346 &aelig;
+æ "
+,c 7,7,3 0 0347 &ccedil;
+ç "
+`e 7,11 0 0350 &egrave;
+è "
+'e 7,11 0 0351 &eacute;
+é "
+^e 7,11 0 0352 &ecirc;
+ê "
+:e 7,10 0 0353 &euml;
+ë "
+`i 4,11 0 0354 &igrave;
+ì "
+'i 4,11 0 0355 &iacute;
+í "
+^i 4,11 0 0356 &icirc;
+î "
+:i 4,10 0 0357 &iuml;
+ï "
+Sd 7,10 0 0360 &eth;
+ð "
+~n 8,10 0 0361 &ntilde;
+ñ "
+`o 7,11 0 0362 &ograve;
+ò "
+'o 7,11 0 0363 &oacute;
+ó "
+^o 7,11 0 0364 &ocirc;
+ô "
+~o 7,10 0 0365 &otilde;
+õ "
+:o 7,10 0 0366 &ouml;
+ö "
+di 8,7 0 0367 &divide;
+÷ "
+/o 7,8,1 0 0370 &oslash;
+ø "
+`u 7,11 0 0371 &ugrave;
+ù "
+'u 7,11 0 0372 &uacute;
+ú "
+^u 7,11 0 0373 &ucirc;
+û "
+:u 7,10 0 0374 &uulm;
+ü "
+'y 7,11,3 0 0375 &yacute;
+ý "
+Tp 8,10,3 0 0376 &thorn;
+þ "
+:y 7,10,3 0 0377 &yuml;
+ÿ "
diff --git a/devhtml/TBI b/font/devhtml/TBI
index 56c55cf30..56c55cf30 100644..100755
--- a/devhtml/TBI
+++ b/font/devhtml/TBI
diff --git a/font/devhtml/TI b/font/devhtml/TI
new file mode 100755
index 000000000..c400a0ef3
--- /dev/null
+++ b/font/devhtml/TI
@@ -0,0 +1,306 @@
+name TI
+spacewidth 3
+charset
+--- 3,1 0 040
+! 5,10 0 041
+" 6,10 0 042 &quot;
+# 7,10 0 043
+sh "
+$ 7,11,1 0 044
+Do "
+% 12,10 0 045
+& 11,10 0 046 &amp;
+' 5,10 0 047
+( 5,10,3 0 050
+) 5,10,3 0 051
+* 7,10 0 052
++ 10,7 0 053
+, 4,2,1 0 054
+\- 9,4 0 055
+. 3,2 0 056
+/ 4,10 0 057
+sl "
+0 7,10 0 060
+1 7,10 0 061
+2 7,10 0 062
+3 7,10 0 063
+4 7,10 0 064
+5 7,10 0 065
+6 7,10 0 066
+7 7,10 0 067
+8 7,10 0 070
+9 7,10 0 071
+: 4,7 0 072
+; 4,7,1 0 073
+< 10,7,1 0 074 &lt;
+= 10,5 0 075
+eq "
+> 10,7,1 0 076 &gt;
+? 7,10 0 077
+@ 13,10,3 0 0100
+at "
+A 9,10 0 0101
+B 8,10 0 0102
+C 9,10 0 0103
+D 10,10 0 0104
+E 9,10 0 0105
+F 9,10 0 0106
+G 10,10 0 0107
+H 10,10 0 0110
+I 5,10 0 0111
+J 6,10 0 0112
+K 10,10 0 0113
+L 8,10 0 0114
+M 12,10 0 0115
+N 11,10 0 0116
+O 10,10 0 0117
+P 9,10 0 0120
+Q 10,10,3 0 0121
+R 9,10 0 0122
+S 7,10 0 0123
+T 8,10 0 0124
+U 10,10 0 0125
+V 9,10 0 0126
+W 11,10 0 0127
+X 9,10 0 0130
+Y 8,10 0 0131
+Z 8,10 0 0132
+[ 6,10,3 0 0133
+lB "
+\ 4,10 0 0134
+rs "
+] 6,10,3 0 0135
+rB "
+^ 6,10 0 0136
+a^ "
+ha "
+_ 7,0,4 0 0137
+` 5,10 0 0140
+oq "
+a 7,7 0 0141
+b 7,10 0 0142
+c 6,7 0 0143
+d 7,10 0 0144
+e 7,7 0 0145
+f 5,10,3 0 0146
+g 6,7,3 0 0147
+h 7,10 0 0150
+i 4,10 0 0151
+j 4,10,3 0 0152
+k 7,10 0 0153
+l 4,10 0 0154
+m 10,7 0 0155
+n 7,7 0 0156
+o 7,7 0 0157
+p 7,7,3 0 0160
+q 7,7,3 0 0161
+r 5,7 0 0162
+s 6,7 0 0163
+t 5,9 0 0164
+u 7,7 0 0165
+v 6,7 0 0166
+w 9,7 0 0167
+x 7,7 0 0170
+y 7,7,3 0 0171
+z 6,7 0 0172
+{ 6,10,3 0 0173
+lC "
+| 4,10,3 0 0174
+or "
+ba "
+} 6,10,3 0 0175
+rC "
+~ 8,5 0 0176
+a~ "
+ap "
+ti "
+r! 6,7,3 0 0241 &iexcl;
+¡ "
+ct 7,9,2 0 0242 &cent;
+¢ "
+Po 7,10 0 0243 &pound;
+£ "
+Cs 7,8 0 0244 &curren;
+¤ "
+Ye 7,10 0 0245 &yen;
+¥ "
+bb 4,10,3 0 0246 &brvbar;
+¦ "
+sc 7,11,2 0 0247 &sect;
+§ "
+ad 5,10 0 0250 &uml;
+¨ "
+co 12,10 0 0251 &copy;
+© "
+Of 5,10 0 0252 &ordf;
+ª "
+Fo 7,6 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 5,4 0 055 &shy;
+hy " &shy;
+­ "
+rg 12,10 0 0256 &reg;
+® "
+a- 5,10 0 0257 &macr;
+¯ "
+de 6,10 0 0260 &deg;
+° "
++- 10,9 0 0261 &plusmn;
+± "
+S2 4,10 0 0262 &sup2;
+² "
+S3 4,10 0 0263 &sup3;
+³ "
+aa 4,10 0 0264 &acute;
+´ "
+µ 7,7,3 0 0265 &micro;
+ps 8,10,3 0 0266 &para;
+¶ "
+md 4,4 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 4,10 0 0271 &sup1;
+¹ "
+Om 5,10 0 0272 &ordm;
+º "
+Fc 7,6 0 0273 &raquo;
+» "
+14 10,10 0 0274 &frac14;
+¼ "
+12 10,10 0 0275 &frac12;
+½ "
+34 10,10 0 0276 &frac34;
+¾ "
+r? 7,7,3 0 0277 &iquest;
+¿ "
+`A 9,13 0 0300 &Agrave;
+À "
+'A 9,13 0 0301 &Aacute;
+Á "
+^A 9,13 0 0302 &Acirc;
+Â "
+~A 9,13 0 0303 &Atilde;
+Ã "
+:A 9,12 0 0304 &Auml;
+Ä "
+oA 9,13 0 0305 &Aring;
+Å "
+AE 13,10 0 0306 &AElig;
+Æ "
+,C 9,10,3 0 0307 &Ccedil;
+Ç "
+`E 9,13 0 0310 &Egrave;
+È "
+'E 9,13 0 0311 &Eacute;
+É "
+^E 9,13 0 0312 &Ecirc;
+Ê "
+:E 9,12 0 0313 &Euml;
+Ë "
+`I 5,13 0 0314 &Igrave;
+Ì "
+'I 5,13 0 0315 &Iacute;
+Í "
+^I 5,13 0 0316 &Icirc;
+Î "
+:I 5,12 0 0317 &Iuml;
+Ï "
+-D 10,10 0 0320 &ETH;
+Ð "
+~N 11,13 0 0321 &Ntilde;
+Ñ "
+`O 10,13 0 0322 &Ograve;
+Ò "
+'O 10,13 0 0323 &Oacute;
+Ó "
+^O 10,13 0 0324 &Ocirc;
+Ô "
+~O 10,13 0 0325 &Otilde;
+Õ "
+:O 10,12 0 0326 &Ouml;
+Ö "
+mu 10,7 0 0327 &times;
+× "
+/O 10,11,1 0 0330 &Oslash;
+Ø "
+`U 10,13 0 0331 &Ugrave;
+Ù "
+'U 10,13 0 0332 &Uacute;
+Ú "
+^U 10,13 0 0333 &Ucirc;
+Û "
+:U 10,12 0 0334 &Uuml;
+Ü "
+'Y 8,13 0 0335 &Yacute;
+Ý "
+TP 9,10 0 0336 &THORN;
+Þ "
+ss 7,10,3 0 0337 &szlig;
+ß "
+`a 7,10 0 0340 &agrave;
+à "
+'a 7,10 0 0341 &aacute;
+á "
+^a 7,11 0 0342 &acirc;
+â "
+~a 7,10 0 0343 &atilde;
+ã "
+:a 7,9 0 0344 &auml;
+ä "
+oa 7,10 0 0345 &aring;
+å "
+ae 10,7 0 0346 &aelig;
+æ "
+,c 6,7,3 0 0347 &ccedil;
+ç "
+`e 7,10 0 0350 &egrave;
+è "
+'e 7,10 0 0351 &eacute;
+é "
+^e 7,11 0 0352 &ecirc;
+ê "
+:e 7,9 0 0353 &euml;
+ë "
+`i 4,10 0 0354 &igrave;
+ì "
+'i 4,10 0 0355 &iacute;
+í "
+^i 4,11 0 0356 &icirc;
+î "
+:i 4,9 0 0357 &iuml;
+ï "
+Sd 7,10 0 0360 &eth;
+ð "
+~n 7,10 0 0361 &ntilde;
+ñ "
+`o 7,10 0 0362 &ograve;
+ò "
+'o 7,10 0 0363 &oacute;
+ó "
+^o 7,11 0 0364 &ocirc;
+ô "
+~o 7,10 0 0365 &otilde;
+õ "
+:o 7,9 0 0366 &ouml;
+ö "
+di 10,7 0 0367 &divide;
+÷ "
+/o 7,8,1 0 0370 &oslash;
+ø "
+`u 7,10 0 0371 &ugrave;
+ù "
+'u 7,10 0 0372 &uacute;
+ú "
+^u 7,11 0 0373 &ucirc;
+û "
+:u 7,9 0 0374 &uulm;
+ü "
+'y 7,10,3 0 0375 &yacute;
+ý "
+Tp 7,10,3 0 0376 &thorn;
+þ "
+:y 7,9,3 0 0377 &yuml;
+ÿ "
diff --git a/font/devhtml/TR b/font/devhtml/TR
new file mode 100755
index 000000000..ff1076ffb
--- /dev/null
+++ b/font/devhtml/TR
@@ -0,0 +1,306 @@
+name TR
+spacewidth 3
+charset
+--- 3,1 0 040
+! 5,10 0 041
+" 6,10 0 042 &quot;
+# 7,10 0 043
+sh "
+$ 7,11,1 0 044
+Do "
+% 12,10 0 045
+& 11,10 0 046 &amp;
+' 4,10 0 047
+( 5,10,3 0 050
+) 5,10,3 0 051
+* 7,10 0 052
++ 8,7 0 053
+, 4,1,2 0 054
+\- 9,4 0 055
+. 4,1 0 056
+/ 4,10,2 0 057
+sl "
+0 7,10 0 060
+1 7,10 0 061
+2 7,10 0 062
+3 7,10 0 063
+4 7,10 0 064
+5 7,10 0 065
+6 7,10 0 066
+7 7,10 0 067
+8 7,10 0 070
+9 7,10 0 071
+: 4,7 0 072
+; 4,7,2 0 073
+< 8,7 0 074 &lt;
+= 8,5 0 075
+eq "
+> 8,7 0 076 &gt;
+? 6,10 0 077
+@ 13,10,2 0 0100
+at "
+A 11,10 0 0101
+B 9,10 0 0102
+C 10,10 0 0103
+D 10,10 0 0104
+E 9,10 0 0105
+F 8,10 0 0106
+G 11,10 0 0107
+H 10,10 0 0110
+I 5,10 0 0111
+J 6,10 0 0112
+K 10,10 0 0113
+L 9,10 0 0114
+M 13,10 0 0115
+N 11,10 0 0116
+O 10,10 0 0117
+P 8,10 0 0120
+Q 10,10,3 0 0121
+R 9,10 0 0122
+S 8,10 0 0123
+T 9,10 0 0124
+U 10,10 0 0125
+V 9,10 0 0126
+W 13,10 0 0127
+X 10,10 0 0130
+Y 9,10 0 0131
+Z 8,10 0 0132
+[ 5,10,3 0 0133
+lB "
+\ 4,10 0 0134
+rs "
+] 5,10,3 0 0135
+rB "
+^ 7,10 0 0136
+a^ "
+ha "
+_ 7,0,3 0 0137
+` 4,10 0 0140
+oq "
+a 7,7 0 0141
+b 7,10 0 0142
+c 7,7 0 0143
+d 7,10 0 0144
+e 7,7 0 0145
+f 4,10 0 0146
+g 7,7,3 0 0147
+h 7,10 0 0150
+i 3,10 0 0151
+j 4,10,3 0 0152
+k 7,10 0 0153
+l 3,10 0 0154
+m 11,7 0 0155
+n 7,7 0 0156
+o 7,7 0 0157
+p 7,7,3 0 0160
+q 7,7,3 0 0161
+r 5,7 0 0162
+s 6,7 0 0163
+t 4,8 0 0164
+u 7,7 0 0165
+v 7,7 0 0166
+w 11,7 0 0167
+x 7,7 0 0170
+y 7,7,3 0 0171
+z 6,7 0 0172
+{ 7,10,3 0 0173
+lC "
+| 3,10 0 0174
+or "
+ba "
+} 7,10,3 0 0175
+rC "
+~ 8,5 0 0176
+a~ "
+ap "
+ti "
+r! 5,7,3 0 0241 &iexcl;
+¡ "
+ct 7,8,1 0 0242 &cent;
+¢ "
+Po 8,10 0 0243 &pound;
+£ "
+Cs 7,8 0 0244 &curren;
+¤ "
+Ye 7,10 0 0245 &yen;
+¥ "
+bb 3,10 0 0246 &brvbar;
+¦ "
+sc 7,10,3 0 0247 &sect;
+§ "
+ad 5,10 0 0250 &uml;
+¨ "
+co 12,10 0 0251 &copy;
+© "
+Of 4,10 0 0252 &ordf;
+ª "
+Fo 7,6 0 0253 &laquo;
+« "
+no 9,6 0 0254 &not;
+¬ "
+- 4,4 0 0255 &shy;
+hy 4,4 0 0255 &shy;
+­ "
+rg 12,10 0 0256 &reg;
+® "
+a- 4,9 0 0257 &macr;
+¯ "
+de 6,10 0 0260 &deg;
+° "
++- 8,7 0 0261 &plusmn;
+± "
+S2 4,10 0 0262 &sup2;
+² "
+S3 4,10 0 0263 &sup3;
+³ "
+aa 5,11 0 0264 &acute;
+´ "
+µ 7,7,3 0 0265 &micro;
+ps 7,10,3 0 0266 &para;
+¶ "
+md 4,5 0 0267 &middot;
+· "
+ac 5,0,3 0 0270 &cedil;
+¸ "
+S1 4,10 0 0271 &sup1;
+¹ "
+Om 5,10 0 0272 &ordm;
+º "
+Fc 7,6 0 0273 &raquo;
+» "
+14 10,10 0 0274 &frac14;
+¼ "
+12 10,10 0 0275 &frac12;
+½ "
+34 10,10 0 0276 &frac34;
+¾ "
+r? 6,7,3 0 0277 &iquest;
+¿ "
+`A 11,14 0 0300 &Agrave;
+À "
+'A 11,14 0 0301 &Aacute;
+Á "
+^A 11,14 0 0302 &Acirc;
+Â "
+~A 11,14 0 0303 &Atilde;
+Ã "
+:A 11,13 0 0304 &Auml;
+Ä "
+oA 11,14 0 0305 &Aring;
+Å "
+AE 13,10 0 0306 &AElig;
+Æ "
+,C 10,10,3 0 0307 &Ccedil;
+Ç "
+`E 9,14 0 0310 &Egrave;
+È "
+'E 9,14 0 0311 &Eacute;
+É "
+^E 9,14 0 0312 &Ecirc;
+Ê "
+:E 9,13 0 0313 &Euml;
+Ë "
+`I 5,14 0 0314 &Igrave;
+Ì "
+'I 5,14 0 0315 &Iacute;
+Í "
+^I 5,14 0 0316 &Icirc;
+Î "
+:I 5,13 0 0317 &Iuml;
+Ï "
+-D 10,10 0 0320 &ETH;
+Ð "
+~N 11,14 0 0321 &Ntilde;
+Ñ "
+`O 10,14 0 0322 &Ograve;
+Ò "
+'O 10,14 0 0323 &Oacute;
+Ó "
+^O 10,14 0 0324 &Ocirc;
+Ô "
+~O 10,14 0 0325 &Otilde;
+Õ "
+:O 10,13 0 0326 &Ouml;
+Ö "
+mu 8,7 0 0327 &times;
+× "
+/O 10,11,1 0 0330 &Oslash;
+Ø "
+`U 10,14 0 0331 &Ugrave;
+Ù "
+'U 10,14 0 0332 &Uacute;
+Ú "
+^U 10,14 0 0333 &Ucirc;
+Û "
+:U 10,13 0 0334 &Uuml;
+Ü "
+'Y 9,14 0 0335 &Yacute;
+Ý "
+TP 8,10 0 0336 &THORN;
+Þ "
+ss 7,10 0 0337 &szlig;
+ß "
+`a 7,11 0 0340 &agrave;
+à "
+'a 7,11 0 0341 &aacute;
+á "
+^a 7,11 0 0342 &acirc;
+â "
+~a 7,11 0 0343 &atilde;
+ã "
+:a 7,10 0 0344 &auml;
+ä "
+oa 7,11 0 0345 &aring;
+å "
+ae 11,7 0 0346 &aelig;
+æ "
+,c 7,7,3 0 0347 &ccedil;
+ç "
+`e 7,11 0 0350 &egrave;
+è "
+'e 7,11 0 0351 &eacute;
+é "
+^e 7,11 0 0352 &ecirc;
+ê "
+:e 7,10 0 0353 &euml;
+ë "
+`i 3,11 0 0354 &igrave;
+ì "
+'i 3,11 0 0355 &iacute;
+í "
+^i 3,11 0 0356 &icirc;
+î "
+:i 3,10 0 0357 &iuml;
+ï "
+Sd 7,10 0 0360 &eth;
+ð "
+~n 7,11 0 0361 &ntilde;
+ñ "
+`o 7,11 0 0362 &ograve;
+ò "
+'o 7,11 0 0363 &oacute;
+ó "
+^o 7,11 0 0364 &ocirc;
+ô "
+~o 7,11 0 0365 &otilde;
+õ "
+:o 7,10 0 0366 &ouml;
+ö "
+di 8,7 0 0367 &divide;
+÷ "
+/o 7,8,1 0 0370 &oslash;
+ø "
+`u 7,11 0 0371 &ugrave;
+ù "
+'u 7,11 0 0372 &uacute;
+ú "
+^u 7,11 0 0373 &ucirc;
+û "
+:u 7,10 0 0374 &uuml;
+ü "
+'y 7,11,3 0 0375 &yacute;
+ý "
+Tp 7,10,3 0 0376 &thorn;
+þ "
+:y 7,10,3 0 0377 &yuml;
+ÿ "
diff --git a/devlatin1/DESC.proto b/font/devlatin1/DESC.proto
index 88399ab16..88399ab16 100644
--- a/devlatin1/DESC.proto
+++ b/font/devlatin1/DESC.proto
diff --git a/devlatin1/Makefile.sub b/font/devlatin1/Makefile.sub
index 25de3f772..25de3f772 100644
--- a/devlatin1/Makefile.sub
+++ b/font/devlatin1/Makefile.sub
diff --git a/devlatin1/R.proto b/font/devlatin1/R.proto
index 29a88754b..29a88754b 100644
--- a/devlatin1/R.proto
+++ b/font/devlatin1/R.proto
diff --git a/devlj4/ALBB b/font/devlj4/ALBB
index 0d1ea4ec2..0d1ea4ec2 100644
--- a/devlj4/ALBB
+++ b/font/devlj4/ALBB
diff --git a/devlj4/ALBR b/font/devlj4/ALBR
index 4e384ded0..4e384ded0 100644
--- a/devlj4/ALBR
+++ b/font/devlj4/ALBR
diff --git a/devlj4/AOB b/font/devlj4/AOB
index 954d8afbb..954d8afbb 100644
--- a/devlj4/AOB
+++ b/font/devlj4/AOB
diff --git a/devlj4/AOI b/font/devlj4/AOI
index f1b9ca71a..f1b9ca71a 100644
--- a/devlj4/AOI
+++ b/font/devlj4/AOI
diff --git a/devlj4/AOR b/font/devlj4/AOR
index 2f2b6d796..2f2b6d796 100644
--- a/devlj4/AOR
+++ b/font/devlj4/AOR
diff --git a/devlj4/CB b/font/devlj4/CB
index 3d060f347..3d060f347 100644
--- a/devlj4/CB
+++ b/font/devlj4/CB
diff --git a/devlj4/CBI b/font/devlj4/CBI
index 14f2aa95c..14f2aa95c 100644
--- a/devlj4/CBI
+++ b/font/devlj4/CBI
diff --git a/devlj4/CI b/font/devlj4/CI
index 5e87918ba..5e87918ba 100644
--- a/devlj4/CI
+++ b/font/devlj4/CI
diff --git a/devlj4/CLARENDON b/font/devlj4/CLARENDON
index f5936b591..f5936b591 100644
--- a/devlj4/CLARENDON
+++ b/font/devlj4/CLARENDON
diff --git a/devlj4/CORONET b/font/devlj4/CORONET
index e892e18cd..e892e18cd 100644
--- a/devlj4/CORONET
+++ b/font/devlj4/CORONET
diff --git a/devlj4/CR b/font/devlj4/CR
index 9a87b1a3f..9a87b1a3f 100644
--- a/devlj4/CR
+++ b/font/devlj4/CR
diff --git a/devlj4/DESC.in b/font/devlj4/DESC.in
index b726647f6..b726647f6 100644
--- a/devlj4/DESC.in
+++ b/font/devlj4/DESC.in
diff --git a/devlj4/GB b/font/devlj4/GB
index 3c7045519..3c7045519 100644
--- a/devlj4/GB
+++ b/font/devlj4/GB
diff --git a/devlj4/GBI b/font/devlj4/GBI
index 9a507ce8d..9a507ce8d 100644
--- a/devlj4/GBI
+++ b/font/devlj4/GBI
diff --git a/devlj4/GI b/font/devlj4/GI
index d8bb19d21..d8bb19d21 100644
--- a/devlj4/GI
+++ b/font/devlj4/GI
diff --git a/devlj4/GR b/font/devlj4/GR
index 448d19a95..448d19a95 100644
--- a/devlj4/GR
+++ b/font/devlj4/GR
diff --git a/devlj4/LGB b/font/devlj4/LGB
index 89c969152..89c969152 100644
--- a/devlj4/LGB
+++ b/font/devlj4/LGB
diff --git a/devlj4/LGI b/font/devlj4/LGI
index 492b52c0e..492b52c0e 100644
--- a/devlj4/LGI
+++ b/font/devlj4/LGI
diff --git a/devlj4/LGR b/font/devlj4/LGR
index e4b1fcb88..e4b1fcb88 100644
--- a/devlj4/LGR
+++ b/font/devlj4/LGR
diff --git a/devlj4/MARIGOLD b/font/devlj4/MARIGOLD
index 60976ca2d..60976ca2d 100644
--- a/devlj4/MARIGOLD
+++ b/font/devlj4/MARIGOLD
diff --git a/devlj4/Makefile.sub b/font/devlj4/Makefile.sub
index c4e850bff..dd49b637d 100644
--- a/devlj4/Makefile.sub
+++ b/font/devlj4/Makefile.sub
@@ -30,4 +30,4 @@ DESC: DESC.in
fonts:
$(MAKE) -f $(srcdir)/generate/Makefile srcdir=$(srcdir)/generate \
- HPFTODIT=../hpftodit/hpftodit
+ HPFTODIT=$(top_builddir)/src/utils/hpftodit/hpftodit
diff --git a/devlj4/OB b/font/devlj4/OB
index 093e0bb25..093e0bb25 100644
--- a/devlj4/OB
+++ b/font/devlj4/OB
diff --git a/devlj4/OBI b/font/devlj4/OBI
index 918e0f450..918e0f450 100644
--- a/devlj4/OBI
+++ b/font/devlj4/OBI
diff --git a/devlj4/OI b/font/devlj4/OI
index 6e17dff15..6e17dff15 100644
--- a/devlj4/OI
+++ b/font/devlj4/OI
diff --git a/devlj4/OR b/font/devlj4/OR
index 140d98402..140d98402 100644
--- a/devlj4/OR
+++ b/font/devlj4/OR
diff --git a/devlj4/S b/font/devlj4/S
index 599867f60..599867f60 100644
--- a/devlj4/S
+++ b/font/devlj4/S
diff --git a/devlj4/TB b/font/devlj4/TB
index c352b153d..c352b153d 100644
--- a/devlj4/TB
+++ b/font/devlj4/TB
diff --git a/devlj4/TBI b/font/devlj4/TBI
index 59300fe80..59300fe80 100644
--- a/devlj4/TBI
+++ b/font/devlj4/TBI
diff --git a/devlj4/TI b/font/devlj4/TI
index ee43c0bc2..ee43c0bc2 100644
--- a/devlj4/TI
+++ b/font/devlj4/TI
diff --git a/devlj4/TR b/font/devlj4/TR
index 03d63fb76..03d63fb76 100644
--- a/devlj4/TR
+++ b/font/devlj4/TR
diff --git a/devlj4/UB b/font/devlj4/UB
index 554e71be1..554e71be1 100644
--- a/devlj4/UB
+++ b/font/devlj4/UB
diff --git a/devlj4/UBI b/font/devlj4/UBI
index 3c3b77e47..3c3b77e47 100644
--- a/devlj4/UBI
+++ b/font/devlj4/UBI
diff --git a/devlj4/UCB b/font/devlj4/UCB
index c67dc51bd..c67dc51bd 100644
--- a/devlj4/UCB
+++ b/font/devlj4/UCB
diff --git a/devlj4/UCBI b/font/devlj4/UCBI
index ceef7343e..ceef7343e 100644
--- a/devlj4/UCBI
+++ b/font/devlj4/UCBI
diff --git a/devlj4/UCI b/font/devlj4/UCI
index 9e26536f7..9e26536f7 100644
--- a/devlj4/UCI
+++ b/font/devlj4/UCI
diff --git a/devlj4/UCR b/font/devlj4/UCR
index 6684eae2c..6684eae2c 100644
--- a/devlj4/UCR
+++ b/font/devlj4/UCR
diff --git a/devlj4/UI b/font/devlj4/UI
index 00b953c7e..00b953c7e 100644
--- a/devlj4/UI
+++ b/font/devlj4/UI
diff --git a/devlj4/UR b/font/devlj4/UR
index a4cf9ff7b..a4cf9ff7b 100644
--- a/devlj4/UR
+++ b/font/devlj4/UR
diff --git a/devlj4/generate/Makefile b/font/devlj4/generate/Makefile
index 09c6ac0a6..09c6ac0a6 100644
--- a/devlj4/generate/Makefile
+++ b/font/devlj4/generate/Makefile
diff --git a/devlj4/generate/special.map b/font/devlj4/generate/special.map
index ea23337b4..ea23337b4 100644
--- a/devlj4/generate/special.map
+++ b/font/devlj4/generate/special.map
diff --git a/devlj4/generate/text.map b/font/devlj4/generate/text.map
index fc70b63db..fc70b63db 100644
--- a/devlj4/generate/text.map
+++ b/font/devlj4/generate/text.map
diff --git a/font/devps/AB b/font/devps/AB
new file mode 100644
index 000000000..9ff0dff76
--- /dev/null
+++ b/font/devps/AB
@@ -0,0 +1,559 @@
+name AB
+internalname AvantGarde-Demi
+spacewidth 280
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -50
+A w -65
+A v -70
+A u -20
+A ' -90
+A Y -80
+A W -60
+A V -102
+A U -40
+A T -25
+A Q -50
+A O -50
+A G -40
+A C -40
+B A -10
+C A -40
+D . -20
+D , -20
+D Y -45
+D W -25
+D V -50
+D A -50
+F . -129
+F e -20
+F , -162
+F a -20
+F A -75
+G . -20
+G , -20
+G Y -15
+J . -15
+J a -20
+J A -30
+K y -20
+K u -15
+K o -45
+K e -40
+K O -30
+L y -23
+L ' -30
+L rq -30
+L Y -80
+L W -55
+L V -85
+L T -46
+O . -30
+O , -30
+O Y -30
+O X -30
+O W -20
+O V -45
+O T -15
+O A -60
+P . -200
+P o -20
+P e -20
+P , -220
+P a -20
+P A -100
+Q , 20
+R W 25
+R V -10
+R U 25
+R T 40
+R O 25
+S , 20
+T y -10
+T w -55
+T u -46
+T ; -29
+T r -30
+T . -91
+T o -49
+T - -75
+T hy -75
+T char173 -75
+T e -49
+T , -82
+T : -15
+T a -70
+T O -15
+T A -25
+U . -20
+U , -20
+U A -40
+V u -55
+V ; -33
+V . -145
+V o -101
+V i -15
+V - -75
+V hy -75
+V char173 -75
+V e -101
+V , -145
+V : -18
+V a -95
+V O -45
+V G -20
+V A -102
+W y -15
+W u -30
+W ; -33
+W . -106
+W o -46
+W i -10
+W - -35
+W hy -35
+W char173 -35
+W e -47
+W , -106
+W : -15
+W a -50
+W O -20
+W A -58
+Y u -52
+Y ; -23
+Y . -145
+Y o -89
+Y - -100
+Y hy -100
+Y char173 -100
+Y e -89
+Y , -145
+Y : -10
+Y a -93
+Y O -30
+Y A -80
+a t 5
+a p 20
+a b 5
+b y -20
+b v -20
+c y -20
+c l -15
+c k -15
+, ' -70
+, rq -70
+e y -20
+e x -20
+e w -20
+e v -20
+f . -40
+f o -20
+f l -15
+f i -15
+f f -20
+f .i -15
+f , -40
+f a -15
+g i 25
+g a 15
+h y -30
+k y -5
+k o -30
+k e -40
+m y -20
+m u -20
+n y -15
+n v -30
+o y -20
+o x -30
+o w -20
+o v -30
+p y -20
+. ' -70
+. rq -70
+lq A -50
+` ` -80
+` oq -80
+oq ` -80
+oq oq -80
+` A -50
+oq A -50
+' v -10
+' t 10
+' s -15
+' r -20
+' ' -80
+' d -50
+r y 40
+r v 40
+r u 20
+r t 20
+r s 20
+r q -8
+r . -73
+r p 20
+r o -15
+r n 21
+r m 15
+r l 20
+r k 5
+r i 20
+r - -60
+r hy -60
+r char173 -60
+r g 1
+r e -4
+r d -6
+r , -75
+r c -7
+s . 20
+s , 20
+v . -90
+v o -20
+v e -20
+v , -90
+v a -30
+w . -90
+w o -30
+w e -20
+w , -90
+w a -30
+x e -20
+y . -100
+y o -30
+y e -20
+y , -100
+y c -35
+y a -30
+charset
+ha 600,740 2 0000 -- asciicircum
+ti 600,347 0 0001 -- asciitilde
+vS 520,944,15 2 0002 -- Scaron
+vZ 500,944 2 0003 -- Zcaron
+vs 440,774,18 2 0004 -- scaron
+vz 460,774 2 0005 -- zcaron
+:Y 620,939 2 0006 -- Ydieresis
+tm 1000,740 2 0007 -- trademark
+aq 220,740 2 0010 -- quotesingle
+space 280 0 0040
+! 280,740 2 0041 -- exclam
+" 360,740 2 0042 -- quotedbl
+# 560,700 0 0043 -- numbersign
+sh "
+$ 560,857,86 2 0044 -- dollar
+Do "
+% 860,755,15 2 0045 -- percent
+& 680,755,15 2 0046 -- ampersand
+' 280,740 2 0047 -- quoteright
+( 380,754,157 2 0050 -- parenleft
+) 380,754,157 2 0051 -- parenright
+* 440,755 2 0052 -- asterisk
++ 600,506 0 0053 -- plus
+, 280,133,141 0 0054 -- comma
+- 420,348 0 0055 -- hyphen
+hy "
+char173 "
+. 280,133 0 0056 -- period
+/ 460,740,100 2 0057 -- slash
+sl "
+0 560,755,15 2 0060 -- zero
+1 560,740 2 0061 -- one
+2 560,755 2 0062 -- two
+3 560,755,15 2 0063 -- three
+4 560,740 2 0064 -- four
+5 560,740,15 2 0065 -- five
+6 560,739,15 2 0066 -- six
+7 560,740 2 0067 -- seven
+8 560,755,15 2 0070 -- eight
+9 560,754 2 0071 -- nine
+: 280,555 0 0072 -- colon
+; 280,555,141 0 0073 -- semicolon
+< 600,514,8 0 0074 -- less
+= 600,425 0 0075 -- equal
+> 600,514,8 0 0076 -- greater
+? 560,755 2 0077 -- question
+@ 740,712,12 0 0100 -- at
+at "
+A 740,740 2 0101 -- A
+B 580,740 2 0102 -- B
+C 780,755,15 2 0103 -- C
+D 700,740 2 0104 -- D
+E 520,740 2 0105 -- E
+F 480,740 2 0106 -- F
+G 840,755,15 2 0107 -- G
+H 680,740 2 0110 -- H
+I 280,740 2 0111 -- I
+J 480,740,15 2 0112 -- J
+K 620,740 2 0113 -- K
+L 440,740 2 0114 -- L
+M 900,740 2 0115 -- M
+N 740,740 2 0116 -- N
+O 840,755,15 2 0117 -- O
+P 560,740 2 0120 -- P
+Q 840,755,15 2 0121 -- Q
+R 580,740 2 0122 -- R
+S 520,755,15 2 0123 -- S
+T 420,740 2 0124 -- T
+U 640,740,15 2 0125 -- U
+V 700,740 2 0126 -- V
+W 900,740 2 0127 -- W
+X 680,740 2 0130 -- X
+Y 620,740 2 0131 -- Y
+Z 500,740 2 0132 -- Z
+[ 320,754,157 2 0133 -- bracketleft
+lB "
+\ 640,740,100 2 0134 -- backslash
+rs "
+] 320,754,157 2 0135 -- bracketright
+rB "
+a^ 540,774 2 0136 -- circumflex
+^ "
+_ 500,0,125 0 0137 -- underscore
+` 280,740 2 0140 -- quoteleft
+oq "
+a 660,574,18 0 0141 -- a
+b 660,740,18 2 0142 -- b
+c 640,574,18 0 0143 -- c
+d 660,740,18 2 0144 -- d
+e 640,577,18 0 0145 -- e
+f 280,755 2 0146 -- f
+g 660,574,226 1 0147 -- g
+h 600,740 2 0150 -- h
+i 240,740 2 0151 -- i
+j 260,740,185 3 0152 -- j
+k 580,740 2 0153 -- k
+l 240,740 2 0154 -- l
+m 940,574 0 0155 -- m
+n 600,574 0 0156 -- n
+o 640,574,18 0 0157 -- o
+p 660,574,185 1 0160 -- p
+q 660,574,185 1 0161 -- q
+r 320,574 0 0162 -- r
+s 440,574,18 0 0163 -- s
+t 300,740 2 0164 -- t
+u 600,555,18 0 0165 -- u
+v 560,555 0 0166 -- v
+w 800,555 0 0167 -- w
+x 560,555 0 0170 -- x
+y 580,555,185 1 0171 -- y
+z 460,555 0 0172 -- z
+lC 340,747,191 3 0173 -- braceleft
+{ "
+ba 600,740,100 2 0174 -- bar
+| "
+rC 340,747,191 3 0175 -- braceright
+} "
+a~ 480,767 2 0176 -- tilde
+~ "
+bq 280,133,141 0 0200 -- quotesinglbase
+Fo 460,469 0 0201 -- guillemotleft
+char171 "
+Fc 460,469 0 0202 -- guillemotright
+char187 "
+bu 600,532 0 0203 -- bullet
+Fn 560,824,151 2 0204 -- florin
+f/ 160,740 2 0205 -- fraction
+%0 1280,755,15 2 0206 -- perthousand
+dg 560,740,142 2 0207 -- dagger
+dd 560,740,142 2 0210 -- daggerdbl
+en 500,348 0 0211 -- endash
+em 1000,348 0 0212 -- emdash
+fi 520,755 2 0214 -- fi
+fl 520,755 2 0215 -- fl
+.i 240,555 0 0220 -- dotlessi
+ga 420,851 2 0222 -- grave
+a" 700,862 2 0223 -- hungarumlaut
+a. 280,769 2 0224 -- dotaccent
+ab 480,770 2 0225 -- breve
+ah 540,774 2 0226 -- caron
+ao 360,834 2 0227 -- ring
+ho 340,9,195 1 0230 -- ogonek
+lq 480,740 2 0231 -- quotedblleft
+rq 480,740 2 0232 -- quotedblright
+oe 1080,574,18 0 0233 -- oe
+/l 320,740 2 0234 -- lslash
+Bq 480,133,141 0 0235 -- quotedblbase
+OE 1060,755,15 2 0236 -- OE
+/L 480,740 2 0237 -- Lslash
+r! 280,555,185 1 0241 -- exclamdown
+char161 "
+ct 560,715 0 0242 -- cent
+char162 "
+Po 560,755 2 0243 -- sterling
+char163 "
+Cs 560,577 0 0244 -- currency
+char164 "
+Ye 560,740 2 0245 -- yen
+char165 "
+bb 600,740,100 2 0246 -- brokenbar
+char166 "
+sc 560,755,158 2 0247 -- section
+char167 "
+ad 500,769 2 0250 -- dieresis
+char168 "
+co 740,752,12 2 0251 -- copyright
+char169 "
+Of 360,755 2 0252 -- ordfeminine
+char170 "
+fo 240,469 0 0253 -- guilsinglleft
+no 600,425 0 0254 -- logicalnot
+char172 "
+\- 600,313 0 0255 -- minus
+rg 740,752,12 2 0256 -- registered
+char174 "
+a- 420,759 2 0257 -- macron
+char175 "
+de 400,712 0 0260 -- degree
+char176 "
+char177 600,556,62 0 0261 -- plusminus
+S2 336,749 2 0262 -- twosuperior
+char178 "
+S3 336,749 2 0263 -- threesuperior
+char179 "
+aa 420,849 2 0264 -- acute
+char180 "
+char181 576,555,187 1 0265 -- mu
+ps 600,740,103 2 0266 -- paragraph
+char182 "
+char183 280,320 0 0267 -- periodcentered
+ac 340,6,251 1 0270 -- cedilla
+char184 "
+S1 336,740 2 0271 -- onesuperior
+char185 "
+Om 360,755 2 0272 -- ordmasculine
+char186 "
+fc 240,469 0 0273 -- guilsinglright
+14 840,740 2 0274 -- onequarter
+char188 "
+12 840,740 2 0275 -- onehalf
+char189 "
+34 840,749 2 0276 -- threequarters
+char190 "
+r? 560,555,200 1 0277 -- questiondown
+char191 "
+`A 740,1021 2 0300 -- Agrave
+char192 "
+'A 740,1019 2 0301 -- Aacute
+char193 "
+^A 740,944 2 0302 -- Acircumflex
+char194 "
+~A 740,937 2 0303 -- Atilde
+char195 "
+:A 740,939 2 0304 -- Adieresis
+char196 "
+oA 740,969 2 0305 -- Aring
+char197 "
+AE 900,740 2 0306 -- AE
+char198 "
+,C 780,755,251 3 0307 -- Ccedilla
+char199 "
+`E 520,1021 2 0310 -- Egrave
+char200 "
+'E 520,1019 2 0311 -- Eacute
+char201 "
+^E 520,944 2 0312 -- Ecircumflex
+char202 "
+:E 520,939 2 0313 -- Edieresis
+char203 "
+`I 280,1021 2 0314 -- Igrave
+char204 "
+'I 280,1019 2 0315 -- Iacute
+char205 "
+^I 280,944 2 0316 -- Icircumflex
+char206 "
+:I 280,939 2 0317 -- Idieresis
+char207 "
+-D 742,740 2 0320 -- Eth
+char208 "
+~N 740,937 2 0321 -- Ntilde
+char209 "
+`O 840,1021,15 2 0322 -- Ograve
+char210 "
+'O 840,1019,15 2 0323 -- Oacute
+char211 "
+^O 840,944,15 2 0324 -- Ocircumflex
+char212 "
+~O 840,937,15 2 0325 -- Otilde
+char213 "
+:O 840,939,15 2 0326 -- Odieresis
+char214 "
+char215 600,494 0 0327 -- multiply
+/O 840,814,71 2 0330 -- Oslash
+char216 "
+`U 640,1021,15 2 0331 -- Ugrave
+char217 "
+'U 640,1019,15 2 0332 -- Uacute
+char218 "
+^U 640,944,15 2 0333 -- Ucircumflex
+char219 "
+:U 640,939,15 2 0334 -- Udieresis
+char220 "
+'Y 620,1019 2 0335 -- Yacute
+char221 "
+TP 560,740 2 0336 -- Thorn
+char222 "
+ss 600,755,18 2 0337 -- germandbls
+char223 "
+`a 660,851,18 2 0340 -- agrave
+char224 "
+'a 660,849,18 2 0341 -- aacute
+char225 "
+^a 660,774,18 2 0342 -- acircumflex
+char226 "
+~a 660,767,18 2 0343 -- atilde
+char227 "
+:a 660,769,18 2 0344 -- adieresis
+char228 "
+oa 660,834,18 2 0345 -- aring
+char229 "
+ae 1080,574,18 0 0346 -- ae
+char230 "
+,c 640,574,251 1 0347 -- ccedilla
+char231 "
+`e 640,851,18 2 0350 -- egrave
+char232 "
+'e 640,849,18 2 0351 -- eacute
+char233 "
+^e 640,774,18 2 0352 -- ecircumflex
+char234 "
+:e 640,769,18 2 0353 -- edieresis
+char235 "
+`i 240,851 2 0354 -- igrave
+char236 "
+'i 240,849 2 0355 -- iacute
+char237 "
+^i 240,774 2 0356 -- icircumflex
+char238 "
+:i 240,769 2 0357 -- idieresis
+char239 "
+Sd 640,754,18 2 0360 -- eth
+char240 "
+~n 600,767 2 0361 -- ntilde
+char241 "
+`o 640,851,18 2 0362 -- ograve
+char242 "
+'o 640,849,18 2 0363 -- oacute
+char243 "
+^o 640,774,18 2 0364 -- ocircumflex
+char244 "
+~o 640,767,18 2 0365 -- otilde
+char245 "
+:o 640,769,18 2 0366 -- odieresis
+char246 "
+char247 600,526,20 0 0367 -- divide
+/o 660,608,50 0 0370 -- oslash
+char248 "
+`u 600,851,18 2 0371 -- ugrave
+char249 "
+'u 600,849,18 2 0372 -- uacute
+char250 "
+^u 600,774,18 2 0373 -- ucircumflex
+char251 "
+:u 600,769,18 2 0374 -- udieresis
+char252 "
+'y 580,849,185 3 0375 -- yacute
+char253 "
+Tp 660,740,185 3 0376 -- thorn
+char254 "
+:y 580,769,185 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/ABI b/font/devps/ABI
new file mode 100644
index 000000000..087bb8b01
--- /dev/null
+++ b/font/devps/ABI
@@ -0,0 +1,560 @@
+name ABI
+internalname AvantGarde-DemiOblique
+slant 10.5
+spacewidth 280
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -50
+A w -65
+A v -70
+A u -20
+A ' -90
+A Y -80
+A W -60
+A V -102
+A U -40
+A T -25
+A Q -50
+A O -50
+A G -40
+A C -40
+B A -10
+C A -40
+D . -20
+D , -20
+D Y -45
+D W -25
+D V -50
+D A -50
+F . -129
+F e -20
+F , -162
+F a -20
+F A -75
+G . -20
+G , -20
+G Y -15
+J . -15
+J a -20
+J A -30
+K y -20
+K u -15
+K o -45
+K e -40
+K O -30
+L y -23
+L ' -30
+L rq -30
+L Y -80
+L W -55
+L V -85
+L T -46
+O . -30
+O , -30
+O Y -30
+O X -30
+O W -20
+O V -45
+O T -15
+O A -60
+P . -200
+P o -20
+P e -20
+P , -220
+P a -20
+P A -100
+Q , 20
+R W 25
+R V -10
+R U 25
+R T 40
+R O 25
+S , 20
+T y -10
+T w -55
+T u -46
+T ; -29
+T r -30
+T . -91
+T o -49
+T - -75
+T hy -75
+T char173 -75
+T e -49
+T , -82
+T : -15
+T a -70
+T O -15
+T A -25
+U . -20
+U , -20
+U A -40
+V u -55
+V ; -33
+V . -145
+V o -101
+V i -15
+V - -75
+V hy -75
+V char173 -75
+V e -101
+V , -145
+V : -18
+V a -95
+V O -45
+V G -20
+V A -102
+W y -15
+W u -30
+W ; -33
+W . -106
+W o -46
+W i -10
+W - -35
+W hy -35
+W char173 -35
+W e -47
+W , -106
+W : -15
+W a -50
+W O -20
+W A -58
+Y u -52
+Y ; -23
+Y . -145
+Y o -89
+Y - -100
+Y hy -100
+Y char173 -100
+Y e -89
+Y , -145
+Y : -10
+Y a -93
+Y O -30
+Y A -80
+a t 5
+a p 20
+a b 5
+b y -20
+b v -20
+c y -20
+c l -15
+c k -15
+, ' -70
+, rq -70
+e y -20
+e x -20
+e w -20
+e v -20
+f . -40
+f o -20
+f l -15
+f i -15
+f f -20
+f .i -15
+f , -40
+f a -15
+g i 25
+g a 15
+h y -30
+k y -5
+k o -30
+k e -40
+m y -20
+m u -20
+n y -15
+n v -30
+o y -20
+o x -30
+o w -20
+o v -30
+p y -20
+. ' -70
+. rq -70
+lq A -50
+` ` -80
+` oq -80
+oq ` -80
+oq oq -80
+` A -50
+oq A -50
+' v -10
+' t 10
+' s -15
+' r -20
+' ' -80
+' d -50
+r y 40
+r v 40
+r u 20
+r t 20
+r s 20
+r q -8
+r . -73
+r p 20
+r o -15
+r n 21
+r m 15
+r l 20
+r k 5
+r i 20
+r - -60
+r hy -60
+r char173 -60
+r g 1
+r e -4
+r d -6
+r , -75
+r c -7
+s . 20
+s , 20
+v . -90
+v o -20
+v e -20
+v , -90
+v a -30
+w . -90
+w o -30
+w e -20
+w , -90
+w a -30
+x e -20
+y . -100
+y o -30
+y e -20
+y , -100
+y c -35
+y a -30
+charset
+ha 600,740,0,46,-92,46 2 0000 -- asciicircum
+ti 600,347,0,29,-64,29 0 0001 -- asciitilde
+vS 520,944,15,165,1,82 2 0002 -- Scaron
+vZ 500,944,0,200,31,82 2 0003 -- Zcaron
+vs 440,774,18,173,1,82 2 0004 -- scaron
+vz 460,774,0,188,30,82 2 0005 -- zcaron
+:Y 620,939,0,189,-85,82 2 0006 -- Ydieresis
+tm 1000,740,0,8,-81,8 2 0007 -- trademark
+aq 220,740,0,144,-102,82 2 0010 -- quotesingle
+space 280 0 0040
+! 280,740,0,113,-23,82 2 0041 -- exclam
+" 360,740,0,168,-77,82 2 0042 -- quotedbl
+# 560,700,0,108,-16,82 0 0043 -- numbersign
+sh "
+$ 560,857,86,72,-49,72 2 0044 -- dollar
+Do "
+% 860,755,15,46,-89,46 2 0045 -- percent
+& 680,755,15,112,-21,82 2 0046 -- ampersand
+' 280,740,0,112,-109,82 2 0047 -- quoteright
+( 380,754,157,160,-70,82 2 0050 -- parenleft
+) 380,754,157,48,42,48 2 0051 -- parenright
+* 440,755,0,102,-124,82 2 0052 -- asterisk
++ 600,506,0,60,-34,60 0 0053 -- plus
+, 280,133,141,1,2,1 0 0054 -- comma
+- 420,348,0,43,-64,43 0 0055 -- hyphen
+hy "
+char173 "
+. 280,133,0,1,-23,1 0 0056 -- period
+/ 460,740,100,181,63,82 2 0057 -- slash
+sl "
+0 560,755,15,118,-20,82 2 0060 -- zero
+1 560,740,0,0,-180 2 0061 -- one
+2 560,755,0,112,6,82 2 0062 -- two
+3 560,755,15,75,-17,75 2 0063 -- three
+4 560,740,0,94,14,82 2 0064 -- four
+5 560,740,15,90,-14,82 2 0065 -- five
+6 560,739,15,77,-14,77 2 0066 -- six
+7 560,740,0,125,-33,82 2 0067 -- seven
+8 560,755,15,80,-21,80 2 0070 -- eight
+9 560,754,0,123,-60,82 2 0071 -- nine
+: 280,555,0,79,-23,79 0 0072 -- colon
+; 280,555,141,79,2,79 0 0073 -- semicolon
+< 600,514,8,99,-34,82 0 0074 -- less
+= 600,425,0,81,-13,81 0 0075 -- equal
+> 600,514,8,60,5,60 0 0076 -- greater
+? 560,755,0,83,-85,82 2 0077 -- question
+@ 740,712,12,142,-59,82 0 0100 -- at
+at "
+A 740,740,0,42,43,42 2 0101 -- A
+B 580,740,0,80,-20,80 2 0102 -- B
+C 780,755,15,134,-47,82 2 0103 -- C
+D 700,740,0,82,-13,82 2 0104 -- D
+E 520,740,0,126,-11,82 2 0105 -- E
+F 480,740,0,145,-11,82 2 0106 -- F
+G 840,755,15,97,-39,82 2 0107 -- G
+H 680,740,0,117,-21,82 2 0110 -- H
+I 280,740,0,116,-22,82 2 0111 -- I
+J 480,740,15,116,16,82 2 0112 -- J
+K 620,740,0,187,-39,82 2 0113 -- K
+L 440,740,0,69,-22,69 2 0114 -- L
+M 900,740,0,124,-13,82 2 0115 -- M
+N 740,740,0,118,-20,82 2 0116 -- N
+O 840,755,15,92,-45,82 2 0117 -- O
+P 560,740,0,135,-22,82 2 0120 -- P
+Q 840,755,15,92,-44,82 2 0121 -- Q
+R 580,740,0,126,-14,82 2 0122 -- R
+S 520,755,15,108,1,82 2 0123 -- S
+T 420,740,0,185,-69,82 2 0124 -- T
+U 640,740,15,132,-47,82 2 0125 -- U
+V 700,740,0,182,-95,82 2 0126 -- V
+W 900,740,0,186,-94,82 2 0127 -- W
+X 680,740,0,183,46,82 2 0130 -- X
+Y 620,740,0,189,-85,82 2 0131 -- Y
+Z 500,740,0,149,31,82 2 0132 -- Z
+[ 320,754,157,154,-39,82 2 0133 -- bracketleft
+lB "
+\ 640,740,100,0,-183 2 0134 -- backslash
+rs "
+] 320,754,157,72,43,72 2 0135 -- bracketright
+rB "
+a^ 540,774,0,98,-139,82 2 0136 -- circumflex
+^ "
+_ 500,0,125,36,73,36 0 0137 -- underscore
+` 280,740,0,111,-108,82 2 0140 -- quoteleft
+oq "
+a 660,574,18,106,-23,82 0 0141 -- a
+b 660,740,18,79,3,79 2 0142 -- b
+c 640,574,18,89,-34,82 0 0143 -- c
+d 660,740,18,145,-30,82 2 0144 -- d
+e 640,577,18,77,-27,77 0 0145 -- e
+f 280,755,0,190,-12,82 2 0146 -- f
+g 660,574,226,116,17,82 1 0147 -- g
+h 600,740,0,64,-4,64 2 0150 -- h
+i 240,740,0,133,-3,82 2 0151 -- i
+j 260,740,185,132,68,82 3 0152 -- j
+k 580,740,0,118,-30,82 2 0153 -- k
+l 240,740,0,134,-4,82 2 0154 -- l
+m 940,574,0,64,-4,64 0 0155 -- m
+n 600,574,0,63,-4,63 0 0156 -- n
+o 640,574,18,82,-21,82 0 0157 -- o
+p 660,574,185,76,37,76 1 0160 -- p
+q 660,574,185,106,-28,82 1 0161 -- q
+r 320,574,0,153,-13,82 0 0162 -- r
+s 440,574,18,93,1,82 0 0163 -- s
+t 300,740,0,152,-36,82 2 0164 -- t
+u 600,555,18,97,-37,82 0 0165 -- u
+v 560,555,0,149,-56,82 0 0166 -- v
+w 800,555,0,142,-64,82 0 0167 -- w
+x 560,555,0,122,47,82 0 0170 -- x
+y 580,555,185,144,-25,82 1 0171 -- y
+z 460,555,0,118,30,82 0 0172 -- z
+lC 340,747,191,165,10,82 3 0173 -- braceleft
+{ "
+ba 600,740,100,0,-164 2 0174 -- bar
+| "
+rC 340,747,191,115,62,82 3 0175 -- braceright
+} "
+a~ 480,767,0,134,-128,82 2 0176 -- tilde
+~ "
+bq 280,133,141,0,3 0 0200 -- quotesinglbase
+Fo 460,469,0,77,-55,77 0 0201 -- guillemotleft
+char171 "
+Fc 460,469,0,53,-31,53 0 0202 -- guillemotright
+char187 "
+bu 600,532,0,0,-165 0 0203 -- bullet
+Fn 560,824,151,154,77,82 2 0204 -- florin
+f/ 160,740,0,309,173,82 2 0205 -- fraction
+%0 1280,755,15,26,-89,26 2 0206 -- perthousand
+dg 560,740,142,102,-83,82 2 0207 -- dagger
+dd 560,740,142,108,-13,82 2 0210 -- daggerdbl
+en 500,348,0,79,-28,79 0 0211 -- endash
+em 1000,348,0,79,-28,79 0 0212 -- emdash
+fi 520,755,0,128,-22,82 2 0214 -- fi
+fl 520,755,0,128,-22,82 2 0215 -- fl
+.i 240,555,0,99,-3,82 0 0220 -- dotlessi
+ga 420,851,0,92,-139,82 2 0222 -- grave
+a" 700,862,0,104,-208,82 2 0223 -- hungarumlaut
+a. 280,769,0,120,-142,82 2 0224 -- dotaccent
+ab 480,770,0,152,-135,82 2 0225 -- breve
+ah 540,774,0,123,-164,82 2 0226 -- caron
+ao 360,834,0,114,-156,82 2 0227 -- ring
+ho 340,9,195,0,-9 1 0230 -- ogonek
+lq 480,740,0,116,-106,82 2 0231 -- quotedblleft
+rq 480,740,0,117,-107,82 2 0232 -- quotedblright
+oe 1080,574,18,78,-26,78 0 0233 -- oe
+/l 320,740,0,134,-24,82 2 0234 -- lslash
+Bq 480,133,141,5,5,5 0 0235 -- quotedblbase
+OE 1060,755,15,134,-48,82 2 0236 -- OE
+/L 480,740,0,54,-18,54 2 0237 -- Lslash
+r! 280,555,185,80,10,80 1 0241 -- exclamdown
+char161 "
+ct 560,715,0,89,-60,82 0 0242 -- cent
+char162 "
+Po 560,755,0,105,12,82 2 0243 -- sterling
+char163 "
+Cs 560,577,0,118,-3,82 0 0244 -- currency
+char164 "
+Ye 560,740,0,197,-33,82 2 0245 -- yen
+char165 "
+bb 600,740,100,0,-164 2 0246 -- brokenbar
+char166 "
+sc 560,755,158,92,-15,82 2 0247 -- section
+char167 "
+ad 500,769,0,115,-146,82 2 0250 -- dieresis
+char168 "
+co 740,752,12,137,0,82 2 0251 -- copyright
+char169 "
+Of 360,755,0,162,-77,82 2 0252 -- ordfeminine
+char170 "
+fo 240,469,0,87,-44,82 0 0253 -- guilsinglleft
+no 600,425,0,81,-55,81 0 0254 -- logicalnot
+char172 "
+\- 600,313,0,60,-34,60 0 0255 -- minus
+rg 740,752,12,137,0,82 2 0256 -- registered
+char174 "
+a- 420,759,0,120,-142,82 2 0257 -- macron
+char175 "
+de 400,712,0,101,-110,82 0 0260 -- degree
+char176 "
+char177 600,556,62,76,13,76 0 0261 -- plusminus
+S2 336,749,0,150,-23,82 2 0262 -- twosuperior
+char178 "
+S3 336,749,0,127,-37,82 2 0263 -- threesuperior
+char179 "
+aa 420,849,0,138,-174,82 2 0264 -- acute
+char180 "
+char181 576,555,187,116,47,82 1 0265 -- mu
+ps 600,740,103,194,-40,82 2 0266 -- paragraph
+char182 "
+char183 280,320,0,35,-58,35 0 0267 -- periodcentered
+ac 340,6,251,0,-17 1 0270 -- cedilla
+char184 "
+S1 336,740,0,74,-132,74 2 0271 -- onesuperior
+char185 "
+Om 360,755,0,141,-81,82 2 0272 -- ordmasculine
+char186 "
+fc 240,469,0,63,-20,63 0 0273 -- guilsinglright
+14 840,740,0,0,-137 2 0274 -- onequarter
+char188 "
+12 840,740,0,40,-107,40 2 0275 -- onehalf
+char189 "
+34 840,749,0,46,-47,46 2 0276 -- threequarters
+char190 "
+r? 560,555,200,17,-19,17 1 0277 -- questiondown
+char191 "
+`A 740,1021,0,42,43,42 2 0300 -- Agrave
+char192 "
+'A 740,1019,0,42,43,42 2 0301 -- Aacute
+char193 "
+^A 740,944,0,42,43,42 2 0302 -- Acircumflex
+char194 "
+~A 740,937,0,42,43,42 2 0303 -- Atilde
+char195 "
+:A 740,939,0,42,43,42 2 0304 -- Adieresis
+char196 "
+oA 740,969,0,42,43,42 2 0305 -- Aring
+char197 "
+AE 900,740,0,111,55,82 2 0306 -- AE
+char198 "
+,C 780,755,251,134,-47,82 3 0307 -- Ccedilla
+char199 "
+`E 520,1021,0,126,-11,82 2 0310 -- Egrave
+char200 "
+'E 520,1019,0,126,-11,82 2 0311 -- Eacute
+char201 "
+^E 520,944,0,139,-11,82 2 0312 -- Ecircumflex
+char202 "
+:E 520,939,0,136,-11,82 2 0313 -- Edieresis
+char203 "
+`I 280,1021,0,168,-22,82 2 0314 -- Igrave
+char204 "
+'I 280,1019,0,264,-22,82 2 0315 -- Iacute
+char205 "
+^I 280,944,0,259,-22,82 2 0316 -- Icircumflex
+char206 "
+:I 280,939,0,256,-22,82 2 0317 -- Idieresis
+char207 "
+-D 742,740,0,74,-33,74 2 0320 -- Eth
+char208 "
+~N 740,937,0,118,-20,82 2 0321 -- Ntilde
+char209 "
+`O 840,1021,15,92,-45,82 2 0322 -- Ograve
+char210 "
+'O 840,1019,15,92,-45,82 2 0323 -- Oacute
+char211 "
+^O 840,944,15,92,-45,82 2 0324 -- Ocircumflex
+char212 "
+~O 840,937,15,92,-45,82 2 0325 -- Otilde
+char213 "
+:O 840,939,15,92,-45,82 2 0326 -- Odieresis
+char214 "
+char215 600,494,0,67,-26,67 0 0327 -- multiply
+/O 840,814,71,101,-44,82 2 0330 -- Oslash
+char216 "
+`U 640,1021,15,132,-47,82 2 0331 -- Ugrave
+char217 "
+'U 640,1019,15,132,-47,82 2 0332 -- Uacute
+char218 "
+^U 640,944,15,132,-47,82 2 0333 -- Ucircumflex
+char219 "
+:U 640,939,15,132,-47,82 2 0334 -- Udieresis
+char220 "
+'Y 620,1019,0,189,-85,82 2 0335 -- Yacute
+char221 "
+TP 560,740,0,109,-22,82 2 0336 -- Thorn
+char222 "
+ss 600,755,18,79,-1,79 2 0337 -- germandbls
+char223 "
+`a 660,851,18,106,-23,82 2 0340 -- agrave
+char224 "
+'a 660,849,18,106,-23,82 2 0341 -- aacute
+char225 "
+^a 660,774,18,106,-23,82 2 0342 -- acircumflex
+char226 "
+~a 660,767,18,106,-23,82 2 0343 -- atilde
+char227 "
+:a 660,769,18,106,-23,82 2 0344 -- adieresis
+char228 "
+oa 660,834,18,106,-23,82 2 0345 -- aring
+char229 "
+ae 1080,574,18,75,-25,75 0 0346 -- ae
+char230 "
+,c 640,574,251,89,-33,82 1 0347 -- ccedilla
+char231 "
+`e 640,851,18,77,-27,77 2 0350 -- egrave
+char232 "
+'e 640,849,18,77,-27,77 2 0351 -- eacute
+char233 "
+^e 640,774,18,77,-27,77 2 0352 -- ecircumflex
+char234 "
+:e 640,769,18,77,-27,77 2 0353 -- edieresis
+char235 "
+`i 240,851,0,157,-3,82 2 0354 -- igrave
+char236 "
+'i 240,849,0,253,-3,82 2 0355 -- iacute
+char237 "
+^i 240,774,0,248,11,82 2 0356 -- icircumflex
+char238 "
+:i 240,769,0,245,-3,82 2 0357 -- idieresis
+char239 "
+Sd 640,754,18,109,-23,82 2 0360 -- eth
+char240 "
+~n 600,767,0,74,-4,74 2 0361 -- ntilde
+char241 "
+`o 640,851,18,82,-21,82 2 0362 -- ograve
+char242 "
+'o 640,849,18,82,-21,82 2 0363 -- oacute
+char243 "
+^o 640,774,18,82,-21,82 2 0364 -- ocircumflex
+char244 "
+~o 640,767,18,82,-21,82 2 0365 -- otilde
+char245 "
+:o 640,769,18,82,-21,82 2 0366 -- odieresis
+char246 "
+char247 600,526,20,60,-34,60 0 0367 -- divide
+/o 660,608,50,75,-31,75 0 0370 -- oslash
+char248 "
+`u 600,851,18,97,-37,82 2 0371 -- ugrave
+char249 "
+'u 600,849,18,97,-37,82 2 0372 -- uacute
+char250 "
+^u 600,774,18,97,-37,82 2 0373 -- ucircumflex
+char251 "
+:u 600,769,18,97,-37,82 2 0374 -- udieresis
+char252 "
+'y 580,849,185,144,-25,82 3 0375 -- yacute
+char253 "
+Tp 660,740,185,76,37,76 3 0376 -- thorn
+char254 "
+:y 580,769,185,144,-25,82 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/AI b/font/devps/AI
new file mode 100644
index 000000000..55b789c00
--- /dev/null
+++ b/font/devps/AI
@@ -0,0 +1,559 @@
+name AI
+internalname AvantGarde-BookOblique
+slant 10.5
+spacewidth 277
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -62
+A w -65
+A v -70
+A u -20
+A ' -100
+A rq -100
+A Y -92
+A W -60
+A V -102
+A U -40
+A T -45
+A Q -40
+A O -50
+A G -40
+A C -40
+B A -10
+C A -40
+D . -20
+D , -20
+D Y -30
+D W -10
+D V -50
+D A -50
+F . -160
+F e -20
+F , -180
+F a -20
+F A -75
+G . -20
+G , -20
+G Y -20
+J . -15
+J a -20
+J A -30
+K o -15
+K e -20
+K O -20
+L y -23
+L ' -130
+L rq -130
+L Y -91
+L W -67
+L V -113
+L T -46
+O . -30
+O , -30
+O Y -30
+O X -30
+O W -20
+O V -60
+O T -30
+O A -60
+P . -300
+P o -60
+P e -20
+P , -280
+P a -20
+P A -114
+Q , 20
+R Y -10
+R W 10
+R V -10
+R T 6
+S , 20
+T y -50
+T w -55
+T u -46
+T ; -29
+T r -30
+T . -91
+T o -70
+T i 10
+T - -75
+T hy -75
+T char173 -75
+T e -49
+T , -82
+T : -15
+T a -90
+T O -30
+T A -45
+U . -20
+U , -20
+U A -40
+V u -40
+V ; -33
+V . -165
+V o -101
+V i -5
+V - -75
+V hy -75
+V char173 -75
+V e -101
+V , -145
+V : -18
+V a -104
+V O -60
+V G -20
+V A -102
+W y -2
+W u -30
+W ; -33
+W . -106
+W o -46
+W i 6
+W - -35
+W hy -35
+W char173 -35
+W e -47
+W , -106
+W : -15
+W a -50
+W O -20
+W A -58
+Y u -52
+Y ; -23
+Y . -175
+Y o -89
+Y - -85
+Y hy -85
+Y char173 -85
+Y e -89
+Y , -145
+Y : -10
+Y a -93
+Y O -30
+Y A -92
+a p 20
+a b 20
+b y -20
+b v -20
+c y -20
+c k -15
+, ' -120
+, rq -120
+e y -20
+e w -20
+e v -20
+f . -50
+f o -40
+f l -30
+f i -34
+f f -60
+f e -20
+f .i -34
+f , -50
+f a -40
+g a -15
+h y -30
+k y -5
+k e -15
+m y -20
+m u -20
+m a -20
+n y -15
+n v -20
+o y -20
+o x -15
+o w -20
+o v -30
+p y -20
+. ' -120
+. rq -120
+lq ` -35
+lq oq -35
+lq A -100
+` ` -203
+` oq -203
+oq ` -203
+oq oq -203
+` A -100
+oq A -100
+' v -30
+' t 10
+' s -15
+' r -20
+' ' -203
+' rq -35
+' d -110
+r y 40
+r v 40
+r u 20
+r t 20
+r s 20
+r q -8
+r . -73
+r p 20
+r o -20
+r n 21
+r m 28
+r l 20
+r k 20
+r i 20
+r - -60
+r hy -60
+r char173 -60
+r g -15
+r e -4
+r d -6
+r , -75
+r c -20
+r a -20
+s . 20
+s , 20
+v . -130
+v o -30
+v e -20
+v , -100
+v a -30
+w . -100
+w o -30
+w h 15
+w e -20
+w , -90
+w a -30
+y . -125
+y o -30
+y e -20
+y , -110
+y a -30
+charset
+ha 606,740,0,54,-60,54 2 0000 -- asciicircum
+ti 606,319,0,28,-64,28 0 0001 -- asciitilde
+vS 498,927,13,145,-7,81 2 0002 -- Scaron
+vZ 480,927,0,166,38,81 2 0003 -- Zcaron
+vs 388,764,13,170,1,81 2 0004 -- scaron
+vz 425,764,0,152,40,81 2 0005 -- zcaron
+:Y 592,928,0,187,-88,81 2 0006 -- Ydieresis
+tm 1000,740,0,3,-87,3 2 0007 -- trademark
+aq 198,740,0,129,-103,81 2 0010 -- quotesingle
+space 277 0 0040
+! 295,740,0,77,-61,77 2 0041 -- exclam
+" 309,740,0,151,-80,81 2 0042 -- quotedbl
+# 554,740,0,116,-21,81 2 0043 -- numbersign
+sh "
+$ 554,811,70,77,-57,77 2 0044 -- dollar
+Do "
+% 775,751,13,62,-74,62 2 0045 -- percent
+& 757,753,12,68,-42,68 2 0046 -- ampersand
+' 351,740,0,92,-145,81 2 0047 -- quoteright
+( 369,757,205,176,-39,81 3 0050 -- parenleft
+) 369,757,205,63,74,63 3 0051 -- parenright
+* 425,740,0,104,-120,81 2 0052 -- asterisk
++ 606,506,0,52,-42,52 0 0053 -- plus
+, 277,126,67,0,48 0 0054 -- comma
+- 332,315,0,78,-26,78 0 0055 -- hyphen
+hy "
+char173 "
+. 277,126,0,0,-52 0 0056 -- period
+/ 437,740,100,153,25,81 2 0057 -- slash
+sl "
+0 554,753,13,118,-21,81 2 0060 -- zero
+1 554,740,0,0,-210 2 0061 -- one
+2 554,753,0,111,10,81 2 0062 -- two
+3 554,753,13,61,-23,61 2 0063 -- three
+4 554,740,0,94,11,81 2 0064 -- four
+5 554,740,13,101,-19,81 2 0065 -- five
+6 554,739,13,76,-15,76 2 0066 -- six
+7 554,740,0,124,-60,81 2 0067 -- seven
+8 554,753,13,76,-27,76 2 0070 -- eight
+9 554,752,0,122,-61,81 2 0071 -- nine
+: 277,548,0,51,-52,51 0 0072 -- colon
+; 277,548,67,51,48,51 0 0073 -- semicolon
+< 606,514,8,93,-37,81 0 0074 -- less
+= 606,388,0,71,-23,71 0 0075 -- equal
+> 606,514,8,57,-1,57 0 0076 -- greater
+? 591,752,0,87,-108,81 2 0077 -- question
+@ 867,753,13,71,-76,71 2 0100 -- at
+at "
+A 740,740,0,39,38,39 2 0101 -- A
+B 574,740,0,82,-24,81 2 0102 -- B
+C 813,752,13,107,-55,81 2 0103 -- C
+D 744,740,0,79,-24,79 2 0104 -- D
+E 536,740,0,126,-20,81 2 0105 -- E
+F 485,740,0,146,-20,81 2 0106 -- F
+G 872,753,13,69,-53,69 2 0107 -- G
+H 683,740,0,111,-26,81 2 0110 -- H
+I 226,740,0,111,-26,81 2 0111 -- I
+J 482,740,13,107,13,81 2 0112 -- J
+K 591,740,0,187,-31,81 2 0113 -- K
+L 462,740,0,62,-32,62 2 0114 -- L
+M 919,740,0,111,-26,81 2 0115 -- M
+N 740,740,0,111,-25,81 2 0116 -- N
+O 869,753,13,82,-55,81 2 0117 -- O
+P 592,740,0,122,-25,81 2 0120 -- P
+Q 871,753,13,91,-52,81 2 0121 -- Q
+R 607,740,0,112,-20,81 2 0122 -- R
+S 498,753,13,113,-7,81 2 0123 -- S
+T 426,740,0,180,-81,81 2 0124 -- T
+U 655,740,13,111,-68,81 2 0125 -- U
+V 702,740,0,178,-95,81 2 0126 -- V
+W 960,740,0,177,-98,81 2 0127 -- W
+X 609,740,0,165,42,81 2 0130 -- X
+Y 592,740,0,187,-88,81 2 0131 -- Y
+Z 480,740,0,166,38,81 2 0132 -- Z
+[ 351,753,179,176,-95,81 2 0133 -- bracketleft
+lB "
+\ 605,740,100,0,-205 2 0134 -- backslash
+rs "
+] 351,753,179,11,69,11 2 0135 -- bracketright
+rB "
+a^ 502,764,0,94,-142,81 2 0136 -- circumflex
+^ "
+_ 500,0,125,36,73,36 0 0137 -- underscore
+` 351,740,0,57,-182,57 2 0140 -- quoteleft
+oq "
+a 683,561,13,89,-38,81 0 0141 -- a
+b 682,740,13,71,-18,71 2 0142 -- b
+c 647,561,13,81,-37,81 0 0143 -- c
+d 685,740,13,120,-35,81 2 0144 -- d
+e 650,561,13,64,-34,64 0 0145 -- e
+f 314,753,0,190,-54,81 2 0146 -- f
+g 673,561,215,84,-6,81 1 0147 -- g
+h 610,740,0,46,-12,46 2 0150 -- h
+i 200,740,0,122,-15,81 2 0151 -- i
+j 203,740,192,121,130,81 3 0152 -- j
+k 502,740,0,136,-20,81 2 0153 -- k
+l 200,740,0,122,-15,81 2 0154 -- l
+m 938,561,0,50,-16,50 0 0155 -- m
+n 610,561,0,49,-15,49 0 0156 -- n
+o 655,561,13,64,-38,64 0 0157 -- o
+p 682,561,192,67,22,67 1 0160 -- p
+q 682,561,192,85,-33,81 1 0161 -- q
+r 301,561,0,144,-15,81 0 0162 -- r
+s 388,561,13,86,1,81 0 0163 -- s
+t 339,740,0,142,-54,81 2 0164 -- t
+u 608,547,13,84,-50,81 0 0165 -- u
+v 554,547,0,143,-58,81 0 0166 -- v
+w 831,547,0,140,-64,81 0 0167 -- w
+x 480,547,0,139,38,81 0 0170 -- x
+y 536,547,192,138,-47,81 1 0171 -- y
+z 425,547,0,123,40,81 0 0172 -- z
+lC 351,740,189,167,-65,81 2 0173 -- braceleft
+{ "
+ba 672,740,100,0,-230 2 0174 -- bar
+| "
+rC 351,740,189,37,65,37 2 0175 -- braceright
+} "
+a~ 439,754,0,131,-129,81 2 0176 -- tilde
+~ "
+bq 354,126,68,0,-26 0 0200 -- quotesinglbase
+Fo 425,481,0,94,-42,81 0 0201 -- guillemotleft
+char171 "
+Fc 425,481,0,62,-10,62 0 0202 -- guillemotright
+char187 "
+bu 606,532,0,0,-167 0 0203 -- bullet
+Fn 554,818,153,165,89,81 2 0204 -- florin
+f/ 166,740,0,301,163,81 2 0205 -- fraction
+%0 1174,751,13,58,-78,58 2 0206 -- perthousand
+dg 553,740,133,90,-96,81 2 0207 -- dagger
+dd 553,740,133,90,-22,81 2 0210 -- daggerdbl
+en 500,315,0,73,-31,73 0 0211 -- endash
+em 1000,315,0,73,-31,73 0 0212 -- emdash
+fi 487,753,0,122,-54,81 2 0214 -- fi
+fl 485,753,0,122,-54,81 2 0215 -- fl
+.i 200,547,0,86,-15,81 0 0220 -- dotlessi
+ga 378,786,0,97,-154,81 2 0222 -- grave
+a" 552,800,0,92,-189,81 2 0223 -- hungarumlaut
+a. 222,765,0,118,-142,81 2 0224 -- dotaccent
+ab 453,754,0,138,-142,81 2 0225 -- breve
+ah 502,764,0,113,-160,81 2 0226 -- caron
+ao 332,807,0,119,-141,81 2 0227 -- ring
+ho 302,0,191,0,-3 1 0230 -- ogonek
+lq 502,740,0,55,-184,55 2 0231 -- quotedblleft
+rq 484,740,0,108,-147,81 2 0232 -- quotedblright
+oe 1137,561,13,73,-30,73 0 0233 -- oe
+/l 300,740,0,104,-45,81 2 0234 -- lslash
+Bq 502,126,68,0,-26 0 0235 -- quotedblbase
+OE 1194,753,13,135,-57,81 2 0236 -- OE
+/L 517,740,0,62,-57,62 2 0237 -- Lslash
+r! 295,548,192,41,-24,41 1 0241 -- exclamdown
+char161 "
+ct 554,707,0,92,-65,81 0 0242 -- cent
+char162 "
+Po 554,753,0,110,21,81 2 0243 -- sterling
+char163 "
+Cs 554,580,0,141,26,81 0 0244 -- currency
+char164 "
+Ye 554,740,0,183,-25,81 2 0245 -- yen
+char165 "
+bb 672,740,100,0,-230 2 0246 -- brokenbar
+char166 "
+sc 615,753,141,32,-68,32 2 0247 -- section
+char167 "
+ad 369,765,0,118,-141,81 2 0250 -- dieresis
+char168 "
+co 747,752,12,133,-3,81 2 0251 -- copyright
+char169 "
+Of 369,753,0,175,-52,81 2 0252 -- ordfeminine
+char170 "
+fo 251,481,0,94,-42,81 0 0253 -- guilsinglleft
+no 606,388,0,71,-60,71 0 0254 -- logicalnot
+char172 "
+\- 606,287,0,52,-42,52 0 0255 -- minus
+rg 747,752,12,133,-3,81 2 0256 -- registered
+char174 "
+a- 485,736,0,112,-147,81 0 0257 -- macron
+char175 "
+de 400,709,0,101,-108,81 0 0260 -- degree
+char176 "
+char177 606,518,24,62,3,62 0 0261 -- plusminus
+S2 332,747,0,151,-24,81 2 0262 -- twosuperior
+char178 "
+S3 332,747,0,126,-48,81 2 0263 -- threesuperior
+char179 "
+aa 375,786,0,119,-153,81 2 0264 -- acute
+char180 "
+char181 608,547,184,70,4,70 0 0265 -- mu
+ps 564,740,110,174,-69,81 2 0266 -- paragraph
+char182 "
+char183 277,316,0,8,-87,8 0 0267 -- periodcentered
+ac 324,0,222,0,-2 1 0270 -- cedilla
+char184 "
+S1 332,740,0,53,-140,53 2 0271 -- onesuperior
+char185 "
+Om 369,753,0,147,-66,81 2 0272 -- ordmasculine
+char186 "
+fc 251,481,0,62,-10,62 0 0273 -- guilsinglright
+14 831,740,0,0,-133 2 0274 -- onequarter
+char188 "
+12 831,740,0,29,-114,29 2 0275 -- onehalf
+char189 "
+34 831,747,0,44,-76,44 2 0276 -- threequarters
+char190 "
+r? 591,548,205,0,-14 1 0277 -- questiondown
+char191 "
+`A 740,949,0,39,38,39 2 0300 -- Agrave
+char192 "
+'A 740,949,0,39,38,39 2 0301 -- Aacute
+char193 "
+^A 740,927,0,39,38,39 2 0302 -- Acircumflex
+char194 "
+~A 740,917,0,39,38,39 2 0303 -- Atilde
+char195 "
+:A 740,928,0,39,38,39 2 0304 -- Adieresis
+char196 "
+oA 740,955,0,39,38,39 2 0305 -- Aring
+char197 "
+AE 992,740,0,102,70,81 2 0306 -- AE
+char198 "
+,C 813,752,222,107,-55,81 3 0307 -- Ccedilla
+char199 "
+`E 536,949,0,126,-20,81 2 0310 -- Egrave
+char200 "
+'E 536,949,0,126,-20,81 2 0311 -- Eacute
+char201 "
+^E 536,927,0,126,-20,81 2 0312 -- Ecircumflex
+char202 "
+:E 536,928,0,126,-20,81 2 0313 -- Edieresis
+char203 "
+`I 226,949,0,164,-26,81 2 0314 -- Igrave
+char204 "
+'I 226,949,0,264,-26,81 2 0315 -- Iacute
+char205 "
+^I 226,927,0,263,-26,81 2 0316 -- Icircumflex
+char206 "
+:I 226,928,0,220,-26,81 2 0317 -- Idieresis
+char207 "
+-D 790,740,0,73,-54,73 2 0320 -- Eth
+char208 "
+~N 740,917,0,111,-25,81 2 0321 -- Ntilde
+char209 "
+`O 869,949,13,82,-55,81 2 0322 -- Ograve
+char210 "
+'O 869,949,13,82,-55,81 2 0323 -- Oacute
+char211 "
+^O 869,927,13,82,-55,81 2 0324 -- Ocircumflex
+char212 "
+~O 869,917,13,82,-55,81 2 0325 -- Otilde
+char213 "
+:O 869,928,13,82,-55,81 2 0326 -- Odieresis
+char214 "
+char215 606,482,0,56,-37,56 0 0327 -- multiply
+/O 868,819,83,111,-26,81 2 0330 -- Oslash
+char216 "
+`U 655,949,13,111,-68,81 2 0331 -- Ugrave
+char217 "
+'U 655,949,13,111,-68,81 2 0332 -- Uacute
+char218 "
+^U 655,927,13,111,-68,81 2 0333 -- Ucircumflex
+char219 "
+:U 655,928,13,111,-68,81 2 0334 -- Udieresis
+char220 "
+'Y 592,949,0,187,-88,81 2 0335 -- Yacute
+char221 "
+TP 592,740,0,79,-10,79 2 0336 -- Thorn
+char222 "
+ss 554,753,13,74,-11,74 2 0337 -- germandbls
+char223 "
+`a 683,786,13,89,-38,81 2 0340 -- agrave
+char224 "
+'a 683,786,13,89,-38,81 2 0341 -- aacute
+char225 "
+^a 683,764,13,89,-38,81 2 0342 -- acircumflex
+char226 "
+~a 683,754,13,89,-38,81 2 0343 -- atilde
+char227 "
+:a 683,765,13,89,-38,81 2 0344 -- adieresis
+char228 "
+oa 683,807,13,89,-38,81 2 0345 -- aring
+char229 "
+ae 1157,561,13,62,-30,62 0 0346 -- ae
+char230 "
+,c 647,561,222,81,-37,81 1 0347 -- ccedilla
+char231 "
+`e 650,786,13,64,-34,64 2 0350 -- egrave
+char232 "
+'e 650,786,13,64,-34,64 2 0351 -- eacute
+char233 "
+^e 650,764,13,64,-34,64 2 0352 -- ecircumflex
+char234 "
+:e 650,765,13,64,-34,64 2 0353 -- edieresis
+char235 "
+`i 200,786,0,146,-15,81 2 0354 -- igrave
+char236 "
+'i 200,786,0,247,-15,81 2 0355 -- iacute
+char237 "
+^i 200,764,0,245,9,81 2 0356 -- icircumflex
+char238 "
+:i 200,765,0,203,-15,81 2 0357 -- idieresis
+char239 "
+Sd 655,753,12,70,-38,70 2 0360 -- eth
+char240 "
+~n 610,754,0,49,-15,49 2 0361 -- ntilde
+char241 "
+`o 655,786,13,64,-38,64 2 0362 -- ograve
+char242 "
+'o 655,786,13,64,-38,64 2 0363 -- oacute
+char243 "
+^o 655,764,13,64,-38,64 2 0364 -- ocircumflex
+char244 "
+~o 655,754,13,64,-38,64 2 0365 -- otilde
+char245 "
+:o 655,765,13,64,-38,64 2 0366 -- odieresis
+char246 "
+char247 606,519,13,52,-42,52 0 0367 -- divide
+/o 653,614,64,100,-1,81 0 0370 -- oslash
+char248 "
+`u 608,786,13,84,-50,81 2 0371 -- ugrave
+char249 "
+'u 608,786,13,84,-50,81 2 0372 -- uacute
+char250 "
+^u 608,764,13,84,-50,81 2 0373 -- ucircumflex
+char251 "
+:u 608,765,13,84,-50,81 2 0374 -- udieresis
+char252 "
+'y 536,786,192,138,-47,81 3 0375 -- yacute
+char253 "
+Tp 682,740,192,67,22,67 3 0376 -- thorn
+char254 "
+:y 536,765,192,138,-47,81 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/AR b/font/devps/AR
new file mode 100644
index 000000000..8d34316d8
--- /dev/null
+++ b/font/devps/AR
@@ -0,0 +1,558 @@
+name AR
+internalname AvantGarde-Book
+spacewidth 277
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -62
+A w -65
+A v -70
+A u -20
+A ' -100
+A rq -100
+A Y -92
+A W -60
+A V -102
+A U -40
+A T -45
+A Q -40
+A O -50
+A G -40
+A C -40
+B A -10
+C A -40
+D . -20
+D , -20
+D Y -30
+D W -10
+D V -50
+D A -50
+F . -160
+F e -20
+F , -180
+F a -20
+F A -75
+G . -20
+G , -20
+G Y -20
+J . -15
+J a -20
+J A -30
+K o -15
+K e -20
+K O -20
+L y -23
+L ' -130
+L rq -130
+L Y -91
+L W -67
+L V -113
+L T -46
+O . -30
+O , -30
+O Y -30
+O X -30
+O W -20
+O V -60
+O T -30
+O A -60
+P . -300
+P o -60
+P e -20
+P , -280
+P a -20
+P A -114
+Q , 20
+R Y -10
+R W 10
+R V -10
+R T 6
+S , 20
+T y -50
+T w -55
+T u -46
+T ; -29
+T r -30
+T . -91
+T o -70
+T i 10
+T - -75
+T hy -75
+T char173 -75
+T e -49
+T , -82
+T : -15
+T a -90
+T O -30
+T A -45
+U . -20
+U , -20
+U A -40
+V u -40
+V ; -33
+V . -165
+V o -101
+V i -5
+V - -75
+V hy -75
+V char173 -75
+V e -101
+V , -145
+V : -18
+V a -104
+V O -60
+V G -20
+V A -102
+W y -2
+W u -30
+W ; -33
+W . -106
+W o -46
+W i 6
+W - -35
+W hy -35
+W char173 -35
+W e -47
+W , -106
+W : -15
+W a -50
+W O -20
+W A -58
+Y u -52
+Y ; -23
+Y . -175
+Y o -89
+Y - -85
+Y hy -85
+Y char173 -85
+Y e -89
+Y , -145
+Y : -10
+Y a -93
+Y O -30
+Y A -92
+a p 20
+a b 20
+b y -20
+b v -20
+c y -20
+c k -15
+, ' -120
+, rq -120
+e y -20
+e w -20
+e v -20
+f . -50
+f o -40
+f l -30
+f i -34
+f f -60
+f e -20
+f .i -34
+f , -50
+f a -40
+g a -15
+h y -30
+k y -5
+k e -15
+m y -20
+m u -20
+m a -20
+n y -15
+n v -20
+o y -20
+o x -15
+o w -20
+o v -30
+p y -20
+. ' -120
+. rq -120
+lq ` -35
+lq oq -35
+lq A -100
+` ` -203
+` oq -203
+oq ` -203
+oq oq -203
+` A -100
+oq A -100
+' v -30
+' t 10
+' s -15
+' r -20
+' ' -203
+' rq -35
+' d -110
+r y 40
+r v 40
+r u 20
+r t 20
+r s 20
+r q -8
+r . -73
+r p 20
+r o -20
+r n 21
+r m 28
+r l 20
+r k 20
+r i 20
+r - -60
+r hy -60
+r char173 -60
+r g -15
+r e -4
+r d -6
+r , -75
+r c -20
+r a -20
+s . 20
+s , 20
+v . -130
+v o -30
+v e -20
+v , -100
+v a -30
+w . -100
+w o -30
+w h 15
+w e -20
+w , -90
+w a -30
+y . -125
+y o -30
+y e -20
+y , -110
+y a -30
+charset
+ha 606,740 2 0000 -- asciicircum
+ti 606,319 0 0001 -- asciitilde
+vS 498,927,13 2 0002 -- Scaron
+vZ 480,927 2 0003 -- Zcaron
+vs 388,764,13 2 0004 -- scaron
+vz 425,764 2 0005 -- zcaron
+:Y 592,928 2 0006 -- Ydieresis
+tm 1000,740 2 0007 -- trademark
+aq 198,740 2 0010 -- quotesingle
+space 277 0 0040
+! 295,740 2 0041 -- exclam
+" 309,740 2 0042 -- quotedbl
+# 554,740 2 0043 -- numbersign
+sh "
+$ 554,811,70 2 0044 -- dollar
+Do "
+% 775,751,13 2 0045 -- percent
+& 757,753,12 2 0046 -- ampersand
+' 351,740 2 0047 -- quoteright
+( 369,757,205 3 0050 -- parenleft
+) 369,757,205 3 0051 -- parenright
+* 425,740 2 0052 -- asterisk
++ 606,506 0 0053 -- plus
+, 277,126,67 0 0054 -- comma
+- 332,315 0 0055 -- hyphen
+hy "
+char173 "
+. 277,126 0 0056 -- period
+/ 437,740,100 2 0057 -- slash
+sl "
+0 554,753,13 2 0060 -- zero
+1 554,740 2 0061 -- one
+2 554,753 2 0062 -- two
+3 554,753,13 2 0063 -- three
+4 554,740 2 0064 -- four
+5 554,740,13 2 0065 -- five
+6 554,739,13 2 0066 -- six
+7 554,740 2 0067 -- seven
+8 554,753,13 2 0070 -- eight
+9 554,752 2 0071 -- nine
+: 277,548 0 0072 -- colon
+; 277,548,67 0 0073 -- semicolon
+< 606,514,8 0 0074 -- less
+= 606,388 0 0075 -- equal
+> 606,514,8 0 0076 -- greater
+? 591,752 2 0077 -- question
+@ 867,753,13 2 0100 -- at
+at "
+A 740,740 2 0101 -- A
+B 574,740 2 0102 -- B
+C 813,752,13 2 0103 -- C
+D 744,740 2 0104 -- D
+E 536,740 2 0105 -- E
+F 485,740 2 0106 -- F
+G 872,753,13 2 0107 -- G
+H 683,740 2 0110 -- H
+I 226,740 2 0111 -- I
+J 482,740,13 2 0112 -- J
+K 591,740 2 0113 -- K
+L 462,740 2 0114 -- L
+M 919,740 2 0115 -- M
+N 740,740 2 0116 -- N
+O 869,753,13 2 0117 -- O
+P 592,740 2 0120 -- P
+Q 871,753,13 2 0121 -- Q
+R 607,740 2 0122 -- R
+S 498,753,13 2 0123 -- S
+T 426,740 2 0124 -- T
+U 655,740,13 2 0125 -- U
+V 702,740 2 0126 -- V
+W 960,740 2 0127 -- W
+X 609,740 2 0130 -- X
+Y 592,740 2 0131 -- Y
+Z 480,740 2 0132 -- Z
+[ 351,753,179 2 0133 -- bracketleft
+lB "
+\ 605,740,100 2 0134 -- backslash
+rs "
+] 351,753,179 2 0135 -- bracketright
+rB "
+a^ 502,764 2 0136 -- circumflex
+^ "
+_ 500,0,125 0 0137 -- underscore
+` 351,740 2 0140 -- quoteleft
+oq "
+a 683,561,13 0 0141 -- a
+b 682,740,13 2 0142 -- b
+c 647,561,13 0 0143 -- c
+d 685,740,13 2 0144 -- d
+e 650,561,13 0 0145 -- e
+f 314,753 2 0146 -- f
+g 673,561,215 1 0147 -- g
+h 610,740 2 0150 -- h
+i 200,740 2 0151 -- i
+j 203,740,192 3 0152 -- j
+k 502,740 2 0153 -- k
+l 200,740 2 0154 -- l
+m 938,561 0 0155 -- m
+n 610,561 0 0156 -- n
+o 655,561,13 0 0157 -- o
+p 682,561,192 1 0160 -- p
+q 682,561,192 1 0161 -- q
+r 301,561 0 0162 -- r
+s 388,561,13 0 0163 -- s
+t 339,740 2 0164 -- t
+u 608,547,13 0 0165 -- u
+v 554,547 0 0166 -- v
+w 831,547 0 0167 -- w
+x 480,547 0 0170 -- x
+y 536,547,192 1 0171 -- y
+z 425,547 0 0172 -- z
+lC 351,740,189 2 0173 -- braceleft
+{ "
+ba 672,740,100 2 0174 -- bar
+| "
+rC 351,740,189 2 0175 -- braceright
+} "
+a~ 439,754 2 0176 -- tilde
+~ "
+bq 354,126,68 0 0200 -- quotesinglbase
+Fo 425,481 0 0201 -- guillemotleft
+char171 "
+Fc 425,481 0 0202 -- guillemotright
+char187 "
+bu 606,532 0 0203 -- bullet
+Fn 554,818,153 2 0204 -- florin
+f/ 166,740 2 0205 -- fraction
+%0 1174,751,13 2 0206 -- perthousand
+dg 553,740,133 2 0207 -- dagger
+dd 553,740,133 2 0210 -- daggerdbl
+en 500,315 0 0211 -- endash
+em 1000,315 0 0212 -- emdash
+fi 487,753 2 0214 -- fi
+fl 485,753 2 0215 -- fl
+.i 200,547 0 0220 -- dotlessi
+ga 378,786 2 0222 -- grave
+a" 552,800 2 0223 -- hungarumlaut
+a. 222,765 2 0224 -- dotaccent
+ab 453,754 2 0225 -- breve
+ah 502,764 2 0226 -- caron
+ao 332,807 2 0227 -- ring
+ho 302,0,191 1 0230 -- ogonek
+lq 502,740 2 0231 -- quotedblleft
+rq 484,740 2 0232 -- quotedblright
+oe 1137,561,13 0 0233 -- oe
+/l 300,740 2 0234 -- lslash
+Bq 502,126,68 0 0235 -- quotedblbase
+OE 1194,753,13 2 0236 -- OE
+/L 517,740 2 0237 -- Lslash
+r! 295,548,192 1 0241 -- exclamdown
+char161 "
+ct 554,707 0 0242 -- cent
+char162 "
+Po 554,753 2 0243 -- sterling
+char163 "
+Cs 554,580 0 0244 -- currency
+char164 "
+Ye 554,740 2 0245 -- yen
+char165 "
+bb 672,740,100 2 0246 -- brokenbar
+char166 "
+sc 615,753,141 2 0247 -- section
+char167 "
+ad 369,765 2 0250 -- dieresis
+char168 "
+co 747,752,12 2 0251 -- copyright
+char169 "
+Of 369,753 2 0252 -- ordfeminine
+char170 "
+fo 251,481 0 0253 -- guilsinglleft
+no 606,388 0 0254 -- logicalnot
+char172 "
+\- 606,287 0 0255 -- minus
+rg 747,752,12 2 0256 -- registered
+char174 "
+a- 485,736 0 0257 -- macron
+char175 "
+de 400,709 0 0260 -- degree
+char176 "
+char177 606,518,24 0 0261 -- plusminus
+S2 332,747 2 0262 -- twosuperior
+char178 "
+S3 332,747 2 0263 -- threesuperior
+char179 "
+aa 375,786 2 0264 -- acute
+char180 "
+char181 608,547,184 0 0265 -- mu
+ps 564,740,110 2 0266 -- paragraph
+char182 "
+char183 277,316 0 0267 -- periodcentered
+ac 324,0,222 1 0270 -- cedilla
+char184 "
+S1 332,740 2 0271 -- onesuperior
+char185 "
+Om 369,753 2 0272 -- ordmasculine
+char186 "
+fc 251,481 0 0273 -- guilsinglright
+14 831,740 2 0274 -- onequarter
+char188 "
+12 831,740 2 0275 -- onehalf
+char189 "
+34 831,747 2 0276 -- threequarters
+char190 "
+r? 591,548,205 1 0277 -- questiondown
+char191 "
+`A 740,949 2 0300 -- Agrave
+char192 "
+'A 740,949 2 0301 -- Aacute
+char193 "
+^A 740,927 2 0302 -- Acircumflex
+char194 "
+~A 740,917 2 0303 -- Atilde
+char195 "
+:A 740,928 2 0304 -- Adieresis
+char196 "
+oA 740,955 2 0305 -- Aring
+char197 "
+AE 992,740 2 0306 -- AE
+char198 "
+,C 813,752,222 3 0307 -- Ccedilla
+char199 "
+`E 536,949 2 0310 -- Egrave
+char200 "
+'E 536,949 2 0311 -- Eacute
+char201 "
+^E 536,927 2 0312 -- Ecircumflex
+char202 "
+:E 536,928 2 0313 -- Edieresis
+char203 "
+`I 226,949 2 0314 -- Igrave
+char204 "
+'I 226,949 2 0315 -- Iacute
+char205 "
+^I 226,927 2 0316 -- Icircumflex
+char206 "
+:I 226,928 2 0317 -- Idieresis
+char207 "
+-D 790,740 2 0320 -- Eth
+char208 "
+~N 740,917 2 0321 -- Ntilde
+char209 "
+`O 869,949,13 2 0322 -- Ograve
+char210 "
+'O 869,949,13 2 0323 -- Oacute
+char211 "
+^O 869,927,13 2 0324 -- Ocircumflex
+char212 "
+~O 869,917,13 2 0325 -- Otilde
+char213 "
+:O 869,928,13 2 0326 -- Odieresis
+char214 "
+char215 606,482 0 0327 -- multiply
+/O 868,819,83 2 0330 -- Oslash
+char216 "
+`U 655,949,13 2 0331 -- Ugrave
+char217 "
+'U 655,949,13 2 0332 -- Uacute
+char218 "
+^U 655,927,13 2 0333 -- Ucircumflex
+char219 "
+:U 655,928,13 2 0334 -- Udieresis
+char220 "
+'Y 592,949 2 0335 -- Yacute
+char221 "
+TP 592,740 2 0336 -- Thorn
+char222 "
+ss 554,753,13 2 0337 -- germandbls
+char223 "
+`a 683,786,13 2 0340 -- agrave
+char224 "
+'a 683,786,13 2 0341 -- aacute
+char225 "
+^a 683,764,13 2 0342 -- acircumflex
+char226 "
+~a 683,754,13 2 0343 -- atilde
+char227 "
+:a 683,765,13 2 0344 -- adieresis
+char228 "
+oa 683,807,13 2 0345 -- aring
+char229 "
+ae 1157,561,13 0 0346 -- ae
+char230 "
+,c 647,561,222 1 0347 -- ccedilla
+char231 "
+`e 650,786,13 2 0350 -- egrave
+char232 "
+'e 650,786,13 2 0351 -- eacute
+char233 "
+^e 650,764,13 2 0352 -- ecircumflex
+char234 "
+:e 650,765,13 2 0353 -- edieresis
+char235 "
+`i 200,786 2 0354 -- igrave
+char236 "
+'i 200,786 2 0355 -- iacute
+char237 "
+^i 200,764 2 0356 -- icircumflex
+char238 "
+:i 200,765 2 0357 -- idieresis
+char239 "
+Sd 655,753,12 2 0360 -- eth
+char240 "
+~n 610,754 2 0361 -- ntilde
+char241 "
+`o 655,786,13 2 0362 -- ograve
+char242 "
+'o 655,786,13 2 0363 -- oacute
+char243 "
+^o 655,764,13 2 0364 -- ocircumflex
+char244 "
+~o 655,754,13 2 0365 -- otilde
+char245 "
+:o 655,765,13 2 0366 -- odieresis
+char246 "
+char247 606,519,13 0 0367 -- divide
+/o 653,614,64 0 0370 -- oslash
+char248 "
+`u 608,786,13 2 0371 -- ugrave
+char249 "
+'u 608,786,13 2 0372 -- uacute
+char250 "
+^u 608,764,13 2 0373 -- ucircumflex
+char251 "
+:u 608,765,13 2 0374 -- udieresis
+char252 "
+'y 536,786,192 3 0375 -- yacute
+char253 "
+Tp 682,740,192 3 0376 -- thorn
+char254 "
+:y 536,765,192 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/BMB b/font/devps/BMB
new file mode 100644
index 000000000..b0e0d86ec
--- /dev/null
+++ b/font/devps/BMB
@@ -0,0 +1,438 @@
+name BMB
+internalname Bookman-Demi
+spacewidth 340
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -1
+A w -9
+A v -8
+A Y -52
+A W -20
+A V -68
+A T -40
+F . -132
+F , -130
+F A -59
+L y 19
+L Y -35
+L W -41
+L V -50
+L T -4
+P . -128
+P , -129
+P A -46
+R y -8
+R Y -20
+R W -24
+R V -29
+R T -4
+T ; 5
+T s -10
+T r 27
+T . -122
+T o -28
+T i 27
+T - -10
+T hy -10
+T char173 -10
+T e -29
+T , -122
+T : 7
+T c -29
+T a -24
+T A -42
+V y 12
+V u -11
+V ; -38
+V r -15
+V . -105
+V o -79
+V i 15
+V - -10
+V hy -10
+V char173 -10
+V e -80
+V , -103
+V : -37
+V a -74
+V A -88
+W y 12
+W u -11
+W ; -38
+W r -15
+W . -105
+W o -78
+W i 15
+W - -10
+W hy -10
+W char173 -10
+W e -79
+W , -103
+W : -37
+W a -73
+W A -60
+Y v 24
+Y u -13
+Y ; -34
+Y q -66
+Y . -105
+Y p -23
+Y o -66
+Y i 2
+Y - -10
+Y hy -10
+Y char173 -10
+Y e -67
+Y , -103
+Y : -32
+Y a -60
+Y A -56
+f f 21
+r q -9
+r . -102
+r o -9
+r n 20
+r m 20
+r - -10
+r hy -10
+r char173 -10
+r h -23
+r g -9
+r f 20
+r e -10
+r d -10
+r , -101
+r c -9
+charset
+ha 600,681 2 0000 -- asciicircum
+ti 600,368 0 0001 -- asciitilde
+vS 660,896,17 2 0002 -- Scaron
+vZ 640,896 2 0003 -- Zcaron
+vs 520,717,8 2 0004 -- scaron
+vz 560,717 2 0005 -- zcaron
+:Y 700,877 2 0006 -- Ydieresis
+tm 980,681 2 0007 -- trademark
+aq 240,698 2 0010 -- quotesingle
+space 340 0 0040
+! 360,698,8 2 0041 -- exclam
+" 420,698 2 0042 -- quotedbl
+# 660,681 2 0043 -- numbersign
+sh "
+$ 660,805,119 2 0044 -- dollar
+Do "
+% 940,698,8 2 0045 -- percent
+& 800,698,17 2 0046 -- ampersand
+' 320,698 2 0047 -- quoteright
+( 320,749,150 2 0050 -- parenleft
+) 320,749,150 2 0051 -- parenright
+* 460,697 2 0052 -- asterisk
++ 600,514 0 0053 -- plus
+, 340,162,124 0 0054 -- comma
+- 360,318 0 0055 -- hyphen
+hy "
+char173 "
+. 340,172,8 0 0056 -- period
+/ 600,725,149 2 0057 -- slash
+sl "
+0 660,698,17 2 0060 -- zero
+1 660,681 2 0061 -- one
+2 660,698 2 0062 -- two
+3 660,698,17 2 0063 -- three
+4 660,681 2 0064 -- four
+5 660,723,17 2 0065 -- five
+6 660,698,17 2 0066 -- six
+7 660,681 2 0067 -- seven
+8 660,698,17 2 0070 -- eight
+9 660,698,17 2 0071 -- nine
+: 340,515,8 0 0072 -- colon
+; 340,515,124 0 0073 -- semicolon
+< 600,542,9 0 0074 -- less
+= 600,421 0 0075 -- equal
+> 600,542,9 0 0076 -- greater
+? 660,698,8 2 0077 -- question
+@ 820,698,17 2 0100 -- at
+at "
+A 720,681 2 0101 -- A
+B 720,681 2 0102 -- B
+C 740,698,17 2 0103 -- C
+D 780,681 2 0104 -- D
+E 720,681 2 0105 -- E
+F 680,681 2 0106 -- F
+G 780,698,17 2 0107 -- G
+H 820,681 2 0110 -- H
+I 400,681 2 0111 -- I
+J 640,681,17 2 0112 -- J
+K 800,681 2 0113 -- K
+L 640,681 2 0114 -- L
+M 940,681 2 0115 -- M
+N 740,681 2 0116 -- N
+O 800,698,17 2 0117 -- O
+P 660,681 2 0120 -- P
+Q 800,698,226 3 0121 -- Q
+R 780,681 2 0122 -- R
+S 660,698,17 2 0123 -- S
+T 700,681 2 0124 -- T
+U 740,681,17 2 0125 -- U
+V 720,681 2 0126 -- V
+W 940,681 2 0127 -- W
+X 780,681 2 0130 -- X
+Y 700,681 2 0131 -- Y
+Z 640,681 2 0132 -- Z
+[ 300,725,138 2 0133 -- bracketleft
+lB "
+\ 600,725 2 0134 -- backslash
+rs "
+] 300,725,138 2 0135 -- bracketright
+rB "
+a^ 500,731 2 0136 -- circumflex
+^ "
+_ 500,0,155 0 0137 -- underscore
+` 320,698 2 0140 -- quoteleft
+oq "
+a 580,515,8 0 0141 -- a
+b 600,725,8 2 0142 -- b
+c 580,515,8 0 0143 -- c
+d 640,725,8 2 0144 -- d
+e 580,515,8 0 0145 -- e
+f 380,741 2 0146 -- f
+g 580,595,243 1 0147 -- g
+h 680,725 2 0150 -- h
+i 360,729 2 0151 -- i
+j 340,729,221 3 0152 -- j
+k 660,725 2 0153 -- k
+l 340,725 2 0154 -- l
+m 1000,515 0 0155 -- m
+n 680,515 0 0156 -- n
+o 620,515,8 0 0157 -- o
+p 640,515,212 1 0160 -- p
+q 620,515,212 1 0161 -- q
+r 460,502 0 0162 -- r
+s 520,515,8 0 0163 -- s
+t 460,660,8 2 0164 -- t
+u 660,502,8 0 0165 -- u
+v 600,502 0 0166 -- v
+w 800,502 0 0167 -- w
+x 600,502 0 0170 -- x
+y 620,502,221 1 0171 -- y
+z 560,502 0 0172 -- z
+lC 320,726,139 2 0173 -- braceleft
+{ "
+ba 600,725 2 0174 -- bar
+| "
+rC 320,726,139 2 0175 -- braceright
+} "
+a~ 480,691 2 0176 -- tilde
+~ "
+bq 320,144,114 0 0200 -- quotesinglbase
+Fo 400,457 0 0201 -- guillemotleft
+char171 "
+Fc 400,457 0 0202 -- guillemotright
+char187 "
+bu 460,511 0 0203 -- bullet
+Fn 660,749,209 2 0204 -- florin
+f/ 120,681 2 0205 -- fraction
+%0 1360,698,8 2 0206 -- perthousand
+dg 440,698,156 2 0207 -- dagger
+dd 380,698,156 2 0210 -- daggerdbl
+en 500,318 0 0211 -- endash
+em 1000,318 0 0212 -- emdash
+fi 740,741 2 0214 -- fi
+fl 740,741 2 0215 -- fl
+.i 360,502 0 0220 -- dotlessi
+ga 400,730 2 0222 -- grave
+a" 440,741 2 0223 -- hungarumlaut
+a. 320,730 2 0224 -- dotaccent
+ab 500,722 2 0225 -- breve
+ah 500,717 2 0226 -- caron
+ao 340,755 2 0227 -- ring
+ho 320,0,163 0 0230 -- ogonek
+lq 540,698 2 0231 -- quotedblleft
+rq 540,698 2 0232 -- quotedblright
+oe 940,515,8 0 0233 -- oe
+/l 340,725 2 0234 -- lslash
+Bq 540,144,114 0 0235 -- quotedblbase
+OE 1220,698,17 2 0236 -- OE
+/L 640,681 2 0237 -- Lslash
+r! 360,515,191 0 0241 -- exclamdown
+char161 "
+ct 660,674 2 0242 -- cent
+char162 "
+Po 660,698,17 2 0243 -- sterling
+char163 "
+Cs 660,593 0 0244 -- currency
+char164 "
+Ye 660,681 2 0245 -- yen
+char165 "
+bb 600,725 2 0246 -- brokenbar
+char166 "
+sc 600,698,153 2 0247 -- section
+char167 "
+ad 500,698 2 0250 -- dieresis
+char168 "
+co 740,698,17 2 0251 -- copyright
+char169 "
+Of 400,698 2 0252 -- ordfeminine
+char170 "
+fo 220,457 0 0253 -- guilsinglleft
+no 600,421 0 0254 -- logicalnot
+char172 "
+\- 600,323 0 0255 -- minus
+rg 740,698,17 2 0256 -- registered
+char174 "
+a- 460,663 2 0257 -- macron
+char175 "
+de 400,698 2 0260 -- degree
+char176 "
+char177 600,514 0 0261 -- plusminus
+S2 396,698 2 0262 -- twosuperior
+char178 "
+S3 396,698 2 0263 -- threesuperior
+char179 "
+aa 400,731 2 0264 -- acute
+char180 "
+char181 660,502,221 1 0265 -- mu
+ps 800,681,101 2 0266 -- paragraph
+char182 "
+char183 340,355 0 0267 -- periodcentered
+ac 360,0,213 1 0270 -- cedilla
+char184 "
+S1 396,687 2 0271 -- onesuperior
+char185 "
+Om 400,698 2 0272 -- ordmasculine
+char186 "
+fc 220,457 0 0273 -- guilsinglright
+14 990,681 2 0274 -- onequarter
+char188 "
+12 990,681 2 0275 -- onehalf
+char189 "
+34 990,692 2 0276 -- threequarters
+char190 "
+r? 660,515,191 0 0277 -- questiondown
+char191 "
+`A 720,909 2 0300 -- Agrave
+char192 "
+'A 720,910 2 0301 -- Aacute
+char193 "
+^A 720,910 2 0302 -- Acircumflex
+char194 "
+~A 720,870 2 0303 -- Atilde
+char195 "
+:A 720,877 2 0304 -- Adieresis
+char196 "
+oA 720,934 2 0305 -- Aring
+char197 "
+AE 1140,681 2 0306 -- AE
+char198 "
+,C 740,698,213 3 0307 -- Ccedilla
+char199 "
+`E 720,909 2 0310 -- Egrave
+char200 "
+'E 720,910 2 0311 -- Eacute
+char201 "
+^E 720,910 2 0312 -- Ecircumflex
+char202 "
+:E 720,877 2 0313 -- Edieresis
+char203 "
+`I 400,909 2 0314 -- Igrave
+char204 "
+'I 400,910 2 0315 -- Iacute
+char205 "
+^I 400,910 2 0316 -- Icircumflex
+char206 "
+:I 400,877 2 0317 -- Idieresis
+char207 "
+-D 780,681 2 0320 -- Eth
+char208 "
+~N 740,870 2 0321 -- Ntilde
+char209 "
+`O 800,909,17 2 0322 -- Ograve
+char210 "
+'O 800,910,17 2 0323 -- Oacute
+char211 "
+^O 800,910,17 2 0324 -- Ocircumflex
+char212 "
+~O 800,870,17 2 0325 -- Otilde
+char213 "
+:O 800,877,17 2 0326 -- Odieresis
+char214 "
+char215 600,514 0 0327 -- multiply
+/O 800,781,110 2 0330 -- Oslash
+char216 "
+`U 740,909,17 2 0331 -- Ugrave
+char217 "
+'U 740,910,17 2 0332 -- Uacute
+char218 "
+^U 740,910,17 2 0333 -- Ucircumflex
+char219 "
+:U 740,877,17 2 0334 -- Udieresis
+char220 "
+'Y 700,910 2 0335 -- Yacute
+char221 "
+TP 660,681 2 0336 -- Thorn
+char222 "
+ss 660,699,91 2 0337 -- germandbls
+char223 "
+`a 580,730,8 2 0340 -- agrave
+char224 "
+'a 580,731,8 2 0341 -- aacute
+char225 "
+^a 580,731,8 2 0342 -- acircumflex
+char226 "
+~a 580,691,8 2 0343 -- atilde
+char227 "
+:a 580,698,8 2 0344 -- adieresis
+char228 "
+oa 580,755,8 2 0345 -- aring
+char229 "
+ae 880,515,8 0 0346 -- ae
+char230 "
+,c 580,515,213 1 0347 -- ccedilla
+char231 "
+`e 580,730,8 2 0350 -- egrave
+char232 "
+'e 580,731,8 2 0351 -- eacute
+char233 "
+^e 580,731,8 2 0352 -- ecircumflex
+char234 "
+:e 580,698,8 2 0353 -- edieresis
+char235 "
+`i 360,730 2 0354 -- igrave
+char236 "
+'i 360,731 2 0355 -- iacute
+char237 "
+^i 360,731 2 0356 -- icircumflex
+char238 "
+:i 360,698 2 0357 -- idieresis
+char239 "
+Sd 620,741,8 2 0360 -- eth
+char240 "
+~n 680,691 2 0361 -- ntilde
+char241 "
+`o 620,730,8 2 0362 -- ograve
+char242 "
+'o 620,731,8 2 0363 -- oacute
+char243 "
+^o 620,731,8 2 0364 -- ocircumflex
+char244 "
+~o 620,691,8 2 0365 -- otilde
+char245 "
+:o 620,698,8 2 0366 -- odieresis
+char246 "
+char247 600,521 0 0367 -- divide
+/o 620,551,40 0 0370 -- oslash
+char248 "
+`u 660,730,8 2 0371 -- ugrave
+char249 "
+'u 660,731,8 2 0372 -- uacute
+char250 "
+^u 660,731,8 2 0373 -- ucircumflex
+char251 "
+:u 660,698,8 2 0374 -- udieresis
+char252 "
+'y 620,731,221 3 0375 -- yacute
+char253 "
+Tp 640,725,212 3 0376 -- thorn
+char254 "
+:y 620,698,221 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/BMBI b/font/devps/BMBI
new file mode 100644
index 000000000..854032bf5
--- /dev/null
+++ b/font/devps/BMBI
@@ -0,0 +1,441 @@
+name BMBI
+internalname Bookman-DemiItalic
+slant 10
+spacewidth 340
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y 20
+A w 20
+A v 20
+A Y -25
+A W -35
+A V -40
+A T -17
+F . -105
+F , -98
+F A -35
+L y 62
+L Y -5
+L W -15
+L V -19
+L T -26
+P . -105
+P , -98
+P A -31
+R y 27
+R Y 4
+R W -4
+R V -8
+R T -3
+T y 56
+T w 69
+T u 42
+T ; 31
+T s -1
+T r 41
+T . -107
+T o -5
+T i 42
+T - -20
+T hy -20
+T char173 -20
+T e -10
+T , -100
+T : 26
+T c -8
+T a -8
+T A -42
+V y 17
+V u -1
+V ; -22
+V r 2
+V . -115
+V o -50
+V i 32
+V - -20
+V hy -20
+V char173 -20
+V e -50
+V , -137
+V : -28
+V a -50
+V A -50
+W y -51
+W u -69
+W ; -81
+W r -66
+W . -183
+W o -100
+W i -36
+W - -22
+W hy -22
+W char173 -22
+W e -100
+W , -201
+W : -86
+W a -100
+W A -77
+Y v 26
+Y u -1
+Y ; -4
+Y q -43
+Y . -113
+Y o -41
+Y i 20
+Y - -20
+Y hy -20
+Y char173 -20
+Y e -46
+Y , -106
+Y : -9
+Y a -45
+Y A -30
+f f 10
+r q -3
+r . -120
+r o -1
+r n 39
+r m 39
+r - -20
+r hy -20
+r char173 -20
+r h -35
+r g -23
+r f 42
+r e -6
+r d -3
+r , -113
+r c -5
+charset
+ha 620,681,0,24,-42,24 2 0000 -- asciicircum
+ti 620,368,0,35,-51,35 0 0001 -- asciitilde
+vS 700,915,17,81,-9,73 2 0002 -- Scaron
+vZ 680,915,0,110,27,73 2 0003 -- Zcaron
+vs 540,749,8,83,18,73 2 0004 -- scaron
+vz 560,749,8,76,14,73 2 0005 -- zcaron
+:Y 660,900,0,207,-22,73 2 0006 -- Ydieresis
+tm 940,681,0,92,8,73 2 0007 -- trademark
+aq 180,696,0,165,-76,73 2 0010 -- quotesingle
+space 340 0 0040
+! 320,698,8,96,-36,73 2 0041 -- exclam
+" 380,697,0,177,-90,73 2 0042 -- quotedbl
+# 680,681,0,19,-107,19 2 0043 -- numbersign
+sh "
+$ 680,790,164,67,5,67 2 0044 -- dollar
+Do "
+% 880,698,17,69,-56,69 2 0045 -- percent
+& 980,698,17,86,2,73 2 0046 -- ampersand
+' 320,698,0,79,-121,73 2 0047 -- quoteright
+( 260,741,134,178,19,73 2 0050 -- parenleft
+) 260,741,134,112,85,73 2 0051 -- parenright
+* 460,698,0,98,-76,73 2 0052 -- asterisk
++ 600,514,0,45,-41,45 0 0053 -- plus
+, 340,185,124,8,-50,8 0 0054 -- comma
+- 280,313,0,89,-9,73 0 0055 -- hyphen
+hy "
+char173 "
+. 340,177,8,6,-56,6 0 0056 -- period
+/ 360,742,106,192,41,73 2 0057 -- slash
+sl "
+0 680,698,17,73,-37,73 2 0060 -- zero
+1 680,681,0,0,-73 2 0061 -- one
+2 680,698,0,44,-17,44 2 0062 -- two
+3 680,698,17,53,-22,53 2 0063 -- three
+4 680,681,0,78,-13,73 2 0064 -- four
+5 680,681,17,39,-28,39 2 0065 -- five
+6 680,698,17,74,-38,73 2 0066 -- six
+7 680,681,0,109,-73,73 2 0067 -- seven
+8 680,698,17,56,-18,56 2 0070 -- eight
+9 680,698,17,82,-21,73 2 0071 -- nine
+: 340,515,8,66,-56,66 0 0072 -- colon
+; 340,515,124,62,-50,62 0 0073 -- semicolon
+< 620,540,9,18,-29,18 0 0074 -- less
+= 600,421,0,45,-41,45 0 0075 -- equal
+> 620,540,9,28,-39,28 0 0076 -- greater
+? 620,698,8,98,-95,73 2 0077 -- question
+@ 780,698,17,60,-30,60 2 0100 -- at
+at "
+A 720,681,0,99,77,73 2 0101 -- A
+B 720,681,0,92,36,73 2 0102 -- B
+C 700,698,17,104,-28,73 2 0103 -- C
+D 760,681,0,95,36,73 2 0104 -- D
+E 720,681,0,107,36,73 2 0105 -- E
+F 660,681,0,153,36,73 2 0106 -- F
+G 760,698,17,118,-27,73 2 0107 -- G
+H 800,681,0,160,36,73 2 0110 -- H
+I 380,681,0,155,36,73 2 0111 -- I
+J 620,681,17,151,42,73 2 0112 -- J
+K 780,681,0,149,36,73 2 0113 -- K
+L 640,681,0,135,36,73 2 0114 -- L
+M 860,681,0,160,36,73 2 0115 -- M
+N 740,681,0,155,36,73 2 0116 -- N
+O 760,698,17,96,-28,73 2 0117 -- O
+P 640,681,0,134,56,73 2 0120 -- P
+Q 760,698,213,95,13,73 3 0121 -- Q
+R 740,681,0,75,36,73 2 0122 -- R
+S 700,698,17,81,-9,73 2 0123 -- S
+T 700,681,0,152,-20,73 2 0124 -- T
+U 740,681,17,165,-62,73 2 0125 -- U
+V 660,681,0,209,-22,73 2 0126 -- V
+W 1000,681,0,140,-22,73 2 0127 -- W
+X 740,681,0,145,57,73 2 0130 -- X
+Y 660,681,0,207,-22,73 2 0131 -- Y
+Z 680,681,0,110,27,73 2 0132 -- Z
+[ 260,741,118,164,41,73 2 0133 -- bracketleft
+lB "
+\ 580,741,0,45,-23,45 2 0134 -- backslash
+rs "
+] 260,741,118,137,68,73 2 0135 -- bracketright
+rB "
+a^ 480,749,0,93,-133,73 2 0136 -- circumflex
+^ "
+_ 500,0,155,50,50,50 0 0137 -- underscore
+` 320,698,0,63,-105,63 2 0140 -- quoteleft
+oq "
+a 680,515,8,105,-34,73 0 0141 -- a
+b 600,732,8,83,-7,73 2 0142 -- b
+c 560,515,8,87,-8,73 0 0143 -- c
+d 680,732,8,84,-10,73 2 0144 -- d
+e 560,515,8,86,-9,73 0 0145 -- e
+f 420,741,213,271,242,73 3 0146 -- f
+g 620,515,213,99,29,73 1 0147 -- g
+h 700,732,8,86,-43,73 2 0150 -- h
+i 380,755,8,90,-33,73 2 0151 -- i
+j 320,755,213,122,210,73 3 0152 -- j
+k 700,732,8,82,-47,73 2 0153 -- k
+l 380,732,8,80,-59,73 2 0154 -- l
+m 960,515,8,86,-33,73 0 0155 -- m
+n 680,515,8,85,-33,73 0 0156 -- n
+o 600,515,8,77,-9,73 0 0157 -- o
+p 660,515,213,72,74,72 1 0160 -- p
+q 620,515,213,70,-10,70 1 0161 -- q
+r 500,515,0,132,-34,73 0 0162 -- r
+s 540,515,8,83,18,73 0 0163 -- s
+t 440,658,8,98,-56,73 2 0164 -- t
+u 680,507,8,90,-33,73 0 0165 -- u
+v 540,515,8,82,-6,73 0 0166 -- v
+w 860,515,8,81,-6,73 0 0167 -- w
+x 620,515,8,84,40,73 0 0170 -- x
+y 600,507,213,92,25,73 1 0171 -- y
+z 560,515,8,76,14,73 0 0172 -- z
+lC 300,742,123,159,-3,73 2 0173 -- braceleft
+{ "
+ba 620,741,0,0,-253 2 0174 -- bar
+| "
+rC 300,742,123,102,54,73 2 0175 -- braceright
+} "
+a~ 480,709,0,103,-128,73 2 0176 -- tilde
+~ "
+bq 300,166,112,34,-56,34 0 0200 -- quotesinglbase
+Fo 380,503,0,76,-12,73 0 0201 -- guillemotleft
+char171 "
+Fc 380,503,0,76,-12,73 0 0202 -- guillemotright
+char187 "
+bu 360,511,0,94,-10,73 0 0203 -- bullet
+Fn 680,741,199,113,78,73 2 0204 -- florin
+f/ 120,681,0,312,194,73 2 0205 -- fraction
+%0 1360,698,17,23,-56,23 2 0206 -- perthousand
+dg 420,698,137,96,-39,73 2 0207 -- dagger
+dd 420,698,137,116,-29,73 2 0210 -- daggerdbl
+en 500,311,0,123,10,73 0 0211 -- endash
+em 1000,311,0,123,10,73 0 0212 -- emdash
+fi 820,741,213,80,241,73 3 0214 -- fi
+fl 820,741,213,80,241,73 3 0215 -- fl
+.i 380,507,8,90,-33,73 0 0220 -- dotlessi
+ga 380,771,0,94,-143,73 2 0222 -- grave
+a" 560,775,0,106,-131,73 2 0223 -- hungarumlaut
+a. 380,734,0,15,-130,15 2 0224 -- dotaccent
+ab 460,707,0,106,-127,73 2 0225 -- breve
+ah 480,749,0,93,-133,73 2 0226 -- caron
+ao 360,775,0,96,-135,73 2 0227 -- ring
+ho 320,0,182,0,-18 0 0230 -- ogonek
+lq 520,698,0,75,-106,73 2 0231 -- quotedblleft
+rq 520,698,0,90,-121,73 2 0232 -- quotedblright
+oe 920,515,8,91,2,73 0 0233 -- oe
+/l 380,732,8,82,-13,73 2 0234 -- lslash
+Bq 520,166,112,25,-56,25 0 0235 -- quotedblbase
+OE 1180,698,17,115,-44,73 2 0236 -- OE
+/L 640,681,0,134,36,73 2 0237 -- Lslash
+r! 320,515,191,74,-14,73 0 0241 -- exclamdown
+char161 "
+ct 680,718,0,0,-111 2 0242 -- cent
+char162 "
+Po 680,698,17,157,50,73 2 0243 -- sterling
+char163 "
+Cs 680,571,0,7,-98,7 0 0244 -- currency
+char164 "
+Ye 680,681,0,152,-42,73 2 0245 -- yen
+char165 "
+bb 620,741,0,0,-253 2 0246 -- brokenbar
+char166 "
+sc 620,698,137,68,4,68 2 0247 -- section
+char167 "
+ad 520,734,0,99,-130,73 2 0250 -- dieresis
+char168 "
+co 780,698,17,53,-33,53 2 0251 -- copyright
+char169 "
+Of 440,685,0,105,-5,73 2 0252 -- ordfeminine
+char170 "
+fo 220,503,0,79,-12,73 0 0253 -- guilsinglleft
+no 620,421,0,15,-31,15 0 0254 -- logicalnot
+char172 "
+\- 600,323,0,45,-41,45 0 0255 -- minus
+rg 780,698,17,53,-33,53 2 0256 -- registered
+char174 "
+a- 480,691,0,101,-127,73 2 0257 -- macron
+char175 "
+de 400,698,0,80,-80,73 2 0260 -- degree
+char176 "
+char177 600,514,0,45,-41,45 0 0261 -- plusminus
+S2 408,698,0,127,-41,73 2 0262 -- twosuperior
+char178 "
+S3 408,698,0,125,-36,73 2 0263 -- threesuperior
+char179 "
+aa 340,771,0,117,-126,73 2 0264 -- acute
+char180 "
+char181 680,507,213,90,-4,73 1 0265 -- mu
+ps 680,681,204,96,-20,73 2 0266 -- paragraph
+char182 "
+char183 340,358,0,26,-76,26 0 0267 -- periodcentered
+ac 360,0,220,0,-18 1 0270 -- cedilla
+char184 "
+S1 408,688,0,48,-68,48 2 0271 -- onesuperior
+char185 "
+Om 440,685,0,77,3,73 2 0272 -- ordmasculine
+char186 "
+fc 220,503,0,79,-12,73 0 0273 -- guilsinglright
+14 1020,681,0,84,-68,73 2 0274 -- onequarter
+char188 "
+12 1020,681,0,66,-68,66 2 0275 -- onehalf
+char189 "
+34 1020,691,0,84,-36,73 2 0276 -- threequarters
+char190 "
+r? 620,515,189,36,-33,36 0 0277 -- questiondown
+char191 "
+`A 720,937,0,99,77,73 2 0300 -- Agrave
+char192 "
+'A 720,937,0,99,77,73 2 0301 -- Aacute
+char193 "
+^A 720,915,0,99,77,73 2 0302 -- Acircumflex
+char194 "
+~A 720,875,0,99,77,73 2 0303 -- Atilde
+char195 "
+:A 720,900,0,99,77,73 2 0304 -- Adieresis
+char196 "
+oA 720,941,0,99,77,73 2 0305 -- Aring
+char197 "
+AE 1140,681,0,117,77,73 2 0306 -- AE
+char198 "
+,C 700,698,220,104,-28,73 3 0307 -- Ccedilla
+char199 "
+`E 720,937,0,107,36,73 2 0310 -- Egrave
+char200 "
+'E 720,937,0,107,36,73 2 0311 -- Eacute
+char201 "
+^E 720,915,0,107,36,73 2 0312 -- Ecircumflex
+char202 "
+:E 720,900,0,107,36,73 2 0313 -- Edieresis
+char203 "
+`I 380,937,0,155,36,73 2 0314 -- Igrave
+char204 "
+'I 380,937,0,155,36,73 2 0315 -- Iacute
+char205 "
+^I 380,915,0,163,36,73 2 0316 -- Icircumflex
+char206 "
+:I 380,900,0,169,36,73 2 0317 -- Idieresis
+char207 "
+-D 760,681,0,95,36,73 2 0320 -- Eth
+char208 "
+~N 740,875,0,155,36,73 2 0321 -- Ntilde
+char209 "
+`O 760,937,17,96,-28,73 2 0322 -- Ograve
+char210 "
+'O 760,937,17,96,-28,73 2 0323 -- Oacute
+char211 "
+^O 760,915,17,96,-28,73 2 0324 -- Ocircumflex
+char212 "
+~O 760,875,17,96,-28,73 2 0325 -- Otilde
+char213 "
+:O 760,900,17,96,-28,73 2 0326 -- Odieresis
+char214 "
+char215 600,514,0,45,-41,45 0 0327 -- multiply
+/O 760,725,29,137,29,73 2 0330 -- Oslash
+char216 "
+`U 740,937,17,165,-62,73 2 0331 -- Ugrave
+char217 "
+'U 740,937,17,165,-62,73 2 0332 -- Uacute
+char218 "
+^U 740,915,17,165,-62,73 2 0333 -- Ucircumflex
+char219 "
+:U 740,900,17,165,-62,73 2 0334 -- Udieresis
+char220 "
+'Y 660,937,0,207,-22,73 2 0335 -- Yacute
+char221 "
+TP 640,681,0,111,56,73 2 0336 -- Thorn
+char222 "
+ss 660,741,213,92,281,73 3 0337 -- germandbls
+char223 "
+`a 680,771,8,105,-34,73 2 0340 -- agrave
+char224 "
+'a 680,771,8,105,-34,73 2 0341 -- aacute
+char225 "
+^a 680,749,8,105,-34,73 2 0342 -- acircumflex
+char226 "
+~a 680,709,8,105,-34,73 2 0343 -- atilde
+char227 "
+:a 680,734,8,105,-34,73 2 0344 -- adieresis
+char228 "
+oa 680,775,8,105,-34,73 2 0345 -- aring
+char229 "
+ae 880,515,8,83,11,73 0 0346 -- ae
+char230 "
+,c 560,515,220,87,-8,73 1 0347 -- ccedilla
+char231 "
+`e 560,771,8,86,-9,73 2 0350 -- egrave
+char232 "
+'e 560,771,8,86,-9,73 2 0351 -- eacute
+char233 "
+^e 560,749,8,86,-9,73 2 0352 -- ecircumflex
+char234 "
+:e 560,734,8,86,-9,73 2 0353 -- edieresis
+char235 "
+`i 380,771,8,94,-33,73 2 0354 -- igrave
+char236 "
+'i 380,771,8,90,-33,73 2 0355 -- iacute
+char237 "
+^i 380,749,8,103,-33,73 2 0356 -- icircumflex
+char238 "
+:i 380,734,8,149,-33,73 2 0357 -- idieresis
+char239 "
+Sd 600,741,8,112,-9,73 2 0360 -- eth
+char240 "
+~n 680,709,8,85,-33,73 2 0361 -- ntilde
+char241 "
+`o 600,771,8,77,-9,73 2 0362 -- ograve
+char242 "
+'o 600,771,8,77,-9,73 2 0363 -- oacute
+char243 "
+^o 600,749,8,77,-9,73 2 0364 -- ocircumflex
+char244 "
+~o 600,709,8,77,-9,73 2 0365 -- otilde
+char245 "
+:o 600,734,8,77,-9,73 2 0366 -- odieresis
+char246 "
+char247 600,521,0,45,-41,45 0 0367 -- divide
+/o 600,571,54,111,33,73 0 0370 -- oslash
+char248 "
+`u 680,771,8,90,-33,73 2 0371 -- ugrave
+char249 "
+'u 680,771,8,90,-33,73 2 0372 -- uacute
+char250 "
+^u 680,749,8,90,-33,73 2 0373 -- ucircumflex
+char251 "
+:u 680,734,8,90,-33,73 2 0374 -- udieresis
+char252 "
+'y 600,771,213,92,25,73 3 0375 -- yacute
+char253 "
+Tp 660,732,213,72,74,72 3 0376 -- thorn
+char254 "
+:y 600,734,213,92,25,73 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/BMI b/font/devps/BMI
new file mode 100644
index 000000000..4de77ef79
--- /dev/null
+++ b/font/devps/BMI
@@ -0,0 +1,434 @@
+name BMI
+internalname Bookman-LightItalic
+slant 10
+spacewidth 300
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A Y -62
+A W -73
+A V -78
+A T -5
+F . -97
+F , -98
+F A -16
+L y 20
+L Y 7
+L W 9
+L V 4
+P . -105
+P , -106
+P A -30
+R Y 11
+R W 2
+R V 2
+R T 65
+T ; 48
+T s -7
+T r 67
+T . -78
+T o 14
+T i 71
+T - 20
+T hy 20
+T char173 20
+T e 10
+T , -79
+T : 48
+T c 16
+T a 9
+T A -14
+V y -14
+V u -10
+V ; -44
+V r -20
+V . -100
+V o -70
+V i 3
+V - 20
+V hy 20
+V char173 20
+V e -70
+V , -109
+V : -35
+V a -70
+V A -70
+W y -14
+W u -20
+W ; -42
+W r -30
+W . -100
+W o -60
+W i 3
+W - 20
+W hy 20
+W char173 20
+W e -60
+W , -109
+W : -35
+W a -60
+W A -60
+Y v -19
+Y u -31
+Y ; -40
+Y q -72
+Y . -100
+Y p -37
+Y o -75
+Y i -11
+Y - 20
+Y hy 20
+Y char173 20
+Y e -78
+Y , -109
+Y : -35
+Y a -79
+Y A -82
+f f -19
+r q -14
+r . -134
+r o -10
+r n 38
+r m 37
+r - 20
+r hy 20
+r char173 20
+r h -20
+r g -3
+r f -9
+r e -15
+r d -9
+r , -143
+r c -8
+charset
+ha 600,681,0,49,-47,49 2 0000 -- asciicircum
+ti 600,386,0,45,-41,45 0 0001 -- asciitilde
+vS 640,871,17,78,-11,70 2 0002 -- Scaron
+vZ 580,871,0,165,42,70 2 0003 -- Zcaron
+vs 540,684,8,57,-15,57 2 0004 -- scaron
+vz 520,684,8,91,12,70 2 0005 -- zcaron
+:Y 660,875,0,199,-37,70 2 0006 -- Ydieresis
+tm 980,681,0,35,-19,35 2 0007 -- trademark
+aq 200,698,0,97,-49,70 2 0010 -- quotesingle
+space 300 0 0040
+! 320,698,8,72,-53,70 2 0041 -- exclam
+" 360,698,0,92,-57,70 2 0042 -- quotedbl
+# 620,681,0,28,-57,28 2 0043 -- numbersign
+sh "
+$ 620,762,85,49,-28,49 2 0044 -- dollar
+Do "
+% 800,691,8,61,-6,61 2 0045 -- percent
+& 820,698,18,78,-15,70 2 0046 -- ampersand
+' 280,698,0,58,-98,58 2 0047 -- quoteright
+( 280,727,146,153,-46,70 2 0050 -- parenleft
+) 280,727,146,49,58,49 2 0051 -- parenright
+* 440,698,0,115,-89,70 2 0052 -- asterisk
++ 600,548,0,45,-41,45 0 0053 -- plus
+, 300,112,115,0,-38 0 0054 -- comma
+- 320,325,0,66,-28,66 0 0055 -- hyphen
+hy "
+char173 "
+. 300,127,8,0,-46 0 0056 -- period
+/ 600,717,149,12,-54,12 2 0057 -- slash
+sl "
+0 620,698,17,76,-36,70 2 0060 -- zero
+1 620,681,0,0,-104 2 0061 -- one
+2 620,698,0,66,-16,66 2 0062 -- two
+3 620,698,17,52,-5,52 2 0063 -- three
+4 620,681,0,64,-19,64 2 0064 -- four
+5 620,681,17,44,-20,44 2 0065 -- five
+6 620,698,17,87,-39,70 2 0066 -- six
+7 620,681,0,102,-93,70 2 0067 -- seven
+8 620,698,17,85,-11,70 2 0070 -- eight
+9 620,698,17,79,-27,70 2 0071 -- nine
+: 300,494,8,42,-46,42 0 0072 -- colon
+; 300,494,114,42,-38,42 0 0073 -- semicolon
+< 600,561,0,38,-29,38 0 0074 -- less
+= 600,433,0,45,-41,45 0 0075 -- equal
+> 600,561,0,52,-43,52 0 0076 -- greater
+? 540,698,8,114,-64,70 2 0077 -- question
+@ 780,698,17,72,-52,70 2 0100 -- at
+at "
+A 700,681,0,70,75,70 2 0101 -- A
+B 720,681,0,76,29,70 2 0102 -- B
+C 720,698,17,76,-38,70 2 0103 -- C
+D 740,681,0,92,29,70 2 0104 -- D
+E 680,681,0,106,29,70 2 0105 -- E
+F 620,681,0,173,29,70 2 0106 -- F
+G 760,698,17,103,-38,70 2 0107 -- G
+H 800,681,0,138,29,70 2 0110 -- H
+I 320,681,0,142,29,70 2 0111 -- I
+J 560,681,17,156,52,70 2 0112 -- J
+K 720,681,0,134,29,70 2 0113 -- K
+L 580,681,0,126,29,70 2 0114 -- L
+M 860,681,0,146,32,70 2 0115 -- M
+N 720,681,0,153,32,70 2 0116 -- N
+O 760,698,17,89,-38,70 2 0117 -- O
+P 600,681,0,131,29,70 2 0120 -- P
+Q 780,698,191,82,-11,70 2 0121 -- Q
+R 700,681,0,86,29,70 2 0122 -- R
+S 640,698,17,78,-11,70 2 0123 -- S
+T 600,681,0,175,0,70 2 0124 -- T
+U 720,681,17,172,-68,70 2 0125 -- U
+V 680,681,0,185,-37,70 2 0126 -- V
+W 960,681,0,185,-37,70 2 0127 -- W
+X 700,681,0,165,75,70 2 0130 -- X
+Y 660,681,0,199,-37,70 2 0131 -- Y
+Z 580,681,0,165,42,70 2 0132 -- Z
+[ 260,717,136,141,-6,70 2 0133 -- bracketleft
+lB "
+\ 600,717,0,0,-34 2 0134 -- backslash
+rs "
+] 260,717,136,99,35,70 2 0135 -- bracketright
+rB "
+a^ 440,685,0,89,-126,70 2 0136 -- circumflex
+^ "
+_ 500,0,155,50,50,50 0 0137 -- underscore
+` 280,698,0,100,-141,70 2 0140 -- quoteleft
+oq "
+a 620,494,8,116,-21,70 0 0141 -- a
+b 600,717,8,71,-38,70 2 0142 -- b
+c 480,494,8,92,-15,70 0 0143 -- c
+d 640,717,8,105,-15,70 2 0144 -- d
+e 540,494,8,85,-15,70 0 0145 -- e
+f 340,725,218,267,210,70 3 0146 -- f
+g 560,494,221,71,46,70 1 0147 -- g
+h 620,717,8,119,-38,70 2 0150 -- h
+i 280,663,8,121,-38,70 2 0151 -- i
+j 280,663,221,78,250,70 3 0152 -- j
+k 600,717,8,107,-38,70 2 0153 -- k
+l 280,717,8,112,-50,70 2 0154 -- l
+m 880,494,8,122,-38,70 0 0155 -- m
+n 620,494,8,103,-38,70 0 0156 -- n
+o 540,494,8,82,-15,70 0 0157 -- o
+p 600,494,212,70,74,70 1 0160 -- p
+q 560,494,212,74,-15,70 1 0161 -- q
+r 400,494,0,131,-38,70 0 0162 -- r
+s 540,494,8,57,-15,57 0 0163 -- s
+t 340,664,8,121,-38,70 2 0164 -- t
+u 620,484,8,116,-38,70 0 0165 -- u
+v 540,494,8,72,-38,70 0 0166 -- v
+w 880,494,8,63,-38,63 0 0167 -- w
+x 540,494,8,136,41,70 0 0170 -- x
+y 600,484,221,59,-10,59 1 0171 -- y
+z 520,494,8,91,12,70 0 0172 -- z
+lC 360,717,191,129,-75,70 2 0173 -- braceleft
+{ "
+ba 600,717,0,0,-244 2 0174 -- bar
+| "
+rC 380,717,191,0,35 2 0175 -- braceright
+} "
+a~ 440,671,0,98,-130,70 2 0176 -- tilde
+~ "
+bq 320,113,114,0,-37 0 0200 -- quotesinglbase
+Fo 300,434,0,63,-20,63 0 0201 -- guillemotleft
+char171 "
+Fc 300,434,0,53,-10,53 0 0202 -- guillemotright
+char187 "
+bu 460,511,0,34,-50,34 0 0203 -- bullet
+Fn 620,725,218,122,76,70 3 0204 -- florin
+f/ 20,681,0,353,278,70 2 0205 -- fraction
+%0 1180,691,8,69,-6,69 2 0206 -- perthousand
+dg 620,698,130,0,-142 2 0207 -- dagger
+dd 620,698,122,0,-94 2 0210 -- daggerdbl
+en 500,325,0,111,17,70 0 0211 -- endash
+em 1000,325,0,111,17,70 0 0212 -- emdash
+fi 640,725,222,119,209,70 3 0214 -- fi
+fl 660,725,218,103,209,70 3 0215 -- fl
+.i 280,484,8,121,-38,70 0 0220 -- dotlessi
+ga 340,706,0,87,-132,70 2 0222 -- grave
+a" 340,738,0,112,-117,70 2 0223 -- hungarumlaut
+a. 260,664,0,80,-119,70 2 0224 -- dotaccent
+ab 440,680,0,110,-141,70 2 0225 -- breve
+ah 440,684,0,91,-128,70 2 0226 -- caron
+ao 300,706,0,84,-128,70 2 0227 -- ring
+ho 260,0,173,0,-1 0 0230 -- ogonek
+lq 440,698,0,103,-141,70 2 0231 -- quotedblleft
+rq 440,698,0,61,-98,61 2 0232 -- quotedblright
+oe 900,494,8,98,-15,70 0 0233 -- oe
+/l 340,717,8,108,0,70 2 0234 -- lslash
+Bq 480,113,114,0,-37 0 0235 -- quotedblbase
+OE 1180,698,17,107,-38,70 2 0236 -- OE
+/L 580,681,0,126,29,70 2 0237 -- Lslash
+r! 320,494,213,31,-23,31 1 0241 -- exclamdown
+char161 "
+ct 620,715,29,26,-98,26 2 0242 -- cent
+char162 "
+Po 620,698,17,132,46,70 2 0243 -- sterling
+char163 "
+Cs 620,591,0,35,-50,35 0 0244 -- currency
+char164 "
+Ye 620,681,0,165,-21,70 2 0245 -- yen
+char165 "
+bb 600,717,0,0,-244 2 0246 -- brokenbar
+char166 "
+sc 620,698,178,68,12,68 2 0247 -- section
+char167 "
+ad 420,688,0,97,-135,70 2 0250 -- dieresis
+char168 "
+co 740,698,17,94,-34,70 2 0251 -- copyright
+char169 "
+Of 440,698,0,123,-44,70 2 0252 -- ordfeminine
+char170 "
+fo 180,434,0,78,-25,70 0 0253 -- guilsinglleft
+no 600,433,0,45,-41,45 0 0254 -- logicalnot
+char172 "
+\- 600,335,0,45,-41,45 0 0255 -- minus
+rg 740,698,17,94,-34,70 2 0256 -- registered
+char174 "
+a- 440,658,0,94,-128,70 0 0257 -- macron
+char175 "
+de 400,698,0,70,-70,70 2 0260 -- degree
+char176 "
+char177 600,548,0,45,-41,45 0 0261 -- plusminus
+S2 372,698,0,117,-18,70 2 0262 -- twosuperior
+char178 "
+S3 372,698,0,117,-20,70 2 0263 -- threesuperior
+char179 "
+aa 320,706,0,103,-128,70 2 0264 -- acute
+char180 "
+char181 620,484,221,116,-3,70 1 0265 -- mu
+ps 620,681,0,148,-62,70 2 0266 -- paragraph
+char182 "
+char183 300,364,0,22,-87,22 0 0267 -- periodcentered
+ac 320,0,178,0,5 0 0270 -- cedilla
+char184 "
+S1 372,688,0,17,-64,17 2 0271 -- onesuperior
+char185 "
+Om 400,698,0,105,-44,70 2 0272 -- ordmasculine
+char186 "
+fc 180,434,0,73,-20,70 0 0273 -- guilsinglright
+14 930,681,0,33,-41,33 2 0274 -- onequarter
+char188 "
+12 930,681,0,45,-41,45 2 0275 -- onehalf
+char189 "
+34 930,691,0,33,-49,33 2 0276 -- threequarters
+char190 "
+r? 540,494,212,18,32,18 1 0277 -- questiondown
+char191 "
+`A 700,893,0,70,75,70 2 0300 -- Agrave
+char192 "
+'A 700,893,0,70,75,70 2 0301 -- Aacute
+char193 "
+^A 700,872,0,70,75,70 2 0302 -- Acircumflex
+char194 "
+~A 700,858,0,70,75,70 2 0303 -- Atilde
+char195 "
+:A 700,875,0,70,75,70 2 0304 -- Adieresis
+char196 "
+oA 700,893,0,70,75,70 2 0305 -- Aring
+char197 "
+AE 1220,681,0,99,95,70 2 0306 -- AE
+char198 "
+,C 720,698,178,76,-38,70 2 0307 -- Ccedilla
+char199 "
+`E 680,893,0,106,29,70 2 0310 -- Egrave
+char200 "
+'E 680,893,0,106,29,70 2 0311 -- Eacute
+char201 "
+^E 680,872,0,106,29,70 2 0312 -- Ecircumflex
+char202 "
+:E 680,875,0,106,29,70 2 0313 -- Edieresis
+char203 "
+`I 320,893,0,142,29,70 2 0314 -- Igrave
+char204 "
+'I 320,893,0,142,29,70 2 0315 -- Iacute
+char205 "
+^I 320,872,0,149,29,70 2 0316 -- Icircumflex
+char206 "
+:I 320,875,0,147,29,70 2 0317 -- Idieresis
+char207 "
+-D 740,681,0,92,29,70 2 0320 -- Eth
+char208 "
+~N 720,858,0,153,32,70 2 0321 -- Ntilde
+char209 "
+`O 760,893,17,89,-38,70 2 0322 -- Ograve
+char210 "
+'O 760,893,17,89,-38,70 2 0323 -- Oacute
+char211 "
+^O 760,872,17,89,-38,70 2 0324 -- Ocircumflex
+char212 "
+~O 760,858,17,89,-38,70 2 0325 -- Otilde
+char213 "
+:O 760,875,17,89,-38,70 2 0326 -- Odieresis
+char214 "
+char215 600,548,0,45,-41,45 0 0327 -- multiply
+/O 760,777,95,89,-38,70 2 0330 -- Oslash
+char216 "
+`U 720,893,17,172,-68,70 2 0331 -- Ugrave
+char217 "
+'U 720,893,17,172,-68,70 2 0332 -- Uacute
+char218 "
+^U 720,872,17,172,-68,70 2 0333 -- Ucircumflex
+char219 "
+:U 720,875,17,172,-68,70 2 0334 -- Udieresis
+char220 "
+'Y 660,893,0,199,-37,70 2 0335 -- Yacute
+char221 "
+TP 600,681,0,106,29,70 2 0336 -- Thorn
+char222 "
+ss 620,698,111,83,171,70 2 0337 -- germandbls
+char223 "
+`a 620,706,8,116,-21,70 2 0340 -- agrave
+char224 "
+'a 620,706,8,116,-21,70 2 0341 -- aacute
+char225 "
+^a 620,685,8,116,-21,70 2 0342 -- acircumflex
+char226 "
+~a 620,671,8,116,-21,70 2 0343 -- atilde
+char227 "
+:a 620,688,8,116,-21,70 2 0344 -- adieresis
+char228 "
+oa 620,706,8,116,-21,70 2 0345 -- aring
+char229 "
+ae 880,494,8,88,-21,70 0 0346 -- ae
+char230 "
+,c 480,494,178,92,-15,70 0 0347 -- ccedilla
+char231 "
+`e 540,706,8,85,-15,70 2 0350 -- egrave
+char232 "
+'e 540,706,8,85,-15,70 2 0351 -- eacute
+char233 "
+^e 540,685,8,85,-15,70 2 0352 -- ecircumflex
+char234 "
+:e 540,688,8,85,-15,70 2 0353 -- edieresis
+char235 "
+`i 280,706,8,121,-38,70 2 0354 -- igrave
+char236 "
+'i 280,706,8,121,-38,70 2 0355 -- iacute
+char237 "
+^i 280,685,8,149,-26,70 2 0356 -- icircumflex
+char238 "
+:i 280,688,8,147,-38,70 2 0357 -- idieresis
+char239 "
+Sd 540,725,8,152,-15,70 2 0360 -- eth
+char240 "
+~n 620,671,8,103,-38,70 2 0361 -- ntilde
+char241 "
+`o 540,706,8,82,-15,70 2 0362 -- ograve
+char242 "
+'o 540,706,8,82,-15,70 2 0363 -- oacute
+char243 "
+^o 540,685,8,82,-15,70 2 0364 -- ocircumflex
+char244 "
+~o 540,671,8,82,-15,70 2 0365 -- otilde
+char245 "
+:o 540,688,8,82,-15,70 2 0366 -- odieresis
+char246 "
+char247 600,548,0,45,-41,45 0 0367 -- divide
+/o 540,532,49,81,-15,70 0 0370 -- oslash
+char248 "
+`u 620,706,8,116,-38,70 2 0371 -- ugrave
+char249 "
+'u 620,706,8,116,-38,70 2 0372 -- uacute
+char250 "
+^u 620,685,8,116,-38,70 2 0373 -- ucircumflex
+char251 "
+:u 620,688,8,116,-38,70 2 0374 -- udieresis
+char252 "
+'y 600,706,221,59,-10,59 3 0375 -- yacute
+char253 "
+Tp 600,717,212,70,74,70 3 0376 -- thorn
+char254 "
+:y 600,688,221,59,-10,59 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/BMR b/font/devps/BMR
new file mode 100644
index 000000000..b484f688f
--- /dev/null
+++ b/font/devps/BMR
@@ -0,0 +1,430 @@
+name BMR
+internalname Bookman-Light
+spacewidth 320
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y 32
+A w 4
+A v 7
+A Y -35
+A W -40
+A V -56
+A T 1
+F . -46
+F , -41
+F A -21
+L y 79
+L Y 13
+L W 1
+L V -4
+L T 28
+P . -60
+P , -55
+P A -8
+R y 59
+R Y 26
+R W 13
+R V 8
+R T 71
+T s 16
+T r 38
+T . -33
+T o 15
+T i 42
+T - 90
+T hy 90
+T char173 90
+T e 13
+T , -28
+T c 14
+T a 17
+T A 1
+V y 15
+V u -38
+V r -41
+V . -40
+V o -71
+V i -20
+V - 11
+V hy 11
+V char173 11
+V e -72
+V , -34
+V a -69
+V A -66
+W y 15
+W u -38
+W r -41
+W . -40
+W o -68
+W i -20
+W - 11
+W hy 11
+W char173 11
+W e -69
+W , -34
+W a -66
+W A -64
+Y v 15
+Y u -38
+Y q -55
+Y . -40
+Y p -31
+Y o -57
+Y i -37
+Y - 11
+Y hy 11
+Y char173 11
+Y e -58
+Y , -34
+Y a -54
+Y A -53
+f f 29
+r q 9
+r . -64
+r o 8
+r n 31
+r m 31
+r - 70
+r hy 70
+r char173 70
+r h -21
+r g -4
+r f 33
+r e 7
+r d 7
+r , -58
+r c 7
+charset
+ha 600,681 2 0000 -- asciicircum
+ti 600,352 0 0001 -- asciitilde
+vS 660,869,17 2 0002 -- Scaron
+vZ 640,869 2 0003 -- Zcaron
+vs 520,672,8 2 0004 -- scaron
+vz 480,672 2 0005 -- zcaron
+:Y 640,871 2 0006 -- Ydieresis
+tm 980,681 2 0007 -- trademark
+aq 220,698 2 0010 -- quotesingle
+space 320 0 0040
+! 300,698,8 2 0041 -- exclam
+" 380,698 2 0042 -- quotedbl
+# 620,681 2 0043 -- numbersign
+sh "
+$ 620,791,109 2 0044 -- dollar
+Do "
+% 900,698,8 2 0045 -- percent
+& 800,698,17 2 0046 -- ampersand
+' 220,698 2 0047 -- quoteright
+( 300,727,145 2 0050 -- parenleft
+) 300,727,146 2 0051 -- parenright
+* 440,698 2 0052 -- asterisk
++ 600,513 0 0053 -- plus
+, 320,114,114 0 0054 -- comma
+- 400,292 0 0055 -- hyphen
+hy "
+char173 "
+. 320,123,8 0 0056 -- period
+/ 600,717,149 2 0057 -- slash
+sl "
+0 620,698,17 2 0060 -- zero
+1 620,681 2 0061 -- one
+2 620,698 2 0062 -- two
+3 620,698,17 2 0063 -- three
+4 620,681 2 0064 -- four
+5 620,717,17 2 0065 -- five
+6 620,698,17 2 0066 -- six
+7 620,681 2 0067 -- seven
+8 620,698,17 2 0070 -- eight
+9 620,698,17 2 0071 -- nine
+: 320,494,8 0 0072 -- colon
+; 320,494,114 0 0073 -- semicolon
+< 600,526,2 0 0074 -- less
+= 600,398 0 0075 -- equal
+> 600,526,2 0 0076 -- greater
+? 540,698,8 2 0077 -- question
+@ 820,698,17 2 0100 -- at
+at "
+A 680,681 2 0101 -- A
+B 740,681 2 0102 -- B
+C 740,698,17 2 0103 -- C
+D 800,681 2 0104 -- D
+E 720,681 2 0105 -- E
+F 640,681 2 0106 -- F
+G 800,698,17 2 0107 -- G
+H 800,681 2 0110 -- H
+I 340,681 2 0111 -- I
+J 600,681,17 2 0112 -- J
+K 720,681 2 0113 -- K
+L 600,681 2 0114 -- L
+M 920,681 2 0115 -- M
+N 740,681 2 0116 -- N
+O 800,698,17 2 0117 -- O
+P 620,681 2 0120 -- P
+Q 820,698,189 2 0121 -- Q
+R 720,681 2 0122 -- R
+S 660,698,17 2 0123 -- S
+T 620,681 2 0124 -- T
+U 780,681,17 2 0125 -- U
+V 700,681 2 0126 -- V
+W 960,681 2 0127 -- W
+X 720,681 2 0130 -- X
+Y 640,681 2 0131 -- Y
+Z 640,681 2 0132 -- Z
+[ 300,717,136 2 0133 -- bracketleft
+lB "
+\ 600,717 2 0134 -- backslash
+rs "
+] 300,717,136 2 0135 -- bracketright
+rB "
+a^ 420,685 2 0136 -- circumflex
+^ "
+_ 500,0,155 0 0137 -- underscore
+` 220,698 2 0140 -- quoteleft
+oq "
+a 580,494,8 0 0141 -- a
+b 620,717,8 2 0142 -- b
+c 520,494,8 0 0143 -- c
+d 620,717,8 2 0144 -- d
+e 520,494,8 0 0145 -- e
+f 320,734 2 0146 -- f
+g 540,567,243 1 0147 -- g
+h 660,717 2 0150 -- h
+i 300,654 0 0151 -- i
+j 300,654,251 1 0152 -- j
+k 620,717 2 0153 -- k
+l 300,717 2 0154 -- l
+m 940,494 0 0155 -- m
+n 660,494 0 0156 -- n
+o 560,494,8 0 0157 -- o
+p 620,494,228 1 0160 -- p
+q 580,494,228 1 0161 -- q
+r 440,494 0 0162 -- r
+s 520,494,8 0 0163 -- s
+t 380,667,8 2 0164 -- t
+u 680,484,8 0 0165 -- u
+v 520,484 0 0166 -- v
+w 780,484 0 0167 -- w
+x 560,484 0 0170 -- x
+y 540,484,236 1 0171 -- y
+z 480,484 0 0172 -- z
+lC 280,717,136 2 0173 -- braceleft
+{ "
+ba 600,717 2 0174 -- bar
+| "
+rC 280,717,136 2 0175 -- braceright
+} "
+a~ 440,661 0 0176 -- tilde
+~ "
+bq 220,110,108 0 0200 -- quotesinglbase
+Fo 360,437 0 0201 -- guillemotleft
+char171 "
+Fc 360,437 0 0202 -- guillemotright
+char187 "
+bu 460,511 0 0203 -- bullet
+Fn 620,749,155 2 0204 -- florin
+f/ 140,681 2 0205 -- fraction
+%0 1280,698,8 2 0206 -- perthousand
+dg 540,698,156 2 0207 -- dagger
+dd 540,698,156 2 0210 -- daggerdbl
+en 500,292 0 0211 -- endash
+em 1000,292 0 0212 -- emdash
+fi 620,734 2 0214 -- fi
+fl 620,734 2 0215 -- fl
+.i 300,484 0 0220 -- dotlessi
+ga 340,689 2 0222 -- grave
+a" 380,699 2 0223 -- hungarumlaut
+a. 260,672 2 0224 -- dotaccent
+ab 460,687 2 0225 -- breve
+ah 420,672 2 0226 -- caron
+ao 320,731 2 0227 -- ring
+ho 320,0,145 0 0230 -- ogonek
+lq 400,698 2 0231 -- quotedblleft
+rq 400,698 2 0232 -- quotedblright
+oe 900,494,8 0 0233 -- oe
+/l 320,717 2 0234 -- lslash
+Bq 400,110,108 0 0235 -- quotedblbase
+OE 1240,698,17 2 0236 -- OE
+/L 600,681 2 0237 -- Lslash
+r! 300,494,214 0 0241 -- exclamdown
+char161 "
+ct 620,651 0 0242 -- cent
+char162 "
+Po 620,698,17 2 0243 -- sterling
+char163 "
+Cs 620,591 0 0244 -- currency
+char164 "
+Ye 620,681 2 0245 -- yen
+char165 "
+bb 600,717 2 0246 -- brokenbar
+char166 "
+sc 520,698,178 2 0247 -- section
+char167 "
+ad 420,674 2 0250 -- dieresis
+char168 "
+co 740,698,17 2 0251 -- copyright
+char169 "
+Of 420,698 2 0252 -- ordfeminine
+char170 "
+fo 240,437 0 0253 -- guilsinglleft
+no 600,398 0 0254 -- logicalnot
+char172 "
+\- 600,300 0 0255 -- minus
+rg 740,698,17 2 0256 -- registered
+char174 "
+a- 440,635 0 0257 -- macron
+char175 "
+de 400,698 2 0260 -- degree
+char176 "
+char177 600,513 0 0261 -- plusminus
+S2 372,698 2 0262 -- twosuperior
+char178 "
+S3 372,698 2 0263 -- threesuperior
+char179 "
+aa 340,689 2 0264 -- acute
+char180 "
+char181 680,484,251 1 0265 -- mu
+ps 600,681 2 0266 -- paragraph
+char182 "
+char183 320,327 0 0267 -- periodcentered
+ac 320,0,200 0 0270 -- cedilla
+char184 "
+S1 372,688 2 0271 -- onesuperior
+char185 "
+Om 420,698 2 0272 -- ordmasculine
+char186 "
+fc 240,437 0 0273 -- guilsinglright
+14 930,681 2 0274 -- onequarter
+char188 "
+12 930,681 2 0275 -- onehalf
+char189 "
+34 930,691 2 0276 -- threequarters
+char190 "
+r? 540,494,217 0 0277 -- questiondown
+char191 "
+`A 680,886 2 0300 -- Agrave
+char192 "
+'A 680,886 2 0301 -- Aacute
+char193 "
+^A 680,882 2 0302 -- Acircumflex
+char194 "
+~A 680,858 2 0303 -- Atilde
+char195 "
+:A 680,871 2 0304 -- Adieresis
+char196 "
+oA 680,928 2 0305 -- Aring
+char197 "
+AE 1260,681 2 0306 -- AE
+char198 "
+,C 740,698,200 2 0307 -- Ccedilla
+char199 "
+`E 720,886 2 0310 -- Egrave
+char200 "
+'E 720,886 2 0311 -- Eacute
+char201 "
+^E 720,882 2 0312 -- Ecircumflex
+char202 "
+:E 720,871 2 0313 -- Edieresis
+char203 "
+`I 340,886 2 0314 -- Igrave
+char204 "
+'I 340,886 2 0315 -- Iacute
+char205 "
+^I 340,882 2 0316 -- Icircumflex
+char206 "
+:I 340,871 2 0317 -- Idieresis
+char207 "
+-D 800,681 2 0320 -- Eth
+char208 "
+~N 740,858 2 0321 -- Ntilde
+char209 "
+`O 800,886,17 2 0322 -- Ograve
+char210 "
+'O 800,886,17 2 0323 -- Oacute
+char211 "
+^O 800,882,17 2 0324 -- Ocircumflex
+char212 "
+~O 800,858,17 2 0325 -- Otilde
+char213 "
+:O 800,871,17 2 0326 -- Odieresis
+char214 "
+char215 600,513 0 0327 -- multiply
+/O 800,733,53 2 0330 -- Oslash
+char216 "
+`U 780,886,17 2 0331 -- Ugrave
+char217 "
+'U 780,886,17 2 0332 -- Uacute
+char218 "
+^U 780,882,17 2 0333 -- Ucircumflex
+char219 "
+:U 780,871,17 2 0334 -- Udieresis
+char220 "
+'Y 640,886 2 0335 -- Yacute
+char221 "
+TP 620,681 2 0336 -- Thorn
+char222 "
+ss 660,698,110 2 0337 -- germandbls
+char223 "
+`a 580,689,8 2 0340 -- agrave
+char224 "
+'a 580,689,8 2 0341 -- aacute
+char225 "
+^a 580,685,8 2 0342 -- acircumflex
+char226 "
+~a 580,661,8 0 0343 -- atilde
+char227 "
+:a 580,674,8 2 0344 -- adieresis
+char228 "
+oa 580,731,8 2 0345 -- aring
+char229 "
+ae 860,494,8 0 0346 -- ae
+char230 "
+,c 520,494,200 0 0347 -- ccedilla
+char231 "
+`e 520,689,8 2 0350 -- egrave
+char232 "
+'e 520,689,8 2 0351 -- eacute
+char233 "
+^e 520,685,8 2 0352 -- ecircumflex
+char234 "
+:e 520,674,8 2 0353 -- edieresis
+char235 "
+`i 300,689 2 0354 -- igrave
+char236 "
+'i 300,689 2 0355 -- iacute
+char237 "
+^i 300,685 2 0356 -- icircumflex
+char238 "
+:i 300,674 2 0357 -- idieresis
+char239 "
+Sd 560,734,8 2 0360 -- eth
+char240 "
+~n 660,661 0 0361 -- ntilde
+char241 "
+`o 560,689,8 2 0362 -- ograve
+char242 "
+'o 560,689,8 2 0363 -- oacute
+char243 "
+^o 560,685,8 2 0364 -- ocircumflex
+char244 "
+~o 560,661,8 0 0365 -- otilde
+char245 "
+:o 560,674,8 2 0366 -- odieresis
+char246 "
+char247 600,514 0 0367 -- divide
+/o 560,534,40 0 0370 -- oslash
+char248 "
+`u 680,689,8 2 0371 -- ugrave
+char249 "
+'u 680,689,8 2 0372 -- uacute
+char250 "
+^u 680,685,8 2 0373 -- ucircumflex
+char251 "
+:u 680,674,8 2 0374 -- udieresis
+char252 "
+'y 540,689,236 3 0375 -- yacute
+char253 "
+Tp 620,717,228 3 0376 -- thorn
+char254 "
+:y 540,674,236 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/CB b/font/devps/CB
new file mode 100644
index 000000000..fa80a7111
--- /dev/null
+++ b/font/devps/CB
@@ -0,0 +1,336 @@
+name CB
+internalname Courier-Bold
+spacewidth 600
+encoding text.enc
+charset
+ha 600,616 2 0000 -- asciicircum
+ti 600,356 0 0001 -- asciitilde
+vS 600,790,22 2 0002 -- Scaron
+vZ 600,790 2 0003 -- Zcaron
+vs 600,667,17 2 0004 -- scaron
+vz 600,667 2 0005 -- zcaron
+:Y 600,748 2 0006 -- Ydieresis
+tm 600,562 2 0007 -- trademark
+aq 600,562 2 0010 -- quotesingle
+space 600 0 0040
+! 600,572,15 2 0041 -- exclam
+" 600,562 2 0042 -- quotedbl
+# 600,651,45 2 0043 -- numbersign
+sh "
+$ 600,666,126 2 0044 -- dollar
+Do "
+% 600,616,15 2 0045 -- percent
+& 600,543,15 0 0046 -- ampersand
+' 600,562 2 0047 -- quoteright
+( 600,616,102 2 0050 -- parenleft
+) 600,616,102 2 0051 -- parenright
+* 600,601 2 0052 -- asterisk
++ 600,478 0 0053 -- plus
+, 600,174,111 0 0054 -- comma
+- 600,313 0 0055 -- hyphen
+hy "
+char173 "
+. 600,171,15 0 0056 -- period
+/ 600,626,77 2 0057 -- slash
+sl "
+0 600,616,15 2 0060 -- zero
+1 600,616 2 0061 -- one
+2 600,616 2 0062 -- two
+3 600,616,15 2 0063 -- three
+4 600,616 2 0064 -- four
+5 600,601,15 2 0065 -- five
+6 600,616,15 2 0066 -- six
+7 600,601 2 0067 -- seven
+8 600,616,15 2 0070 -- eight
+9 600,616,15 2 0071 -- nine
+: 600,425,15 0 0072 -- colon
+; 600,425,111 0 0073 -- semicolon
+< 600,501 0 0074 -- less
+= 600,398 0 0075 -- equal
+> 600,501 0 0076 -- greater
+? 600,580,14 2 0077 -- question
+@ 600,616,15 2 0100 -- at
+at "
+A 600,562 2 0101 -- A
+B 600,562 2 0102 -- B
+C 600,580,18 2 0103 -- C
+D 600,562 2 0104 -- D
+E 600,562 2 0105 -- E
+F 600,562 2 0106 -- F
+G 600,580,18 2 0107 -- G
+H 600,562 2 0110 -- H
+I 600,562 2 0111 -- I
+J 600,562,18 2 0112 -- J
+K 600,562 2 0113 -- K
+L 600,562 2 0114 -- L
+M 600,562 2 0115 -- M
+N 600,562,12 2 0116 -- N
+O 600,580,18 2 0117 -- O
+P 600,562 2 0120 -- P
+Q 600,580,138 2 0121 -- Q
+R 600,562 2 0122 -- R
+S 600,582,22 2 0123 -- S
+T 600,562 2 0124 -- T
+U 600,562,18 2 0125 -- U
+V 600,562 2 0126 -- V
+W 600,562 2 0127 -- W
+X 600,562 2 0130 -- X
+Y 600,562 2 0131 -- Y
+Z 600,562 2 0132 -- Z
+[ 600,616,102 2 0133 -- bracketleft
+lB "
+\ 600,626,77 2 0134 -- backslash
+rs "
+] 600,616,102 2 0135 -- bracketright
+rB "
+a^ 600,657 2 0136 -- circumflex
+^ "
+_ 600,0,125 0 0137 -- underscore
+` 600,562 2 0140 -- quoteleft
+oq "
+a 600,454,15 0 0141 -- a
+b 600,626,15 2 0142 -- b
+c 600,459,15 0 0143 -- c
+d 600,626,15 2 0144 -- d
+e 600,454,15 0 0145 -- e
+f 600,626 2 0146 -- f
+g 600,454,146 1 0147 -- g
+h 600,626 2 0150 -- h
+i 600,658 2 0151 -- i
+j 600,658,146 3 0152 -- j
+k 600,626 2 0153 -- k
+l 600,626 2 0154 -- l
+m 600,454 0 0155 -- m
+n 600,454 0 0156 -- n
+o 600,454,15 0 0157 -- o
+p 600,454,142 1 0160 -- p
+q 600,454,142 1 0161 -- q
+r 600,454 0 0162 -- r
+s 600,459,17 0 0163 -- s
+t 600,562,15 2 0164 -- t
+u 600,439,15 0 0165 -- u
+v 600,439 0 0166 -- v
+w 600,439 0 0167 -- w
+x 600,439 0 0170 -- x
+y 600,439,142 1 0171 -- y
+z 600,439 0 0172 -- z
+lC 600,616,102 2 0173 -- braceleft
+{ "
+ba 600,750,250 3 0174 -- bar
+| "
+rC 600,616,102 2 0175 -- braceright
+} "
+a~ 600,636 2 0176 -- tilde
+~ "
+bq 600,143,142 1 0200 -- quotesinglbase
+Fo 600,446 0 0201 -- guillemotleft
+char171 "
+Fc 600,446 0 0202 -- guillemotright
+char187 "
+bu 600,430 0 0203 -- bullet
+Fn 600,616,131 2 0204 -- florin
+f/ 600,661,60 2 0205 -- fraction
+%0 600,616,15 2 0206 -- perthousand
+dg 600,580,70 2 0207 -- dagger
+dd 600,580,70 2 0210 -- daggerdbl
+en 600,313 0 0211 -- endash
+em 600,313 0 0212 -- emdash
+fi 600,626 2 0214 -- fi
+fl 600,626 2 0215 -- fl
+.i 600,439 0 0220 -- dotlessi
+ga 600,661 2 0222 -- grave
+a" 600,661 2 0223 -- hungarumlaut
+a. 600,625 2 0224 -- dotaccent
+ab 600,631 2 0225 -- breve
+ah 600,667 2 0226 -- caron
+ao 600,678 2 0227 -- ring
+ho 600,0,199 1 0230 -- ogonek
+lq 600,562 2 0231 -- quotedblleft
+rq 600,562 2 0232 -- quotedblright
+oe 600,454,15 0 0233 -- oe
+/l 600,626 2 0234 -- lslash
+Bq 600,143,142 1 0235 -- quotedblbase
+OE 600,562 2 0236 -- OE
+/L 600,562 2 0237 -- Lslash
+r! 600,449,146 1 0241 -- exclamdown
+char161 "
+ct 600,614,49 2 0242 -- cent
+char162 "
+Po 600,611,28 2 0243 -- sterling
+char163 "
+Cs 600,517 0 0244 -- currency
+char164 "
+Ye 600,562 2 0245 -- yen
+char165 "
+bb 600,675,175 3 0246 -- brokenbar
+char166 "
+sc 600,580,70 2 0247 -- section
+char167 "
+ad 600,625 2 0250 -- dieresis
+char168 "
+co 600,580,18 2 0251 -- copyright
+char169 "
+Of 600,580 2 0252 -- ordfeminine
+char170 "
+fo 600,446 0 0253 -- guilsinglleft
+no 600,413 0 0254 -- logicalnot
+char172 "
+\- 600,313 0 0255 -- minus
+rg 600,580,18 2 0256 -- registered
+char174 "
+a- 600,585 2 0257 -- macron
+char175 "
+de 600,616 2 0260 -- degree
+char176 "
+char177 600,515 0 0261 -- plusminus
+S2 600,616 2 0262 -- twosuperior
+char178 "
+S3 600,616 2 0263 -- threesuperior
+char179 "
+aa 600,661 2 0264 -- acute
+char180 "
+char181 600,439,142 1 0265 -- mu
+ps 600,580,70 2 0266 -- paragraph
+char182 "
+char183 600,351 0 0267 -- periodcentered
+ac 600,0,206 1 0270 -- cedilla
+char184 "
+S1 600,616 2 0271 -- onesuperior
+char185 "
+Om 600,580 2 0272 -- ordmasculine
+char186 "
+fc 600,446 0 0273 -- guilsinglright
+14 600,661,60 2 0274 -- onequarter
+char188 "
+12 600,661,60 2 0275 -- onehalf
+char189 "
+34 600,661,60 2 0276 -- threequarters
+char190 "
+r? 600,449,146 1 0277 -- questiondown
+char191 "
+`A 600,784 2 0300 -- Agrave
+char192 "
+'A 600,784 2 0301 -- Aacute
+char193 "
+^A 600,780 2 0302 -- Acircumflex
+char194 "
+~A 600,759 2 0303 -- Atilde
+char195 "
+:A 600,748 2 0304 -- Adieresis
+char196 "
+oA 600,801 2 0305 -- Aring
+char197 "
+AE 600,562 2 0306 -- AE
+char198 "
+,C 600,580,206 3 0307 -- Ccedilla
+char199 "
+`E 600,784 2 0310 -- Egrave
+char200 "
+'E 600,784 2 0311 -- Eacute
+char201 "
+^E 600,780 2 0312 -- Ecircumflex
+char202 "
+:E 600,748 2 0313 -- Edieresis
+char203 "
+`I 600,784 2 0314 -- Igrave
+char204 "
+'I 600,784 2 0315 -- Iacute
+char205 "
+^I 600,780 2 0316 -- Icircumflex
+char206 "
+:I 600,748 2 0317 -- Idieresis
+char207 "
+-D 600,562 2 0320 -- Eth
+char208 "
+~N 600,759,12 2 0321 -- Ntilde
+char209 "
+`O 600,784,18 2 0322 -- Ograve
+char210 "
+'O 600,784,18 2 0323 -- Oacute
+char211 "
+^O 600,780,18 2 0324 -- Ocircumflex
+char212 "
+~O 600,759,18 2 0325 -- Otilde
+char213 "
+:O 600,748,18 2 0326 -- Odieresis
+char214 "
+char215 600,478 0 0327 -- multiply
+/O 600,584,22 2 0330 -- Oslash
+char216 "
+`U 600,784,18 2 0331 -- Ugrave
+char217 "
+'U 600,784,18 2 0332 -- Uacute
+char218 "
+^U 600,780,18 2 0333 -- Ucircumflex
+char219 "
+:U 600,748,18 2 0334 -- Udieresis
+char220 "
+'Y 600,784 2 0335 -- Yacute
+char221 "
+TP 600,562 2 0336 -- Thorn
+char222 "
+ss 600,626,15 2 0337 -- germandbls
+char223 "
+`a 600,661,15 2 0340 -- agrave
+char224 "
+'a 600,661,15 2 0341 -- aacute
+char225 "
+^a 600,657,15 2 0342 -- acircumflex
+char226 "
+~a 600,636,15 2 0343 -- atilde
+char227 "
+:a 600,625,15 2 0344 -- adieresis
+char228 "
+oa 600,678,15 2 0345 -- aring
+char229 "
+ae 600,454,15 0 0346 -- ae
+char230 "
+,c 600,459,206 1 0347 -- ccedilla
+char231 "
+`e 600,661,15 2 0350 -- egrave
+char232 "
+'e 600,661,15 2 0351 -- eacute
+char233 "
+^e 600,657,15 2 0352 -- ecircumflex
+char234 "
+:e 600,625,15 2 0353 -- edieresis
+char235 "
+`i 600,661 2 0354 -- igrave
+char236 "
+'i 600,661 2 0355 -- iacute
+char237 "
+^i 600,657 2 0356 -- icircumflex
+char238 "
+:i 600,625 2 0357 -- idieresis
+char239 "
+Sd 600,626,27 2 0360 -- eth
+char240 "
+~n 600,636 2 0361 -- ntilde
+char241 "
+`o 600,661,15 2 0362 -- ograve
+char242 "
+'o 600,661,15 2 0363 -- oacute
+char243 "
+^o 600,657,15 2 0364 -- ocircumflex
+char244 "
+~o 600,636,15 2 0365 -- otilde
+char245 "
+:o 600,625,15 2 0366 -- odieresis
+char246 "
+char247 600,500 0 0367 -- divide
+/o 600,463,24 0 0370 -- oslash
+char248 "
+`u 600,661,15 2 0371 -- ugrave
+char249 "
+'u 600,661,15 2 0372 -- uacute
+char250 "
+^u 600,657,15 2 0373 -- ucircumflex
+char251 "
+:u 600,625,15 2 0374 -- udieresis
+char252 "
+'y 600,661,142 3 0375 -- yacute
+char253 "
+Tp 600,626,142 3 0376 -- thorn
+char254 "
+:y 600,625,142 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/CBI b/font/devps/CBI
new file mode 100644
index 000000000..0f5fe4682
--- /dev/null
+++ b/font/devps/CBI
@@ -0,0 +1,337 @@
+name CBI
+internalname Courier-BoldOblique
+slant 12
+spacewidth 600
+encoding text.enc
+charset
+ha 600,616,0,5,-121,5 2 0000 -- asciicircum
+ti 600,356,0,39,-70,39 0 0001 -- asciitilde
+vS 600,790,22,122,-4,75 2 0002 -- Scaron
+vZ 600,790,0,109,-12,75 2 0003 -- Zcaron
+vs 600,667,17,82,-17,75 2 0004 -- scaron
+vz 600,667,0,82,-31,75 2 0005 -- zcaron
+:Y 600,748,0,158,-59,75 2 0006 -- Ydieresis
+tm 600,562,0,318,-36,75 2 0007 -- trademark
+aq 600,562,0,0,-254 2 0010 -- quotesingle
+space 600 0 0040
+! 600,572,15,0,-166 2 0041 -- exclam
+" 600,562,0,34,-162,34 2 0042 -- quotedbl
+# 600,651,45,90,-38,75 2 0043 -- numbersign
+sh "
+$ 600,666,126,79,-37,75 2 0044 -- dollar
+Do "
+% 600,616,15,74,-52,74 2 0045 -- percent
+& 600,543,15,44,-12,44 0 0046 -- ampersand
+' 600,562,0,0,-180 2 0047 -- quoteright
+( 600,616,102,42,-216,42 2 0050 -- parenleft
+) 600,616,102,0,-67 2 0051 -- parenright
+* 600,601,0,47,-129,47 2 0052 -- asterisk
++ 600,478,0,46,-64,46 0 0053 -- plus
+, 600,174,111,0,-49 0 0054 -- comma
+- 600,313,0,17,-93,17 0 0055 -- hyphen
+hy "
+char173 "
+. 600,171,15,0,-157 0 0056 -- period
+/ 600,626,77,76,-41,75 2 0057 -- slash
+sl "
+0 600,616,15,42,-86,42 2 0060 -- zero
+1 600,616,0,11,-43,11 2 0061 -- one
+2 600,616,0,43,-11,43 2 0062 -- two
+3 600,616,15,21,-22,21 2 0063 -- three
+4 600,616,0,8,-32,8 2 0064 -- four
+5 600,601,15,71,-27,71 2 0065 -- five
+6 600,616,15,102,-86,75 2 0066 -- six
+7 600,601,0,72,-97,72 2 0067 -- seven
+8 600,616,15,54,-65,54 2 0070 -- eight
+9 600,616,15,42,-26,42 2 0071 -- nine
+: 600,425,15,0,-156 0 0072 -- colon
+; 600,425,111,0,-49 0 0073 -- semicolon
+< 600,501,0,62,-71,62 0 0074 -- less
+= 600,398,0,64,-46,64 0 0075 -- equal
+> 600,501,0,39,-47,39 0 0076 -- greater
+? 600,580,14,41,-133,41 2 0077 -- question
+@ 600,616,15,91,-16,75 2 0100 -- at
+at "
+A 600,562,0,81,59,75 2 0101 -- A
+B 600,562,0,79,20,75 2 0102 -- B
+C 600,580,18,124,-25,75 2 0103 -- C
+D 600,562,0,114,20,75 2 0104 -- D
+E 600,562,0,119,25,75 2 0105 -- E
+F 600,562,0,133,11,75 2 0106 -- F
+G 600,580,18,124,-25,75 2 0107 -- G
+H 600,562,0,149,30,75 2 0110 -- H
+I 600,562,0,92,-27,75 2 0111 -- I
+J 600,562,18,170,-9,75 2 0112 -- J
+K 600,562,0,141,29,75 2 0113 -- K
+L 600,562,0,85,11,75 2 0114 -- L
+M 600,562,0,171,52,75 2 0115 -- M
+N 600,562,12,179,42,75 2 0116 -- N
+O 600,580,18,95,-24,75 2 0117 -- O
+P 600,562,0,92,2,75 2 0120 -- P
+Q 600,580,138,86,-34,75 2 0121 -- Q
+R 600,562,0,67,26,67 2 0122 -- R
+S 600,582,22,122,-4,75 2 0123 -- S
+T 600,562,0,128,-36,75 2 0124 -- T
+U 600,562,18,165,-51,75 2 0125 -- U
+V 600,562,0,182,-34,75 2 0126 -- V
+W 600,562,0,187,-34,75 2 0127 -- W
+X 600,562,0,139,38,75 2 0130 -- X
+Y 600,562,0,158,-59,75 2 0131 -- Y
+Z 600,562,0,86,-12,75 2 0132 -- Z
+[ 600,616,102,56,-173,56 2 0133 -- bracketleft
+lB "
+\ 600,626,77,0,-173 2 0134 -- backslash
+rs "
+] 600,616,102,0,-53 2 0135 -- bracketright
+rB "
+a^ 600,657,0,56,-162,56 2 0136 -- circumflex
+^ "
+_ 600,0,125,34,77,34 0 0137 -- underscore
+` 600,562,0,0,-247 2 0140 -- quoteleft
+oq "
+a 600,454,15,42,-12,42 0 0141 -- a
+b 600,626,15,86,37,75 2 0142 -- b
+c 600,459,15,81,-31,75 0 0143 -- c
+d 600,626,15,94,-11,75 2 0144 -- d
+e 600,454,15,54,-31,54 0 0145 -- e
+f 600,626,0,127,-33,75 2 0146 -- f
+g 600,454,146,123,9,75 1 0147 -- g
+h 600,626,0,64,32,64 2 0150 -- h
+i 600,658,0,0,-27 2 0151 -- i
+j 600,658,146,30,13,30 3 0152 -- j
+k 600,626,0,92,17,75 2 0153 -- k
+l 600,626,0,0,-27 2 0154 -- l
+m 600,454,0,98,72,75 0 0155 -- m
+n 600,454,0,64,32,64 0 0156 -- n
+o 600,454,15,72,-21,72 0 0157 -- o
+p 600,454,142,72,81,72 1 0160 -- p
+q 600,454,142,134,-11,75 1 0161 -- q
+r 600,454,0,104,3,75 0 0162 -- r
+s 600,459,17,57,-17,57 0 0163 -- s
+t 600,562,15,16,-68,16 2 0164 -- t
+u 600,439,15,41,-20,41 0 0165 -- u
+v 600,439,0,144,-20,75 0 0166 -- v
+w 600,439,0,161,-3,75 0 0167 -- w
+x 600,439,0,120,44,75 0 0170 -- x
+y 600,439,142,144,70,75 1 0171 -- y
+z 600,439,0,63,-31,63 0 0172 -- z
+lC 600,616,102,45,-154,45 2 0173 -- braceleft
+{ "
+ba 600,750,250,0,-152 3 0174 -- bar
+| "
+rC 600,616,102,0,-64 2 0175 -- braceright
+} "
+a~ 600,636,0,92,-150,75 2 0176 -- tilde
+~ "
+bq 600,143,142,0,-95 1 0200 -- quotesinglbase
+Fo 600,446,0,88,-13,75 0 0201 -- guillemotleft
+char171 "
+Fc 600,446,0,97,-22,75 0 0202 -- guillemotright
+char187 "
+bu 600,430,0,0,-147 0 0203 -- bullet
+Fn 600,616,131,151,106,75 2 0204 -- florin
+f/ 600,661,60,157,28,75 2 0205 -- fraction
+%0 600,616,15,192,94,75 2 0206 -- perthousand
+dg 600,580,70,36,-126,36 2 0207 -- dagger
+dd 600,580,70,36,-72,36 2 0210 -- daggerdbl
+en 600,313,0,52,-58,52 0 0211 -- endash
+em 600,313,0,127,17,75 0 0212 -- emdash
+fi 600,626,0,93,38,75 2 0214 -- fi
+fl 600,626,0,93,38,75 2 0215 -- fl
+.i 600,439,0,0,-27 0 0220 -- dotlessi
+ga 600,661,0,0,-222 2 0222 -- grave
+a" 600,661,0,178,-122,75 2 0223 -- hungarumlaut
+a. 600,625,0,0,-296 2 0224 -- dotaccent
+ab 600,631,0,101,-167,75 2 0225 -- breve
+ah 600,667,0,82,-188,75 2 0226 -- caron
+ao 600,678,0,0,-269 2 0227 -- ring
+ho 600,0,199,0,-94 1 0230 -- ogonek
+lq 600,562,0,44,-140,44 2 0231 -- quotedblleft
+rq 600,562,0,94,-70,75 2 0232 -- quotedblright
+oe 600,454,15,111,31,75 0 0233 -- oe
+/l 600,626,0,28,-27,28 2 0234 -- lslash
+Bq 600,143,142,9,15,9 1 0235 -- quotedblbase
+OE 600,562,0,150,24,75 2 0236 -- OE
+/L 600,562,0,85,11,75 2 0237 -- Lslash
+r! 600,449,146,0,-147 1 0241 -- exclamdown
+char161 "
+ct 600,614,49,54,-71,54 2 0242 -- cent
+char162 "
+Po 600,611,28,100,-57,75 2 0243 -- sterling
+char163 "
+Cs 600,517,0,93,-27,75 0 0244 -- currency
+char164 "
+Ye 600,562,0,159,-48,75 2 0245 -- yen
+char165 "
+bb 600,675,175,0,-168 3 0246 -- brokenbar
+char166 "
+sc 600,580,70,69,-24,69 2 0247 -- section
+char167 "
+ad 600,625,0,42,-194,42 2 0250 -- dieresis
+char168 "
+co 600,580,18,117,-3,75 2 0251 -- copyright
+char169 "
+Of 600,580,0,0,-139 2 0252 -- ordfeminine
+char170 "
+fo 600,446,0,0,-146 0 0253 -- guilsinglleft
+no 600,413,0,67,-85,67 0 0254 -- logicalnot
+char172 "
+\- 600,313,0,46,-64,46 0 0255 -- minus
+rg 600,580,18,117,-3,75 2 0256 -- registered
+char174 "
+a- 600,585,0,86,-145,75 2 0257 -- macron
+char175 "
+de 600,616,0,19,-123,19 2 0260 -- degree
+char176 "
+char177 600,515,0,64,-26,64 0 0261 -- plusminus
+S2 600,616,0,0,-142 2 0262 -- twosuperior
+char178 "
+S3 600,616,0,0,-143 2 0263 -- threesuperior
+char179 "
+aa 600,661,0,58,-263,58 2 0264 -- acute
+char180 "
+char181 600,439,142,41,0,41 1 0265 -- mu
+ps 600,580,70,149,-11,75 2 0266 -- paragraph
+char182 "
+char183 600,351,0,0,-199 0 0267 -- periodcentered
+ac 600,0,206,0,-119 1 0270 -- cedilla
+char184 "
+S1 600,616,0,0,-163 2 0271 -- onesuperior
+char185 "
+Om 600,580,0,0,-139 2 0272 -- ordmasculine
+char186 "
+fc 600,446,0,0,-116 0 0273 -- guilsinglright
+14 600,661,60,156,36,75 2 0274 -- onequarter
+char188 "
+12 600,661,60,165,27,75 2 0275 -- onehalf
+char189 "
+34 600,661,60,148,42,75 2 0276 -- threequarters
+char190 "
+r? 600,449,146,0,-51 1 0277 -- questiondown
+char191 "
+`A 600,784,0,81,59,75 2 0300 -- Agrave
+char192 "
+'A 600,784,0,115,59,75 2 0301 -- Aacute
+char193 "
+^A 600,780,0,81,59,75 2 0302 -- Acircumflex
+char194 "
+~A 600,759,0,88,59,75 2 0303 -- Atilde
+char195 "
+:A 600,748,0,81,59,75 2 0304 -- Adieresis
+char196 "
+oA 600,801,0,81,59,75 2 0305 -- Aring
+char197 "
+AE 600,562,0,157,79,75 2 0306 -- AE
+char198 "
+,C 600,580,206,124,-24,75 3 0307 -- Ccedilla
+char199 "
+`E 600,784,0,119,25,75 2 0310 -- Egrave
+char200 "
+'E 600,784,0,119,25,75 2 0311 -- Eacute
+char201 "
+^E 600,780,0,119,25,75 2 0312 -- Ecircumflex
+char202 "
+:E 600,748,0,119,25,75 2 0313 -- Edieresis
+char203 "
+`I 600,784,0,92,-27,75 2 0314 -- Igrave
+char204 "
+'I 600,784,0,92,-27,75 2 0315 -- Iacute
+char205 "
+^I 600,780,0,92,-27,75 2 0316 -- Icircumflex
+char206 "
+:I 600,748,0,92,-27,75 2 0317 -- Idieresis
+char207 "
+-D 600,562,0,114,20,75 2 0320 -- Eth
+char208 "
+~N 600,759,12,179,42,75 2 0321 -- Ntilde
+char209 "
+`O 600,784,18,95,-24,75 2 0322 -- Ograve
+char210 "
+'O 600,784,18,95,-24,75 2 0323 -- Oacute
+char211 "
+^O 600,780,18,95,-24,75 2 0324 -- Ocircumflex
+char212 "
+~O 600,759,18,118,-24,75 2 0325 -- Otilde
+char213 "
+:O 600,748,18,95,-24,75 2 0326 -- Odieresis
+char214 "
+char215 600,478,0,56,-55,56 0 0327 -- multiply
+/O 600,584,22,122,2,75 2 0330 -- Oslash
+char216 "
+`U 600,784,18,165,-51,75 2 0331 -- Ugrave
+char217 "
+'U 600,784,18,165,-51,75 2 0332 -- Uacute
+char218 "
+^U 600,780,18,165,-51,75 2 0333 -- Ucircumflex
+char219 "
+:U 600,748,18,165,-51,75 2 0334 -- Udieresis
+char220 "
+'Y 600,784,0,158,-59,75 2 0335 -- Yacute
+char221 "
+TP 600,562,0,69,2,69 2 0336 -- Thorn
+char222 "
+ss 600,626,15,78,28,75 2 0337 -- germandbls
+char223 "
+`a 600,661,15,42,-12,42 2 0340 -- agrave
+char224 "
+'a 600,661,15,58,-12,58 2 0341 -- aacute
+char225 "
+^a 600,657,15,42,-12,42 2 0342 -- acircumflex
+char226 "
+~a 600,636,15,92,-12,75 2 0343 -- atilde
+char227 "
+:a 600,625,15,42,-12,42 2 0344 -- adieresis
+char228 "
+oa 600,678,15,42,-12,42 2 0345 -- aring
+char229 "
+ae 600,454,15,101,29,75 0 0346 -- ae
+char230 "
+,c 600,459,206,81,-31,75 1 0347 -- ccedilla
+char231 "
+`e 600,661,15,54,-31,54 2 0350 -- egrave
+char232 "
+'e 600,661,15,58,-31,58 2 0351 -- eacute
+char233 "
+^e 600,657,15,56,-31,56 2 0352 -- ecircumflex
+char234 "
+:e 600,625,15,54,-31,54 2 0353 -- edieresis
+char235 "
+`i 600,661,0,0,-27 2 0354 -- igrave
+char236 "
+'i 600,661,0,58,-27,58 2 0355 -- iacute
+char237 "
+^i 600,657,0,16,-27,16 2 0356 -- icircumflex
+char238 "
+:i 600,625,0,2,-27,2 2 0357 -- idieresis
+char239 "
+Sd 600,626,27,111,-43,75 2 0360 -- eth
+char240 "
+~n 600,636,0,92,32,75 2 0361 -- ntilde
+char241 "
+`o 600,661,15,72,-21,72 2 0362 -- ograve
+char242 "
+'o 600,661,15,72,-21,72 2 0363 -- oacute
+char243 "
+^o 600,657,15,72,-21,72 2 0364 -- ocircumflex
+char244 "
+~o 600,636,15,92,-21,75 2 0365 -- otilde
+char245 "
+:o 600,625,15,72,-21,72 2 0366 -- odieresis
+char246 "
+char247 600,500,0,46,-64,46 0 0367 -- divide
+/o 600,463,24,87,-5,75 0 0370 -- oslash
+char248 "
+`u 600,661,15,41,-20,41 2 0371 -- ugrave
+char249 "
+'u 600,661,15,58,-20,58 2 0372 -- uacute
+char250 "
+^u 600,657,15,41,-20,41 2 0373 -- ucircumflex
+char251 "
+:u 600,625,15,41,-20,41 2 0374 -- udieresis
+char252 "
+'y 600,661,142,144,70,75 3 0375 -- yacute
+char253 "
+Tp 600,626,142,72,81,72 3 0376 -- thorn
+char254 "
+:y 600,625,142,144,70,75 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/CI b/font/devps/CI
new file mode 100644
index 000000000..b01873b03
--- /dev/null
+++ b/font/devps/CI
@@ -0,0 +1,337 @@
+name CI
+internalname Courier-Oblique
+slant 12
+spacewidth 600
+encoding text.enc
+charset
+ha 600,622,0,37,-125,37 2 0000 -- asciicircum
+ti 600,320,0,50,-66,50 0 0001 -- asciitilde
+vS 600,805,20,123,-26,72 2 0002 -- Scaron
+vZ 600,805,0,93,-36,72 2 0003 -- Zcaron
+vs 600,669,15,64,-28,64 2 0004 -- scaron
+vz 600,669,0,74,-49,72 2 0005 -- zcaron
+:Y 600,731,0,145,-83,72 2 0006 -- Ydieresis
+tm 600,562,0,192,-25,72 2 0007 -- trademark
+aq 600,562,0,0,-295 2 0010 -- quotesingle
+space 600 0 0040
+! 600,572,15,0,-193 2 0041 -- exclam
+" 600,562,0,0,-223 2 0042 -- quotedbl
+# 600,639,32,46,-83,46 2 0043 -- numbersign
+sh "
+$ 600,662,126,46,-58,46 2 0044 -- dollar
+Do "
+% 600,622,15,49,-84,49 2 0045 -- percent
+& 600,543,15,30,-37,30 0 0046 -- ampersand
+' 600,562,0,0,-233 2 0047 -- quoteright
+( 600,622,108,22,-263,22 2 0050 -- parenleft
+) 600,622,108,0,-87 2 0051 -- parenright
+* 600,607,0,30,-162,30 2 0052 -- asterisk
++ 600,470,0,30,-79,30 0 0053 -- plus
+, 600,122,112,0,-107 0 0054 -- comma
+- 600,285,0,8,-102,8 0 0055 -- hyphen
+hy "
+char173 "
+. 600,109,15,0,-188 0 0056 -- period
+/ 600,629,80,54,-62,54 2 0057 -- slash
+sl "
+0 600,622,15,25,-104,25 2 0060 -- zero
+1 600,622,0,0,-48 2 0061 -- one
+2 600,622,0,18,-20,18 2 0062 -- two
+3 600,622,15,0,-32 2 0063 -- three
+4 600,622,0,0,-58 2 0064 -- four
+5 600,607,15,39,-49,39 2 0065 -- five
+6 600,622,15,79,-105,72 2 0066 -- six
+7 600,607,0,62,-132,62 2 0067 -- seven
+8 600,622,15,38,-82,38 2 0070 -- eight
+9 600,622,15,24,-43,24 2 0071 -- nine
+: 600,385,15,0,-188 0 0072 -- colon
+; 600,385,112,0,-107 0 0073 -- semicolon
+< 600,472,0,60,-46,60 0 0074 -- less
+= 600,376,0,50,-59,50 0 0075 -- equal
+> 600,472,0,49,-35,49 0 0076 -- greater
+? 600,572,15,33,-172,33 2 0077 -- question
+@ 600,622,15,32,-77,32 2 0100 -- at
+at "
+A 600,562,0,57,47,57 2 0101 -- A
+B 600,562,0,66,7,66 2 0102 -- B
+C 600,580,18,105,-43,72 2 0103 -- C
+D 600,562,0,95,7,72 2 0104 -- D
+E 600,562,0,110,-3,72 2 0105 -- E
+F 600,562,0,110,-3,72 2 0106 -- F
+G 600,580,18,95,-33,72 2 0107 -- G
+H 600,562,0,137,18,72 2 0110 -- H
+I 600,562,0,73,-46,72 2 0111 -- I
+J 600,562,18,135,-2,72 2 0112 -- J
+K 600,562,0,121,12,72 2 0113 -- K
+L 600,562,0,57,3,57 2 0114 -- L
+M 600,562,0,165,46,72 2 0115 -- M
+N 600,562,13,162,43,72 2 0116 -- N
+O 600,580,18,75,-44,72 2 0117 -- O
+P 600,562,0,94,-29,72 2 0120 -- P
+Q 600,580,138,75,-45,72 2 0121 -- Q
+R 600,562,0,48,12,48 2 0122 -- R
+S 600,580,20,100,-26,72 2 0123 -- S
+T 600,562,0,115,-58,72 2 0124 -- T
+U 600,562,18,152,-75,72 2 0125 -- U
+V 600,562,13,173,-55,72 2 0126 -- V
+W 600,562,13,172,-56,72 2 0127 -- W
+X 600,562,0,125,27,72 2 0130 -- X
+Y 600,562,0,145,-83,72 2 0131 -- Y
+Z 600,562,0,60,-36,60 2 0132 -- Z
+[ 600,622,108,24,-196,24 2 0133 -- bracketleft
+lB "
+\ 600,629,80,0,-199 2 0134 -- backslash
+rs "
+] 600,622,108,0,-85 2 0135 -- bracketright
+rB "
+a^ 600,654,0,31,-179,31 2 0136 -- circumflex
+^ "
+_ 600,0,125,34,77,34 0 0137 -- underscore
+` 600,562,0,0,-293 2 0140 -- quoteleft
+oq "
+a 600,441,15,19,-26,19 0 0141 -- a
+b 600,629,15,75,21,72 2 0142 -- b
+c 600,441,15,58,-56,58 0 0143 -- c
+d 600,629,15,90,-35,72 2 0144 -- d
+e 600,441,15,48,-56,48 0 0145 -- e
+f 600,629,0,112,-64,72 2 0146 -- f
+g 600,441,157,107,-11,72 1 0147 -- g
+h 600,629,0,42,17,42 2 0150 -- h
+i 600,657,0,0,-45 2 0151 -- i
+j 600,657,157,0,-2 3 0152 -- j
+k 600,629,0,83,-8,72 2 0153 -- k
+l 600,629,0,0,-45 2 0154 -- l
+m 600,441,0,65,55,65 0 0155 -- m
+n 600,441,0,35,24,35 0 0156 -- n
+o 600,441,15,38,-52,38 0 0157 -- o
+p 600,441,157,55,74,55 1 0160 -- p
+q 600,441,157,132,-35,72 1 0161 -- q
+r 600,441,0,86,-10,72 0 0162 -- r
+s 600,441,15,34,-28,34 0 0163 -- s
+t 600,561,15,11,-117,11 2 0164 -- t
+u 600,426,15,22,-51,22 0 0165 -- u
+v 600,426,10,131,-40,72 0 0166 -- v
+w 600,426,10,145,-26,72 0 0167 -- w
+x 600,426,0,105,30,72 0 0170 -- x
+y 600,426,157,133,54,72 1 0171 -- y
+z 600,426,0,43,-49,43 0 0172 -- z
+lC 600,622,108,19,-183,19 2 0173 -- braceleft
+{ "
+ba 600,750,250,0,-172 3 0174 -- bar
+| "
+rC 600,622,108,0,-90 2 0175 -- braceright
+} "
+a~ 600,606,0,79,-162,72 2 0176 -- tilde
+~ "
+bq 600,100,134,0,-135 0 0200 -- quotesinglbase
+Fo 600,446,0,102,-42,72 0 0201 -- guillemotleft
+char171 "
+Fc 600,446,0,68,-8,68 0 0202 -- guillemotright
+char187 "
+bu 600,383,0,0,-174 0 0203 -- bullet
+Fn 600,622,143,121,76,72 2 0204 -- florin
+f/ 600,665,57,96,-34,72 2 0205 -- fraction
+%0 600,622,15,77,-9,72 2 0206 -- perthousand
+dg 600,580,78,0,-167 2 0207 -- dagger
+dd 600,580,78,0,-113 2 0210 -- daggerdbl
+en 600,285,0,36,-74,36 0 0211 -- endash
+em 600,285,0,111,1,72 0 0212 -- emdash
+fi 600,629,0,69,47,69 2 0214 -- fi
+fl 600,629,0,69,47,69 2 0215 -- fl
+.i 600,426,0,0,-45 0 0220 -- dotlessi
+ga 600,672,0,0,-244 2 0222 -- grave
+a" 600,672,0,133,-189,72 2 0223 -- hungarumlaut
+a. 600,580,0,0,-310 2 0224 -- dotaccent
+ab 600,609,0,26,-229,26 2 0225 -- breve
+ah 600,669,0,64,-212,64 2 0226 -- caron
+ao 600,627,0,0,-282 2 0227 -- ring
+ho 600,0,151,0,-157 0 0230 -- ogonek
+lq 600,562,0,0,-212 2 0231 -- quotedblleft
+rq 600,562,0,26,-163,26 2 0232 -- quotedblright
+oe 600,441,15,65,-4,65 0 0233 -- oe
+/l 600,629,0,33,-45,33 2 0234 -- lslash
+Bq 600,100,134,0,-65 0 0235 -- quotedblbase
+OE 600,562,0,122,-9,72 2 0236 -- OE
+/L 600,562,0,57,3,57 2 0237 -- Lslash
+r! 600,430,157,0,-175 1 0241 -- exclamdown
+char161 "
+ct 600,614,49,38,-101,38 2 0242 -- cent
+char162 "
+Po 600,611,21,71,-74,71 2 0243 -- sterling
+char163 "
+Cs 600,506,0,78,-44,72 0 0244 -- currency
+char164 "
+Ye 600,562,0,143,-70,72 2 0245 -- yen
+char165 "
+bb 600,675,175,0,-188 3 0246 -- brokenbar
+char166 "
+sc 600,580,78,40,-54,40 2 0247 -- section
+char167 "
+ad 600,595,0,20,-212,20 2 0250 -- dieresis
+char168 "
+co 600,580,18,117,-3,72 2 0251 -- copyright
+char169 "
+Of 600,580,0,0,-159 2 0252 -- ordfeminine
+char170 "
+fo 600,446,0,0,-154 0 0253 -- guilsinglleft
+no 600,369,0,41,-105,41 0 0254 -- logicalnot
+char172 "
+\- 600,283,0,30,-79,30 0 0255 -- minus
+rg 600,580,18,117,-3,72 2 0256 -- registered
+char174 "
+a- 600,565,0,50,-182,50 2 0257 -- macron
+char175 "
+de 600,622,0,26,-164,26 2 0260 -- degree
+char176 "
+char177 600,558,0,44,-46,44 0 0261 -- plusminus
+S2 600,622,0,0,-180 2 0262 -- twosuperior
+char178 "
+S3 600,622,0,0,-163 2 0263 -- threesuperior
+char179 "
+aa 600,672,0,62,-298,62 2 0264 -- acute
+char180 "
+char181 600,426,157,22,-22,22 1 0265 -- mu
+ps 600,562,78,80,-50,72 2 0266 -- paragraph
+char182 "
+char183 600,327,0,0,-225 0 0267 -- periodcentered
+ac 600,10,151,0,-147 0 0270 -- cedilla
+char184 "
+S1 600,622,0,0,-181 2 0271 -- onesuperior
+char185 "
+Om 600,580,0,0,-160 2 0272 -- ordmasculine
+char186 "
+fc 600,446,0,0,-120 0 0273 -- guilsinglright
+14 600,665,57,124,-15,72 2 0274 -- onequarter
+char188 "
+12 600,665,57,119,-15,72 2 0275 -- onehalf
+char189 "
+34 600,666,56,109,-23,72 2 0276 -- threequarters
+char190 "
+r? 600,430,157,0,-55 1 0277 -- questiondown
+char191 "
+`A 600,793,0,57,47,57 2 0300 -- Agrave
+char192 "
+'A 600,793,0,108,47,72 2 0301 -- Aacute
+char193 "
+^A 600,775,0,57,47,57 2 0302 -- Acircumflex
+char194 "
+~A 600,732,0,106,47,72 2 0303 -- Atilde
+char195 "
+:A 600,731,0,57,47,57 2 0304 -- Adieresis
+char196 "
+oA 600,753,0,57,47,57 2 0305 -- Aring
+char197 "
+AE 600,562,0,105,47,72 2 0306 -- AE
+char198 "
+,C 600,580,151,108,-43,72 2 0307 -- Ccedilla
+char199 "
+`E 600,793,0,110,-3,72 2 0310 -- Egrave
+char200 "
+'E 600,793,0,118,-3,72 2 0311 -- Eacute
+char201 "
+^E 600,775,0,110,-3,72 2 0312 -- Ecircumflex
+char202 "
+:E 600,731,0,110,-3,72 2 0313 -- Edieresis
+char203 "
+`I 600,793,0,73,-46,72 2 0314 -- Igrave
+char204 "
+'I 600,793,0,88,-46,72 2 0315 -- Iacute
+char205 "
+^I 600,775,0,73,-46,72 2 0316 -- Icircumflex
+char206 "
+:I 600,731,0,73,-46,72 2 0317 -- Idieresis
+char207 "
+-D 600,562,0,95,7,72 2 0320 -- Eth
+char208 "
+~N 600,732,13,162,43,72 2 0321 -- Ntilde
+char209 "
+`O 600,793,18,75,-44,72 2 0322 -- Ograve
+char210 "
+'O 600,793,18,88,-44,72 2 0323 -- Oacute
+char211 "
+^O 600,775,18,75,-44,72 2 0324 -- Ocircumflex
+char212 "
+~O 600,732,18,106,-44,72 2 0325 -- Otilde
+char213 "
+:O 600,731,18,75,-44,72 2 0326 -- Odieresis
+char214 "
+char215 600,470,0,57,-53,57 0 0327 -- multiply
+/O 600,629,80,75,-44,72 2 0330 -- Oslash
+char216 "
+`U 600,793,18,152,-75,72 2 0331 -- Ugrave
+char217 "
+'U 600,793,18,152,-75,72 2 0332 -- Uacute
+char218 "
+^U 600,775,18,152,-75,72 2 0333 -- Ucircumflex
+char219 "
+:U 600,731,18,152,-75,72 2 0334 -- Udieresis
+char220 "
+'Y 600,793,0,145,-83,72 2 0335 -- Yacute
+char221 "
+TP 600,562,0,56,-29,56 2 0336 -- Thorn
+char222 "
+ss 600,629,15,67,2,67 2 0337 -- germandbls
+char223 "
+`a 600,672,15,19,-26,19 2 0340 -- agrave
+char224 "
+'a 600,672,15,62,-26,62 2 0341 -- aacute
+char225 "
+^a 600,654,15,31,-26,31 2 0342 -- acircumflex
+char226 "
+~a 600,606,15,79,-26,72 2 0343 -- atilde
+char227 "
+:a 600,595,15,20,-26,20 2 0344 -- adieresis
+char228 "
+oa 600,627,15,19,-26,19 2 0345 -- aring
+char229 "
+ae 600,441,15,76,9,72 0 0346 -- ae
+char230 "
+,c 600,441,151,64,-56,64 0 0347 -- ccedilla
+char231 "
+`e 600,672,15,48,-56,48 2 0350 -- egrave
+char232 "
+'e 600,672,15,62,-56,62 2 0351 -- eacute
+char233 "
+^e 600,654,15,48,-56,48 2 0352 -- ecircumflex
+char234 "
+:e 600,595,15,48,-56,48 2 0353 -- edieresis
+char235 "
+`i 600,672,0,0,-45 2 0354 -- igrave
+char236 "
+'i 600,672,0,62,-45,62 2 0355 -- iacute
+char237 "
+^i 600,654,0,1,-45,1 2 0356 -- icircumflex
+char238 "
+:i 600,595,0,0,-45 2 0357 -- idieresis
+char239 "
+Sd 600,629,15,89,-52,72 2 0360 -- eth
+char240 "
+~n 600,606,0,79,24,72 2 0361 -- ntilde
+char241 "
+`o 600,672,15,38,-52,38 2 0362 -- ograve
+char242 "
+'o 600,672,15,62,-52,62 2 0363 -- oacute
+char243 "
+^o 600,654,15,38,-52,38 2 0364 -- ocircumflex
+char244 "
+~o 600,606,15,79,-52,72 2 0365 -- otilde
+char245 "
+:o 600,595,15,38,-52,38 2 0366 -- odieresis
+char246 "
+char247 600,467,0,23,-86,23 0 0367 -- divide
+/o 600,506,80,38,-52,38 0 0370 -- oslash
+char248 "
+`u 600,672,15,22,-51,22 2 0371 -- ugrave
+char249 "
+'u 600,672,15,52,-51,52 2 0372 -- uacute
+char250 "
+^u 600,654,15,22,-51,22 2 0373 -- ucircumflex
+char251 "
+:u 600,595,15,22,-51,22 2 0374 -- udieresis
+char252 "
+'y 600,672,157,133,54,72 3 0375 -- yacute
+char253 "
+Tp 600,629,157,55,74,55 3 0376 -- thorn
+char254 "
+:y 600,595,157,133,54,72 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/CR b/font/devps/CR
new file mode 100644
index 000000000..beb4a80c7
--- /dev/null
+++ b/font/devps/CR
@@ -0,0 +1,336 @@
+name CR
+internalname Courier
+spacewidth 600
+encoding text.enc
+charset
+ha 600,622 2 0000 -- asciicircum
+ti 600,320 0 0001 -- asciitilde
+vS 600,805,20 2 0002 -- Scaron
+vZ 600,805 2 0003 -- Zcaron
+vs 600,669,15 2 0004 -- scaron
+vz 600,669 2 0005 -- zcaron
+:Y 600,731 2 0006 -- Ydieresis
+tm 600,562 2 0007 -- trademark
+aq 600,562 2 0010 -- quotesingle
+space 600 0 0040
+! 600,572,15 2 0041 -- exclam
+" 600,562 2 0042 -- quotedbl
+# 600,639,32 2 0043 -- numbersign
+sh "
+$ 600,662,126 2 0044 -- dollar
+Do "
+% 600,622,15 2 0045 -- percent
+& 600,543,15 0 0046 -- ampersand
+' 600,562 2 0047 -- quoteright
+( 600,622,108 2 0050 -- parenleft
+) 600,622,108 2 0051 -- parenright
+* 600,607 2 0052 -- asterisk
++ 600,470 0 0053 -- plus
+, 600,122,112 0 0054 -- comma
+- 600,285 0 0055 -- hyphen
+hy "
+char173 "
+. 600,109,15 0 0056 -- period
+/ 600,629,80 2 0057 -- slash
+sl "
+0 600,622,15 2 0060 -- zero
+1 600,622 2 0061 -- one
+2 600,622 2 0062 -- two
+3 600,622,15 2 0063 -- three
+4 600,622 2 0064 -- four
+5 600,607,15 2 0065 -- five
+6 600,622,15 2 0066 -- six
+7 600,607 2 0067 -- seven
+8 600,622,15 2 0070 -- eight
+9 600,622,15 2 0071 -- nine
+: 600,385,15 0 0072 -- colon
+; 600,385,112 0 0073 -- semicolon
+< 600,472 0 0074 -- less
+= 600,376 0 0075 -- equal
+> 600,472 0 0076 -- greater
+? 600,572,15 2 0077 -- question
+@ 600,622,15 2 0100 -- at
+at "
+A 600,562 2 0101 -- A
+B 600,562 2 0102 -- B
+C 600,580,18 2 0103 -- C
+D 600,562 2 0104 -- D
+E 600,562 2 0105 -- E
+F 600,562 2 0106 -- F
+G 600,580,18 2 0107 -- G
+H 600,562 2 0110 -- H
+I 600,562 2 0111 -- I
+J 600,562,18 2 0112 -- J
+K 600,562 2 0113 -- K
+L 600,562 2 0114 -- L
+M 600,562 2 0115 -- M
+N 600,562,13 2 0116 -- N
+O 600,580,18 2 0117 -- O
+P 600,562 2 0120 -- P
+Q 600,580,138 2 0121 -- Q
+R 600,562 2 0122 -- R
+S 600,580,20 2 0123 -- S
+T 600,562 2 0124 -- T
+U 600,562,18 2 0125 -- U
+V 600,562,13 2 0126 -- V
+W 600,562,13 2 0127 -- W
+X 600,562 2 0130 -- X
+Y 600,562 2 0131 -- Y
+Z 600,562 2 0132 -- Z
+[ 600,622,108 2 0133 -- bracketleft
+lB "
+\ 600,629,80 2 0134 -- backslash
+rs "
+] 600,622,108 2 0135 -- bracketright
+rB "
+a^ 600,654 2 0136 -- circumflex
+^ "
+_ 600,0,125 0 0137 -- underscore
+` 600,562 2 0140 -- quoteleft
+oq "
+a 600,441,15 0 0141 -- a
+b 600,629,15 2 0142 -- b
+c 600,441,15 0 0143 -- c
+d 600,629,15 2 0144 -- d
+e 600,441,15 0 0145 -- e
+f 600,629 2 0146 -- f
+g 600,441,157 1 0147 -- g
+h 600,629 2 0150 -- h
+i 600,657 2 0151 -- i
+j 600,657,157 3 0152 -- j
+k 600,629 2 0153 -- k
+l 600,629 2 0154 -- l
+m 600,441 0 0155 -- m
+n 600,441 0 0156 -- n
+o 600,441,15 0 0157 -- o
+p 600,441,157 1 0160 -- p
+q 600,441,157 1 0161 -- q
+r 600,441 0 0162 -- r
+s 600,441,15 0 0163 -- s
+t 600,561,15 2 0164 -- t
+u 600,426,15 0 0165 -- u
+v 600,426,10 0 0166 -- v
+w 600,426,10 0 0167 -- w
+x 600,426 0 0170 -- x
+y 600,426,157 1 0171 -- y
+z 600,426 0 0172 -- z
+lC 600,622,108 2 0173 -- braceleft
+{ "
+ba 600,750,250 3 0174 -- bar
+| "
+rC 600,622,108 2 0175 -- braceright
+} "
+a~ 600,606 2 0176 -- tilde
+~ "
+bq 600,100,134 0 0200 -- quotesinglbase
+Fo 600,446 0 0201 -- guillemotleft
+char171 "
+Fc 600,446 0 0202 -- guillemotright
+char187 "
+bu 600,383 0 0203 -- bullet
+Fn 600,622,143 2 0204 -- florin
+f/ 600,665,57 2 0205 -- fraction
+%0 600,622,15 2 0206 -- perthousand
+dg 600,580,78 2 0207 -- dagger
+dd 600,580,78 2 0210 -- daggerdbl
+en 600,285 0 0211 -- endash
+em 600,285 0 0212 -- emdash
+fi 600,629 2 0214 -- fi
+fl 600,629 2 0215 -- fl
+.i 600,426 0 0220 -- dotlessi
+ga 600,672 2 0222 -- grave
+a" 600,672 2 0223 -- hungarumlaut
+a. 600,580 2 0224 -- dotaccent
+ab 600,609 2 0225 -- breve
+ah 600,669 2 0226 -- caron
+ao 600,627 2 0227 -- ring
+ho 600,0,151 0 0230 -- ogonek
+lq 600,562 2 0231 -- quotedblleft
+rq 600,562 2 0232 -- quotedblright
+oe 600,441,15 0 0233 -- oe
+/l 600,629 2 0234 -- lslash
+Bq 600,100,134 0 0235 -- quotedblbase
+OE 600,562 2 0236 -- OE
+/L 600,562 2 0237 -- Lslash
+r! 600,430,157 1 0241 -- exclamdown
+char161 "
+ct 600,614,49 2 0242 -- cent
+char162 "
+Po 600,611,21 2 0243 -- sterling
+char163 "
+Cs 600,506 0 0244 -- currency
+char164 "
+Ye 600,562 2 0245 -- yen
+char165 "
+bb 600,675,175 3 0246 -- brokenbar
+char166 "
+sc 600,580,78 2 0247 -- section
+char167 "
+ad 600,595 2 0250 -- dieresis
+char168 "
+co 600,580,18 2 0251 -- copyright
+char169 "
+Of 600,580 2 0252 -- ordfeminine
+char170 "
+fo 600,446 0 0253 -- guilsinglleft
+no 600,369 0 0254 -- logicalnot
+char172 "
+\- 600,283 0 0255 -- minus
+rg 600,580,18 2 0256 -- registered
+char174 "
+a- 600,565 2 0257 -- macron
+char175 "
+de 600,622 2 0260 -- degree
+char176 "
+char177 600,558 0 0261 -- plusminus
+S2 600,622 2 0262 -- twosuperior
+char178 "
+S3 600,622 2 0263 -- threesuperior
+char179 "
+aa 600,672 2 0264 -- acute
+char180 "
+char181 600,426,157 1 0265 -- mu
+ps 600,562,78 2 0266 -- paragraph
+char182 "
+char183 600,327 0 0267 -- periodcentered
+ac 600,10,151 0 0270 -- cedilla
+char184 "
+S1 600,622 2 0271 -- onesuperior
+char185 "
+Om 600,580 2 0272 -- ordmasculine
+char186 "
+fc 600,446 0 0273 -- guilsinglright
+14 600,665,57 2 0274 -- onequarter
+char188 "
+12 600,665,57 2 0275 -- onehalf
+char189 "
+34 600,666,56 2 0276 -- threequarters
+char190 "
+r? 600,430,157 1 0277 -- questiondown
+char191 "
+`A 600,793 2 0300 -- Agrave
+char192 "
+'A 600,793 2 0301 -- Aacute
+char193 "
+^A 600,775 2 0302 -- Acircumflex
+char194 "
+~A 600,732 2 0303 -- Atilde
+char195 "
+:A 600,731 2 0304 -- Adieresis
+char196 "
+oA 600,753 2 0305 -- Aring
+char197 "
+AE 600,562 2 0306 -- AE
+char198 "
+,C 600,580,151 2 0307 -- Ccedilla
+char199 "
+`E 600,793 2 0310 -- Egrave
+char200 "
+'E 600,793 2 0311 -- Eacute
+char201 "
+^E 600,775 2 0312 -- Ecircumflex
+char202 "
+:E 600,731 2 0313 -- Edieresis
+char203 "
+`I 600,793 2 0314 -- Igrave
+char204 "
+'I 600,793 2 0315 -- Iacute
+char205 "
+^I 600,775 2 0316 -- Icircumflex
+char206 "
+:I 600,731 2 0317 -- Idieresis
+char207 "
+-D 600,562 2 0320 -- Eth
+char208 "
+~N 600,732,13 2 0321 -- Ntilde
+char209 "
+`O 600,793,18 2 0322 -- Ograve
+char210 "
+'O 600,793,18 2 0323 -- Oacute
+char211 "
+^O 600,775,18 2 0324 -- Ocircumflex
+char212 "
+~O 600,732,18 2 0325 -- Otilde
+char213 "
+:O 600,731,18 2 0326 -- Odieresis
+char214 "
+char215 600,470 0 0327 -- multiply
+/O 600,629,80 2 0330 -- Oslash
+char216 "
+`U 600,793,18 2 0331 -- Ugrave
+char217 "
+'U 600,793,18 2 0332 -- Uacute
+char218 "
+^U 600,775,18 2 0333 -- Ucircumflex
+char219 "
+:U 600,731,18 2 0334 -- Udieresis
+char220 "
+'Y 600,793 2 0335 -- Yacute
+char221 "
+TP 600,562 2 0336 -- Thorn
+char222 "
+ss 600,629,15 2 0337 -- germandbls
+char223 "
+`a 600,672,15 2 0340 -- agrave
+char224 "
+'a 600,672,15 2 0341 -- aacute
+char225 "
+^a 600,654,15 2 0342 -- acircumflex
+char226 "
+~a 600,606,15 2 0343 -- atilde
+char227 "
+:a 600,595,15 2 0344 -- adieresis
+char228 "
+oa 600,627,15 2 0345 -- aring
+char229 "
+ae 600,441,15 0 0346 -- ae
+char230 "
+,c 600,441,151 0 0347 -- ccedilla
+char231 "
+`e 600,672,15 2 0350 -- egrave
+char232 "
+'e 600,672,15 2 0351 -- eacute
+char233 "
+^e 600,654,15 2 0352 -- ecircumflex
+char234 "
+:e 600,595,15 2 0353 -- edieresis
+char235 "
+`i 600,672 2 0354 -- igrave
+char236 "
+'i 600,672 2 0355 -- iacute
+char237 "
+^i 600,654 2 0356 -- icircumflex
+char238 "
+:i 600,595 2 0357 -- idieresis
+char239 "
+Sd 600,629,15 2 0360 -- eth
+char240 "
+~n 600,606 2 0361 -- ntilde
+char241 "
+`o 600,672,15 2 0362 -- ograve
+char242 "
+'o 600,672,15 2 0363 -- oacute
+char243 "
+^o 600,654,15 2 0364 -- ocircumflex
+char244 "
+~o 600,606,15 2 0365 -- otilde
+char245 "
+:o 600,595,15 2 0366 -- odieresis
+char246 "
+char247 600,467 0 0367 -- divide
+/o 600,506,80 0 0370 -- oslash
+char248 "
+`u 600,672,15 2 0371 -- ugrave
+char249 "
+'u 600,672,15 2 0372 -- uacute
+char250 "
+^u 600,654,15 2 0373 -- ucircumflex
+char251 "
+:u 600,595,15 2 0374 -- udieresis
+char252 "
+'y 600,672,157 3 0375 -- yacute
+char253 "
+Tp 600,629,157 3 0376 -- thorn
+char254 "
+:y 600,595,157 3 0377 -- ydieresis
+char255 "
diff --git a/devps/DESC.in b/font/devps/DESC.in
index e9d26c845..e9d26c845 100644
--- a/devps/DESC.in
+++ b/font/devps/DESC.in
diff --git a/font/devps/HB b/font/devps/HB
new file mode 100644
index 000000000..cbdccf14d
--- /dev/null
+++ b/font/devps/HB
@@ -0,0 +1,546 @@
+name HB
+internalname Helvetica-Bold
+spacewidth 278
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -30
+A w -30
+A v -40
+A u -30
+A Y -110
+A W -60
+A V -80
+A U -50
+A T -90
+A Q -40
+A O -40
+A G -50
+A C -40
+B U -10
+B A -30
+D . -30
+D , -30
+D Y -70
+D W -40
+D V -40
+D A -40
+F . -100
+F , -100
+F a -20
+F A -80
+J u -20
+J . -20
+J , -20
+J A -20
+K y -40
+K u -30
+K o -35
+K e -15
+K O -30
+L y -30
+L ' -140
+L rq -140
+L Y -120
+L W -80
+L V -110
+L T -90
+O . -40
+O , -40
+O Y -70
+O X -50
+O W -50
+O V -50
+O T -40
+O A -50
+P . -120
+P o -40
+P e -30
+P , -120
+P a -30
+P A -100
+Q . 20
+Q , 20
+Q U -10
+R Y -50
+R W -40
+R V -50
+R U -20
+R T -20
+R O -20
+T y -60
+T w -60
+T u -90
+T ; -40
+T r -80
+T . -80
+T o -80
+T - -120
+T hy -120
+T char173 -120
+T e -60
+T , -80
+T : -40
+T a -80
+T O -40
+T A -90
+U . -30
+U , -30
+U A -50
+V u -60
+V ; -40
+V . -120
+V o -90
+V - -80
+V hy -80
+V char173 -80
+V e -50
+V , -120
+V : -40
+V a -60
+V O -50
+V G -50
+V A -80
+W y -20
+W u -45
+W ; -10
+W . -80
+W o -60
+W - -40
+W hy -40
+W char173 -40
+W e -35
+W , -80
+W : -10
+W a -40
+W O -20
+W A -60
+Y u -100
+Y ; -50
+Y . -100
+Y o -100
+Y e -80
+Y , -100
+Y : -50
+Y a -90
+Y O -70
+Y A -110
+a y -20
+a w -15
+a v -15
+a g -10
+b y -20
+b v -20
+b u -20
+b l -10
+c y -10
+c l -20
+c k -20
+c h -10
+, ' -120
+, rq -120
+d y -15
+d w -15
+d v -15
+d d -10
+e y -15
+e x -15
+e w -15
+e v -15
+e . 20
+e , 10
+f ' 30
+f rq 30
+f . -10
+f o -20
+f e -10
+f , -10
+g g -10
+g e 10
+h y -20
+k o -15
+l y -15
+l w -15
+m y -30
+m u -20
+n y -20
+n v -40
+n u -10
+o y -20
+o x -30
+o w -15
+o v -20
+p y -15
+. ' -120
+. rq -120
+` ` -46
+` oq -46
+oq ` -46
+oq oq -46
+' v -20
+' s -60
+' r -40
+' ' -46
+' l -20
+' d -80
+r y 10
+r v 10
+r t 20
+r s -15
+r q -20
+r . -60
+r o -20
+r - -20
+r hy -20
+r char173 -20
+r g -15
+r d -20
+r , -60
+r c -20
+s w -15
+v . -80
+v o -30
+v , -80
+v a -20
+w . -40
+w o -20
+w , -40
+x e -10
+y . -80
+y o -25
+y e -10
+y , -80
+y a -30
+z e 10
+charset
+ha 584,698 2 0000 -- asciicircum
+ti 584,343 0 0001 -- asciitilde
+vS 667,936,19 2 0002 -- Scaron
+vZ 611,936 2 0003 -- Zcaron
+vs 556,750,14 2 0004 -- scaron
+vz 500,750 2 0005 -- zcaron
+:Y 667,915 2 0006 -- Ydieresis
+tm 1000,718 2 0007 -- trademark
+aq 238,718 2 0010 -- quotesingle
+space 278 0 0040
+! 333,718 2 0041 -- exclam
+" 474,718 2 0042 -- quotedbl
+# 556,698 2 0043 -- numbersign
+sh "
+$ 556,775,115 2 0044 -- dollar
+Do "
+% 889,710,19 2 0045 -- percent
+& 722,718,19 2 0046 -- ampersand
+' 278,718 2 0047 -- quoteright
+( 333,734,208 3 0050 -- parenleft
+) 333,734,208 3 0051 -- parenright
+* 389,718 2 0052 -- asterisk
++ 584,506 0 0053 -- plus
+, 278,146,168 0 0054 -- comma
+- 333,345 0 0055 -- hyphen
+hy "
+char173 "
+. 278,146 0 0056 -- period
+/ 278,737,19 2 0057 -- slash
+sl "
+0 556,710,19 2 0060 -- zero
+1 556,710 2 0061 -- one
+2 556,710 2 0062 -- two
+3 556,710,19 2 0063 -- three
+4 556,710 2 0064 -- four
+5 556,698,19 2 0065 -- five
+6 556,710,19 2 0066 -- six
+7 556,698 2 0067 -- seven
+8 556,710,19 2 0070 -- eight
+9 556,710,19 2 0071 -- nine
+: 333,512 0 0072 -- colon
+; 333,512,168 0 0073 -- semicolon
+< 584,514,8 0 0074 -- less
+= 584,419 0 0075 -- equal
+> 584,514,8 0 0076 -- greater
+? 611,727 2 0077 -- question
+@ 975,737,19 2 0100 -- at
+at "
+A 722,718 2 0101 -- A
+B 722,718 2 0102 -- B
+C 722,737,19 2 0103 -- C
+D 722,718 2 0104 -- D
+E 667,718 2 0105 -- E
+F 611,718 2 0106 -- F
+G 778,737,19 2 0107 -- G
+H 722,718 2 0110 -- H
+I 278,718 2 0111 -- I
+J 556,718,18 2 0112 -- J
+K 722,718 2 0113 -- K
+L 611,718 2 0114 -- L
+M 833,718 2 0115 -- M
+N 722,718 2 0116 -- N
+O 778,737,19 2 0117 -- O
+P 667,718 2 0120 -- P
+Q 778,737,52 2 0121 -- Q
+R 722,718 2 0122 -- R
+S 667,737,19 2 0123 -- S
+T 611,718 2 0124 -- T
+U 722,718,19 2 0125 -- U
+V 667,718 2 0126 -- V
+W 944,718 2 0127 -- W
+X 667,718 2 0130 -- X
+Y 667,718 2 0131 -- Y
+Z 611,718 2 0132 -- Z
+[ 333,722,196 2 0133 -- bracketleft
+lB "
+\ 278,737,19 2 0134 -- backslash
+rs "
+] 333,722,196 2 0135 -- bracketright
+rB "
+a^ 333,750 2 0136 -- circumflex
+^ "
+_ 556,0,125 0 0137 -- underscore
+` 278,727 2 0140 -- quoteleft
+oq "
+a 556,546,14 0 0141 -- a
+b 611,718,14 2 0142 -- b
+c 556,546,14 0 0143 -- c
+d 611,718,14 2 0144 -- d
+e 556,546,14 0 0145 -- e
+f 333,727 2 0146 -- f
+g 611,546,217 1 0147 -- g
+h 611,718 2 0150 -- h
+i 278,725 2 0151 -- i
+j 278,725,214 3 0152 -- j
+k 556,718 2 0153 -- k
+l 278,718 2 0154 -- l
+m 889,546 0 0155 -- m
+n 611,546 0 0156 -- n
+o 611,546,14 0 0157 -- o
+p 611,546,207 1 0160 -- p
+q 611,546,207 1 0161 -- q
+r 389,546 0 0162 -- r
+s 556,546,14 0 0163 -- s
+t 333,676,6 2 0164 -- t
+u 611,532,14 0 0165 -- u
+v 556,532 0 0166 -- v
+w 778,532 0 0167 -- w
+x 556,532 0 0170 -- x
+y 556,532,214 1 0171 -- y
+z 500,532 0 0172 -- z
+lC 389,722,196 2 0173 -- braceleft
+{ "
+ba 280,737,19 2 0174 -- bar
+| "
+rC 389,722,196 2 0175 -- braceright
+} "
+a~ 333,737 2 0176 -- tilde
+~ "
+bq 278,127,146 0 0200 -- quotesinglbase
+Fo 556,484 0 0201 -- guillemotleft
+char171 "
+Fc 556,484 0 0202 -- guillemotright
+char187 "
+bu 350,524 0 0203 -- bullet
+Fn 556,737,210 3 0204 -- florin
+f/ 167,710,19 2 0205 -- fraction
+%0 1000,710,19 2 0206 -- perthousand
+dg 556,718,171 2 0207 -- dagger
+dd 556,718,171 2 0210 -- daggerdbl
+en 556,333 0 0211 -- endash
+em 1000,333 0 0212 -- emdash
+fi 611,727 2 0214 -- fi
+fl 611,727 2 0215 -- fl
+.i 278,532 0 0220 -- dotlessi
+ga 333,750 2 0222 -- grave
+a" 333,750 2 0223 -- hungarumlaut
+a. 333,729 2 0224 -- dotaccent
+ab 333,750 2 0225 -- breve
+ah 333,750 2 0226 -- caron
+ao 333,776 2 0227 -- ring
+ho 333,0,228 1 0230 -- ogonek
+lq 500,727 2 0231 -- quotedblleft
+rq 500,718 2 0232 -- quotedblright
+oe 944,546,14 0 0233 -- oe
+/l 278,718 2 0234 -- lslash
+Bq 500,127,146 0 0235 -- quotedblbase
+OE 1000,737,19 2 0236 -- OE
+/L 611,718 2 0237 -- Lslash
+r! 333,532,186 0 0241 -- exclamdown
+char161 "
+ct 556,628,118 0 0242 -- cent
+char162 "
+Po 556,718,16 2 0243 -- sterling
+char163 "
+Cs 556,636 0 0244 -- currency
+char164 "
+Ye 556,698 2 0245 -- yen
+char165 "
+bb 280,737,19 2 0246 -- brokenbar
+char166 "
+sc 556,727,184 2 0247 -- section
+char167 "
+ad 333,729 2 0250 -- dieresis
+char168 "
+co 737,737,19 2 0251 -- copyright
+char169 "
+Of 370,737 2 0252 -- ordfeminine
+char170 "
+fo 333,484 0 0253 -- guilsinglleft
+no 584,419 0 0254 -- logicalnot
+char172 "
+\- 584,309 0 0255 -- minus
+rg 737,737,19 2 0256 -- registered
+char174 "
+a- 333,678 2 0257 -- macron
+char175 "
+de 400,712 2 0260 -- degree
+char176 "
+char177 584,506 0 0261 -- plusminus
+S2 333,710 2 0262 -- twosuperior
+char178 "
+S3 333,710 2 0263 -- threesuperior
+char179 "
+aa 333,750 2 0264 -- acute
+char180 "
+char181 611,532,207 1 0265 -- mu
+ps 556,700,191 2 0266 -- paragraph
+char182 "
+char183 278,334 0 0267 -- periodcentered
+ac 333,0,228 1 0270 -- cedilla
+char184 "
+S1 333,710 2 0271 -- onesuperior
+char185 "
+Om 365,737 2 0272 -- ordmasculine
+char186 "
+fc 333,484 0 0273 -- guilsinglright
+14 834,710,19 2 0274 -- onequarter
+char188 "
+12 834,710,19 2 0275 -- onehalf
+char189 "
+34 834,710,19 2 0276 -- threequarters
+char190 "
+r? 611,532,195 0 0277 -- questiondown
+char191 "
+`A 722,936 2 0300 -- Agrave
+char192 "
+'A 722,936 2 0301 -- Aacute
+char193 "
+^A 722,936 2 0302 -- Acircumflex
+char194 "
+~A 722,923 2 0303 -- Atilde
+char195 "
+:A 722,915 2 0304 -- Adieresis
+char196 "
+oA 722,962 2 0305 -- Aring
+char197 "
+AE 1000,718 2 0306 -- AE
+char198 "
+,C 722,737,228 3 0307 -- Ccedilla
+char199 "
+`E 667,936 2 0310 -- Egrave
+char200 "
+'E 667,936 2 0311 -- Eacute
+char201 "
+^E 667,936 2 0312 -- Ecircumflex
+char202 "
+:E 667,915 2 0313 -- Edieresis
+char203 "
+`I 278,936 2 0314 -- Igrave
+char204 "
+'I 278,936 2 0315 -- Iacute
+char205 "
+^I 278,936 2 0316 -- Icircumflex
+char206 "
+:I 278,915 2 0317 -- Idieresis
+char207 "
+-D 722,718 2 0320 -- Eth
+char208 "
+~N 722,923 2 0321 -- Ntilde
+char209 "
+`O 778,936,19 2 0322 -- Ograve
+char210 "
+'O 778,936,19 2 0323 -- Oacute
+char211 "
+^O 778,936,19 2 0324 -- Ocircumflex
+char212 "
+~O 778,923,19 2 0325 -- Otilde
+char213 "
+:O 778,915,19 2 0326 -- Odieresis
+char214 "
+char215 584,505 0 0327 -- multiply
+/O 778,745,27 2 0330 -- Oslash
+char216 "
+`U 722,936,19 2 0331 -- Ugrave
+char217 "
+'U 722,936,19 2 0332 -- Uacute
+char218 "
+^U 722,936,19 2 0333 -- Ucircumflex
+char219 "
+:U 722,915,19 2 0334 -- Udieresis
+char220 "
+'Y 667,936 2 0335 -- Yacute
+char221 "
+TP 667,718 2 0336 -- Thorn
+char222 "
+ss 611,731,14 2 0337 -- germandbls
+char223 "
+`a 556,750,14 2 0340 -- agrave
+char224 "
+'a 556,750,14 2 0341 -- aacute
+char225 "
+^a 556,750,14 2 0342 -- acircumflex
+char226 "
+~a 556,737,14 2 0343 -- atilde
+char227 "
+:a 556,729,14 2 0344 -- adieresis
+char228 "
+oa 556,776,14 2 0345 -- aring
+char229 "
+ae 889,546,14 0 0346 -- ae
+char230 "
+,c 556,546,228 1 0347 -- ccedilla
+char231 "
+`e 556,750,14 2 0350 -- egrave
+char232 "
+'e 556,750,14 2 0351 -- eacute
+char233 "
+^e 556,750,14 2 0352 -- ecircumflex
+char234 "
+:e 556,729,14 2 0353 -- edieresis
+char235 "
+`i 278,750 2 0354 -- igrave
+char236 "
+'i 278,750 2 0355 -- iacute
+char237 "
+^i 278,750 2 0356 -- icircumflex
+char238 "
+:i 278,729 2 0357 -- idieresis
+char239 "
+Sd 611,737,14 2 0360 -- eth
+char240 "
+~n 611,737 2 0361 -- ntilde
+char241 "
+`o 611,750,14 2 0362 -- ograve
+char242 "
+'o 611,750,14 2 0363 -- oacute
+char243 "
+^o 611,750,14 2 0364 -- ocircumflex
+char244 "
+~o 611,737,14 2 0365 -- otilde
+char245 "
+:o 611,729,14 2 0366 -- odieresis
+char246 "
+char247 584,548,42 0 0367 -- divide
+/o 611,560,29 0 0370 -- oslash
+char248 "
+`u 611,750,14 2 0371 -- ugrave
+char249 "
+'u 611,750,14 2 0372 -- uacute
+char250 "
+^u 611,750,14 2 0373 -- ucircumflex
+char251 "
+:u 611,729,14 2 0374 -- udieresis
+char252 "
+'y 556,750,214 3 0375 -- yacute
+char253 "
+Tp 611,718,208 3 0376 -- thorn
+char254 "
+:y 556,729,214 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/HBI b/font/devps/HBI
new file mode 100644
index 000000000..835db047f
--- /dev/null
+++ b/font/devps/HBI
@@ -0,0 +1,547 @@
+name HBI
+internalname Helvetica-BoldOblique
+slant 12
+spacewidth 278
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -30
+A w -30
+A v -40
+A u -30
+A Y -110
+A W -60
+A V -80
+A U -50
+A T -90
+A Q -40
+A O -40
+A G -50
+A C -40
+B U -10
+B A -30
+D . -30
+D , -30
+D Y -70
+D W -40
+D V -40
+D A -40
+F . -100
+F , -100
+F a -20
+F A -80
+J u -20
+J . -20
+J , -20
+J A -20
+K y -40
+K u -30
+K o -35
+K e -15
+K O -30
+L y -30
+L ' -140
+L rq -140
+L Y -120
+L W -80
+L V -110
+L T -90
+O . -40
+O , -40
+O Y -70
+O X -50
+O W -50
+O V -50
+O T -40
+O A -50
+P . -120
+P o -40
+P e -30
+P , -120
+P a -30
+P A -100
+Q . 20
+Q , 20
+Q U -10
+R Y -50
+R W -40
+R V -50
+R U -20
+R T -20
+R O -20
+T y -60
+T w -60
+T u -90
+T ; -40
+T r -80
+T . -80
+T o -80
+T - -120
+T hy -120
+T char173 -120
+T e -60
+T , -80
+T : -40
+T a -80
+T O -40
+T A -90
+U . -30
+U , -30
+U A -50
+V u -60
+V ; -40
+V . -120
+V o -90
+V - -80
+V hy -80
+V char173 -80
+V e -50
+V , -120
+V : -40
+V a -60
+V O -50
+V G -50
+V A -80
+W y -20
+W u -45
+W ; -10
+W . -80
+W o -60
+W - -40
+W hy -40
+W char173 -40
+W e -35
+W , -80
+W : -10
+W a -40
+W O -20
+W A -60
+Y u -100
+Y ; -50
+Y . -100
+Y o -100
+Y e -80
+Y , -100
+Y : -50
+Y a -90
+Y O -70
+Y A -110
+a y -20
+a w -15
+a v -15
+a g -10
+b y -20
+b v -20
+b u -20
+b l -10
+c y -10
+c l -20
+c k -20
+c h -10
+, ' -120
+, rq -120
+d y -15
+d w -15
+d v -15
+d d -10
+e y -15
+e x -15
+e w -15
+e v -15
+e . 20
+e , 10
+f ' 30
+f rq 30
+f . -10
+f o -20
+f e -10
+f , -10
+g g -10
+g e 10
+h y -20
+k o -15
+l y -15
+l w -15
+m y -30
+m u -20
+n y -20
+n v -40
+n u -10
+o y -20
+o x -30
+o w -15
+o v -20
+p y -15
+. ' -120
+. rq -120
+` ` -46
+` oq -46
+oq ` -46
+oq oq -46
+' v -20
+' s -60
+' r -40
+' ' -46
+' l -20
+' d -80
+r y 10
+r v 10
+r t 20
+r s -15
+r q -20
+r . -60
+r o -20
+r - -20
+r hy -20
+r char173 -20
+r g -15
+r d -20
+r , -60
+r c -20
+s w -15
+v . -80
+v o -30
+v , -80
+v a -20
+w . -40
+w o -20
+w , -40
+x e -10
+y . -80
+y o -25
+y e -10
+y , -80
+y a -30
+z e 10
+charset
+ha 584,698,0,57,-81,57 2 0000 -- asciicircum
+ti 584,343,0,43,-65,43 0 0001 -- asciitilde
+vS 667,936,19,101,-31,90 2 0002 -- Scaron
+vZ 611,936,0,176,25,90 2 0003 -- Zcaron
+vs 556,750,14,108,-13,90 2 0004 -- scaron
+vz 500,750,0,136,30,90 2 0005 -- zcaron
+:Y 667,915,0,189,-118,90 2 0006 -- Ydieresis
+tm 1000,718,0,159,-129,90 2 0007 -- trademark
+aq 238,718,0,133,-115,90 2 0010 -- quotesingle
+space 278 0 0040
+! 333,718,0,114,-44,90 2 0041 -- exclam
+" 474,718,0,105,-143,90 2 0042 -- quotedbl
+# 556,698,0,138,-10,90 2 0043 -- numbersign
+sh "
+$ 556,775,115,116,-17,90 2 0044 -- dollar
+Do "
+% 889,710,19,62,-86,62 2 0045 -- percent
+& 722,718,19,60,-39,60 2 0046 -- ampersand
+' 278,718,0,134,-117,90 2 0047 -- quoteright
+( 333,734,208,187,-26,90 3 0050 -- parenleft
+) 333,734,208,86,75,86 3 0051 -- parenright
+* 389,718,0,142,-96,90 2 0052 -- asterisk
++ 584,506,0,76,-32,76 0 0053 -- plus
+, 278,146,168,17,22,17 0 0054 -- comma
+- 333,345,0,96,-23,90 0 0055 -- hyphen
+hy "
+char173 "
+. 278,146,0,17,-14,17 0 0056 -- period
+/ 278,737,19,240,87,90 2 0057 -- slash
+sl "
+0 556,710,19,111,-36,90 2 0060 -- zero
+1 556,710,0,23,-123,23 2 0061 -- one
+2 556,710,0,113,24,90 2 0062 -- two
+3 556,710,19,102,-15,90 2 0063 -- three
+4 556,710,0,92,-10,90 2 0064 -- four
+5 556,698,19,130,-14,90 2 0065 -- five
+6 556,710,19,113,-35,90 2 0066 -- six
+7 556,698,0,170,-75,90 2 0067 -- seven
+8 556,710,19,110,-19,90 2 0070 -- eight
+9 556,710,19,109,-28,90 2 0071 -- nine
+: 333,512,0,68,-42,68 0 0072 -- colon
+; 333,512,168,68,-6,68 0 0073 -- semicolon
+< 584,514,8,121,-32,90 0 0074 -- less
+= 584,419,0,99,-8,90 0 0075 -- equal
+> 584,514,8,75,14,75 0 0076 -- greater
+? 611,727,0,110,-115,90 2 0077 -- question
+@ 975,737,19,29,-136,29 2 0100 -- at
+at "
+A 722,718,0,30,30,30 2 0101 -- A
+B 722,718,0,92,-26,90 2 0102 -- B
+C 722,737,19,117,-57,90 2 0103 -- C
+D 722,718,0,105,-26,90 2 0104 -- D
+E 667,718,0,140,-26,90 2 0105 -- E
+F 611,718,0,179,-26,90 2 0106 -- F
+G 778,737,19,89,-58,89 2 0107 -- G
+H 722,718,0,132,-21,90 2 0110 -- H
+I 278,718,0,139,-14,90 2 0111 -- I
+J 556,718,18,131,-10,90 2 0112 -- J
+K 722,718,0,186,-37,90 2 0113 -- K
+L 611,718,0,50,-26,50 2 0114 -- L
+M 833,718,0,135,-19,90 2 0115 -- M
+N 722,718,0,135,-19,90 2 0116 -- N
+O 778,737,19,95,-57,90 2 0117 -- O
+P 667,718,0,121,-26,90 2 0120 -- P
+Q 778,737,52,95,-57,90 2 0121 -- Q
+R 722,718,0,106,-26,90 2 0122 -- R
+S 667,737,19,101,-31,90 2 0123 -- S
+T 611,718,0,190,-90,90 2 0124 -- T
+U 722,718,19,132,-66,90 2 0125 -- U
+V 667,718,0,184,-122,90 2 0126 -- V
+W 944,718,0,188,-119,90 2 0127 -- W
+X 667,718,0,174,36,90 2 0130 -- X
+Y 667,718,0,189,-118,90 2 0131 -- Y
+Z 611,718,0,176,25,90 2 0132 -- Z
+[ 333,722,196,179,29,90 2 0133 -- bracketleft
+lB "
+\ 278,737,19,79,-74,79 2 0134 -- backslash
+rs "
+] 333,722,196,140,68,90 2 0135 -- bracketright
+rB "
+a^ 333,750,0,188,-68,90 2 0136 -- circumflex
+^ "
+_ 556,0,125,34,77,34 0 0137 -- underscore
+` 278,727,0,133,-115,90 2 0140 -- quoteleft
+oq "
+a 556,546,14,77,-5,77 0 0141 -- a
+b 611,718,14,84,-11,84 2 0142 -- b
+c 556,546,14,93,-29,90 0 0143 -- c
+d 611,718,14,143,-32,90 2 0144 -- d
+e 556,546,14,87,-20,87 0 0145 -- e
+f 333,727,0,186,-37,90 2 0146 -- f
+g 611,546,217,105,12,90 1 0147 -- g
+h 611,718,0,68,-15,68 2 0150 -- h
+i 278,725,0,135,-19,90 2 0151 -- i
+j 278,725,214,135,92,90 3 0152 -- j
+k 556,718,0,164,-19,90 2 0153 -- k
+l 278,718,0,134,-19,90 2 0154 -- l
+m 889,546,0,70,-14,70 0 0155 -- m
+n 611,546,0,68,-15,68 0 0156 -- n
+o 611,546,14,82,-32,82 0 0157 -- o
+p 611,546,207,84,32,84 1 0160 -- p
+q 611,546,207,104,-30,90 1 0161 -- q
+r 389,546,0,150,-14,90 0 0162 -- r
+s 556,546,14,78,-13,78 0 0163 -- s
+t 333,676,6,139,-50,90 2 0164 -- t
+u 611,532,14,97,-48,90 0 0165 -- u
+v 556,532,0,150,-76,90 0 0166 -- v
+w 778,532,0,154,-73,90 0 0167 -- w
+x 556,532,0,142,35,90 0 0170 -- x
+y 556,532,214,146,8,90 1 0171 -- y
+z 500,532,0,133,30,90 0 0172 -- z
+lC 389,722,196,179,-44,90 2 0173 -- braceleft
+{ "
+ba 280,737,19,123,-30,90 2 0174 -- bar
+| "
+rC 389,722,196,68,68,68 2 0175 -- braceright
+} "
+a~ 333,737,0,224,-63,90 2 0176 -- tilde
+~ "
+bq 278,127,146,8,9,8 0 0200 -- quotesinglbase
+Fo 556,484,0,65,-85,65 0 0201 -- guillemotleft
+char171 "
+Fc 556,484,0,34,-54,34 0 0202 -- guillemotright
+char187 "
+bu 350,524,0,120,-33,90 0 0203 -- bullet
+Fn 556,737,210,163,100,90 3 0204 -- florin
+f/ 167,710,19,370,224,90 2 0205 -- fraction
+%0 1000,710,19,88,-26,88 2 0206 -- perthousand
+dg 556,718,171,120,-68,90 2 0207 -- dagger
+dd 556,718,171,122,4,90 2 0210 -- daggerdbl
+en 556,333,0,121,2,90 0 0211 -- endash
+em 1000,333,0,121,2,90 0 0212 -- emdash
+fi 611,727,0,135,-37,90 2 0214 -- fi
+fl 611,727,0,134,-37,90 2 0215 -- fl
+.i 278,532,0,94,-19,90 0 0220 -- dotlessi
+ga 333,750,0,70,-86,70 2 0222 -- grave
+a" 333,750,0,362,-87,90 2 0223 -- hungarumlaut
+a. 333,729,0,102,-185,90 2 0224 -- dotaccent
+ab 333,750,0,211,-106,90 2 0225 -- breve
+ah 333,750,0,219,-99,90 2 0226 -- caron
+ao 333,776,0,137,-150,90 2 0227 -- ring
+ho 333,0,228,0,9 1 0230 -- ogonek
+lq 500,727,0,138,-110,90 2 0231 -- quotedblleft
+rq 500,718,0,139,-112,90 2 0232 -- quotedblright
+oe 944,546,14,83,-32,83 0 0233 -- oe
+/l 278,718,0,179,10,90 2 0234 -- lslash
+Bq 500,127,146,13,14,13 0 0235 -- quotedblbase
+OE 1000,737,19,164,-49,90 2 0236 -- OE
+/L 611,718,0,50,16,50 2 0237 -- Lslash
+r! 333,532,186,70,0,70 0 0241 -- exclamdown
+char161 "
+ct 556,628,118,93,-29,90 0 0242 -- cent
+char162 "
+Po 556,718,16,129,0,90 2 0243 -- sterling
+char163 "
+Cs 556,636,0,174,23,90 0 0244 -- currency
+char164 "
+Ye 556,698,0,207,-10,90 2 0245 -- yen
+char165 "
+bb 280,737,19,123,-30,90 2 0246 -- brokenbar
+char166 "
+sc 556,727,184,92,-11,90 2 0247 -- section
+char167 "
+ad 333,729,0,199,-87,90 2 0250 -- dieresis
+char168 "
+co 737,737,19,148,-6,90 2 0251 -- copyright
+char169 "
+Of 370,737,0,145,-42,90 2 0252 -- ordfeminine
+char170 "
+fo 333,484,0,70,-80,70 0 0253 -- guilsinglleft
+no 584,419,0,99,-55,90 0 0254 -- logicalnot
+char172 "
+\- 584,309,0,76,-32,76 0 0255 -- minus
+rg 737,737,19,147,-5,90 2 0256 -- registered
+char174 "
+a- 333,678,0,200,-72,90 2 0257 -- macron
+char175 "
+de 400,712,0,117,-125,90 2 0260 -- degree
+char176 "
+char177 584,506,0,91,10,90 0 0261 -- plusminus
+S2 333,710,0,166,-19,90 2 0262 -- twosuperior
+char178 "
+S3 333,710,0,158,-41,90 2 0263 -- threesuperior
+char179 "
+aa 333,750,0,232,-186,90 2 0264 -- acute
+char180 "
+char181 611,532,207,97,28,90 1 0265 -- mu
+ps 556,700,191,182,-48,90 2 0266 -- paragraph
+char182 "
+char183 278,334,0,48,-60,48 0 0267 -- periodcentered
+ac 333,0,228,0,87 1 0270 -- cedilla
+char184 "
+S1 333,710,0,105,-98,90 2 0271 -- onesuperior
+char185 "
+Om 365,737,0,170,-42,90 2 0272 -- ordmasculine
+char186 "
+fc 333,484,0,39,-49,39 0 0273 -- guilsinglright
+14 834,710,19,22,-82,22 2 0274 -- onequarter
+char188 "
+12 834,710,19,74,-82,74 2 0275 -- onehalf
+char189 "
+34 834,710,19,55,-49,55 2 0276 -- threequarters
+char190 "
+r? 611,532,195,0,-3 0 0277 -- questiondown
+char191 "
+`A 722,936,0,30,30,30 2 0300 -- Agrave
+char192 "
+'A 722,936,0,78,30,78 2 0301 -- Aacute
+char193 "
+^A 722,936,0,34,30,34 2 0302 -- Acircumflex
+char194 "
+~A 722,923,0,69,30,69 2 0303 -- Atilde
+char195 "
+:A 722,915,0,44,30,44 2 0304 -- Adieresis
+char196 "
+oA 722,962,0,30,30,30 2 0305 -- Aring
+char197 "
+AE 1000,718,0,150,45,90 2 0306 -- AE
+char198 "
+,C 722,737,228,117,-57,90 3 0307 -- Ccedilla
+char199 "
+`E 667,936,0,140,-26,90 2 0310 -- Egrave
+char200 "
+'E 667,936,0,140,-26,90 2 0311 -- Eacute
+char201 "
+^E 667,936,0,140,-26,90 2 0312 -- Ecircumflex
+char202 "
+:E 667,915,0,140,-26,90 2 0313 -- Edieresis
+char203 "
+`I 278,936,0,139,-14,90 2 0314 -- Igrave
+char204 "
+'I 278,936,0,300,-14,90 2 0315 -- Iacute
+char205 "
+^I 278,936,0,256,-14,90 2 0316 -- Icircumflex
+char206 "
+:I 278,915,0,266,-14,90 2 0317 -- Idieresis
+char207 "
+-D 722,718,0,105,-12,90 2 0320 -- Eth
+char208 "
+~N 722,923,0,135,-19,90 2 0321 -- Ntilde
+char209 "
+`O 778,936,19,95,-57,90 2 0322 -- Ograve
+char210 "
+'O 778,936,19,95,-57,90 2 0323 -- Oacute
+char211 "
+^O 778,936,19,95,-57,90 2 0324 -- Ocircumflex
+char212 "
+~O 778,923,19,95,-57,90 2 0325 -- Otilde
+char213 "
+:O 778,915,19,95,-57,90 2 0326 -- Odieresis
+char214 "
+char215 584,505,0,101,-7,90 0 0327 -- multiply
+/O 778,745,27,166,15,90 2 0330 -- Oslash
+char216 "
+`U 722,936,19,132,-66,90 2 0331 -- Ugrave
+char217 "
+'U 722,936,19,132,-66,90 2 0332 -- Uacute
+char218 "
+^U 722,936,19,132,-66,90 2 0333 -- Ucircumflex
+char219 "
+:U 722,915,19,132,-66,90 2 0334 -- Udieresis
+char220 "
+'Y 667,936,0,189,-118,90 2 0335 -- Yacute
+char221 "
+TP 667,718,0,99,-26,90 2 0336 -- Thorn
+char222 "
+ss 611,731,14,96,-19,90 2 0337 -- germandbls
+char223 "
+`a 556,750,14,77,-5,77 2 0340 -- agrave
+char224 "
+'a 556,750,14,121,-5,90 2 0341 -- aacute
+char225 "
+^a 556,750,14,77,-5,77 2 0342 -- acircumflex
+char226 "
+~a 556,737,14,113,-5,90 2 0343 -- atilde
+char227 "
+:a 556,729,14,88,-5,88 2 0344 -- adieresis
+char228 "
+oa 556,776,14,77,-5,77 2 0345 -- aring
+char229 "
+ae 889,546,14,84,-6,84 0 0346 -- ae
+char230 "
+,c 556,546,228,93,-29,90 1 0347 -- ccedilla
+char231 "
+`e 556,750,14,87,-20,87 2 0350 -- egrave
+char232 "
+'e 556,750,14,121,-20,90 2 0351 -- eacute
+char233 "
+^e 556,750,14,87,-20,87 2 0352 -- ecircumflex
+char234 "
+:e 556,729,14,88,-20,88 2 0353 -- edieresis
+char235 "
+`i 278,750,0,98,-19,90 2 0354 -- igrave
+char236 "
+'i 278,750,0,260,-19,90 2 0355 -- iacute
+char237 "
+^i 278,750,0,216,-19,90 2 0356 -- icircumflex
+char238 "
+:i 278,729,0,227,-19,90 2 0357 -- idieresis
+char239 "
+Sd 611,737,14,109,-32,90 2 0360 -- eth
+char240 "
+~n 611,737,0,85,-15,85 2 0361 -- ntilde
+char241 "
+`o 611,750,14,82,-32,82 2 0362 -- ograve
+char242 "
+'o 611,750,14,93,-32,90 2 0363 -- oacute
+char243 "
+^o 611,750,14,82,-32,82 2 0364 -- ocircumflex
+char244 "
+~o 611,737,14,85,-32,85 2 0365 -- otilde
+char245 "
+:o 611,729,14,82,-32,82 2 0366 -- odieresis
+char246 "
+char247 584,548,42,76,-32,76 0 0367 -- divide
+/o 611,560,29,140,28,90 0 0370 -- oslash
+char248 "
+`u 611,750,14,97,-48,90 2 0371 -- ugrave
+char249 "
+'u 611,750,14,97,-48,90 2 0372 -- uacute
+char250 "
+^u 611,750,14,97,-48,90 2 0373 -- ucircumflex
+char251 "
+:u 611,729,14,97,-48,90 2 0374 -- udieresis
+char252 "
+'y 556,750,214,146,8,90 3 0375 -- yacute
+char253 "
+Tp 611,718,208,84,32,84 3 0376 -- thorn
+char254 "
+:y 556,729,214,146,8,90 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/HI b/font/devps/HI
new file mode 100644
index 000000000..8c87ce2e8
--- /dev/null
+++ b/font/devps/HI
@@ -0,0 +1,617 @@
+name HI
+internalname Helvetica-Oblique
+slant 12
+spacewidth 278
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -40
+A w -40
+A v -40
+A u -30
+A Y -100
+A W -50
+A V -70
+A U -50
+A T -120
+A Q -30
+A O -30
+A G -30
+A C -30
+B . -20
+B , -20
+B U -10
+C . -30
+C , -30
+D . -70
+D , -70
+D Y -90
+D W -40
+D V -70
+D A -40
+F r -45
+F . -150
+F o -30
+F e -30
+F , -150
+F a -50
+F A -80
+J u -20
+J . -30
+J , -30
+J a -20
+J A -20
+K y -50
+K u -30
+K o -40
+K e -40
+K O -50
+L y -30
+L ' -160
+L rq -140
+L Y -140
+L W -70
+L V -110
+L T -110
+O . -40
+O , -40
+O Y -70
+O X -60
+O W -30
+O V -50
+O T -40
+O A -20
+P . -180
+P o -50
+P e -50
+P , -180
+P a -40
+P A -120
+Q U -10
+R Y -50
+R W -30
+R V -50
+R U -40
+R T -30
+R O -20
+S . -20
+S , -20
+T y -120
+T w -120
+T u -120
+T ; -20
+T r -120
+T . -120
+T o -120
+T - -140
+T hy -140
+T char173 -140
+T e -120
+T , -120
+T : -20
+T a -120
+T O -40
+T A -120
+U . -40
+U , -40
+U A -40
+V u -70
+V ; -40
+V . -125
+V o -80
+V - -80
+V hy -80
+V char173 -80
+V e -80
+V , -125
+V : -40
+V a -70
+V O -40
+V G -40
+V A -80
+W y -20
+W u -30
+W . -80
+W o -30
+W - -40
+W hy -40
+W char173 -40
+W e -30
+W , -80
+W a -40
+W O -20
+W A -50
+Y u -110
+Y ; -60
+Y . -140
+Y o -140
+Y i -20
+Y - -140
+Y hy -140
+Y char173 -140
+Y e -140
+Y , -140
+Y : -60
+Y a -140
+Y O -85
+Y A -110
+a y -30
+a w -20
+a v -20
+b y -20
+b v -20
+b u -20
+b . -40
+b l -20
+b , -40
+b b -10
+c k -20
+c , -15
+, ' -100
+, rq -100
+e y -20
+e x -30
+e w -20
+e v -30
+e . -15
+e , -15
+f ' 50
+f rq 60
+f . -30
+f o -30
+f e -30
+f .i -28
+f , -30
+f a -30
+g r -10
+h y -30
+k o -20
+k e -20
+m y -15
+m u -10
+n y -15
+n v -20
+n u -10
+o y -30
+o x -30
+o w -15
+o v -15
+o . -40
+o , -40
+/o z -55
+char248 z -55
+/o y -70
+char248 y -70
+/o x -85
+char248 x -85
+/o w -70
+char248 w -70
+/o v -70
+char248 v -70
+/o u -55
+char248 u -55
+/o t -55
+char248 t -55
+/o s -55
+char248 s -55
+/o r -55
+char248 r -55
+/o q -55
+char248 q -55
+/o . -95
+char248 . -95
+/o p -55
+char248 p -55
+/o o -55
+char248 o -55
+/o n -55
+char248 n -55
+/o m -55
+char248 m -55
+/o l -55
+char248 l -55
+/o k -55
+char248 k -55
+/o j -55
+char248 j -55
+/o i -55
+char248 i -55
+/o h -55
+char248 h -55
+/o g -55
+char248 g -55
+/o f -55
+char248 f -55
+/o e -55
+char248 e -55
+/o d -55
+char248 d -55
+/o , -95
+char248 , -95
+/o c -55
+char248 c -55
+/o b -55
+char248 b -55
+/o a -55
+char248 a -55
+p y -30
+p . -35
+p , -35
+. ' -100
+. rq -100
+` ` -57
+` oq -57
+oq ` -57
+oq oq -57
+' s -50
+' r -50
+' ' -57
+' d -50
+r y 30
+r v 30
+r u 15
+r t 40
+r ; 30
+r . -50
+r p 30
+r n 25
+r m 25
+r l 15
+r k 15
+r i 15
+r , -50
+r : 30
+r a -10
+s w -30
+s . -15
+s , -15
+v . -80
+v o -25
+v e -25
+v , -80
+v a -25
+w . -60
+w o -10
+w e -10
+w , -60
+w a -15
+x e -30
+y . -100
+y o -20
+y e -20
+y , -100
+y a -20
+z o -15
+z e -15
+charset
+ha 469,688,0,120,8,89 2 0000 -- asciicircum
+ti 584,326,0,46,-61,46 0 0001 -- asciitilde
+vS 667,929,19,96,-40,89 2 0002 -- Scaron
+vZ 611,929,0,180,27,89 2 0003 -- Zcaron
+vs 500,734,15,102,-13,89 2 0004 -- scaron
+vz 500,734,0,121,19,89 2 0005 -- zcaron
+:Y 667,901,0,189,-117,89 2 0006 -- Ydieresis
+tm 1000,718,0,106,-136,89 2 0007 -- trademark
+aq 191,718,0,144,-107,89 2 0010 -- quotesingle
+space 278 0 0040
+! 278,718,0,112,-40,89 2 0041 -- exclam
+" 355,718,0,133,-118,89 2 0042 -- quotedbl
+# 556,688,0,125,-23,89 2 0043 -- numbersign
+sh "
+$ 556,775,115,111,-19,89 2 0044 -- dollar
+Do "
+% 889,703,19,50,-97,50 2 0045 -- percent
+& 667,718,15,30,-27,30 2 0046 -- ampersand
+' 222,718,0,138,-101,89 2 0047 -- quoteright
+( 333,733,207,171,-58,89 3 0050 -- parenleft
+) 333,733,207,54,59,54 3 0051 -- parenright
+* 389,718,0,136,-115,89 2 0052 -- asterisk
++ 584,505,0,72,-35,72 0 0053 -- plus
+, 278,106,147,0,-6 0 0054 -- comma
+- 333,322,0,74,-43,74 0 0055 -- hyphen
+hy "
+char173 "
+. 278,106,0,0,-37 0 0056 -- period
+/ 278,737,19,224,71,89 2 0057 -- slash
+sl "
+0 556,703,19,102,-43,89 2 0060 -- zero
+1 556,703,0,2,-157,2 2 0061 -- one
+2 556,703,0,111,24,89 2 0062 -- two
+3 556,703,19,104,-25,89 2 0063 -- three
+4 556,703,0,70,-11,70 2 0064 -- four
+5 556,688,19,115,-18,89 2 0065 -- five
+6 556,703,19,109,-41,89 2 0066 -- six
+7 556,688,0,163,-87,89 2 0067 -- seven
+8 556,703,19,101,-24,89 2 0070 -- eight
+9 556,703,19,103,-32,89 2 0071 -- nine
+: 278,516,0,73,-37,73 0 0072 -- colon
+; 278,516,147,73,-6,73 0 0073 -- semicolon
+< 584,495,0,107,-44,89 0 0074 -- less
+= 584,390,0,94,-13,89 0 0075 -- equal
+> 584,495,0,63,0,63 0 0076 -- greater
+? 556,727,0,104,-111,89 2 0077 -- question
+@ 1015,737,19,0,-165 2 0100 -- at
+at "
+A 667,718,0,37,36,37 2 0101 -- A
+B 667,718,0,95,-24,89 2 0102 -- B
+C 722,737,19,110,-58,89 2 0103 -- C
+D 722,718,0,92,-31,89 2 0104 -- D
+E 667,718,0,145,-36,89 2 0105 -- E
+F 611,718,0,175,-36,89 2 0106 -- F
+G 778,737,19,71,-61,71 2 0107 -- G
+H 722,718,0,127,-27,89 2 0110 -- H
+I 278,718,0,113,-41,89 2 0111 -- I
+J 500,718,19,131,3,89 2 0112 -- J
+K 667,718,0,191,-26,89 2 0113 -- K
+L 556,718,0,49,-26,49 2 0114 -- L
+M 833,718,0,131,-23,89 2 0115 -- M
+N 722,718,0,127,-26,89 2 0116 -- N
+O 778,737,19,98,-55,89 2 0117 -- O
+P 667,718,0,120,-36,89 2 0120 -- P
+Q 778,737,56,98,-55,89 2 0121 -- Q
+R 722,718,0,101,-38,89 2 0122 -- R
+S 667,737,19,96,-40,89 2 0123 -- S
+T 611,718,0,189,-98,89 2 0124 -- T
+U 722,718,19,125,-73,89 2 0125 -- U
+V 667,718,0,183,-123,89 2 0126 -- V
+W 944,718,0,187,-119,89 2 0127 -- W
+X 667,718,0,173,31,89 2 0130 -- X
+Y 667,718,0,189,-117,89 2 0131 -- Y
+Z 611,718,0,180,27,89 2 0132 -- Z
+[ 278,722,196,175,29,89 2 0133 -- bracketleft
+lB "
+\ 278,737,19,63,-90,63 2 0134 -- backslash
+rs "
+] 278,722,196,140,64,89 2 0135 -- bracketright
+rB "
+a^ 333,734,0,155,-97,89 2 0136 -- circumflex
+^ "
+_ 556,0,125,34,77,34 0 0137 -- underscore
+` 222,725,0,151,-115,89 2 0140 -- quoteleft
+oq "
+a 556,538,15,53,-11,53 0 0141 -- a
+b 556,718,15,78,-8,78 2 0142 -- b
+c 500,538,15,103,-24,89 0 0143 -- c
+d 556,718,15,146,-34,89 2 0144 -- d
+e 556,538,15,72,-34,72 0 0145 -- e
+f 278,728,0,188,-36,89 2 0146 -- f
+g 556,538,220,104,8,89 1 0147 -- g
+h 556,718,0,67,-15,67 2 0150 -- h
+i 222,718,0,136,-17,89 2 0151 -- i
+j 222,718,210,136,110,89 3 0152 -- j
+k 500,718,0,150,-17,89 2 0153 -- k
+l 222,718,0,136,-17,89 2 0154 -- l
+m 833,538,0,69,-15,69 0 0155 -- m
+n 556,538,0,67,-15,67 0 0156 -- n
+o 556,538,14,79,-33,79 0 0157 -- o
+p 556,538,207,78,36,78 1 0160 -- p
+q 556,538,207,99,-34,89 1 0161 -- q
+r 333,538,0,163,-27,89 0 0162 -- r
+s 500,538,15,79,-13,79 0 0163 -- s
+t 278,669,7,140,-52,89 2 0164 -- t
+u 556,523,15,94,-44,89 0 0165 -- u
+v 500,523,0,153,-69,89 0 0166 -- v
+w 722,523,0,148,-75,89 0 0167 -- w
+x 500,523,0,144,39,89 0 0170 -- x
+y 500,523,214,150,35,89 1 0171 -- y
+z 500,523,0,121,19,89 0 0172 -- z
+lC 334,722,196,161,-42,89 2 0173 -- braceleft
+{ "
+ba 260,737,19,114,-40,89 2 0174 -- bar
+| "
+rC 334,722,196,70,50,70 2 0175 -- braceright
+} "
+a~ 333,722,0,207,-75,89 2 0176 -- tilde
+~ "
+bq 222,106,149,8,29,8 0 0200 -- quotesinglbase
+Fo 556,446,0,48,-96,48 0 0201 -- guillemotleft
+char171 "
+Fc 556,446,0,22,-70,22 0 0202 -- guillemotright
+char187 "
+bu 350,517,0,113,-41,89 0 0203 -- bullet
+Fn 556,737,207,148,102,89 3 0204 -- florin
+f/ 167,703,19,365,220,89 2 0205 -- fraction
+%0 1000,703,19,79,-38,79 2 0206 -- perthousand
+dg 556,718,159,116,-85,89 2 0207 -- dagger
+dd 556,718,159,117,-2,89 2 0210 -- daggerdbl
+en 556,313,0,117,-1,89 0 0211 -- endash
+em 1000,313,0,117,-1,89 0 0212 -- emdash
+fi 500,728,0,137,-36,89 2 0214 -- fi
+fl 500,728,0,135,-36,89 2 0215 -- fl
+.i 278,523,0,66,-45,66 0 0220 -- dotlessi
+ga 333,734,0,54,-120,54 2 0222 -- grave
+a" 333,734,0,282,-107,89 2 0223 -- hungarumlaut
+a. 333,706,0,79,-199,79 2 0224 -- dotaccent
+ab 333,731,0,193,-117,89 2 0225 -- breve
+ah 333,734,0,185,-127,89 2 0226 -- caron
+ao 333,756,0,119,-164,89 2 0227 -- ring
+ho 333,0,225,0,7 1 0230 -- ogonek
+lq 333,725,0,178,-88,89 2 0231 -- quotedblleft
+rq 333,718,0,165,-74,89 2 0232 -- quotedblright
+oe 944,538,15,70,-33,70 0 0233 -- oe
+/l 222,718,0,175,9,89 2 0234 -- lslash
+Bq 333,106,149,35,56,35 0 0235 -- quotedblbase
+OE 1000,737,19,166,-48,89 2 0236 -- OE
+/L 556,718,0,49,9,49 2 0237 -- Lslash
+r! 333,523,195,43,-27,43 0 0241 -- exclamdown
+char161 "
+ct 556,623,115,78,-45,78 0 0242 -- cent
+char162 "
+Po 556,718,16,128,1,89 2 0243 -- sterling
+char163 "
+Cs 556,603,0,140,-10,89 0 0244 -- currency
+char164 "
+Ye 556,688,0,193,-31,89 2 0245 -- yen
+char165 "
+bb 260,737,19,114,-40,89 2 0246 -- brokenbar
+char166 "
+sc 556,737,191,78,-26,78 2 0247 -- section
+char167 "
+ad 333,706,0,160,-118,89 2 0250 -- dieresis
+char168 "
+co 737,737,19,150,-4,89 2 0251 -- copyright
+char169 "
+Of 370,737,0,129,-50,89 2 0252 -- ordfeminine
+char170 "
+fo 333,446,0,57,-87,57 0 0253 -- guilsinglleft
+no 584,390,0,94,-56,89 0 0254 -- logicalnot
+char172 "
+\- 584,289,0,72,-35,72 0 0255 -- minus
+rg 737,737,19,150,-4,89 2 0256 -- registered
+char174 "
+a- 333,684,0,185,-93,89 2 0257 -- macron
+char175 "
+de 400,703,0,118,-119,89 2 0260 -- degree
+char176 "
+char177 584,506,0,84,11,84 0 0261 -- plusminus
+S2 333,703,0,166,-14,89 2 0262 -- twosuperior
+char178 "
+S3 333,703,0,153,-40,89 2 0263 -- threesuperior
+char179 "
+aa 333,734,0,192,-198,89 2 0264 -- acute
+char180 "
+char181 556,523,207,94,26,89 1 0265 -- mu
+ps 537,718,173,163,-76,89 2 0266 -- paragraph
+char182 "
+char183 278,315,0,29,-79,29 0 0267 -- periodcentered
+ac 333,0,225,0,48 1 0270 -- cedilla
+char184 "
+S1 333,703,0,88,-116,88 2 0271 -- onesuperior
+char185 "
+Om 365,737,0,153,-50,89 2 0272 -- ordmasculine
+char186 "
+fc 333,446,0,31,-61,31 0 0273 -- guilsinglright
+14 834,703,19,18,-100,18 2 0274 -- onequarter
+char188 "
+12 834,703,19,55,-64,55 2 0275 -- onehalf
+char189 "
+34 834,703,19,77,-80,77 2 0276 -- threequarters
+char190 "
+r? 611,525,201,0,-35 0 0277 -- questiondown
+char191 "
+`A 667,929,0,37,36,37 2 0300 -- Agrave
+char192 "
+'A 667,929,0,66,36,66 2 0301 -- Aacute
+char193 "
+^A 667,929,0,37,36,37 2 0302 -- Acircumflex
+char194 "
+~A 667,917,0,82,36,82 2 0303 -- Atilde
+char195 "
+:A 667,901,0,37,36,37 2 0304 -- Adieresis
+char196 "
+oA 667,931,0,37,36,37 2 0305 -- Aring
+char197 "
+AE 1000,718,0,147,42,89 2 0306 -- AE
+char198 "
+,C 722,737,225,110,-58,89 3 0307 -- Ccedilla
+char199 "
+`E 667,929,0,145,-36,89 2 0310 -- Egrave
+char200 "
+'E 667,929,0,145,-36,89 2 0311 -- Eacute
+char201 "
+^E 667,929,0,145,-36,89 2 0312 -- Ecircumflex
+char202 "
+:E 667,901,0,145,-36,89 2 0313 -- Edieresis
+char203 "
+`I 278,929,0,123,-41,89 2 0314 -- Igrave
+char204 "
+'I 278,929,0,261,-41,89 2 0315 -- Iacute
+char205 "
+^I 278,929,0,224,-41,89 2 0316 -- Icircumflex
+char206 "
+:I 278,901,0,230,-41,89 2 0317 -- Idieresis
+char207 "
+-D 722,718,0,92,-19,89 2 0320 -- Eth
+char208 "
+~N 722,917,0,127,-26,89 2 0321 -- Ntilde
+char209 "
+`O 778,929,19,98,-55,89 2 0322 -- Ograve
+char210 "
+'O 778,929,19,98,-55,89 2 0323 -- Oacute
+char211 "
+^O 778,929,19,98,-55,89 2 0324 -- Ocircumflex
+char212 "
+~O 778,917,19,98,-55,89 2 0325 -- Otilde
+char213 "
+:O 778,901,19,98,-55,89 2 0326 -- Odieresis
+char214 "
+char215 584,506,0,108,0,89 0 0327 -- multiply
+/O 778,737,19,162,7,89 2 0330 -- Oslash
+char216 "
+`U 722,929,19,125,-73,89 2 0331 -- Ugrave
+char217 "
+'U 722,929,19,125,-73,89 2 0332 -- Uacute
+char218 "
+^U 722,929,19,125,-73,89 2 0333 -- Ucircumflex
+char219 "
+:U 722,901,19,125,-73,89 2 0334 -- Udieresis
+char220 "
+'Y 667,929,0,189,-117,89 2 0335 -- Yacute
+char221 "
+TP 667,718,0,95,-36,89 2 0336 -- Thorn
+char222 "
+ss 611,728,15,97,-17,89 2 0337 -- germandbls
+char223 "
+`a 556,734,15,53,-11,53 2 0340 -- agrave
+char224 "
+'a 556,734,15,81,-11,81 2 0341 -- aacute
+char225 "
+^a 556,734,15,53,-11,53 2 0342 -- acircumflex
+char226 "
+~a 556,722,15,86,-11,86 2 0343 -- atilde
+char227 "
+:a 556,706,15,53,-11,53 2 0344 -- adieresis
+char228 "
+oa 556,756,15,53,-11,53 2 0345 -- aring
+char229 "
+ae 889,538,15,70,-11,70 0 0346 -- ae
+char230 "
+,c 500,538,225,103,-24,89 1 0347 -- ccedilla
+char231 "
+`e 556,734,15,72,-34,72 2 0350 -- egrave
+char232 "
+'e 556,734,15,81,-34,81 2 0351 -- eacute
+char233 "
+^e 556,734,15,72,-34,72 2 0352 -- ecircumflex
+char234 "
+:e 556,706,15,72,-34,72 2 0353 -- edieresis
+char235 "
+`i 278,734,0,82,-45,82 2 0354 -- igrave
+char236 "
+'i 278,734,0,220,-45,89 2 0355 -- iacute
+char237 "
+^i 278,734,0,183,-45,89 2 0356 -- icircumflex
+char238 "
+:i 278,706,0,188,-45,89 2 0357 -- idieresis
+char239 "
+Sd 556,737,15,111,-31,89 2 0360 -- eth
+char240 "
+~n 556,722,0,86,-15,86 2 0361 -- ntilde
+char241 "
+`o 556,734,14,79,-33,79 2 0362 -- ograve
+char242 "
+'o 556,734,14,81,-33,81 2 0363 -- oacute
+char243 "
+^o 556,734,14,79,-33,79 2 0364 -- ocircumflex
+char244 "
+~o 556,722,14,96,-33,89 2 0365 -- otilde
+char245 "
+:o 556,706,14,79,-33,79 2 0366 -- odieresis
+char246 "
+char247 584,524,19,72,-35,72 0 0367 -- divide
+/o 611,545,22,86,21,86 0 0370 -- oslash
+char248 "
+`u 556,734,15,94,-44,89 2 0371 -- ugrave
+char249 "
+'u 556,734,15,94,-44,89 2 0372 -- uacute
+char250 "
+^u 556,734,15,94,-44,89 2 0373 -- ucircumflex
+char251 "
+:u 556,706,15,94,-44,89 2 0374 -- udieresis
+char252 "
+'y 500,734,214,150,35,89 3 0375 -- yacute
+char253 "
+Tp 556,718,207,78,36,78 3 0376 -- thorn
+char254 "
+:y 500,706,214,150,35,89 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/HNB b/font/devps/HNB
new file mode 100644
index 000000000..2d55cfb79
--- /dev/null
+++ b/font/devps/HNB
@@ -0,0 +1,546 @@
+name HNB
+internalname Helvetica-Narrow-Bold
+spacewidth 228
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -24
+A w -24
+A v -32
+A u -24
+A Y -89
+A W -48
+A V -65
+A U -40
+A T -73
+A Q -32
+A O -32
+A G -40
+A C -32
+B U -7
+B A -24
+D . -24
+D , -24
+D Y -56
+D W -32
+D V -32
+D A -32
+F . -81
+F , -81
+F a -15
+F A -65
+J u -15
+J . -15
+J , -15
+J A -15
+K y -32
+K u -24
+K o -28
+K e -11
+K O -24
+L y -24
+L ' -114
+L rq -114
+L Y -97
+L W -65
+L V -89
+L T -73
+O . -32
+O , -32
+O Y -56
+O X -40
+O W -40
+O V -40
+O T -32
+O A -40
+P . -97
+P o -32
+P e -24
+P , -97
+P a -24
+P A -81
+Q . 16
+Q , 16
+Q U -7
+R Y -40
+R W -32
+R V -40
+R U -15
+R T -15
+R O -15
+T y -48
+T w -48
+T u -73
+T ; -32
+T r -65
+T . -65
+T o -65
+T - -97
+T hy -97
+T char173 -97
+T e -48
+T , -65
+T : -32
+T a -65
+T O -32
+T A -73
+U . -24
+U , -24
+U A -40
+V u -48
+V ; -32
+V . -97
+V o -73
+V - -65
+V hy -65
+V char173 -65
+V e -40
+V , -97
+V : -32
+V a -48
+V O -40
+V G -40
+V A -65
+W y -15
+W u -36
+W ; -7
+W . -65
+W o -48
+W - -32
+W hy -32
+W char173 -32
+W e -28
+W , -65
+W : -7
+W a -32
+W O -15
+W A -48
+Y u -81
+Y ; -40
+Y . -81
+Y o -81
+Y e -65
+Y , -81
+Y : -40
+Y a -73
+Y O -56
+Y A -89
+a y -15
+a w -11
+a v -11
+a g -7
+b y -15
+b v -15
+b u -15
+b l -7
+c y -7
+c l -15
+c k -15
+c h -7
+, ' -97
+, rq -97
+d y -11
+d w -11
+d v -11
+d d -7
+e y -11
+e x -11
+e w -11
+e v -11
+e . 16
+e , 8
+f ' 25
+f rq 25
+f . -7
+f o -15
+f e -7
+f , -7
+g g -7
+g e 8
+h y -15
+k o -11
+l y -11
+l w -11
+m y -24
+m u -15
+n y -15
+n v -32
+n u -7
+o y -15
+o x -24
+o w -11
+o v -15
+p y -11
+. ' -97
+. rq -97
+` ` -37
+` oq -37
+oq ` -37
+oq oq -37
+' v -15
+' s -48
+' r -32
+' ' -37
+' l -15
+' d -65
+r y 8
+r v 8
+r t 16
+r s -11
+r q -15
+r . -48
+r o -15
+r - -15
+r hy -15
+r char173 -15
+r g -11
+r d -15
+r , -48
+r c -15
+s w -11
+v . -65
+v o -24
+v , -65
+v a -15
+w . -32
+w o -15
+w , -32
+x e -7
+y . -65
+y o -20
+y e -7
+y , -65
+y a -24
+z e 8
+charset
+ha 479,698 2 0000 -- asciicircum
+ti 479,343 0 0001 -- asciitilde
+vS 547,936,19 2 0002 -- Scaron
+vZ 501,936 2 0003 -- Zcaron
+vs 456,750,14 2 0004 -- scaron
+vz 410,750 2 0005 -- zcaron
+:Y 547,915 2 0006 -- Ydieresis
+tm 820,718 2 0007 -- trademark
+aq 195,718 2 0010 -- quotesingle
+space 228 0 0040
+! 273,718 2 0041 -- exclam
+" 389,718 2 0042 -- quotedbl
+# 456,698 2 0043 -- numbersign
+sh "
+$ 456,775,115 2 0044 -- dollar
+Do "
+% 729,710,19 2 0045 -- percent
+& 592,718,19 2 0046 -- ampersand
+' 228,718 2 0047 -- quoteright
+( 273,734,208 3 0050 -- parenleft
+) 273,734,208 3 0051 -- parenright
+* 319,718 2 0052 -- asterisk
++ 479,506 0 0053 -- plus
+, 228,146,168 0 0054 -- comma
+- 273,345 0 0055 -- hyphen
+hy "
+char173 "
+. 228,146 0 0056 -- period
+/ 228,737,19 2 0057 -- slash
+sl "
+0 456,710,19 2 0060 -- zero
+1 456,710 2 0061 -- one
+2 456,710 2 0062 -- two
+3 456,710,19 2 0063 -- three
+4 456,710 2 0064 -- four
+5 456,698,19 2 0065 -- five
+6 456,710,19 2 0066 -- six
+7 456,698 2 0067 -- seven
+8 456,710,19 2 0070 -- eight
+9 456,710,19 2 0071 -- nine
+: 273,512 0 0072 -- colon
+; 273,512,168 0 0073 -- semicolon
+< 479,514,8 0 0074 -- less
+= 479,419 0 0075 -- equal
+> 479,514,8 0 0076 -- greater
+? 501,727 2 0077 -- question
+@ 800,737,19 2 0100 -- at
+at "
+A 592,718 2 0101 -- A
+B 592,718 2 0102 -- B
+C 592,737,19 2 0103 -- C
+D 592,718 2 0104 -- D
+E 547,718 2 0105 -- E
+F 501,718 2 0106 -- F
+G 638,737,19 2 0107 -- G
+H 592,718 2 0110 -- H
+I 228,718 2 0111 -- I
+J 456,718,18 2 0112 -- J
+K 592,718 2 0113 -- K
+L 501,718 2 0114 -- L
+M 683,718 2 0115 -- M
+N 592,718 2 0116 -- N
+O 638,737,19 2 0117 -- O
+P 547,718 2 0120 -- P
+Q 638,737,52 2 0121 -- Q
+R 592,718 2 0122 -- R
+S 547,737,19 2 0123 -- S
+T 501,718 2 0124 -- T
+U 592,718,19 2 0125 -- U
+V 547,718 2 0126 -- V
+W 774,718 2 0127 -- W
+X 547,718 2 0130 -- X
+Y 547,718 2 0131 -- Y
+Z 501,718 2 0132 -- Z
+[ 273,722,196 2 0133 -- bracketleft
+lB "
+\ 228,737,19 2 0134 -- backslash
+rs "
+] 273,722,196 2 0135 -- bracketright
+rB "
+a^ 273,750 2 0136 -- circumflex
+^ "
+_ 456,0,125 0 0137 -- underscore
+` 228,727 2 0140 -- quoteleft
+oq "
+a 456,546,14 0 0141 -- a
+b 501,718,14 2 0142 -- b
+c 456,546,14 0 0143 -- c
+d 501,718,14 2 0144 -- d
+e 456,546,14 0 0145 -- e
+f 273,727 2 0146 -- f
+g 501,546,217 1 0147 -- g
+h 501,718 2 0150 -- h
+i 228,725 2 0151 -- i
+j 228,725,214 3 0152 -- j
+k 456,718 2 0153 -- k
+l 228,718 2 0154 -- l
+m 729,546 0 0155 -- m
+n 501,546 0 0156 -- n
+o 501,546,14 0 0157 -- o
+p 501,546,207 1 0160 -- p
+q 501,546,207 1 0161 -- q
+r 319,546 0 0162 -- r
+s 456,546,14 0 0163 -- s
+t 273,676,6 2 0164 -- t
+u 501,532,14 0 0165 -- u
+v 456,532 0 0166 -- v
+w 638,532 0 0167 -- w
+x 456,532 0 0170 -- x
+y 456,532,214 1 0171 -- y
+z 410,532 0 0172 -- z
+lC 319,722,196 2 0173 -- braceleft
+{ "
+ba 230,737,19 2 0174 -- bar
+| "
+rC 319,722,196 2 0175 -- braceright
+} "
+a~ 273,737 2 0176 -- tilde
+~ "
+bq 228,127,146 0 0200 -- quotesinglbase
+Fo 456,484 0 0201 -- guillemotleft
+char171 "
+Fc 456,484 0 0202 -- guillemotright
+char187 "
+bu 287,524 0 0203 -- bullet
+Fn 456,737,210 3 0204 -- florin
+f/ 137,710,19 2 0205 -- fraction
+%0 820,710,19 2 0206 -- perthousand
+dg 456,718,171 2 0207 -- dagger
+dd 456,718,171 2 0210 -- daggerdbl
+en 456,333 0 0211 -- endash
+em 820,333 0 0212 -- emdash
+fi 501,727 2 0214 -- fi
+fl 501,727 2 0215 -- fl
+.i 228,532 0 0220 -- dotlessi
+ga 273,750 2 0222 -- grave
+a" 273,750 2 0223 -- hungarumlaut
+a. 273,729 2 0224 -- dotaccent
+ab 273,750 2 0225 -- breve
+ah 273,750 2 0226 -- caron
+ao 273,776 2 0227 -- ring
+ho 273,0,228 1 0230 -- ogonek
+lq 410,727 2 0231 -- quotedblleft
+rq 410,718 2 0232 -- quotedblright
+oe 774,546,14 0 0233 -- oe
+/l 228,718 2 0234 -- lslash
+Bq 410,127,146 0 0235 -- quotedblbase
+OE 820,737,19 2 0236 -- OE
+/L 501,718 2 0237 -- Lslash
+r! 273,532,186 0 0241 -- exclamdown
+char161 "
+ct 456,628,118 0 0242 -- cent
+char162 "
+Po 456,718,16 2 0243 -- sterling
+char163 "
+Cs 456,636 0 0244 -- currency
+char164 "
+Ye 456,698 2 0245 -- yen
+char165 "
+bb 230,737,19 2 0246 -- brokenbar
+char166 "
+sc 456,727,184 2 0247 -- section
+char167 "
+ad 273,729 2 0250 -- dieresis
+char168 "
+co 604,737,19 2 0251 -- copyright
+char169 "
+Of 303,737 2 0252 -- ordfeminine
+char170 "
+fo 273,484 0 0253 -- guilsinglleft
+no 479,419 0 0254 -- logicalnot
+char172 "
+\- 479,309 0 0255 -- minus
+rg 604,737,19 2 0256 -- registered
+char174 "
+a- 273,678 2 0257 -- macron
+char175 "
+de 328,712 2 0260 -- degree
+char176 "
+char177 479,506 0 0261 -- plusminus
+S2 273,710 2 0262 -- twosuperior
+char178 "
+S3 273,710 2 0263 -- threesuperior
+char179 "
+aa 273,750 2 0264 -- acute
+char180 "
+char181 501,532,207 1 0265 -- mu
+ps 456,700,191 2 0266 -- paragraph
+char182 "
+char183 228,334 0 0267 -- periodcentered
+ac 273,0,228 1 0270 -- cedilla
+char184 "
+S1 273,710 2 0271 -- onesuperior
+char185 "
+Om 299,737 2 0272 -- ordmasculine
+char186 "
+fc 273,484 0 0273 -- guilsinglright
+14 684,710,19 2 0274 -- onequarter
+char188 "
+12 684,710,19 2 0275 -- onehalf
+char189 "
+34 684,710,19 2 0276 -- threequarters
+char190 "
+r? 501,532,195 0 0277 -- questiondown
+char191 "
+`A 592,936 2 0300 -- Agrave
+char192 "
+'A 592,936 2 0301 -- Aacute
+char193 "
+^A 592,936 2 0302 -- Acircumflex
+char194 "
+~A 592,923 2 0303 -- Atilde
+char195 "
+:A 592,915 2 0304 -- Adieresis
+char196 "
+oA 592,962 2 0305 -- Aring
+char197 "
+AE 820,718 2 0306 -- AE
+char198 "
+,C 592,737,228 3 0307 -- Ccedilla
+char199 "
+`E 547,936 2 0310 -- Egrave
+char200 "
+'E 547,936 2 0311 -- Eacute
+char201 "
+^E 547,936 2 0312 -- Ecircumflex
+char202 "
+:E 547,915 2 0313 -- Edieresis
+char203 "
+`I 228,936 2 0314 -- Igrave
+char204 "
+'I 228,936 2 0315 -- Iacute
+char205 "
+^I 228,936 2 0316 -- Icircumflex
+char206 "
+:I 228,915 2 0317 -- Idieresis
+char207 "
+-D 592,718 2 0320 -- Eth
+char208 "
+~N 592,923 2 0321 -- Ntilde
+char209 "
+`O 638,936,19 2 0322 -- Ograve
+char210 "
+'O 638,936,19 2 0323 -- Oacute
+char211 "
+^O 638,936,19 2 0324 -- Ocircumflex
+char212 "
+~O 638,923,19 2 0325 -- Otilde
+char213 "
+:O 638,915,19 2 0326 -- Odieresis
+char214 "
+char215 479,505 0 0327 -- multiply
+/O 638,745,27 2 0330 -- Oslash
+char216 "
+`U 592,936,19 2 0331 -- Ugrave
+char217 "
+'U 592,936,19 2 0332 -- Uacute
+char218 "
+^U 592,936,19 2 0333 -- Ucircumflex
+char219 "
+:U 592,915,19 2 0334 -- Udieresis
+char220 "
+'Y 547,936 2 0335 -- Yacute
+char221 "
+TP 547,718 2 0336 -- Thorn
+char222 "
+ss 501,731,14 2 0337 -- germandbls
+char223 "
+`a 456,750,14 2 0340 -- agrave
+char224 "
+'a 456,750,14 2 0341 -- aacute
+char225 "
+^a 456,750,14 2 0342 -- acircumflex
+char226 "
+~a 456,737,14 2 0343 -- atilde
+char227 "
+:a 456,729,14 2 0344 -- adieresis
+char228 "
+oa 456,776,14 2 0345 -- aring
+char229 "
+ae 729,546,14 0 0346 -- ae
+char230 "
+,c 456,546,228 1 0347 -- ccedilla
+char231 "
+`e 456,750,14 2 0350 -- egrave
+char232 "
+'e 456,750,14 2 0351 -- eacute
+char233 "
+^e 456,750,14 2 0352 -- ecircumflex
+char234 "
+:e 456,729,14 2 0353 -- edieresis
+char235 "
+`i 228,750 2 0354 -- igrave
+char236 "
+'i 228,750 2 0355 -- iacute
+char237 "
+^i 228,750 2 0356 -- icircumflex
+char238 "
+:i 228,729 2 0357 -- idieresis
+char239 "
+Sd 501,737,14 2 0360 -- eth
+char240 "
+~n 501,737 2 0361 -- ntilde
+char241 "
+`o 501,750,14 2 0362 -- ograve
+char242 "
+'o 501,750,14 2 0363 -- oacute
+char243 "
+^o 501,750,14 2 0364 -- ocircumflex
+char244 "
+~o 501,737,14 2 0365 -- otilde
+char245 "
+:o 501,729,14 2 0366 -- odieresis
+char246 "
+char247 479,548,42 0 0367 -- divide
+/o 501,560,29 0 0370 -- oslash
+char248 "
+`u 501,750,14 2 0371 -- ugrave
+char249 "
+'u 501,750,14 2 0372 -- uacute
+char250 "
+^u 501,750,14 2 0373 -- ucircumflex
+char251 "
+:u 501,729,14 2 0374 -- udieresis
+char252 "
+'y 456,750,214 3 0375 -- yacute
+char253 "
+Tp 501,718,208 3 0376 -- thorn
+char254 "
+:y 456,729,214 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/HNBI b/font/devps/HNBI
new file mode 100644
index 000000000..7ad1fdbd3
--- /dev/null
+++ b/font/devps/HNBI
@@ -0,0 +1,547 @@
+name HNBI
+internalname Helvetica-Narrow-BoldOblique
+slant 12
+spacewidth 228
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -30
+A w -30
+A v -40
+A u -30
+A Y -110
+A W -60
+A V -80
+A U -50
+A T -90
+A Q -40
+A O -40
+A G -50
+A C -40
+B U -10
+B A -30
+D . -30
+D , -30
+D Y -70
+D W -40
+D V -40
+D A -40
+F . -100
+F , -100
+F a -20
+F A -80
+J u -20
+J . -20
+J , -20
+J A -20
+K y -40
+K u -30
+K o -35
+K e -15
+K O -30
+L y -30
+L ' -140
+L rq -140
+L Y -120
+L W -80
+L V -110
+L T -90
+O . -40
+O , -40
+O Y -70
+O X -50
+O W -50
+O V -50
+O T -40
+O A -50
+P . -120
+P o -40
+P e -30
+P , -120
+P a -30
+P A -100
+Q . 20
+Q , 20
+Q U -10
+R Y -50
+R W -40
+R V -50
+R U -20
+R T -20
+R O -20
+T y -60
+T w -60
+T u -90
+T ; -40
+T r -80
+T . -80
+T o -80
+T - -120
+T hy -120
+T char173 -120
+T e -60
+T , -80
+T : -40
+T a -80
+T O -40
+T A -90
+U . -30
+U , -30
+U A -50
+V u -60
+V ; -40
+V . -120
+V o -90
+V - -80
+V hy -80
+V char173 -80
+V e -50
+V , -120
+V : -40
+V a -60
+V O -50
+V G -50
+V A -80
+W y -20
+W u -45
+W ; -10
+W . -80
+W o -60
+W - -40
+W hy -40
+W char173 -40
+W e -35
+W , -80
+W : -10
+W a -40
+W O -20
+W A -60
+Y u -100
+Y ; -50
+Y . -100
+Y o -100
+Y e -80
+Y , -100
+Y : -50
+Y a -90
+Y O -70
+Y A -110
+a y -20
+a w -15
+a v -15
+a g -10
+b y -20
+b v -20
+b u -20
+b l -10
+c y -10
+c l -20
+c k -20
+c h -10
+, ' -120
+, rq -120
+d y -15
+d w -15
+d v -15
+d d -10
+e y -15
+e x -15
+e w -15
+e v -15
+e . 20
+e , 10
+f ' 30
+f rq 30
+f . -10
+f o -20
+f e -10
+f , -10
+g g -10
+g e 10
+h y -20
+k o -15
+l y -15
+l w -15
+m y -30
+m u -20
+n y -20
+n v -40
+n u -10
+o y -20
+o x -30
+o w -15
+o v -20
+p y -15
+. ' -120
+. rq -120
+` ` -46
+` oq -46
+oq ` -46
+oq oq -46
+' v -20
+' s -60
+' r -40
+' ' -46
+' l -20
+' d -80
+r y 10
+r v 10
+r t 20
+r s -15
+r q -20
+r . -60
+r o -20
+r - -20
+r hy -20
+r char173 -20
+r g -15
+r d -20
+r , -60
+r c -20
+s w -15
+v . -80
+v o -30
+v , -80
+v a -20
+w . -40
+w o -20
+w , -40
+x e -10
+y . -80
+y o -25
+y e -10
+y , -80
+y a -30
+z e 10
+charset
+ha 479,698,0,55,-57,55 2 0000 -- asciicircum
+ti 479,343,0,44,-44,44 0 0001 -- asciitilde
+vS 547,936,19,91,-16,90 2 0002 -- Scaron
+vZ 501,936,0,153,30,90 2 0003 -- Zcaron
+vs 456,750,14,98,-2,90 2 0004 -- scaron
+vz 410,750,0,121,34,90 2 0005 -- zcaron
+:Y 547,915,0,164,-87,90 2 0006 -- Ydieresis
+tm 820,718,0,139,-96,90 2 0007 -- trademark
+aq 195,718,0,118,-85,90 2 0010 -- quotesingle
+space 228 0 0040
+! 273,718,0,102,-27,90 2 0041 -- exclam
+" 389,718,0,94,-108,90 2 0042 -- quotedbl
+# 456,698,0,122,1,90 2 0043 -- numbersign
+sh "
+$ 456,775,115,104,-5,90 2 0044 -- dollar
+Do "
+% 729,710,19,60,-62,60 2 0045 -- percent
+& 592,718,19,58,-23,58 2 0046 -- ampersand
+' 228,718,0,119,-87,90 2 0047 -- quoteright
+( 273,734,208,162,-12,90 3 0050 -- parenleft
+) 273,734,208,79,71,79 3 0051 -- parenright
+* 319,718,0,125,-70,90 2 0052 -- asterisk
++ 479,506,0,71,-17,71 0 0053 -- plus
+, 228,146,168,23,27,23 0 0054 -- comma
+- 273,345,0,88,-10,88 0 0055 -- hyphen
+hy "
+char173 "
+. 228,146,0,23,-2,23 0 0056 -- period
+/ 228,737,19,205,80,90 2 0057 -- slash
+sl "
+0 456,710,19,100,-21,90 2 0060 -- zero
+1 456,710,0,28,-92,28 2 0061 -- one
+2 456,710,0,102,29,90 2 0062 -- two
+3 456,710,19,93,-4,90 2 0063 -- three
+4 456,710,0,84,0,84 2 0064 -- four
+5 456,698,19,116,-3,90 2 0065 -- five
+6 456,710,19,101,-20,90 2 0066 -- six
+7 456,698,0,149,-52,90 2 0067 -- seven
+8 456,710,19,99,-7,90 2 0070 -- eight
+9 456,710,19,98,-14,90 2 0071 -- nine
+: 273,512,0,65,-25,65 0 0072 -- colon
+; 273,512,168,65,4,65 0 0073 -- semicolon
+< 479,514,8,108,-17,90 0 0074 -- less
+= 479,419,0,90,2,90 0 0075 -- equal
+> 479,514,8,71,20,71 0 0076 -- greater
+? 501,727,0,99,-85,90 2 0077 -- question
+@ 800,737,19,32,-102,32 2 0100 -- at
+at "
+A 592,718,0,34,34,34 2 0101 -- A
+B 592,718,0,84,-12,84 2 0102 -- B
+C 592,737,19,105,-38,90 2 0103 -- C
+D 592,718,0,95,-12,90 2 0104 -- D
+E 547,718,0,123,-12,90 2 0105 -- E
+F 501,718,0,155,-12,90 2 0106 -- F
+G 638,737,19,82,-39,82 2 0107 -- G
+H 592,718,0,117,-8,90 2 0110 -- H
+I 228,718,0,123,-2,90 2 0111 -- I
+J 456,718,18,116,1,90 2 0112 -- J
+K 592,718,0,161,-21,90 2 0113 -- K
+L 501,718,0,50,-12,50 2 0114 -- L
+M 683,718,0,119,-7,90 2 0115 -- M
+N 592,718,0,119,-7,90 2 0116 -- N
+O 638,737,19,87,-38,87 2 0117 -- O
+P 547,718,0,108,-12,90 2 0120 -- P
+Q 638,737,52,87,-38,87 2 0121 -- Q
+R 592,718,0,96,-12,90 2 0122 -- R
+S 547,737,19,91,-16,90 2 0123 -- S
+T 501,718,0,164,-64,90 2 0124 -- T
+U 592,718,19,117,-46,90 2 0125 -- U
+V 547,718,0,159,-91,90 2 0126 -- V
+W 774,718,0,163,-88,90 2 0127 -- W
+X 547,718,0,151,39,90 2 0130 -- X
+Y 547,718,0,164,-87,90 2 0131 -- Y
+Z 501,718,0,153,30,90 2 0132 -- Z
+[ 273,722,196,156,33,90 2 0133 -- bracketleft
+lB "
+\ 228,737,19,74,-51,74 2 0134 -- backslash
+rs "
+] 273,722,196,124,64,90 2 0135 -- bracketright
+rB "
+a^ 273,750,0,164,-47,90 2 0136 -- circumflex
+^ "
+_ 456,0,125,37,72,37 0 0137 -- underscore
+` 228,727,0,118,-86,90 2 0140 -- quoteleft
+oq "
+a 456,546,14,72,5,72 0 0141 -- a
+b 501,718,14,78,0,78 2 0142 -- b
+c 456,546,14,85,-15,85 0 0143 -- c
+d 501,718,14,126,-17,90 2 0144 -- d
+e 456,546,14,80,-8,80 0 0145 -- e
+f 273,727,0,162,-21,90 2 0146 -- f
+g 501,546,217,95,19,90 1 0147 -- g
+h 501,718,0,65,-3,65 2 0150 -- h
+i 228,725,0,120,-7,90 2 0151 -- i
+j 228,725,214,120,85,90 3 0152 -- j
+k 456,718,0,143,-7,90 2 0153 -- k
+l 228,718,0,119,-7,90 2 0154 -- l
+m 729,546,0,67,-2,67 0 0155 -- m
+n 501,546,0,65,-3,65 0 0156 -- n
+o 501,546,14,76,-17,76 0 0157 -- o
+p 501,546,207,78,35,78 1 0160 -- p
+q 501,546,207,94,-16,90 1 0161 -- q
+r 319,546,0,132,-2,90 0 0162 -- r
+s 456,546,14,73,-2,73 0 0163 -- s
+t 273,676,6,123,-32,90 2 0164 -- t
+u 501,532,14,89,-30,89 0 0165 -- u
+v 456,532,0,132,-53,90 0 0166 -- v
+w 638,532,0,135,-51,90 0 0167 -- w
+x 456,532,0,125,38,90 0 0170 -- x
+y 456,532,214,129,16,90 1 0171 -- y
+z 410,532,0,118,34,90 0 0172 -- z
+lC 319,722,196,156,-27,90 2 0173 -- braceleft
+{ "
+ba 230,737,19,109,-16,90 2 0174 -- bar
+| "
+rC 319,722,196,64,64,64 2 0175 -- braceright
+} "
+a~ 273,737,0,192,-42,90 2 0176 -- tilde
+~ "
+bq 228,127,146,16,16,16 0 0200 -- quotesinglbase
+Fo 456,484,0,62,-61,62 0 0201 -- guillemotleft
+char171 "
+Fc 456,484,0,37,-35,37 0 0202 -- guillemotright
+char187 "
+bu 287,524,0,108,-18,90 0 0203 -- bullet
+Fn 456,737,210,142,91,90 3 0204 -- florin
+f/ 137,710,19,312,193,90 2 0205 -- fraction
+%0 820,710,19,81,-12,81 2 0206 -- perthousand
+dg 456,718,171,107,-47,90 2 0207 -- dagger
+dd 456,718,171,109,12,90 2 0210 -- daggerdbl
+en 456,333,0,108,10,90 0 0211 -- endash
+em 820,333,0,108,10,90 0 0212 -- emdash
+fi 501,727,0,120,-21,90 2 0214 -- fi
+fl 501,727,0,119,-21,90 2 0215 -- fl
+.i 228,532,0,86,-7,86 0 0220 -- dotlessi
+ga 273,750,0,67,-62,67 2 0222 -- grave
+a" 273,750,0,306,-63,90 2 0223 -- hungarumlaut
+a. 273,729,0,93,-142,90 2 0224 -- dotaccent
+ab 273,750,0,182,-78,90 2 0225 -- breve
+ah 273,750,0,189,-73,90 2 0226 -- caron
+ao 273,776,0,121,-114,90 2 0227 -- ring
+ho 273,0,228,0,17 1 0230 -- ogonek
+lq 410,727,0,122,-82,90 2 0231 -- quotedblleft
+rq 410,718,0,123,-82,90 2 0232 -- quotedblright
+oe 774,546,14,77,-17,77 0 0233 -- oe
+/l 228,718,0,156,17,90 2 0234 -- lslash
+Bq 410,127,146,20,21,20 0 0235 -- quotedblbase
+OE 820,737,19,143,-31,90 2 0236 -- OE
+/L 501,718,0,50,22,50 2 0237 -- Lslash
+r! 273,532,186,67,9,67 0 0241 -- exclamdown
+char161 "
+ct 456,628,118,85,-15,85 0 0242 -- cent
+char162 "
+Po 456,718,16,114,9,90 2 0243 -- sterling
+char163 "
+Cs 456,636,0,152,28,90 0 0244 -- currency
+char164 "
+Ye 456,698,0,179,1,90 2 0245 -- yen
+char165 "
+bb 230,737,19,109,-16,90 2 0246 -- brokenbar
+char166 "
+sc 456,727,184,85,0,85 2 0247 -- section
+char167 "
+ad 273,729,0,172,-62,90 2 0250 -- dieresis
+char168 "
+co 604,737,19,131,4,90 2 0251 -- copyright
+char169 "
+Of 303,737,0,128,-25,90 2 0252 -- ordfeminine
+char170 "
+fo 273,484,0,66,-56,66 0 0253 -- guilsinglleft
+no 479,419,0,90,-36,90 0 0254 -- logicalnot
+char172 "
+\- 479,309,0,71,-17,71 0 0255 -- minus
+rg 604,737,19,130,5,90 2 0256 -- registered
+char174 "
+a- 273,678,0,173,-50,90 2 0257 -- macron
+char175 "
+de 328,712,0,105,-93,90 2 0260 -- degree
+char176 "
+char177 479,506,0,83,17,83 0 0261 -- plusminus
+S2 273,710,0,145,-7,90 2 0262 -- twosuperior
+char178 "
+S3 273,710,0,138,-25,90 2 0263 -- threesuperior
+char179 "
+aa 273,750,0,200,-144,90 2 0264 -- acute
+char180 "
+char181 501,532,207,89,32,89 1 0265 -- mu
+ps 456,700,191,158,-30,90 2 0266 -- paragraph
+char182 "
+char183 228,334,0,48,-40,48 0 0267 -- periodcentered
+ac 273,0,228,0,80 1 0270 -- cedilla
+char184 "
+S1 273,710,0,95,-71,90 2 0271 -- onesuperior
+char185 "
+Om 299,737,0,149,-25,90 2 0272 -- ordmasculine
+char186 "
+fc 273,484,0,41,-31,41 0 0273 -- guilsinglright
+14 684,710,19,27,-58,27 2 0274 -- onequarter
+char188 "
+12 684,710,19,70,-58,70 2 0275 -- onehalf
+char189 "
+34 684,710,19,54,-32,54 2 0276 -- threequarters
+char190 "
+r? 501,532,195,8,6,8 0 0277 -- questiondown
+char191 "
+`A 592,936,0,34,34,34 2 0300 -- Agrave
+char192 "
+'A 592,936,0,73,34,73 2 0301 -- Aacute
+char193 "
+^A 592,936,0,37,34,37 2 0302 -- Acircumflex
+char194 "
+~A 592,923,0,66,34,66 2 0303 -- Atilde
+char195 "
+:A 592,915,0,46,34,46 2 0304 -- Adieresis
+char196 "
+oA 592,962,0,34,34,34 2 0305 -- Aring
+char197 "
+AE 820,718,0,132,46,90 2 0306 -- AE
+char198 "
+,C 592,737,228,105,-38,90 3 0307 -- Ccedilla
+char199 "
+`E 547,936,0,123,-12,90 2 0310 -- Egrave
+char200 "
+'E 547,936,0,123,-12,90 2 0311 -- Eacute
+char201 "
+^E 547,936,0,123,-12,90 2 0312 -- Ecircumflex
+char202 "
+:E 547,915,0,123,-12,90 2 0313 -- Edieresis
+char203 "
+`I 228,936,0,123,-2,90 2 0314 -- Igrave
+char204 "
+'I 228,936,0,255,-2,90 2 0315 -- Iacute
+char205 "
+^I 228,936,0,219,-2,90 2 0316 -- Icircumflex
+char206 "
+:I 228,915,0,227,-2,90 2 0317 -- Idieresis
+char207 "
+-D 592,718,0,95,-1,90 2 0320 -- Eth
+char208 "
+~N 592,923,0,119,-7,90 2 0321 -- Ntilde
+char209 "
+`O 638,936,19,87,-38,87 2 0322 -- Ograve
+char210 "
+'O 638,936,19,87,-38,87 2 0323 -- Oacute
+char211 "
+^O 638,936,19,87,-38,87 2 0324 -- Ocircumflex
+char212 "
+~O 638,923,19,87,-38,87 2 0325 -- Otilde
+char213 "
+:O 638,915,19,87,-38,87 2 0326 -- Odieresis
+char214 "
+char215 479,505,0,91,3,90 0 0327 -- multiply
+/O 638,745,27,145,21,90 2 0330 -- Oslash
+char216 "
+`U 592,936,19,117,-46,90 2 0331 -- Ugrave
+char217 "
+'U 592,936,19,117,-46,90 2 0332 -- Uacute
+char218 "
+^U 592,936,19,117,-46,90 2 0333 -- Ucircumflex
+char219 "
+:U 592,915,19,117,-46,90 2 0334 -- Udieresis
+char220 "
+'Y 547,936,0,164,-87,90 2 0335 -- Yacute
+char221 "
+TP 547,718,0,91,-12,90 2 0336 -- Thorn
+char222 "
+ss 501,731,14,88,-7,88 2 0337 -- germandbls
+char223 "
+`a 456,750,14,72,5,72 2 0340 -- agrave
+char224 "
+'a 456,750,14,108,5,90 2 0341 -- aacute
+char225 "
+^a 456,750,14,72,5,72 2 0342 -- acircumflex
+char226 "
+~a 456,737,14,101,5,90 2 0343 -- atilde
+char227 "
+:a 456,729,14,81,5,81 2 0344 -- adieresis
+char228 "
+oa 456,776,14,72,5,72 2 0345 -- aring
+char229 "
+ae 729,546,14,78,4,78 0 0346 -- ae
+char230 "
+,c 456,546,228,85,-15,85 1 0347 -- ccedilla
+char231 "
+`e 456,750,14,80,-8,80 2 0350 -- egrave
+char232 "
+'e 456,750,14,108,-8,90 2 0351 -- eacute
+char233 "
+^e 456,750,14,80,-8,80 2 0352 -- ecircumflex
+char234 "
+:e 456,729,14,81,-8,81 2 0353 -- edieresis
+char235 "
+`i 228,750,0,90,-7,90 2 0354 -- igrave
+char236 "
+'i 228,750,0,222,-7,90 2 0355 -- iacute
+char237 "
+^i 228,750,0,186,-7,90 2 0356 -- icircumflex
+char238 "
+:i 228,729,0,195,-7,90 2 0357 -- idieresis
+char239 "
+Sd 501,737,14,98,-17,90 2 0360 -- eth
+char240 "
+~n 501,737,0,78,-3,78 2 0361 -- ntilde
+char241 "
+`o 501,750,14,76,-17,76 2 0362 -- ograve
+char242 "
+'o 501,750,14,86,-17,86 2 0363 -- oacute
+char243 "
+^o 501,750,14,76,-17,76 2 0364 -- ocircumflex
+char244 "
+~o 501,737,14,78,-17,78 2 0365 -- otilde
+char245 "
+:o 501,729,14,76,-17,76 2 0366 -- odieresis
+char246 "
+char247 479,548,42,71,-17,71 0 0367 -- divide
+/o 501,560,29,124,32,90 0 0370 -- oslash
+char248 "
+`u 501,750,14,89,-30,89 2 0371 -- ugrave
+char249 "
+'u 501,750,14,89,-30,89 2 0372 -- uacute
+char250 "
+^u 501,750,14,89,-30,89 2 0373 -- ucircumflex
+char251 "
+:u 501,729,14,89,-30,89 2 0374 -- udieresis
+char252 "
+'y 456,750,214,129,16,90 3 0375 -- yacute
+char253 "
+Tp 501,718,208,78,35,78 3 0376 -- thorn
+char254 "
+:y 456,729,214,129,16,90 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/HNI b/font/devps/HNI
new file mode 100644
index 000000000..4f14c8c39
--- /dev/null
+++ b/font/devps/HNI
@@ -0,0 +1,617 @@
+name HNI
+internalname Helvetica-Narrow-Oblique
+slant 12
+spacewidth 228
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -40
+A w -40
+A v -40
+A u -30
+A Y -100
+A W -50
+A V -70
+A U -50
+A T -120
+A Q -30
+A O -30
+A G -30
+A C -30
+B . -20
+B , -20
+B U -10
+C . -30
+C , -30
+D . -70
+D , -70
+D Y -90
+D W -40
+D V -70
+D A -40
+F r -45
+F . -150
+F o -30
+F e -30
+F , -150
+F a -50
+F A -80
+J u -20
+J . -30
+J , -30
+J a -20
+J A -20
+K y -50
+K u -30
+K o -40
+K e -40
+K O -50
+L y -30
+L ' -160
+L rq -140
+L Y -140
+L W -70
+L V -110
+L T -110
+O . -40
+O , -40
+O Y -70
+O X -60
+O W -30
+O V -50
+O T -40
+O A -20
+P . -180
+P o -50
+P e -50
+P , -180
+P a -40
+P A -120
+Q U -10
+R Y -50
+R W -30
+R V -50
+R U -40
+R T -30
+R O -20
+S . -20
+S , -20
+T y -120
+T w -120
+T u -120
+T ; -20
+T r -120
+T . -120
+T o -120
+T - -140
+T hy -140
+T char173 -140
+T e -120
+T , -120
+T : -20
+T a -120
+T O -40
+T A -120
+U . -40
+U , -40
+U A -40
+V u -70
+V ; -40
+V . -125
+V o -80
+V - -80
+V hy -80
+V char173 -80
+V e -80
+V , -125
+V : -40
+V a -70
+V O -40
+V G -40
+V A -80
+W y -20
+W u -30
+W . -80
+W o -30
+W - -40
+W hy -40
+W char173 -40
+W e -30
+W , -80
+W a -40
+W O -20
+W A -50
+Y u -110
+Y ; -60
+Y . -140
+Y o -140
+Y i -20
+Y - -140
+Y hy -140
+Y char173 -140
+Y e -140
+Y , -140
+Y : -60
+Y a -140
+Y O -85
+Y A -110
+a y -30
+a w -20
+a v -20
+b y -20
+b v -20
+b u -20
+b . -40
+b l -20
+b , -40
+b b -10
+c k -20
+c , -15
+, ' -100
+, rq -100
+e y -20
+e x -30
+e w -20
+e v -30
+e . -15
+e , -15
+f ' 50
+f rq 60
+f . -30
+f o -30
+f e -30
+f .i -28
+f , -30
+f a -30
+g r -10
+h y -30
+k o -20
+k e -20
+m y -15
+m u -10
+n y -15
+n v -20
+n u -10
+o y -30
+o x -30
+o w -15
+o v -15
+o . -40
+o , -40
+/o z -55
+char248 z -55
+/o y -70
+char248 y -70
+/o x -85
+char248 x -85
+/o w -70
+char248 w -70
+/o v -70
+char248 v -70
+/o u -55
+char248 u -55
+/o t -55
+char248 t -55
+/o s -55
+char248 s -55
+/o r -55
+char248 r -55
+/o q -55
+char248 q -55
+/o . -95
+char248 . -95
+/o p -55
+char248 p -55
+/o o -55
+char248 o -55
+/o n -55
+char248 n -55
+/o m -55
+char248 m -55
+/o l -55
+char248 l -55
+/o k -55
+char248 k -55
+/o j -55
+char248 j -55
+/o i -55
+char248 i -55
+/o h -55
+char248 h -55
+/o g -55
+char248 g -55
+/o f -55
+char248 f -55
+/o e -55
+char248 e -55
+/o d -55
+char248 d -55
+/o , -95
+char248 , -95
+/o c -55
+char248 c -55
+/o b -55
+char248 b -55
+/o a -55
+char248 a -55
+p y -30
+p . -35
+p , -35
+. ' -100
+. rq -100
+` ` -57
+` oq -57
+oq ` -57
+oq oq -57
+' s -50
+' r -50
+' ' -57
+' d -50
+r y 30
+r v 30
+r u 15
+r t 40
+r ; 30
+r . -50
+r p 30
+r n 25
+r m 25
+r l 15
+r k 15
+r i 15
+r , -50
+r : 30
+r a -10
+s w -30
+s . -15
+s , -15
+v . -80
+v o -25
+v e -25
+v , -80
+v a -25
+w . -60
+w o -10
+w e -10
+w , -60
+w a -15
+x e -30
+y . -100
+y o -20
+y e -20
+y , -100
+y a -20
+z o -15
+z e -15
+charset
+ha 385,688,0,107,15,89 2 0000 -- asciicircum
+ti 479,326,0,47,-41,47 0 0001 -- asciitilde
+vS 547,929,19,87,-24,87 2 0002 -- Scaron
+vZ 501,929,0,156,31,89 2 0003 -- Zcaron
+vs 410,734,15,93,-2,89 2 0004 -- scaron
+vz 410,734,0,108,25,89 2 0005 -- zcaron
+:Y 547,901,0,164,-87,89 2 0006 -- Ydieresis
+tm 820,718,0,96,-102,89 2 0007 -- trademark
+aq 157,718,0,126,-79,89 2 0010 -- quotesingle
+space 228 0 0040
+! 228,718,0,100,-24,89 2 0041 -- exclam
+" 291,718,0,118,-88,89 2 0042 -- quotedbl
+# 456,688,0,111,-10,89 2 0043 -- numbersign
+sh "
+$ 456,775,115,100,-7,89 2 0044 -- dollar
+Do "
+% 729,703,19,50,-70,50 2 0045 -- percent
+& 547,718,15,33,-13,33 2 0046 -- ampersand
+' 182,718,0,122,-74,89 2 0047 -- quoteright
+( 273,733,207,149,-39,89 3 0050 -- parenleft
+) 273,733,207,53,57,53 3 0051 -- parenright
+* 319,718,0,120,-85,89 2 0052 -- asterisk
++ 479,505,0,68,-20,68 0 0053 -- plus
+, 228,106,147,0,4 0 0054 -- comma
+- 273,322,0,70,-27,70 0 0055 -- hyphen
+hy "
+char173 "
+. 228,106,0,0,-21 0 0056 -- period
+/ 228,737,19,192,67,89 2 0057 -- slash
+sl "
+0 456,703,19,93,-27,89 2 0060 -- zero
+1 456,703,0,11,-120,11 2 0061 -- one
+2 456,703,0,100,29,89 2 0062 -- two
+3 456,703,19,94,-11,89 2 0063 -- three
+4 456,703,0,66,0,66 2 0064 -- four
+5 456,688,19,103,-5,89 2 0065 -- five
+6 456,703,19,98,-24,89 2 0066 -- six
+7 456,688,0,143,-62,89 2 0067 -- seven
+8 456,703,19,91,-10,89 2 0070 -- eight
+9 456,703,19,93,-17,89 2 0071 -- nine
+: 228,516,0,69,-21,69 0 0072 -- colon
+; 228,516,147,69,4,69 0 0073 -- semicolon
+< 479,495,0,97,-27,89 0 0074 -- less
+= 479,390,0,86,-2,86 0 0075 -- equal
+> 479,495,0,61,9,61 0 0076 -- greater
+? 456,727,0,94,-82,89 2 0077 -- question
+@ 832,737,19,9,-126,9 2 0100 -- at
+at "
+A 547,718,0,39,39,39 2 0101 -- A
+B 547,718,0,86,-11,86 2 0102 -- B
+C 592,737,19,98,-38,89 2 0103 -- C
+D 592,718,0,84,-16,84 2 0104 -- D
+E 547,718,0,128,-21,89 2 0105 -- E
+F 501,718,0,152,-21,89 2 0106 -- F
+G 638,737,19,67,-41,67 2 0107 -- G
+H 592,718,0,113,-13,89 2 0110 -- H
+I 228,718,0,101,-25,89 2 0111 -- I
+J 410,718,19,116,11,89 2 0112 -- J
+K 547,718,0,165,-12,89 2 0113 -- K
+L 456,718,0,49,-12,49 2 0114 -- L
+M 683,718,0,116,-10,89 2 0115 -- M
+N 592,718,0,113,-12,89 2 0116 -- N
+O 638,737,19,89,-36,89 2 0117 -- O
+P 547,718,0,107,-21,89 2 0120 -- P
+Q 638,737,56,89,-36,89 2 0121 -- Q
+R 592,718,0,92,-22,89 2 0122 -- R
+S 547,737,19,87,-24,87 2 0123 -- S
+T 501,718,0,164,-72,89 2 0124 -- T
+U 592,718,19,111,-51,89 2 0125 -- U
+V 547,718,0,159,-92,89 2 0126 -- V
+W 774,718,0,162,-88,89 2 0127 -- W
+X 547,718,0,150,34,89 2 0130 -- X
+Y 547,718,0,164,-87,89 2 0131 -- Y
+Z 501,718,0,156,31,89 2 0132 -- Z
+[ 228,722,196,153,33,89 2 0133 -- bracketleft
+lB "
+\ 228,737,19,61,-65,61 2 0134 -- backslash
+rs "
+] 228,722,196,124,61,89 2 0135 -- bracketright
+rB "
+a^ 273,734,0,136,-71,89 2 0136 -- circumflex
+^ "
+_ 456,0,125,37,72,37 0 0137 -- underscore
+` 182,725,0,133,-85,89 2 0140 -- quoteleft
+oq "
+a 456,538,15,52,0,52 0 0141 -- a
+b 456,718,15,73,2,73 2 0142 -- b
+c 410,538,15,94,-11,89 0 0143 -- c
+d 456,718,15,128,-19,89 2 0144 -- d
+e 456,538,15,68,-19,68 0 0145 -- e
+f 228,728,0,163,-21,89 2 0146 -- f
+g 456,538,220,94,16,89 1 0147 -- g
+h 456,718,0,64,-3,64 2 0150 -- h
+i 182,718,0,120,-5,89 2 0151 -- i
+j 182,718,210,120,99,89 3 0152 -- j
+k 410,718,0,132,-5,89 2 0153 -- k
+l 182,718,0,120,-5,89 2 0154 -- l
+m 683,538,0,66,-3,66 0 0155 -- m
+n 456,538,0,64,-3,64 0 0156 -- n
+o 456,538,14,73,-18,73 0 0157 -- o
+p 456,538,207,73,39,73 1 0160 -- p
+q 456,538,207,90,-19,89 1 0161 -- q
+r 273,538,0,142,-13,89 0 0162 -- r
+s 410,538,15,74,-2,74 0 0163 -- s
+t 228,669,7,124,-34,89 2 0164 -- t
+u 456,523,15,86,-27,86 0 0165 -- u
+v 410,523,0,135,-48,89 0 0166 -- v
+w 592,523,0,131,-53,89 0 0167 -- w
+x 410,523,0,127,41,89 0 0170 -- x
+y 410,523,214,132,38,89 1 0171 -- y
+z 410,523,0,108,25,89 0 0172 -- z
+lC 274,722,196,141,-25,89 2 0173 -- braceleft
+{ "
+ba 213,737,19,102,-24,89 2 0174 -- bar
+| "
+rC 274,722,196,67,50,67 2 0175 -- braceright
+} "
+a~ 273,722,0,179,-52,89 2 0176 -- tilde
+~ "
+bq 182,106,149,15,33,15 0 0200 -- quotesinglbase
+Fo 456,446,0,48,-70,48 0 0201 -- guillemotleft
+char171 "
+Fc 456,446,0,27,-48,27 0 0202 -- guillemotright
+char187 "
+bu 287,517,0,102,-24,89 0 0203 -- bullet
+Fn 456,737,207,131,93,89 3 0204 -- florin
+f/ 137,703,19,309,189,89 2 0205 -- fraction
+%0 820,703,19,74,-22,74 2 0206 -- perthousand
+dg 456,718,159,104,-60,89 2 0207 -- dagger
+dd 456,718,159,105,7,89 2 0210 -- daggerdbl
+en 456,313,0,104,8,89 0 0211 -- endash
+em 820,313,0,105,8,89 0 0212 -- emdash
+fi 410,728,0,121,-21,89 2 0214 -- fi
+fl 410,728,0,119,-21,89 2 0215 -- fl
+.i 228,523,0,63,-28,63 0 0220 -- dotlessi
+ga 273,734,0,53,-89,53 2 0222 -- grave
+a" 273,734,0,240,-79,89 2 0223 -- hungarumlaut
+a. 273,706,0,74,-154,74 2 0224 -- dotaccent
+ab 273,731,0,168,-87,89 2 0225 -- breve
+ah 273,734,0,161,-95,89 2 0226 -- caron
+ao 273,756,0,107,-125,89 2 0227 -- ring
+ho 273,0,225,0,15 1 0230 -- ogonek
+lq 273,725,0,155,-63,89 2 0231 -- quotedblleft
+rq 273,718,0,144,-52,89 2 0232 -- quotedblright
+oe 774,538,15,67,-18,67 0 0233 -- oe
+/l 182,718,0,152,16,89 2 0234 -- lslash
+Bq 273,106,149,37,55,37 0 0235 -- quotedblbase
+OE 820,737,19,145,-30,89 2 0236 -- OE
+/L 456,718,0,49,16,49 2 0237 -- Lslash
+r! 273,523,195,44,-13,44 0 0241 -- exclamdown
+char161 "
+ct 456,623,115,73,-28,73 0 0242 -- cent
+char162 "
+Po 456,718,16,114,10,89 2 0243 -- sterling
+char163 "
+Cs 456,603,0,124,1,89 0 0244 -- currency
+char164 "
+Ye 456,688,0,167,-17,89 2 0245 -- yen
+char165 "
+bb 213,737,19,102,-24,89 2 0246 -- brokenbar
+char166 "
+sc 456,737,191,73,-13,73 2 0247 -- section
+char167 "
+ad 273,706,0,140,-88,89 2 0250 -- dieresis
+char168 "
+co 604,737,19,133,6,89 2 0251 -- copyright
+char169 "
+Of 303,737,0,115,-32,89 2 0252 -- ordfeminine
+char170 "
+fo 273,446,0,56,-62,56 0 0253 -- guilsinglleft
+no 479,390,0,86,-37,86 0 0254 -- logicalnot
+char172 "
+\- 479,289,0,68,-20,68 0 0255 -- minus
+rg 604,737,19,133,6,89 2 0256 -- registered
+char174 "
+a- 273,684,0,161,-67,89 2 0257 -- macron
+char175 "
+de 328,703,0,106,-88,89 2 0260 -- degree
+char176 "
+char177 479,506,0,78,18,78 0 0261 -- plusminus
+S2 273,703,0,145,-2,89 2 0262 -- twosuperior
+char178 "
+S3 273,703,0,135,-24,89 2 0263 -- threesuperior
+char179 "
+aa 273,734,0,167,-153,89 2 0264 -- acute
+char180 "
+char181 456,523,207,86,30,86 1 0265 -- mu
+ps 440,718,173,143,-53,89 2 0266 -- paragraph
+char182 "
+char183 228,315,0,33,-56,33 0 0267 -- periodcentered
+ac 273,0,225,0,48 1 0270 -- cedilla
+char184 "
+S1 273,703,0,82,-86,82 2 0271 -- onesuperior
+char185 "
+Om 299,737,0,135,-32,89 2 0272 -- ordmasculine
+char186 "
+fc 273,446,0,34,-41,34 0 0273 -- guilsinglright
+14 684,703,19,24,-73,24 2 0274 -- onequarter
+char188 "
+12 684,703,19,54,-43,54 2 0275 -- onehalf
+char189 "
+34 684,703,19,72,-56,72 2 0276 -- threequarters
+char190 "
+r? 501,525,201,0,-20 0 0277 -- questiondown
+char191 "
+`A 547,929,0,39,39,39 2 0300 -- Agrave
+char192 "
+'A 547,929,0,63,39,63 2 0301 -- Aacute
+char193 "
+^A 547,929,0,39,39,39 2 0302 -- Acircumflex
+char194 "
+~A 547,917,0,76,39,76 2 0303 -- Atilde
+char195 "
+:A 547,901,0,39,39,39 2 0304 -- Adieresis
+char196 "
+oA 547,931,0,39,39,39 2 0305 -- Aring
+char197 "
+AE 820,718,0,129,43,89 2 0306 -- AE
+char198 "
+,C 592,737,225,98,-38,89 3 0307 -- Ccedilla
+char199 "
+`E 547,929,0,128,-21,89 2 0310 -- Egrave
+char200 "
+'E 547,929,0,128,-21,89 2 0311 -- Eacute
+char201 "
+^E 547,929,0,128,-21,89 2 0312 -- Ecircumflex
+char202 "
+:E 547,901,0,128,-21,89 2 0313 -- Edieresis
+char203 "
+`I 228,929,0,110,-25,89 2 0314 -- Igrave
+char204 "
+'I 228,929,0,223,-25,89 2 0315 -- Iacute
+char205 "
+^I 228,929,0,193,-25,89 2 0316 -- Icircumflex
+char206 "
+:I 228,901,0,197,-25,89 2 0317 -- Idieresis
+char207 "
+-D 592,718,0,84,-7,84 2 0320 -- Eth
+char208 "
+~N 592,917,0,113,-12,89 2 0321 -- Ntilde
+char209 "
+`O 638,929,19,89,-36,89 2 0322 -- Ograve
+char210 "
+'O 638,929,19,89,-36,89 2 0323 -- Oacute
+char211 "
+^O 638,929,19,89,-36,89 2 0324 -- Ocircumflex
+char212 "
+~O 638,917,19,89,-36,89 2 0325 -- Otilde
+char213 "
+:O 638,901,19,89,-36,89 2 0326 -- Odieresis
+char214 "
+char215 479,506,0,97,9,89 0 0327 -- multiply
+/O 638,737,19,142,15,89 2 0330 -- Oslash
+char216 "
+`U 592,929,19,111,-51,89 2 0331 -- Ugrave
+char217 "
+'U 592,929,19,111,-51,89 2 0332 -- Uacute
+char218 "
+^U 592,929,19,111,-51,89 2 0333 -- Ucircumflex
+char219 "
+:U 592,901,19,111,-51,89 2 0334 -- Udieresis
+char220 "
+'Y 547,929,0,164,-87,89 2 0335 -- Yacute
+char221 "
+TP 547,718,0,87,-21,87 2 0336 -- Thorn
+char222 "
+ss 501,728,15,88,-5,88 2 0337 -- germandbls
+char223 "
+`a 456,734,15,52,0,52 2 0340 -- agrave
+char224 "
+'a 456,734,15,75,0,75 2 0341 -- aacute
+char225 "
+^a 456,734,15,52,0,52 2 0342 -- acircumflex
+char226 "
+~a 456,722,15,80,0,80 2 0343 -- atilde
+char227 "
+:a 456,706,15,52,0,52 2 0344 -- adieresis
+char228 "
+oa 456,756,15,52,0,52 2 0345 -- aring
+char229 "
+ae 729,538,15,67,0,67 0 0346 -- ae
+char230 "
+,c 410,538,225,94,-11,89 1 0347 -- ccedilla
+char231 "
+`e 456,734,15,68,-19,68 2 0350 -- egrave
+char232 "
+'e 456,734,15,75,-19,75 2 0351 -- eacute
+char233 "
+^e 456,734,15,68,-19,68 2 0352 -- ecircumflex
+char234 "
+:e 456,706,15,68,-19,68 2 0353 -- edieresis
+char235 "
+`i 228,734,0,76,-28,76 2 0354 -- igrave
+char236 "
+'i 228,734,0,189,-28,89 2 0355 -- iacute
+char237 "
+^i 228,734,0,159,-28,89 2 0356 -- icircumflex
+char238 "
+:i 228,706,0,163,-28,89 2 0357 -- idieresis
+char239 "
+Sd 456,737,15,100,-17,89 2 0360 -- eth
+char240 "
+~n 456,722,0,80,-3,80 2 0361 -- ntilde
+char241 "
+`o 456,734,14,73,-18,73 2 0362 -- ograve
+char242 "
+'o 456,734,14,75,-18,75 2 0363 -- oacute
+char243 "
+^o 456,734,14,73,-18,73 2 0364 -- ocircumflex
+char244 "
+~o 456,722,14,88,-18,88 2 0365 -- otilde
+char245 "
+:o 456,706,14,73,-18,73 2 0366 -- odieresis
+char246 "
+char247 479,524,19,68,-20,68 0 0367 -- divide
+/o 501,545,22,80,26,80 0 0370 -- oslash
+char248 "
+`u 456,734,15,86,-27,86 2 0371 -- ugrave
+char249 "
+'u 456,734,15,86,-27,86 2 0372 -- uacute
+char250 "
+^u 456,734,15,86,-27,86 2 0373 -- ucircumflex
+char251 "
+:u 456,706,15,86,-27,86 2 0374 -- udieresis
+char252 "
+'y 410,734,214,132,38,89 3 0375 -- yacute
+char253 "
+Tp 456,718,207,73,39,73 3 0376 -- thorn
+char254 "
+:y 410,706,214,132,38,89 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/HNR b/font/devps/HNR
new file mode 100644
index 000000000..ad7dc044c
--- /dev/null
+++ b/font/devps/HNR
@@ -0,0 +1,616 @@
+name HNR
+internalname Helvetica-Narrow
+spacewidth 228
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -32
+A w -32
+A v -32
+A u -24
+A Y -81
+A W -40
+A V -56
+A U -40
+A T -97
+A Q -24
+A O -24
+A G -24
+A C -24
+B . -15
+B , -15
+B U -7
+C . -24
+C , -24
+D . -56
+D , -56
+D Y -73
+D W -32
+D V -56
+D A -32
+F r -36
+F . -122
+F o -24
+F e -24
+F , -122
+F a -40
+F A -65
+J u -15
+J . -24
+J , -24
+J a -15
+J A -15
+K y -40
+K u -24
+K o -32
+K e -32
+K O -40
+L y -24
+L ' -130
+L rq -114
+L Y -114
+L W -56
+L V -89
+L T -89
+O . -32
+O , -32
+O Y -56
+O X -48
+O W -24
+O V -40
+O T -32
+O A -15
+P . -147
+P o -40
+P e -40
+P , -147
+P a -32
+P A -97
+Q U -7
+R Y -40
+R W -24
+R V -40
+R U -32
+R T -24
+R O -15
+S . -15
+S , -15
+T y -97
+T w -97
+T u -97
+T ; -15
+T r -97
+T . -97
+T o -97
+T - -114
+T hy -114
+T char173 -114
+T e -97
+T , -97
+T : -15
+T a -97
+T O -32
+T A -97
+U . -32
+U , -32
+U A -32
+V u -56
+V ; -32
+V . -102
+V o -65
+V - -65
+V hy -65
+V char173 -65
+V e -65
+V , -102
+V : -32
+V a -56
+V O -32
+V G -32
+V A -65
+W y -15
+W u -24
+W . -65
+W o -24
+W - -32
+W hy -32
+W char173 -32
+W e -24
+W , -65
+W a -32
+W O -15
+W A -40
+Y u -89
+Y ; -48
+Y . -114
+Y o -114
+Y i -15
+Y - -114
+Y hy -114
+Y char173 -114
+Y e -114
+Y , -114
+Y : -48
+Y a -114
+Y O -69
+Y A -89
+a y -24
+a w -15
+a v -15
+b y -15
+b v -15
+b u -15
+b . -32
+b l -15
+b , -32
+b b -7
+c k -15
+c , -11
+, ' -81
+, rq -81
+e y -15
+e x -24
+e w -15
+e v -24
+e . -11
+e , -11
+f ' 41
+f rq 49
+f . -24
+f o -24
+f e -24
+f .i -22
+f , -24
+f a -24
+g r -7
+h y -24
+k o -15
+k e -15
+m y -11
+m u -7
+n y -11
+n v -15
+n u -7
+o y -24
+o x -24
+o w -11
+o v -11
+o . -32
+o , -32
+/o z -44
+char248 z -44
+/o y -56
+char248 y -56
+/o x -69
+char248 x -69
+/o w -56
+char248 w -56
+/o v -56
+char248 v -56
+/o u -44
+char248 u -44
+/o t -44
+char248 t -44
+/o s -44
+char248 s -44
+/o r -44
+char248 r -44
+/o q -44
+char248 q -44
+/o . -77
+char248 . -77
+/o p -44
+char248 p -44
+/o o -44
+char248 o -44
+/o n -44
+char248 n -44
+/o m -44
+char248 m -44
+/o l -44
+char248 l -44
+/o k -44
+char248 k -44
+/o j -44
+char248 j -44
+/o i -44
+char248 i -44
+/o h -44
+char248 h -44
+/o g -44
+char248 g -44
+/o f -44
+char248 f -44
+/o e -44
+char248 e -44
+/o d -44
+char248 d -44
+/o , -77
+char248 , -77
+/o c -44
+char248 c -44
+/o b -44
+char248 b -44
+/o a -44
+char248 a -44
+p y -24
+p . -28
+p , -28
+. ' -81
+. rq -81
+` ` -46
+` oq -46
+oq ` -46
+oq oq -46
+' s -40
+' r -40
+' ' -46
+' d -40
+r y 25
+r v 25
+r u 12
+r t 33
+r ; 25
+r . -40
+r p 25
+r n 21
+r m 21
+r l 12
+r k 12
+r i 12
+r , -40
+r : 25
+r a -7
+s w -24
+s . -11
+s , -11
+v . -65
+v o -20
+v e -20
+v , -65
+v a -20
+w . -48
+w o -7
+w e -7
+w , -48
+w a -11
+x e -24
+y . -81
+y o -15
+y e -15
+y , -81
+y a -15
+z o -11
+z e -11
+charset
+ha 385,688 2 0000 -- asciicircum
+ti 479,326 0 0001 -- asciitilde
+vS 547,929,19 2 0002 -- Scaron
+vZ 501,929 2 0003 -- Zcaron
+vs 410,734,15 2 0004 -- scaron
+vz 410,734 2 0005 -- zcaron
+:Y 547,901 2 0006 -- Ydieresis
+tm 820,718 2 0007 -- trademark
+aq 157,718 2 0010 -- quotesingle
+space 228 0 0040
+! 228,718 2 0041 -- exclam
+" 291,718 2 0042 -- quotedbl
+# 456,688 2 0043 -- numbersign
+sh "
+$ 456,775,115 2 0044 -- dollar
+Do "
+% 729,703,19 2 0045 -- percent
+& 547,718,15 2 0046 -- ampersand
+' 182,718 2 0047 -- quoteright
+( 273,733,207 3 0050 -- parenleft
+) 273,733,207 3 0051 -- parenright
+* 319,718 2 0052 -- asterisk
++ 479,505 0 0053 -- plus
+, 228,106,147 0 0054 -- comma
+- 273,322 0 0055 -- hyphen
+hy "
+char173 "
+. 228,106 0 0056 -- period
+/ 228,737,19 2 0057 -- slash
+sl "
+0 456,703,19 2 0060 -- zero
+1 456,703 2 0061 -- one
+2 456,703 2 0062 -- two
+3 456,703,19 2 0063 -- three
+4 456,703 2 0064 -- four
+5 456,688,19 2 0065 -- five
+6 456,703,19 2 0066 -- six
+7 456,688 2 0067 -- seven
+8 456,703,19 2 0070 -- eight
+9 456,703,19 2 0071 -- nine
+: 228,516 0 0072 -- colon
+; 228,516,147 0 0073 -- semicolon
+< 479,495 0 0074 -- less
+= 479,390 0 0075 -- equal
+> 479,495 0 0076 -- greater
+? 456,727 2 0077 -- question
+@ 832,737,19 2 0100 -- at
+at "
+A 547,718 2 0101 -- A
+B 547,718 2 0102 -- B
+C 592,737,19 2 0103 -- C
+D 592,718 2 0104 -- D
+E 547,718 2 0105 -- E
+F 501,718 2 0106 -- F
+G 638,737,19 2 0107 -- G
+H 592,718 2 0110 -- H
+I 228,718 2 0111 -- I
+J 410,718,19 2 0112 -- J
+K 547,718 2 0113 -- K
+L 456,718 2 0114 -- L
+M 683,718 2 0115 -- M
+N 592,718 2 0116 -- N
+O 638,737,19 2 0117 -- O
+P 547,718 2 0120 -- P
+Q 638,737,56 2 0121 -- Q
+R 592,718 2 0122 -- R
+S 547,737,19 2 0123 -- S
+T 501,718 2 0124 -- T
+U 592,718,19 2 0125 -- U
+V 547,718 2 0126 -- V
+W 774,718 2 0127 -- W
+X 547,718 2 0130 -- X
+Y 547,718 2 0131 -- Y
+Z 501,718 2 0132 -- Z
+[ 228,722,196 2 0133 -- bracketleft
+lB "
+\ 228,737,19 2 0134 -- backslash
+rs "
+] 228,722,196 2 0135 -- bracketright
+rB "
+a^ 273,734 2 0136 -- circumflex
+^ "
+_ 456,0,125 0 0137 -- underscore
+` 182,725 2 0140 -- quoteleft
+oq "
+a 456,538,15 0 0141 -- a
+b 456,718,15 2 0142 -- b
+c 410,538,15 0 0143 -- c
+d 456,718,15 2 0144 -- d
+e 456,538,15 0 0145 -- e
+f 228,728 2 0146 -- f
+g 456,538,220 1 0147 -- g
+h 456,718 2 0150 -- h
+i 182,718 2 0151 -- i
+j 182,718,210 3 0152 -- j
+k 410,718 2 0153 -- k
+l 182,718 2 0154 -- l
+m 683,538 0 0155 -- m
+n 456,538 0 0156 -- n
+o 456,538,14 0 0157 -- o
+p 456,538,207 1 0160 -- p
+q 456,538,207 1 0161 -- q
+r 273,538 0 0162 -- r
+s 410,538,15 0 0163 -- s
+t 228,669,7 2 0164 -- t
+u 456,523,15 0 0165 -- u
+v 410,523 0 0166 -- v
+w 592,523 0 0167 -- w
+x 410,523 0 0170 -- x
+y 410,523,214 1 0171 -- y
+z 410,523 0 0172 -- z
+lC 274,722,196 2 0173 -- braceleft
+{ "
+ba 213,737,19 2 0174 -- bar
+| "
+rC 274,722,196 2 0175 -- braceright
+} "
+a~ 273,722 2 0176 -- tilde
+~ "
+bq 182,106,149 0 0200 -- quotesinglbase
+Fo 456,446 0 0201 -- guillemotleft
+char171 "
+Fc 456,446 0 0202 -- guillemotright
+char187 "
+bu 287,517 0 0203 -- bullet
+Fn 456,737,207 3 0204 -- florin
+f/ 137,703,19 2 0205 -- fraction
+%0 820,703,19 2 0206 -- perthousand
+dg 456,718,159 2 0207 -- dagger
+dd 456,718,159 2 0210 -- daggerdbl
+en 456,313 0 0211 -- endash
+em 820,313 0 0212 -- emdash
+fi 410,728 2 0214 -- fi
+fl 410,728 2 0215 -- fl
+.i 228,523 0 0220 -- dotlessi
+ga 273,734 2 0222 -- grave
+a" 273,734 2 0223 -- hungarumlaut
+a. 273,706 2 0224 -- dotaccent
+ab 273,731 2 0225 -- breve
+ah 273,734 2 0226 -- caron
+ao 273,756 2 0227 -- ring
+ho 273,0,225 1 0230 -- ogonek
+lq 273,725 2 0231 -- quotedblleft
+rq 273,718 2 0232 -- quotedblright
+oe 774,538,15 0 0233 -- oe
+/l 182,718 2 0234 -- lslash
+Bq 273,106,149 0 0235 -- quotedblbase
+OE 820,737,19 2 0236 -- OE
+/L 456,718 2 0237 -- Lslash
+r! 273,523,195 0 0241 -- exclamdown
+char161 "
+ct 456,623,115 0 0242 -- cent
+char162 "
+Po 456,718,16 2 0243 -- sterling
+char163 "
+Cs 456,603 0 0244 -- currency
+char164 "
+Ye 456,688 2 0245 -- yen
+char165 "
+bb 213,737,19 2 0246 -- brokenbar
+char166 "
+sc 456,737,191 2 0247 -- section
+char167 "
+ad 273,706 2 0250 -- dieresis
+char168 "
+co 604,737,19 2 0251 -- copyright
+char169 "
+Of 303,737 2 0252 -- ordfeminine
+char170 "
+fo 273,446 0 0253 -- guilsinglleft
+no 479,390 0 0254 -- logicalnot
+char172 "
+\- 479,289 0 0255 -- minus
+rg 604,737,19 2 0256 -- registered
+char174 "
+a- 273,684 2 0257 -- macron
+char175 "
+de 328,703 2 0260 -- degree
+char176 "
+char177 479,506 0 0261 -- plusminus
+S2 273,703 2 0262 -- twosuperior
+char178 "
+S3 273,703 2 0263 -- threesuperior
+char179 "
+aa 273,734 2 0264 -- acute
+char180 "
+char181 456,523,207 1 0265 -- mu
+ps 440,718,173 2 0266 -- paragraph
+char182 "
+char183 228,315 0 0267 -- periodcentered
+ac 273,0,225 1 0270 -- cedilla
+char184 "
+S1 273,703 2 0271 -- onesuperior
+char185 "
+Om 299,737 2 0272 -- ordmasculine
+char186 "
+fc 273,446 0 0273 -- guilsinglright
+14 684,703,19 2 0274 -- onequarter
+char188 "
+12 684,703,19 2 0275 -- onehalf
+char189 "
+34 684,703,19 2 0276 -- threequarters
+char190 "
+r? 501,525,201 0 0277 -- questiondown
+char191 "
+`A 547,929 2 0300 -- Agrave
+char192 "
+'A 547,929 2 0301 -- Aacute
+char193 "
+^A 547,929 2 0302 -- Acircumflex
+char194 "
+~A 547,917 2 0303 -- Atilde
+char195 "
+:A 547,901 2 0304 -- Adieresis
+char196 "
+oA 547,931 2 0305 -- Aring
+char197 "
+AE 820,718 2 0306 -- AE
+char198 "
+,C 592,737,225 3 0307 -- Ccedilla
+char199 "
+`E 547,929 2 0310 -- Egrave
+char200 "
+'E 547,929 2 0311 -- Eacute
+char201 "
+^E 547,929 2 0312 -- Ecircumflex
+char202 "
+:E 547,901 2 0313 -- Edieresis
+char203 "
+`I 228,929 2 0314 -- Igrave
+char204 "
+'I 228,929 2 0315 -- Iacute
+char205 "
+^I 228,929 2 0316 -- Icircumflex
+char206 "
+:I 228,901 2 0317 -- Idieresis
+char207 "
+-D 592,718 2 0320 -- Eth
+char208 "
+~N 592,917 2 0321 -- Ntilde
+char209 "
+`O 638,929,19 2 0322 -- Ograve
+char210 "
+'O 638,929,19 2 0323 -- Oacute
+char211 "
+^O 638,929,19 2 0324 -- Ocircumflex
+char212 "
+~O 638,917,19 2 0325 -- Otilde
+char213 "
+:O 638,901,19 2 0326 -- Odieresis
+char214 "
+char215 479,506 0 0327 -- multiply
+/O 638,737,19 2 0330 -- Oslash
+char216 "
+`U 592,929,19 2 0331 -- Ugrave
+char217 "
+'U 592,929,19 2 0332 -- Uacute
+char218 "
+^U 592,929,19 2 0333 -- Ucircumflex
+char219 "
+:U 592,901,19 2 0334 -- Udieresis
+char220 "
+'Y 547,929 2 0335 -- Yacute
+char221 "
+TP 547,718 2 0336 -- Thorn
+char222 "
+ss 501,728,15 2 0337 -- germandbls
+char223 "
+`a 456,734,15 2 0340 -- agrave
+char224 "
+'a 456,734,15 2 0341 -- aacute
+char225 "
+^a 456,734,15 2 0342 -- acircumflex
+char226 "
+~a 456,722,15 2 0343 -- atilde
+char227 "
+:a 456,706,15 2 0344 -- adieresis
+char228 "
+oa 456,756,15 2 0345 -- aring
+char229 "
+ae 729,538,15 0 0346 -- ae
+char230 "
+,c 410,538,225 1 0347 -- ccedilla
+char231 "
+`e 456,734,15 2 0350 -- egrave
+char232 "
+'e 456,734,15 2 0351 -- eacute
+char233 "
+^e 456,734,15 2 0352 -- ecircumflex
+char234 "
+:e 456,706,15 2 0353 -- edieresis
+char235 "
+`i 228,734 2 0354 -- igrave
+char236 "
+'i 228,734 2 0355 -- iacute
+char237 "
+^i 228,734 2 0356 -- icircumflex
+char238 "
+:i 228,706 2 0357 -- idieresis
+char239 "
+Sd 456,737,15 2 0360 -- eth
+char240 "
+~n 456,722 2 0361 -- ntilde
+char241 "
+`o 456,734,14 2 0362 -- ograve
+char242 "
+'o 456,734,14 2 0363 -- oacute
+char243 "
+^o 456,734,14 2 0364 -- ocircumflex
+char244 "
+~o 456,722,14 2 0365 -- otilde
+char245 "
+:o 456,706,14 2 0366 -- odieresis
+char246 "
+char247 479,524,19 0 0367 -- divide
+/o 501,545,22 0 0370 -- oslash
+char248 "
+`u 456,734,15 2 0371 -- ugrave
+char249 "
+'u 456,734,15 2 0372 -- uacute
+char250 "
+^u 456,734,15 2 0373 -- ucircumflex
+char251 "
+:u 456,706,15 2 0374 -- udieresis
+char252 "
+'y 410,734,214 3 0375 -- yacute
+char253 "
+Tp 456,718,207 3 0376 -- thorn
+char254 "
+:y 410,706,214 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/HR b/font/devps/HR
new file mode 100644
index 000000000..2a87c132d
--- /dev/null
+++ b/font/devps/HR
@@ -0,0 +1,616 @@
+name HR
+internalname Helvetica
+spacewidth 278
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -40
+A w -40
+A v -40
+A u -30
+A Y -100
+A W -50
+A V -70
+A U -50
+A T -120
+A Q -30
+A O -30
+A G -30
+A C -30
+B . -20
+B , -20
+B U -10
+C . -30
+C , -30
+D . -70
+D , -70
+D Y -90
+D W -40
+D V -70
+D A -40
+F r -45
+F . -150
+F o -30
+F e -30
+F , -150
+F a -50
+F A -80
+J u -20
+J . -30
+J , -30
+J a -20
+J A -20
+K y -50
+K u -30
+K o -40
+K e -40
+K O -50
+L y -30
+L ' -160
+L rq -140
+L Y -140
+L W -70
+L V -110
+L T -110
+O . -40
+O , -40
+O Y -70
+O X -60
+O W -30
+O V -50
+O T -40
+O A -20
+P . -180
+P o -50
+P e -50
+P , -180
+P a -40
+P A -120
+Q U -10
+R Y -50
+R W -30
+R V -50
+R U -40
+R T -30
+R O -20
+S . -20
+S , -20
+T y -120
+T w -120
+T u -120
+T ; -20
+T r -120
+T . -120
+T o -120
+T - -140
+T hy -140
+T char173 -140
+T e -120
+T , -120
+T : -20
+T a -120
+T O -40
+T A -120
+U . -40
+U , -40
+U A -40
+V u -70
+V ; -40
+V . -125
+V o -80
+V - -80
+V hy -80
+V char173 -80
+V e -80
+V , -125
+V : -40
+V a -70
+V O -40
+V G -40
+V A -80
+W y -20
+W u -30
+W . -80
+W o -30
+W - -40
+W hy -40
+W char173 -40
+W e -30
+W , -80
+W a -40
+W O -20
+W A -50
+Y u -110
+Y ; -60
+Y . -140
+Y o -140
+Y i -20
+Y - -140
+Y hy -140
+Y char173 -140
+Y e -140
+Y , -140
+Y : -60
+Y a -140
+Y O -85
+Y A -110
+a y -30
+a w -20
+a v -20
+b y -20
+b v -20
+b u -20
+b . -40
+b l -20
+b , -40
+b b -10
+c k -20
+c , -15
+, ' -100
+, rq -100
+e y -20
+e x -30
+e w -20
+e v -30
+e . -15
+e , -15
+f ' 50
+f rq 60
+f . -30
+f o -30
+f e -30
+f .i -28
+f , -30
+f a -30
+g r -10
+h y -30
+k o -20
+k e -20
+m y -15
+m u -10
+n y -15
+n v -20
+n u -10
+o y -30
+o x -30
+o w -15
+o v -15
+o . -40
+o , -40
+/o z -55
+char248 z -55
+/o y -70
+char248 y -70
+/o x -85
+char248 x -85
+/o w -70
+char248 w -70
+/o v -70
+char248 v -70
+/o u -55
+char248 u -55
+/o t -55
+char248 t -55
+/o s -55
+char248 s -55
+/o r -55
+char248 r -55
+/o q -55
+char248 q -55
+/o . -95
+char248 . -95
+/o p -55
+char248 p -55
+/o o -55
+char248 o -55
+/o n -55
+char248 n -55
+/o m -55
+char248 m -55
+/o l -55
+char248 l -55
+/o k -55
+char248 k -55
+/o j -55
+char248 j -55
+/o i -55
+char248 i -55
+/o h -55
+char248 h -55
+/o g -55
+char248 g -55
+/o f -55
+char248 f -55
+/o e -55
+char248 e -55
+/o d -55
+char248 d -55
+/o , -95
+char248 , -95
+/o c -55
+char248 c -55
+/o b -55
+char248 b -55
+/o a -55
+char248 a -55
+p y -30
+p . -35
+p , -35
+. ' -100
+. rq -100
+` ` -57
+` oq -57
+oq ` -57
+oq oq -57
+' s -50
+' r -50
+' ' -57
+' d -50
+r y 30
+r v 30
+r u 15
+r t 40
+r ; 30
+r . -50
+r p 30
+r n 25
+r m 25
+r l 15
+r k 15
+r i 15
+r , -50
+r : 30
+r a -10
+s w -30
+s . -15
+s , -15
+v . -80
+v o -25
+v e -25
+v , -80
+v a -25
+w . -60
+w o -10
+w e -10
+w , -60
+w a -15
+x e -30
+y . -100
+y o -20
+y e -20
+y , -100
+y a -20
+z o -15
+z e -15
+charset
+ha 469,688 2 0000 -- asciicircum
+ti 584,326 0 0001 -- asciitilde
+vS 667,929,19 2 0002 -- Scaron
+vZ 611,929 2 0003 -- Zcaron
+vs 500,734,15 2 0004 -- scaron
+vz 500,734 2 0005 -- zcaron
+:Y 667,901 2 0006 -- Ydieresis
+tm 1000,718 2 0007 -- trademark
+aq 191,718 2 0010 -- quotesingle
+space 278 0 0040
+! 278,718 2 0041 -- exclam
+" 355,718 2 0042 -- quotedbl
+# 556,688 2 0043 -- numbersign
+sh "
+$ 556,775,115 2 0044 -- dollar
+Do "
+% 889,703,19 2 0045 -- percent
+& 667,718,15 2 0046 -- ampersand
+' 222,718 2 0047 -- quoteright
+( 333,733,207 3 0050 -- parenleft
+) 333,733,207 3 0051 -- parenright
+* 389,718 2 0052 -- asterisk
++ 584,505 0 0053 -- plus
+, 278,106,147 0 0054 -- comma
+- 333,322 0 0055 -- hyphen
+hy "
+char173 "
+. 278,106 0 0056 -- period
+/ 278,737,19 2 0057 -- slash
+sl "
+0 556,703,19 2 0060 -- zero
+1 556,703 2 0061 -- one
+2 556,703 2 0062 -- two
+3 556,703,19 2 0063 -- three
+4 556,703 2 0064 -- four
+5 556,688,19 2 0065 -- five
+6 556,703,19 2 0066 -- six
+7 556,688 2 0067 -- seven
+8 556,703,19 2 0070 -- eight
+9 556,703,19 2 0071 -- nine
+: 278,516 0 0072 -- colon
+; 278,516,147 0 0073 -- semicolon
+< 584,495 0 0074 -- less
+= 584,390 0 0075 -- equal
+> 584,495 0 0076 -- greater
+? 556,727 2 0077 -- question
+@ 1015,737,19 2 0100 -- at
+at "
+A 667,718 2 0101 -- A
+B 667,718 2 0102 -- B
+C 722,737,19 2 0103 -- C
+D 722,718 2 0104 -- D
+E 667,718 2 0105 -- E
+F 611,718 2 0106 -- F
+G 778,737,19 2 0107 -- G
+H 722,718 2 0110 -- H
+I 278,718 2 0111 -- I
+J 500,718,19 2 0112 -- J
+K 667,718 2 0113 -- K
+L 556,718 2 0114 -- L
+M 833,718 2 0115 -- M
+N 722,718 2 0116 -- N
+O 778,737,19 2 0117 -- O
+P 667,718 2 0120 -- P
+Q 778,737,56 2 0121 -- Q
+R 722,718 2 0122 -- R
+S 667,737,19 2 0123 -- S
+T 611,718 2 0124 -- T
+U 722,718,19 2 0125 -- U
+V 667,718 2 0126 -- V
+W 944,718 2 0127 -- W
+X 667,718 2 0130 -- X
+Y 667,718 2 0131 -- Y
+Z 611,718 2 0132 -- Z
+[ 278,722,196 2 0133 -- bracketleft
+lB "
+\ 278,737,19 2 0134 -- backslash
+rs "
+] 278,722,196 2 0135 -- bracketright
+rB "
+a^ 333,734 2 0136 -- circumflex
+^ "
+_ 556,0,125 0 0137 -- underscore
+` 222,725 2 0140 -- quoteleft
+oq "
+a 556,538,15 0 0141 -- a
+b 556,718,15 2 0142 -- b
+c 500,538,15 0 0143 -- c
+d 556,718,15 2 0144 -- d
+e 556,538,15 0 0145 -- e
+f 278,728 2 0146 -- f
+g 556,538,220 1 0147 -- g
+h 556,718 2 0150 -- h
+i 222,718 2 0151 -- i
+j 222,718,210 3 0152 -- j
+k 500,718 2 0153 -- k
+l 222,718 2 0154 -- l
+m 833,538 0 0155 -- m
+n 556,538 0 0156 -- n
+o 556,538,14 0 0157 -- o
+p 556,538,207 1 0160 -- p
+q 556,538,207 1 0161 -- q
+r 333,538 0 0162 -- r
+s 500,538,15 0 0163 -- s
+t 278,669,7 2 0164 -- t
+u 556,523,15 0 0165 -- u
+v 500,523 0 0166 -- v
+w 722,523 0 0167 -- w
+x 500,523 0 0170 -- x
+y 500,523,214 1 0171 -- y
+z 500,523 0 0172 -- z
+lC 334,722,196 2 0173 -- braceleft
+{ "
+ba 260,737,19 2 0174 -- bar
+| "
+rC 334,722,196 2 0175 -- braceright
+} "
+a~ 333,722 2 0176 -- tilde
+~ "
+bq 222,106,149 0 0200 -- quotesinglbase
+Fo 556,446 0 0201 -- guillemotleft
+char171 "
+Fc 556,446 0 0202 -- guillemotright
+char187 "
+bu 350,517 0 0203 -- bullet
+Fn 556,737,207 3 0204 -- florin
+f/ 167,703,19 2 0205 -- fraction
+%0 1000,703,19 2 0206 -- perthousand
+dg 556,718,159 2 0207 -- dagger
+dd 556,718,159 2 0210 -- daggerdbl
+en 556,313 0 0211 -- endash
+em 1000,313 0 0212 -- emdash
+fi 500,728 2 0214 -- fi
+fl 500,728 2 0215 -- fl
+.i 278,523 0 0220 -- dotlessi
+ga 333,734 2 0222 -- grave
+a" 333,734 2 0223 -- hungarumlaut
+a. 333,706 2 0224 -- dotaccent
+ab 333,731 2 0225 -- breve
+ah 333,734 2 0226 -- caron
+ao 333,756 2 0227 -- ring
+ho 333,0,225 1 0230 -- ogonek
+lq 333,725 2 0231 -- quotedblleft
+rq 333,718 2 0232 -- quotedblright
+oe 944,538,15 0 0233 -- oe
+/l 222,718 2 0234 -- lslash
+Bq 333,106,149 0 0235 -- quotedblbase
+OE 1000,737,19 2 0236 -- OE
+/L 556,718 2 0237 -- Lslash
+r! 333,523,195 0 0241 -- exclamdown
+char161 "
+ct 556,623,115 0 0242 -- cent
+char162 "
+Po 556,718,16 2 0243 -- sterling
+char163 "
+Cs 556,603 0 0244 -- currency
+char164 "
+Ye 556,688 2 0245 -- yen
+char165 "
+bb 260,737,19 2 0246 -- brokenbar
+char166 "
+sc 556,737,191 2 0247 -- section
+char167 "
+ad 333,706 2 0250 -- dieresis
+char168 "
+co 737,737,19 2 0251 -- copyright
+char169 "
+Of 370,737 2 0252 -- ordfeminine
+char170 "
+fo 333,446 0 0253 -- guilsinglleft
+no 584,390 0 0254 -- logicalnot
+char172 "
+\- 584,289 0 0255 -- minus
+rg 737,737,19 2 0256 -- registered
+char174 "
+a- 333,684 2 0257 -- macron
+char175 "
+de 400,703 2 0260 -- degree
+char176 "
+char177 584,506 0 0261 -- plusminus
+S2 333,703 2 0262 -- twosuperior
+char178 "
+S3 333,703 2 0263 -- threesuperior
+char179 "
+aa 333,734 2 0264 -- acute
+char180 "
+char181 556,523,207 1 0265 -- mu
+ps 537,718,173 2 0266 -- paragraph
+char182 "
+char183 278,315 0 0267 -- periodcentered
+ac 333,0,225 1 0270 -- cedilla
+char184 "
+S1 333,703 2 0271 -- onesuperior
+char185 "
+Om 365,737 2 0272 -- ordmasculine
+char186 "
+fc 333,446 0 0273 -- guilsinglright
+14 834,703,19 2 0274 -- onequarter
+char188 "
+12 834,703,19 2 0275 -- onehalf
+char189 "
+34 834,703,19 2 0276 -- threequarters
+char190 "
+r? 611,525,201 0 0277 -- questiondown
+char191 "
+`A 667,929 2 0300 -- Agrave
+char192 "
+'A 667,929 2 0301 -- Aacute
+char193 "
+^A 667,929 2 0302 -- Acircumflex
+char194 "
+~A 667,917 2 0303 -- Atilde
+char195 "
+:A 667,901 2 0304 -- Adieresis
+char196 "
+oA 667,931 2 0305 -- Aring
+char197 "
+AE 1000,718 2 0306 -- AE
+char198 "
+,C 722,737,225 3 0307 -- Ccedilla
+char199 "
+`E 667,929 2 0310 -- Egrave
+char200 "
+'E 667,929 2 0311 -- Eacute
+char201 "
+^E 667,929 2 0312 -- Ecircumflex
+char202 "
+:E 667,901 2 0313 -- Edieresis
+char203 "
+`I 278,929 2 0314 -- Igrave
+char204 "
+'I 278,929 2 0315 -- Iacute
+char205 "
+^I 278,929 2 0316 -- Icircumflex
+char206 "
+:I 278,901 2 0317 -- Idieresis
+char207 "
+-D 722,718 2 0320 -- Eth
+char208 "
+~N 722,917 2 0321 -- Ntilde
+char209 "
+`O 778,929,19 2 0322 -- Ograve
+char210 "
+'O 778,929,19 2 0323 -- Oacute
+char211 "
+^O 778,929,19 2 0324 -- Ocircumflex
+char212 "
+~O 778,917,19 2 0325 -- Otilde
+char213 "
+:O 778,901,19 2 0326 -- Odieresis
+char214 "
+char215 584,506 0 0327 -- multiply
+/O 778,737,19 2 0330 -- Oslash
+char216 "
+`U 722,929,19 2 0331 -- Ugrave
+char217 "
+'U 722,929,19 2 0332 -- Uacute
+char218 "
+^U 722,929,19 2 0333 -- Ucircumflex
+char219 "
+:U 722,901,19 2 0334 -- Udieresis
+char220 "
+'Y 667,929 2 0335 -- Yacute
+char221 "
+TP 667,718 2 0336 -- Thorn
+char222 "
+ss 611,728,15 2 0337 -- germandbls
+char223 "
+`a 556,734,15 2 0340 -- agrave
+char224 "
+'a 556,734,15 2 0341 -- aacute
+char225 "
+^a 556,734,15 2 0342 -- acircumflex
+char226 "
+~a 556,722,15 2 0343 -- atilde
+char227 "
+:a 556,706,15 2 0344 -- adieresis
+char228 "
+oa 556,756,15 2 0345 -- aring
+char229 "
+ae 889,538,15 0 0346 -- ae
+char230 "
+,c 500,538,225 1 0347 -- ccedilla
+char231 "
+`e 556,734,15 2 0350 -- egrave
+char232 "
+'e 556,734,15 2 0351 -- eacute
+char233 "
+^e 556,734,15 2 0352 -- ecircumflex
+char234 "
+:e 556,706,15 2 0353 -- edieresis
+char235 "
+`i 278,734 2 0354 -- igrave
+char236 "
+'i 278,734 2 0355 -- iacute
+char237 "
+^i 278,734 2 0356 -- icircumflex
+char238 "
+:i 278,706 2 0357 -- idieresis
+char239 "
+Sd 556,737,15 2 0360 -- eth
+char240 "
+~n 556,722 2 0361 -- ntilde
+char241 "
+`o 556,734,14 2 0362 -- ograve
+char242 "
+'o 556,734,14 2 0363 -- oacute
+char243 "
+^o 556,734,14 2 0364 -- ocircumflex
+char244 "
+~o 556,722,14 2 0365 -- otilde
+char245 "
+:o 556,706,14 2 0366 -- odieresis
+char246 "
+char247 584,524,19 0 0367 -- divide
+/o 611,545,22 0 0370 -- oslash
+char248 "
+`u 556,734,15 2 0371 -- ugrave
+char249 "
+'u 556,734,15 2 0372 -- uacute
+char250 "
+^u 556,734,15 2 0373 -- ucircumflex
+char251 "
+:u 556,706,15 2 0374 -- udieresis
+char252 "
+'y 500,734,214 3 0375 -- yacute
+char253 "
+Tp 556,718,207 3 0376 -- thorn
+char254 "
+:y 500,706,214 3 0377 -- ydieresis
+char255 "
diff --git a/devps/Makefile.sub b/font/devps/Makefile.sub
index a46693f96..a40f63f79 100644
--- a/devps/Makefile.sub
+++ b/font/devps/Makefile.sub
@@ -1,8 +1,8 @@
DEV=ps
DISTFILES=text.enc download \
- S ZD ZDR SS AB ABI AI AR BMB BMBI BMI BMR \
- CB CBI CI CR HB HBI HI HR HNB HNBI HNI HNR \
- NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI
+ S ZD ZDR SS AB ABI AI AR BMB BMBI BMI BMR \
+ CB CBI CI CR HB HBI HI HR HNB HNBI HNI HNR \
+ NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI
PSFILES=prologue symbolsl.pfa zapfdr.pfa
DEVGENFILES=generate/Makefile generate/afmname generate/dingbatsmap \
generate/dingbatsrmap generate/lgreekmap generate/symbol.sed \
diff --git a/font/devps/NB b/font/devps/NB
new file mode 100644
index 000000000..e5fb43604
--- /dev/null
+++ b/font/devps/NB
@@ -0,0 +1,446 @@
+name NB
+internalname NewCenturySchlbk-Bold
+spacewidth 287
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -74
+A w -74
+A v -74
+A ' -74
+A Y -92
+A W -74
+A V -92
+A T -55
+F . -111
+F , -111
+F A -74
+L y -55
+L ' -55
+L Y -92
+L W -74
+L V -92
+L T -55
+P . -129
+P , -129
+P A -74
+R y -18
+R Y -37
+R W -37
+R V -37
+T y -52
+T w -71
+T u -71
+T ; -55
+T s -62
+T r -62
+T . -92
+T o -92
+T i -25
+T - -92
+T hy -92
+T char173 -92
+T e -92
+T , -92
+T : -55
+T c -81
+T a -62
+T A -55
+V y -92
+V u -74
+V ; -74
+V r -74
+V . -129
+V o -92
+V i -44
+V - -92
+V hy -92
+V char173 -92
+V e -92
+V : -74
+V a -92
+V A -92
+W y -74
+W u -55
+W ; -37
+W r -55
+W . -111
+W o -55
+W i -37
+W - -37
+W hy -37
+W char173 -37
+W e -55
+W , -111
+W : -37
+W a -74
+W A -74
+Y v -81
+Y u -92
+Y ; -92
+Y q -111
+Y . -111
+Y p -81
+Y o -111
+Y i -44
+Y - -111
+Y hy -111
+Y char173 -111
+Y e -111
+Y , -111
+Y : -92
+Y a -111
+Y A -92
+f ' 94
+1 1 -55
+` ` -18
+` oq -18
+oq ` -18
+oq oq -18
+' t -18
+' s -37
+' ' -18
+r ' 55
+r . -74
+r - -18
+r hy -18
+r char173 -18
+r , -74
+v . -111
+v , -111
+w . -92
+w , -92
+y . -111
+y , -111
+charset
+ha 606,722 2 0000 -- asciicircum
+ti 606,347 0 0001 -- asciitilde
+vS 667,970,15 2 0002 -- Scaron
+vZ 667,970 2 0003 -- Zcaron
+vs 500,723,15 2 0004 -- scaron
+vz 537,723 2 0005 -- zcaron
+:Y 722,940 2 0006 -- Ydieresis
+tm 1000,722 2 0007 -- trademark
+aq 241,737 2 0010 -- quotesingle
+space 287 0 0040
+! 296,737,15 2 0041 -- exclam
+" 333,737 2 0042 -- quotedbl
+# 574,705 2 0043 -- numbersign
+sh "
+$ 574,801,140 2 0044 -- dollar
+Do "
+% 833,704,18 2 0045 -- percent
+& 852,737,15 2 0046 -- ampersand
+' 241,737 2 0047 -- quoteright
+( 389,737,122 2 0050 -- parenleft
+) 389,737,122 2 0051 -- parenright
+* 500,738 2 0052 -- asterisk
++ 606,514 0 0053 -- plus
+, 278,169,189 0 0054 -- comma
+- 333,309 0 0055 -- hyphen
+hy "
+char173 "
+. 278,172,15 0 0056 -- period
+/ 278,737,15 2 0057 -- slash
+sl "
+0 574,705,15 2 0060 -- zero
+1 574,705 2 0061 -- one
+2 574,705,4 2 0062 -- two
+3 574,705,15 2 0063 -- three
+4 574,705 2 0064 -- four
+5 574,705,15 2 0065 -- five
+6 574,705,15 2 0066 -- six
+7 574,705,15 2 0067 -- seven
+8 574,705,15 2 0070 -- eight
+9 574,705,15 2 0071 -- nine
+: 278,485,15 0 0072 -- colon
+; 278,485,189 0 0073 -- semicolon
+< 606,538,13 0 0074 -- less
+= 606,399 0 0075 -- equal
+> 606,538,13 0 0076 -- greater
+? 500,737,15 2 0077 -- question
+@ 747,737,15 2 0100 -- at
+at "
+A 759,737 2 0101 -- A
+B 778,722 2 0102 -- B
+C 778,737,15 2 0103 -- C
+D 833,722 2 0104 -- D
+E 759,722 2 0105 -- E
+F 722,722 2 0106 -- F
+G 833,737,15 2 0107 -- G
+H 870,722 2 0110 -- H
+I 444,722 2 0111 -- I
+J 648,722,15 2 0112 -- J
+K 815,722 2 0113 -- K
+L 722,722 2 0114 -- L
+M 981,722 2 0115 -- M
+N 833,722,8 2 0116 -- N
+O 833,737,15 2 0117 -- O
+P 759,722 2 0120 -- P
+Q 833,737,189 2 0121 -- Q
+R 815,722,15 2 0122 -- R
+S 667,737,15 2 0123 -- S
+T 722,722 2 0124 -- T
+U 833,722,15 2 0125 -- U
+V 759,722,15 2 0126 -- V
+W 981,722,15 2 0127 -- W
+X 722,722 2 0130 -- X
+Y 722,722 2 0131 -- Y
+Z 667,722 2 0132 -- Z
+[ 389,722,113 2 0133 -- bracketleft
+lB "
+\ 606,737 2 0134 -- backslash
+rs "
+] 389,722,113 2 0135 -- bracketright
+rB "
+a^ 333,723 2 0136 -- circumflex
+^ "
+_ 500,0,148 0 0137 -- underscore
+` 241,747 2 0140 -- quoteleft
+oq "
+a 611,485,15 0 0141 -- a
+b 648,737,15 2 0142 -- b
+c 556,485,15 0 0143 -- c
+d 667,737,15 2 0144 -- d
+e 574,485,15 0 0145 -- e
+f 389,737 2 0146 -- f
+g 611,536,205 1 0147 -- g
+h 685,737 2 0150 -- h
+i 370,737 2 0151 -- i
+j 352,737,205 3 0152 -- j
+k 667,737 2 0153 -- k
+l 352,737 2 0154 -- l
+m 963,485 0 0155 -- m
+n 685,485 0 0156 -- n
+o 611,485,15 0 0157 -- o
+p 667,485,205 1 0160 -- p
+q 648,485,205 1 0161 -- q
+r 519,485 0 0162 -- r
+s 500,485,15 0 0163 -- s
+t 426,675,15 2 0164 -- t
+u 685,475,15 0 0165 -- u
+v 611,475,8 0 0166 -- v
+w 889,475,8 0 0167 -- w
+x 611,475 0 0170 -- x
+y 611,475,207 1 0171 -- y
+z 537,475 0 0172 -- z
+lC 389,723,111 2 0173 -- braceleft
+{ "
+ba 606,737 2 0174 -- bar
+| "
+rC 389,723,111 2 0175 -- braceright
+} "
+a~ 333,704 2 0176 -- tilde
+~ "
+bq 241,169,189 0 0200 -- quotesinglbase
+Fo 500,405 0 0201 -- guillemotleft
+char171 "
+Fc 500,405 0 0202 -- guillemotright
+char187 "
+bu 606,511 0 0203 -- bullet
+Fn 574,737,205 3 0204 -- florin
+f/ 167,705 2 0205 -- fraction
+%0 1000,694,27 2 0206 -- perthousand
+dg 500,737,88 2 0207 -- dagger
+dd 500,736,89 2 0210 -- daggerdbl
+en 500,296 0 0211 -- endash
+em 1000,296 0 0212 -- emdash
+fi 685,737 2 0214 -- fi
+fl 685,737 2 0215 -- fl
+.i 370,475 0 0220 -- dotlessi
+ga 333,734 2 0222 -- grave
+a" 333,737 2 0223 -- hungarumlaut
+a. 333,693 2 0224 -- dotaccent
+ab 333,712 2 0225 -- breve
+ah 333,723 2 0226 -- caron
+ao 333,760 2 0227 -- ring
+ho 333,0,163 0 0230 -- ogonek
+lq 481,747 2 0231 -- quotedblleft
+rq 481,737 2 0232 -- quotedblright
+oe 907,485,15 0 0233 -- oe
+/l 352,737 2 0234 -- lslash
+Bq 481,169,189 0 0235 -- quotedblbase
+OE 1000,722 2 0236 -- OE
+/L 722,722 2 0237 -- Lslash
+r! 296,547,205 1 0241 -- exclamdown
+char161 "
+ct 574,566,108 0 0242 -- cent
+char162 "
+Po 574,705,15 2 0243 -- sterling
+char163 "
+Cs 574,591 0 0244 -- currency
+char164 "
+Ye 574,705 2 0245 -- yen
+char165 "
+bb 606,737 2 0246 -- brokenbar
+char166 "
+sc 500,737,86 2 0247 -- section
+char167 "
+ad 333,693 2 0250 -- dieresis
+char168 "
+co 747,737,15 2 0251 -- copyright
+char169 "
+Of 367,737 2 0252 -- ordfeminine
+char170 "
+fo 333,405 0 0253 -- guilsinglleft
+no 606,399 0 0254 -- logicalnot
+char172 "
+\- 606,302 0 0255 -- minus
+rg 747,737,15 2 0256 -- registered
+char174 "
+a- 333,663 0 0257 -- macron
+char175 "
+de 400,705 2 0260 -- degree
+char176 "
+char177 606,514 0 0261 -- plusminus
+S2 344,705 2 0262 -- twosuperior
+char178 "
+S3 344,705 2 0263 -- threesuperior
+char179 "
+aa 333,737 2 0264 -- acute
+char180 "
+char181 685,475,205 1 0265 -- mu
+ps 747,722 2 0266 -- paragraph
+char182 "
+char183 278,338 0 0267 -- periodcentered
+ac 333,0,221 1 0270 -- cedilla
+char184 "
+S1 344,705 2 0271 -- onesuperior
+char185 "
+Om 367,737 2 0272 -- ordmasculine
+char186 "
+fc 333,408 0 0273 -- guilsinglright
+14 861,705 2 0274 -- onequarter
+char188 "
+12 861,705,2 2 0275 -- onehalf
+char189 "
+34 861,705 2 0276 -- threequarters
+char190 "
+r? 500,547,205 1 0277 -- questiondown
+char191 "
+`A 759,981 2 0300 -- Agrave
+char192 "
+'A 759,984 2 0301 -- Aacute
+char193 "
+^A 759,970 2 0302 -- Acircumflex
+char194 "
+~A 759,951 2 0303 -- Atilde
+char195 "
+:A 759,940 2 0304 -- Adieresis
+char196 "
+oA 759,1007 2 0305 -- Aring
+char197 "
+AE 981,722 2 0306 -- AE
+char198 "
+,C 778,737,221 3 0307 -- Ccedilla
+char199 "
+`E 759,981 2 0310 -- Egrave
+char200 "
+'E 759,984 2 0311 -- Eacute
+char201 "
+^E 759,970 2 0312 -- Ecircumflex
+char202 "
+:E 759,940 2 0313 -- Edieresis
+char203 "
+`I 444,981 2 0314 -- Igrave
+char204 "
+'I 444,984 2 0315 -- Iacute
+char205 "
+^I 444,970 2 0316 -- Icircumflex
+char206 "
+:I 444,940 2 0317 -- Idieresis
+char207 "
+-D 833,722 2 0320 -- Eth
+char208 "
+~N 833,951,8 2 0321 -- Ntilde
+char209 "
+`O 833,981,15 2 0322 -- Ograve
+char210 "
+'O 833,984,15 2 0323 -- Oacute
+char211 "
+^O 833,970,15 2 0324 -- Ocircumflex
+char212 "
+~O 833,951,15 2 0325 -- Otilde
+char213 "
+:O 833,940,15 2 0326 -- Odieresis
+char214 "
+char215 606,504 0 0327 -- multiply
+/O 833,768,60 2 0330 -- Oslash
+char216 "
+`U 833,981,15 2 0331 -- Ugrave
+char217 "
+'U 833,984,15 2 0332 -- Uacute
+char218 "
+^U 833,970,15 2 0333 -- Ucircumflex
+char219 "
+:U 833,940,15 2 0334 -- Udieresis
+char220 "
+'Y 722,984 2 0335 -- Yacute
+char221 "
+TP 759,722 2 0336 -- Thorn
+char222 "
+ss 611,737,15 2 0337 -- germandbls
+char223 "
+`a 611,734,15 2 0340 -- agrave
+char224 "
+'a 611,737,15 2 0341 -- aacute
+char225 "
+^a 611,723,15 2 0342 -- acircumflex
+char226 "
+~a 611,704,15 2 0343 -- atilde
+char227 "
+:a 611,693,15 2 0344 -- adieresis
+char228 "
+oa 611,760,15 2 0345 -- aring
+char229 "
+ae 870,485,15 0 0346 -- ae
+char230 "
+,c 556,485,221 1 0347 -- ccedilla
+char231 "
+`e 574,734,15 2 0350 -- egrave
+char232 "
+'e 574,737,15 2 0351 -- eacute
+char233 "
+^e 574,723,15 2 0352 -- ecircumflex
+char234 "
+:e 574,693,15 2 0353 -- edieresis
+char235 "
+`i 370,734 2 0354 -- igrave
+char236 "
+'i 370,737 2 0355 -- iacute
+char237 "
+^i 370,723 2 0356 -- icircumflex
+char238 "
+:i 370,693 2 0357 -- idieresis
+char239 "
+Sd 611,737,15 2 0360 -- eth
+char240 "
+~n 685,704 2 0361 -- ntilde
+char241 "
+`o 611,734,15 2 0362 -- ograve
+char242 "
+'o 611,737,15 2 0363 -- oacute
+char243 "
+^o 611,723,15 2 0364 -- ocircumflex
+char244 "
+~o 611,704,15 2 0365 -- otilde
+char245 "
+:o 611,693,15 2 0366 -- odieresis
+char246 "
+char247 606,514 0 0367 -- divide
+/o 611,565,111 0 0370 -- oslash
+char248 "
+`u 685,734,15 2 0371 -- ugrave
+char249 "
+'u 685,737,15 2 0372 -- uacute
+char250 "
+^u 685,723,15 2 0373 -- ucircumflex
+char251 "
+:u 685,693,15 2 0374 -- udieresis
+char252 "
+'y 611,737,207 3 0375 -- yacute
+char253 "
+Tp 667,675,205 3 0376 -- thorn
+char254 "
+:y 611,693,207 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/NBI b/font/devps/NBI
new file mode 100644
index 000000000..f27fe1d5b
--- /dev/null
+++ b/font/devps/NBI
@@ -0,0 +1,447 @@
+name NBI
+internalname NewCenturySchlbk-BoldItalic
+slant 16
+spacewidth 287
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -50
+A w -20
+A v -20
+A ' -74
+A Y -74
+A W -92
+A V -111
+A T -74
+F . -129
+F f -18
+F , -129
+F A -74
+L y -55
+L ' -55
+L Y -55
+L W -55
+L V -74
+L T -55
+P . -129
+P , -129
+P A -92
+R y -50
+R Y -20
+R W -20
+R V -20
+R T -20
+T y -89
+T w -89
+T u -89
+T ; -72
+T s -89
+T r -89
+T . -111
+T o -109
+T i -71
+T - -129
+T hy -129
+T char173 -129
+T e -109
+T , -111
+T : -62
+T c -89
+T a -74
+T A -50
+V y -89
+V u -89
+V ; -74
+V r -109
+V . -111
+V o -129
+V i -72
+V - -74
+V hy -74
+V char173 -74
+V e -129
+V , -111
+V : -74
+V a -129
+V A -129
+W y -74
+W u -74
+W ; -37
+W r -74
+W . -55
+W o -74
+W i -74
+W - -37
+W hy -37
+W char173 -37
+W e -74
+W , -55
+W : -37
+W a -74
+W A -89
+Y v -129
+Y u -129
+Y ; -111
+Y q -129
+Y . -129
+Y p -129
+Y o -129
+Y i -90
+Y - -129
+Y hy -129
+Y char173 -129
+Y e -129
+Y , -129
+Y : -111
+Y a -129
+Y A -111
+f ' 74
+1 1 -74
+` ` -18
+` oq -18
+oq ` -18
+oq oq -18
+' t -37
+' s -37
+' ' -18
+r ' 55
+r . -129
+r , -129
+v . -37
+v , -37
+w . -37
+w , -37
+y . -55
+y , -55
+charset
+ha 606,722,0,0,-2 2 0000 -- asciicircum
+ti 606,353,0,0,-1 0 0001 -- asciitilde
+vS 685,954,15,31,49,31 2 0002 -- Scaron
+vZ 704,954,0,61,79,61 2 0003 -- Zcaron
+vs 481,709,15,46,48,46 2 0004 -- scaron
+vz 519,709,15,27,69,27 2 0005 -- zcaron
+:Y 704,930,0,123,35,109 2 0006 -- Ydieresis
+tm 950,722,0,82,8,82 2 0007 -- trademark
+aq 287,736,0,32,-50,32 2 0010 -- quotesingle
+space 287 0 0040
+! 333,737,15,53,47,53 2 0041 -- exclam
+" 400,737,0,157,-50,109 2 0042 -- quotedbl
+# 574,705,0,9,9,9 2 0043 -- numbersign
+sh "
+$ 574,799,143,35,47,35 2 0044 -- dollar
+Do "
+% 889,721,34,0,-1 2 0045 -- percent
+& 889,737,15,0,19 2 0046 -- ampersand
+' 259,739,0,92,-20,92 2 0047 -- quoteright
+( 407,740,123,95,-21,95 2 0050 -- parenleft
+) 407,740,123,0,120 2 0051 -- parenright
+* 500,704,0,22,18,22 2 0052 -- asterisk
++ 606,505,0,0,9 0 0053 -- plus
+, 287,159,190,0,98 0 0054 -- comma
+- 333,297,0,0,40 0 0055 -- hyphen
+hy "
+char173 "
+. 287,159,15,0,38 0 0056 -- period
+/ 278,737,15,83,75,83 2 0057 -- slash
+sl "
+0 574,705,15,29,29,29 2 0060 -- zero
+1 574,705,0,0,25 2 0061 -- one
+2 574,705,0,14,90,14 2 0062 -- two
+3 574,705,15,14,55,14 2 0063 -- three
+4 574,705,0,20,63,20 2 0064 -- four
+5 574,705,15,49,50,49 2 0065 -- five
+6 574,705,15,49,20,49 2 0066 -- six
+7 574,705,15,69,-14,69 2 0067 -- seven
+8 574,705,15,27,50,27 2 0070 -- eight
+9 574,705,15,20,49,20 2 0071 -- nine
+: 287,477,15,20,52,20 0 0072 -- colon
+; 287,477,190,20,89,20 0 0073 -- semicolon
+< 606,524,14,0,36 0 0074 -- less
+= 606,402,0,0,9 0 0075 -- equal
+> 606,524,14,0,12 0 0076 -- greater
+? 481,737,15,21,-29,21 2 0077 -- question
+@ 747,737,15,25,28,25 2 0100 -- at
+at "
+A 741,737,0,25,125,25 2 0101 -- A
+B 759,722,0,11,100,11 2 0102 -- B
+C 759,737,15,50,15,50 2 0103 -- C
+D 833,722,0,13,99,13 2 0104 -- D
+E 741,722,0,37,91,37 2 0105 -- E
+F 704,722,0,72,91,72 2 0106 -- F
+G 815,737,15,37,16,37 2 0107 -- G
+H 870,722,0,92,91,92 2 0110 -- H
+I 444,722,0,92,91,92 2 0111 -- I
+J 667,722,15,101,59,101 2 0112 -- J
+K 778,722,0,104,91,104 2 0113 -- K
+L 704,722,0,16,91,16 2 0114 -- L
+M 944,722,0,94,74,94 2 0115 -- M
+N 852,722,16,110,107,109 2 0116 -- N
+O 833,737,15,14,14,14 2 0117 -- O
+P 741,722,0,40,88,40 2 0120 -- P
+Q 833,737,186,13,15,13 2 0121 -- Q
+R 796,722,15,5,91,5 2 0122 -- R
+S 685,737,15,31,49,31 2 0123 -- S
+T 722,722,0,90,6,90 2 0124 -- T
+U 833,722,15,112,-38,109 2 0125 -- U
+V 741,722,15,111,18,109 2 0126 -- V
+W 944,722,15,100,10,100 2 0127 -- W
+X 741,722,0,120,122,109 2 0130 -- X
+Y 704,722,0,123,35,109 2 0131 -- Y
+Z 704,722,0,61,79,61 2 0132 -- Z
+[ 407,737,110,75,81,75 2 0133 -- bracketleft
+lB "
+\ 606,737,0,0,-31 2 0134 -- backslash
+rs "
+] 407,737,110,57,99,57 2 0135 -- bracketright
+rB "
+a^ 333,709,0,82,27,82 2 0136 -- circumflex
+^ "
+_ 500,0,129,50,50,50 0 0137 -- underscore
+` 259,747,0,61,11,61 2 0140 -- quoteleft
+oq "
+a 667,477,15,29,35,29 0 0141 -- a
+b 611,737,15,0,22 2 0142 -- b
+c 537,477,15,0,47 0 0143 -- c
+d 667,737,15,46,50,46 2 0144 -- d
+e 519,477,15,9,52,9 0 0145 -- e
+f 389,737,205,211,98,109 3 0146 -- f
+g 611,529,205,41,116,41 1 0147 -- g
+h 685,737,15,2,50,2 2 0150 -- h
+i 389,737,15,4,22,4 2 0151 -- i
+j 370,737,205,61,220,61 3 0152 -- j
+k 648,737,15,0,55 2 0153 -- k
+l 389,737,15,31,24,31 2 0154 -- l
+m 944,477,15,26,41,26 0 0155 -- m
+n 685,477,15,7,47,7 0 0156 -- n
+o 574,477,15,16,40,16 0 0157 -- o
+p 648,477,205,0,168 1 0160 -- p
+q 630,477,205,7,50,7 1 0161 -- q
+r 519,486,0,55,47,55 0 0162 -- r
+s 481,477,15,6,48,6 0 0163 -- s
+t 407,650,15,47,26,47 2 0164 -- t
+u 685,477,15,4,12,4 0 0165 -- u
+v 556,477,15,0,18 0 0166 -- v
+w 833,477,15,5,28,5 0 0167 -- w
+x 574,477,15,47,99,47 0 0170 -- x
+y 519,477,205,23,116,23 1 0171 -- y
+z 519,477,15,2,69,2 0 0172 -- z
+lC 407,738,115,45,-2,45 2 0173 -- braceleft
+{ "
+ba 606,737,0,0,-212 2 0174 -- bar
+| "
+rC 407,738,115,0,80 2 0175 -- braceright
+} "
+a~ 333,683,0,121,16,109 2 0176 -- tilde
+~ "
+bq 259,159,191,0,93 0 0200 -- quotesinglbase
+Fo 481,409,0,0,85 0 0201 -- guillemotleft
+char171 "
+Fc 481,408,0,25,56,25 0 0202 -- guillemotright
+char187 "
+bu 606,537,0,0,-59 0 0203 -- bullet
+Fn 574,737,205,64,77,64 3 0204 -- florin
+f/ 167,705,15,216,216,109 2 0205 -- fraction
+%0 1167,721,34,34,24,34 2 0206 -- perthousand
+dg 500,737,146,60,0,60 2 0207 -- dagger
+dd 500,737,147,64,98,64 2 0210 -- daggerdbl
+en 500,286,0,68,68,68 0 0211 -- endash
+em 1000,286,0,68,68,68 0 0212 -- emdash
+fi 685,737,205,11,120,11 3 0214 -- fi
+fl 685,737,205,46,120,46 3 0215 -- fl
+.i 389,477,15,14,12,14 0 0220 -- dotlessi
+ga 333,719,0,11,-24,11 2 0222 -- grave
+a" 333,719,0,189,27,109 2 0223 -- hungarumlaut
+a. 333,685,0,5,-95,5 2 0224 -- dotaccent
+ab 333,698,0,107,-17,107 2 0225 -- breve
+ah 333,709,0,120,-10,109 2 0226 -- caron
+ao 333,745,0,149,-167,109 2 0227 -- ring
+ho 333,0,155,0,-18 0 0230 -- ogonek
+lq 481,747,0,91,-2,91 2 0231 -- quotedblleft
+rq 481,739,0,102,-11,102 2 0232 -- quotedblright
+oe 852,477,15,8,55,8 0 0233 -- oe
+/l 389,737,15,58,24,58 2 0234 -- lslash
+Bq 481,159,191,0,120 0 0235 -- quotedblbase
+OE 963,722,0,67,31,67 2 0236 -- OE
+/L 704,722,0,16,91,16 2 0237 -- Lslash
+r! 333,544,205,6,89,6 1 0241 -- exclamdown
+char161 "
+ct 574,600,124,0,20 0 0242 -- cent
+char162 "
+Po 574,705,15,42,68,42 2 0243 -- sterling
+char163 "
+Cs 574,612,0,22,10,22 0 0244 -- currency
+char164 "
+Ye 574,705,0,111,27,109 2 0245 -- yen
+char165 "
+bb 606,737,0,0,-212 2 0246 -- brokenbar
+char166 "
+sc 500,737,145,55,90,55 2 0247 -- section
+char167 "
+ad 333,685,0,109,16,109 2 0250 -- dieresis
+char168 "
+co 747,737,15,26,27,26 2 0251 -- copyright
+char169 "
+Of 412,737,0,87,21,87 2 0252 -- ordfeminine
+char170 "
+fo 278,409,0,0,85 0 0253 -- guilsinglleft
+no 606,402,0,0,9 0 0254 -- logicalnot
+char172 "
+\- 606,304,0,0,9 0 0255 -- minus
+rg 747,737,15,26,27,26 2 0256 -- registered
+char174 "
+a- 333,649,0,104,18,104 2 0257 -- macron
+char175 "
+de 400,705,0,20,-20,20 2 0260 -- degree
+char176 "
+char177 606,505,0,0,9 0 0261 -- plusminus
+S2 344,705,0,66,66,66 2 0262 -- twosuperior
+char178 "
+S3 344,705,0,54,54,54 2 0263 -- threesuperior
+char179 "
+aa 333,719,0,88,-73,88 2 0264 -- acute
+char180 "
+char181 685,477,205,4,140,4 1 0265 -- mu
+ps 650,737,0,61,-17,61 2 0266 -- paragraph
+char182 "
+char183 287,342,0,0,9 0 0267 -- periodcentered
+ac 333,3,220,0,137 1 0270 -- cedilla
+char184 "
+S1 344,705,0,29,29,29 2 0271 -- onesuperior
+char185 "
+Om 356,737,0,77,21,77 2 0272 -- ordmasculine
+char186 "
+fc 278,408,0,25,56,25 0 0273 -- guilsinglright
+14 861,705,15,15,29,15 2 0274 -- onequarter
+char188 "
+12 861,705,15,46,29,46 2 0275 -- onehalf
+char189 "
+34 861,705,15,15,54,15 2 0276 -- threequarters
+char190 "
+r? 481,544,205,0,49 1 0277 -- questiondown
+char191 "
+`A 741,964,0,25,125,25 2 0300 -- Agrave
+char192 "
+'A 741,964,0,25,125,25 2 0301 -- Aacute
+char193 "
+^A 741,954,0,25,125,25 2 0302 -- Acircumflex
+char194 "
+~A 741,928,0,25,125,25 2 0303 -- Atilde
+char195 "
+:A 741,930,0,25,125,25 2 0304 -- Adieresis
+char196 "
+oA 741,990,0,25,125,25 2 0305 -- Aring
+char197 "
+AE 889,722,0,64,131,64 2 0306 -- AE
+char198 "
+,C 759,737,220,50,15,50 3 0307 -- Ccedilla
+char199 "
+`E 741,964,0,37,91,37 2 0310 -- Egrave
+char200 "
+'E 741,964,0,37,91,37 2 0311 -- Eacute
+char201 "
+^E 741,954,0,37,91,37 2 0312 -- Ecircumflex
+char202 "
+:E 741,930,0,37,91,37 2 0313 -- Edieresis
+char203 "
+`I 444,964,0,92,91,92 2 0314 -- Igrave
+char204 "
+'I 444,964,0,92,91,92 2 0315 -- Iacute
+char205 "
+^I 444,954,0,92,91,92 2 0316 -- Icircumflex
+char206 "
+:I 444,930,0,104,91,104 2 0317 -- Idieresis
+char207 "
+-D 833,722,0,13,99,13 2 0320 -- Eth
+char208 "
+~N 852,928,16,110,107,109 2 0321 -- Ntilde
+char209 "
+`O 833,964,15,14,14,14 2 0322 -- Ograve
+char210 "
+'O 833,964,15,14,14,14 2 0323 -- Oacute
+char211 "
+^O 833,954,15,14,14,14 2 0324 -- Ocircumflex
+char212 "
+~O 833,928,15,14,14,14 2 0325 -- Otilde
+char213 "
+:O 833,930,15,14,14,14 2 0326 -- Odieresis
+char214 "
+char215 606,507,0,0,9 0 0327 -- multiply
+/O 833,775,82,14,33,14 2 0330 -- Oslash
+char216 "
+`U 833,964,15,112,-38,109 2 0331 -- Ugrave
+char217 "
+'U 833,964,15,112,-38,109 2 0332 -- Uacute
+char218 "
+^U 833,954,15,112,-38,109 2 0333 -- Ucircumflex
+char219 "
+:U 833,930,15,112,-38,109 2 0334 -- Udieresis
+char220 "
+'Y 704,964,0,123,35,109 2 0335 -- Yacute
+char221 "
+TP 741,722,0,0,88 2 0336 -- Thorn
+char222 "
+ss 574,737,205,0,116 3 0337 -- germandbls
+char223 "
+`a 667,719,15,29,35,29 2 0340 -- agrave
+char224 "
+'a 667,719,15,29,35,29 2 0341 -- aacute
+char225 "
+^a 667,709,15,29,35,29 2 0342 -- acircumflex
+char226 "
+~a 667,683,15,29,35,29 2 0343 -- atilde
+char227 "
+:a 667,685,15,29,35,29 2 0344 -- adieresis
+char228 "
+oa 667,745,15,29,35,29 2 0345 -- aring
+char229 "
+ae 815,477,15,9,69,9 0 0346 -- ae
+char230 "
+,c 537,477,220,0,47 1 0347 -- ccedilla
+char231 "
+`e 519,719,15,9,52,9 2 0350 -- egrave
+char232 "
+'e 519,719,15,9,52,9 2 0351 -- eacute
+char233 "
+^e 519,709,15,9,52,9 2 0352 -- ecircumflex
+char234 "
+:e 519,685,15,26,52,26 2 0353 -- edieresis
+char235 "
+`i 389,719,15,14,12,14 2 0354 -- igrave
+char236 "
+'i 389,719,15,60,12,60 2 0355 -- iacute
+char237 "
+^i 389,709,15,44,12,44 2 0356 -- icircumflex
+char238 "
+:i 389,685,15,71,12,71 2 0357 -- idieresis
+char239 "
+Sd 574,737,15,16,40,16 2 0360 -- eth
+char240 "
+~n 685,683,15,7,47,7 2 0361 -- ntilde
+char241 "
+`o 574,719,15,16,40,16 2 0362 -- ograve
+char242 "
+'o 574,719,15,16,40,16 2 0363 -- oacute
+char243 "
+^o 574,709,15,16,40,16 2 0364 -- ocircumflex
+char244 "
+~o 574,683,15,16,40,16 2 0365 -- otilde
+char245 "
+:o 574,685,15,16,40,16 2 0366 -- odieresis
+char246 "
+char247 606,505,0,0,9 0 0367 -- divide
+/o 574,578,126,16,40,16 0 0370 -- oslash
+char248 "
+`u 685,719,15,4,12,4 2 0371 -- ugrave
+char249 "
+'u 685,719,15,4,12,4 2 0372 -- uacute
+char250 "
+^u 685,709,15,4,12,4 2 0373 -- ucircumflex
+char251 "
+:u 685,685,15,4,12,4 2 0374 -- udieresis
+char252 "
+'y 519,719,205,23,116,23 3 0375 -- yacute
+char253 "
+Tp 648,650,205,0,168 3 0376 -- thorn
+char254 "
+:y 519,685,205,23,116,23 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/NI b/font/devps/NI
new file mode 100644
index 000000000..75f7fc447
--- /dev/null
+++ b/font/devps/NI
@@ -0,0 +1,447 @@
+name NI
+internalname NewCenturySchlbk-Italic
+slant 16
+spacewidth 278
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -54
+A w -20
+A v -20
+A ' -74
+A Y -74
+A W -92
+A V -111
+A T -74
+F . -129
+F f -18
+F , -129
+F A -74
+L y -55
+L ' -55
+L Y -55
+L W -55
+L V -74
+L T -55
+P . -129
+P , -129
+P A -92
+R y -54
+R Y -74
+R W -55
+R V -20
+R T -20
+T y -89
+T w -89
+T u -89
+T ; -92
+T s -89
+T r -89
+T . -111
+T o -89
+T i -71
+T - -129
+T hy -129
+T char173 -129
+T e -89
+T , -111
+T : -92
+T c -89
+T a -74
+T A -18
+V y -109
+V u -109
+V ; -74
+V r -109
+V . -111
+V o -129
+V i -62
+V - -74
+V hy -74
+V char173 -74
+V e -129
+V , -140
+V : -74
+V a -129
+V A -111
+W y -74
+W u -74
+W ; -37
+W r -74
+W . -55
+W o -74
+W i -74
+W - -37
+W hy -37
+W char173 -37
+W e -74
+W , -55
+W : -37
+W a -74
+W A -74
+Y v -99
+Y u -99
+Y ; -111
+Y q -129
+Y . -129
+Y p -129
+Y o -129
+Y i -70
+Y - -129
+Y hy -129
+Y char173 -129
+Y e -129
+Y , -129
+Y : -111
+Y a -129
+Y A -74
+f ' 94
+1 1 -74
+` ` -18
+` oq -18
+oq ` -18
+oq oq -18
+' t -37
+' s -37
+' ' -18
+r ' 55
+r . -129
+r , -129
+v . -37
+v , -37
+w . -37
+w , -37
+y . -55
+y , -55
+charset
+ha 606,722,0,0,-2 2 0000 -- asciicircum
+ti 606,335,0,0,9 0 0001 -- asciitilde
+vS 667,944,15,15,50,15 2 0002 -- Scaron
+vZ 667,944,0,50,75,50 2 0003 -- Zcaron
+vs 444,688,15,40,51,40 2 0004 -- scaron
+vz 463,688,15,30,83,30 2 0005 -- zcaron
+:Y 685,900,0,123,18,107 2 0006 -- Ydieresis
+tm 950,722,0,71,2,71 2 0007 -- trademark
+aq 278,737,0,34,-64,34 2 0010 -- quotesingle
+space 278 0 0040
+! 333,737,15,33,20,33 2 0041 -- exclam
+" 400,737,0,45,-50,45 2 0042 -- quotedbl
+# 556,705,0,18,17,18 2 0043 -- numbersign
+sh "
+$ 556,800,133,30,47,30 2 0044 -- dollar
+Do "
+% 833,705,17,9,4,9 2 0045 -- percent
+& 852,737,15,0,26 2 0046 -- ampersand
+' 204,737,0,76,11,76 2 0047 -- quoteright
+( 333,737,124,116,10,107 2 0050 -- parenleft
+) 333,737,124,0,143 2 0051 -- parenright
+* 500,705,0,2,16,2 2 0052 -- asterisk
++ 606,504,0,0,13 0 0053 -- plus
+, 278,109,165,0,89 0 0054 -- comma
+- 333,273,0,0,18 0 0055 -- hyphen
+hy "
+char173 "
+. 278,109,15,0,33 0 0056 -- period
+/ 606,737,102,0,-90 2 0057 -- slash
+sl "
+0 556,705,15,21,21,21 2 0060 -- zero
+1 556,705 2 0061 -- one
+2 556,705,0,2,85,2 2 0062 -- two
+3 556,705,15,0,52 2 0063 -- three
+4 556,705,0,6,58,6 2 0064 -- four
+5 556,705,15,34,46,34 2 0065 -- five
+6 556,705,15,41,14,41 2 0066 -- six
+7 556,705,15,55,-19,55 2 0067 -- seven
+8 556,705,15,21,42,21 2 0070 -- eight
+9 556,705,15,13,43,13 2 0071 -- nine
+: 278,466,15,26,8,26 0 0072 -- colon
+; 278,466,165,33,64,33 0 0073 -- semicolon
+< 606,518,10,0,16 0 0074 -- less
+= 606,381,0,0,14 0 0075 -- equal
+> 606,518,10,6,-3,6 0 0076 -- greater
+? 444,737,15,23,-52,23 2 0077 -- question
+@ 747,737,15,31,22,31 2 0100 -- at
+at "
+A 704,737,0,14,132,14 2 0101 -- A
+B 722,722,0,0,81 2 0102 -- B
+C 722,737,15,41,10,41 2 0103 -- C
+D 778,722,0,7,88,7 2 0104 -- D
+E 722,722,0,29,87,29 2 0105 -- E
+F 667,722,0,81,84,81 2 0106 -- F
+G 778,737,15,35,11,35 2 0107 -- G
+H 833,722,0,84,88,84 2 0110 -- H
+I 407,722,0,74,83,74 2 0111 -- I
+J 611,722,17,85,63,85 2 0112 -- J
+K 741,722,0,123,90,107 2 0113 -- K
+L 667,722,0,13,87,13 2 0114 -- L
+M 944,722,0,79,76,79 2 0115 -- M
+N 815,722,17,94,98,94 2 0116 -- N
+O 778,737,15,7,10,7 2 0117 -- O
+P 667,722,0,46,83,46 2 0120 -- P
+Q 778,737,190,7,10,7 2 0121 -- Q
+R 741,722,17,0,91 2 0122 -- R
+S 667,737,15,15,50,15 2 0123 -- S
+T 685,722,0,91,10,91 2 0124 -- T
+U 815,722,15,95,-43,95 2 0125 -- U
+V 704,722,15,118,14,107 2 0126 -- V
+W 926,722,15,97,-3,97 2 0127 -- W
+X 704,722,0,116,123,107 2 0130 -- X
+Y 685,722,0,123,18,107 2 0131 -- Y
+Z 667,722,0,50,75,50 2 0132 -- Z
+[ 333,737,109,127,83,107 2 0133 -- bracketleft
+lB "
+\ 606,737,0,0,-39 2 0134 -- backslash
+rs "
+] 333,737,109,76,133,76 2 0135 -- bracketright
+rB "
+a^ 333,688,0,48,13,48 2 0136 -- circumflex
+^ "
+_ 500,0,123,50,50,50 0 0137 -- underscore
+` 204,749,0,98,-11,98 2 0140 -- quoteleft
+oq "
+a 574,466,15,0,49 0 0141 -- a
+b 556,737,15,0,18 2 0142 -- b
+c 444,466,15,7,45,7 0 0143 -- c
+d 611,737,15,25,47,25 2 0144 -- d
+e 444,466,15,0,56 0 0145 -- e
+f 333,737,205,187,118,107 3 0146 -- f
+g 537,499,205,36,129,36 1 0147 -- g
+h 611,737,15,0,50 2 0150 -- h
+i 333,715,15,0,23 2 0151 -- i
+j 315,715,205,52,216,52 3 0152 -- j
+k 556,737,15,0,55 2 0153 -- k
+l 333,737,15,11,34,11 2 0154 -- l
+m 889,466,15,0,35 0 0155 -- m
+n 611,466,15,1,36,1 0 0156 -- n
+o 500,466,15,0,45 0 0157 -- o
+p 574,466,205,0,151 1 0160 -- p
+q 556,466,205,0,50 1 0161 -- q
+r 444,466,0,39,41,39 0 0162 -- r
+s 444,466,15,0,51 0 0163 -- s
+t 352,619,15,27,25,27 2 0164 -- t
+u 611,466,15,0,9 0 0165 -- u
+v 519,466,15,0,16 0 0166 -- v
+w 778,466,15,0,18 0 0167 -- w
+x 500,466,15,21,83,21 0 0170 -- x
+y 500,466,205,4,129,4 1 0171 -- y
+z 463,466,15,4,83,4 0 0172 -- z
+lC 333,737,116,98,-2,98 2 0173 -- braceleft
+{ "
+ba 606,737,0,0,-219 2 0174 -- bar
+| "
+rC 333,737,116,0,148 2 0175 -- braceright
+} "
+a~ 333,650,0,97,-2,97 2 0176 -- tilde
+~ "
+bq 204,109,167,0,129 0 0200 -- quotesinglbase
+Fo 426,399,0,26,65,26 0 0201 -- guillemotleft
+char171 "
+Fc 426,394,0,24,67,24 0 0202 -- guillemotright
+char187 "
+bu 606,537,0,0,-64 0 0203 -- bullet
+Fn 556,737,205,57,107,57 3 0204 -- florin
+f/ 167,705,17,216,154,107 2 0205 -- fraction
+%0 1000,705,15,53,56,53 2 0206 -- perthousand
+dg 500,737,147,68,-14,68 2 0207 -- dagger
+dd 500,737,148,78,80,78 2 0210 -- daggerdbl
+en 500,260,0,68,68,68 0 0211 -- endash
+em 1000,260,0,68,68,68 0 0212 -- emdash
+fi 611,737,205,3,110,3 3 0214 -- fi
+fl 611,737,205,33,110,33 3 0215 -- fl
+.i 333,466,15,0,23 0 0220 -- dotlessi
+ga 333,691,0,0,-23 2 0222 -- grave
+a" 333,689,0,237,-84,107 2 0223 -- hungarumlaut
+a. 333,644,0,0,-68 2 0224 -- dotaccent
+ab 333,677,0,87,-19,87 2 0225 -- breve
+ah 333,688,0,95,-23,95 2 0226 -- caron
+ao 333,712,0,146,-180,107 2 0227 -- ring
+ho 333,0,155,0,-18 0 0230 -- ogonek
+lq 389,749,0,93,-13,93 2 0231 -- quotedblleft
+rq 389,737,0,68,12,68 2 0232 -- quotedblright
+oe 778,466,17,0,50 0 0233 -- oe
+/l 333,737,15,59,34,59 2 0234 -- lslash
+Bq 389,109,167,0,129 0 0235 -- quotedblbase
+OE 981,722,0,32,14,32 2 0236 -- OE
+/L 667,722,0,13,87,13 2 0237 -- Lslash
+r! 333,542,205,0,57 1 0241 -- exclamdown
+char161 "
+ct 556,595,129,0,-11 0 0242 -- cent
+char162 "
+Po 556,705,15,39,58,39 2 0243 -- sterling
+char163 "
+Cs 556,603,0,24,25,24 0 0244 -- currency
+char164 "
+Ye 556,705,0,117,10,107 2 0245 -- yen
+char165 "
+bb 606,737,0,0,-219 2 0246 -- brokenbar
+char166 "
+sc 500,737,147,30,61,30 2 0247 -- section
+char167 "
+ad 333,644,0,76,-9,76 2 0250 -- dieresis
+char168 "
+co 747,737,15,27,26,27 2 0251 -- copyright
+char169 "
+Of 422,737,0,50,-33,50 2 0252 -- ordfeminine
+char170 "
+fo 333,399,0,0,8 0 0253 -- guilsinglleft
+no 606,381,0,0,9 0 0254 -- logicalnot
+char172 "
+\- 606,287,0,0,9 0 0255 -- minus
+rg 747,737,15,26,27,26 2 0256 -- registered
+char174 "
+a- 333,610,0,80,-1,80 0 0257 -- macron
+char175 "
+de 400,705,0,20,-20,20 2 0260 -- degree
+char176 "
+char177 606,504,0,0,13 0 0261 -- plusminus
+S2 333,705,0,70,50,70 2 0262 -- twosuperior
+char178 "
+S3 333,705,0,48,49,48 2 0263 -- threesuperior
+char179 "
+aa 333,689,0,72,-82,72 2 0264 -- acute
+char180 "
+char181 611,466,205,0,120 1 0265 -- mu
+ps 650,737,0,45,-38,45 2 0266 -- paragraph
+char182 "
+char183 278,316,0,0,-27 0 0267 -- periodcentered
+ac 333,0,227,0,47 1 0270 -- cedilla
+char184 "
+S1 333,705,0,26,7,26 2 0271 -- onesuperior
+char185 "
+Om 372,738,0,50,-33,50 2 0272 -- ordmasculine
+char186 "
+fc 333,394,0,0,10 0 0273 -- guilsinglright
+14 834,705,17,49,17,49 2 0274 -- onequarter
+char188 "
+12 834,705,17,60,17,60 2 0275 -- onehalf
+char189 "
+34 834,705,17,49,49,49 2 0276 -- threequarters
+char190 "
+r? 444,542,205,0,43 1 0277 -- questiondown
+char191 "
+`A 704,947,0,14,132,14 2 0300 -- Agrave
+char192 "
+'A 704,945,0,14,132,14 2 0301 -- Aacute
+char193 "
+^A 704,944,0,14,132,14 2 0302 -- Acircumflex
+char194 "
+~A 704,906,0,14,132,14 2 0303 -- Atilde
+char195 "
+:A 704,900,0,14,132,14 2 0304 -- Adieresis
+char196 "
+oA 704,968,0,14,132,14 2 0305 -- Aring
+char197 "
+AE 870,722,0,50,142,50 2 0306 -- AE
+char198 "
+,C 722,737,227,41,10,41 3 0307 -- Ccedilla
+char199 "
+`E 722,947,0,29,87,29 2 0310 -- Egrave
+char200 "
+'E 722,945,0,29,87,29 2 0311 -- Eacute
+char201 "
+^E 722,944,0,29,87,29 2 0312 -- Ecircumflex
+char202 "
+:E 722,900,0,29,87,29 2 0313 -- Edieresis
+char203 "
+`I 407,947,0,74,83,74 2 0314 -- Igrave
+char204 "
+'I 407,945,0,74,83,74 2 0315 -- Iacute
+char205 "
+^I 407,944,0,74,83,74 2 0316 -- Icircumflex
+char206 "
+:I 407,900,0,89,83,89 2 0317 -- Idieresis
+char207 "
+-D 778,722,0,7,88,7 2 0320 -- Eth
+char208 "
+~N 815,906,17,94,98,94 2 0321 -- Ntilde
+char209 "
+`O 778,947,15,7,10,7 2 0322 -- Ograve
+char210 "
+'O 778,945,15,7,10,7 2 0323 -- Oacute
+char211 "
+^O 778,944,15,7,10,7 2 0324 -- Ocircumflex
+char212 "
+~O 778,906,15,7,10,7 2 0325 -- Otilde
+char213 "
+:O 778,900,15,7,10,7 2 0326 -- Odieresis
+char214 "
+char215 606,504,0,0,13 0 0327 -- multiply
+/O 778,755,87,7,49,7 2 0330 -- Oslash
+char216 "
+`U 815,947,15,95,-43,95 2 0331 -- Ugrave
+char217 "
+'U 815,945,15,95,-43,95 2 0332 -- Uacute
+char218 "
+^U 815,944,15,95,-43,95 2 0333 -- Ucircumflex
+char219 "
+:U 815,900,15,95,-43,95 2 0334 -- Udieresis
+char220 "
+'Y 685,945,0,123,18,107 2 0335 -- Yacute
+char221 "
+TP 667,722,0,7,83,7 2 0336 -- Thorn
+char222 "
+ss 556,737,205,19,126,19 3 0337 -- germandbls
+char223 "
+`a 574,691,15,0,49 2 0340 -- agrave
+char224 "
+'a 574,689,15,0,49 2 0341 -- aacute
+char225 "
+^a 574,688,15,0,49 2 0342 -- acircumflex
+char226 "
+~a 574,650,15,0,49 2 0343 -- atilde
+char227 "
+:a 574,644,15,0,49 2 0344 -- adieresis
+char228 "
+oa 574,712,15,0,49 2 0345 -- aring
+char229 "
+ae 722,466,15,0,68 0 0346 -- ae
+char230 "
+,c 444,466,227,7,45,7 1 0347 -- ccedilla
+char231 "
+`e 444,691,15,0,56 2 0350 -- egrave
+char232 "
+'e 444,689,15,17,56,17 2 0351 -- eacute
+char233 "
+^e 444,688,15,0,56 2 0352 -- ecircumflex
+char234 "
+:e 444,644,15,11,56,11 2 0353 -- edieresis
+char235 "
+`i 333,691,15,0,23 2 0354 -- igrave
+char236 "
+'i 333,689,15,72,23,72 2 0355 -- iacute
+char237 "
+^i 333,688,15,8,53,8 2 0356 -- icircumflex
+char238 "
+:i 333,644,15,66,23,66 2 0357 -- idieresis
+char239 "
+Sd 500,737,15,0,45 2 0360 -- eth
+char240 "
+~n 611,650,15,1,36,1 2 0361 -- ntilde
+char241 "
+`o 500,691,15,0,45 2 0362 -- ograve
+char242 "
+'o 500,689,15,0,45 2 0363 -- oacute
+char243 "
+^o 500,688,15,0,45 2 0364 -- ocircumflex
+char244 "
+~o 500,650,15,4,45,4 2 0365 -- otilde
+char245 "
+:o 500,644,15,0,45 2 0366 -- odieresis
+char246 "
+char247 606,504,0,0,13 0 0367 -- divide
+/o 500,549,121,0,55 0 0370 -- oslash
+char248 "
+`u 611,691,15,0,9 2 0371 -- ugrave
+char249 "
+'u 611,689,15,0,9 2 0372 -- uacute
+char250 "
+^u 611,688,15,0,9 2 0373 -- ucircumflex
+char251 "
+:u 611,644,15,0,9 2 0374 -- udieresis
+char252 "
+'y 500,689,205,4,129,4 3 0375 -- yacute
+char253 "
+Tp 574,656,205,0,151 3 0376 -- thorn
+char254 "
+:y 500,644,205,4,129,4 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/NR b/font/devps/NR
new file mode 100644
index 000000000..8d29bd12e
--- /dev/null
+++ b/font/devps/NR
@@ -0,0 +1,447 @@
+name NR
+internalname NewCenturySchlbk-Roman
+spacewidth 278
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -74
+A w -74
+A v -74
+A ' -74
+A Y -92
+A W -92
+A V -111
+A T -55
+F . -111
+F , -111
+F A -74
+L y -55
+L ' -55
+L Y -92
+L W -74
+L V -92
+L T -55
+P . -129
+P , -129
+P A -74
+R y -18
+R Y -37
+R W -37
+R V -37
+T y -52
+T w -71
+T u -71
+T ; -55
+T s -62
+T r -62
+T . -92
+T o -92
+T i -25
+T - -92
+T hy -92
+T char173 -92
+T e -92
+T , -92
+T : -55
+T c -81
+T a -62
+T A -55
+V y -92
+V u -74
+V ; -74
+V r -74
+V . -129
+V o -92
+V i -44
+V - -92
+V hy -92
+V char173 -92
+V e -92
+V , -129
+V : -74
+V a -92
+V A -111
+W y -74
+W u -55
+W ; -37
+W r -55
+W . -111
+W o -55
+W i -37
+W - -37
+W hy -37
+W char173 -37
+W e -55
+W , -111
+W : -37
+W a -74
+W A -92
+Y v -111
+Y u -92
+Y ; -92
+Y q -111
+Y . -111
+Y p -111
+Y o -111
+Y i -44
+Y - -111
+Y hy -111
+Y char173 -111
+Y e -111
+Y , -111
+Y : -92
+Y a -111
+Y A -92
+f ' 114
+1 1 -55
+` ` -18
+` oq -18
+oq ` -18
+oq oq -18
+' t -18
+' s -37
+' ' -18
+r ' 55
+r . -74
+r - -18
+r hy -18
+r char173 -18
+r , -74
+v . -111
+v , -111
+w . -92
+w , -92
+y . -111
+y , -111
+charset
+ha 606,722 2 0000 -- asciicircum
+ti 606,329 0 0001 -- asciitilde
+vS 630,952,15 2 0002 -- Scaron
+vZ 611,952 2 0003 -- Zcaron
+vs 463,694,15 2 0004 -- scaron
+vz 481,694 2 0005 -- zcaron
+:Y 704,902 2 0006 -- Ydieresis
+tm 1000,737 2 0007 -- trademark
+aq 204,737 2 0010 -- quotesingle
+space 278 0 0040
+! 296,737,15 2 0041 -- exclam
+" 389,737 2 0042 -- quotedbl
+# 556,690 2 0043 -- numbersign
+sh "
+$ 556,804,129 2 0044 -- dollar
+Do "
+% 833,707,18 2 0045 -- percent
+& 815,737,15 2 0046 -- ampersand
+' 204,737 2 0047 -- quoteright
+( 333,737,124 2 0050 -- parenleft
+) 333,737,124 2 0051 -- parenright
+* 500,737 2 0052 -- asterisk
++ 606,492,13 0 0053 -- plus
+, 278,109,184 0 0054 -- comma
+- 333,279 0 0055 -- hyphen
+hy "
+char173 "
+. 278,109,15 0 0056 -- period
+/ 278,737,15 2 0057 -- slash
+sl "
+0 556,705,15 2 0060 -- zero
+1 556,705 2 0061 -- one
+2 556,705,4 2 0062 -- two
+3 556,705,15 2 0063 -- three
+4 556,705 2 0064 -- four
+5 556,705,15 2 0065 -- five
+6 556,705,15 2 0066 -- six
+7 556,705,15 2 0067 -- seven
+8 556,705,15 2 0070 -- eight
+9 556,705,15 2 0071 -- nine
+: 278,475,15 0 0072 -- colon
+; 278,475,189 0 0073 -- semicolon
+< 606,503,25 0 0074 -- less
+= 606,374 0 0075 -- equal
+> 606,503,25 0 0076 -- greater
+? 444,737,15 2 0077 -- question
+@ 737,737,15 2 0100 -- at
+at "
+A 722,737 2 0101 -- A
+B 722,722 2 0102 -- B
+C 722,737,15 2 0103 -- C
+D 778,722 2 0104 -- D
+E 722,722 2 0105 -- E
+F 667,722 2 0106 -- F
+G 778,737,15 2 0107 -- G
+H 833,722 2 0110 -- H
+I 407,722 2 0111 -- I
+J 556,722,15 2 0112 -- J
+K 778,722 2 0113 -- K
+L 667,722 2 0114 -- L
+M 944,722 2 0115 -- M
+N 815,722,15 2 0116 -- N
+O 778,737,15 2 0117 -- O
+P 667,722 2 0120 -- P
+Q 778,737,189 2 0121 -- Q
+R 722,722,15 2 0122 -- R
+S 630,737,15 2 0123 -- S
+T 667,722 2 0124 -- T
+U 815,722,15 2 0125 -- U
+V 722,722,15 2 0126 -- V
+W 981,722,15 2 0127 -- W
+X 704,722 2 0130 -- X
+Y 704,722 2 0131 -- Y
+Z 611,722 2 0132 -- Z
+[ 333,722,109 2 0133 -- bracketleft
+lB "
+\ 606,737 2 0134 -- backslash
+rs "
+] 333,723,108 2 0135 -- bracketright
+rB "
+a^ 333,694 2 0136 -- circumflex
+^ "
+_ 500,0,134 0 0137 -- underscore
+` 204,737 2 0140 -- quoteleft
+oq "
+a 556,479,15 0 0141 -- a
+b 556,737,15 2 0142 -- b
+c 444,479,15 0 0143 -- c
+d 574,737,15 2 0144 -- d
+e 500,479,15 0 0145 -- e
+f 333,737 2 0146 -- f
+g 537,494,205 1 0147 -- g
+h 611,737 2 0150 -- h
+i 315,716 2 0151 -- i
+j 296,716,205 3 0152 -- j
+k 593,737 2 0153 -- k
+l 315,737 2 0154 -- l
+m 889,479 0 0155 -- m
+n 611,479 0 0156 -- n
+o 500,479,15 0 0157 -- o
+p 574,479,205 1 0160 -- p
+q 556,479,205 1 0161 -- q
+r 444,479 0 0162 -- r
+s 463,479,15 0 0163 -- s
+t 389,666,15 2 0164 -- t
+u 611,464,15 0 0165 -- u
+v 537,464,15 0 0166 -- v
+w 778,464,15 0 0167 -- w
+x 537,464 0 0170 -- x
+y 537,464,205 1 0171 -- y
+z 481,464 0 0172 -- z
+lC 333,722,109 2 0173 -- braceleft
+{ "
+ba 606,737 2 0174 -- bar
+| "
+rC 333,722,109 2 0175 -- braceright
+} "
+a~ 333,659 0 0176 -- tilde
+~ "
+bq 204,104,189 0 0200 -- quotesinglbase
+Fo 426,397 0 0201 -- guillemotleft
+char171 "
+Fc 426,399 0 0202 -- guillemotright
+char187 "
+bu 606,554 0 0203 -- bullet
+Fn 556,737,205 3 0204 -- florin
+f/ 167,705 2 0205 -- fraction
+%0 1000,699,1 2 0206 -- perthousand
+dg 500,737,147 2 0207 -- dagger
+dd 500,737,151 2 0210 -- daggerdbl
+en 556,269 0 0211 -- endash
+em 1000,269 0 0212 -- emdash
+fi 611,737 2 0214 -- fi
+fl 611,737 2 0215 -- fl
+.i 315,464 0 0220 -- dotlessi
+ga 333,699 2 0222 -- grave
+a" 333,714 2 0223 -- hungarumlaut
+a. 333,644 0 0224 -- dotaccent
+ab 333,685 2 0225 -- breve
+ah 333,694 2 0226 -- caron
+ao 333,722 2 0227 -- ring
+ho 333,0,163 0 0230 -- ogonek
+lq 389,737 2 0231 -- quotedblleft
+rq 389,737 2 0232 -- quotedblright
+oe 833,479,15 0 0233 -- oe
+/l 315,737 2 0234 -- lslash
+Bq 389,104,189 0 0235 -- quotedblbase
+OE 1000,722 2 0236 -- OE
+/L 667,722 2 0237 -- Lslash
+r! 296,547,205 1 0241 -- exclamdown
+char161 "
+ct 556,584,141 0 0242 -- cent
+char162 "
+Po 556,705,15 2 0243 -- sterling
+char163 "
+Cs 556,603 0 0244 -- currency
+char164 "
+Ye 556,705 2 0245 -- yen
+char165 "
+bb 606,737 2 0246 -- brokenbar
+char166 "
+sc 500,737,147 2 0247 -- section
+char167 "
+ad 333,644 0 0250 -- dieresis
+char168 "
+co 737,737,15 2 0251 -- copyright
+char169 "
+Of 334,722 2 0252 -- ordfeminine
+char170 "
+fo 259,397 0 0253 -- guilsinglleft
+no 606,374 0 0254 -- logicalnot
+char172 "
+\- 606,277 0 0255 -- minus
+rg 737,737,15 2 0256 -- registered
+char174 "
+a- 333,622 0 0257 -- macron
+char175 "
+de 400,705 2 0260 -- degree
+char176 "
+char177 606,492 0 0261 -- plusminus
+S2 333,705 2 0262 -- twosuperior
+char178 "
+S3 333,705 2 0263 -- threesuperior
+char179 "
+aa 333,699 2 0264 -- acute
+char180 "
+char181 611,464,205 1 0265 -- mu
+ps 606,722,147 2 0266 -- paragraph
+char182 "
+char183 278,302 0 0267 -- periodcentered
+ac 333,0,215 1 0270 -- cedilla
+char184 "
+S1 333,705 2 0271 -- onesuperior
+char185 "
+Om 300,722 2 0272 -- ordmasculine
+char186 "
+fc 259,399 0 0273 -- guilsinglright
+14 834,705 2 0274 -- onequarter
+char188 "
+12 834,705,2 2 0275 -- onehalf
+char189 "
+34 834,705 2 0276 -- threequarters
+char190 "
+r? 444,547,205 1 0277 -- questiondown
+char191 "
+`A 722,957 2 0300 -- Agrave
+char192 "
+'A 722,957 2 0301 -- Aacute
+char193 "
+^A 722,952 2 0302 -- Acircumflex
+char194 "
+~A 722,917 2 0303 -- Atilde
+char195 "
+:A 722,902 2 0304 -- Adieresis
+char196 "
+oA 722,980 2 0305 -- Aring
+char197 "
+AE 1000,722 2 0306 -- AE
+char198 "
+,C 722,737,215 3 0307 -- Ccedilla
+char199 "
+`E 722,957 2 0310 -- Egrave
+char200 "
+'E 722,957 2 0311 -- Eacute
+char201 "
+^E 722,952 2 0312 -- Ecircumflex
+char202 "
+:E 722,902 2 0313 -- Edieresis
+char203 "
+`I 407,957 2 0314 -- Igrave
+char204 "
+'I 407,957 2 0315 -- Iacute
+char205 "
+^I 407,952 2 0316 -- Icircumflex
+char206 "
+:I 407,902 2 0317 -- Idieresis
+char207 "
+-D 778,722 2 0320 -- Eth
+char208 "
+~N 815,917,15 2 0321 -- Ntilde
+char209 "
+`O 778,957,15 2 0322 -- Ograve
+char210 "
+'O 778,957,15 2 0323 -- Oacute
+char211 "
+^O 778,952,15 2 0324 -- Ocircumflex
+char212 "
+~O 778,917,15 2 0325 -- Otilde
+char213 "
+:O 778,902,15 2 0326 -- Odieresis
+char214 "
+char215 606,491,13 0 0327 -- multiply
+/O 778,760,74 2 0330 -- Oslash
+char216 "
+`U 815,957,15 2 0331 -- Ugrave
+char217 "
+'U 815,957,15 2 0332 -- Uacute
+char218 "
+^U 815,952,15 2 0333 -- Ucircumflex
+char219 "
+:U 815,902,15 2 0334 -- Udieresis
+char220 "
+'Y 704,957 2 0335 -- Yacute
+char221 "
+TP 667,722 2 0336 -- Thorn
+char222 "
+ss 574,737,15 2 0337 -- germandbls
+char223 "
+`a 556,699,15 2 0340 -- agrave
+char224 "
+'a 556,699,15 2 0341 -- aacute
+char225 "
+^a 556,694,15 2 0342 -- acircumflex
+char226 "
+~a 556,659,15 0 0343 -- atilde
+char227 "
+:a 556,644,15 0 0344 -- adieresis
+char228 "
+oa 556,722,15 2 0345 -- aring
+char229 "
+ae 796,479,15 0 0346 -- ae
+char230 "
+,c 444,479,215 1 0347 -- ccedilla
+char231 "
+`e 500,699,15 2 0350 -- egrave
+char232 "
+'e 500,699,15 2 0351 -- eacute
+char233 "
+^e 500,694,15 2 0352 -- ecircumflex
+char234 "
+:e 500,644,15 0 0353 -- edieresis
+char235 "
+`i 315,699 2 0354 -- igrave
+char236 "
+'i 315,699 2 0355 -- iacute
+char237 "
+^i 315,694 2 0356 -- icircumflex
+char238 "
+:i 315,644 0 0357 -- idieresis
+char239 "
+Sd 500,740,15 2 0360 -- eth
+char240 "
+~n 611,659 0 0361 -- ntilde
+char241 "
+`o 500,699,15 2 0362 -- ograve
+char242 "
+'o 500,699,15 2 0363 -- oacute
+char243 "
+^o 500,694,15 2 0364 -- ocircumflex
+char244 "
+~o 500,659,15 0 0365 -- otilde
+char245 "
+:o 500,644,15 0 0366 -- odieresis
+char246 "
+char247 606,493,11 0 0367 -- divide
+/o 500,556,102 0 0370 -- oslash
+char248 "
+`u 611,699,15 2 0371 -- ugrave
+char249 "
+'u 611,699,15 2 0372 -- uacute
+char250 "
+^u 611,694,15 2 0373 -- ucircumflex
+char251 "
+:u 611,644,15 0 0374 -- udieresis
+char252 "
+'y 537,699,205 3 0375 -- yacute
+char253 "
+Tp 574,737,205 3 0376 -- thorn
+char254 "
+:y 537,644,205 1 0377 -- ydieresis
+char255 "
diff --git a/font/devps/PB b/font/devps/PB
new file mode 100644
index 000000000..ad3c7040b
--- /dev/null
+++ b/font/devps/PB
@@ -0,0 +1,449 @@
+name PB
+internalname Palatino-Bold
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -70
+A w -70
+A v -70
+A ' -92
+A Y -111
+A W -90
+A V -129
+A T -92
+F . -111
+F , -111
+F A -55
+L y -74
+L ' -74
+L Y -92
+L W -92
+L V -92
+L T -74
+P . -129
+P , -129
+P A -74
+R y -30
+R Y -55
+R W -37
+R V -74
+R T -55
+T y -90
+T w -90
+T u -129
+T ; -74
+T s -111
+T r -111
+T . -92
+T o -111
+T i -55
+T - -92
+T hy -92
+T char173 -92
+T e -111
+T , -92
+T : -74
+T c -129
+T a -111
+T A -92
+V y -90
+V u -92
+V ; -74
+V r -111
+V . -129
+V o -111
+V i -55
+V - -92
+V hy -92
+V char173 -92
+V e -111
+V , -129
+V : -74
+V a -111
+V A -129
+W y -74
+W u -74
+W ; -37
+W r -74
+W . -37
+W o -74
+W i -37
+W - -37
+W hy -37
+W char173 -37
+W e -74
+W , -92
+W : -37
+W a -74
+W A -90
+Y v -74
+Y u -74
+Y ; -55
+Y q -92
+Y . -74
+Y p -74
+Y o -74
+Y i -55
+Y - -74
+Y hy -74
+Y char173 -74
+Y e -74
+Y , -74
+Y : -55
+Y a -74
+Y A -55
+f ' 37
+f f -18
+1 1 -37
+` ` -55
+` oq -55
+oq ` -55
+oq oq -55
+' t -18
+' s -55
+' ' -55
+r ' 55
+r . -55
+r - -18
+r hy -18
+r char173 -18
+r , -55
+v . -111
+v , -111
+w . -92
+w , -92
+y . -92
+y , -92
+charset
+ha 606,678 2 0000 -- asciicircum
+ti 606,342 0 0001 -- asciitilde
+vS 611,909,17 2 0002 -- Scaron
+vZ 667,909,3 2 0003 -- Zcaron
+vs 444,693,17 2 0004 -- scaron
+vz 500,693,3 2 0005 -- zcaron
+:Y 667,895,3 2 0006 -- Ydieresis
+tm 998,678 2 0007 -- trademark
+aq 227,695 2 0010 -- quotesingle
+space 250 0 0040
+! 278,688,12 2 0041 -- exclam
+" 402,695 2 0042 -- quotedbl
+# 500,673 2 0043 -- numbersign
+sh "
+$ 500,721,114 2 0044 -- dollar
+Do "
+% 889,714,9 2 0045 -- percent
+& 833,684,17 2 0046 -- ampersand
+' 278,695 2 0047 -- quoteright
+( 333,723,104 2 0050 -- parenleft
+) 333,723,104 2 0051 -- parenright
+* 444,695 2 0052 -- asterisk
++ 606,505 0 0053 -- plus
+, 250,141,166 0 0054 -- comma
+- 333,305 0 0055 -- hyphen
+hy "
+char173 "
+. 250,144,12 0 0056 -- period
+/ 296,720,17 2 0057 -- slash
+sl "
+0 500,660,17 2 0060 -- zero
+1 500,670,3 2 0061 -- one
+2 500,660,3 2 0062 -- two
+3 500,660,17 2 0063 -- three
+4 500,672,3 2 0064 -- four
+5 500,656,17 2 0065 -- five
+6 500,660,17 2 0066 -- six
+7 500,656,3 2 0067 -- seven
+8 500,660,17 2 0070 -- eight
+9 500,660,17 2 0071 -- nine
+: 250,454,12 0 0072 -- colon
+; 250,454,166 0 0073 -- semicolon
+< 606,519,15 0 0074 -- less
+= 606,396 0 0075 -- equal
+> 606,519,15 0 0076 -- greater
+? 444,687,12 2 0077 -- question
+@ 747,681,12 2 0100 -- at
+at "
+A 778,686,3 2 0101 -- A
+B 667,681,3 2 0102 -- B
+C 722,695,17 2 0103 -- C
+D 833,681,3 2 0104 -- D
+E 611,681,4 2 0105 -- E
+F 556,681,3 2 0106 -- F
+G 833,695,17 2 0107 -- G
+H 833,681,3 2 0110 -- H
+I 389,681,3 2 0111 -- I
+J 389,681,213 2 0112 -- J
+K 778,681,3 2 0113 -- K
+L 611,681,4 2 0114 -- L
+M 1000,681,10 2 0115 -- M
+N 833,681,16 2 0116 -- N
+O 833,695,17 2 0117 -- O
+P 611,681,3 2 0120 -- P
+Q 833,695,184 2 0121 -- Q
+R 722,681,3 2 0122 -- R
+S 611,695,17 2 0123 -- S
+T 667,681,3 2 0124 -- T
+U 778,681,17 2 0125 -- U
+V 778,681,3 2 0126 -- V
+W 1000,686,3 2 0127 -- W
+X 667,695,3 2 0130 -- X
+Y 667,695,3 2 0131 -- Y
+Z 667,681,3 2 0132 -- Z
+[ 333,720,104 2 0133 -- bracketleft
+lB "
+\ 606,720 2 0134 -- backslash
+rs "
+] 333,720,104 2 0135 -- bracketright
+rB "
+a^ 333,681 2 0136 -- circumflex
+^ "
+_ 500,0,125 0 0137 -- underscore
+` 278,695 2 0140 -- quoteleft
+oq "
+a 500,471,17 0 0141 -- a
+b 611,720,17 2 0142 -- b
+c 444,471,17 0 0143 -- c
+d 611,720,17 2 0144 -- d
+e 500,471,17 0 0145 -- e
+f 389,720,3 2 0146 -- f
+g 556,471,266 1 0147 -- g
+h 611,720,3 2 0150 -- h
+i 333,706,3 2 0151 -- i
+j 333,706,266 3 0152 -- j
+k 611,720,3 2 0153 -- k
+l 333,720,3 2 0154 -- l
+m 889,471,3 0 0155 -- m
+n 611,471,3 0 0156 -- n
+o 556,471,17 0 0157 -- o
+p 611,471,258 1 0160 -- p
+q 611,471,258 1 0161 -- q
+r 389,471,3 0 0162 -- r
+s 444,471,17 0 0163 -- s
+t 333,632,17 2 0164 -- t
+u 611,471,17 0 0165 -- u
+v 556,459,3 0 0166 -- v
+w 833,471,3 0 0167 -- w
+x 500,471,3 0 0170 -- x
+y 556,459,266 1 0171 -- y
+z 500,459,3 0 0172 -- z
+lC 310,725,117 2 0173 -- braceleft
+{ "
+ba 606,720 2 0174 -- bar
+| "
+rC 310,725,117 2 0175 -- braceright
+} "
+a~ 333,661 2 0176 -- tilde
+~ "
+bq 333,130,160 0 0200 -- quotesinglbase
+Fo 500,438 0 0201 -- guillemotleft
+char171 "
+Fc 500,438 0 0202 -- guillemotright
+char187 "
+bu 606,516 0 0203 -- bullet
+Fn 500,703,242 2 0204 -- florin
+f/ 167,660 2 0205 -- fraction
+%0 1000,724,9 2 0206 -- perthousand
+dg 500,682,6 2 0207 -- dagger
+dd 500,682,245 2 0210 -- daggerdbl
+en 500,291 0 0211 -- endash
+em 1000,291 0 0212 -- emdash
+fi 611,720,3 2 0214 -- fi
+fl 611,720,3 2 0215 -- fl
+.i 333,471,3 0 0220 -- dotlessi
+ga 333,691 2 0222 -- grave
+a" 333,691 2 0223 -- hungarumlaut
+a. 333,671 2 0224 -- dotaccent
+ab 333,669 2 0225 -- breve
+ah 333,685 2 0226 -- caron
+ao 333,700 2 0227 -- ring
+ho 333,0,246 0 0230 -- ogonek
+lq 500,695 2 0231 -- quotedblleft
+rq 500,695 2 0232 -- quotedblright
+oe 833,471,17 0 0233 -- oe
+/l 333,720,3 2 0234 -- lslash
+Bq 500,130,160 0 0235 -- quotedblbase
+OE 1000,695,17 2 0236 -- OE
+/L 611,681,4 2 0237 -- Lslash
+r! 278,471,227 0 0241 -- exclamdown
+char161 "
+ct 500,554,106 0 0242 -- cent
+char162 "
+Po 500,676,19 2 0243 -- sterling
+char163 "
+Cs 500,533 0 0244 -- currency
+char164 "
+Ye 500,695,3 2 0245 -- yen
+char165 "
+bb 606,720 2 0246 -- brokenbar
+char166 "
+sc 500,695,217 2 0247 -- section
+char167 "
+ad 333,671 2 0250 -- dieresis
+char168 "
+co 747,695,17 2 0251 -- copyright
+char169 "
+Of 438,660 2 0252 -- ordfeminine
+char170 "
+fo 389,438 0 0253 -- guilsinglleft
+no 606,396 0 0254 -- logicalnot
+char172 "
+\- 606,298 0 0255 -- minus
+rg 747,695,17 2 0256 -- registered
+char174 "
+a- 333,609 0 0257 -- macron
+char175 "
+de 400,660 2 0260 -- degree
+char176 "
+char177 606,505 0 0261 -- plusminus
+S2 300,660 2 0262 -- twosuperior
+char178 "
+S3 300,667 2 0263 -- threesuperior
+char179 "
+aa 333,691 2 0264 -- acute
+char180 "
+char181 611,471,225 0 0265 -- mu
+ps 641,683,161 2 0266 -- paragraph
+char182 "
+char183 250,335 0 0267 -- periodcentered
+ac 333,0,225 0 0270 -- cedilla
+char184 "
+S1 300,665 2 0271 -- onesuperior
+char185 "
+Om 488,660 2 0272 -- ordmasculine
+char186 "
+fc 389,438 0 0273 -- guilsinglright
+14 750,665,2 2 0274 -- onequarter
+char188 "
+12 750,665,2 2 0275 -- onehalf
+char189 "
+34 750,667,2 2 0276 -- threequarters
+char190 "
+r? 444,471,231 0 0277 -- questiondown
+char191 "
+`A 778,915,3 2 0300 -- Agrave
+char192 "
+'A 778,915,3 2 0301 -- Aacute
+char193 "
+^A 778,905,3 2 0302 -- Acircumflex
+char194 "
+~A 778,885,3 2 0303 -- Atilde
+char195 "
+:A 778,895,3 2 0304 -- Adieresis
+char196 "
+oA 778,924,3 2 0305 -- Aring
+char197 "
+AE 1000,681,4 2 0306 -- AE
+char198 "
+,C 722,695,225 2 0307 -- Ccedilla
+char199 "
+`E 611,915,4 2 0310 -- Egrave
+char200 "
+'E 611,915,4 2 0311 -- Eacute
+char201 "
+^E 611,905,4 2 0312 -- Ecircumflex
+char202 "
+:E 611,895,4 2 0313 -- Edieresis
+char203 "
+`I 389,915,3 2 0314 -- Igrave
+char204 "
+'I 389,915,3 2 0315 -- Iacute
+char205 "
+^I 389,905,3 2 0316 -- Icircumflex
+char206 "
+:I 389,895,3 2 0317 -- Idieresis
+char207 "
+-D 833,681,3 2 0320 -- Eth
+char208 "
+~N 833,885,16 2 0321 -- Ntilde
+char209 "
+`O 833,915,17 2 0322 -- Ograve
+char210 "
+'O 833,915,17 2 0323 -- Oacute
+char211 "
+^O 833,905,17 2 0324 -- Ocircumflex
+char212 "
+~O 833,885,17 2 0325 -- Otilde
+char213 "
+:O 833,895,17 2 0326 -- Odieresis
+char214 "
+char215 606,483 0 0327 -- multiply
+/O 833,698,20 2 0330 -- Oslash
+char216 "
+`U 778,915,17 2 0331 -- Ugrave
+char217 "
+'U 778,915,17 2 0332 -- Uacute
+char218 "
+^U 778,905,17 2 0333 -- Ucircumflex
+char219 "
+:U 778,895,17 2 0334 -- Udieresis
+char220 "
+'Y 667,915,3 2 0335 -- Yacute
+char221 "
+TP 611,681,3 2 0336 -- Thorn
+char222 "
+ss 611,720,17 2 0337 -- germandbls
+char223 "
+`a 500,711,17 2 0340 -- agrave
+char224 "
+'a 500,711,17 2 0341 -- aacute
+char225 "
+^a 500,701,17 2 0342 -- acircumflex
+char226 "
+~a 500,673,17 2 0343 -- atilde
+char227 "
+:a 500,691,17 2 0344 -- adieresis
+char228 "
+oa 500,700,17 2 0345 -- aring
+char229 "
+ae 778,471,17 0 0346 -- ae
+char230 "
+,c 444,471,225 0 0347 -- ccedilla
+char231 "
+`e 500,711,17 2 0350 -- egrave
+char232 "
+'e 500,711,17 2 0351 -- eacute
+char233 "
+^e 500,701,17 2 0352 -- ecircumflex
+char234 "
+:e 500,691,17 2 0353 -- edieresis
+char235 "
+`i 333,711,3 2 0354 -- igrave
+char236 "
+'i 333,711,3 2 0355 -- iacute
+char237 "
+^i 333,701,3 2 0356 -- icircumflex
+char238 "
+:i 333,691,3 2 0357 -- idieresis
+char239 "
+Sd 556,720,17 2 0360 -- eth
+char240 "
+~n 611,673,3 2 0361 -- ntilde
+char241 "
+`o 556,711,17 2 0362 -- ograve
+char242 "
+'o 556,711,17 2 0363 -- oacute
+char243 "
+^o 556,701,17 2 0364 -- ocircumflex
+char244 "
+~o 556,673,17 2 0365 -- otilde
+char245 "
+:o 556,691,17 2 0366 -- odieresis
+char246 "
+char247 606,510 0 0367 -- divide
+/o 556,471,18 0 0370 -- oslash
+char248 "
+`u 611,711,17 2 0371 -- ugrave
+char249 "
+'u 611,711,17 2 0372 -- uacute
+char250 "
+^u 611,701,17 2 0373 -- ucircumflex
+char251 "
+:u 611,691,17 2 0374 -- udieresis
+char252 "
+'y 556,711,266 3 0375 -- yacute
+char253 "
+Tp 611,720,258 3 0376 -- thorn
+char254 "
+:y 556,691,266 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/PBI b/font/devps/PBI
new file mode 100644
index 000000000..f17c1042f
--- /dev/null
+++ b/font/devps/PBI
@@ -0,0 +1,451 @@
+name PBI
+internalname Palatino-BoldItalic
+slant 10
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -55
+A w -37
+A v -55
+A ' -55
+A Y -74
+A W -74
+A V -74
+A T -55
+F . -111
+F , -111
+F A -74
+L y -37
+L ' -55
+L Y -74
+L W -74
+L V -74
+L T -74
+P . -129
+P , -129
+P A -92
+R y -20
+R Y -37
+R W -55
+R V -55
+R T -37
+T y -80
+T w -50
+T u -92
+T ; -55
+T s -92
+T r -92
+T . -55
+T o -111
+T i -74
+T - -92
+T hy -92
+T char173 -92
+T e -111
+T , -55
+T : -55
+T c -92
+T a -111
+T O -18
+T A -55
+V y -50
+V u -50
+V ; -37
+V r -74
+V . -111
+V o -74
+V i -50
+V - -37
+V hy -37
+V char173 -37
+V e -74
+V , -111
+V : -37
+V a -92
+V A -74
+W y -30
+W u -30
+W ; -18
+W r -30
+W . -55
+W o -55
+W i -30
+W e -55
+W , -55
+W : -28
+W a -74
+W A -74
+Y v -30
+Y u -50
+Y ; -55
+Y q -92
+Y . -55
+Y p -74
+Y o -111
+Y i -54
+Y - -55
+Y hy -55
+Y char173 -55
+Y e -92
+Y , -55
+Y : -55
+Y a -111
+Y A -55
+f ' 37
+f f -37
+1 1 -55
+` ` -55
+` oq -55
+oq ` -55
+oq oq -55
+' t -18
+' s -37
+' ' -55
+r ' 55
+r q -18
+r . -55
+r o -18
+r h -18
+r g -18
+r e -18
+r , -55
+r c -18
+v . -55
+v , -55
+w . -55
+w , -55
+y . -37
+y , -37
+charset
+ha 606,678,0,0,-13 2 0000 -- asciicircum
+ti 606,346,0,0,-1 0 0001 -- asciitilde
+vS 556,896,17,51,0,51 2 0002 -- Scaron
+vZ 667,896,3,59,49,59 2 0003 -- Zcaron
+vs 444,692,17,95,25,66 2 0004 -- scaron
+vz 500,692,17,67,19,66 2 0005 -- zcaron
+:Y 611,880,3,114,-4,66 2 0006 -- Ydieresis
+tm 1000,678,0,11,12,11 2 0007 -- trademark
+aq 250,720,0,93,-77,66 2 0010 -- quotesingle
+space 250 0 0040
+! 333,695,17,39,-8,39 2 0041 -- exclam
+" 500,720,0,43,-87,43 2 0042 -- quotedbl
+# 500,673,0,46,46,46 2 0043 -- numbersign
+sh "
+$ 500,737,108,27,30,27 2 0044 -- dollar
+Do "
+% 889,697,17,0,-6 2 0045 -- percent
+& 833,695,17,28,-24,28 2 0046 -- ampersand
+' 278,720,0,74,-26,66 2 0047 -- quoteright
+( 333,723,129,85,-8,66 2 0050 -- parenleft
+) 333,723,129,15,62,15 2 0051 -- parenright
+* 444,695,0,45,-34,45 2 0052 -- asterisk
++ 606,501,5 0 0053 -- plus
+, 250,147,164,8,83,8 0 0054 -- comma
+- 389,300,0,23,13,23 0 0055 -- hyphen
+hy "
+char173 "
+. 250,135,17,0,2 0 0056 -- period
+/ 315,720,17,50,49,50 2 0057 -- slash
+sl "
+0 500,683,17,40,8,40 2 0060 -- zero
+1 500,678,3,0,9 2 0061 -- one
+2 500,683,3,4,49,4 2 0062 -- two
+3 500,683,17,0,42 2 0063 -- three
+4 500,683,3,37,47,37 2 0064 -- four
+5 500,675,17,31,36,31 2 0065 -- five
+6 500,683,17,38,11,38 2 0066 -- six
+7 500,674,3,94,-19,66 2 0067 -- seven
+8 500,683,17,34,24,34 2 0070 -- eight
+9 500,683,17,41,23,41 2 0071 -- nine
+: 250,452,17,36,12,36 0 0072 -- colon
+; 250,452,164,47,83,47 0 0073 -- semicolon
+< 606,517,21,2,1,2 0 0074 -- less
+= 606,390,0,0,-1 0 0075 -- equal
+> 606,517,21,1,2,1 0 0076 -- greater
+? 444,695,17,56,-41,56 2 0077 -- question
+@ 833,681,12,0,-32 2 0100 -- at
+at "
+A 722,683,3,13,85,13 2 0101 -- A
+B 667,681,3,12,42,12 2 0102 -- B
+C 685,695,17,60,-19,60 2 0103 -- C
+D 778,682,3,19,50,19 2 0104 -- D
+E 611,681,3,45,39,45 2 0105 -- E
+F 556,681,3,87,56,66 2 0106 -- F
+G 778,695,17,22,-22,22 2 0107 -- G
+H 778,681,3,98,62,66 2 0110 -- H
+I 389,681,3,73,51,66 2 0111 -- I
+J 389,681,207,78,79,66 2 0112 -- J
+K 722,681,3,74,60,66 2 0113 -- K
+L 611,681,3,17,24,17 2 0114 -- L
+M 944,681,17,91,73,66 2 0115 -- M
+N 778,681,3,101,52,66 2 0116 -- N
+O 833,695,17,11,-26,11 2 0117 -- O
+P 667,681,3,56,39,56 2 0120 -- P
+Q 833,695,222,11,-26,11 2 0121 -- Q
+R 722,681,3,25,46,25 2 0122 -- R
+S 556,695,17,11,0,11 2 0123 -- S
+T 611,681,3,113,-6,66 2 0124 -- T
+U 778,681,17,97,-33,66 2 0125 -- U
+V 667,681,3,128,-17,66 2 0126 -- V
+W 1000,689,3,123,-17,66 2 0127 -- W
+X 722,681,3,100,59,66 2 0130 -- X
+Y 611,695,3,114,-4,66 2 0131 -- Y
+Z 667,681,3,59,49,59 2 0132 -- Z
+[ 333,723,102,98,5,66 2 0133 -- bracketleft
+lB "
+\ 606,720,0,0,-22 2 0134 -- backslash
+rs "
+] 333,723,102,32,71,32 2 0135 -- bracketright
+rB "
+a^ 333,684,0,132,-38,66 2 0136 -- circumflex
+^ "
+_ 500,0,125,50,50,50 0 0137 -- underscore
+` 278,720,0,63,-15,63 2 0140 -- quoteleft
+oq "
+a 556,470,17,13,6,13 0 0141 -- a
+b 537,726,17,7,6,7 2 0142 -- b
+c 444,469,17,42,18,42 0 0143 -- c
+d 556,726,17,44,12,44 2 0144 -- d
+e 444,469,17,24,22,24 0 0145 -- e
+f 333,726,271,166,180,66 3 0146 -- f
+g 500,469,271,79,100,66 1 0147 -- g
+h 556,726,17,16,28,16 2 0150 -- h
+i 333,695,17,29,24,29 2 0151 -- i
+j 333,695,271,40,114,40 3 0152 -- j
+k 556,726,17,22,16,22 2 0153 -- k
+l 333,726,17,35,-14,35 2 0154 -- l
+m 833,469,17,20,31,20 0 0155 -- m
+n 556,469,17,15,33,15 0 0156 -- n
+o 556,469,17,0,2 0 0157 -- o
+p 556,469,271,10,71,10 1 0160 -- p
+q 537,469,271,26,18,26 1 0161 -- q
+r 389,469,17,72,30,66 0 0162 -- r
+s 444,469,17,12,25,12 0 0163 -- s
+t 389,636,17,70,8,66 2 0164 -- t
+u 556,469,17,15,28,15 0 0165 -- u
+v 556,469,17,7,31,7 0 0166 -- v
+w 833,469,17,19,23,19 0 0167 -- w
+x 500,469,17,50,58,50 0 0170 -- x
+y 556,469,271,35,37,35 1 0171 -- y
+z 500,469,17,20,19,20 0 0172 -- z
+lC 333,720,105,51,32,51 2 0173 -- braceleft
+{ "
+ba 606,720,0,0,-209 2 0174 -- bar
+| "
+rC 333,720,105,32,51,32 2 0175 -- braceright
+} "
+a~ 333,654,0,158,-32,66 2 0176 -- tilde
+~ "
+bq 250,145,144,20,53,20 0 0200 -- quotesinglbase
+Fo 500,446,0,8,15,8 0 0201 -- guillemotleft
+char171 "
+Fc 500,443,0,8,15,8 0 0202 -- guillemotright
+char187 "
+bu 606,516,0,0,-81 0 0203 -- bullet
+Fn 500,690,242,29,42,29 2 0204 -- florin
+f/ 167,683,0,221,220,66 2 0205 -- fraction
+%0 1000,691,17,0,-15 2 0206 -- perthousand
+dg 556,685,3,0,-17 2 0207 -- dagger
+dd 556,693,153,31,17,31 2 0210 -- daggerdbl
+en 500,282,0,62,62,62 0 0211 -- endash
+em 1000,282,0,62,62,62 0 0212 -- emdash
+fi 611,726,271,27,180,27 3 0214 -- fi
+fl 611,726,271,70,180,66 3 0215 -- fl
+.i 333,469,17,10,24,10 0 0220 -- dotlessi
+ga 333,699,0,39,-60,39 2 0222 -- grave
+a" 333,699,0,126,78,66 2 0223 -- hungarumlaut
+a. 333,668,0,42,-152,42 2 0224 -- dotaccent
+ab 333,680,0,129,-46,66 2 0225 -- breve
+ah 333,684,0,162,-63,66 2 0226 -- caron
+ao 556,714,0,0,-227 2 0227 -- ring
+ho 333,0,206,0,18 0 0230 -- ogonek
+lq 500,720,0,61,-15,61 2 0231 -- quotedblleft
+rq 500,720,0,69,-23,66 2 0232 -- quotedblright
+oe 778,469,17,27,2,27 0 0233 -- oe
+/l 333,726,17,82,37,66 2 0234 -- lslash
+Bq 500,145,144,0,68 0 0235 -- quotedblbase
+OE 944,695,17,67,11,66 2 0236 -- OE
+/L 611,681,3,17,44,17 2 0237 -- Lslash
+r! 333,479,225,0,48 0 0241 -- exclamdown
+char161 "
+ct 500,547,105,6,-2,6 0 0242 -- cent
+char162 "
+Po 500,683,5,51,29,51 2 0243 -- sterling
+char163 "
+Cs 500,533,0,18,18,18 0 0244 -- currency
+char164 "
+Ye 500,695,3,88,39,66 2 0245 -- yen
+char165 "
+bb 606,720,0,0,-209 2 0246 -- brokenbar
+char166 "
+sc 556,695,151,0,3 2 0247 -- section
+char167 "
+ad 333,668,0,143,-40,66 2 0250 -- dieresis
+char168 "
+co 747,695,17,23,24,23 2 0251 -- copyright
+char169 "
+Of 333,684,0,72,3,66 2 0252 -- ordfeminine
+char170 "
+fo 333,446,0,9,-10,9 0 0253 -- guilsinglleft
+no 606,390,0,0,-1 0 0254 -- logicalnot
+char172 "
+\- 606,292,0,0,-1 0 0255 -- minus
+rg 747,695,17,23,24,23 2 0256 -- registered
+char174 "
+a- 333,608,0,135,-26,66 0 0257 -- macron
+char175 "
+de 400,683 2 0260 -- degree
+char176 "
+char177 606,501 0 0261 -- plusminus
+S2 300,683,0,71,24,66 2 0262 -- twosuperior
+char178 "
+S3 300,683,0,60,27,60 2 0263 -- threesuperior
+char179 "
+aa 333,699,0,109,-103,66 2 0264 -- acute
+char180 "
+char181 556,469,232,15,65,15 0 0265 -- mu
+ps 556,681,204,123,36,66 2 0266 -- paragraph
+char182 "
+char183 250,324,0,6,-17,6 0 0267 -- periodcentered
+ac 333,5,218,0,38 0 0270 -- cedilla
+char184 "
+S1 300,680,0,48,9,48 2 0271 -- onesuperior
+char185 "
+Om 333,683,0,63,-1,63 2 0272 -- ordmasculine
+char186 "
+fc 333,443,0,0,15 0 0273 -- guilsinglright
+14 750,683,2,32,32,32 2 0274 -- onequarter
+char188 "
+12 750,683,2,36,36,36 2 0275 -- onehalf
+char189 "
+34 750,683,2,32,32,32 2 0276 -- threequarters
+char190 "
+r? 444,479,226,0,62 0 0277 -- questiondown
+char191 "
+`A 722,911,3,13,85,13 2 0300 -- Agrave
+char192 "
+'A 722,911,3,13,85,13 2 0301 -- Aacute
+char193 "
+^A 722,896,3,13,85,13 2 0302 -- Acircumflex
+char194 "
+~A 722,866,3,13,85,13 2 0303 -- Atilde
+char195 "
+:A 722,880,3,13,85,13 2 0304 -- Adieresis
+char196 "
+oA 722,926,3,13,85,13 2 0305 -- Aring
+char197 "
+AE 944,681,3,33,79,33 2 0306 -- AE
+char198 "
+,C 685,695,218,60,-19,60 2 0307 -- Ccedilla
+char199 "
+`E 611,911,3,45,39,45 2 0310 -- Egrave
+char200 "
+'E 611,911,3,45,39,45 2 0311 -- Eacute
+char201 "
+^E 611,896,3,45,39,45 2 0312 -- Ecircumflex
+char202 "
+:E 611,880,3,45,39,45 2 0313 -- Edieresis
+char203 "
+`I 389,911,3,73,51,66 2 0314 -- Igrave
+char204 "
+'I 389,911,3,81,51,66 2 0315 -- Iacute
+char205 "
+^I 389,896,3,104,51,66 2 0316 -- Icircumflex
+char206 "
+:I 389,880,3,115,51,66 2 0317 -- Idieresis
+char207 "
+-D 778,682,3,19,50,19 2 0320 -- Eth
+char208 "
+~N 778,866,3,101,52,66 2 0321 -- Ntilde
+char209 "
+`O 833,911,17,11,-26,11 2 0322 -- Ograve
+char210 "
+'O 833,911,17,11,-26,11 2 0323 -- Oacute
+char211 "
+^O 833,896,17,11,-26,11 2 0324 -- Ocircumflex
+char212 "
+~O 833,866,17,11,-26,11 2 0325 -- Otilde
+char213 "
+:O 833,880,17,11,-26,11 2 0326 -- Odieresis
+char214 "
+char215 606,479,0,0,-22 0 0327 -- multiply
+/O 833,730,54,14,-7,14 2 0330 -- Oslash
+char216 "
+`U 778,911,17,97,-33,66 2 0331 -- Ugrave
+char217 "
+'U 778,911,17,97,-33,66 2 0332 -- Uacute
+char218 "
+^U 778,896,17,97,-33,66 2 0333 -- Ucircumflex
+char219 "
+:U 778,880,17,97,-33,66 2 0334 -- Udieresis
+char220 "
+'Y 611,911,3,114,-4,66 2 0335 -- Yacute
+char221 "
+TP 667,681,3,27,39,27 2 0336 -- Thorn
+char222 "
+ss 556,726,271,43,181,43 3 0337 -- germandbls
+char223 "
+`a 556,719,17,13,6,13 2 0340 -- agrave
+char224 "
+'a 556,719,17,13,6,13 2 0341 -- aacute
+char225 "
+^a 556,704,17,21,6,21 2 0342 -- acircumflex
+char226 "
+~a 556,666,17,47,6,47 2 0343 -- atilde
+char227 "
+:a 556,688,17,32,6,32 2 0344 -- adieresis
+char228 "
+oa 556,714,17,13,6,13 2 0345 -- aring
+char229 "
+ae 738,469,17,23,6,23 0 0346 -- ae
+char230 "
+,c 444,469,218,42,18,42 0 0347 -- ccedilla
+char231 "
+`e 444,719,17,24,22,24 2 0350 -- egrave
+char232 "
+'e 444,719,17,54,22,54 2 0351 -- eacute
+char233 "
+^e 444,704,17,77,22,66 2 0352 -- ecircumflex
+char234 "
+:e 444,688,17,88,22,66 2 0353 -- edieresis
+char235 "
+`i 333,719,17,39,24,39 2 0354 -- igrave
+char236 "
+'i 333,719,17,109,24,66 2 0355 -- iacute
+char237 "
+^i 333,704,17,120,24,66 2 0356 -- icircumflex
+char238 "
+:i 333,688,17,143,24,66 2 0357 -- idieresis
+char239 "
+Sd 556,726,17,40,2,40 2 0360 -- eth
+char240 "
+~n 556,666,17,47,33,47 2 0361 -- ntilde
+char241 "
+`o 556,719,17,0,2 2 0362 -- ograve
+char242 "
+'o 556,719,17,0,2 2 0363 -- oacute
+char243 "
+^o 556,704,17,9,2,9 2 0364 -- ocircumflex
+char244 "
+~o 556,666,17,47,2,47 2 0365 -- otilde
+char245 "
+:o 556,688,17,32,2,32 2 0366 -- odieresis
+char246 "
+char247 606,501,5 0 0367 -- divide
+/o 556,506,50,16,36,16 0 0370 -- oslash
+char248 "
+`u 556,719,17,15,28,15 2 0371 -- ugrave
+char249 "
+'u 556,719,17,15,28,15 2 0372 -- uacute
+char250 "
+^u 556,704,17,15,28,15 2 0373 -- ucircumflex
+char251 "
+:u 556,688,17,32,28,32 2 0374 -- udieresis
+char252 "
+'y 556,719,271,35,37,35 3 0375 -- yacute
+char253 "
+Tp 556,726,271,10,71,10 3 0376 -- thorn
+char254 "
+:y 556,688,271,35,37,35 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/PI b/font/devps/PI
new file mode 100644
index 000000000..3b703b1ab
--- /dev/null
+++ b/font/devps/PI
@@ -0,0 +1,453 @@
+name PI
+internalname Palatino-Italic
+slant 10
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -55
+A w -37
+A v -37
+A ' -55
+A Y -55
+A W -55
+A V -74
+A T -55
+F . -111
+F , -111
+F A -111
+L y -37
+L ' -37
+L Y -74
+L W -74
+L V -74
+L T -74
+P . -129
+P , -129
+P A -129
+R y -37
+R Y -55
+R W -55
+R V -74
+R T -55
+T y -92
+T w -92
+T u -111
+T ; -74
+T s -111
+T r -111
+T . -74
+T o -111
+T i -55
+T - -55
+T hy -55
+T char173 -55
+T e -111
+T , -74
+T : -74
+T c -111
+T a -111
+T O -18
+T A -92
+V y -74
+V u -74
+V ; -37
+V r -92
+V . -129
+V o -74
+V i -74
+V - -55
+V hy -55
+V char173 -55
+V e -92
+V , -129
+V : -37
+V a -74
+V A -210
+W y -20
+W u -20
+W ; -18
+W r -20
+W . -55
+W o -20
+W i -20
+W - -18
+W hy -18
+W char173 -18
+W e -20
+W , -55
+W : -18
+W a -20
+W A -92
+Y v -74
+Y u -92
+Y ; -74
+Y q -92
+Y . -92
+Y p -74
+Y o -111
+Y i -55
+Y - -74
+Y hy -74
+Y char173 -74
+Y e -111
+Y , -92
+Y : -74
+Y a -92
+Y A -92
+f ' 55
+1 1 -55
+` ` -74
+` oq -74
+oq ` -74
+oq oq -74
+' t -37
+' s -55
+' ' -74
+r ' 37
+r q -18
+r . -74
+r o -18
+r h -18
+r g -18
+r e -18
+r , -74
+r c -18
+v . -55
+v , -55
+w . -55
+w , -55
+y . -37
+y , -37
+charset
+ha 606,689,0,0,-1 2 0000 -- asciicircum
+ti 606,339,0,0,-1 0 0001 -- asciitilde
+vS 556,907,18,33,8,33 2 0002 -- Scaron
+vZ 667,907,3,20,30,20 2 0003 -- Zcaron
+vs 389,687,11,80,41,68 2 0004 -- scaron
+vz 444,687,11,53,51,53 2 0005 -- zcaron
+:Y 667,847,3,58,-2,58 2 0006 -- Ydieresis
+tm 1000,689,0,1,-2,1 2 0007 -- trademark
+aq 333,733,0,5,-90,5 2 0010 -- quotesingle
+space 250 0 0040
+! 333,733,8,9,-26,9 2 0041 -- exclam
+" 500,733,0,5,-90,5 2 0042 -- quotedbl
+# 500,692,0,45,46,45 2 0043 -- numbersign
+sh "
+$ 500,733,113,2,35,2 2 0044 -- dollar
+Do "
+% 889,710,7,0,-24 2 0045 -- percent
+& 778,692,18,38,3,38 2 0046 -- ampersand
+' 278,733,0,30,-28,30 2 0047 -- quoteright
+( 333,733,106,48,-4,48 2 0050 -- parenleft
+) 333,733,106,0,48 2 0051 -- parenright
+* 389,706,0,61,-26,61 2 0052 -- asterisk
++ 606,504,0,0,-1 0 0053 -- plus
+, 250,123,143,3,42,3 0 0054 -- comma
+- 333,281,0,21,31,21 0 0055 -- hyphen
+hy "
+char173 "
+. 250,112,5,0,-3 0 0056 -- period
+/ 296,733,119,146,90,68 2 0057 -- slash
+sl "
+0 500,699,11,30,14,30 2 0060 -- zero
+1 500,699,3,0,-4 2 0061 -- one
+2 500,699,3,0,38 2 0062 -- two
+3 500,699,11,0,28 2 0063 -- three
+4 500,699,3,28,35,28 2 0064 -- four
+5 500,693,11,41,36,41 2 0065 -- five
+6 500,699,11,19,1,19 2 0066 -- six
+7 500,692,3,52,-3,52 2 0067 -- seven
+8 500,699,11,19,14,19 2 0070 -- eight
+9 500,699,11,18,18,18 2 0071 -- nine
+: 250,458,5,7,6,7 0 0072 -- colon
+; 250,456,146,19,59,19 0 0073 -- semicolon
+< 606,516,6,0,-3 0 0074 -- less
+= 606,378,0,0,-1 0 0075 -- equal
+> 606,516,6,0,-3 0 0076 -- greater
+? 500,706,8,0,-64 2 0077 -- question
+@ 747,706,18,21,23,21 2 0100 -- at
+at "
+A 722,705,3,5,69,5 2 0101 -- A
+B 611,692,6,0,24 2 0102 -- B
+C 667,706,18,34,5,34 2 0103 -- C
+D 778,692,3,13,22,13 2 0104 -- D
+E 611,692,3,9,20,9 2 0105 -- E
+F 556,692,3,42,50,42 2 0106 -- F
+G 722,706,18,22,0,22 2 0107 -- G
+H 778,692,3,72,53,68 2 0110 -- H
+I 333,692,3,71,43,68 2 0111 -- I
+J 333,692,206,75,85,68 2 0112 -- J
+K 667,692,3,66,37,66 2 0113 -- K
+L 556,692,3,17,34,17 2 0114 -- L
+M 944,692,18,46,69,46 2 0115 -- M
+N 778,692,11,76,48,68 2 0116 -- N
+O 778,706,18,20,-3,20 2 0117 -- O
+P 611,692,3,33,41,33 2 0120 -- P
+Q 778,706,201,20,-3,20 2 0121 -- Q
+R 667,692,3,22,41,22 2 0122 -- R
+S 556,706,18,0,8 2 0123 -- S
+T 611,692,3,74,-3,68 2 0124 -- T
+U 778,692,18,70,-38,68 2 0125 -- U
+V 722,692,8,82,-25,68 2 0126 -- V
+W 944,700,8,86,-21,68 2 0127 -- W
+X 722,692,3,62,30,62 2 0130 -- X
+Y 667,705,3,58,-2,58 2 0131 -- Y
+Z 667,692,3,20,30,20 2 0132 -- Z
+[ 333,733,100,43,32,43 2 0133 -- bracketleft
+lB "
+\ 606,733,0,0,-31 2 0134 -- backslash
+rs "
+] 333,733,100,32,43,32 2 0135 -- bracketright
+rB "
+a^ 333,679,0,67,-6,67 2 0136 -- circumflex
+^ "
+_ 500,0,125,50,50,50 0 0137 -- underscore
+` 278,733,0,30,-28,30 2 0140 -- quoteleft
+oq "
+a 444,482,11,12,46,12 0 0141 -- a
+b 463,733,11,20,13,20 2 0142 -- b
+c 407,482,11,32,25,32 0 0143 -- c
+d 500,733,11,33,33,33 2 0144 -- d
+e 389,482,11,35,35,35 0 0145 -- e
+f 278,733,276,185,212,68 3 0146 -- f
+g 500,482,276,48,87,48 1 0147 -- g
+h 500,733,9,21,40,21 2 0150 -- h
+i 278,712,9,36,16,36 2 0151 -- i
+j 278,712,276,37,120,37 3 0152 -- j
+k 444,733,9,55,42,55 2 0153 -- k
+l 278,733,9,23,14,23 2 0154 -- l
+m 778,482,9,12,26,12 0 0155 -- m
+n 556,482,9,8,26,8 0 0156 -- n
+o 444,482,11,17,33,17 0 0157 -- o
+p 500,482,276,15,57,15 1 0160 -- p
+q 463,482,276,19,26,19 1 0161 -- q
+r 389,482,9,45,24,45 0 0162 -- r
+s 389,482,11,6,41,6 0 0163 -- s
+t 333,646,9,27,9,27 2 0164 -- t
+u 556,482,11,6,18,6 0 0165 -- u
+v 500,482,11,27,29,27 0 0166 -- v
+w 722,482,11,27,29,27 0 0167 -- w
+x 500,482,11,34,41,34 0 0170 -- x
+y 500,482,276,40,58,40 1 0171 -- y
+z 444,482,11,22,51,22 0 0172 -- z
+lC 333,733,100,36,35,36 2 0173 -- braceleft
+{ "
+ba 606,733,0,0,-225 2 0174 -- bar
+| "
+rC 333,733,100,35,36,35 2 0175 -- braceright
+} "
+a~ 333,638,0,107,-13,68 0 0176 -- tilde
+~ "
+bq 278,120,122,0,23 0 0200 -- quotesinglbase
+Fo 500,440,0,0,-7 0 0201 -- guillemotleft
+char171 "
+Fc 500,440,0,0,-13 0 0202 -- guillemotright
+char187 "
+bu 500,526,0,0,-36 0 0203 -- bullet
+Fn 500,708,276,20,45,20 3 0204 -- florin
+f/ 167,699,0,220,220,68 2 0205 -- fraction
+%0 1000,717,6,0,-22 2 0206 -- perthousand
+dg 500,692,0,19,2,19 2 0207 -- dagger
+dd 500,692,162,44,40,44 2 0210 -- daggerdbl
+en 500,278,0,60,60,60 0 0211 -- endash
+em 1000,278,0,60,60,60 0 0212 -- emdash
+fi 528,733,276,24,212,24 3 0214 -- fi
+fl 545,733,276,25,212,25 3 0215 -- fl
+.i 278,482,9,13,16,13 0 0220 -- dotlessi
+ga 333,687,0,27,-36,27 2 0222 -- grave
+a" 333,730,0,102,4,68 2 0223 -- hungarumlaut
+a. 333,645,0,0,-125 2 0224 -- dotaccent
+ab 333,677,0,110,-42,68 2 0225 -- breve
+ah 333,679,0,126,-54,68 2 0226 -- caron
+ao 333,708,0,76,-109,68 2 0227 -- ring
+ho 333,0,207,0,12 0 0230 -- ogonek
+lq 500,733,0,25,-48,25 2 0231 -- quotedblleft
+rq 500,733,0,25,-48,25 2 0232 -- quotedblright
+oe 669,482,11,35,33,35 0 0233 -- oe
+/l 278,733,9,74,60,68 2 0234 -- lslash
+Bq 500,120,122,0,7 0 0235 -- quotedblbase
+OE 1028,706,18,11,-6,11 2 0236 -- OE
+/L 556,692,3,17,66,17 2 0237 -- Lslash
+r! 333,467,276,0,35 1 0241 -- exclamdown
+char161 "
+ct 500,551,96,0,-6 0 0242 -- cent
+char162 "
+Po 500,708,18,29,48,29 2 0243 -- sterling
+char163 "
+Cs 500,577,0,36,36,36 0 0244 -- currency
+char164 "
+Ye 500,699,3,62,15,62 2 0245 -- yen
+char165 "
+bb 606,733,0,0,-225 2 0246 -- brokenbar
+char166 "
+sc 500,706,220,13,36,13 2 0247 -- section
+char167 "
+ad 333,637,0,95,-28,68 0 0250 -- dieresis
+char168 "
+co 747,706,18,39,39,39 2 0251 -- copyright
+char169 "
+Of 333,699,0,38,-10,38 2 0252 -- ordfeminine
+char170 "
+fo 333,440,0,0,-7 0 0253 -- guilsinglleft
+no 606,378,0,0,-1 0 0254 -- logicalnot
+char172 "
+\- 606,280,0,0,-1 0 0255 -- minus
+rg 747,706,18,39,39,39 2 0256 -- registered
+char174 "
+a- 333,589,0,103,-24,68 0 0257 -- macron
+char175 "
+de 400,689,0,40,-40,40 2 0260 -- degree
+char176 "
+char177 606,504,0,0,-1 0 0261 -- plusminus
+S2 300,699,0,40,37,40 2 0262 -- twosuperior
+char178 "
+S3 300,699,0,54,22,54 2 0263 -- threesuperior
+char179 "
+aa 333,687,0,63,-72,63 2 0264 -- acute
+char180 "
+char181 556,482,226,6,35,6 0 0265 -- mu
+ps 500,692,224,161,17,68 2 0266 -- paragraph
+char182 "
+char183 250,312,0,0,-3 0 0267 -- periodcentered
+ac 333,0,216,0,59 0 0270 -- cedilla
+char184 "
+S1 300,699,0,35,-11,35 2 0271 -- onesuperior
+char185 "
+Om 333,699,0,39,-16,39 2 0272 -- ordmasculine
+char186 "
+fc 333,440,0,0,-13 0 0273 -- guilsinglright
+14 750,699,2,15,19,15 2 0274 -- onequarter
+char188 "
+12 750,699,2,21,19,21 2 0275 -- onehalf
+char189 "
+34 750,699,2,15,15,15 2 0276 -- threequarters
+char190 "
+r? 500,467,246,0,-7 0 0277 -- questiondown
+char191 "
+`A 722,897,3,5,69,5 2 0300 -- Agrave
+char192 "
+'A 722,897,3,5,69,5 2 0301 -- Aacute
+char193 "
+^A 722,889,3,5,69,5 2 0302 -- Acircumflex
+char194 "
+~A 722,866,3,5,69,5 2 0303 -- Atilde
+char195 "
+:A 722,847,3,5,69,5 2 0304 -- Adieresis
+char196 "
+oA 722,918,3,5,69,5 2 0305 -- Aring
+char197 "
+AE 941,692,3,11,54,11 2 0306 -- AE
+char198 "
+,C 667,706,216,34,5,34 2 0307 -- Ccedilla
+char199 "
+`E 611,897,3,9,20,9 2 0310 -- Egrave
+char200 "
+'E 611,897,3,9,20,9 2 0311 -- Eacute
+char201 "
+^E 611,889,3,9,20,9 2 0312 -- Ecircumflex
+char202 "
+:E 611,847,3,9,20,9 2 0313 -- Edieresis
+char203 "
+`I 333,897,3,71,43,68 2 0314 -- Igrave
+char204 "
+'I 333,897,3,123,43,68 2 0315 -- Iacute
+char205 "
+^I 333,889,3,107,43,68 2 0316 -- Icircumflex
+char206 "
+:I 333,847,3,135,43,68 2 0317 -- Idieresis
+char207 "
+-D 778,692,3,13,31,13 2 0320 -- Eth
+char208 "
+~N 778,866,11,76,48,68 2 0321 -- Ntilde
+char209 "
+`O 778,897,18,20,-3,20 2 0322 -- Ograve
+char210 "
+'O 778,897,18,20,-3,20 2 0323 -- Oacute
+char211 "
+^O 778,889,18,20,-3,20 2 0324 -- Ocircumflex
+char212 "
+~O 778,866,18,20,-3,20 2 0325 -- Otilde
+char213 "
+:O 778,847,18,20,-3,20 2 0326 -- Odieresis
+char214 "
+char215 606,474,0,0,-33 0 0327 -- multiply
+/O 778,721,39,34,18,34 2 0330 -- Oslash
+char216 "
+`U 778,897,18,70,-38,68 2 0331 -- Ugrave
+char217 "
+'U 778,897,18,70,-38,68 2 0332 -- Uacute
+char218 "
+^U 778,889,18,70,-38,68 2 0333 -- Ucircumflex
+char219 "
+:U 778,847,18,70,-38,68 2 0334 -- Udieresis
+char220 "
+'Y 667,897,3,58,-2,58 2 0335 -- Yacute
+char221 "
+TP 611,692,3,9,41,9 2 0336 -- Thorn
+char222 "
+ss 500,733,276,38,210,38 3 0337 -- germandbls
+char223 "
+`a 444,707,11,12,46,12 2 0340 -- agrave
+char224 "
+'a 444,707,11,20,46,20 2 0341 -- aacute
+char225 "
+^a 444,699,11,12,46,12 2 0342 -- acircumflex
+char226 "
+~a 444,650,11,52,46,52 2 0343 -- atilde
+char227 "
+:a 444,657,11,40,46,40 2 0344 -- adieresis
+char228 "
+oa 444,728,11,12,46,12 2 0345 -- aring
+char229 "
+ae 638,482,11,35,49,35 0 0346 -- ae
+char230 "
+,c 407,482,216,32,25,32 0 0347 -- ccedilla
+char231 "
+`e 389,707,11,35,35,35 2 0350 -- egrave
+char232 "
+'e 389,707,11,55,35,55 2 0351 -- eacute
+char233 "
+^e 389,699,11,59,35,59 2 0352 -- ecircumflex
+char234 "
+:e 389,657,11,67,35,67 2 0353 -- edieresis
+char235 "
+`i 278,707,9,43,16,43 2 0354 -- igrave
+char236 "
+'i 278,707,9,103,16,68 2 0355 -- iacute
+char237 "
+^i 278,699,9,95,21,68 2 0356 -- icircumflex
+char238 "
+:i 278,657,9,123,16,68 2 0357 -- idieresis
+char239 "
+Sd 444,733,11,84,33,68 2 0360 -- eth
+char240 "
+~n 556,650,9,8,26,8 2 0361 -- ntilde
+char241 "
+`o 444,707,11,17,33,17 2 0362 -- ograve
+char242 "
+'o 444,707,11,20,33,20 2 0363 -- oacute
+char243 "
+^o 444,699,11,17,33,17 2 0364 -- ocircumflex
+char244 "
+~o 444,650,11,52,33,52 2 0365 -- otilde
+char245 "
+:o 444,657,11,40,33,40 2 0366 -- odieresis
+char246 "
+char247 606,504,0,0,-1 0 0367 -- divide
+/o 444,510,24,66,68,66 0 0370 -- oslash
+char248 "
+`u 556,707,11,6,18,6 2 0371 -- ugrave
+char249 "
+'u 556,707,11,6,18,6 2 0372 -- uacute
+char250 "
+^u 556,699,11,6,18,6 2 0373 -- ucircumflex
+char251 "
+:u 556,657,11,6,18,6 2 0374 -- udieresis
+char252 "
+'y 500,707,276,40,58,40 3 0375 -- yacute
+char253 "
+Tp 500,733,276,0,89 3 0376 -- thorn
+char254 "
+:y 500,657,276,40,58,40 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/PR b/font/devps/PR
new file mode 100644
index 000000000..6442b09a7
--- /dev/null
+++ b/font/devps/PR
@@ -0,0 +1,456 @@
+name PR
+internalname Palatino-Roman
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -74
+A w -74
+A v -92
+A ' -74
+A Y -111
+A W -74
+A V -111
+A T -74
+F . -92
+F , -92
+F A -74
+L y -55
+L ' -74
+L Y -92
+L W -74
+L V -92
+L T -74
+P . -129
+P , -129
+P A -92
+R y -37
+R Y -37
+R W -37
+R V -55
+R T -37
+T y -90
+T w -90
+T u -90
+T ; -55
+T s -90
+T r -90
+T . -74
+T o -92
+T i -55
+T - -55
+T hy -55
+T char173 -55
+T e -92
+T , -74
+T : -55
+T c -111
+T a -92
+T O -18
+T A -74
+V y -92
+V u -92
+V ; -55
+V r -92
+V . -129
+V o -111
+V i -55
+V - -74
+V hy -74
+V char173 -74
+V e -111
+V , -129
+V : -55
+V a -92
+V A -111
+W y -50
+W u -50
+W ; -18
+W r -74
+W . -92
+W o -92
+W i -55
+W - -55
+W hy -55
+W char173 -55
+W e -92
+W , -92
+W : -18
+W a -92
+W A -92
+Y v -90
+Y u -90
+Y ; -74
+Y q -90
+Y . -111
+Y p -111
+Y o -92
+Y i -55
+Y - -92
+Y hy -92
+Y char173 -92
+Y e -92
+Y , -111
+Y : -74
+Y a -92
+Y A -92
+f ' 55
+f f -18
+1 1 -55
+` ` -37
+` oq -37
+oq ` -37
+oq oq -37
+' ' -37
+r u -8
+r ' 74
+r q -18
+r . -74
+r o -18
+r - -18
+r hy -18
+r char173 -18
+r h -18
+r g -18
+r e -18
+r d -18
+r , -74
+r c -18
+v . -111
+v , -111
+w . -92
+w , -92
+y . -111
+y , -111
+charset
+ha 606,689 2 0000 -- asciicircum
+ti 606,347 0 0001 -- asciitilde
+vS 525,908,20 2 0002 -- Scaron
+vZ 667,908,3 2 0003 -- Zcaron
+vs 424,685,20 2 0004 -- scaron
+vz 500,685,3 2 0005 -- zcaron
+:Y 667,868,3 2 0006 -- Ydieresis
+tm 979,689 2 0007 -- trademark
+aq 208,709 2 0010 -- quotesingle
+space 250 0 0040
+! 278,694,5 2 0041 -- exclam
+" 371,709 2 0042 -- quotedbl
+# 500,684 2 0043 -- numbersign
+sh "
+$ 500,731,116 2 0044 -- dollar
+Do "
+% 840,709,20 2 0045 -- percent
+& 778,689,20 2 0046 -- ampersand
+' 278,709 2 0047 -- quoteright
+( 333,726,215 2 0050 -- parenleft
+) 333,726,215 2 0051 -- parenright
+* 389,689 2 0052 -- asterisk
++ 606,512 0 0053 -- plus
+, 250,123,155 0 0054 -- comma
+- 333,287 0 0055 -- hyphen
+hy "
+char173 "
+. 250,111,5 0 0056 -- period
+/ 606,726,119 2 0057 -- slash
+sl "
+0 500,689,20 2 0060 -- zero
+1 500,694,3 2 0061 -- one
+2 500,689,3 2 0062 -- two
+3 500,689,20 2 0063 -- three
+4 500,694,3 2 0064 -- four
+5 500,689,20 2 0065 -- five
+6 500,689,20 2 0066 -- six
+7 500,689,3 2 0067 -- seven
+8 500,689,20 2 0070 -- eight
+9 500,689,20 2 0071 -- nine
+: 250,456,5 0 0072 -- colon
+; 250,456,153 0 0073 -- semicolon
+< 606,522 0 0074 -- less
+= 606,386 0 0075 -- equal
+> 606,522 0 0076 -- greater
+? 444,694,5 2 0077 -- question
+@ 747,694,20 2 0100 -- at
+at "
+A 778,700,3 2 0101 -- A
+B 611,692,3 2 0102 -- B
+C 709,709,20 2 0103 -- C
+D 774,692,3 2 0104 -- D
+E 611,692,3 2 0105 -- E
+F 556,692,3 2 0106 -- F
+G 763,709,20 2 0107 -- G
+H 832,692,3 2 0110 -- H
+I 337,692,3 2 0111 -- I
+J 333,692,194 2 0112 -- J
+K 726,692,3 2 0113 -- K
+L 611,692,3 2 0114 -- L
+M 946,692,13 2 0115 -- M
+N 831,692,20 2 0116 -- N
+O 786,709,20 2 0117 -- O
+P 604,692,3 2 0120 -- P
+Q 786,709,176 2 0121 -- Q
+R 668,692,3 2 0122 -- R
+S 525,709,20 2 0123 -- S
+T 613,692,3 2 0124 -- T
+U 778,692,20 2 0125 -- U
+V 722,692,9 2 0126 -- V
+W 1000,700,9 2 0127 -- W
+X 667,700,3 2 0130 -- X
+Y 667,704,3 2 0131 -- Y
+Z 667,692,3 2 0132 -- Z
+[ 333,726,184 2 0133 -- bracketleft
+lB "
+\ 606,726 2 0134 -- backslash
+rs "
+] 333,726,184 2 0135 -- bracketright
+rB "
+a^ 333,677 2 0136 -- circumflex
+^ "
+_ 500,0,125 0 0137 -- underscore
+` 278,709 2 0140 -- quoteleft
+oq "
+a 500,469,12 0 0141 -- a
+b 553,726,12 2 0142 -- b
+c 444,469,20 0 0143 -- c
+d 611,726,12 2 0144 -- d
+e 479,469,20 0 0145 -- e
+f 333,728,3 2 0146 -- f
+g 556,469,283 1 0147 -- g
+h 582,726,3 2 0150 -- h
+i 291,687,3 2 0151 -- i
+j 234,688,283 3 0152 -- j
+k 556,726,12 2 0153 -- k
+l 291,726,3 2 0154 -- l
+m 883,469,3 0 0155 -- m
+n 582,469,3 0 0156 -- n
+o 546,469,20 0 0157 -- o
+p 601,469,281 1 0160 -- p
+q 560,469,281 1 0161 -- q
+r 395,469,3 0 0162 -- r
+s 424,469,20 0 0163 -- s
+t 326,621,12 2 0164 -- t
+u 603,469,12 0 0165 -- u
+v 565,459,7 0 0166 -- v
+w 834,469,7 0 0167 -- w
+x 516,469,3 0 0170 -- x
+y 556,459,283 1 0171 -- y
+z 500,462,3 0 0172 -- z
+lC 333,726,175 2 0173 -- braceleft
+{ "
+ba 606,726 2 0174 -- bar
+| "
+rC 333,726,175 2 0175 -- braceright
+} "
+a~ 333,640 2 0176 -- tilde
+~ "
+bq 278,110,153 0 0200 -- quotesinglbase
+Fo 500,428 0 0201 -- guillemotleft
+char171 "
+Fc 500,428 0 0202 -- guillemotright
+char187 "
+bu 606,516 0 0203 -- bullet
+Fn 500,706,262 2 0204 -- florin
+f/ 167,689 2 0205 -- fraction
+%0 1144,709,20 2 0206 -- perthousand
+dg 500,694,5 2 0207 -- dagger
+dd 500,694,249 2 0210 -- daggerdbl
+en 500,277 0 0211 -- endash
+em 1000,277 0 0212 -- emdash
+fi 605,728,3 2 0214 -- fi
+fl 608,728,3 2 0215 -- fl
+.i 287,469,3 0 0220 -- dotlessi
+ga 333,677 2 0222 -- grave
+a" 380,687 2 0223 -- hungarumlaut
+a. 250,637 2 0224 -- dotaccent
+ab 333,664 2 0225 -- breve
+ah 333,677 2 0226 -- caron
+ao 333,696 2 0227 -- ring
+ho 313,0,165 0 0230 -- ogonek
+lq 500,709 2 0231 -- quotedblleft
+rq 500,709 2 0232 -- quotedblright
+oe 827,469,20 0 0233 -- oe
+/l 291,726,3 2 0234 -- lslash
+Bq 500,110,153 0 0235 -- quotedblbase
+OE 998,709,20 2 0236 -- OE
+/L 611,692,3 2 0237 -- Lslash
+r! 278,469,225 0 0241 -- exclamdown
+char161 "
+ct 500,562,101 0 0242 -- cent
+char162 "
+Po 500,694,13 2 0243 -- sterling
+char163 "
+Cs 500,531 0 0244 -- currency
+char164 "
+Ye 500,701,3 2 0245 -- yen
+char165 "
+bb 606,726 2 0246 -- brokenbar
+char166 "
+sc 500,709,219 2 0247 -- section
+char167 "
+ad 333,637 2 0250 -- dieresis
+char168 "
+co 747,706,18 2 0251 -- copyright
+char169 "
+Of 333,709 2 0252 -- ordfeminine
+char170 "
+fo 331,428 0 0253 -- guilsinglleft
+no 606,386 0 0254 -- logicalnot
+char172 "
+\- 606,289 0 0255 -- minus
+rg 747,706,18 2 0256 -- registered
+char174 "
+a- 333,591 0 0257 -- macron
+char175 "
+de 400,689 2 0260 -- degree
+char176 "
+char177 606,512 0 0261 -- plusminus
+S2 300,689 2 0262 -- twosuperior
+char178 "
+S3 300,689 2 0263 -- threesuperior
+char179 "
+aa 333,677 2 0264 -- acute
+char180 "
+char181 603,469,236 0 0265 -- mu
+ps 628,694,150 2 0266 -- paragraph
+char182 "
+char183 250,319 0 0267 -- periodcentered
+ac 333,0,225 0 0270 -- cedilla
+char184 "
+S1 300,692 2 0271 -- onesuperior
+char185 "
+Om 333,709 2 0272 -- ordmasculine
+char186 "
+fc 331,428 0 0273 -- guilsinglright
+14 750,692,3 2 0274 -- onequarter
+char188 "
+12 750,692,3 2 0275 -- onehalf
+char189 "
+34 750,689,3 2 0276 -- threequarters
+char190 "
+r? 444,469,231 0 0277 -- questiondown
+char191 "
+`A 778,908,3 2 0300 -- Agrave
+char192 "
+'A 778,908,3 2 0301 -- Aacute
+char193 "
+^A 778,908,3 2 0302 -- Acircumflex
+char194 "
+~A 778,871,3 2 0303 -- Atilde
+char195 "
+:A 778,868,3 2 0304 -- Adieresis
+char196 "
+oA 778,927,3 2 0305 -- Aring
+char197 "
+AE 944,692,3 2 0306 -- AE
+char198 "
+,C 709,709,225 2 0307 -- Ccedilla
+char199 "
+`E 611,908,3 2 0310 -- Egrave
+char200 "
+'E 611,908,3 2 0311 -- Eacute
+char201 "
+^E 611,908,3 2 0312 -- Ecircumflex
+char202 "
+:E 611,868,3 2 0313 -- Edieresis
+char203 "
+`I 337,908,3 2 0314 -- Igrave
+char204 "
+'I 337,908,3 2 0315 -- Iacute
+char205 "
+^I 337,908,3 2 0316 -- Icircumflex
+char206 "
+:I 337,868,3 2 0317 -- Idieresis
+char207 "
+-D 774,692,3 2 0320 -- Eth
+char208 "
+~N 831,871,20 2 0321 -- Ntilde
+char209 "
+`O 786,908,20 2 0322 -- Ograve
+char210 "
+'O 786,908,20 2 0323 -- Oacute
+char211 "
+^O 786,908,20 2 0324 -- Ocircumflex
+char212 "
+~O 786,883,20 2 0325 -- Otilde
+char213 "
+:O 786,868,20 2 0326 -- Odieresis
+char214 "
+char215 606,474 0 0327 -- multiply
+/O 833,709,20 2 0330 -- Oslash
+char216 "
+`U 778,908,20 2 0331 -- Ugrave
+char217 "
+'U 778,908,20 2 0332 -- Uacute
+char218 "
+^U 778,908,20 2 0333 -- Ucircumflex
+char219 "
+:U 778,868,20 2 0334 -- Udieresis
+char220 "
+'Y 667,908,3 2 0335 -- Yacute
+char221 "
+TP 604,692,3 2 0336 -- Thorn
+char222 "
+ss 556,731,9 2 0337 -- germandbls
+char223 "
+`a 500,697,12 2 0340 -- agrave
+char224 "
+'a 500,697,12 2 0341 -- aacute
+char225 "
+^a 500,697,12 2 0342 -- acircumflex
+char226 "
+~a 500,652,12 2 0343 -- atilde
+char227 "
+:a 500,657,12 2 0344 -- adieresis
+char228 "
+oa 500,716,12 2 0345 -- aring
+char229 "
+ae 758,469,20 0 0346 -- ae
+char230 "
+,c 444,469,225 0 0347 -- ccedilla
+char231 "
+`e 479,697,20 2 0350 -- egrave
+char232 "
+'e 479,697,20 2 0351 -- eacute
+char233 "
+^e 479,697,20 2 0352 -- ecircumflex
+char234 "
+:e 479,657,20 2 0353 -- edieresis
+char235 "
+`i 287,697,3 2 0354 -- igrave
+char236 "
+'i 287,697,3 2 0355 -- iacute
+char237 "
+^i 287,697,3 2 0356 -- icircumflex
+char238 "
+:i 287,657,3 2 0357 -- idieresis
+char239 "
+Sd 546,728,20 2 0360 -- eth
+char240 "
+~n 582,652,3 2 0361 -- ntilde
+char241 "
+`o 546,697,20 2 0362 -- ograve
+char242 "
+'o 546,697,20 2 0363 -- oacute
+char243 "
+^o 546,697,20 2 0364 -- ocircumflex
+char244 "
+~o 546,652,20 2 0365 -- otilde
+char245 "
+:o 546,657,20 2 0366 -- odieresis
+char246 "
+char247 606,512 0 0367 -- divide
+/o 556,474,23 0 0370 -- oslash
+char248 "
+`u 603,697,12 2 0371 -- ugrave
+char249 "
+'u 603,697,12 2 0372 -- uacute
+char250 "
+^u 603,697,12 2 0373 -- ucircumflex
+char251 "
+:u 603,657,12 2 0374 -- udieresis
+char252 "
+'y 556,697,283 3 0375 -- yacute
+char253 "
+Tp 601,726,281 3 0376 -- thorn
+char254 "
+:y 556,657,283 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/S b/font/devps/S
new file mode 100644
index 000000000..3cf77d9da
--- /dev/null
+++ b/font/devps/S
@@ -0,0 +1,227 @@
+name S
+internalname Symbol
+special
+spacewidth 250
+charset
+space 250 0 0040
+! 333,672,17 3 0041 -- exclam
+fa 713,705 3 0042 -- universal
+# 500,673,16 3 0043 -- numbersign
+sh "
+te 549,707 3 0044 -- existential
+% 833,655,36 3 0045 -- percent
+& 778,661,18 3 0046 -- ampersand
+st 439,500,17 3 0047 -- suchthat
+( 333,673,191 3 0050 -- parenleft
+) 333,673,191 3 0051 -- parenright
+** 500,551 3 0052 -- asteriskmath
++ 549,533 3 0053 -- plus
+pl "
+, 250,104,152 3 0054 -- comma
+\- 549,288 3 0055 -- minus
+mi "
+. 250,95,17 3 0056 -- period
+/ 278,646,18 3 0057 -- slash
+sl "
+0 500,685,17 3 0060 -- zero
+1 500,673 3 0061 -- one
+2 500,686 3 0062 -- two
+3 500,685,17 3 0063 -- three
+4 500,685 3 0064 -- four
+5 500,685,17 3 0065 -- five
+6 500,685,17 3 0066 -- six
+7 500,673,16 3 0067 -- seven
+8 500,685,18 3 0070 -- eight
+9 500,685,18 3 0071 -- nine
+: 278,460,17 3 0072 -- colon
+; 278,460,152 3 0073 -- semicolon
+< 549,522 3 0074 -- less
+= 549,390 3 0075 -- equal
+eq "
+> 549,522 3 0076 -- greater
+? 444,686,17 3 0077 -- question
+=~ 549,475 3 0100 -- congruent
+*A 722,673 3 0101 -- Alpha
+*B 667,673 3 0102 -- Beta
+*X 722,673 3 0103 -- Chi
+*D 612,688 3 0104 -- Delta
+*E 611,673 3 0105 -- Epsilon
+*F 763,673 3 0106 -- Phi
+*G 603,673 3 0107 -- Gamma
+*Y 722,673 3 0110 -- Eta
+*I 333,673 3 0111 -- Iota
++h 631,689,18 3 0112 -- theta1
+*K 722,673 3 0113 -- Kappa
+*L 686,688 3 0114 -- Lambda
+*M 889,673 3 0115 -- Mu
+*N 722,673,8 3 0116 -- Nu
+*O 722,685,17 3 0117 -- Omicron
+*P 768,673 3 0120 -- Pi
+*H 741,685,17 3 0121 -- Theta
+*R 556,673 3 0122 -- Rho
+*S 592,673 3 0123 -- Sigma
+*T 611,673 3 0124 -- Tau
+--- 690,673 3 0125 -- Upsilon
+ts 439,500,233 3 0126 -- sigma1
+*W 768,688 3 0127 -- Omega
+*C 645,673 3 0130 -- Xi
+*Q 795,684 3 0131 -- Psi
+*Z 611,673 3 0132 -- Zeta
+[ 333,674,155 3 0133 -- bracketleft
+lB "
+3d 863,478 3 0134 -- therefore
+tf "
+] 333,674,155 3 0135 -- bracketright
+rB "
+pp 658,674 3 0136 -- perpendicular
+_ 500,0,252 3 0137 -- underscore
+radicalex 500,917 3 0140 -- radicalex
+*a 631,500,18 3 0141 -- alpha
+*b 549,741,223 3 0142 -- beta
+*x 549,499,231 3 0143 -- chi
+*d 494,740,19 3 0144 -- delta
+*e 439,502,19 3 0145 -- epsilon
+*f 521,671,224 3 0146 -- phi
+*g 411,499,225 3 0147 -- gamma
+*y 603,514,202 3 0150 -- eta
+*i 329,503,17 3 0151 -- iota
++f 603,499,224 3 0152 -- phi1
+*k 549,501 3 0153 -- kappa
+*l 549,739,17 3 0154 -- lambda
+char181 576,500,223 3 0155 -- mu
+*m "
+*n 521,507,16 3 0156 -- nu
+*o 549,499,19 3 0157 -- omicron
+*p 549,487,19 3 0160 -- pi
+*h 521,690,17 3 0161 -- theta
+*r 549,499,230 3 0162 -- rho
+*s 603,500,21 3 0163 -- sigma
+*t 439,500,19 3 0164 -- tau
+*u 576,507,18 3 0165 -- upsilon
++p 713,583,18 3 0166 -- omega1
+*w 686,500,17 3 0167 -- omega
+*c 493,766,224 3 0170 -- xi
+*q 686,500,228 3 0171 -- psi
+*z 494,756,225 3 0172 -- zeta
+lC 480,673,183 3 0173 -- braceleft
+{ "
+ba 200,673,177 3 0174 -- bar
+| "
+rC 480,673,183 3 0175 -- braceright
+} "
+ap 549,307 3 0176 -- similar
+*U 620,685 3 0241 -- Upsilon1
+fm 247,735 3 0242 -- minute
+<= 549,639 3 0243 -- lessequal
+f/ 167,677,12 3 0244 -- fraction
+if 713,404 3 0245 -- infinity
+Fn 500,686,193 3 0246 -- florin
+CL 753,533,26 3 0247 -- club
+DI 753,550,36 3 0250 -- diamond
+HE 753,532,33 3 0251 -- heart
+SP 753,548,36 3 0252 -- spade
+<> 1042,511,15 3 0253 -- arrowboth
+<- 987,511,15 3 0254 -- arrowleft
+ua 603,910 3 0255 -- arrowup
+arrowverttp "
+-> 987,511,15 3 0256 -- arrowright
+da 603,888,22 3 0257 -- arrowdown
+arrowvertbt "
+de 400,685 3 0260 -- degree
+char176 "
+char177 549,645 3 0261 -- plusminus
++- "
+sd 411,737 3 0262 -- second
+>= 549,639 3 0263 -- greaterequal
+char215 549,524 3 0264 -- multiply
+mu "
+pt 713,404 3 0265 -- proportional
+pd 494,746,20 3 0266 -- partialdiff
+bu 460,473 3 0267 -- bullet
+char247 549,456 3 0270 -- divide
+di "
+!= 549,549,25 3 0271 -- notequal
+== 549,443 3 0272 -- equivalence
+~~ 549,394 3 0273 -- approxequal
+~= "
+--- 1000,95,17 3 0274 -- ellipsis
+arrowvertex 603,1010,120 3 0275 -- arrowvertex
+an 1000,276 3 0276 -- arrowhorizex
+CR 658,629,16 3 0277 -- carriagereturn
+Ah 823,658,18 3 0300 -- aleph
+Im 686,740,53 3 0301 -- Ifraktur
+Re 795,734,15 3 0302 -- Rfraktur
+wp 987,573,211 3 0303 -- weierstrass
+c* 768,673,17 3 0304 -- circlemultiply
+c+ 768,675,15 3 0305 -- circleplus
+es 823,719,24 3 0306 -- emptyset
+ca 768,509 3 0307 -- intersection
+cu 768,492,17 3 0310 -- union
+sp 713,470 3 0311 -- propersuperset
+ip 713,470,125 3 0312 -- reflexsuperset
+nb 713,540,70 3 0313 -- notsubset
+sb 713,470 3 0314 -- propersubset
+ib 713,470,125 3 0315 -- reflexsubset
+mo 713,468 3 0316 -- element
+nm 713,555,58 3 0317 -- notelement
+/_ 768,673 3 0320 -- angle
+gr 713,718,19 3 0321 -- gradient
+--- 790,673,17 3 0322 -- registerserif
+--- 790,675,15 3 0323 -- copyrightserif
+--- 890,673 3 0324 -- trademarkserif
+product 823,751,101 3 0325 -- product
+sr 549,917,38 3 0326 -- radical
+md 250,310 3 0327 -- dotmath
+no 713,288 3 0330 -- logicalnot
+char172 "
+AN 603,454 3 0331 -- logicaland
+OR 603,477 3 0332 -- logicalor
+hA 1042,510,20 3 0333 -- arrowdblboth
+lA 987,513,15 3 0334 -- arrowdblleft
+uA 603,911 3 0335 -- arrowdblup
+rA 987,508,20 3 0336 -- arrowdblright
+dA 603,890,19 3 0337 -- arrowdbldown
+lz 494,745 3 0340 -- lozenge
+la 329,746,198 3 0341 -- angleleft
+--- 790,670,20 3 0342 -- registersans
+--- 790,675,15 3 0343 -- copyrightsans
+--- 786,673 3 0344 -- trademarksans
+sum 713,752,108 3 0345 -- summation
+parenlefttp 384,926,293 3 0346 -- parenlefttp
+parenleftex 384,920,80 3 0347 -- parenleftex
+parenleftbt 384,920,293 3 0350 -- parenleftbt
+bracketlefttp 384,925,75 3 0351 -- bracketlefttp
+lc "
+bracketleftex 384,925,75 3 0352 -- bracketleftex
+bracketleftbt 384,925,75 3 0353 -- bracketleftbt
+lf "
+bracelefttp 494,925,75 3 0354 -- bracelefttp
+lt "
+braceleftmid 494,925,75 3 0355 -- braceleftmid
+lk "
+braceleftbt 494,925,75 3 0356 -- braceleftbt
+lb "
+braceex 494,925,75 3 0357 -- braceex
+bracerightex "
+braceleftex "
+barex "
+bv "
+ra 329,746,198 3 0361 -- angleright
+is 274,916,107,67,52,-10 3 0362 -- integral
+--- 686,921,83 3 0363 -- integraltp
+--- 686,975,88 3 0364 -- integralex
+--- 686,921,81 3 0365 -- integralbt
+parenrighttp 384,926,293 3 0366 -- parenrighttp
+parenrightex 384,920,80 3 0367 -- parenrightex
+parenrightbt 384,920,293 3 0370 -- parenrightbt
+bracketrighttp 384,925,75 3 0371 -- bracketrighttp
+rc "
+bracketrightex 384,925,75 3 0372 -- bracketrightex
+bracketrightbt 384,925,75 3 0373 -- bracketrightbt
+rf "
+bracerighttp 494,925,75 3 0374 -- bracerighttp
+rt "
+bracerightmid 494,925,75 3 0375 -- bracerightmid
+rk "
+bracerightbt 494,925,75 3 0376 -- bracerightbt
+rb "
diff --git a/font/devps/SS b/font/devps/SS
new file mode 100644
index 000000000..933eb1c15
--- /dev/null
+++ b/font/devps/SS
@@ -0,0 +1,194 @@
+name SS
+internalname Symbol-Slanted
+special
+slant 15.5
+spacewidth 223
+charset
+space 223 0 0040
+--- 296,599,15,137,-72,99 3 0041 -- exclam
+--- 635,627,0,216,-173,99 3 0042 -- universal
+--- 445,599,15,162,-21,99 3 0043 -- numbersign
+--- 489,629,0,183,28,99 3 0044 -- existential
+--- 741,583,32,75,-97,75 3 0045 -- percent
+--- 692,589,16,103,-18,99 3 0046 -- ampersand
+--- 391,444,15,109,6,99 3 0047 -- suchthat
+--- 296,599,170,203,-39,99 3 0050 -- parenleft
+--- 296,600,170,93,72,93 3 0051 -- parenright
+--- 445,490,0,105,-76,99 3 0052 -- asteriskmath
+--- 489,474,0,123,-26,99 3 0053 -- plus
+--- 223,93,136,10,41,10 3 0054 -- comma
+--- 489,256,0,117,-24,99 3 0055 -- minus
+--- 223,85,15,1,-20,1 3 0056 -- period
+--- 247,575,15,208,55,99 3 0057 -- slash
+--- 445,610,15,142,-40,99 3 0060 -- zero
+--- 445,599,0,56,-57,56 3 0061 -- one
+--- 445,611,0,129,28,99 3 0062 -- two
+--- 445,611,16,115,-6,99 3 0063 -- three
+--- 445,610,0,135,-8,99 3 0064 -- four
+--- 445,610,15,188,14,99 3 0065 -- five
+--- 445,610,16,193,-37,99 3 0066 -- six
+--- 445,599,15,190,-101,99 3 0067 -- seven
+--- 445,611,16,141,-32,99 3 0070 -- eight
+--- 445,609,15,140,-2,99 3 0071 -- nine
+--- 247,409,15,89,-31,89 3 0072 -- colon
+--- 247,409,136,99,17,99 3 0073 -- semicolon
+--- 489,464,0,171,-37,99 3 0074 -- less
+--- 489,347,0,147,1,99 3 0075 -- equal
+--- 489,464,0,108,27,99 3 0076 -- greater
+--- 395,610,15,172,-113,99 3 0077 -- question
+--- 489,423,0,158,40,99 3 0100 -- congruent
+--- 643,599,0,21,47,21 3 0101 -- Alpha
+--- 594,598,0,101,24,99 3 0102 -- Beta
+--- 643,599,0,205,58,99 3 0103 -- Chi
+--- 545,612,0,46,45,46 3 0104 -- Delta
+--- 544,599,0,194,22,99 3 0105 -- Epsilon
+--- 679,598,0,132,-55,99 3 0106 -- Phi
+--- 537,599,0,227,19,99 3 0107 -- Gamma
+--- 643,599,0,243,15,99 3 0110 -- Eta
+--- 296,599,0,222,22,99 3 0111 -- Iota
++h 562,614,15,133,-58,99 3 0112 -- theta1
+--- 643,598,0,185,19,99 3 0113 -- Kappa
+--- 611,612,0,49,45,49 3 0114 -- Lambda
+--- 791,599,0,233,22,99 3 0115 -- Mu
+--- 643,599,7,234,24,99 3 0116 -- Nu
+--- 643,610,15,154,-62,99 3 0117 -- Omicron
+--- 684,599,0,213,28,99 3 0120 -- Pi
+--- 659,610,15,138,-62,99 3 0121 -- Theta
+--- 495,599,0,200,25,99 3 0122 -- Rho
+--- 527,599,0,186,45,99 3 0123 -- Sigma
+--- 544,599,0,229,-109,99 3 0124 -- Tau
+--- 614,599,0,240,-125,99 3 0125 -- Upsilon
+ts 391,445,208,151,-28,99 3 0126 -- sigma1
+--- 684,612,0,126,20,99 3 0127 -- Omega
+--- 574,598,0,176,14,99 3 0130 -- Xi
+--- 708,608,0,227,-138,99 3 0131 -- Psi
+--- 544,599,0,231,11,99 3 0132 -- Zeta
+--- 296,599,138,207,16,99 3 0133 -- bracketleft
+--- 768,426,0,0,-110 3 0134 -- therefore
+--- 296,599,138,159,64,99 3 0135 -- bracketright
+--- 586,600,0,60,37,60 3 0136 -- perpendicular
+--- 445,0,224,0,122 3 0137 -- underscore
+--- 445,816,0,829,-622,99 3 0140 -- radicalex
+*a 562,445,15,146,-34,99 3 0141 -- alpha
+*b 489,659,198,139,57,99 3 0142 -- beta
+*x 489,445,206,134,98,99 3 0143 -- chi
+*d 440,658,16,181,-33,99 3 0144 -- delta
+*e 391,447,17,127,1,99 3 0145 -- epsilon
+*f 464,596,200,103,-28,99 3 0146 -- phi
+*g 366,444,200,252,-42,99 3 0147 -- gamma
+*y 537,457,180,68,-50,68 3 0150 -- eta
+*i 293,448,16,53,-47,53 3 0151 -- iota
++f 537,444,199,117,-42,99 3 0152 -- phi1
+*k 489,447,0,182,-56,99 3 0153 -- kappa
+*l 489,658,16,91,29,91 3 0154 -- lambda
+*m 513,445,198,70,68,70 3 0155 -- mu
+*n 464,451,15,134,-69,99 3 0156 -- nu
+*o 489,444,17,87,-36,87 3 0157 -- omicron
+*p 489,433,18,160,-8,99 3 0160 -- pi
+*h 464,614,16,140,-53,99 3 0161 -- theta
+*r 489,444,205,82,69,82 3 0162 -- rho
+*s 537,445,19,175,-37,99 3 0163 -- sigma
+*t 391,445,16,170,-45,99 3 0164 -- tau
+*u 513,451,15,95,-55,95 3 0165 -- upsilon
++p 635,519,15,173,-28,99 3 0166 -- omega1
+*w 611,445,16,126,-35,99 3 0167 -- omega
+*c 439,681,200,126,-20,99 3 0170 -- xi
+*q 611,445,203,198,-91,99 3 0171 -- psi
+*z 440,673,200,190,-50,99 3 0172 -- zeta
+--- 427,599,163,163,-66,99 3 0173 -- braceleft
+--- 178,599,158,179,41,99 3 0174 -- bar
+--- 427,599,163,67,31,67 3 0175 -- braceright
+--- 489,273,0,110,-28,99 3 0176 -- similar
+--- 552,609,0,208,-84,99 3 0241 -- Upsilon1
+--- 220,654,0,223,-106,99 3 0242 -- minute
+--- 489,569,0,206,24,99 3 0243 -- lessequal
+--- 149,603,11,391,214,99 3 0244 -- fraction
+--- 635,360,0,107,-41,99 3 0245 -- infinity
+--- 445,612,172,219,86,99 3 0246 -- florin
+--- 670,474,23,25,-69,25 3 0247 -- club
+--- 670,490,32,0,-148 3 0250 -- diamond
+--- 670,473,29,59,-155,59 3 0251 -- heart
+--- 670,488,32,0,-82 3 0252 -- spade
+--- 927,455,13,103,-40,99 3 0253 -- arrowboth
+--- 878,455,13,87,-47,87 3 0254 -- arrowleft
+--- 537,810,0,204,-173,99 3 0255 -- arrowup
+--- 878,455,13,94,-55,94 3 0256 -- arrowright
+--- 537,790,20,85,-54,85 3 0257 -- arrowdown
+--- 356,609,0,160,-137,99 3 0260 -- degree
+--- 489,574,0,154,41,99 3 0261 -- plusminus
+--- 366,656,0,244,-100,99 3 0262 -- second
+--- 489,569,0,143,24,99 3 0263 -- greaterequal
+--- 489,466,0,170,22,99 3 0264 -- multiply
+--- 635,360,0,82,-40,82 3 0265 -- proportional
+--- 440,664,18,152,-12,99 3 0266 -- partialdiff
+--- 409,421,0,95,-68,95 3 0267 -- bullet
+--- 489,406,0,119,-24,99 3 0270 -- divide
+--- 489,489,22,148,-1,99 3 0271 -- notequal
+--- 489,394,0,163,15,99 3 0272 -- equivalence
+--- 489,351,0,133,-7,99 3 0273 -- approxequal
+--- 890,85,15,0,-57 3 0274 -- ellipsis
+--- 537,899,107,92,-166,92 3 0275 -- arrowvertex
+--- 890,246,0,171,42,99 3 0276 -- arrowhorizex
+--- 586,560,14,174,10,99 3 0277 -- carriagereturn
+--- 732,586,16,58,-109,58 3 0300 -- aleph
+--- 611,659,47,123,24,99 3 0301 -- Ifraktur
+--- 708,653,13,175,-21,99 3 0302 -- Rfraktur
+--- 878,510,188,50,-62,50 3 0303 -- weierstrass
+--- 684,599,15,124,-64,99 3 0304 -- circlemultiply
+--- 684,601,13,125,-65,99 3 0305 -- circleplus
+--- 732,640,21,202,12,99 3 0306 -- emptyset
+--- 684,453,0,80,14,80 3 0307 -- intersection
+--- 684,438,15,154,-60,99 3 0310 -- union
+--- 635,418,0,90,32,90 3 0311 -- propersuperset
+--- 635,418,111,89,67,89 3 0312 -- reflexsuperset
+--- 635,481,62,159,-37,99 3 0313 -- notsubset
+--- 635,418,0,159,-37,99 3 0314 -- propersubset
+--- 635,418,111,159,34,99 3 0315 -- reflexsubset
+--- 635,417,0,0,-43 3 0316 -- element
+--- 635,494,52,0,-24 3 0317 -- notelement
+--- 684,599,0,199,27,99 3 0320 -- angle
+--- 635,639,17,220,-181,99 3 0321 -- gradient
+--- 703,596,18,110,-70,99 3 0322 -- registerserif
+--- 703,601,13,113,-72,99 3 0323 -- copyrightserif
+--- 792,599,0,205,-119,99 3 0324 -- trademarkserif
+--- 732,668,90,238,56,99 3 0325 -- product
+--- 489,816,34,272,-84,99 3 0326 -- radical
+--- 223,276,0,52,-81,52 3 0327 -- dotmath
+--- 635,256,0,100,-28,99 3 0330 -- logicalnot
+--- 537,404,0,32,29,32 3 0331 -- logicaland
+--- 537,424,0,152,-101,99 3 0332 -- logicalor
+--- 927,454,18,101,-42,99 3 0333 -- arrowdblboth
+--- 878,457,13,114,-46,99 3 0334 -- arrowdblleft
+--- 537,811,0,201,-102,99 3 0335 -- arrowdblup
+--- 878,452,18,89,-21,89 3 0336 -- arrowdblright
+--- 537,792,17,152,-53,99 3 0337 -- arrowdbldown
+--- 440,663,0,129,-71,99 3 0340 -- lozenge
+--- 293,664,176,229,-48,99 3 0341 -- angleleft
+--- 703,596,18,110,-70,99 3 0342 -- registersans
+--- 703,601,13,111,-70,99 3 0343 -- copyrightsans
+--- 700,599,0,182,-129,99 3 0344 -- trademarksans
+--- 635,669,96,171,65,99 3 0345 -- summation
+--- 342,824,261,350,96,99 3 0346 -- parenlefttp
+--- 342,823,76,46,38,46 3 0347 -- parenleftex
+--- 342,824,261,47,-63,47 3 0350 -- parenleftbt
+--- 342,824,71,268,72,99 3 0351 -- bracketlefttp
+--- 342,823,70,13,72,13 3 0352 -- bracketleftex
+--- 342,824,71,14,72,14 3 0353 -- bracketleftbt
+--- 440,824,67,258,-108,99 3 0354 -- bracelefttp
+--- 440,832,76,96,-76,96 3 0355 -- braceleftmid
+--- 440,824,62,94,-169,94 3 0356 -- braceleftbt
+--- 440,832,71,96,-107,96 3 0357 -- braceex
+--- 293,664,176,102,79,99 3 0361 -- angleright
+--- 244,815,95,305,63,99 3 0362 -- integral
+--- 611,820,74,312,-222,99 3 0363 -- integraltp
+--- 611,868,78,79,-221,79 3 0364 -- integralex
+--- 611,820,72,64,20,64 3 0365 -- integralbt
+--- 342,824,261,206,-223,99 3 0366 -- parenrighttp
+--- 342,823,76,365,-281,99 3 0367 -- parenrightex
+--- 342,824,261,365,80,99 3 0370 -- parenrightbt
+--- 342,824,71,285,-199,99 3 0371 -- bracketrighttp
+--- 342,823,70,285,-200,99 3 0372 -- bracketrightex
+--- 342,824,71,285,54,99 3 0373 -- bracketrightbt
+--- 440,824,67,35,-108,35 3 0374 -- bracerighttp
+--- 440,832,76,127,-105,99 3 0375 -- bracerightmid
+--- 440,824,62,94,54,94 3 0376 -- bracerightbt
diff --git a/font/devps/TB b/font/devps/TB
new file mode 100644
index 000000000..e4fb53844
--- /dev/null
+++ b/font/devps/TB
@@ -0,0 +1,533 @@
+name TB
+internalname Times-Bold
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -74
+A w -90
+A v -100
+A u -50
+A ' -74
+A p -25
+A Y -100
+A W -130
+A V -145
+A U -50
+A T -95
+A Q -45
+A O -45
+A G -55
+A C -55
+B U -10
+B A -30
+D . -20
+D Y -40
+D W -40
+D V -40
+D A -35
+F . -110
+F o -25
+F e -25
+F , -92
+F a -25
+F A -90
+J u -15
+J . -20
+J o -15
+J e -15
+J a -15
+J A -30
+K y -45
+K u -15
+K o -25
+K e -25
+K O -30
+L y -55
+L ' -110
+L rq -20
+L Y -92
+L W -92
+L V -92
+L T -92
+N A -20
+O Y -50
+O X -40
+O W -50
+O V -50
+O T -40
+O A -40
+P . -110
+P o -20
+P e -20
+P , -92
+P a -10
+P A -74
+Q . -20
+Q U -10
+R Y -35
+R W -35
+R V -55
+R U -30
+R T -40
+R O -30
+T y -74
+T w -74
+T u -92
+T ; -74
+T r -74
+T . -90
+T o -92
+T i -18
+T - -92
+T hy -92
+T char173 -92
+T e -92
+T , -74
+T : -74
+T a -92
+T O -18
+T A -90
+U . -50
+U , -50
+U A -60
+V u -92
+V ; -92
+V . -145
+V o -100
+V i -37
+V - -74
+V hy -74
+V char173 -74
+V e -100
+V , -129
+V : -92
+V a -92
+V O -45
+V G -30
+V A -135
+W y -60
+W u -50
+W ; -55
+W . -92
+W o -75
+W i -18
+W - -37
+W hy -37
+W char173 -37
+W e -65
+W , -92
+W : -55
+W a -65
+W O -10
+W A -120
+Y u -92
+Y ; -92
+Y . -92
+Y o -111
+Y i -37
+Y - -92
+Y hy -92
+Y char173 -92
+Y e -111
+Y , -92
+Y : -92
+Y a -85
+Y O -35
+Y A -110
+a v -25
+b v -15
+b u -20
+b . -40
+b b -10
+, ' -55
+, rq -45
+d w -15
+e v -15
+f ' 55
+f rq 50
+f . -15
+f o -25
+f i -25
+f .i -35
+f , -15
+g . -15
+h y -15
+i v -10
+k y -15
+k o -15
+k e -10
+n v -40
+o w -10
+o v -10
+. ' -55
+. rq -55
+lq A -10
+` ` -63
+` oq -63
+oq ` -63
+oq oq -63
+` A -10
+oq A -10
+' v -20
+' s -37
+' r -20
+' ' -63
+' d -20
+r v -10
+r q -18
+r . -100
+r p -10
+r o -18
+r n -15
+r - -37
+r hy -37
+r char173 -37
+r g -10
+r e -18
+r , -92
+r c -18
+v . -70
+v o -10
+v e -10
+v , -55
+v a -10
+w . -70
+w o -10
+w , -55
+y . -70
+y o -25
+y e -10
+y , -55
+charset
+ha 581,676 2 0000 -- asciicircum
+ti 520,333 0 0001 -- asciitilde
+vS 556,914,19 2 0002 -- Scaron
+vZ 667,914 2 0003 -- Zcaron
+vs 389,704,14 2 0004 -- scaron
+vz 444,704 2 0005 -- zcaron
+:Y 722,877 2 0006 -- Ydieresis
+tm 1000,676 2 0007 -- trademark
+aq 278,691 2 0010 -- quotesingle
+space 250 0 0040
+! 333,691,13 2 0041 -- exclam
+" 555,691 2 0042 -- quotedbl
+# 500,700 2 0043 -- numbersign
+sh "
+$ 500,750,99 2 0044 -- dollar
+Do "
+% 1000,692,14 2 0045 -- percent
+& 833,691,16 2 0046 -- ampersand
+' 333,691 2 0047 -- quoteright
+( 333,694,168 2 0050 -- parenleft
+) 333,694,168 2 0051 -- parenright
+* 500,691 2 0052 -- asterisk
++ 570,506 0 0053 -- plus
+, 250,155,180 0 0054 -- comma
+- 333,287 0 0055 -- hyphen
+hy "
+char173 "
+. 250,156,13 0 0056 -- period
+/ 278,691,19 2 0057 -- slash
+sl "
+0 500,688,13 2 0060 -- zero
+1 500,688 2 0061 -- one
+2 500,688 2 0062 -- two
+3 500,688,14 2 0063 -- three
+4 500,688 2 0064 -- four
+5 500,676,8 2 0065 -- five
+6 500,688,13 2 0066 -- six
+7 500,676 2 0067 -- seven
+8 500,688,13 2 0070 -- eight
+9 500,688,13 2 0071 -- nine
+: 333,472,13 0 0072 -- colon
+; 333,472,180 0 0073 -- semicolon
+< 570,514,8 0 0074 -- less
+= 570,399 0 0075 -- equal
+> 570,514,8 0 0076 -- greater
+? 500,689,13 2 0077 -- question
+@ 930,691,19 2 0100 -- at
+at "
+A 722,690 2 0101 -- A
+B 667,676 2 0102 -- B
+C 722,691,19 2 0103 -- C
+D 722,676 2 0104 -- D
+E 667,676 2 0105 -- E
+F 611,676 2 0106 -- F
+G 778,691,19 2 0107 -- G
+H 778,676 2 0110 -- H
+I 389,676 2 0111 -- I
+J 500,676,96 2 0112 -- J
+K 778,676 2 0113 -- K
+L 667,676 2 0114 -- L
+M 944,676 2 0115 -- M
+N 722,676,18 2 0116 -- N
+O 778,691,19 2 0117 -- O
+P 611,676 2 0120 -- P
+Q 778,691,176 2 0121 -- Q
+R 722,676 2 0122 -- R
+S 556,692,19 2 0123 -- S
+T 667,676 2 0124 -- T
+U 722,676,19 2 0125 -- U
+V 722,676,18 2 0126 -- V
+W 1000,676,15 2 0127 -- W
+X 722,676 2 0130 -- X
+Y 722,676 2 0131 -- Y
+Z 667,676 2 0132 -- Z
+[ 333,678,149 2 0133 -- bracketleft
+lB "
+\ 278,691,19 2 0134 -- backslash
+rs "
+] 333,678,149 2 0135 -- bracketright
+rB "
+a^ 333,704 2 0136 -- circumflex
+^ "
+_ 500,0,125 0 0137 -- underscore
+` 333,691 2 0140 -- quoteleft
+oq "
+a 500,473,14 0 0141 -- a
+b 556,676,14 2 0142 -- b
+c 444,473,14 0 0143 -- c
+d 556,676,14 2 0144 -- d
+e 444,473,14 0 0145 -- e
+f 333,691 2 0146 -- f
+g 500,473,206 1 0147 -- g
+h 556,676 2 0150 -- h
+i 278,691 2 0151 -- i
+j 333,691,203 3 0152 -- j
+k 556,676 2 0153 -- k
+l 278,676 2 0154 -- l
+m 833,473 0 0155 -- m
+n 556,473 0 0156 -- n
+o 500,473,14 0 0157 -- o
+p 556,473,205 1 0160 -- p
+q 556,473,205 1 0161 -- q
+r 444,473 0 0162 -- r
+s 389,473,14 0 0163 -- s
+t 333,630,12 2 0164 -- t
+u 556,461,14 0 0165 -- u
+v 500,461,14 0 0166 -- v
+w 722,461,14 0 0167 -- w
+x 500,461 0 0170 -- x
+y 500,461,205 1 0171 -- y
+z 444,461 0 0172 -- z
+lC 394,698,175 2 0173 -- braceleft
+{ "
+ba 220,691,19 2 0174 -- bar
+| "
+rC 394,698,175 2 0175 -- braceright
+} "
+a~ 333,674 2 0176 -- tilde
+~ "
+bq 333,155,180 0 0200 -- quotesinglbase
+Fo 500,415 0 0201 -- guillemotleft
+char171 "
+Fc 500,415 0 0202 -- guillemotright
+char187 "
+bu 350,478 0 0203 -- bullet
+Fn 500,706,155 2 0204 -- florin
+f/ 167,688,12 2 0205 -- fraction
+%0 1000,706,29 2 0206 -- perthousand
+dg 500,691,134 2 0207 -- dagger
+dd 500,691,132 2 0210 -- daggerdbl
+en 500,271 0 0211 -- endash
+em 1000,271 0 0212 -- emdash
+fi 556,691 2 0214 -- fi
+fl 556,691 2 0215 -- fl
+.i 278,461 0 0220 -- dotlessi
+ga 333,713 2 0222 -- grave
+a" 333,713 2 0223 -- hungarumlaut
+a. 333,667 2 0224 -- dotaccent
+ab 333,691 2 0225 -- breve
+ah 333,704 2 0226 -- caron
+ao 333,740 2 0227 -- ring
+ho 333,44,173 0 0230 -- ogonek
+lq 500,691 2 0231 -- quotedblleft
+rq 500,691 2 0232 -- quotedblright
+oe 722,473,14 0 0233 -- oe
+/l 278,676 2 0234 -- lslash
+Bq 500,155,180 0 0235 -- quotedblbase
+OE 1000,684,5 2 0236 -- OE
+/L 667,676 2 0237 -- Lslash
+r! 333,501,203 1 0241 -- exclamdown
+char161 "
+ct 500,588,140 0 0242 -- cent
+char162 "
+Po 500,684,14 2 0243 -- sterling
+char163 "
+Cs 500,613 0 0244 -- currency
+char164 "
+Ye 500,676 2 0245 -- yen
+char165 "
+bb 220,691,19 2 0246 -- brokenbar
+char166 "
+sc 500,691,132 2 0247 -- section
+char167 "
+ad 333,667 2 0250 -- dieresis
+char168 "
+co 747,691,19 2 0251 -- copyright
+char169 "
+Of 300,688 2 0252 -- ordfeminine
+char170 "
+fo 333,415 0 0253 -- guilsinglleft
+no 570,399 0 0254 -- logicalnot
+char172 "
+\- 570,297 0 0255 -- minus
+rg 747,691,19 2 0256 -- registered
+char174 "
+a- 333,637 2 0257 -- macron
+char175 "
+de 400,688 2 0260 -- degree
+char176 "
+char177 570,506 0 0261 -- plusminus
+S2 300,688 2 0262 -- twosuperior
+char178 "
+S3 300,688 2 0263 -- threesuperior
+char179 "
+aa 333,713 2 0264 -- acute
+char180 "
+char181 556,461,206 1 0265 -- mu
+ps 540,676,186 2 0266 -- paragraph
+char182 "
+char183 250,417 0 0267 -- periodcentered
+ac 333,0,218 1 0270 -- cedilla
+char184 "
+S1 300,688 2 0271 -- onesuperior
+char185 "
+Om 330,688 2 0272 -- ordmasculine
+char186 "
+fc 333,415 0 0273 -- guilsinglright
+14 750,688,12 2 0274 -- onequarter
+char188 "
+12 750,688,12 2 0275 -- onehalf
+char189 "
+34 750,688,12 2 0276 -- threequarters
+char190 "
+r? 500,501,201 0 0277 -- questiondown
+char191 "
+`A 722,923 2 0300 -- Agrave
+char192 "
+'A 722,923 2 0301 -- Aacute
+char193 "
+^A 722,914 2 0302 -- Acircumflex
+char194 "
+~A 722,884 2 0303 -- Atilde
+char195 "
+:A 722,877 2 0304 -- Adieresis
+char196 "
+oA 722,935 2 0305 -- Aring
+char197 "
+AE 1000,676 2 0306 -- AE
+char198 "
+,C 722,691,218 3 0307 -- Ccedilla
+char199 "
+`E 667,923 2 0310 -- Egrave
+char200 "
+'E 667,923 2 0311 -- Eacute
+char201 "
+^E 667,914 2 0312 -- Ecircumflex
+char202 "
+:E 667,877 2 0313 -- Edieresis
+char203 "
+`I 389,923 2 0314 -- Igrave
+char204 "
+'I 389,923 2 0315 -- Iacute
+char205 "
+^I 389,914 2 0316 -- Icircumflex
+char206 "
+:I 389,877 2 0317 -- Idieresis
+char207 "
+-D 722,676 2 0320 -- Eth
+char208 "
+~N 722,884,18 2 0321 -- Ntilde
+char209 "
+`O 778,923,19 2 0322 -- Ograve
+char210 "
+'O 778,923,19 2 0323 -- Oacute
+char211 "
+^O 778,914,19 2 0324 -- Ocircumflex
+char212 "
+~O 778,884,19 2 0325 -- Otilde
+char213 "
+:O 778,877,19 2 0326 -- Odieresis
+char214 "
+char215 570,490 0 0327 -- multiply
+/O 778,737,74 2 0330 -- Oslash
+char216 "
+`U 722,923,19 2 0331 -- Ugrave
+char217 "
+'U 722,923,19 2 0332 -- Uacute
+char218 "
+^U 722,914,19 2 0333 -- Ucircumflex
+char219 "
+:U 722,877,19 2 0334 -- Udieresis
+char220 "
+'Y 722,928 2 0335 -- Yacute
+char221 "
+TP 611,676 2 0336 -- Thorn
+char222 "
+ss 556,691,12 2 0337 -- germandbls
+char223 "
+`a 500,713,14 2 0340 -- agrave
+char224 "
+'a 500,713,14 2 0341 -- aacute
+char225 "
+^a 500,704,14 2 0342 -- acircumflex
+char226 "
+~a 500,674,14 2 0343 -- atilde
+char227 "
+:a 500,667,14 2 0344 -- adieresis
+char228 "
+oa 500,740,14 2 0345 -- aring
+char229 "
+ae 722,473,14 0 0346 -- ae
+char230 "
+,c 444,473,218 1 0347 -- ccedilla
+char231 "
+`e 444,713,14 2 0350 -- egrave
+char232 "
+'e 444,713,14 2 0351 -- eacute
+char233 "
+^e 444,704,14 2 0352 -- ecircumflex
+char234 "
+:e 444,667,14 2 0353 -- edieresis
+char235 "
+`i 278,713 2 0354 -- igrave
+char236 "
+'i 278,713 2 0355 -- iacute
+char237 "
+^i 278,704 2 0356 -- icircumflex
+char238 "
+:i 278,667 2 0357 -- idieresis
+char239 "
+Sd 500,691,14 2 0360 -- eth
+char240 "
+~n 556,674 2 0361 -- ntilde
+char241 "
+`o 500,713,14 2 0362 -- ograve
+char242 "
+'o 500,713,14 2 0363 -- oacute
+char243 "
+^o 500,704,14 2 0364 -- ocircumflex
+char244 "
+~o 500,674,14 2 0365 -- otilde
+char245 "
+:o 500,667,14 2 0366 -- odieresis
+char246 "
+char247 570,537,31 0 0367 -- divide
+/o 500,549,92 0 0370 -- oslash
+char248 "
+`u 556,713,14 2 0371 -- ugrave
+char249 "
+'u 556,713,14 2 0372 -- uacute
+char250 "
+^u 556,704,14 2 0373 -- ucircumflex
+char251 "
+:u 556,667,14 2 0374 -- udieresis
+char252 "
+'y 500,713,205 3 0375 -- yacute
+char253 "
+Tp 556,676,205 3 0376 -- thorn
+char254 "
+:y 500,667,205 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/TBI b/font/devps/TBI
new file mode 100644
index 000000000..d2efe7d5f
--- /dev/null
+++ b/font/devps/TBI
@@ -0,0 +1,515 @@
+name TBI
+internalname Times-BoldItalic
+slant 15
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -74
+A w -74
+A v -74
+A u -30
+A ' -74
+A Y -70
+A W -100
+A V -95
+A U -50
+A T -55
+A Q -55
+A O -50
+A G -60
+A C -65
+B U -10
+B A -25
+D Y -50
+D W -40
+D V -50
+D A -25
+F r -50
+F . -129
+F o -70
+F i -40
+F e -100
+F , -129
+F a -95
+F A -100
+J u -40
+J . -10
+J o -40
+J e -40
+J , -10
+J a -40
+J A -25
+K y -20
+K u -20
+K o -25
+K e -25
+K O -30
+L y -37
+L ' -55
+L Y -37
+L W -37
+L V -37
+L T -18
+N A -30
+O Y -50
+O X -40
+O W -50
+O V -50
+O T -40
+O A -40
+P . -129
+P o -55
+P e -50
+P , -129
+P a -40
+P A -85
+Q U -10
+R Y -18
+R W -18
+R V -18
+R U -40
+R T -30
+R O -40
+T y -37
+T w -37
+T u -37
+T ; -74
+T r -37
+T . -92
+T o -95
+T i -37
+T - -92
+T hy -92
+T char173 -92
+T e -92
+T , -92
+T : -74
+T a -92
+T O -18
+T A -55
+U A -45
+V u -55
+V ; -74
+V . -129
+V o -111
+V i -55
+V - -70
+V hy -70
+V char173 -70
+V e -111
+V , -129
+V : -74
+V a -111
+V O -30
+V G -10
+V A -85
+W y -55
+W u -55
+W ; -55
+W . -74
+W o -80
+W i -37
+W - -50
+W hy -50
+W char173 -50
+W e -90
+W , -74
+W : -55
+W a -85
+W O -15
+W A -74
+Y u -92
+Y ; -92
+Y . -74
+Y o -111
+Y i -55
+Y - -92
+Y hy -92
+Y char173 -92
+Y e -111
+Y , -92
+Y : -92
+Y a -92
+Y O -25
+Y A -74
+b u -20
+b . -40
+b b -10
+c k -10
+c h -10
+, ' -95
+, rq -95
+e b -10
+f ' 55
+f . -10
+f o -10
+f f -18
+f e -10
+f .i -30
+f , -10
+k o -10
+k e -30
+n v -40
+o y -10
+o x -10
+o w -25
+o v -15
+. ' -95
+. rq -95
+` ` -74
+` oq -74
+oq ` -74
+oq oq -74
+' v -15
+' t -37
+' s -74
+' r -15
+' ' -74
+' d -15
+r . -65
+r , -65
+v . -37
+v o -15
+v e -15
+v , -37
+w . -37
+w o -15
+w e -10
+w , -37
+w a -10
+x e -10
+y . -37
+y , -37
+charset
+ha 570,669,0,0,-17 2 0000 -- asciicircum
+ti 570,333,0,0,-4 0 0001 -- asciitilde
+vS 556,897,18,20,48,20 2 0002 -- Scaron
+vZ 611,897,0,29,61,29 2 0003 -- Zcaron
+vs 389,690,13,100,69,99 2 0004 -- scaron
+vz 389,690,78,85,93,85 2 0005 -- zcaron
+:Y 611,862,0,98,-23,98 2 0006 -- Ydieresis
+tm 1000,669,0,18,18,18 2 0007 -- trademark
+aq 278,685,0,40,-78,40 2 0010 -- quotesingle
+space 250 0 0040
+! 389,684,13,31,-17,31 2 0041 -- exclam
+" 555,685,0,31,-86,31 2 0042 -- quotedbl
+# 500,700,0,83,83,83 2 0043 -- numbersign
+sh "
+$ 500,733,100,47,70,47 2 0044 -- dollar
+Do "
+% 833,692,10,10,11,10 2 0045 -- percent
+& 778,682,19,0,45 2 0046 -- ampersand
+' 333,685,0,19,-48,19 2 0047 -- quoteright
+( 333,685,179,61,22,61 2 0050 -- parenleft
+) 333,685,179,0,94 2 0051 -- parenright
+* 500,685,0,6,-15,6 2 0052 -- asterisk
++ 570,506,0,17,17,17 0 0053 -- plus
+, 250,134,182,0,110 0 0054 -- comma
+- 333,282,0,0,48 0 0055 -- hyphen
+hy "
+char173 "
+. 250,135,13,0,59 0 0056 -- period
+/ 278,685,18,114,114,99 2 0057 -- slash
+sl "
+0 500,683,14,27,33,27 2 0060 -- zero
+1 500,683,0,0,45 2 0061 -- one
+2 500,683,0,0,77 2 0062 -- two
+3 500,683,13,0,65 2 0063 -- three
+4 500,683,0,53,65,53 2 0064 -- four
+5 500,669,13,37,61,37 2 0065 -- five
+6 500,679,15,59,27,59 2 0066 -- six
+7 500,669,0,75,-2,75 2 0067 -- seven
+8 500,683,13,26,47,26 2 0070 -- eight
+9 500,683,10,25,62,25 2 0071 -- nine
+: 333,459,13,0,27 0 0072 -- colon
+; 333,459,183,0,75 0 0073 -- semicolon
+< 570,514,8,19,19,19 0 0074 -- less
+= 570,399,0,17,17,17 0 0075 -- equal
+> 570,514,8,19,19,19 0 0076 -- greater
+? 500,684,13,20,-29,20 2 0077 -- question
+@ 832,685,18,0,-13 2 0100 -- at
+at "
+A 667,683,0,0,117 2 0101 -- A
+B 667,669,0,7,74,7 2 0102 -- B
+C 667,685,18,60,18,60 2 0103 -- C
+D 722,669,0,13,96,13 2 0104 -- D
+E 667,669,0,36,77,36 2 0105 -- E
+F 667,669,0,43,63,43 2 0106 -- F
+G 722,685,18,34,29,34 2 0107 -- G
+H 778,669,0,71,74,71 2 0110 -- H
+I 389,669,0,67,82,67 2 0111 -- I
+J 500,669,99,74,96,74 2 0112 -- J
+K 667,669,0,85,71,85 2 0113 -- K
+L 611,669,0,29,72,29 2 0114 -- L
+M 889,669,12,78,79,78 2 0115 -- M
+N 722,669,15,76,77,76 2 0116 -- N
+O 722,685,18,19,23,19 2 0117 -- O
+P 611,669,0,52,77,52 2 0120 -- P
+Q 722,685,208,19,23,19 3 0121 -- Q
+R 667,669,0,6,79,6 2 0122 -- R
+S 556,685,18,20,48,20 2 0123 -- S
+T 611,669,0,89,0,89 2 0124 -- T
+U 722,669,18,72,-17,72 2 0125 -- U
+V 667,669,18,98,-15,98 2 0126 -- V
+W 889,669,18,101,-15,99 2 0127 -- W
+X 667,669,0,77,74,77 2 0130 -- X
+Y 611,669,0,98,-23,98 2 0131 -- Y
+Z 611,669,0,29,61,29 2 0132 -- Z
+[ 333,674,159,79,87,79 2 0133 -- bracketleft
+lB "
+\ 278,685,18,51,51,51 2 0134 -- backslash
+rs "
+] 333,674,157,60,106,60 2 0135 -- bracketright
+rB "
+a^ 333,690,0,84,10,84 2 0136 -- circumflex
+^ "
+_ 500,0,125,50,50,50 0 0137 -- underscore
+` 333,685,0,49,-78,49 2 0140 -- quoteleft
+oq "
+a 500,462,14,5,71,5 0 0141 -- a
+b 500,699,13,0,64 2 0142 -- b
+c 444,462,13,0,55 0 0143 -- c
+d 500,699,13,67,71,67 2 0144 -- d
+e 444,462,13,4,45,4 0 0145 -- e
+f 333,698,205,163,219,99 3 0146 -- f
+g 500,462,203,28,102,28 1 0147 -- g
+h 556,699,9,0,63 2 0150 -- h
+i 278,684,9,35,48,35 2 0151 -- i
+j 278,684,207,51,239,51 3 0152 -- j
+k 500,699,8,33,73,33 2 0153 -- k
+l 278,699,9,62,48,62 2 0154 -- l
+m 778,462,9,0,64 0 0155 -- m
+n 556,462,9,0,56 0 0156 -- n
+o 500,462,13,0,53 0 0157 -- o
+p 500,462,205,0,170 1 0160 -- p
+q 500,462,205,21,49,21 1 0161 -- q
+r 389,462,0,50,71,50 0 0162 -- r
+s 389,462,13,0,69 0 0163 -- s
+t 278,594,9,53,61,53 2 0164 -- t
+u 556,462,9,0,35 0 0165 -- u
+v 444,462,13,7,34,7 0 0166 -- v
+w 667,462,13,0,34 0 0167 -- w
+x 500,462,13,19,96,19 0 0170 -- x
+y 444,462,205,0,144 1 0171 -- y
+z 389,449,78,29,93,29 0 0172 -- z
+lC 348,686,187,138,45,99 2 0173 -- braceleft
+{ "
+ba 220,685,18,0,-16 2 0174 -- bar
+| "
+rC 348,686,187,4,179,4 2 0175 -- braceright
+} "
+a~ 333,655,0,124,2,99 2 0176 -- tilde
+~ "
+bq 333,134,182,0,55 0 0200 -- quotesinglbase
+Fo 500,415,0,18,38,18 0 0201 -- guillemotleft
+char171 "
+Fc 500,415,0,18,38,18 0 0202 -- guillemotright
+char187 "
+bu 350,525,0,50,50,50 0 0203 -- bullet
+Fn 500,707,156,87,137,87 2 0204 -- florin
+f/ 167,683,14,207,219,99 2 0205 -- fraction
+%0 1000,706,29,46,43,46 2 0206 -- perthousand
+dg 500,685,145,44,-41,44 2 0207 -- dagger
+dd 500,685,139,43,40,43 2 0210 -- daggerdbl
+en 500,269,0,27,90,27 0 0211 -- endash
+em 1000,269,0,27,90,27 0 0212 -- emdash
+fi 556,703,205,8,238,8 3 0214 -- fi
+fl 556,704,205,47,236,47 3 0215 -- fl
+.i 278,462,9,10,48,10 0 0220 -- dotlessi
+ga 333,697,0,14,-35,14 2 0222 -- grave
+a" 333,697,0,215,-19,99 2 0223 -- hungarumlaut
+a. 333,655,0,10,-113,10 2 0224 -- dotaccent
+ab 333,678,0,104,-21,99 2 0225 -- breve
+ah 333,690,0,128,-29,99 2 0226 -- caron
+ao 333,729,0,57,-77,57 2 0227 -- ring
+ho 333,44,173,0,90 0 0230 -- ogonek
+lq 500,685,0,63,-3,63 2 0231 -- quotedblleft
+rq 500,685,0,63,-3,63 2 0232 -- quotedblright
+oe 722,462,13,2,44,2 0 0233 -- oe
+/l 278,699,9,73,63,73 2 0234 -- lslash
+Bq 500,134,182,0,107 0 0235 -- quotedblbase
+OE 944,677,8,52,27,52 2 0236 -- OE
+/L 611,669,0,29,72,29 2 0237 -- Lslash
+r! 389,492,205,0,31 1 0241 -- exclamdown
+char161 "
+ct 500,576,143,0,8 0 0242 -- cent
+char162 "
+Po 500,683,12,60,82,60 2 0243 -- sterling
+char163 "
+Cs 500,586,0,76,76,76 0 0244 -- currency
+char164 "
+Ye 500,669,0,178,17,99 2 0245 -- yen
+char165 "
+bb 220,685,18,0,-16 2 0246 -- brokenbar
+char166 "
+sc 500,685,143,9,14,9 2 0247 -- section
+char167 "
+ad 333,655,0,114,-5,99 2 0250 -- dieresis
+char168 "
+co 747,685,18,21,20,21 2 0251 -- copyright
+char169 "
+Of 266,685,0,114,34,99 2 0252 -- ordfeminine
+char170 "
+fo 333,415,0,20,18,20 0 0253 -- guilsinglleft
+no 606,399,0,0,-1 0 0254 -- logicalnot
+char172 "
+\- 606,297,0,0,-1 0 0255 -- minus
+rg 747,685,18,21,20,21 2 0256 -- registered
+char174 "
+a- 333,623,0,110,-1,99 2 0257 -- macron
+char175 "
+de 400,683,0,19,-33,19 2 0260 -- degree
+char176 "
+char177 570,506,0,17,17,17 0 0261 -- plusminus
+S2 300,683,0,63,48,63 2 0262 -- twosuperior
+char178 "
+S3 300,683,0,71,33,71 2 0263 -- threesuperior
+char179 "
+aa 333,697,0,96,-89,96 2 0264 -- acute
+char180 "
+char181 576,449,207,0,110 1 0265 -- mu
+ps 500,669,193,112,107,99 2 0266 -- paragraph
+char182 "
+char183 250,405,0,0,-1 0 0267 -- periodcentered
+ac 333,5,218,0,130 1 0270 -- cedilla
+char184 "
+S1 300,683,0,51,20,51 2 0271 -- onesuperior
+char185 "
+Om 300,685,0,97,-6,97 2 0272 -- ordmasculine
+char186 "
+fc 333,415,0,0,40 0 0273 -- guilsinglright
+14 750,683,14,21,43,21 2 0274 -- onequarter
+char188 "
+12 750,683,14,23,59,23 2 0275 -- onehalf
+char189 "
+34 750,683,14,26,43,26 2 0276 -- threequarters
+char190 "
+r? 500,492,205,0,20 1 0277 -- questiondown
+char191 "
+`A 667,904,0,0,117 2 0300 -- Agrave
+char192 "
+'A 667,904,0,0,117 2 0301 -- Aacute
+char193 "
+^A 667,897,0,0,117 2 0302 -- Acircumflex
+char194 "
+~A 667,862,0,0,117 2 0303 -- Atilde
+char195 "
+:A 667,862,0,0,117 2 0304 -- Adieresis
+char196 "
+oA 667,921,0,0,117 2 0305 -- Aring
+char197 "
+AE 944,669,0,24,114,24 2 0306 -- AE
+char198 "
+,C 667,685,218,60,18,60 3 0307 -- Ccedilla
+char199 "
+`E 667,904,0,36,77,36 2 0310 -- Egrave
+char200 "
+'E 667,904,0,36,77,36 2 0311 -- Eacute
+char201 "
+^E 667,897,0,36,77,36 2 0312 -- Ecircumflex
+char202 "
+:E 667,862,0,36,77,36 2 0313 -- Edieresis
+char203 "
+`I 389,904,0,67,82,67 2 0314 -- Igrave
+char204 "
+'I 389,904,0,73,82,73 2 0315 -- Iacute
+char205 "
+^I 389,897,0,81,82,81 2 0316 -- Icircumflex
+char206 "
+:I 389,862,0,106,82,99 2 0317 -- Idieresis
+char207 "
+-D 722,669,0,28,81,28 2 0320 -- Eth
+char208 "
+~N 722,862,15,76,77,76 2 0321 -- Ntilde
+char209 "
+`O 722,904,18,19,23,19 2 0322 -- Ograve
+char210 "
+'O 722,904,18,19,23,19 2 0323 -- Oacute
+char211 "
+^O 722,897,18,19,23,19 2 0324 -- Ocircumflex
+char212 "
+~O 722,862,18,19,23,19 2 0325 -- Otilde
+char213 "
+:O 722,862,18,19,23,19 2 0326 -- Odieresis
+char214 "
+char215 570,490,0,2,2,2 0 0327 -- multiply
+/O 722,764,125,19,23,19 2 0330 -- Oslash
+char216 "
+`U 722,904,18,72,-17,72 2 0331 -- Ugrave
+char217 "
+'U 722,904,18,72,-17,72 2 0332 -- Uacute
+char218 "
+^U 722,897,18,72,-17,72 2 0333 -- Ucircumflex
+char219 "
+:U 722,862,18,72,-17,72 2 0334 -- Udieresis
+char220 "
+'Y 611,904,0,98,-23,98 2 0335 -- Yacute
+char221 "
+TP 611,669,0,12,77,12 2 0336 -- Thorn
+char222 "
+ss 500,705,200,23,250,23 2 0337 -- germandbls
+char223 "
+`a 500,697,14,5,71,5 2 0340 -- agrave
+char224 "
+'a 500,697,14,13,71,13 2 0341 -- aacute
+char225 "
+^a 500,690,14,5,71,5 2 0342 -- acircumflex
+char226 "
+~a 500,655,14,41,71,41 2 0343 -- atilde
+char227 "
+:a 500,655,14,21,71,21 2 0344 -- adieresis
+char228 "
+oa 500,729,14,5,71,5 2 0345 -- aring
+char229 "
+ae 722,462,13,1,55,1 0 0346 -- ae
+char230 "
+,c 444,462,218,0,74 1 0347 -- ccedilla
+char231 "
+`e 444,697,13,4,45,4 2 0350 -- egrave
+char232 "
+'e 444,697,13,41,45,41 2 0351 -- eacute
+char233 "
+^e 444,690,13,29,45,29 2 0352 -- ecircumflex
+char234 "
+:e 444,655,13,49,45,49 2 0353 -- edieresis
+char235 "
+`i 278,697,9,32,48,32 2 0354 -- igrave
+char236 "
+'i 278,697,9,124,48,99 2 0355 -- iacute
+char237 "
+^i 278,690,9,97,52,97 2 0356 -- icircumflex
+char238 "
+:i 278,655,9,132,48,99 2 0357 -- idieresis
+char239 "
+Sd 500,699,13,4,53,4 2 0360 -- eth
+char240 "
+~n 556,655,9,0,56 2 0361 -- ntilde
+char241 "
+`o 500,697,13,0,53 2 0362 -- ograve
+char242 "
+'o 500,697,13,13,53,13 2 0363 -- oacute
+char243 "
+^o 500,690,13,1,53,1 2 0364 -- ocircumflex
+char244 "
+~o 500,655,13,41,53,41 2 0365 -- otilde
+char245 "
+:o 500,655,13,16,53,16 2 0366 -- odieresis
+char246 "
+char247 570,535,29,17,17,17 0 0367 -- divide
+/o 500,560,119,0,53 0 0370 -- oslash
+char248 "
+`u 556,697,9,0,35 2 0371 -- ugrave
+char249 "
+'u 556,697,9,0,35 2 0372 -- uacute
+char250 "
+^u 556,690,9,0,35 2 0373 -- ucircumflex
+char251 "
+:u 556,655,9,0,35 2 0374 -- udieresis
+char252 "
+'y 444,697,205,41,144,41 3 0375 -- yacute
+char253 "
+Tp 500,699,205,0,170 3 0376 -- thorn
+char254 "
+:y 444,655,205,44,144,44 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/TI b/font/devps/TI
new file mode 100644
index 000000000..9ec7eeeda
--- /dev/null
+++ b/font/devps/TI
@@ -0,0 +1,528 @@
+name TI
+internalname Times-Italic
+slant 7
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -55
+A w -55
+A v -55
+A u -20
+A ' -37
+A Y -55
+A W -95
+A V -105
+A U -50
+A T -37
+A Q -40
+A O -40
+A G -35
+A C -30
+B U -10
+B A -25
+D Y -40
+D W -40
+D V -40
+D A -35
+F r -55
+F . -135
+F o -105
+F i -45
+F e -75
+F , -135
+F a -75
+F A -115
+J u -35
+J . -25
+J o -25
+J e -25
+J , -25
+J a -35
+J A -40
+K y -40
+K u -40
+K o -40
+K e -35
+K O -50
+L y -30
+L ' -37
+L Y -20
+L W -55
+L V -55
+L T -20
+N A -27
+O Y -50
+O X -40
+O W -50
+O V -50
+O T -40
+O A -55
+P . -135
+P o -80
+P e -80
+P , -135
+P a -80
+P A -90
+Q U -10
+R Y -18
+R W -18
+R V -18
+R U -40
+R O -40
+T y -74
+T w -74
+T u -55
+T ; -65
+T r -55
+T . -74
+T o -92
+T i -55
+T - -74
+T hy -74
+T char173 -74
+T e -92
+T , -74
+T : -55
+T a -92
+T O -18
+T A -50
+U . -25
+U , -25
+U A -40
+V u -74
+V ; -74
+V . -129
+V o -111
+V i -74
+V - -55
+V hy -55
+V char173 -55
+V e -111
+V , -129
+V : -65
+V a -111
+V O -30
+V A -60
+W y -70
+W u -55
+W ; -65
+W . -92
+W o -92
+W i -55
+W - -37
+W hy -37
+W char173 -37
+W e -92
+W , -92
+W : -65
+W a -92
+W O -25
+W A -60
+Y u -92
+Y ; -65
+Y . -92
+Y o -92
+Y i -74
+Y - -74
+Y hy -74
+Y char173 -74
+Y e -92
+Y , -92
+Y : -65
+Y a -92
+Y O -15
+Y A -50
+a g -10
+b u -20
+b . -40
+c k -20
+c h -15
+, ' -140
+, rq -140
+e y -30
+e x -20
+e w -15
+e v -15
+e . -15
+e g -40
+e , -10
+f ' 92
+f . -15
+f i -20
+f f -18
+f .i -60
+f , -10
+g . -15
+g g -10
+g e -10
+g , -10
+k y -10
+k o -10
+k e -10
+n v -40
+o v -10
+o g -10
+. ' -140
+. rq -140
+` ` -111
+` oq -111
+oq ` -111
+oq oq -111
+' v -10
+' t -30
+' s -40
+' r -25
+' ' -111
+' d -25
+r s -10
+r q -37
+r . -111
+r o -45
+r - -20
+r hy -20
+r char173 -20
+r g -37
+r e -37
+r d -37
+r , -111
+r c -37
+r a -15
+v . -74
+v , -74
+w . -74
+w , -74
+y . -55
+y , -55
+charset
+ha 422,666,0,50,50,43 2 0000 -- asciicircum
+ti 541,323,0,11,10,11 0 0001 -- asciitilde
+vS 500,873,18,70,33,43 2 0002 -- Scaron
+vZ 556,873,0,100,56,43 2 0003 -- Zcaron
+vs 389,661,13,115,34,43 2 0004 -- scaron
+vz 389,661,81,95,52,43 2 0005 -- zcaron
+:Y 556,818,0,127,-28,43 2 0006 -- Ydieresis
+tm 980,653,0,27,20,27 2 0007 -- trademark
+aq 214,666,0,77,-82,43 2 0010 -- quotesingle
+space 250 0 0040
+! 333,667,11,19,11,19 2 0041 -- exclam
+" 420,666,0,62,-94,43 2 0042 -- quotedbl
+# 500,676,0,90,48,43 2 0043 -- numbersign
+sh "
+$ 500,731,89,47,19,43 2 0044 -- dollar
+Do "
+% 833,676,13,7,-29,7 2 0045 -- percent
+& 778,666,18,0,-26 2 0046 -- ampersand
+' 333,666,0,7,-101,7 2 0047 -- quoteright
+( 333,669,181,32,8,32 2 0050 -- parenleft
+) 333,669,180,6,34,6 2 0051 -- parenright
+* 500,666,0,42,-78,42 2 0052 -- asterisk
++ 675,506,0,0,-36 0 0053 -- plus
+, 250,101,129,0,54 0 0054 -- comma
+- 333,255,0,0,1 0 0055 -- hyphen
+hy "
+char173 "
+. 250,100,11,0,23 0 0056 -- period
+/ 278,666,18,158,115,43 2 0057 -- slash
+sl "
+0 500,676,7,47,18,43 2 0060 -- zero
+1 500,676,0,0,1 2 0061 -- one
+2 500,676,0,2,38,2 2 0062 -- two
+3 500,676,7,15,35,15 2 0063 -- three
+4 500,676,0,29,49,29 2 0064 -- four
+5 500,666,7,41,35,41 2 0065 -- five
+6 500,686,7,71,20,43 2 0066 -- six
+7 500,666,8,87,-25,43 2 0067 -- seven
+8 500,676,7,43,20,43 2 0070 -- eight
+9 500,676,17,42,27,42 2 0071 -- nine
+: 333,441,11 0 0072 -- colon
+; 333,441,129,0,23 0 0073 -- semicolon
+< 675,514,8,0,-34 0 0074 -- less
+= 675,386,0,0,-36 0 0075 -- equal
+> 675,514,8,0,-34 0 0076 -- greater
+? 500,664,12,22,-82,22 2 0077 -- question
+@ 920,666,18,0,-68 2 0100 -- at
+at "
+A 611,668,0,3,101,3 2 0101 -- A
+B 611,653,0,27,58,27 2 0102 -- B
+C 667,666,18,72,-16,43 2 0103 -- C
+D 722,653,0,28,58,28 2 0104 -- D
+E 611,653,0,73,51,43 2 0105 -- E
+F 611,653,0,84,42,43 2 0106 -- F
+G 722,666,18,50,-2,43 2 0107 -- G
+H 722,653,0,95,58,43 2 0110 -- H
+I 333,653,0,101,58,43 2 0111 -- I
+J 444,653,18,97,56,43 2 0112 -- J
+K 667,653,0,105,43,43 2 0113 -- K
+L 556,653,0,53,58,43 2 0114 -- L
+M 833,653,0,90,68,43 2 0115 -- M
+N 667,653,15,110,70,43 2 0116 -- N
+O 722,666,18,27,-10,27 2 0117 -- O
+P 611,653,0,44,50,43 2 0120 -- P
+Q 722,666,182,27,-9,27 2 0121 -- Q
+R 611,653,0,27,63,27 2 0122 -- R
+S 500,667,18,58,33,43 2 0123 -- S
+T 556,653,0,127,-9,43 2 0124 -- T
+U 722,653,18,93,-52,43 2 0125 -- U
+V 611,653,18,127,-26,43 2 0126 -- V
+W 833,653,18,123,-21,43 2 0127 -- W
+X 611,653,0,94,79,43 2 0130 -- X
+Y 556,653,0,127,-28,43 2 0131 -- Y
+Z 556,653,0,100,56,43 2 0132 -- Z
+[ 389,663,153,52,29,43 2 0133 -- bracketleft
+lB "
+\ 278,666,18,91,91,43 2 0134 -- backslash
+rs "
+] 389,663,153,43,38,43 2 0135 -- bracketright
+rB "
+a^ 333,661,0,102,-41,43 2 0136 -- circumflex
+^ "
+_ 500,0,125,50,50,43 0 0137 -- underscore
+` 333,666,0,27,-121,27 2 0140 -- quoteleft
+oq "
+a 500,441,11,26,33,26 0 0141 -- a
+b 500,683,11,23,27,23 2 0142 -- b
+c 444,441,11,31,20,31 0 0143 -- c
+d 500,683,13,77,35,43 2 0144 -- d
+e 444,441,11,18,19,18 0 0145 -- e
+f 278,678,207,196,197,43 3 0146 -- f
+g 500,441,206,22,42,22 1 0147 -- g
+h 500,683,9,28,31,28 2 0150 -- h
+i 278,654,11,36,1,36 2 0151 -- i
+j 278,654,207,48,174,43 3 0152 -- j
+k 444,683,11,67,36,43 2 0153 -- k
+l 278,683,11,51,9,43 2 0154 -- l
+m 722,441,9,32,38,32 0 0155 -- m
+n 500,441,9,24,36,24 0 0156 -- n
+o 500,441,11,18,23,18 0 0157 -- o
+p 500,441,205,19,125,19 1 0160 -- p
+q 500,441,209,33,25,33 1 0161 -- q
+r 389,441,0,73,5,43 0 0162 -- r
+s 389,442,13,27,34,27 0 0163 -- s
+t 278,546,11,68,13,43 2 0164 -- t
+u 500,441,11,25,8,25 0 0165 -- u
+v 444,441,18,32,29,32 0 0166 -- v
+w 667,441,18,31,34,31 0 0167 -- w
+x 444,441,11,53,77,43 0 0170 -- x
+y 444,441,206,32,74,32 1 0171 -- y
+z 389,428,81,41,52,41 0 0172 -- z
+lC 400,687,177,57,-1,43 2 0173 -- braceleft
+{ "
+ba 275,666,18,0,-55 2 0174 -- bar
+| "
+rC 400,687,177,0,57 2 0175 -- braceright
+} "
+a~ 333,624,0,144,-50,43 2 0176 -- tilde
+~ "
+bq 333,101,129,0,6 0 0200 -- quotesinglbase
+Fo 500,403,0,0,-3 0 0201 -- guillemotleft
+char171 "
+Fc 500,403,0,0,-5 0 0202 -- guillemotright
+char187 "
+bu 350,461,0,10,10,10 0 0203 -- bullet
+Fn 500,682,182,57,25,43 2 0204 -- florin
+f/ 167,676,10,220,219,43 2 0205 -- fraction
+%0 1000,706,19,60,25,43 2 0206 -- perthousand
+dg 500,666,159,38,-51,38 2 0207 -- dagger
+dd 500,666,143,41,28,41 2 0210 -- daggerdbl
+en 500,243,0,55,56,43 0 0211 -- endash
+em 889,243,0,55,56,43 0 0212 -- emdash
+fi 500,681,207,31,191,31 3 0214 -- fi
+fl 500,682,204,68,191,43 3 0215 -- fl
+.i 278,441,11,7,1,7 0 0220 -- dotlessi
+ga 333,664,0,28,-71,28 2 0222 -- grave
+a" 333,664,0,203,-43,43 2 0223 -- hungarumlaut
+a. 333,606,0,22,-157,22 2 0224 -- dotaccent
+ab 333,650,0,135,-67,43 2 0225 -- breve
+ah 333,661,0,143,-71,43 2 0226 -- caron
+ao 333,691,0,72,-105,43 2 0227 -- ring
+ho 333,40,169,0,70 0 0230 -- ogonek
+lq 556,666,0,8,-116,8 2 0231 -- quotedblleft
+rq 556,666,0,0,-101 2 0232 -- quotedblright
+oe 667,441,12,29,30,29 0 0233 -- oe
+/l 278,683,11,79,13,43 2 0234 -- lslash
+Bq 556,101,129,0,-7 0 0235 -- quotedblbase
+OE 944,666,8,70,1,43 2 0236 -- OE
+/L 556,653,0,53,58,43 2 0237 -- Lslash
+r! 389,473,205,0,-9 1 0241 -- exclamdown
+char161 "
+ct 500,560,143,22,-27,22 2 0242 -- cent
+char162 "
+Po 500,670,6,67,40,43 2 0243 -- sterling
+char163 "
+Cs 500,597,0,72,72,43 2 0244 -- currency
+char164 "
+Ye 500,653,0,153,23,43 2 0245 -- yen
+char165 "
+bb 275,666,18,0,-55 2 0246 -- brokenbar
+char166 "
+sc 500,666,162,11,-3,11 2 0247 -- section
+char167 "
+ad 333,606,0,122,-57,43 2 0250 -- dieresis
+char168 "
+co 760,666,18,9,9,9 2 0251 -- copyright
+char169 "
+Of 276,676,0,126,8,43 2 0252 -- ordfeminine
+char170 "
+fo 333,403,0,0,-1 0 0253 -- guilsinglleft
+no 675,386,0,0,-36 0 0254 -- logicalnot
+char172 "
+\- 675,286,0,0,-36 0 0255 -- minus
+rg 760,666,18,9,9,9 2 0256 -- registered
+char174 "
+a- 333,583,0,128,-49,43 2 0257 -- macron
+char175 "
+de 400,676,0,37,-51,37 2 0260 -- degree
+char176 "
+char177 675,506,0,0,-36 0 0261 -- plusminus
+S2 300,676,0,74,17,43 2 0262 -- twosuperior
+char178 "
+S3 300,676,0,89,7,43 2 0263 -- threesuperior
+char179 "
+aa 333,664,0,120,-130,43 2 0264 -- acute
+char180 "
+char181 500,428,209,47,80,43 1 0265 -- mu
+ps 523,653,123,143,-5,43 2 0266 -- paragraph
+char182 "
+char183 250,310,0,0,-20 0 0267 -- periodcentered
+ac 333,0,217,0,80 1 0270 -- cedilla
+char184 "
+S1 300,676,0,34,7,34 2 0271 -- onesuperior
+char185 "
+Om 310,676,0,102,-17,43 2 0272 -- ordmasculine
+char186 "
+fc 333,403,0,0,-2 0 0273 -- guilsinglright
+14 750,676,10,36,17,36 2 0274 -- onequarter
+char188 "
+12 750,676,10,49,16,43 2 0275 -- onehalf
+char189 "
+34 750,676,10,36,27,36 2 0276 -- threequarters
+char190 "
+r? 500,471,205,0,22 1 0277 -- questiondown
+char191 "
+`A 611,876,0,3,101,3 2 0300 -- Agrave
+char192 "
+'A 611,876,0,3,101,3 2 0301 -- Aacute
+char193 "
+^A 611,873,0,3,101,3 2 0302 -- Acircumflex
+char194 "
+~A 611,836,0,5,101,5 2 0303 -- Atilde
+char195 "
+:A 611,818,0,3,101,3 2 0304 -- Adieresis
+char196 "
+oA 611,883,0,3,101,3 2 0305 -- Aring
+char197 "
+AE 889,653,0,72,77,43 2 0306 -- AE
+char198 "
+,C 667,666,217,72,-16,43 3 0307 -- Ccedilla
+char199 "
+`E 611,876,0,73,51,43 2 0310 -- Egrave
+char200 "
+'E 611,876,0,73,51,43 2 0311 -- Eacute
+char201 "
+^E 611,873,0,73,51,43 2 0312 -- Ecircumflex
+char202 "
+:E 611,818,0,73,51,43 2 0313 -- Edieresis
+char203 "
+`I 333,876,0,101,58,43 2 0314 -- Igrave
+char204 "
+'I 333,876,0,130,58,43 2 0315 -- Iacute
+char205 "
+^I 333,873,0,142,58,43 2 0316 -- Icircumflex
+char206 "
+:I 333,818,0,152,58,43 2 0317 -- Idieresis
+char207 "
+-D 722,653,0,28,58,28 2 0320 -- Eth
+char208 "
+~N 667,836,15,110,70,43 2 0321 -- Ntilde
+char209 "
+`O 722,876,18,27,-10,27 2 0322 -- Ograve
+char210 "
+'O 722,876,18,27,-10,27 2 0323 -- Oacute
+char211 "
+^O 722,873,18,27,-10,27 2 0324 -- Ocircumflex
+char212 "
+~O 722,836,18,27,-10,27 2 0325 -- Otilde
+char213 "
+:O 722,818,18,27,-10,27 2 0326 -- Odieresis
+char214 "
+char215 675,497,0,0,-43 0 0327 -- multiply
+/O 722,722,105,27,-10,27 2 0330 -- Oslash
+char216 "
+`U 722,876,18,93,-52,43 2 0331 -- Ugrave
+char217 "
+'U 722,876,18,93,-52,43 2 0332 -- Uacute
+char218 "
+^U 722,873,18,93,-52,43 2 0333 -- Ucircumflex
+char219 "
+:U 722,818,18,93,-52,43 2 0334 -- Udieresis
+char220 "
+'Y 556,876,0,127,-28,43 2 0335 -- Yacute
+char221 "
+TP 611,653,0,8,50,8 2 0336 -- Thorn
+char222 "
+ss 500,679,207,43,218,43 3 0337 -- germandbls
+char223 "
+`a 500,664,11,26,33,26 2 0340 -- agrave
+char224 "
+'a 500,664,11,37,33,37 2 0341 -- aacute
+char225 "
+^a 500,661,11,26,33,26 2 0342 -- acircumflex
+char226 "
+~a 500,624,11,61,33,43 2 0343 -- atilde
+char227 "
+:a 500,606,11,39,33,39 2 0344 -- adieresis
+char228 "
+oa 500,691,11,26,33,26 2 0345 -- aring
+char229 "
+ae 667,441,11,23,27,23 0 0346 -- ae
+char230 "
+,c 444,441,217,31,24,31 1 0347 -- ccedilla
+char231 "
+`e 444,664,11,18,19,18 2 0350 -- egrave
+char232 "
+'e 444,664,11,65,19,43 2 0351 -- eacute
+char233 "
+^e 444,661,11,47,19,43 2 0352 -- ecircumflex
+char234 "
+:e 444,606,11,57,19,43 2 0353 -- edieresis
+char235 "
+`i 278,664,11,56,1,43 2 0354 -- igrave
+char236 "
+'i 278,664,11,128,1,43 2 0355 -- iacute
+char237 "
+^i 278,661,11,100,16,43 2 0356 -- icircumflex
+char238 "
+:i 278,606,11,125,1,43 2 0357 -- idieresis
+char239 "
+Sd 500,683,11,32,23,32 2 0360 -- eth
+char240 "
+~n 500,624,9,26,36,26 2 0361 -- ntilde
+char241 "
+`o 500,664,11,18,23,18 2 0362 -- ograve
+char242 "
+'o 500,664,11,37,23,37 2 0363 -- oacute
+char243 "
+^o 500,661,11,18,23,18 2 0364 -- ocircumflex
+char244 "
+~o 500,624,11,46,23,43 2 0365 -- otilde
+char245 "
+:o 500,606,11,39,23,39 2 0366 -- odieresis
+char246 "
+char247 675,517,11,0,-36 0 0367 -- divide
+/o 500,554,135,19,22,19 2 0370 -- oslash
+char248 "
+`u 500,664,11,25,8,25 2 0371 -- ugrave
+char249 "
+'u 500,664,11,27,8,27 2 0372 -- uacute
+char250 "
+^u 500,661,11,25,8,25 2 0373 -- ucircumflex
+char251 "
+:u 500,606,11,29,8,29 2 0374 -- udieresis
+char252 "
+'y 444,664,206,65,74,43 3 0375 -- yacute
+char253 "
+Tp 500,683,205,19,125,19 3 0376 -- thorn
+char254 "
+:y 444,606,206,47,74,43 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/TR b/font/devps/TR
new file mode 100644
index 000000000..7c332754b
--- /dev/null
+++ b/font/devps/TR
@@ -0,0 +1,519 @@
+name TR
+internalname Times-Roman
+spacewidth 250
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A y -92
+A w -92
+A v -74
+A ' -111
+A Y -105
+A W -90
+A V -135
+A U -55
+A T -111
+A Q -55
+A O -55
+A G -40
+A C -40
+B U -10
+B A -35
+D Y -55
+D W -30
+D V -40
+D A -40
+F . -80
+F o -15
+F , -80
+F a -15
+F A -74
+J A -60
+K y -25
+K u -15
+K o -35
+K e -25
+K O -30
+L y -55
+L ' -92
+L Y -100
+L W -74
+L V -100
+L T -92
+N A -35
+O Y -50
+O X -40
+O W -35
+O V -50
+O T -40
+O A -35
+P . -111
+P , -111
+P a -15
+P A -92
+Q U -10
+R Y -65
+R W -55
+R V -80
+R U -40
+R T -60
+R O -40
+T y -80
+T w -80
+T u -45
+T ; -55
+T r -35
+T . -74
+T o -80
+T i -35
+T - -92
+T hy -92
+T char173 -92
+T e -70
+T , -74
+T : -50
+T a -80
+T O -18
+T A -93
+U A -40
+V u -75
+V ; -74
+V . -129
+V o -129
+V i -60
+V - -100
+V hy -100
+V char173 -100
+V e -111
+V , -129
+V : -74
+V a -111
+V O -40
+V G -15
+V A -135
+W y -73
+W u -50
+W ; -37
+W . -92
+W o -80
+W i -40
+W - -65
+W hy -65
+W char173 -65
+W e -80
+W , -92
+W : -37
+W a -80
+W O -10
+W A -120
+Y u -111
+Y ; -92
+Y . -129
+Y o -110
+Y i -55
+Y - -111
+Y hy -111
+Y char173 -111
+Y e -100
+Y , -129
+Y : -92
+Y a -100
+Y O -30
+Y A -120
+a w -15
+a v -20
+b v -15
+b u -20
+b . -40
+c y -15
+, ' -70
+, rq -70
+e y -15
+e x -15
+e w -25
+e v -25
+e g -15
+f ' 55
+f i -20
+f f -25
+f .i -50
+f a -10
+g a -5
+h y -5
+i v -25
+k y -15
+k o -10
+k e -10
+l w -10
+n y -15
+n v -40
+o y -10
+o w -25
+o v -15
+p y -10
+. ' -70
+. rq -70
+lq A -80
+` ` -74
+` oq -74
+oq ` -74
+oq oq -74
+` A -80
+oq A -80
+' v -50
+' t -18
+' s -55
+' r -50
+' ' -74
+' l -10
+' d -50
+r . -55
+r - -20
+r hy -20
+r char173 -20
+r g -18
+r , -40
+v . -65
+v o -20
+v e -15
+v , -65
+v a -25
+w . -65
+w o -10
+w , -65
+w a -10
+x e -15
+y . -65
+y , -65
+charset
+ha 469,662 2 0000 -- asciicircum
+ti 541,323 0 0001 -- asciitilde
+vS 556,886,14 2 0002 -- Scaron
+vZ 611,886 2 0003 -- Zcaron
+vs 389,674,10 2 0004 -- scaron
+vz 444,674 2 0005 -- zcaron
+:Y 722,835 2 0006 -- Ydieresis
+tm 980,662 2 0007 -- trademark
+aq 180,676 2 0010 -- quotesingle
+space 250 0 0040
+! 333,676,9 2 0041 -- exclam
+" 408,676 2 0042 -- quotedbl
+# 500,662 2 0043 -- numbersign
+sh "
+$ 500,727,87 2 0044 -- dollar
+Do "
+% 833,676,13 2 0045 -- percent
+& 778,676,13 2 0046 -- ampersand
+' 333,676 2 0047 -- quoteright
+( 333,676,177 2 0050 -- parenleft
+) 333,676,177 2 0051 -- parenright
+* 500,676 2 0052 -- asterisk
++ 564,506 0 0053 -- plus
+, 250,102,141 0 0054 -- comma
+- 333,257 0 0055 -- hyphen
+hy "
+char173 "
+. 250,100,11 0 0056 -- period
+/ 278,676,14 2 0057 -- slash
+sl "
+0 500,676,14 2 0060 -- zero
+1 500,676 2 0061 -- one
+2 500,676 2 0062 -- two
+3 500,676,14 2 0063 -- three
+4 500,676 2 0064 -- four
+5 500,688,14 2 0065 -- five
+6 500,684,14 2 0066 -- six
+7 500,662,8 2 0067 -- seven
+8 500,676,14 2 0070 -- eight
+9 500,676,22 2 0071 -- nine
+: 278,459,11 0 0072 -- colon
+; 278,459,141 0 0073 -- semicolon
+< 564,514,8 0 0074 -- less
+= 564,386 0 0075 -- equal
+> 564,514,8 0 0076 -- greater
+? 444,676,8 2 0077 -- question
+@ 921,676,14 2 0100 -- at
+at "
+A 722,674 2 0101 -- A
+B 667,662 2 0102 -- B
+C 667,676,14 2 0103 -- C
+D 722,662 2 0104 -- D
+E 611,662 2 0105 -- E
+F 556,662 2 0106 -- F
+G 722,676,14 2 0107 -- G
+H 722,662 2 0110 -- H
+I 333,662 2 0111 -- I
+J 389,662,14 2 0112 -- J
+K 722,662 2 0113 -- K
+L 611,662 2 0114 -- L
+M 889,662 2 0115 -- M
+N 722,662,11 2 0116 -- N
+O 722,676,14 2 0117 -- O
+P 556,662 2 0120 -- P
+Q 722,676,178 2 0121 -- Q
+R 667,662 2 0122 -- R
+S 556,676,14 2 0123 -- S
+T 611,662 2 0124 -- T
+U 722,662,14 2 0125 -- U
+V 722,662,11 2 0126 -- V
+W 944,662,11 2 0127 -- W
+X 722,662 2 0130 -- X
+Y 722,662 2 0131 -- Y
+Z 611,662 2 0132 -- Z
+[ 333,662,156 2 0133 -- bracketleft
+lB "
+\ 278,676,14 2 0134 -- backslash
+rs "
+] 333,662,156 2 0135 -- bracketright
+rB "
+a^ 333,674 2 0136 -- circumflex
+^ "
+_ 500,0,125 0 0137 -- underscore
+` 333,676 2 0140 -- quoteleft
+oq "
+a 444,460,10 0 0141 -- a
+b 500,683,10 2 0142 -- b
+c 444,460,10 0 0143 -- c
+d 500,683,10 2 0144 -- d
+e 444,460,10 0 0145 -- e
+f 333,683 2 0146 -- f
+g 500,460,218 1 0147 -- g
+h 500,683 2 0150 -- h
+i 278,683 2 0151 -- i
+j 278,683,218 3 0152 -- j
+k 500,683 2 0153 -- k
+l 278,683 2 0154 -- l
+m 778,460 0 0155 -- m
+n 500,460 0 0156 -- n
+o 500,460,10 0 0157 -- o
+p 500,460,217 1 0160 -- p
+q 500,460,217 1 0161 -- q
+r 333,460 0 0162 -- r
+s 389,460,10 0 0163 -- s
+t 278,579,10 2 0164 -- t
+u 500,450,10 0 0165 -- u
+v 500,450,14 0 0166 -- v
+w 722,450,14 0 0167 -- w
+x 500,450 0 0170 -- x
+y 500,450,218 1 0171 -- y
+z 444,450 0 0172 -- z
+lC 480,680,181 2 0173 -- braceleft
+{ "
+ba 200,676,14 2 0174 -- bar
+| "
+rC 480,680,181 2 0175 -- braceright
+} "
+a~ 333,638 2 0176 -- tilde
+~ "
+bq 333,102,141 0 0200 -- quotesinglbase
+Fo 500,416 0 0201 -- guillemotleft
+char171 "
+Fc 500,416 0 0202 -- guillemotright
+char187 "
+bu 350,466 0 0203 -- bullet
+Fn 500,676,189 2 0204 -- florin
+f/ 167,676,14 2 0205 -- fraction
+%0 1000,706,19 2 0206 -- perthousand
+dg 500,676,149 2 0207 -- dagger
+dd 500,676,153 2 0210 -- daggerdbl
+en 500,250 0 0211 -- endash
+em 1000,250 0 0212 -- emdash
+fi 556,683 2 0214 -- fi
+fl 556,683 2 0215 -- fl
+.i 278,460 0 0220 -- dotlessi
+ga 333,678 2 0222 -- grave
+a" 333,678 2 0223 -- hungarumlaut
+a. 333,623 2 0224 -- dotaccent
+ab 333,664 2 0225 -- breve
+ah 333,674 2 0226 -- caron
+ao 333,711 2 0227 -- ring
+ho 333,0,165 0 0230 -- ogonek
+lq 444,676 2 0231 -- quotedblleft
+rq 444,676 2 0232 -- quotedblright
+oe 722,460,10 0 0233 -- oe
+/l 278,683 2 0234 -- lslash
+Bq 444,102,141 0 0235 -- quotedblbase
+OE 889,668,6 2 0236 -- OE
+/L 611,662 2 0237 -- Lslash
+r! 333,467,218 1 0241 -- exclamdown
+char161 "
+ct 500,579,138 2 0242 -- cent
+char162 "
+Po 500,676,8 2 0243 -- -- sterling
+char163 "
+Cs 500,602 2 0244 -- currency
+char164 "
+Ye 500,662 2 0245 -- yen
+char165 "
+bb 200,676,14 2 0246 -- brokenbar
+char166 "
+sc 500,676,148 2 0247 -- section
+char167 "
+ad 333,623 2 0250 -- dieresis
+char168 "
+co 760,676,14 2 0251 -- copyright
+char169 "
+Of 276,676 2 0252 -- ordfeminine
+char170 "
+fo 333,416 0 0253 -- guilsinglleft
+no 564,386 0 0254 -- logicalnot
+char172 "
+\- 564,286 0 0255 -- minus
+rg 760,676,14 2 0256 -- registered
+char174 "
+a- 333,601 2 0257 -- macron
+char175 "
+de 400,676 2 0260 -- degree
+char176 "
+char177 564,506 0 0261 -- plusminus
+S2 300,676 2 0262 -- twosuperior
+char178 "
+S3 300,676 2 0263 -- threesuperior
+char179 "
+aa 333,678 2 0264 -- acute
+char180 "
+char181 500,450,218 1 0265 -- mu
+ps 453,662,154 2 0266 -- paragraph
+char182 "
+char183 250,310 0 0267 -- periodcentered
+ac 333,0,215 0 0270 -- cedilla
+char184 "
+S1 300,676 2 0271 -- onesuperior
+char185 "
+Om 310,676 2 0272 -- ordmasculine
+char186 "
+fc 333,416 0 0273 -- guilsinglright
+14 750,676,14 2 0274 -- onequarter
+char188 "
+12 750,676,14 2 0275 -- onehalf
+char189 "
+34 750,676,14 2 0276 -- threequarters
+char190 "
+r? 444,466,218 1 0277 -- questiondown
+char191 "
+`A 722,890 2 0300 -- Agrave
+char192 "
+'A 722,890 2 0301 -- Aacute
+char193 "
+^A 722,886 2 0302 -- Acircumflex
+char194 "
+~A 722,850 2 0303 -- Atilde
+char195 "
+:A 722,835 2 0304 -- Adieresis
+char196 "
+oA 722,898 2 0305 -- Aring
+char197 "
+AE 889,662 2 0306 -- AE
+char198 "
+,C 667,676,215 2 0307 -- Ccedilla
+char199 "
+`E 611,890 2 0310 -- Egrave
+char200 "
+'E 611,890 2 0311 -- Eacute
+char201 "
+^E 611,886 2 0312 -- Ecircumflex
+char202 "
+:E 611,835 2 0313 -- Edieresis
+char203 "
+`I 333,890 2 0314 -- Igrave
+char204 "
+'I 333,890 2 0315 -- Iacute
+char205 "
+^I 333,886 2 0316 -- Icircumflex
+char206 "
+:I 333,835 2 0317 -- Idieresis
+char207 "
+-D 722,662 2 0320 -- Eth
+char208 "
+~N 722,850,11 2 0321 -- Ntilde
+char209 "
+`O 722,890,14 2 0322 -- Ograve
+char210 "
+'O 722,890,14 2 0323 -- Oacute
+char211 "
+^O 722,886,14 2 0324 -- Ocircumflex
+char212 "
+~O 722,850,14 2 0325 -- Otilde
+char213 "
+:O 722,835,14 2 0326 -- Odieresis
+char214 "
+char215 564,497 0 0327 -- multiply
+/O 722,734,80 2 0330 -- Oslash
+char216 "
+`U 722,890,14 2 0331 -- Ugrave
+char217 "
+'U 722,890,14 2 0332 -- Uacute
+char218 "
+^U 722,886,14 2 0333 -- Ucircumflex
+char219 "
+:U 722,835,14 2 0334 -- Udieresis
+char220 "
+'Y 722,890 2 0335 -- Yacute
+char221 "
+TP 556,662 2 0336 -- Thorn
+char222 "
+ss 500,683,9 2 0337 -- germandbls
+char223 "
+`a 444,678,10 2 0340 -- agrave
+char224 "
+'a 444,678,10 2 0341 -- aacute
+char225 "
+^a 444,674,10 2 0342 -- acircumflex
+char226 "
+~a 444,638,10 2 0343 -- atilde
+char227 "
+:a 444,623,10 2 0344 -- adieresis
+char228 "
+oa 444,711,10 2 0345 -- aring
+char229 "
+ae 667,460,10 0 0346 -- ae
+char230 "
+,c 444,460,215 0 0347 -- ccedilla
+char231 "
+`e 444,678,10 2 0350 -- egrave
+char232 "
+'e 444,678,10 2 0351 -- eacute
+char233 "
+^e 444,674,10 2 0352 -- ecircumflex
+char234 "
+:e 444,623,10 2 0353 -- edieresis
+char235 "
+`i 278,678 2 0354 -- igrave
+char236 "
+'i 278,678 2 0355 -- iacute
+char237 "
+^i 278,674 2 0356 -- icircumflex
+char238 "
+:i 278,623 2 0357 -- idieresis
+char239 "
+Sd 500,686,10 2 0360 -- eth
+char240 "
+~n 500,638 2 0361 -- ntilde
+char241 "
+`o 500,678,10 2 0362 -- ograve
+char242 "
+'o 500,678,10 2 0363 -- oacute
+char243 "
+^o 500,674,10 2 0364 -- ocircumflex
+char244 "
+~o 500,638,10 2 0365 -- otilde
+char245 "
+:o 500,623,10 2 0366 -- odieresis
+char246 "
+char247 564,516,10 0 0367 -- divide
+/o 500,551,112 0 0370 -- oslash
+char248 "
+`u 500,678,10 2 0371 -- ugrave
+char249 "
+'u 500,678,10 2 0372 -- uacute
+char250 "
+^u 500,674,10 2 0373 -- ucircumflex
+char251 "
+:u 500,623,10 2 0374 -- udieresis
+char252 "
+'y 500,678,218 3 0375 -- yacute
+char253 "
+Tp 500,683,217 3 0376 -- thorn
+char254 "
+:y 500,623,218 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/ZCMI b/font/devps/ZCMI
new file mode 100644
index 000000000..bd3de6450
--- /dev/null
+++ b/font/devps/ZCMI
@@ -0,0 +1,477 @@
+name ZCMI
+internalname ZapfChancery-MediumItalic
+slant 14
+spacewidth 220
+encoding text.enc
+ligatures fi fl 0
+kernpairs
+A ' -40
+A rq -40
+A U -10
+A T 10
+A Q 10
+A O 10
+A G -30
+A C 20
+D . -30
+D , -20
+D Y 10
+D A -10
+F . -40
+F i 10
+F , -30
+G . -20
+G , -10
+J . -20
+J , -10
+K u -20
+K o -20
+K e -20
+L y -10
+L ' -25
+L rq -25
+L W -10
+L V -20
+O . -20
+O , -10
+O Y 10
+O T 20
+O A -20
+P . -50
+P o -10
+P e -10
+P , -40
+P a -20
+P A -10
+Q U -10
+R Y 10
+R W 10
+R T 20
+T o -20
+T i 20
+T - -20
+T hy -20
+T char173 -20
+T h 20
+T e -20
+T a -20
+T O 30
+T A 10
+V . -100
+V o -20
+V e -20
+V , -90
+V a -20
+V O 10
+V G -20
+W . -50
+W o -20
+W i 10
+W h 10
+W e -20
+W , -40
+W a -20
+W O 10
+Y u -20
+Y . -50
+Y o -50
+Y i 10
+Y e -40
+Y , -40
+Y a -60
+b . -30
+b l -20
+b , -20
+b b -20
+c k -10
+, ' -70
+, rq -70
+d w -20
+d v -10
+d d -40
+e y 10
+f ' 30
+f rq 30
+f . -50
+f f -50
+f e -10
+f , -40
+f a -20
+g y 10
+g . -30
+g i 10
+g e 10
+g , -20
+g a 10
+k y 10
+k o -10
+k e -20
+m y 10
+m u 10
+n y 20
+o . -30
+o , -20
+p . -30
+p p -10
+p , -20
+. ' -80
+. rq -80
+lq ` 20
+lq oq 20
+lq A 10
+` ` -115
+` oq -115
+oq ` -115
+oq oq -115
+` A 10
+oq A 10
+' v 30
+' t 20
+' s -25
+' r 30
+' ' -115
+' rq 20
+' l 20
+r . -50
+r i 10
+r , -40
+s . -20
+s , -10
+v . -30
+v , -20
+w . -30
+w o 10
+w h 20
+w , -20
+charset
+ha 520,594,0,62,-82,62 2 0000 -- asciicircum
+ti 520,320,0,69,-73,69 0 0001 -- asciitilde
+vS 460,831,81,184,5,87 2 0002 -- Scaron
+vZ 620,831,19,99,8,87 2 0003 -- Zcaron
+vs 320,659,14,194,4,87 2 0004 -- scaron
+vz 440,659,14,124,24,87 2 0005 -- zcaron
+:Y 560,762,168,264,9,87 2 0006 -- Ydieresis
+tm 1000,594,0,96,-77,87 2 0007 -- trademark
+aq 160,610,0,105,-95,87 2 0010 -- quotesingle
+space 220 0 0040
+! 280,610,14,123,-69,87 2 0041 -- exclam
+" 220,610,0,163,-70,87 2 0042 -- quotedbl
+# 440,594,0,131,-33,87 2 0043 -- numbersign
+sh "
+$ 440,709,144,118,-10,87 2 0044 -- dollar
+Do "
+% 680,700,160,80,-82,80 2 0045 -- percent
+& 780,610,16,185,-76,87 2 0046 -- ampersand
+' 240,610,0,148,-118,87 2 0047 -- quoteright
+( 260,664,216,201,-46,87 2 0050 -- parenleft
+) 220,664,216,132,63,87 2 0051 -- parenright
+* 420,610,0,109,-89,87 2 0052 -- asterisk
++ 520,426,0,73,-67,73 0 0053 -- plus
+, 220,148,140,43,25,43 0 0054 -- comma
+- 280,248,0,104,-19,87 0 0055 -- hyphen
+hy "
+char173 "
+. 220,128,14,58,-52,58 0 0056 -- period
+/ 340,610,16,168,-24,87 2 0057 -- slash
+sl "
+0 440,610,16,148,-29,87 2 0060 -- zero
+1 440,610,0,38,9,38 2 0061 -- one
+2 440,610,16,95,33,87 2 0062 -- two
+3 440,610,16,95,49,87 2 0063 -- three
+4 440,610,35,109,-27,87 2 0064 -- four
+5 440,679,16,205,-10,87 2 0065 -- five
+6 440,610,16,166,-40,87 2 0066 -- six
+7 440,645,33,171,-107,87 2 0067 -- seven
+8 440,610,16,139,-15,87 2 0070 -- eight
+9 440,610,16,127,18,87 2 0071 -- nine
+: 260,438,14,86,-48,86 0 0072 -- colon
+; 240,438,140,109,21,87 0 0073 -- semicolon
+< 520,468,0,57,-89,57 0 0074 -- less
+= 520,340,0,73,-67,73 0 0075 -- equal
+> 520,468,0,57,-89,57 0 0076 -- greater
+? 380,610,14,125,-100,87 2 0077 -- question
+@ 700,610,16,103,-77,87 2 0100 -- at
+at "
+A 620,632,16,127,37,87 2 0101 -- A
+B 600,640,6,124,-35,87 2 0102 -- B
+C 520,610,16,161,-43,87 2 0103 -- C
+D 700,640,6,118,-36,87 2 0104 -- D
+E 620,618,12,139,-41,87 2 0105 -- E
+F 580,629,118,263,-70,87 2 0106 -- F
+G 620,610,242,139,-98,87 2 0107 -- G
+H 680,708,16,248,32,87 2 0110 -- H
+I 380,594,0,174,-49,87 2 0111 -- I
+J 400,594,147,188,64,87 2 0112 -- J
+K 660,610,153,234,-3,87 2 0113 -- K
+L 580,610,16,127,-3,87 2 0114 -- L
+M 840,722,16,230,-8,87 2 0115 -- M
+N 700,708,168,265,-35,87 2 0116 -- N
+O 600,610,16,110,-44,87 2 0117 -- O
+P 540,628,0,168,8,87 2 0120 -- P
+Q 600,610,177,225,-34,87 2 0121 -- Q
+R 600,640,168,255,-8,87 2 0122 -- R
+S 460,610,81,148,5,87 2 0123 -- S
+T 500,667,0,294,-13,87 2 0124 -- T
+U 740,617,16,102,-76,87 2 0125 -- U
+V 640,714,16,220,-74,87 2 0126 -- V
+W 880,723,16,216,-44,87 2 0127 -- W
+X 560,610,16,189,80,87 2 0130 -- X
+Y 560,647,168,264,9,87 2 0131 -- Y
+Z 620,624,19,99,8,87 2 0132 -- Z
+[ 240,655,207,215,63,87 2 0133 -- bracketleft
+lB "
+\ 480,610,16,94,-90,87 2 0134 -- backslash
+rs "
+] 320,655,207,121,77,87 2 0135 -- bracketright
+rB "
+a^ 340,649,0,153,-173,87 2 0136 -- circumflex
+^ "
+_ 500,0,125,50,50,50 0 0137 -- underscore
+` 240,610,0,149,-119,87 2 0140 -- quoteleft
+oq "
+a 420,438,15,115,-42,87 0 0141 -- a
+b 420,714,23,122,-32,87 2 0142 -- b
+c 340,438,14,116,-37,87 0 0143 -- c
+d 440,714,14,261,-52,87 2 0144 -- d
+e 340,438,14,113,-37,87 0 0145 -- e
+f 320,714,314,277,169,87 3 0146 -- f
+g 400,438,314,153,158,87 1 0147 -- g
+h 440,714,14,134,-5,87 2 0150 -- h
+i 240,635,14,151,-50,87 2 0151 -- i
+j 220,635,314,162,162,87 3 0152 -- j
+k 440,714,184,238,-37,87 2 0153 -- k
+l 240,714,14,290,-52,87 2 0154 -- l
+m 620,438,14,134,-36,87 0 0155 -- m
+n 460,438,14,134,-51,87 0 0156 -- n
+o 400,438,14,99,-37,87 0 0157 -- o
+p 440,432,314,94,73,87 1 0160 -- p
+q 400,510,300,140,-37,87 1 0161 -- q
+r 300,438,14,174,-51,87 0 0162 -- r
+s 320,438,14,133,4,87 0 0163 -- s
+t 320,539,14,156,-56,87 2 0164 -- t
+u 460,438,14,118,-52,87 0 0165 -- u
+v 440,488,14,143,-37,87 0 0166 -- v
+w 680,488,14,152,-37,87 0 0167 -- w
+x 420,438,195,219,-20,87 0 0170 -- x
+y 400,438,314,133,74,87 1 0171 -- y
+z 440,445,14,118,24,87 0 0172 -- z
+lC 240,655,207,193,-5,87 2 0173 -- braceleft
+{ "
+ba 520,714,16,0,-270 2 0174 -- bar
+| "
+rC 240,655,207,128,60,87 2 0175 -- braceright
+} "
+a~ 440,619,0,132,-193,87 2 0176 -- tilde
+~ "
+bq 180,146,121,61,29,61 0 0200 -- quotesinglbase
+Fo 340,414,0,66,-48,66 0 0201 -- guillemotleft
+char171 "
+Fc 380,414,0,45,-67,45 0 0202 -- guillemotright
+char187 "
+bu 600,445,0,0,-178 0 0203 -- bullet
+Fn 440,610,314,192,114,87 3 0204 -- florin
+f/ 60,610,16,310,231,87 2 0205 -- fraction
+%0 960,700,160,95,-62,87 2 0206 -- perthousand
+dg 460,610,37,158,-88,87 2 0207 -- dagger
+dd 480,610,59,103,-88,87 2 0210 -- daggerdbl
+en 500,239,0,115,-1,87 0 0211 -- endash
+em 1000,239,0,115,-1,87 0 0212 -- emdash
+fi 520,714,314,135,174,87 3 0214 -- fi
+fl 520,714,314,200,174,87 3 0215 -- fl
+.i 240,438,14,116,-50,87 0 0220 -- dotlessi
+ga 220,659,0,169,-143,87 2 0222 -- grave
+a" 400,659,0,145,-158,87 2 0223 -- hungarumlaut
+a. 220,610,0,158,-186,87 2 0224 -- dotaccent
+ab 440,631,0,111,-203,87 2 0225 -- breve
+ah 340,659,0,184,-204,87 2 0226 -- caron
+ao 300,659,0,166,-190,87 2 0227 -- ring
+ho 280,6,191,3,12,3 0 0230 -- ogonek
+lq 340,610,0,174,-119,87 2 0231 -- quotedblleft
+rq 360,610,0,143,-108,87 2 0232 -- quotedblright
+oe 560,438,14,118,-28,87 0 0233 -- oe
+/l 300,714,14,265,-71,87 2 0234 -- lslash
+Bq 280,146,121,51,64,51 0 0235 -- quotedblbase
+OE 820,610,16,139,-13,87 2 0236 -- OE
+/L 580,610,16,127,1,87 2 0237 -- Lslash
+r! 280,438,186,76,-22,76 0 0241 -- exclamdown
+char161 "
+ct 440,543,134,86,-72,86 2 0242 -- cent
+char162 "
+Po 440,610,52,116,66,87 2 0243 -- sterling
+char163 "
+Cs 440,509,0,84,0,84 0 0244 -- currency
+char164 "
+Ye 440,647,168,223,51,87 2 0245 -- yen
+char165 "
+bb 520,714,16,0,-270 2 0246 -- brokenbar
+char166 "
+sc 420,610,215,144,-3,87 2 0247 -- section
+char167 "
+ad 360,610,0,159,-193,87 2 0250 -- dieresis
+char168 "
+co 740,610,16,73,-87,73 2 0251 -- copyright
+char169 "
+Of 260,610,0,176,-61,87 2 0252 -- ordfeminine
+char170 "
+fo 240,414,0,68,-48,68 0 0253 -- guilsinglleft
+no 520,340,0,73,-67,73 0 0254 -- logicalnot
+char172 "
+\- 520,242,0,73,-67,73 0 0255 -- minus
+rg 740,610,16,73,-87,73 2 0256 -- registered
+char174 "
+a- 440,578,0,75,-172,75 2 0257 -- macron
+char175 "
+de 400,610,0,107,-121,87 2 0260 -- degree
+char176 "
+char177 520,436,0,73,-67,73 0 0261 -- plusminus
+S2 264,610,0,140,-22,87 2 0262 -- twosuperior
+char178 "
+S3 264,610,0,134,-9,87 2 0263 -- threesuperior
+char179 "
+aa 300,659,0,172,-215,87 2 0264 -- acute
+char180 "
+char181 460,438,314,113,43,87 1 0265 -- mu
+ps 500,594,199,188,-55,87 2 0266 -- paragraph
+char182 "
+char183 220,310,0,71,-89,71 0 0267 -- periodcentered
+ac 300,6,191,0,38 0 0270 -- cedilla
+char184 "
+S1 264,610,0,97,-33,87 2 0271 -- onesuperior
+char185 "
+Om 260,610,0,163,-78,87 2 0272 -- ordmasculine
+char186 "
+fc 260,414,0,56,-56,56 0 0273 -- guilsinglright
+14 660,610,16,92,-6,87 2 0274 -- onequarter
+char188 "
+12 660,610,16,92,-6,87 2 0275 -- onehalf
+char189 "
+34 660,610,16,96,11,87 2 0276 -- threequarters
+char190 "
+r? 400,438,186,37,-32,37 0 0277 -- questiondown
+char191 "
+`A 620,821,16,127,37,87 2 0300 -- Agrave
+char192 "
+'A 620,821,16,132,37,87 2 0301 -- Aacute
+char193 "
+^A 620,821,16,127,37,87 2 0302 -- Acircumflex
+char194 "
+~A 620,771,16,132,37,87 2 0303 -- Atilde
+char195 "
+:A 620,762,16,139,37,87 2 0304 -- Adieresis
+char196 "
+oA 620,831,16,127,37,87 2 0305 -- Aring
+char197 "
+AE 740,594,16,109,71,87 2 0306 -- AE
+char198 "
+,C 520,610,191,161,-43,87 2 0307 -- Ccedilla
+char199 "
+`E 620,821,12,139,-41,87 2 0310 -- Egrave
+char200 "
+'E 620,821,12,139,-41,87 2 0311 -- Eacute
+char201 "
+^E 620,821,12,139,-41,87 2 0312 -- Ecircumflex
+char202 "
+:E 620,762,12,139,-41,87 2 0313 -- Edieresis
+char203 "
+`I 380,821,0,174,-49,87 2 0314 -- Igrave
+char204 "
+'I 380,821,0,202,-49,87 2 0315 -- Iacute
+char205 "
+^I 380,821,0,174,-49,87 2 0316 -- Icircumflex
+char206 "
+:I 380,762,0,189,-49,87 2 0317 -- Idieresis
+char207 "
+-D 700,640,6,118,-36,87 2 0320 -- Eth
+char208 "
+~N 700,761,168,265,-35,87 2 0321 -- Ntilde
+char209 "
+`O 600,821,16,110,-44,87 2 0322 -- Ograve
+char210 "
+'O 600,821,16,110,-44,87 2 0323 -- Oacute
+char211 "
+^O 600,821,16,110,-44,87 2 0324 -- Ocircumflex
+char212 "
+~O 600,761,16,110,-44,87 2 0325 -- Otilde
+char213 "
+:O 600,762,16,110,-44,87 2 0326 -- Odieresis
+char214 "
+char215 520,410,0,57,-83,57 0 0327 -- multiply
+/O 660,672,78,141,-33,87 2 0330 -- Oslash
+char216 "
+`U 740,821,16,102,-76,87 2 0331 -- Ugrave
+char217 "
+'U 740,821,16,102,-76,87 2 0332 -- Uacute
+char218 "
+^U 740,821,16,102,-76,87 2 0333 -- Ucircumflex
+char219 "
+:U 740,762,16,102,-76,87 2 0334 -- Udieresis
+char220 "
+'Y 560,821,168,264,9,87 2 0335 -- Yacute
+char221 "
+TP 540,623,0,157,-2,87 2 0336 -- Thorn
+char222 "
+ss 420,714,314,172,177,87 3 0337 -- germandbls
+char223 "
+`a 420,659,15,115,-42,87 2 0340 -- agrave
+char224 "
+'a 420,659,15,122,-42,87 2 0341 -- aacute
+char225 "
+^a 420,649,15,115,-42,87 2 0342 -- acircumflex
+char226 "
+~a 420,619,15,152,-42,87 2 0343 -- atilde
+char227 "
+:a 420,610,15,115,-42,87 2 0344 -- adieresis
+char228 "
+oa 420,659,15,115,-42,87 2 0345 -- aring
+char229 "
+ae 540,468,14,134,-17,87 0 0346 -- ae
+char230 "
+,c 340,438,191,116,-12,87 0 0347 -- ccedilla
+char231 "
+`e 340,659,14,113,-37,87 2 0350 -- egrave
+char232 "
+'e 340,659,14,172,-37,87 2 0351 -- eacute
+char233 "
+^e 340,649,14,143,-37,87 2 0352 -- ecircumflex
+char234 "
+:e 340,610,14,159,-37,87 2 0353 -- edieresis
+char235 "
+`i 240,659,14,116,-50,87 2 0354 -- igrave
+char236 "
+'i 240,659,14,202,-50,87 2 0355 -- iacute
+char237 "
+^i 240,649,14,173,-50,87 2 0356 -- icircumflex
+char238 "
+:i 240,610,14,179,-50,87 2 0357 -- idieresis
+char239 "
+Sd 400,714,14,172,-37,87 2 0360 -- eth
+char240 "
+~n 460,619,14,134,-51,87 2 0361 -- ntilde
+char241 "
+`o 400,659,14,99,-37,87 2 0362 -- ograve
+char242 "
+'o 400,659,14,132,-37,87 2 0363 -- oacute
+char243 "
+^o 400,649,14,103,-37,87 2 0364 -- ocircumflex
+char244 "
+~o 400,619,14,152,-37,87 2 0365 -- otilde
+char245 "
+:o 400,610,14,129,-37,87 2 0366 -- odieresis
+char246 "
+char247 520,440,14,73,-67,73 0 0367 -- divide
+/o 440,488,64,150,4,87 0 0370 -- oslash
+char248 "
+`u 460,659,14,118,-52,87 2 0371 -- ugrave
+char249 "
+'u 460,659,14,118,-52,87 2 0372 -- uacute
+char250 "
+^u 460,649,14,118,-52,87 2 0373 -- ucircumflex
+char251 "
+:u 460,610,14,118,-52,87 2 0374 -- udieresis
+char252 "
+'y 400,659,314,133,74,87 3 0375 -- yacute
+char253 "
+Tp 440,714,314,115,88,87 3 0376 -- thorn
+char254 "
+:y 400,610,314,133,74,87 3 0377 -- ydieresis
+char255 "
diff --git a/font/devps/ZD b/font/devps/ZD
new file mode 100644
index 000000000..3066c39b7
--- /dev/null
+++ b/font/devps/ZD
@@ -0,0 +1,193 @@
+name ZD
+internalname ZapfDingbats
+special
+spacewidth 278
+charset
+space 278 0 0040
+--- 974,621 3 0041 -- a1
+--- 961,611 3 0042 -- a2
+--- 974,621 3 0043 -- a202
+--- 980,692 3 0044 -- a3
+--- 719,566 3 0045 -- a4
+--- 789,705,14 3 0046 -- a5
+--- 790,705,14 3 0047 -- a119
+--- 791,705,13 3 0050 -- a118
+--- 690,553 3 0051 -- a117
+--- 960,568 3 0052 -- a11
+rh 939,559 3 0053 -- a12
+--- 549,705,11 3 0054 -- a13
+--- 855,632 3 0055 -- a14
+--- 911,642 3 0056 -- a15
+--- 933,550 3 0057 -- a16
+--- 911,642 3 0060 -- a105
+--- 945,553 3 0061 -- a17
+--- 974,587 3 0062 -- a18
+OK 755,705,13 3 0063 -- a19
+--- 846,705,14 3 0064 -- a20
+--- 762,692 3 0065 -- a21
+--- 761,692 3 0066 -- a22
+--- 571,661,68 3 0067 -- a23
+--- 677,705,13 3 0070 -- a24
+--- 763,692 3 0071 -- a25
+--- 760,692 3 0072 -- a26
+--- 759,692 3 0073 -- a27
+--- 754,692 3 0074 -- a28
+--- 494,692 3 0075 -- a6
+--- 552,692 3 0076 -- a7
+--- 537,692 3 0077 -- a8
+--- 577,596 3 0100 -- a9
+--- 692,705,14 3 0101 -- a10
+--- 786,705,14 3 0102 -- a29
+--- 788,705,14 3 0103 -- a30
+--- 788,705,14 3 0104 -- a31
+--- 790,705,14 3 0105 -- a32
+--- 793,705,13 3 0106 -- a33
+--- 794,705,13 3 0107 -- a34
+--- 816,705,14 3 0110 -- a35
+--- 823,705,14 3 0111 -- a36
+--- 789,705,14 3 0112 -- a37
+--- 841,705,14 3 0113 -- a38
+--- 823,705,14 3 0114 -- a39
+--- 833,705,14 3 0115 -- a40
+--- 816,705,13 3 0116 -- a41
+--- 831,705,14 3 0117 -- a42
+--- 923,705,14 3 0120 -- a43
+--- 744,692 3 0121 -- a44
+--- 723,692 3 0122 -- a45
+--- 749,692 3 0123 -- a46
+--- 790,705,14 3 0124 -- a47
+--- 792,705,14 3 0125 -- a48
+--- 695,706,14 3 0126 -- a49
+--- 776,699,6 3 0127 -- a50
+--- 768,699,7 3 0130 -- a51
+--- 792,705,14 3 0131 -- a52
+--- 759,692 3 0132 -- a53
+--- 707,704,13 3 0133 -- a54
+--- 708,705,14 3 0134 -- a55
+--- 682,705,14 3 0135 -- a56
+--- 701,705,14 3 0136 -- a57
+--- 826,705,14 3 0137 -- a58
+--- 815,705,14 3 0140 -- a59
+--- 789,705,14 3 0141 -- a60
+--- 789,705,14 3 0142 -- a61
+--- 707,705,14 3 0143 -- a62
+--- 687,692 3 0144 -- a63
+--- 696,691 3 0145 -- a64
+--- 689,692 3 0146 -- a65
+--- 786,705,14 3 0147 -- a66
+--- 787,705,14 3 0150 -- a67
+--- 713,705,14 3 0151 -- a68
+--- 791,705,14 3 0152 -- a69
+--- 785,705,14 3 0153 -- a70
+--- 791,705,14 3 0154 -- a71
+--- 873,705,14 3 0155 -- a72
+--- 761,692 3 0156 -- a73
+--- 762,692 3 0157 -- a74
+--- 762,692 3 0160 -- a203
+--- 759,692 3 0161 -- a75
+--- 759,692 3 0162 -- a204
+--- 892,705 3 0163 -- a76
+--- 892,692,14 3 0164 -- a77
+--- 788,705,14 3 0165 -- a78
+--- 784,705,14 3 0166 -- a79
+--- 438,705,14 3 0167 -- a81
+--- 138,692 3 0170 -- a82
+--- 277,692 3 0171 -- a83
+--- 415,692 3 0172 -- a84
+--- 392,705 3 0173 -- a97
+--- 392,705 3 0174 -- a98
+--- 668,705 3 0175 -- a99
+--- 668,705 3 0176 -- a100
+--- 732,806,143 3 0241 -- a101
+--- 544,706,14 3 0242 -- a102
+--- 544,705,14 3 0243 -- a103
+--- 910,651 3 0244 -- a104
+--- 667,705,14 3 0245 -- a106
+--- 760,705,14 3 0246 -- a107
+--- 760,569 3 0247 -- a108
+--- 776,705 3 0250 -- a112
+--- 595,705,14 3 0251 -- a111
+--- 694,705,14 3 0252 -- a110
+--- 626,705 3 0253 -- a109
+--- 788,705,14 3 0254 -- a120
+--- 788,705,14 3 0255 -- a121
+--- 788,705,14 3 0256 -- a122
+--- 788,705,14 3 0257 -- a123
+--- 788,705,14 3 0260 -- a124
+--- 788,705,14 3 0261 -- a125
+--- 788,705,14 3 0262 -- a126
+--- 788,705,14 3 0263 -- a127
+--- 788,705,14 3 0264 -- a128
+--- 788,705,14 3 0265 -- a129
+--- 788,705,14 3 0266 -- a130
+--- 788,705,14 3 0267 -- a131
+--- 788,705,14 3 0270 -- a132
+--- 788,705,14 3 0271 -- a133
+--- 788,705,14 3 0272 -- a134
+--- 788,705,14 3 0273 -- a135
+--- 788,705,14 3 0274 -- a136
+--- 788,705,14 3 0275 -- a137
+--- 788,705,14 3 0276 -- a138
+--- 788,705,14 3 0277 -- a139
+--- 788,705,14 3 0300 -- a140
+--- 788,705,14 3 0301 -- a141
+--- 788,705,14 3 0302 -- a142
+--- 788,705,14 3 0303 -- a143
+--- 788,705,14 3 0304 -- a144
+--- 788,705,14 3 0305 -- a145
+--- 788,705,14 3 0306 -- a146
+--- 788,705,14 3 0307 -- a147
+--- 788,705,14 3 0310 -- a148
+--- 788,705,14 3 0311 -- a149
+--- 788,705,14 3 0312 -- a150
+--- 788,705,14 3 0313 -- a151
+--- 788,705,14 3 0314 -- a152
+--- 788,705,14 3 0315 -- a153
+--- 788,705,14 3 0316 -- a154
+--- 788,705,14 3 0317 -- a155
+--- 788,705,14 3 0320 -- a156
+--- 788,705,14 3 0321 -- a157
+--- 788,705,14 3 0322 -- a158
+--- 788,705,14 3 0323 -- a159
+--- 894,634 3 0324 -- a160
+--- 838,540 3 0325 -- a161
+--- 1016,540 3 0326 -- a163
+--- 458,820,127 3 0327 -- a164
+--- 748,597 3 0330 -- a196
+--- 924,552 3 0331 -- a165
+--- 748,597 3 0332 -- a192
+--- 918,526 3 0333 -- a166
+--- 927,660 3 0334 -- a167
+--- 928,562 3 0335 -- a168
+--- 928,563 3 0336 -- a169
+--- 834,537 3 0337 -- a170
+--- 873,599 3 0340 -- a171
+--- 828,588 3 0341 -- a172
+--- 924,594 3 0342 -- a173
+--- 924,594 3 0343 -- a162
+--- 917,692 3 0344 -- a174
+--- 930,608 3 0345 -- a175
+--- 931,608 3 0346 -- a176
+--- 463,791,99 3 0347 -- a177
+--- 883,623 3 0350 -- a178
+--- 836,648 3 0351 -- a179
+--- 836,648 3 0352 -- a193
+--- 867,591 3 0353 -- a180
+--- 867,591 3 0354 -- a199
+--- 696,648 3 0355 -- a181
+--- 696,648 3 0356 -- a200
+--- 874,619 3 0357 -- a182
+--- 874,615 3 0361 -- a201
+--- 760,692 3 0362 -- a183
+--- 946,533 3 0363 -- a184
+--- 771,655 3 0364 -- a197
+--- 865,481 3 0365 -- a185
+--- 771,655 3 0366 -- a194
+--- 888,712,19 3 0367 -- a198
+--- 967,568 3 0370 -- a186
+--- 888,712,19 3 0371 -- a195
+--- 831,579 3 0372 -- a187
+--- 873,578 3 0373 -- a188
+--- 927,542 3 0374 -- a189
+--- 970,616 3 0375 -- a190
+--- 918,593 3 0376 -- a191
diff --git a/font/devps/ZDR b/font/devps/ZDR
new file mode 100644
index 000000000..ab5b54f7c
--- /dev/null
+++ b/font/devps/ZDR
@@ -0,0 +1,193 @@
+name ZDR
+internalname ZapfDingbats-Reverse
+special
+spacewidth 278
+charset
+space 278 0 0040
+--- 974,621 3 0041 -- a1
+--- 961,611 3 0042 -- a2
+--- 974,621 3 0043 -- a202
+--- 980,692 3 0044 -- a3
+--- 719,566 3 0045 -- a4
+--- 789,705,14 3 0046 -- a5
+--- 790,705,14 3 0047 -- a119
+--- 791,705,13 3 0050 -- a118
+--- 690,553 3 0051 -- a117
+--- 960,568 3 0052 -- a11
+lh 939,559 3 0053 -- a12
+--- 549,705,11 3 0054 -- a13
+--- 855,632 3 0055 -- a14
+--- 911,642 3 0056 -- a15
+--- 933,550 3 0057 -- a16
+--- 911,642 3 0060 -- a105
+--- 945,553 3 0061 -- a17
+--- 974,587 3 0062 -- a18
+--- 755,705,13 3 0063 -- a19
+--- 846,705,14 3 0064 -- a20
+--- 762,692 3 0065 -- a21
+--- 761,692 3 0066 -- a22
+--- 571,661,68 3 0067 -- a23
+--- 677,705,13 3 0070 -- a24
+--- 763,692 3 0071 -- a25
+--- 760,692 3 0072 -- a26
+--- 759,692 3 0073 -- a27
+--- 754,692 3 0074 -- a28
+--- 494,692 3 0075 -- a6
+--- 552,692 3 0076 -- a7
+--- 537,692 3 0077 -- a8
+--- 577,596 3 0100 -- a9
+--- 692,705,14 3 0101 -- a10
+--- 786,705,14 3 0102 -- a29
+--- 788,705,14 3 0103 -- a30
+--- 788,705,14 3 0104 -- a31
+--- 790,705,14 3 0105 -- a32
+--- 793,705,13 3 0106 -- a33
+--- 794,705,13 3 0107 -- a34
+--- 816,705,14 3 0110 -- a35
+--- 823,705,14 3 0111 -- a36
+--- 789,705,14 3 0112 -- a37
+--- 841,705,14 3 0113 -- a38
+--- 823,705,14 3 0114 -- a39
+--- 833,705,14 3 0115 -- a40
+--- 816,705,13 3 0116 -- a41
+--- 831,705,14 3 0117 -- a42
+--- 923,705,14 3 0120 -- a43
+--- 744,692 3 0121 -- a44
+--- 723,692 3 0122 -- a45
+--- 749,692 3 0123 -- a46
+--- 790,705,14 3 0124 -- a47
+--- 792,705,14 3 0125 -- a48
+--- 695,706,14 3 0126 -- a49
+--- 776,699,6 3 0127 -- a50
+--- 768,699,7 3 0130 -- a51
+--- 792,705,14 3 0131 -- a52
+--- 759,692 3 0132 -- a53
+--- 707,704,13 3 0133 -- a54
+--- 708,705,14 3 0134 -- a55
+--- 682,705,14 3 0135 -- a56
+--- 701,705,14 3 0136 -- a57
+--- 826,705,14 3 0137 -- a58
+--- 815,705,14 3 0140 -- a59
+--- 789,705,14 3 0141 -- a60
+--- 789,705,14 3 0142 -- a61
+--- 707,705,14 3 0143 -- a62
+--- 687,692 3 0144 -- a63
+--- 696,691 3 0145 -- a64
+--- 689,692 3 0146 -- a65
+--- 786,705,14 3 0147 -- a66
+--- 787,705,14 3 0150 -- a67
+--- 713,705,14 3 0151 -- a68
+--- 791,705,14 3 0152 -- a69
+--- 785,705,14 3 0153 -- a70
+--- 791,705,14 3 0154 -- a71
+--- 873,705,14 3 0155 -- a72
+--- 761,692 3 0156 -- a73
+--- 762,692 3 0157 -- a74
+--- 762,692 3 0160 -- a203
+--- 759,692 3 0161 -- a75
+--- 759,692 3 0162 -- a204
+--- 892,705 3 0163 -- a76
+--- 892,692,14 3 0164 -- a77
+--- 788,705,14 3 0165 -- a78
+--- 784,705,14 3 0166 -- a79
+--- 438,705,14 3 0167 -- a81
+--- 138,692 3 0170 -- a82
+--- 277,692 3 0171 -- a83
+--- 415,692 3 0172 -- a84
+--- 392,705 3 0173 -- a97
+--- 392,705 3 0174 -- a98
+--- 668,705 3 0175 -- a99
+--- 668,705 3 0176 -- a100
+--- 732,806,143 3 0241 -- a101
+--- 544,706,14 3 0242 -- a102
+--- 544,705,14 3 0243 -- a103
+--- 910,651 3 0244 -- a104
+--- 667,705,14 3 0245 -- a106
+--- 760,705,14 3 0246 -- a107
+--- 760,569 3 0247 -- a108
+--- 776,705 3 0250 -- a112
+--- 595,705,14 3 0251 -- a111
+--- 694,705,14 3 0252 -- a110
+--- 626,705 3 0253 -- a109
+--- 788,705,14 3 0254 -- a120
+--- 788,705,14 3 0255 -- a121
+--- 788,705,14 3 0256 -- a122
+--- 788,705,14 3 0257 -- a123
+--- 788,705,14 3 0260 -- a124
+--- 788,705,14 3 0261 -- a125
+--- 788,705,14 3 0262 -- a126
+--- 788,705,14 3 0263 -- a127
+--- 788,705,14 3 0264 -- a128
+--- 788,705,14 3 0265 -- a129
+--- 788,705,14 3 0266 -- a130
+--- 788,705,14 3 0267 -- a131
+--- 788,705,14 3 0270 -- a132
+--- 788,705,14 3 0271 -- a133
+--- 788,705,14 3 0272 -- a134
+--- 788,705,14 3 0273 -- a135
+--- 788,705,14 3 0274 -- a136
+--- 788,705,14 3 0275 -- a137
+--- 788,705,14 3 0276 -- a138
+--- 788,705,14 3 0277 -- a139
+--- 788,705,14 3 0300 -- a140
+--- 788,705,14 3 0301 -- a141
+--- 788,705,14 3 0302 -- a142
+--- 788,705,14 3 0303 -- a143
+--- 788,705,14 3 0304 -- a144
+--- 788,705,14 3 0305 -- a145
+--- 788,705,14 3 0306 -- a146
+--- 788,705,14 3 0307 -- a147
+--- 788,705,14 3 0310 -- a148
+--- 788,705,14 3 0311 -- a149
+--- 788,705,14 3 0312 -- a150
+--- 788,705,14 3 0313 -- a151
+--- 788,705,14 3 0314 -- a152
+--- 788,705,14 3 0315 -- a153
+--- 788,705,14 3 0316 -- a154
+--- 788,705,14 3 0317 -- a155
+--- 788,705,14 3 0320 -- a156
+--- 788,705,14 3 0321 -- a157
+--- 788,705,14 3 0322 -- a158
+--- 788,705,14 3 0323 -- a159
+--- 894,634 3 0324 -- a160
+--- 838,540 3 0325 -- a161
+--- 1016,540 3 0326 -- a163
+--- 458,820,127 3 0327 -- a164
+--- 748,597 3 0330 -- a196
+--- 924,552 3 0331 -- a165
+--- 748,597 3 0332 -- a192
+--- 918,526 3 0333 -- a166
+--- 927,660 3 0334 -- a167
+--- 928,562 3 0335 -- a168
+--- 928,563 3 0336 -- a169
+--- 834,537 3 0337 -- a170
+--- 873,599 3 0340 -- a171
+--- 828,588 3 0341 -- a172
+--- 924,594 3 0342 -- a173
+--- 924,594 3 0343 -- a162
+--- 917,692 3 0344 -- a174
+--- 930,608 3 0345 -- a175
+--- 931,608 3 0346 -- a176
+--- 463,791,99 3 0347 -- a177
+--- 883,623 3 0350 -- a178
+--- 836,648 3 0351 -- a179
+--- 836,648 3 0352 -- a193
+--- 867,591 3 0353 -- a180
+--- 867,591 3 0354 -- a199
+--- 696,648 3 0355 -- a181
+--- 696,648 3 0356 -- a200
+--- 874,619 3 0357 -- a182
+--- 874,615 3 0361 -- a201
+--- 760,692 3 0362 -- a183
+--- 946,533 3 0363 -- a184
+--- 771,655 3 0364 -- a197
+--- 865,481 3 0365 -- a185
+--- 771,655 3 0366 -- a194
+--- 888,712,19 3 0367 -- a198
+--- 967,568 3 0370 -- a186
+--- 888,712,19 3 0371 -- a195
+--- 831,579 3 0372 -- a187
+--- 873,578 3 0373 -- a188
+--- 927,542 3 0374 -- a189
+--- 970,616 3 0375 -- a190
+--- 918,593 3 0376 -- a191
diff --git a/devps/download b/font/devps/download
index b98885cdb..b98885cdb 100644
--- a/devps/download
+++ b/font/devps/download
diff --git a/devps/generate/Makefile b/font/devps/generate/Makefile
index f62c29296..f62c29296 100644
--- a/devps/generate/Makefile
+++ b/font/devps/generate/Makefile
diff --git a/devps/generate/afmname b/font/devps/generate/afmname
index 8503d46d8..8503d46d8 100755
--- a/devps/generate/afmname
+++ b/font/devps/generate/afmname
diff --git a/devps/generate/dingbatsmap b/font/devps/generate/dingbatsmap
index 3a97fa99b..3a97fa99b 100644..100755
--- a/devps/generate/dingbatsmap
+++ b/font/devps/generate/dingbatsmap
diff --git a/devps/generate/dingbatsrmap b/font/devps/generate/dingbatsrmap
index ccc14cb2d..ccc14cb2d 100644..100755
--- a/devps/generate/dingbatsrmap
+++ b/font/devps/generate/dingbatsrmap
diff --git a/devps/generate/lgreekmap b/font/devps/generate/lgreekmap
index 0b0c19780..0b0c19780 100644
--- a/devps/generate/lgreekmap
+++ b/font/devps/generate/lgreekmap
diff --git a/devps/generate/symbol.sed b/font/devps/generate/symbol.sed
index b4b02aba6..b4b02aba6 100644
--- a/devps/generate/symbol.sed
+++ b/font/devps/generate/symbol.sed
diff --git a/devps/generate/symbolchars b/font/devps/generate/symbolchars
index 41ec3e466..41ec3e466 100644
--- a/devps/generate/symbolchars
+++ b/font/devps/generate/symbolchars
diff --git a/devps/generate/symbolsl.afm b/font/devps/generate/symbolsl.afm
index 90939ada9..90939ada9 100644
--- a/devps/generate/symbolsl.afm
+++ b/font/devps/generate/symbolsl.afm
diff --git a/devps/generate/textmap b/font/devps/generate/textmap
index bcf3ad7b8..bcf3ad7b8 100644
--- a/devps/generate/textmap
+++ b/font/devps/generate/textmap
diff --git a/devps/prologue.ps b/font/devps/prologue.ps
index b7bad1c5b..b7bad1c5b 100644
--- a/devps/prologue.ps
+++ b/font/devps/prologue.ps
diff --git a/devps/psstrip.sed b/font/devps/psstrip.sed
index 3e61775af..3e61775af 100644
--- a/devps/psstrip.sed
+++ b/font/devps/psstrip.sed
diff --git a/devps/symbol.afm b/font/devps/symbol.afm
index eccf6c2aa..eccf6c2aa 100644
--- a/devps/symbol.afm
+++ b/font/devps/symbol.afm
diff --git a/devps/symbolmap b/font/devps/symbolmap
index 82827c89f..82827c89f 100644
--- a/devps/symbolmap
+++ b/font/devps/symbolmap
diff --git a/devps/symbolsl.ps b/font/devps/symbolsl.ps
index d384203e2..d384203e2 100644
--- a/devps/symbolsl.ps
+++ b/font/devps/symbolsl.ps
diff --git a/devps/text.enc b/font/devps/text.enc
index dde5bb7c0..dde5bb7c0 100644
--- a/devps/text.enc
+++ b/font/devps/text.enc
diff --git a/devps/zapfdr.afm b/font/devps/zapfdr.afm
index ce216de44..ce216de44 100644
--- a/devps/zapfdr.afm
+++ b/font/devps/zapfdr.afm
diff --git a/devps/zapfdr.ps b/font/devps/zapfdr.ps
index 8283be26d..8283be26d 100644
--- a/devps/zapfdr.ps
+++ b/font/devps/zapfdr.ps
diff --git a/font/devutf8/DESC.proto b/font/devutf8/DESC.proto
new file mode 100644
index 000000000..88399ab16
--- /dev/null
+++ b/font/devutf8/DESC.proto
@@ -0,0 +1,8 @@
+res 240
+hor 24
+vert 40
+unitwidth 10
+sizes 10 0
+fonts 4 R I B BI
+tcommand
+postpro grotty
diff --git a/font/devutf8/Makefile.sub b/font/devutf8/Makefile.sub
new file mode 100644
index 000000000..f6ce659c0
--- /dev/null
+++ b/font/devutf8/Makefile.sub
@@ -0,0 +1,32 @@
+DEV=utf8
+FONTS=R I B BI
+DEVFILES=$(FONTS) DESC
+CLEANADD=$(FONTS) DESC
+
+RES=240
+CPI=10
+LPI=6
+
+$(FONTS): R.proto
+ @echo Making $@
+ @-rm -f $@
+ @(charwidth=`expr $(RES) / $(CPI)` ; \
+ sed -e "s/^name [A-Z]*$$/name $@/" \
+ -e "s/^\\([^ ]*\\) [0-9]+ /\\1 $$charwidth /" \
+ -e "s/^spacewidth [0-9]+$$/spacewidth $$charwidth/" \
+ -e "s/^internalname .*$$/internalname $@/" \
+ -e "/^internalname/s/BI/3/" \
+ -e "/^internalname/s/B/2/" \
+ -e "/^internalname/s/I/1/" \
+ -e "/^internalname .*[^ 0-9]/d" \
+ $(srcdir)/R.proto >$@)
+
+DESC: DESC.proto
+ @echo Making $@
+ @-rm -f $@
+ @sed -e "s/^res .*$$/res $(RES)/" \
+ -e "s/^hor .*$$/hor `expr $(RES) / $(CPI)`/" \
+ -e "s/^vert .*$$/vert `expr $(RES) / $(LPI)`/" \
+ -e "s/^fonts .*$$/fonts `set $(FONTS); echo $$#` $(FONTS)/" \
+ $(srcdir)/DESC.proto >$@
+
diff --git a/font/devutf8/NOTES b/font/devutf8/NOTES
new file mode 100644
index 000000000..064b7bafb
--- /dev/null
+++ b/font/devutf8/NOTES
@@ -0,0 +1,91 @@
+The following from the original troff manual (by Ossanna and Kernighan) is
+unmapped:
+
+ \(bs solid ball
+
+Character 0x002D has not been given a name because its Unicode name
+"HYPHEN-MINUS" is so ambiguous that it's unusable for serious typographic use.
+
+The following are mentioned in the original troff manual but not in
+groff_char.7:
+
+ \(sr square root
+ \(rn overline
+ \(is integral sign
+
+The following, mentioned in the original troff manual, are only approximate:
+
+ \(lk middle part of big left curly brace
+ \(rk middle part of big right curly brace
+
+\(bv has been mapped to 0x2502, not 0x2759, because it appears to mean
+"bar vertical", not "bold vertical".
+
+\(wp has been mapped to 0x2118, because according to unicode.org's
+NamesList-3.0.0.txt, U+2118 "SCRIPT CAPITAL P" is really a Weierstrass p,
+neither SCRIPT not CAPITAL.
+
+The following lines could be added, to define names which are known to
+"devps" but are not documented and not known to "devdvi".
+space 24 0 0x0020
+vS 24 0 0x0160
+vs 24 0 0x0161
+:Y 24 0 0x0178
+vZ 24 0 0x017D
+vz 24 0 0x017E
+3d 24 0 0x2234
+nb 24 0 0x2284
+product 24 0 0x220F
+sum 24 0 0x2211
+SP 24 0 0x2660
+CL 24 0 0x2663
+HE 24 0 0x2665
+DI 24 0 0x2666
+
+"devps" maps \(a~ and ~ to asciitilde, which is equivalent to 0x02DC, but
+this glyph is just too small. We map them to 0x007E instead.
+
+"devps" maps \(a^ and ^ to circumflex, which is equivalent to 0x02C6, but
+this glyph is just too small. We map them to 0x005E instead.
+
+"devps" maps *m to mu, which is equivalent to either 0x00B5 or 0x03BC. We
+map it to 0x03BC.
+
+"devps" maps *U to Upsilon1, which is equivalent to 0x03D2. We map it to
+0x03A5 instead.
+
+"devps" maps *W to Omega, which is equivalent to either 0x2126 or 0x03A9. We
+map it to 0x03A9.
+
+"devps" maps *D to Delta, which is equivalent to either 0x2206 or 0x0394. We
+map it to 0x0394.
+
+"devps" maps CR to carriagereturn, which is equivalent to 0x21B5. We map it
+to 0x240D instead.
+
+"devps" maps md to dotmath, which is equivalent to 0x22C5. We map it to 0x00B7
+instead.
+
+The line
+char173 24 0 0x00AD
+has been removed, because tmac.tty contains the line
+".if c\[char173] .shc \[char173]"
+(i.e. if char173 is defined, then tell the troff engine that it shall use
+char173 as soft hyphen - otherwise it will use hy = HYPHEN), and char173 in
+Markus Kuhn's UCS-fonts looks more like a minus sign than like a hyphen.
+Once Markus Kuhn's fonts are fixed, this line should be added again, because
+ISO-8859-x describes the soft hyphen character as "a graphic character that
+is imaged by a graphic symbol identical with, or similar to, that representing
+HYPHEN, for use when a line break has been established within a word" - which
+is exactly groff's use of 'shc'.
+
+Using unnamed characters:
+Assume you want to use a Unicode character not provided in the list, say
+U+20AC. You need to do two things:
+- Add a line "--- 24 0 0x20AC" (the second column is
+ computed as 24 * wcwidth(0x20AC)) to the file R.proto, or, when groff
+ is already installed, to the four fonts files in
+ $(prefix)/share/groff/font/devutf8/.
+- In your source file, use the notation \N'8364' where 8364 is the decimal
+ representation of 0x20AC.
+
diff --git a/font/devutf8/R.proto b/font/devutf8/R.proto
new file mode 100644
index 000000000..faff6d850
--- /dev/null
+++ b/font/devutf8/R.proto
@@ -0,0 +1,468 @@
+name R
+internalname 0
+spacewidth 24
+charset
+! 24 0 0x0021
+" 24 0 0x0022
+# 24 0 0x0023
+sh "
+$ 24 0 0x0024
+Do "
+% 24 0 0x0025
+& 24 0 0x0026
+aq 24 0 0x0027
+( 24 0 0x0028
+) 24 0 0x0029
+* 24 0 0x002A
++ 24 0 0x002B
+pl "
+, 24 0 0x002C
+--- 24 0 0x002D
+. 24 0 0x002E
+/ 24 0 0x002F
+sl "
+0 24 0 0x0030
+1 24 0 0x0031
+2 24 0 0x0032
+3 24 0 0x0033
+4 24 0 0x0034
+5 24 0 0x0035
+6 24 0 0x0036
+7 24 0 0x0037
+8 24 0 0x0038
+9 24 0 0x0039
+: 24 0 0x003A
+; 24 0 0x003B
+< 24 0 0x003C
+= 24 0 0x003D
+eq "
+> 24 0 0x003E
+? 24 0 0x003F
+@ 24 0 0x0040
+at "
+A 24 0 0x0041
+B 24 0 0x0042
+C 24 0 0x0043
+D 24 0 0x0044
+E 24 0 0x0045
+F 24 0 0x0046
+G 24 0 0x0047
+H 24 0 0x0048
+I 24 0 0x0049
+J 24 0 0x004A
+K 24 0 0x004B
+L 24 0 0x004C
+M 24 0 0x004D
+N 24 0 0x004E
+O 24 0 0x004F
+P 24 0 0x0050
+Q 24 0 0x0051
+R 24 0 0x0052
+S 24 0 0x0053
+T 24 0 0x0054
+U 24 0 0x0055
+V 24 0 0x0056
+W 24 0 0x0057
+X 24 0 0x0058
+Y 24 0 0x0059
+Z 24 0 0x005A
+[ 24 0 0x005B
+lB "
+\ 24 0 0x005C
+rs "
+] 24 0 0x005D
+rB "
+a^ 24 0 0x005E
+^ "
+ha "
+_ 24 0 0x005F
+ru "
+ul "
+\` 24 0 0x0060
+ga "
+a 24 0 0x0061
+b 24 0 0x0062
+c 24 0 0x0063
+d 24 0 0x0064
+e 24 0 0x0065
+f 24 0 0x0066
+g 24 0 0x0067
+h 24 0 0x0068
+i 24 0 0x0069
+j 24 0 0x006A
+k 24 0 0x006B
+l 24 0 0x006C
+m 24 0 0x006D
+n 24 0 0x006E
+o 24 0 0x006F
+p 24 0 0x0070
+q 24 0 0x0071
+r 24 0 0x0072
+s 24 0 0x0073
+t 24 0 0x0074
+u 24 0 0x0075
+v 24 0 0x0076
+w 24 0 0x0077
+x 24 0 0x0078
+y 24 0 0x0079
+z 24 0 0x007A
+lC 24 0 0x007B
+{ "
+ba 24 0 0x007C
+or "
+| "
+rC 24 0 0x007D
+} "
+a~ 24 0 0x007E
+~ "
+ti "
+r! 24 0 0x00A1
+char161 "
+ct 24 0 0x00A2
+char162 "
+Po 24 0 0x00A3
+char163 "
+Cs 24 0 0x00A4
+char164 "
+Ye 24 0 0x00A5
+char165 "
+bb 24 0 0x00A6
+char166 "
+sc 24 0 0x00A7
+char167 "
+ad 24 0 0x00A8
+char168 "
+co 24 0 0x00A9
+char169 "
+Of 24 0 0x00AA
+char170 "
+Fo 24 0 0x00AB
+char171 "
+no 24 0 0x00AC
+char172 "
+rg 24 0 0x00AE
+char174 "
+a- 24 0 0x00AF
+char175 "
+de 24 0 0x00B0
+char176 "
++- 24 0 0x00B1
+char177 "
+S2 24 0 0x00B2
+char178 "
+S3 24 0 0x00B3
+char179 "
+aa 24 0 0x00B4
+char180 "
+char181 24 0 0x00B5
+ps 24 0 0x00B6
+char182 "
+md 24 0 0x00B7
+char183 "
+ac 24 0 0x00B8
+char184 "
+S1 24 0 0x00B9
+char185 "
+Om 24 0 0x00BA
+char186 "
+Fc 24 0 0x00BB
+char187 "
+14 24 0 0x00BC
+char188 "
+12 24 0 0x00BD
+char189 "
+34 24 0 0x00BE
+char190 "
+r? 24 0 0x00BF
+char191 "
+`A 24 0 0x00C0
+char192 "
+'A 24 0 0x00C1
+char193 "
+^A 24 0 0x00C2
+char194 "
+~A 24 0 0x00C3
+char195 "
+:A 24 0 0x00C4
+char196 "
+oA 24 0 0x00C5
+char197 "
+AE 24 0 0x00C6
+char198 "
+,C 24 0 0x00C7
+char199 "
+`E 24 0 0x00C8
+char200 "
+'E 24 0 0x00C9
+char201 "
+^E 24 0 0x00CA
+char202 "
+:E 24 0 0x00CB
+char203 "
+`I 24 0 0x00CC
+char204 "
+'I 24 0 0x00CD
+char205 "
+^I 24 0 0x00CE
+char206 "
+:I 24 0 0x00CF
+char207 "
+-D 24 0 0x00D0
+char208 "
+~N 24 0 0x00D1
+char209 "
+`O 24 0 0x00D2
+char210 "
+'O 24 0 0x00D3
+char211 "
+^O 24 0 0x00D4
+char212 "
+~O 24 0 0x00D5
+char213 "
+:O 24 0 0x00D6
+char214 "
+mu 24 0 0x00D7
+char215 "
+/O 24 0 0x00D8
+char216 "
+`U 24 0 0x00D9
+char217 "
+'U 24 0 0x00DA
+char218 "
+^U 24 0 0x00DB
+char219 "
+:U 24 0 0x00DC
+char220 "
+'Y 24 0 0x00DD
+char221 "
+TP 24 0 0x00DE
+char222 "
+ss 24 0 0x00DF
+char223 "
+`a 24 0 0x00E0
+char224 "
+'a 24 0 0x00E1
+char225 "
+^a 24 0 0x00E2
+char226 "
+~a 24 0 0x00E3
+char227 "
+:a 24 0 0x00E4
+char228 "
+oa 24 0 0x00E5
+char229 "
+ae 24 0 0x00E6
+char230 "
+,c 24 0 0x00E7
+char231 "
+`e 24 0 0x00E8
+char232 "
+'e 24 0 0x00E9
+char233 "
+^e 24 0 0x00EA
+char234 "
+:e 24 0 0x00EB
+char235 "
+`i 24 0 0x00EC
+char236 "
+'i 24 0 0x00ED
+char237 "
+^i 24 0 0x00EE
+char238 "
+:i 24 0 0x00EF
+char239 "
+Sd 24 0 0x00F0
+char240 "
+~n 24 0 0x00F1
+char241 "
+`o 24 0 0x00F2
+char242 "
+'o 24 0 0x00F3
+char243 "
+^o 24 0 0x00F4
+char244 "
+~o 24 0 0x00F5
+char245 "
+:o 24 0 0x00F6
+char246 "
+di 24 0 0x00F7
+char247 "
+/o 24 0 0x00F8
+char248 "
+`u 24 0 0x00F9
+char249 "
+'u 24 0 0x00FA
+char250 "
+^u 24 0 0x00FB
+char251 "
+:u 24 0 0x00FC
+char252 "
+'y 24 0 0x00FD
+char253 "
+Tp 24 0 0x00FE
+char254 "
+:y 24 0 0x00FF
+char255 "
+.i 24 0 0x0131
+/L 24 0 0x0141
+/l 24 0 0x0142
+OE 24 0 0x0152
+oe 24 0 0x0153
+Fn 24 0 0x0192
+ah 24 0 0x02C7
+ab 24 0 0x02D8
+a. 24 0 0x02D9
+ao 24 0 0x02DA
+ho 24 0 0x02DB
+a" 24 0 0x02DD
+*A 24 0 0x0391
+*B 24 0 0x0392
+*G 24 0 0x0393
+*D 24 0 0x0394
+*E 24 0 0x0395
+*Z 24 0 0x0396
+*Y 24 0 0x0397
+*H 24 0 0x0398
+*I 24 0 0x0399
+*K 24 0 0x039A
+*L 24 0 0x039B
+*M 24 0 0x039C
+*N 24 0 0x039D
+*C 24 0 0x039E
+*O 24 0 0x039F
+*P 24 0 0x03A0
+*R 24 0 0x03A1
+*S 24 0 0x03A3
+*T 24 0 0x03A4
+*U 24 0 0x03A5
+*F 24 0 0x03A6
+*X 24 0 0x03A7
+*Q 24 0 0x03A8
+*W 24 0 0x03A9
+*a 24 0 0x03B1
+*b 24 0 0x03B2
+*g 24 0 0x03B3
+*d 24 0 0x03B4
+*e 24 0 0x03B5
+*z 24 0 0x03B6
+*y 24 0 0x03B7
+*h 24 0 0x03B8
+*i 24 0 0x03B9
+*k 24 0 0x03BA
+*l 24 0 0x03BB
+*m 24 0 0x03BC
+*n 24 0 0x03BD
+*c 24 0 0x03BE
+*o 24 0 0x03BF
+*p 24 0 0x03C0
+*r 24 0 0x03C1
+ts 24 0 0x03C2
+*s 24 0 0x03C3
+*t 24 0 0x03C4
+*u 24 0 0x03C5
+*f 24 0 0x03C6
+*x 24 0 0x03C7
+*q 24 0 0x03C8
+*w 24 0 0x03C9
++h 24 0 0x03D1
++f 24 0 0x03D5
++p 24 0 0x03D6
+- 24 0 0x2010
+hy "
+en 24 0 0x2013
+em 24 0 0x2014
+` 24 0 0x2018
+oq "
+' 24 0 0x2019
+bq 24 0 0x201A
+lq 24 0 0x201C
+rq 24 0 0x201D
+Bq 24 0 0x201E
+dg 24 0 0x2020
+dd 24 0 0x2021
+bu 24 0 0x2022
+%0 24 0 0x2030
+fm 24 0 0x2032
+sd 24 0 0x2033
+fo 24 0 0x2039
+fc 24 0 0x203A
+rn 24 0 0x203E
+f/ 24 0 0x2044
+Im 24 0 0x2111
+wp 24 0 0x2118
+Re 24 0 0x211C
+tm 24 0 0x2122
+Ah 24 0 0x2135
+<- 24 0 0x2190
+ua 24 0 0x2191
+-> 24 0 0x2192
+da 24 0 0x2193
+<> 24 0 0x2194
+lA 24 0 0x21D0
+uA 24 0 0x21D1
+rA 24 0 0x21D2
+dA 24 0 0x21D3
+hA 24 0 0x21D4
+fa 24 0 0x2200
+pd 24 0 0x2202
+te 24 0 0x2203
+es 24 0 0x2205
+gr 24 0 0x2207
+mo 24 0 0x2208
+nm 24 0 0x2209
+st 24 0 0x220B
+\- 24 0 0x2212
+mi "
+** 24 0 0x2217
+sr 24 0 0x221A
+pt 24 0 0x221D
+if 24 0 0x221E
+/_ 24 0 0x2220
+AN 24 0 0x2227
+OR 24 0 0x2228
+ca 24 0 0x2229
+cu 24 0 0x222A
+is 24 0 0x222B
+tf 24 0 0x2234
+ti 24 0 0x223C
+ap "
+=~ 24 0 0x2245
+~~ 24 0 0x2248
+~= "
+!= 24 0 0x2260
+== 24 0 0x2261
+<= 24 0 0x2264
+>= 24 0 0x2265
+sb 24 0 0x2282
+sp 24 0 0x2283
+ib 24 0 0x2286
+ip 24 0 0x2287
+c+ 24 0 0x2295
+c* 24 0 0x2297
+pp 24 0 0x22A5
+lc 24 0 0x2308
+rc 24 0 0x2309
+lf 24 0 0x230A
+rf 24 0 0x230B
+la 24 0 0x2329
+ra 24 0 0x232A
+CR 24 0 0x240D
+an 24 0 0x2500
+br 24 0 0x2502
+bv "
+rk 24 0 0x251D
+lk 24 0 0x2525
+lt 24 0 0x256D
+rt 24 0 0x256E
+rb 24 0 0x256F
+lb 24 0 0x2570
+sq 24 0 0x25A1
+lz 24 0 0x25CA
+ci 24 0 0x25EF
+lh 24 0 0x261C
+rh 24 0 0x261E
+ff 24 0 0xFB00
+fi 24 0 0xFB01
+fl 24 0 0xFB02
+Fi 24 0 0xFB03
+Fl 24 0 0xFB04
diff --git a/grodvi/Makefile.dep b/grodvi/Makefile.dep
deleted file mode 100644
index d9a8734ac..000000000
--- a/grodvi/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-dvi.o: dvi.cc ../include/driver.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/printer.h \
- ../include/lib.h
diff --git a/groff/Makefile.dep b/groff/Makefile.dep
deleted file mode 100644
index 61fd92d45..000000000
--- a/groff/Makefile.dep
+++ /dev/null
@@ -1,5 +0,0 @@
-groff.o: groff.cc ../include/lib.h ../include/assert.h \
- ../include/errarg.h ../include/error.h ../include/stringclass.h \
- ../include/cset.h ../include/font.h ../include/device.h pipeline.h \
- ../include/defs.h
-pipeline.o: pipeline.c pipeline.h
diff --git a/grohtml/Makefile.dep b/grohtml/Makefile.dep
deleted file mode 100644
index 782d72116..000000000
--- a/grohtml/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-html.o: html.cc ordered_list.h ../include/driver.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/printer.h \
- ../include/lib.h
diff --git a/grohtml/Makefile.sub b/grohtml/Makefile.sub
deleted file mode 100644
index 3faa1e301..000000000
--- a/grohtml/Makefile.sub
+++ /dev/null
@@ -1,6 +0,0 @@
-PROG=grohtml
-MAN1=grohtml.n
-XLIBS=$(LIBDRIVER) $(LIBGROFF)
-MLIB=$(LIBM)
-OBJS=html.o
-CCSRCS=html.cc
diff --git a/grolj4/Makefile.dep b/grolj4/Makefile.dep
deleted file mode 100644
index 3fa1d22f8..000000000
--- a/grolj4/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-lj4.o: lj4.cc ../include/driver.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/printer.h \
- ../include/lib.h
diff --git a/grops/Makefile.dep b/grops/Makefile.dep
deleted file mode 100644
index 94e343401..000000000
--- a/grops/Makefile.dep
+++ /dev/null
@@ -1,6 +0,0 @@
-ps.o: ps.cc ../include/driver.h ../include/errarg.h ../include/error.h \
- ../include/font.h ../include/printer.h ../include/lib.h \
- ../include/stringclass.h ../include/cset.h ps.h
-psrm.o: psrm.cc ../include/driver.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/printer.h \
- ../include/lib.h ../include/stringclass.h ../include/cset.h ps.h
diff --git a/grops/Makefile.sub b/grops/Makefile.sub
deleted file mode 100644
index 891472b74..000000000
--- a/grops/Makefile.sub
+++ /dev/null
@@ -1,7 +0,0 @@
-PROG=grops
-MAN1=grops.n
-XLIBS=$(LIBDRIVER) $(LIBGROFF)
-MLIB=$(LIBM)
-OBJS=ps.o psrm.o
-CCSRCS=ps.cc psrm.cc
-HDRS=ps.h
diff --git a/grotty/Makefile.dep b/grotty/Makefile.dep
deleted file mode 100644
index 59390586d..000000000
--- a/grotty/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-tty.o: tty.cc ../include/driver.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/printer.h \
- ../include/lib.h
diff --git a/hpftodit/Makefile.dep b/hpftodit/Makefile.dep
deleted file mode 100644
index 5239b9d7b..000000000
--- a/hpftodit/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-hpftodit.o: hpftodit.cc ../include/assert.h ../include/lib.h \
- ../include/posix.h ../include/errarg.h ../include/error.h \
- ../include/cset.h
diff --git a/indxbib/Makefile.dep b/indxbib/Makefile.dep
deleted file mode 100644
index dec439efe..000000000
--- a/indxbib/Makefile.dep
+++ /dev/null
@@ -1,6 +0,0 @@
-indxbib.o: indxbib.cc ../include/posix.h ../include/lib.h \
- ../include/errarg.h ../include/error.h ../include/stringclass.h \
- ../include/cset.h ../include/cmap.h ../include/defs.h \
- ../include/index.h
-dirnamemax.o: dirnamemax.c
-signal.o: signal.c
diff --git a/libbib/Makefile.dep b/libbib/Makefile.dep
deleted file mode 100644
index 8c4974853..000000000
--- a/libbib/Makefile.dep
+++ /dev/null
@@ -1,12 +0,0 @@
-common.o: common.cc
-index.o: index.cc ../include/posix.h ../include/lib.h \
- ../include/cset.h ../include/cmap.h ../include/errarg.h \
- ../include/error.h ../include/refid.h ../include/search.h \
- ../include/index.h ../include/defs.h
-linear.o: linear.cc ../include/posix.h ../include/lib.h \
- ../include/errarg.h ../include/error.h ../include/cset.h \
- ../include/cmap.h ../include/refid.h ../include/search.h
-search.o: search.cc ../include/posix.h ../include/lib.h \
- ../include/errarg.h ../include/error.h ../include/refid.h \
- ../include/search.h
-map.o: map.c
diff --git a/libbib/Makefile.sub b/libbib/Makefile.sub
deleted file mode 100644
index e9418288a..000000000
--- a/libbib/Makefile.sub
+++ /dev/null
@@ -1,4 +0,0 @@
-LIB=bib
-OBJS=common.o index.o linear.o search.o map.o
-CCSRCS=common.cc index.cc linear.cc search.cc
-CSRCS=map.c
diff --git a/libdriver/Makefile.dep b/libdriver/Makefile.dep
deleted file mode 100644
index cf2a6959b..000000000
--- a/libdriver/Makefile.dep
+++ /dev/null
@@ -1,6 +0,0 @@
-input.o: input.cc ../include/driver.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/printer.h \
- ../include/lib.h ../include/device.h ../include/cset.h
-printer.o: printer.cc ../include/driver.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/printer.h \
- ../include/lib.h
diff --git a/libdriver/Makefile.sub b/libdriver/Makefile.sub
deleted file mode 100644
index 1b3c09f1c..000000000
--- a/libdriver/Makefile.sub
+++ /dev/null
@@ -1,3 +0,0 @@
-LIB=driver
-OBJS=input.o printer.o
-CCSRCS=input.cc printer.cc
diff --git a/libgroff/Makefile.dep b/libgroff/Makefile.dep
deleted file mode 100644
index 2ddf64057..000000000
--- a/libgroff/Makefile.dep
+++ /dev/null
@@ -1,39 +0,0 @@
-assert.o: assert.cc ../include/assert.h
-change_lf.o: change_lf.cc
-cmap.o: cmap.cc ../include/cmap.h
-cset.o: cset.cc ../include/cset.h
-device.o: device.cc ../include/device.h ../include/defs.h
-errarg.o: errarg.cc ../include/assert.h ../include/errarg.h
-error.o: error.cc ../include/errarg.h ../include/error.h
-fatal.o: fatal.cc
-filename.o: filename.cc
-font.o: font.cc ../include/errarg.h ../include/error.h \
- ../include/cset.h ../include/font.h ../include/lib.h
-fontfile.o: fontfile.cc ../include/font.h ../include/lib.h \
- ../include/searchpath.h ../include/device.h ../include/defs.h
-lf.o: lf.cc ../include/cset.h ../include/stringclass.h
-lineno.o: lineno.cc
-macropath.o: macropath.cc ../include/lib.h ../include/searchpath.h \
- ../include/macropath.h ../include/defs.h
-nametoindex.o: nametoindex.cc ../include/lib.h ../include/errarg.h \
- ../include/error.h ../include/font.h ../include/ptable.h
-new.o: new.cc ../include/posix.h
-prime.o: prime.cc
-progname.o: progname.cc
-ptable.o: ptable.cc ../include/ptable.h ../include/errarg.h \
- ../include/error.h
-searchpath.o: searchpath.cc ../include/lib.h ../include/searchpath.h
-string.o: string.cc ../include/stringclass.h ../include/lib.h
-strsave.o: strsave.cc
-tmpfile.o: tmpfile.cc ../include/posix.h ../include/lib.h \
- ../include/errarg.h ../include/error.h
-version.o: version.cc
-illegal.o: illegal.cc ../include/lib.h
-fmod.o: fmod.c
-getcwd.o: getcwd.c
-iftoa.o: iftoa.c
-itoa.o: itoa.c
-matherr.o: matherr.c
-strerror.o: strerror.c
-strtol.o: strtol.c
-putenv.o: putenv.c
diff --git a/libgroff/Makefile.sub b/libgroff/Makefile.sub
deleted file mode 100644
index a3126bf04..000000000
--- a/libgroff/Makefile.sub
+++ /dev/null
@@ -1,15 +0,0 @@
-LIB=groff
-OBJS=assert.o change_lf.o cmap.o cset.o device.o errarg.o error.o fatal.o \
- filename.o font.o fontfile.o lf.o lineno.o macropath.o nametoindex.o new.o \
- prime.o progname.o ptable.o searchpath.o string.o strsave.o tmpfile.o \
- iftoa.o itoa.o matherr.o version.o illegal.o $(LIBOBJS)
-CCSRCS=assert.cc change_lf.cc cmap.cc cset.cc device.cc errarg.cc error.cc \
- fatal.cc filename.cc font.cc fontfile.cc lf.cc lineno.cc macropath.cc \
- nametoindex.cc new.cc prime.cc progname.cc ptable.cc searchpath.cc \
- string.cc strsave.cc tmpfile.cc version.cc illegal.cc
-CSRCS=fmod.c getcwd.c iftoa.c itoa.c matherr.c strerror.c strtol.c putenv.c
-GENSRCS=version.cc
-
-version.cc: $(srcdir)/../VERSION
- @echo Making version.cc
- @echo const char \*version_string = \"`cat $(srcdir)/../VERSION`\"\; >$@
diff --git a/lkbib/Makefile.dep b/lkbib/Makefile.dep
deleted file mode 100644
index 19d441a24..000000000
--- a/lkbib/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-lkbib.o: lkbib.cc ../include/lib.h ../include/errarg.h \
- ../include/error.h ../include/defs.h ../include/refid.h \
- ../include/search.h
diff --git a/lookbib/Makefile.dep b/lookbib/Makefile.dep
deleted file mode 100644
index 341a3b973..000000000
--- a/lookbib/Makefile.dep
+++ /dev/null
@@ -1,3 +0,0 @@
-lookbib.o: lookbib.cc ../include/errarg.h ../include/error.h \
- ../include/lib.h ../include/cset.h ../include/refid.h \
- ../include/search.h
diff --git a/man/Makefile.sub b/man/Makefile.sub
index 9b871148e..cb596da4a 100644
--- a/man/Makefile.sub
+++ b/man/Makefile.sub
@@ -1,2 +1,5 @@
-MAN5=groff_font.n groff_out.n
-MAN7=groff_char.n
+MAN5=\
+ groff_font.n \
+ groff_out.n
+MAN7=\
+ groff_char.n
diff --git a/man/groff_font.man b/man/groff_font.man
index 97b648027..e551e0a6d 100644
--- a/man/groff_font.man
+++ b/man/groff_font.man
@@ -130,6 +130,16 @@ will cause no font to be mounted on the corresponding font position.
The default font family is
.IR fam .
.TP
+.B use_charnames_in_special
+This command indicates that troff should encode named characters inside
+special commands.
+.TP
+.B pass_filenames
+requests that troff tells the driver the source file name being processed.
+This is achieved by another tcommand:
+.B F
+.IR filename .
+.TP
.B charset
This line and everything following in the file are ignored.
It is allowed for the sake of backwards compatibility.
@@ -209,8 +219,10 @@ Each line gives information for one character.
A line comprises a number of fields separated
by blanks or tabs. The format is
.IP
-.I
-name metrics type code comment
+.I name metrics type code
+.RI [ entity_name ]
+.RB [ --
+.IR comment ]
.LP
.I name
identifies the character:
@@ -279,7 +291,16 @@ or
.B 0X
it will be intepreted as hexadecimal.
.LP
-Anything on the line after the code field will be ignored.
+The
+.I entity_name
+field gives an ascii string identifying the glyph which the postprocessor
+uses to print the character.
+This field is optional and has been introduced so that the html device driver
+can encode its character set.
+For example, the character `\e[Po]' is represented as `&pound;' in html 4.0.
+.LP
+Anything on the line after the encoding field resp. after `-\&-' will
+be ignored.
.LP
The
.I metrics
diff --git a/mdate.sh b/mdate.sh
index 6bdac9d47..6bdac9d47 100755..100644
--- a/mdate.sh
+++ b/mdate.sh
diff --git a/mkinstalldirs b/mkinstalldirs
new file mode 100755
index 000000000..d0fd194fd
--- /dev/null
+++ b/mkinstalldirs
@@ -0,0 +1,40 @@
+#! /bin/sh
+# mkinstalldirs --- make directory hierarchy
+# Author: Noah Friedman <friedman@prep.ai.mit.edu>
+# Created: 1993-05-16
+# Public domain
+
+# $Id$
+
+errstatus=0
+
+for file
+do
+ set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
+ shift
+
+ pathcomp=
+ for d
+ do
+ pathcomp="$pathcomp$d"
+ case "$pathcomp" in
+ -* ) pathcomp=./$pathcomp ;;
+ esac
+
+ if test ! -d "$pathcomp"; then
+ echo "mkdir $pathcomp" 1>&2
+
+ mkdir "$pathcomp" || lasterr=$?
+
+ if test ! -d "$pathcomp"; then
+ errstatus=$lasterr
+ fi
+ fi
+
+ pathcomp="$pathcomp/"
+ done
+done
+
+exit $errstatus
+
+# mkinstalldirs ends here
diff --git a/mm/Makefile.sub b/mm/Makefile.sub
deleted file mode 100644
index 08d6b55be..000000000
--- a/mm/Makefile.sub
+++ /dev/null
@@ -1,37 +0,0 @@
-#
-# $Id: Makefile.sub,v 1.32 1999/09/03 05:33:12 jh Exp $
-#
-MAN7=groff_mm.n groff_mmse.n
-FILES=0.MT 5.MT 4.MT ms.cov se_ms.cov
-# Local configuration files with default values.
-LOCALE = locale se_locale
-CLEANADD=temp
-install: install_mm
-
-install_mm: install_m
- -test -d $(tmacdir)/mm || mkdir $(tmacdir)/mm
- -for f in $(FILES); do \
- rm -f $(tmacdir)/mm/$$f; \
- $(INSTALL_DATA) $(srcdir)/mm/$$f $(tmacdir)/mm/$$f; \
- done
- -for f in $(LOCALE); do \
- test -f $(tmacdir)/mm/$$f || touch $(tmacdir)/mm/$$f; \
- done
-
-install_m:
- -test -d $(tmacdir) || mkdir $(tmacdir)
- -rm -f $(tmacdir)/tmac.$(tmac_m)
- $(INSTALL_DATA) $(srcdir)/tmac.m $(tmacdir)/tmac.$(tmac_m)
- @sed -e "s;^.mso tmac.m;.mso $(tmac_m);g" $(srcdir)/tmac.mse \
- > $(tmacdir)/tmac.$(tmac_m)se
-
-
-
-uninstall_sub:
- -for f in $(FILES); do rm -f $(tmacdir)/mm/$$f; done
- -for f in $(LOCALE); do \
- test -s $(tmacdir)/mm/$$f || rm -f $(tmacdir)/mm/$$f; \
- done
- -rm -f $(tmacdir)/tmac.$(tmac_m)
- -rm -f $(tmacdir)/tmac.$(tmac_m)se
- -rmdir $(tmacdir)/mm
diff --git a/mm/mm/se_ms.cov b/mm/mm/se_ms.cov
deleted file mode 100644
index ec4432cdf..000000000
--- a/mm/mm/se_ms.cov
+++ /dev/null
@@ -1,3 +0,0 @@
-.\" $Id: se_ms.cov,v 1.32 1999/09/03 05:33:13 jh Exp $
-.mso mm/ms.cov
-.nr cur*abstract-ll 11c
diff --git a/pfbtops/Makefile.dep b/pfbtops/Makefile.dep
deleted file mode 100644
index f601c366a..000000000
--- a/pfbtops/Makefile.dep
+++ /dev/null
@@ -1 +0,0 @@
-pfbtops.o: pfbtops.c
diff --git a/pic/Makefile.dep b/pic/Makefile.dep
deleted file mode 100644
index 1e0787489..000000000
--- a/pic/Makefile.dep
+++ /dev/null
@@ -1,24 +0,0 @@
-lex.o: lex.cc pic.h ../include/assert.h ../include/cset.h \
- ../include/lib.h ../include/stringclass.h ../include/errarg.h \
- ../include/error.h position.h text.h output.h ../include/ptable.h \
- object.h pic.cc
-main.o: main.cc pic.h ../include/assert.h ../include/cset.h \
- ../include/lib.h ../include/stringclass.h ../include/errarg.h \
- ../include/error.h position.h text.h output.h
-object.o: object.cc pic.h ../include/assert.h ../include/cset.h \
- ../include/lib.h ../include/stringclass.h ../include/errarg.h \
- ../include/error.h position.h text.h output.h ../include/ptable.h \
- object.h
-common.o: common.cc pic.h ../include/assert.h ../include/cset.h \
- ../include/lib.h ../include/stringclass.h ../include/errarg.h \
- ../include/error.h position.h text.h output.h common.h
-troff.o: troff.cc pic.h ../include/assert.h ../include/cset.h \
- ../include/lib.h ../include/stringclass.h ../include/errarg.h \
- ../include/error.h position.h text.h output.h common.h
-tex.o: tex.cc pic.h ../include/assert.h ../include/cset.h \
- ../include/lib.h ../include/stringclass.h ../include/errarg.h \
- ../include/error.h position.h text.h output.h common.h
-pic.o: pic.cc pic.h ../include/assert.h ../include/cset.h \
- ../include/lib.h ../include/stringclass.h ../include/errarg.h \
- ../include/error.h position.h text.h output.h ../include/ptable.h \
- object.h
diff --git a/pic/Makefile.sub b/pic/Makefile.sub
deleted file mode 100644
index 06d19750d..000000000
--- a/pic/Makefile.sub
+++ /dev/null
@@ -1,11 +0,0 @@
-PROG=pic
-MAN1=pic.n
-XLIBS=$(LIBGROFF)
-MLIB=$(LIBM)
-OBJS=pic.o lex.o main.o object.o common.o troff.o tex.o # fig.o
-CCSRCS=lex.cc main.cc object.cc common.cc troff.cc tex.cc
-HDRS=common.h object.h output.h pic.h position.h text.h
-GRAM=pic.y
-YTABC=pic.cc
-YTABH=pic.tab.h
-NAMEPREFIX=$(g)
diff --git a/psbb/Makefile.dep b/psbb/Makefile.dep
deleted file mode 100644
index 51d2bcb11..000000000
--- a/psbb/Makefile.dep
+++ /dev/null
@@ -1 +0,0 @@
-psbb.o: psbb.c
diff --git a/psbb/Makefile.sub b/psbb/Makefile.sub
deleted file mode 100644
index 106721a67..000000000
--- a/psbb/Makefile.sub
+++ /dev/null
@@ -1,5 +0,0 @@
-PROG=psbb
-MAN1=psbb.n
-OBJS=psbb.o
-CSRCS=psbb.c
-XLIBS=
diff --git a/psbb/psbb.c b/psbb/psbb.c
deleted file mode 100644
index 3d1f343ed..000000000
--- a/psbb/psbb.c
+++ /dev/null
@@ -1,169 +0,0 @@
-/* Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
- Written by James Clark (jjc@jclark.com)
-
-This file is part of groff.
-
-groff is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 2, or (at your option) any later
-version.
-
-groff is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License along
-with groff; see the file COPYING. If not, write to the Free Software
-Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-
-#include <stdio.h>
-#include <string.h>
-#include <errno.h>
-#ifndef errno
-extern int errno;
-#endif
-
-struct bounding_box {
- int llx, lly, urx, ury;
-};
-
-#ifdef __STDC__
-const char *do_file(FILE *, struct bounding_box *);
-int parse_bounding_box(char *, struct bounding_box *);
-#else
-#define const /* as nothing */
-const char *do_file();
-int parse_bounding_box();
-#endif
-
-int main(argc, argv)
-int argc;
-char **argv;
-{
- FILE *fp;
- const char *message;
- struct bounding_box bb;
- if (argc != 2) {
- fprintf(stderr, "usage: %s filename\n", argv[0]);
- exit(3);
- }
- errno = 0;
- fp = fopen(argv[1], "r");
- if (fp == NULL) {
- fprintf(stderr, "%s: can't open `%s': ", argv[0], argv[1]);
- perror((char *)NULL);
- exit(2);
- }
- message = do_file(fp, &bb);
- if (message) {
- fprintf(stderr, "%s: ", argv[0]);
- fprintf(stderr, message, argv[1]);
- putc('\n', stderr);
- exit(1);
- }
- printf("%d %d %d %d\n", bb.llx, bb.lly, bb.urx, bb.ury);
- exit(0);
-}
-
-/* If the bounding box was found return NULL, and store the bounding box
-in bb. If the bounding box was not found return a string suitable for
-giving to printf with the filename as an argument saying why not. */
-
-const char *do_file(fp, bb)
-FILE *fp;
-struct bounding_box *bb;
-{
- int bb_at_end = 0;
- char buf[256];
- if (!fgets(buf, sizeof(buf), fp))
- return "%s is empty";
- if (strncmp("%!PS-Adobe-", buf, 11) != 0)
- return "%s is not conforming";
- while (fgets(buf, sizeof(buf), fp) != 0) {
- if (buf[0] != '%' || buf[1] != '%'
- || strncmp(buf + 2, "EndComments", 11) == 0)
- break;
- if (strncmp(buf + 2, "BoundingBox:", 12) == 0) {
- int res = parse_bounding_box(buf + 14, bb);
- if (res == 1)
- return NULL;
- else if (res == 2) {
- bb_at_end = 1;
- break;
- }
- else
- return "the arguments to the %%%%BoundingBox comment in %s are bad";
- }
- }
- if (bb_at_end) {
- long offset;
- int last_try = 0;
- /* in the trailer, the last BoundingBox comment is significant */
- for (offset = 512; !last_try; offset *= 2) {
- int had_trailer = 0;
- int got_bb = 0;
- if (offset > 32768 || fseek(fp, -offset, 2) == -1) {
- last_try = 1;
- if (fseek(fp, 0L, 0) == -1)
- break;
- }
- while (fgets(buf, sizeof(buf), fp) != 0) {
- if (buf[0] == '%' && buf[1] == '%') {
- if (!had_trailer) {
- if (strncmp(buf + 2, "Trailer", 7) == 0)
- had_trailer = 1;
- }
- else {
- if (strncmp(buf + 2, "BoundingBox:", 12) == 0) {
- int res = parse_bounding_box(buf + 14, bb);
- if (res == 1)
- got_bb = 1;
- else if (res == 2)
- return "`(atend)' not allowed in trailer";
- else
- return "the arguments to the %%%%BoundingBox comment in %s are bad";
- }
- }
- }
- }
- if (got_bb)
- return NULL;
- }
- }
- return "%%%%BoundingBox comment not found in %s";
-}
-
-/* Parse the argument to a %%BoundingBox comment. Return 1 if it
-contains 4 numbers, 2 if it contains (atend), 0 otherwise. */
-
-int parse_bounding_box(p, bb)
-char *p;
-struct bounding_box *bb;
-{
- if (sscanf(p, "%d %d %d %d",
- &bb->llx, &bb->lly, &bb->urx, &bb->ury) == 4)
- return 1;
- else {
- /* The Document Structuring Conventions say that the numbers
- should be integers. Unfortunately some broken applications
- get this wrong. */
- double x1, x2, x3, x4;
- if (sscanf(p, "%lf %lf %lf %lf", &x1, &x2, &x3, &x4) == 4) {
- bb->llx = (int)x1;
- bb->lly = (int)x2;
- bb->urx = (int)x3;
- bb->ury = (int)x4;
- return 1;
- }
- else {
- for (; *p == ' ' || *p == '\t'; p++)
- ;
- if (strncmp(p, "(atend)", 7) == 0) {
- return 2;
- }
- }
- }
- return 0;
-}
-
diff --git a/psbb/psbb.man b/psbb/psbb.man
deleted file mode 100644
index 4c6ac8c16..000000000
--- a/psbb/psbb.man
+++ /dev/null
@@ -1,43 +0,0 @@
-.ig \"-*- nroff -*-
-Copyright (C) 1989-1995 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
-
-Permission is granted to copy and distribute modified versions of this
-manual under the conditions for verbatim copying, provided that the
-entire resulting derived work is distributed under the terms of a
-permission notice identical to this one.
-
-Permission is granted to copy and distribute translations of this
-manual into another language, under the above conditions for modified
-versions, except that this permission notice may be included in
-translations approved by the Free Software Foundation instead of in
-the original English.
-..
-.TH PSBB @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@"
-.SH NAME
-psbb \- extract bounding box from PostScript document
-.SH SYNOPSIS
-.B psbb
-.I file
-.SH DESCRIPTION
-psbb reads
-.I file
-which should be a PostScript document conforming to
-the Document Structuring conventions
-and looks for a
-.B %%BoundingBox
-comment.
-If it finds one,
-it prints a line
-.IP
-.I
-llx lly urx ury
-.LP
-on the standard output and exits with zero status.
-If it doesn't find such a line or if the line is invalid
-it prints a message and exits with non-zero status.
-.SH "SEE ALSO"
-.BR grops (@MAN1EXT@)
diff --git a/refer/Makefile.dep b/refer/Makefile.dep
deleted file mode 100644
index 824c0c65e..000000000
--- a/refer/Makefile.dep
+++ /dev/null
@@ -1,17 +0,0 @@
-command.o: command.cc refer.h ../include/errarg.h ../include/error.h \
- ../include/lib.h ../include/stringclass.h ../include/cset.h \
- ../include/cmap.h ../include/defs.h ../include/refid.h \
- ../include/search.h command.h
-ref.o: ref.cc refer.h ../include/errarg.h ../include/error.h \
- ../include/lib.h ../include/stringclass.h ../include/cset.h \
- ../include/cmap.h ../include/defs.h ../include/refid.h ref.h token.h
-refer.o: refer.cc refer.h ../include/errarg.h ../include/error.h \
- ../include/lib.h ../include/stringclass.h ../include/cset.h \
- ../include/cmap.h ../include/defs.h ../include/refid.h ref.h token.h \
- ../include/search.h command.h
-token.o: token.cc refer.h ../include/errarg.h ../include/error.h \
- ../include/lib.h ../include/stringclass.h ../include/cset.h \
- ../include/cmap.h ../include/defs.h token.h
-label.o: label.cc refer.h ../include/errarg.h ../include/error.h \
- ../include/lib.h ../include/stringclass.h ../include/cset.h \
- ../include/cmap.h ../include/defs.h ../include/refid.h ref.h token.h
diff --git a/refer/Makefile.sub b/refer/Makefile.sub
deleted file mode 100644
index 287346245..000000000
--- a/refer/Makefile.sub
+++ /dev/null
@@ -1,10 +0,0 @@
-PROG=refer
-MAN1=refer.n
-XLIBS=$(LIBBIB) $(LIBGROFF)
-MLIB=$(LIBM)
-OBJS=command.o label.o ref.o refer.o token.o
-CCSRCS=command.cc ref.cc refer.cc token.cc
-HDRS=refer.h token.h command.h ref.h
-GRAM=label.y
-YTABC=label.cc
-NAMEPREFIX=$(g)
diff --git a/soelim/Makefile.dep b/soelim/Makefile.dep
deleted file mode 100644
index 66f6470ef..000000000
--- a/soelim/Makefile.dep
+++ /dev/null
@@ -1,2 +0,0 @@
-soelim.o: soelim.cc ../include/lib.h ../include/errarg.h \
- ../include/error.h ../include/stringclass.h
diff --git a/grodvi/Makefile.sub b/src/devices/grodvi/Makefile.sub
index a63905df9..0e5d32cab 100644
--- a/grodvi/Makefile.sub
+++ b/src/devices/grodvi/Makefile.sub
@@ -3,4 +3,4 @@ MAN1=grodvi.n
XLIBS=$(LIBDRIVER) $(LIBGROFF)
MLIB=$(LIBM)
OBJS=dvi.o
-CCSRCS=dvi.cc
+CCSRCS=$(srcdir)/dvi.cc
diff --git a/grodvi/dvi.cc b/src/devices/grodvi/dvi.cc
index d13912472..5c62163a4 100644
--- a/grodvi/dvi.cc
+++ b/src/devices/grodvi/dvi.cc
@@ -186,8 +186,8 @@ public:
};
dvi_printer::dvi_printer()
-: byte_count(0), last_bop(-1), page_count(0), cur_font(0), fp(stdout),
- max_h(0), max_v(0), pushed(0), line_thickness(-1), cur_point_size(-1)
+: fp(stdout), byte_count(0), last_bop(-1), page_count(0), max_h(0), max_v(0),
+ cur_font(0), cur_point_size(-1), pushed(0), line_thickness(-1)
{
if (font::res != RES)
fatal("resolution must be %1", RES);
@@ -854,8 +854,8 @@ int main(int argc, char **argv)
switch(c) {
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "grodvi version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "grodvi version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/grodvi/grodvi.man b/src/devices/grodvi/grodvi.man
index aeb894cd4..aeb894cd4 100644
--- a/grodvi/grodvi.man
+++ b/src/devices/grodvi/grodvi.man
diff --git a/grohtml/ChangeLog b/src/devices/grohtml/ChangeLog
index e7c126576..136fbc5f4 100644..100755
--- a/grohtml/ChangeLog
+++ b/src/devices/grohtml/ChangeLog
@@ -1,3 +1,71 @@
+2000-01-28 Gaius Mulley <gaius@glam.ac.uk>
+
+ * html.cc: Minor fixes.
+
+2000-01-27 Gaius Mulley <gaius@glam.ac.uk>
+
+ * html.cc: Added support for the new tcommand `F'.
+ * TODO: Updated.
+
+2000-01-24 Gaius Mulley <gaius@glam.ac.uk>
+
+ * design.ms: Revised. Removed TODO stuff.
+
+ * TODO: New file.
+
+2000-01-21 Gaius Mulley <gaius@glam.ac.uk>
+
+ * html.cc: Add support for char names in special requests (to
+ support e.g. accented characters in HTML specials).
+
+2000-01-14 Gaius Mulley <gaius@glam.ac.uk>
+
+ * html.cc, html.h: Many fixes to table code.
+
+ Fixes to manual page handling, font changes, spaces, and
+ diacritical characters. All *standard* html character encodings
+ are handled.
+
+ Added -T option which turns off all image generation for tables.
+ One day grohtml should be able to determine this for itself.
+
+ Altered image name to: <groff_input_file>-<index>.png as per
+ Werners suggestion.
+
+ * grohtml.man: Document -T option.
+
+ * html_chars.h: New file, providing diacritical table support.
+
+ * output.cc: New file, providing basic output routines for grohtml.
+
+ * Makefile.sub: Added output.cc.
+
+ * Makefile.dep: Updated.
+
+2000-01-13 Bruno Haible <haible@clisp.cons.org>
+
+ * html.cc: Avoid most "g++ -Wall -Wno-sign-compare" warnings.
+
+2000-01-10 Werner Lemberg <wl@gnu.org>
+
+ * html.cc: Use Version_string instead of version_string.
+
+1999-12-30 Gaius Mulley <gaius@glam.ac.uk>
+
+ * html.cc (is_appropriate_to_start_table): Added a missing
+ declaration.
+
+1999-12-28 Gaius Mulley <gaius@glam.ac.uk>
+
+ * html.cc: Revisited the table handling code with a vengeance,
+ aiming to make manual pages generate sensible html.
+ Superscripting/subscripting revisited. Fixed wierd table lengths.
+ Table widths are now specified in percentages. Fixed the man.n
+ test example which Werner reported.
+
+Version 1.15 released
+=====================
+
1999-12-21 Werner LEMBERG <wl@gnu.org>
* grohtml.man: Fixed copyright year.
diff --git a/src/devices/grohtml/Makefile.sub b/src/devices/grohtml/Makefile.sub
new file mode 100644
index 000000000..a1e301f01
--- /dev/null
+++ b/src/devices/grohtml/Makefile.sub
@@ -0,0 +1,10 @@
+PROG=grohtml
+MAN1=grohtml.n
+XLIBS=$(LIBDRIVER) $(LIBGROFF)
+MLIB=$(LIBM)
+OBJS=\
+ html.o \
+ output.o
+CCSRCS=\
+ $(srcdir)/html.cc \
+ $(srcdir)/output.cc
diff --git a/src/devices/grohtml/TODO b/src/devices/grohtml/TODO
new file mode 100755
index 000000000..4924bd1c5
--- /dev/null
+++ b/src/devices/grohtml/TODO
@@ -0,0 +1,294 @@
+
+------------------------------------------------------------------
+ T O D O L I S T
+------------------------------------------------------------------
+finish working out the max and min x, y, extents for splines.
+------------------------------------------------------------------
+check and test thoroughly all the character descriptions in devhtml
+(originally taken from devX100)
+------------------------------------------------------------------
+improve tmac.arkup
+------------------------------------------------------------------
+also improve documentation.
+------------------------------------------------------------------
+fix the bugs which are exposed by Eric Raymonds pic guide,
+"Making Pictures With GNU PIC". It appears that grohtml becomes confused
+about which sections of the document are text and which sections need
+to be rendered as an image.
+------------------------------------------------------------------
+it would be nice to modularise the source. A natural division might be
+to extract the table handling code from html.cc into table.cc.
+The table.cc could be expanded to recognise output from tbl and try
+and generate html tables with lines/rules/boxes. The code as it stands
+should cope with very simple plain text tables. But of course at present
+it does not get a chance to do this because the output of gtbl is
+bracketed by \fCgraphic-start\fR and \fCgraphic-end\fR.
+------------------------------------------------------------------
+introduce anti aliasing for the images as mentioned by Werner.
+------------------------------------------------------------------
+improve generation of html. Perhaps by using a stack of current
+html commands and using a kind of peephole optimizer on the stack?
+Certainly the html should be buffered and optimized.
+------------------------------------------------------------------
+
+
+Informal to do bug list and done list
+=====================================
+
+This very informal and I've included some comments. Mainly consists
+of a emailed bugs and wish lists. All very useful and welcome.
+
+------------------------------------------------------------------
+Dean writes: (provinsd@enf403-2.ensu.ucalgary.ca)
+
+I noticed also that the TOC appears immediately after the title, splitting
+it from the author and abstract. Any chance it can be moved down?
+
+gaius> this should be straight forward. (Not done yet though)
+------------------------------------------------------------------
+
+.) The command `\(->', translates to the `registered' sign (or rather
+ the character `0xAE') instead of a right arrow.
+
+--nearly fixed-- 4/01/2000
+
+gaius> if we know the standard html character encoding for farrow which
+gaius> will work on *all* browsers then this can be fixed inside devhtml/TR
+gaius> etc. Otherwise I guess we could translate this character into ->
+gaius> in tmac.html ?
+
+------------------------------------------------------------------
+
+Werner writes:
+
+Nevertheless, still some bugs in it. As usual, I'm refering to man.1
+of the mandb package; my command to create man.html was
+
+ groff -U -t -man -Thtml -P-r -P200 man.1 > man.html
+
+.) The `-w , --where, --location' node at the beginning of man.html
+ shouldn't be there at all.
+
+> .) Some paragraphs still contain hyphenated words (e.g. first
+> paragraph of the `DESCRIPTION' section).
+
+Oops! Please ignore this. I forgot to include `-mhtml' :-)
+
+.) Is it possible to have anti-aliased PNG images?
+
+.) The item `man --help' in the `EXAMPLES' section doesn't start a new
+ paragraph.
+
+.) In the description of the -r switch (in the `OPTIONS' section),
+ there is a new paragraph in the middle of a sentence.
+
+.) What about centering the images? Or does it depend on the table
+ itself?
+
+gaius> yes, grohtml places images at their relative position on the page.
+
+.) In the `OPTIONS' section, `-c, --catman' and `-d, --debug' are
+ glued together which shouldn't happen.
+--fixed--
+
+.) Sometimes, an empty line is missing between items, e.g. between the
+ description of the -e and the -f options.
+
+.) After the `-w, --where, --location' line, there is a superfluous
+ empty line.
+
+.) The indentation in the `FILES' section is inconsistent. The same
+ is true for `-V, --version' a few lines above.
+
+.) The formatting of the paragraph after the first table is completely
+ wrong. It appears that the first few words are set in two columns;
+ additionally, the indentation is incorrect.
+
+.) Similarly, the description of `-l' in the OPTIONS section is
+ idented incorrectly. Wrong indentations happen still quite
+ frequently.
+
+.) In the description of the `-D' option, there is a blank line in the
+ middle of a paragraph.
+
+
+ Werner
+
+------------------------------------------------------------------
+Werner writes:
+
+Gaius,
+
+checking a weird man page written by myself in German (using German
+hyphenation patterns also :-), I found some more bugs:
+
+.) Look at the following:
+
+[\c
+...\^\c
+]
+[\c
+.BI -P \ \%Plattform-ID\^\c
+]
+
+ This translates to
+
+[<font size=3><B>-E</B> <font size=3><I>Kodierungs-ID</I> <font size=3>]
+ ^
+ (groff breaks the line after the final `]'.)
+
+ There are two errors in it: First of all, the `\ ' command should
+ be translated to `&nbsp;'. Secondly, a blank has crept in (marked
+ with `^'. Apparently, this is related to whether it is the last
+ item of a line or not.
+
+--fixed-- 4 01 2000
+------------------------------------------------------------------
+
+from Steve Blinkhorn <steve@prd.co.uk>
+
+One thought that came immediately to mind after our first trials.
+If grohtml depends on grops, should there not be an easy interface to
+allow PostScript code to be interpreted into the output? For
+instance, we generate our letterhead, including a logo, on the fly in
+groff. The logo is pure PostScript. We use PostScript for colour
+manipulation, and recently for generating a lot of graphics for
+printing.
+
+gaius> should be interesting - if we can generate PS then GS it
+gaius> we should be in business
+
+------------------------------------------------------------------
+ D O N E L I S T
+------------------------------------------------------------------
+the logical place and name for a file describing tmac.arkup is
+groff_markup.man placed into the `tmac' subdirectory, and your html.ms
+looks like being this kind of file.
+
+So I won't check it in currently -- may I ask you to convert this file
+to a man page?
+
+-- fixed --
+
+Another related problem: I can imagine that a lot of people start to
+write man pages with HTML output in mind also. Nevertheless, it
+should be still possible to display such pages correctly with a plain
+text man pager. As a consequence, such man pages should contain at
+the beginning something like
+
+ .do mso tmac.arkup
+
+What do you think?
+
+ Werner
+
+-- fixed --
+gaius> fixed by using troffrc-end I believe
+--------------------------------------------------------------------
+Gaius,
+
+in troffrc, it appears to me that tmac.html is loaded if the output
+device is HTML. So why must I load it again (using -mhtml) to
+suppress hyphenation for HTML output? Can you provide a fix for this?
+
+ Werner
+
+gaius> fixed as above
+--------------------------------------------------------------------
+
+from (daeschler@shuttle.de) Rainer Daeschler
+
+I recognized s problem limiting the usage for
+"none-english aliens". The generation of PNG of GIF,
+skips all special characters like
+
+ äöü ÄÖÜ ß
+
+French, Spanish, and Scandinavian national letters, too.
+
+--fixed-- 14/01/2000
+
+An option which forces tables into HTML-code instead of building
+an image would be most valuable. Of course it would not preserve
+the original layout in many cases, but ease modifications of
+the HTML-output to the users demand afterwards.
+
+--fixed-- 14/01/2000
+
+gaius> use the new -T option to grohtml (-P-T to groff)
+
+-----------------------------------------------------------------
+from Werner
+
+ but `pre-defined' appears as `pre&shy; line' (note the space
+ character after the soft hyphen). Something in the code makes
+ problems here...
+
+ (IIRC, I've sent you this man.1 file a few weeks ago).
+
+gaius> Werner fixed this by adding .cflags 0 -\(hy\(em\(en to tmac.html
+
+-----------------------------------------------------------------
+from Werner and Eddie
+> > > .LP
+> > > .URL Germany "ftp://groff.ffii.org/pub/groff/"
+> > > |
+> > > .URL USA "ftp://ftp.gnu.org/gnu/groff/"
+> >
+> > Problem: the first "|" of each line is missing a leading white space
+> > space.
+> >
+> > How to ensure the spaces get put there?
+>
+> This is a feature grohtml (unfortunately -- AFAIK, Gaius hasn't found
+> a good workaround yet). HTML stuff gets written as specials which
+> don't consume space for troff, causing some miscalculation if placed
+> at the beginning of a paragraph. A workaround is to write
+>
+> .LP
+> \&
+> .URL ...
+> |
+> .URL ...
+
+gaius> fixed by adding \& to HTML as per Werner's suggestion
+
+
+Werner writes:
+
+PNGs created by grohtml have apparently a white background -- isn't it
+possible to make the background transparent optionally?
+
+Another suggestion: What do you think about calling the PNG files
+<groff_input_file>-<index>.png or something like this? I can't see an
+advantage in the current naming scheme except for debugging purposes
+where it may be necessary to stay with the old files.
+
+--fixed-- 04 01 2000
+
+gaius> however I've had to retain a default grohtml-pid-index.png for all
+gaius> stdin as we don't know the filename.. sadly looks like everything..
+gaius> Nearly done by including a new tcommand 'F filename'
+
+--fixed-- 26 01 2000
+------------------------------------------------------------------
+
+.) The following code produces ugly results -- is it possible to make
+ the HTML result similar to the ascii output?
+
+.in +4m
+.ta 3iC
+.I "Plattform Plattform-ID (pid)"
+\&.sp
+.ta 3iR
+Apple Unicode 0
+.br
+Macintosh 1
+.br
+ISO 2
+.br
+Microsoft 3
+.PP
+
+--fixed-- 14/01/2000
+------------------------------------------------------------------
diff --git a/grohtml/design.ms b/src/devices/grohtml/design.ms
index e62e22330..6216d4eb5 100644..100755
--- a/grohtml/design.ms
+++ b/src/devices/grohtml/design.ms
@@ -122,33 +122,6 @@ has been spanned by words. Ie no gaps exist.
the documentation about these rules is particularly incomplete and needs finishing
when time prevails.
.SH
-To do
-.LP
-.IP (i) .5i
-finish working out the max and min x, y, extents for splines.
-.IP (ii) .5i
-check and test thoroughly all the character descriptions in devhtml
-(originally taken from devX100)
-.IP (iii) .5i
-improve tmac.arkup
-.IP (vi) .5i
-also improve documentation.
-.IP (v) .5i
-fix the bugs which are exposed by Eric Raymonds pic guide,
-\fBMaking Pictures With GNU PIC\fR. It appears that grohtml becomes confused
-about which sections of the document are text and which sections need
-to be rendered as an image.
-.IP (vi) .5i
-it would be nice to modularise the source. A natural division might be
-to extract the table handling code from html.cc into table.cc.
-The table.cc could be expanded to recognise output from tbl and try
-and generate html tables with lines/rules/boxes. The code as it stands
-should cope with very simple plain text tables. But of course at present
-it does not get a chance to do this because the output of gtbl is
-bracketed by \fCgraphic-start\fR and \fCgraphic-end\fR.
-.IP (vii) .5i
-introduce anti aliasing for the images as mentioned by Werner.
-.SH
Dependencies
.LP
Grohtml is dependent upon grops, gs which are invoked to
diff --git a/grohtml/grohtml.man b/src/devices/grohtml/grohtml.man
index 63b05edd3..1da666bcc 100644
--- a/grohtml/grohtml.man
+++ b/src/devices/grohtml/grohtml.man
@@ -28,7 +28,7 @@ grohtml \- html driver for groff
.SH SYNOPSIS
.B grohtml
[
-.B \-atvdgm?
+.B \-atTvdgm?
] [
.BI \-F dir
] [
@@ -107,6 +107,12 @@ The default in
.B grohtml
is that html tables are generated when appropriate.
.TP
+.B \-T
+forbids
+.B grohtml
+from generating images when processing output from tbl.
+This is useful when simple textual tables are being produced.
+.TP
.BI \-F dir
Search the directory
.IB dir /dev name
diff --git a/grohtml/html.cc b/src/devices/grohtml/html.cc
index 26b9279da..3dbbe05b2 100644..100755
--- a/grohtml/html.cc
+++ b/src/devices/grohtml/html.cc
@@ -28,6 +28,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "cset.h"
#include "html.h"
+#include "html_chars.h"
#include <time.h>
#ifdef HAVE_UNISTD_H
@@ -45,6 +46,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define MAX_TEMP_NAME 1024
#define MAX_STRING_LENGTH 4096
+#define MAX_CHAR_SIZE 50 // maximum length of character name
#define Y_FUDGE_MARGIN +0.83
#define A4_PAGE_LENGTH (11.6944-Y_FUDGE_MARGIN)
@@ -54,7 +56,10 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define GAP_SPACES 3 // how many spaces needed to guess a gap?
#define GAP_WIDTH_ONE_LINE 2 // 1/GAP_WIDTH_ONE_LINE inches required for one line table
#define CENTER_TOLERANCE 2 // how many pixels off center will we think a line or region is centered
-#define MIN_COLUMN 7 // minimum column size pixels
+#define MIN_COLUMN 7 // minimum column size pixels for multiple lines
+#define MIN_COLUMN_FOR_TWO_LINES 20 // minimum column size pixels for a 2 line table
+#define MIN_TEXT_PERCENT 5 // try and round to this percentage value for used columns
+#define PERCENT_THRESHOLD 20 // don't bother trying to increase and width greater than this
/*
@@ -82,6 +87,7 @@ static int auto_on = TRUE;
static int table_on = TRUE;
static int image_res = DEFAULT_IMAGE_RES;
static int debug_table_on = FALSE;
+static int table_image_on = TRUE; // default is to create images for tbl
static int linewidth = -1;
@@ -114,7 +120,6 @@ static int max (int a, int b)
}
}
-
/*
* is_subsection - returns TRUE if a1..a2 is within b1..b2
*/
@@ -125,7 +130,6 @@ static int is_subsection (int a1, int a2, int b1, int b2)
return( !((a1 < b1) || (a1 > b2) || (a2 < b1) || (a2 > b2)) );
}
-
/*
* is_intersection - returns TRUE if range a1..a2 intersects with b1..b2
*/
@@ -136,7 +140,6 @@ static int is_intersection (int a1, int a2, int b1, int b2)
return( ! ((a1 > b2) || (a2 < b1)) );
}
-
/*
* is_digit - returns TRUE if character, ch, is a digit.
*/
@@ -146,7 +149,6 @@ static int is_digit (char ch)
return( (ch >= '0') && (ch <= '9') );
}
-
/*
* more_than_line_break - returns TRUE should v1 and v2 differ by more than
* a simple line break.
@@ -157,7 +159,6 @@ static int more_than_line_break (int v1, int v2, int size)
return( abs(v1-v2)>size );
}
-
/*
* the class and methods for styles
*/
@@ -180,7 +181,7 @@ style::style()
}
style::style(font *p, int sz, int h, int sl, int no)
- : f(p), point_size(sz), height(h), slant(sl), font_no(no)
+ : f(p), point_size(sz), font_no(no), height(h), slant(sl)
{
}
@@ -210,7 +211,7 @@ struct char_block {
};
char_block::char_block()
-: next(0), used(0)
+: used(0), next(0)
{
}
@@ -300,7 +301,7 @@ text_glob::text_glob (style *s, char *string, unsigned int length,
int min_vertical, int min_horizontal,
int max_vertical, int max_horizontal, int is_command, int is_html)
: text_style(*s), text_string(string), text_length(length),
- minv(min_vertical), minh(min_horizontal), maxv(max_vertical), maxh(max_horizontal),
+ minv(min_vertical), maxv(max_vertical), minh(min_horizontal), maxh(max_horizontal),
is_raw_command(is_command), is_html_command(is_html)
{
}
@@ -317,7 +318,7 @@ text_glob::~text_glob ()
int text_glob::is_less (text_glob *a, text_glob *b)
{
- if (is_intersection(a->minv, a->maxv, b->minv, b->maxv)) {
+ if (is_intersection(a->minv+1, a->maxv-1, b->minv+1, b->maxv-1)) {
return( a->minh < b->minh );
} else {
return( a->maxv < b->maxv );
@@ -346,7 +347,7 @@ public:
};
graphic_glob::graphic_glob ()
- : minv(-1), maxv(-1), minh(-1), maxh(-1), code(0), size(0), nopoints(0), point(0)
+ : minv(-1), maxv(-1), minh(-1), maxh(-1), nopoints(0), point(0), size(0), code(0)
{
}
@@ -358,7 +359,7 @@ graphic_glob::~graphic_glob ()
}
graphic_glob::graphic_glob (int troff_code)
- : minv(-1), maxv(-1), minh(-1), maxh(-1), code(troff_code), size(0), nopoints(0), point(0)
+ : minv(-1), maxv(-1), minh(-1), maxh(-1), nopoints(0), point(0), size(0), code(troff_code)
{
}
@@ -646,14 +647,14 @@ void assign_min_max_for_arc (graphic_glob *g, int *p, double *c)
if (g->maxh < g->minh) {
if (debug_on) {
fprintf(stderr, "assert failed minh > maxh\n"); fflush(stderr);
- stop();
+ // stop();
}
g->maxh = g->minh;
}
if (g->maxv < g->minv) {
if (debug_on) {
fprintf(stderr, "assert failed minv > maxv\n"); fflush(stderr);
- stop();
+ // stop();
}
g->maxv = g->minv;
}
@@ -784,215 +785,6 @@ void page::add_spline (int code, int xc, int yc, int np, int *p, int size, int f
}
}
-/*
- * the classes and methods for simple_output manipulation
- */
-
-simple_output::simple_output(FILE *f, int n)
-: fp(f), max_line_length(n), col(0), need_space(0), fixed_point(0)
-{
-}
-
-simple_output &simple_output::set_file(FILE *f)
-{
- fp = f;
- col = 0;
- return *this;
-}
-
-simple_output &simple_output::copy_file(FILE *infp)
-{
- int c;
- while ((c = getc(infp)) != EOF)
- putc(c, fp);
- return *this;
-}
-
-simple_output &simple_output::end_line()
-{
- if (col != 0) {
- putc('\n', fp);
- col = 0;
- need_space = 0;
- }
- return *this;
-}
-
-simple_output &simple_output::special(const char *s)
-{
- return *this;
-}
-
-simple_output &simple_output::simple_comment(const char *s)
-{
- if (col != 0)
- putc('\n', fp);
- fputs("<!-- ", fp);
- fputs(s, fp);
- fputs(" -->\n", fp);
- col = 0;
- need_space = 0;
- return *this;
-}
-
-simple_output &simple_output::begin_comment(const char *s)
-{
- if (col != 0)
- putc('\n', fp);
- fputs("<!-- ", fp);
- fputs(s, fp);
- col = 5 + strlen(s);
- return *this;
-}
-
-simple_output &simple_output::end_comment()
-{
- if (need_space) {
- putc(' ', fp);
- }
- fputs(" -->\n", fp);
- col = 0;
- need_space = 0;
- return *this;
-}
-
-simple_output &simple_output::comment_arg(const char *s)
-{
- int len = strlen(s);
-
- if (col + len + 1 > max_line_length) {
- fputs("\n ", fp);
- col = 1;
- }
- fputs(s, fp);
- col += len + 1;
- return *this;
-}
-
-simple_output &simple_output::set_fixed_point(int n)
-{
- assert(n >= 0 && n <= 10);
- fixed_point = n;
- return *this;
-}
-
-simple_output &simple_output::put_delimiter(char c)
-{
- putc(c, fp);
- col++;
- need_space = 0;
- return *this;
-}
-
-simple_output &simple_output::put_string(const char *s, int n)
-{
- int i=0;
-
- while (i<n) {
- fputc(s[i], fp);
- i++;
- }
- col += n;
- return *this;
-}
-
-simple_output &simple_output::put_translated_string(const char *s)
-{
- int i=0;
-
- while (s[i] != (char)0) {
- if ((s[i] & 0x7f) == s[i]) {
- fputc(s[i], fp);
- }
- i++;
- }
- col += i;
- return *this;
-}
-
-simple_output &simple_output::put_string(const char *s)
-{
- int i=0;
-
- while (s[i] != '\0') {
- fputc(s[i], fp);
- i++;
- }
- col += i;
- return *this;
-}
-
-struct html_2_postscript {
- char *html_char;
- char *postscript_char;
-};
-
-static struct html_2_postscript char_conversions[] = {
- "+-", "char177",
- "eq", "=",
- "mu", "char215",
- NULL, NULL,
-};
-
-
-// this is an aweful hack which attempts to translate html characters onto
-// postscript characters. Can this be done inside the devhtml files?
-//
-// or should we read the devps files and find out the translations?
-//
-
-simple_output &simple_output::put_translated_char (const char *s)
-{
- int i=0;
-
- while (char_conversions[i].html_char != NULL) {
- if (strcmp(s, char_conversions[i].html_char) == 0) {
- put_string(char_conversions[i].postscript_char);
- return *this;
- } else {
- i++;
- }
- }
- put_string(s);
- return *this;
-}
-
-simple_output &simple_output::put_number(int n)
-{
- char buf[1 + INT_DIGITS + 1];
- sprintf(buf, "%d", n);
- int len = strlen(buf);
- put_string(buf, len);
- need_space = 1;
- return *this;
-}
-
-simple_output &simple_output::put_float(double d)
-{
- char buf[128];
-
- sprintf(buf, "%.4f", d);
- int len = strlen(buf);
- put_string(buf, len);
- need_space = 1;
- return *this;
-}
-
-
-simple_output &simple_output::put_symbol(const char *s)
-{
- int len = strlen(s);
-
- if (need_space) {
- putc(' ', fp);
- col++;
- }
- fputs(s, fp);
- col += len;
- need_space = 1;
- return *this;
-}
-
class html_font : public font {
html_font(const char *);
public:
@@ -1053,7 +845,7 @@ public:
title_desc::title_desc ()
- : has_been_found(FALSE), has_been_written(FALSE)
+ : has_been_written(FALSE), has_been_found(FALSE)
{
}
@@ -1102,8 +894,43 @@ struct text_defn {
int left; // the start of a word or text
int right; // the end of the text and beginning of white space
int is_used; // will this this column be used for words or space
+ int right_hits; // count of the number of words touching right position
+ int percent; // what percentage width should we use for this cell?
+};
+
+/*
+ * introduce a paragraph class so that we can nest paragraphs
+ * from plain html text and html tables.
+ */
+
+class html_paragraph {
+public:
+ html_paragraph (int in, int need, paragraph_type type, html_paragraph *prev);
+ ~html_paragraph ();
+
+ int in_paragraph;
+ int need_paragraph;
+ paragraph_type para_type;
+ html_paragraph *previous;
};
+/*
+ * html_paragraph - constructor, fill in the public fields.
+ */
+
+html_paragraph::html_paragraph (int in, int need, paragraph_type type, html_paragraph *prev)
+ : in_paragraph(in), need_paragraph(need),
+ para_type(type), previous(prev)
+{
+}
+
+/*
+ * html_paragraph - deconstructor
+ */
+
+html_paragraph::~html_paragraph ()
+{
+}
/*
* note that html_tables are currently only used to provide a better
@@ -1119,10 +946,11 @@ public:
int no_of_columns; // how many columns are we using?
struct text_defn *columns; // left and right margins for each column
int vertical_limit; // the limit of the table
+ int wrap_margin; // is the current rightmost margin able to wrap words?
};
html_table::html_table ()
- : no_of_columns(0), columns(0), vertical_limit(0)
+ : no_of_columns(0), columns(0), vertical_limit(0), wrap_margin(0)
{
}
@@ -1139,18 +967,15 @@ class html_printer : public printer {
int space_char_index;
int no_of_printed_pages;
int paper_length;
- enum { SBUF_SIZE = 256 };
+ enum { SBUF_SIZE = 8192 };
char sbuf[SBUF_SIZE];
int sbuf_len;
int sbuf_start_hpos;
int sbuf_vpos;
int sbuf_end_hpos;
- int sbuf_space_width;
- int sbuf_space_count;
- int sbuf_space_diff_count;
- int sbuf_space_code;
int sbuf_kern;
style sbuf_style;
+ int sbuf_dmark_hpos;
style output_style;
int output_hpos;
int output_vpos;
@@ -1164,18 +989,18 @@ class html_printer : public printer {
int page_number;
title_desc title;
header_desc header;
+ int header_indent;
page *page_contents;
html_table indentation;
int left_margin_indent;
int right_margin_indent;
int need_one_newline;
int issued_newline;
- int in_paragraph;
- int need_paragraph;
- paragraph_type para_type;
+ html_paragraph *current_paragraph;
char image_name[MAX_STRING_LENGTH];
int image_number;
int graphic_level;
+ int supress_sub_sup;
int start_region_vpos;
int start_region_hpos;
@@ -1186,7 +1011,6 @@ class html_printer : public printer {
struct graphic_glob *start_graphic;
struct text_glob *start_text;
-
void flush_sbuf ();
void set_style (const style &);
void set_space_code (unsigned char c);
@@ -1200,6 +1024,8 @@ class html_printer : public printer {
void terminate_current_font (void);
void flush_font (void);
void flush_page (void);
+ void add_char_to_sbuf (unsigned char code);
+ void add_to_sbuf (char code, const char *name);
void display_word (text_glob *g, int is_to_html);
void html_display_word (text_glob *g);
void troff_display_word (text_glob *g);
@@ -1225,16 +1051,20 @@ class html_printer : public printer {
int is_on_same_line (text_glob *g, int vpos);
int looks_like_subscript (text_glob *g);
int looks_like_superscript (text_glob *g);
+ int looks_like_smaller_font (text_glob *g);
+ int looks_like_larger_font (text_glob *g);
void begin_paragraph (paragraph_type p);
void begin_paragraph_no_height (paragraph_type p);
void force_begin_paragraph (void);
void end_paragraph (void);
+ void save_paragraph (void);
+ void restore_paragraph (void);
void html_newline (void);
void convert_to_image (char *name);
void write_title (int in_head);
void find_title (void);
int is_bold (text_glob *g);
- void write_header (void);
+ void write_header (text_glob *g);
void determine_header_level (void);
void build_header (text_glob *g);
void make_html_indent (int indent);
@@ -1256,25 +1086,28 @@ class html_printer : public printer {
void display_regions (void);
int check_able_to_use_table (text_glob *g);
int using_table_for_indent (void);
- int collect_columns (struct text_defn *line, struct text_defn *last, int max_words);
+ int collect_columns (struct text_defn *next_words, struct text_defn *next_cols,
+ struct text_defn *last_words, struct text_defn *last_cols,
+ int max_words);
void include_into_list (struct text_defn *line, struct text_defn *item);
int is_in_column (struct text_defn *line, struct text_defn *item, int max_words);
- int is_column_match (struct text_defn *match, struct text_defn *line1, struct text_defn *line2, int max_words);
+ int is_column_match (struct text_defn *match, struct text_defn *line1,
+ struct text_defn *line2, int max_words);
int count_columns (struct text_defn *line);
void rewind_text_to (text_glob *g);
int found_use_for_table (text_glob *start);
- void column_display_word (int vert, int left, int right, int next);
+ void column_display_word (int cell, int vert, int left, int right, int next);
void start_table (void);
void end_table (void);
void foreach_column_include_text (text_glob *start);
- void define_cell (int left, int right);
+ void define_cell (int i);
int column_calculate_left_margin (int left, int right);
int column_calculate_right_margin (int left, int right);
void display_columns (const char *word, const char *name, text_defn *line);
void calculate_right (struct text_defn *line, int max_words);
void determine_right_most_column (struct text_defn *line, int max_words);
int remove_white_using_words (struct text_defn *next_guess, struct text_defn *last_guess, struct text_defn *next_line);
- int copy_line (struct text_defn *dest, struct text_defn *src);
+ void copy_line (struct text_defn *dest, struct text_defn *src);
void combine_line (struct text_defn *dest, struct text_defn *src);
int conflict_with_words (struct text_defn *column_guess, struct text_defn *words);
void remove_entry_in_line (struct text_defn *line, int j);
@@ -1284,6 +1117,7 @@ class html_printer : public printer {
void add_right_full_width (struct text_defn *line, int mingap);
int is_continueous_column (text_defn *last_col, text_defn *next_line);
int is_exact_left (text_defn *last_col, text_defn *next_line);
+ int find_column_index_in_line (text_glob *t, text_defn *line);
void emit_space (text_glob *g, int force_space);
int is_in_middle (int left, int right);
int check_able_to_use_center (text_glob *g);
@@ -1295,8 +1129,47 @@ class html_printer : public printer {
int large_enough_gap (text_defn *last_col);
int is_worth_column (int left, int right);
int is_subset_of_columns (text_defn *a, text_defn *b);
- void count_hits (text_defn *col);
+ void count_hits (text_defn *col, int no_of_columns, int limit);
+ void count_right_hits (text_defn *col, int no_of_columns);
int calculate_min_gap (text_glob *g);
+ int right_indentation (struct text_defn *last_guess);
+ void calculate_percentage_width (text_glob *start);
+ int able_to_steal_width (void);
+ int need_to_steal_width (void);
+ int can_distribute_fairly (void);
+ void utilize_round_off (void);
+ int will_wrap_text (int i, text_glob *start);
+ int next_line_on_left_column (int i, text_glob *start);
+ void remove_table_column (int i);
+ void remove_unnecessary_unused (text_glob *start);
+ int is_small_table (int lines, struct text_defn *last_guess,
+ struct text_defn *words_1, struct text_defn *cols_1,
+ struct text_defn *words_2, struct text_defn *cols_2,
+ int *limit, int *limit_1);
+ int is_column_subset (struct text_defn *cols_1, struct text_defn *cols_2);
+ int is_appropriate_to_start_table (struct text_defn *cols_1, struct text_defn *cols_2,
+ struct text_defn *last_guess);
+ int is_a_full_width_column (void);
+ int right_most_column (struct text_defn *col);
+ int large_enough_gap_for_two (struct text_defn *col);
+ void remove_zero_percentage_column (void);
+ void translate_to_html (text_glob *g);
+ int html_knows_about (char *troff);
+ void determine_diacritical_mark (const char *name, const environment *env);
+ int sbuf_continuation (unsigned char code, const char *name, const environment *env, int w);
+ char *remove_last_char_from_sbuf ();
+ const char *check_diacritical_combination (unsigned char code, const char *name);
+ int seen_backwards_escape (char *s, int l);
+ int should_defer_table (int lines, struct text_glob *start, struct text_defn *cols_1);
+ int is_new_exact_right (struct text_defn *last_guess, struct text_defn *last_cols, struct text_defn *next_cols);
+ void issue_left_paragraph (void);
+ void adjust_margin_percentages (void);
+ int total_percentages (void);
+ int get_left (void);
+ void can_loose_column (text_glob *start, struct text_defn *last_guess, int limit);
+ int check_lack_of_hits (struct text_defn *next_guess, struct text_defn *last_guess, text_glob *start, int limit);
+
+ // ADD HERE
public:
html_printer();
@@ -1311,30 +1184,30 @@ public:
};
html_printer::html_printer()
-: no_of_printed_pages(0),
+: html(0, MAX_LINE_LENGTH),
+ troff(0, MAX_LINE_LENGTH),
+ no_of_printed_pages(0),
sbuf_len(0),
+ sbuf_dmark_hpos(-1),
output_hpos(-1),
output_vpos(-1),
- html(0, MAX_LINE_LENGTH),
- troff(0, MAX_LINE_LENGTH),
line_thickness(-1),
- inside_font_style(0),
fill(FILL_MAX + 1),
+ inside_font_style(0),
page_number(0),
+ header_indent(-1),
left_margin_indent(0),
right_margin_indent(0),
- start_region_vpos(0),
- start_region_hpos(0),
- end_region_vpos(0),
- end_region_hpos(0),
need_one_newline(0),
issued_newline(0),
image_number(0),
graphic_level(0),
- cutoff_heading(100),
- in_paragraph(0),
- need_paragraph(0),
- para_type(left_alignment)
+ supress_sub_sup(TRUE),
+ start_region_vpos(0),
+ start_region_hpos(0),
+ end_region_vpos(0),
+ end_region_hpos(0),
+ cutoff_heading(100)
{
tempfp = xtmpfile();
html.set_file(tempfp);
@@ -1355,22 +1228,282 @@ html_printer::html_printer()
r /= 10;
point++;
}
- res = r;
+ res = r;
html.set_fixed_point(point);
- space_char_index = font::name_to_index("space");
- paper_length = font::paperlength;
+ space_char_index = font::name_to_index("space");
+ paper_length = font::paperlength;
if (paper_length == 0)
- paper_length = 11*font::res;
- page_contents = new page;
+ paper_length = 11*font::res;
+ page_contents = new page;
- postscript_res = 72000;
+ postscript_res = 72000;
+ current_paragraph = new html_paragraph(FALSE, FALSE, left_alignment, 0);
}
+/*
+ * add_char_to_sbuf - adds a single character to the sbuf.
+ */
+
+void html_printer::add_char_to_sbuf (unsigned char code)
+{
+ if (sbuf_len < SBUF_SIZE) {
+ sbuf[sbuf_len] = code;
+ sbuf_len++;
+ } else {
+ fatal("need to increase SBUF_SIZE");
+ }
+}
+
+/*
+ * add_to_sbuf - adds character code or name to the sbuf.
+ * It escapes \ with \\
+ * We need to preserve the name of characters if they exist
+ * because we may need to send this character to two different
+ * devices: html and postscript.
+ */
+
+void html_printer::add_to_sbuf (char code, const char *name)
+{
+ if (name == 0) {
+ if (code == '\\') {
+ add_char_to_sbuf('\\');
+ }
+ add_char_to_sbuf(code);
+ } else {
+ int l=strlen(name);
+ int i=0;
+
+ add_char_to_sbuf('\\');
+ add_char_to_sbuf('(');
+ while (i<l) {
+ if (name[i] == '\\') {
+ add_char_to_sbuf('\\');
+ }
+ add_char_to_sbuf(name[i]);
+ i++;
+ }
+ add_char_to_sbuf('\\');
+ add_char_to_sbuf(')');
+ }
+}
+
+int html_printer::sbuf_continuation (unsigned char code, const char *name,
+ const environment *env, int w)
+{
+ if ((sbuf_end_hpos == env->hpos) || (sbuf_dmark_hpos == env->hpos)) {
+ name = check_diacritical_combination(code, name);
+ add_to_sbuf(code, name);
+ determine_diacritical_mark(name, env);
+ sbuf_end_hpos += w + sbuf_kern;
+ return( TRUE );
+ } else {
+ if ((sbuf_len < SBUF_SIZE-1) && (env->hpos >= sbuf_end_hpos) &&
+ ((sbuf_kern == 0) || (sbuf_end_hpos - sbuf_kern != env->hpos))) {
+ /*
+ * lets see whether a space is needed or not
+ */
+ int space_width = sbuf_style.f->get_space_width(sbuf_style.point_size);
+
+ if (env->hpos-sbuf_end_hpos < space_width) {
+ name = check_diacritical_combination(code, name);
+ add_to_sbuf(code, name);
+ determine_diacritical_mark(name, env);
+ sbuf_end_hpos = env->hpos + w;
+ return( TRUE );
+ }
+ } else if ((sbuf_len > 0) && (sbuf_dmark_hpos)) {
+ /*
+ * check whether the diacritical mark is on the same character
+ */
+ int space_width = sbuf_style.f->get_space_width(sbuf_style.point_size);
+
+ if (abs(sbuf_dmark_hpos-env->hpos) < space_width) {
+ name = check_diacritical_combination(code, name);
+ add_to_sbuf(code, name);
+ determine_diacritical_mark(name, env);
+ sbuf_end_hpos = env->hpos + w;
+ return( TRUE );
+ }
+ }
+ }
+ return( FALSE );
+}
+
+/*
+ * seen_backwards_escape - returns TRUE if we can see a escape at position i..l in s
+ */
+
+int html_printer::seen_backwards_escape (char *s, int l)
+{
+ /*
+ * this is tricky so it is broken into components for clarity
+ * (we let the compiler put in all back into a complex expression)
+ */
+ if ((l>0) && (sbuf[l] == '(') && (sbuf[l-1] == '\\')) {
+ /*
+ * ok seen '\(' but we must now check for '\\('
+ */
+ if ((l>1) && (sbuf[l-2] == '\\')) {
+ /*
+ * escaped the escape
+ */
+ return( FALSE );
+ } else {
+ return( TRUE );
+ }
+ } else {
+ return( FALSE );
+ }
+}
+
+/*
+ * reverse - return reversed string.
+ */
+
+char *reverse (char *s)
+{
+ int i=0;
+ int j=strlen(s)-1;
+ char t;
+
+ while (i<j) {
+ t = s[i];
+ s[i] = s[j];
+ s[j] = t;
+ i++;
+ j--;
+ }
+ return( s );
+}
+
+/*
+ * remove_last_char_from_sbuf - removes the last character from sbuf.
+ */
+
+char *html_printer::remove_last_char_from_sbuf ()
+{
+ int l=sbuf_len;
+ static char last[MAX_STRING_LENGTH];
+
+ if (l>0) {
+ l--;
+ if ((sbuf[l] == ')') && (l>0) && (sbuf[l-1] == '\\')) {
+ /*
+ * found terminating escape
+ */
+ int i=0;
+
+ l -= 2;
+ while ((l>0) && (! seen_backwards_escape(sbuf, l))) {
+ if (sbuf[l] == '\\') {
+ if (sbuf[l-1] == '\\') {
+ last[i] = sbuf[l];
+ i++;
+ l--;
+ }
+ } else {
+ last[i] = sbuf[l];
+ i++;
+ }
+ l--;
+ }
+ last[i] = (char)0;
+ sbuf_len = l;
+ if (seen_backwards_escape(sbuf, l)) {
+ sbuf_len--;
+ }
+ return( reverse(last) );
+ } else {
+ if ((sbuf[l] == '\\') && (l>0) && (sbuf[l-1] == '\\')) {
+ l -= 2;
+ sbuf_len = l;
+ return( "\\" );
+ } else {
+ sbuf_len--;
+ last[0] = sbuf[sbuf_len];
+ last[1] = (char)0;
+ return( last );
+ }
+ }
+ } else {
+ return( NULL );
+ }
+}
+
+/*
+ * check_diacriticial_combination - checks to see whether the character code
+ * if combined with the previous diacriticial mark
+ * forms a new character.
+ */
+
+const char *html_printer::check_diacritical_combination (unsigned char code, const char *name)
+{
+ static char troff_char[2];
+
+ if ((name == 0) && (sbuf_dmark_hpos >= 0)) {
+ // last character was a diacritical mark
+ char *last = remove_last_char_from_sbuf();
+
+ int i=0;
+ int j;
+
+ while (diacritical_table[i].mark != NULL) {
+ if (strcmp(diacritical_table[i].mark, last) == 0) {
+ j=0;
+ while ((diacritical_table[i].second_troff_char[j] != (char)0) &&
+ (diacritical_table[i].second_troff_char[j] != code)) {
+ j++;
+ }
+ if (diacritical_table[i].second_troff_char[j] == code) {
+ troff_char[0] = diacritical_table[i].translation;
+ troff_char[1] = code;
+ troff_char[2] = (char)0;
+ return( troff_char );
+ }
+ }
+ i++;
+ }
+ add_to_sbuf(last[0], last);
+ }
+ return( name );
+}
+
+/*
+ * determine_diacritical_mark - if name is a diacriticial mark the record the position.
+ * --fixme-- is there a better way of doing this
+ * this must be done in troff somewhere.
+ */
+
+void html_printer::determine_diacritical_mark (const char *name, const environment *env)
+{
+ if (name != 0) {
+ int i=0;
+
+ while (diacritical_table[i].mark != NULL) {
+ if (strcmp(name, diacritical_table[i].mark) == 0) {
+ sbuf_dmark_hpos = env->hpos;
+ return;
+ }
+ i++;
+ }
+ }
+ sbuf_dmark_hpos = -1;
+}
+
+/*
+ * set_char - adds a character into the sbuf if it is a continuation with the previous
+ * word otherwise flush the current sbuf and add character anew.
+ */
void html_printer::set_char(int i, font *f, const environment *env, int w, const char *name)
{
unsigned char code = f->get_code(i);
+#if 0
+ if (code == ' ') {
+ stop();
+ }
+#endif
style sty(f, env->size, env->height, env->slant, env->fontno);
if (sty.slant != 0) {
if (sty.slant > 80 || sty.slant < -80) {
@@ -1380,81 +1513,46 @@ void html_printer::set_char(int i, font *f, const environment *env, int w, const
}
if ((name != 0) && (page_contents->is_in_graphic)) {
flush_sbuf();
- int r=font::res; // resolution of the device actually
+ int r=font::res; // resolution of the device
page_contents->add_special_char(&sty, (char *)name, strlen(name),
env->vpos-sty.point_size*r/72, env->hpos,
- env->vpos, env->hpos+w);
+ env->vpos , env->hpos+w);
sbuf_end_hpos = env->hpos + w;
sbuf_start_hpos = env->hpos;
sbuf_vpos = env->vpos;
sbuf_style = sty;
sbuf_kern = 0;
- return;
- }
-
- if (sbuf_len > 0) {
- if (sbuf_len < SBUF_SIZE
- && sty == sbuf_style
- && sbuf_vpos == env->vpos) {
- if (sbuf_end_hpos == env->hpos) {
- sbuf[sbuf_len++] = code;
- sbuf_end_hpos += w + sbuf_kern;
- return;
- }
- /* If sbuf_end_hpos - sbuf_kern == env->hpos, we are better off
- starting a new string. */
- if (sbuf_len < SBUF_SIZE - 1 && env->hpos >= sbuf_end_hpos
- && (sbuf_kern == 0 || sbuf_end_hpos - sbuf_kern != env->hpos)) {
- if (sbuf_space_code < 0) {
-#if 0
- sbuf_space_code = ' ';
- sbuf_space_count++;
- sbuf_space_width = env->hpos - sbuf_end_hpos;
- sbuf_end_hpos = env->hpos + w + sbuf_kern;
- sbuf[sbuf_len++] = ' ';
- sbuf[sbuf_len++] = code;
- return;
-#endif
- } else {
- int diff = env->hpos - sbuf_end_hpos - sbuf_space_width;
- if (diff == 0) {
- sbuf_end_hpos = env->hpos + w + sbuf_kern;
- sbuf[sbuf_len++] = sbuf_space_code;
- sbuf[sbuf_len++] = code;
- sbuf_space_count++;
- if (diff == 1)
- sbuf_space_diff_count++;
- else if (diff == -1)
- sbuf_space_diff_count--;
- return;
- }
- }
- }
+ } else {
+ if ((sbuf_len > 0) && (sbuf_len < SBUF_SIZE) && (sty == sbuf_style) &&
+ (sbuf_vpos == env->vpos) && (sbuf_continuation(code, name, env, w))) {
+ return;
+ } else {
+ flush_sbuf();
+ sbuf_len = 0;
+ add_to_sbuf(code, name);
+ determine_diacritical_mark(name, env);
+ sbuf_end_hpos = env->hpos + w;
+ sbuf_start_hpos = env->hpos;
+ sbuf_vpos = env->vpos;
+ sbuf_style = sty;
+ sbuf_kern = 0;
}
- flush_sbuf();
}
- sbuf_len = 1;
- sbuf[0] = code;
- sbuf_end_hpos = env->hpos + w;
- sbuf_start_hpos = env->hpos;
- sbuf_vpos = env->vpos;
- sbuf_style = sty;
- sbuf_space_code = -1;
- sbuf_space_width = 0;
- sbuf_space_count = sbuf_space_diff_count = 0;
- sbuf_kern = 0;
}
-
/*
* make_new_image_name - creates a new file name ready for a image file.
- * it leaves the extension off.
*/
void html_printer::make_new_image_name (void)
{
image_number++;
- sprintf(image_name, "groff-html-%d-%d", image_number, getpid());
+ if ((strcmp(current_filename, "<standard input>") == 0) ||
+ (strcmp(current_filename, "-") == 0)) {
+ sprintf(image_name, "grohtml-%d-%ld", image_number, (long)getpid());
+ } else {
+ sprintf(image_name, "%s-%d-%ld", current_filename, image_number, (long)getpid());
+ }
}
/*
@@ -1477,6 +1575,120 @@ void html_printer::write_title (int in_head)
}
}
+/*
+ * get_html_translation - given the position of the character and its name
+ * return the device encoding for such character.
+ */
+
+char *get_html_translation (font *f, char *name)
+{
+ int index;
+
+ if ((f == 0) || (name == 0) || (strcmp(name, "") == 0)) {
+ return( NULL );
+ } else {
+ index = f->name_to_index(name);
+ if (index == 0) {
+ error("character `%s' not found", name);
+ return( NULL );
+ } else {
+ return( (char *)f->get_special_device_encoding(index) );
+ }
+ }
+}
+
+/*
+ * str_translate_to_html - converts a string, str, into html text. It places
+ * the output input buffer, buf. It truncates string, str, if
+ * there is not enough space in buf.
+ * It looks up the html character encoding of single characters
+ * if, and_single, is TRUE. Characters such as < > & etc.
+ */
+
+void str_translate_to_html (font *f, char *buf, int buflen, char *str, int len, int and_single)
+{
+ int l;
+ char *translation;
+ int e;
+ char escaped_char[MAX_STRING_LENGTH];
+ int i=0;
+ int b=0;
+ int t=0;
+
+#if 0
+ if (strcmp(str, "\\(\\\\-\\)") == 0) {
+ stop();
+ }
+#endif
+ while (str[i] != (char)0) {
+ if ((str[i]=='\\') && (i+1<len)) {
+ i++; // skip the leading backslash
+ if (str[i] == '(') {
+ // start of escape
+ i++;
+ e = 0;
+ while ((str[i] != (char)0) &&
+ (! ((str[i] == '\\') && (i+1<len) && (str[i+1] == ')')))) {
+ if (str[i] == '\\') {
+ i++;
+ }
+ escaped_char[e] = str[i];
+ e++;
+ i++;
+ }
+ if ((str[i] == '\\') && (i+1<len) && (str[i+1] == ')')) {
+ i += 2;
+ }
+ escaped_char[e] = (char)0;
+ if (e > 0) {
+ translation = get_html_translation(f, escaped_char);
+ if (translation) {
+ l = strlen(translation);
+ t = max(0, min(l, buflen-b));
+ strncpy(&buf[b], translation, t);
+ b += t;
+ } else {
+ int index=f->name_to_index(escaped_char);
+
+ if (index != 0) {
+ buf[b] = f->get_code(index);
+ b++;
+ }
+ }
+ }
+ }
+ } else {
+ if (and_single) {
+ char name[2];
+
+ name[0] = str[i];
+ name[1] = (char)0;
+ translation = get_html_translation(f, name);
+ if (translation) {
+ l = strlen(translation);
+ t = max(0, min(l, buflen-b));
+ strncpy(&buf[b], translation, t);
+ b += t;
+ } else {
+ if (b<buflen) {
+ buf[b] = str[i];
+ b++;
+ }
+ }
+ } else {
+ /*
+ * do not attempt to encode single characters
+ */
+ if (b<buflen) {
+ buf[b] = str[i];
+ b++;
+ }
+ }
+ i++;
+ }
+ }
+ buf[min(b, buflen)] = (char)0;
+}
/*
* find_title - finds a title to this document, if it exists.
@@ -1487,12 +1699,12 @@ void html_printer::find_title (void)
text_glob *t;
int r=font::res;
int removed_from_head;
+ char buf[MAX_STRING_LENGTH];
if ((page_number == 1) && (guess_on)) {
if (! page_contents->words.is_empty()) {
int end_title_hpos = 0;
- int start_title_hpos = 0;
int start_title_vpos = 0;
int found_title_start = FALSE;
int height = 0;
@@ -1521,11 +1733,13 @@ void html_printer::find_title (void)
return;
} else if (t->is_raw_command) {
// skip raw commands
+ page_contents->words.move_right(); // move onto next word
} else if ((!found_title_start) && (t->minh > left_margin_indent) &&
((start_region == -1) || (t->maxv < start_region))) {
start_title_vpos = t->minv;
end_title_hpos = t->minh;
- strcpy((char *)title.text, (char *)t->text_string);
+ str_translate_to_html(t->text_style.f, buf, MAX_STRING_LENGTH, t->text_string, t->text_length, TRUE);
+ strcpy((char *)title.text, buf);
height = t->text_style.point_size*r/72;
found_title_start = TRUE;
page_contents->words.sub_move_right();
@@ -1539,7 +1753,8 @@ void html_printer::find_title (void)
start_title_vpos = min(t->minv, start_title_vpos);
end_title_hpos = max(t->maxh, end_title_hpos);
strcat(title.text, " ");
- strcat(title.text, (char *)t->text_string);
+ str_translate_to_html(t->text_style.f, buf, MAX_STRING_LENGTH, t->text_string, t->text_length, TRUE);
+ strcat(title.text, buf);
page_contents->words.sub_move_right();
removed_from_head = ((!page_contents->words.is_empty()) &&
(page_contents->words.is_equal_to_head()));
@@ -1548,7 +1763,7 @@ void html_printer::find_title (void)
title.has_been_found = TRUE;
return;
}
- } else if (t->minh == left_margin_indent) {
+ } else if (t->minh <= left_margin_indent) {
// no margin exists
return;
} else {
@@ -1569,7 +1784,7 @@ void html_printer::html_newline (void)
int r = font::res;
int height = output_style.point_size*r/72;
- if (in_paragraph) {
+ if (current_paragraph->in_paragraph) {
// safe to generate a pretty newline
html.put_string("<br>\n");
} else {
@@ -1580,21 +1795,37 @@ void html_printer::html_newline (void)
}
/*
+ * issue_left_paragraph - emits a left paragraph together with appropriate
+ * margin if header_indent is < left_margin_indent.
+ */
+
+void html_printer::issue_left_paragraph (void)
+{
+ if ((header_indent < left_margin_indent) && (! using_table_for_indent())) {
+ html.put_string("<p style=\"margin-left: ");
+ html.put_number(((left_margin_indent-header_indent)*100)/(right_margin_indent-header_indent));
+ html.put_string("%\">");
+ } else {
+ html.put_string("<p>");
+ }
+}
+
+/*
* force_begin_paragraph - force the begin_paragraph to be emitted.
*/
void html_printer::force_begin_paragraph (void)
{
- if (in_paragraph && need_paragraph) {
- switch (para_type) {
+ if (current_paragraph->in_paragraph && current_paragraph->need_paragraph) {
+ switch (current_paragraph->para_type) {
- case left_alignment: html.put_string("<p>");
+ case left_alignment: issue_left_paragraph();
break;
case center_alignment: html.put_string("<p align=center>");
break;
default: fatal("unknown paragraph alignment type");
}
- need_paragraph = FALSE;
+ current_paragraph->need_paragraph = FALSE;
}
}
@@ -1605,18 +1836,18 @@ void html_printer::force_begin_paragraph (void)
void html_printer::begin_paragraph (paragraph_type p)
{
- if (! in_paragraph) {
- int r = font::res;
- int height = output_style.point_size*r/72;
+ if (! current_paragraph->in_paragraph) {
+ int r = font::res;
+ int height = output_style.point_size*r/72;
if (output_vpos >=0) {
// we leave it alone if it is set to the top of page
output_vpos += height;
}
- need_paragraph = TRUE; // delay the <p> just in case we don't actually emit text
- in_paragraph = TRUE;
- issued_newline = TRUE;
- para_type = p;
+ current_paragraph->need_paragraph = TRUE; // delay the <p> just in case we don't actually emit text
+ current_paragraph->in_paragraph = TRUE;
+ current_paragraph->para_type = p;
+ issued_newline = TRUE;
}
}
@@ -1628,11 +1859,11 @@ void html_printer::begin_paragraph (paragraph_type p)
void html_printer::begin_paragraph_no_height (paragraph_type p)
{
- if (! in_paragraph) {
- need_paragraph = TRUE; // delay the <p> just in case we don't actually emit text
- in_paragraph = TRUE;
- issued_newline = TRUE;
- para_type = p;
+ if (! current_paragraph->in_paragraph) {
+ current_paragraph->need_paragraph = TRUE; // delay the <p> just in case we don't actually emit text
+ current_paragraph->in_paragraph = TRUE;
+ current_paragraph->para_type = p;
+ issued_newline = TRUE;
}
}
@@ -1643,19 +1874,50 @@ void html_printer::begin_paragraph_no_height (paragraph_type p)
void html_printer::end_paragraph (void)
{
- if (in_paragraph) {
+ if (current_paragraph->in_paragraph) {
// check whether we have generated any text inbetween the potential paragraph begin end
- if (! need_paragraph) {
+ if (! current_paragraph->need_paragraph) {
int r = font::res;
int height = output_style.point_size*r/72;
output_vpos += height;
+ terminate_current_font();
html.put_string("</p>\n");
+ } else {
+ terminate_current_font();
}
- terminate_current_font();
- para_type = left_alignment;
- in_paragraph = FALSE;
+ current_paragraph->para_type = left_alignment;
+ current_paragraph->in_paragraph = FALSE;
+ }
+}
+
+/*
+ * save_paragraph - saves the current paragraph state and
+ * creates new paragraph state.
+ */
+
+void html_printer::save_paragraph (void)
+{
+ if (current_paragraph == 0) {
+ fatal("current_paragraph is NULL");
}
+ current_paragraph = new html_paragraph(current_paragraph->in_paragraph,
+ current_paragraph->need_paragraph,
+ current_paragraph->para_type,
+ current_paragraph);
+ terminate_current_font();
+}
+
+/*
+ * restore_paragraph - restores the previous paragraph state.
+ */
+
+void html_printer::restore_paragraph (void)
+{
+ html_paragraph *old = current_paragraph;
+
+ current_paragraph = current_paragraph->previous;
+ free(old);
}
/*
@@ -1675,7 +1937,7 @@ void html_printer::calculate_margin (void)
if (! page_contents->words.is_empty()) {
- // firstly check the words right margin
+ // firstly check the words to determine the right margin
page_contents->words.start_from_head();
do {
@@ -1683,13 +1945,16 @@ void html_printer::calculate_margin (void)
if ((w->maxh >= 0) && (w->maxh > right_margin_indent)) {
right_margin_indent = w->maxh;
#if 0
- if (right_margin_indent == 950) stop();
+ if (right_margin_indent == 758) stop();
#endif
}
page_contents->words.move_right();
} while (! page_contents->words.is_equal_to_head());
}
+ /*
+ * only examine graphics if no words present
+ */
if (! page_contents->lines.is_empty()) {
// now check for diagrams for right margin
page_contents->lines.start_from_head();
@@ -1705,20 +1970,31 @@ void html_printer::calculate_margin (void)
} while (! page_contents->lines.is_equal_to_head());
}
- // now we know the right margin lets do the same to find left margin
+ /*
+ * now we know the right margin lets do the same to find left margin
+ */
+ if (header_indent == -1) {
+ header_indent = right_margin_indent;
+ }
left_margin_indent = right_margin_indent;
-
+
if (! page_contents->words.is_empty()) {
do {
w = page_contents->words.get_data();
if ((w->minh >= 0) && (w->minh < left_margin_indent)) {
- left_margin_indent = w->minh;
+ if (! is_a_header(w) && (! w->is_raw_command)) {
+ left_margin_indent = w->minh;
+ }
}
page_contents->words.move_right();
} while (! page_contents->words.is_equal_to_head());
}
+ /*
+ * only examine graphic for margins if text yields nothing
+ */
+
if (! page_contents->lines.is_empty()) {
// now check for diagrams
page_contents->lines.start_from_head();
@@ -1733,7 +2009,6 @@ void html_printer::calculate_margin (void)
}
}
-
/*
* calculate_region - runs through the graphics globs and text globs
* and ensures that all graphic routines
@@ -1773,7 +2048,6 @@ void page::calculate_region (void)
void html_printer::remove_redundant_regions (void)
{
region_glob *r;
- graphic_glob *g;
// firstly run through the region making sure that all are needed
// ie all contain a line or word
@@ -2167,6 +2441,15 @@ void html_printer::convert_to_image (char *name)
(end_region_hpos-start_region_hpos)*image_res/font::res+IMAGE_BOARDER_PIXELS,
(end_region_vpos-start_region_vpos)*image_res/font::res+IMAGE_BOARDER_PIXELS,
name, image_name);
+#if 0
+ sprintf(buffer,
+ "echo showpage | gs -q -dSAFER -sDEVICE=ppmraw -r%d -g%dx%d -sOutputFile=- %s.ps - > %s.pnm ; pnmtopng -transparent white %s.pnm > %s.png \n",
+ /* image_device, */
+ image_res,
+ (end_region_hpos-start_region_hpos)*image_res/font::res+IMAGE_BOARDER_PIXELS,
+ (end_region_vpos-start_region_vpos)*image_res/font::res+IMAGE_BOARDER_PIXELS,
+ name, name, name, image_name);
+#endif
}
if (debug_on) {
fprintf(stderr, "%s", buffer);
@@ -2190,7 +2473,7 @@ void html_printer::prologue (void)
void html_printer::create_temp_name (char *name, char *extension)
{
make_new_image_name();
- sprintf(name, "/tmp/%s.%s", image_name, extension);
+ sprintf(name, "/tmp/grohtml-%d-%ld.%s", image_number, (long)getpid(), extension);
}
void html_printer::display_globs (int is_to_html)
@@ -2199,8 +2482,6 @@ void html_printer::display_globs (int is_to_html)
graphic_glob *g=0;
FILE *f=0;
char name[MAX_TEMP_NAME];
- char buffer[1024];
- int r=font::res;
int something=FALSE;
int is_center=FALSE;
@@ -2283,11 +2564,10 @@ void html_printer::display_globs (int is_to_html)
convert_to_image(name);
if (is_center) {
+ end_paragraph();
begin_paragraph(center_alignment);
- } else {
- begin_paragraph(left_alignment);
+ force_begin_paragraph();
}
- force_begin_paragraph();
html.put_string("<img src=\"");
html.put_string(image_name);
if (image_type == gif) {
@@ -2295,17 +2575,17 @@ void html_printer::display_globs (int is_to_html)
} else {
html.put_string(".png\"");
}
- if (is_center) {
- html.put_string(" align=\"middle\"");
- }
html.put_string(">\n");
html_newline();
- end_paragraph();
+ if (is_center) {
+ end_paragraph();
+ }
output_vpos = end_region_vpos;
output_hpos = 0;
need_one_newline = FALSE;
output_style.f = 0;
+ end_paragraph();
}
// unlink(name); // remove troff file
}
@@ -2314,8 +2594,9 @@ void html_printer::display_globs (int is_to_html)
void html_printer::flush_page (void)
{
calculate_margin();
- output_vpos = -1;
- output_hpos = left_margin_indent;
+ output_vpos = -1;
+ output_hpos = get_left();
+ supress_sub_sup = TRUE;
#if 0
dump_page();
#endif
@@ -2325,7 +2606,7 @@ void html_printer::flush_page (void)
page_contents->calculate_region();
remove_duplicate_regions();
find_title();
-
+ supress_sub_sup = TRUE;
traverse_page_regions();
terminate_current_font();
if (need_one_newline) {
@@ -2398,14 +2679,22 @@ void html_printer::html_change_font (text_glob *g, const char *fontname, int siz
write_html_font_type(oldfontname, "</", ">");
}
}
- if (fontname != 0) {
+
+ if ((output_style.point_size != size) && (output_style.point_size != 0)) {
+ // shutdown the previous font size
+ html.put_string("</font>");
+ }
+
+ if ((output_style.point_size != size) && (size != 0)) {
// now emit the size if it has changed
- if (((output_style.f == 0) || (output_style.point_size != size)) && (size != 0)) {
- sprintf(buffer, "<font size=%d>", convertSizeToHTML(size));
- html.put_string(buffer);
- output_style.point_size = size; // and remember the size
- }
+ sprintf(buffer, "<font size=%d>", convertSizeToHTML(size));
+ html.put_string(buffer);
+ output_style.point_size = size; // and remember the size
+ }
+ output_style.f = 0; // no style at present
+ output_style.point_size = size; // remember current font size
+ if (fontname != 0) {
if (! g->is_raw_command) {
// now emit the new font
write_html_font_face(fontname, "<", ">");
@@ -2415,8 +2704,6 @@ void html_printer::html_change_font (text_glob *g, const char *fontname, int siz
output_style = g->text_style; // remember style for next time
}
- } else {
- output_style.f = 0; // no style at present
}
}
@@ -2431,11 +2718,8 @@ void html_printer::change_font (text_glob *g, int is_to_html)
if (g->text_style.f != 0) {
fontname = g->text_style.f->get_name();
size = (font::res/(72*font::sizescale))*g->text_style.point_size;
-
- html_change_font(g, fontname, size);
- } else {
- html_change_font(g, fontname, size);
}
+ html_change_font(g, fontname, size);
}
} else {
// is to troff
@@ -2455,7 +2739,6 @@ void html_printer::change_font (text_glob *g, int is_to_html)
}
}
-
/*
* is_bold - returns TRUE if the text inside, g, is using a bold face.
* It returns FALSE is g contains a raw html command, even if this uses
@@ -2490,7 +2773,7 @@ void html_printer::terminate_current_font (void)
html_change_font(&g, 0, 0);
}
-void html_printer::write_header (void)
+void html_printer::write_header (text_glob *g)
{
if (strlen(header.header_buffer) > 0) {
if (header.header_level > 7) {
@@ -2511,16 +2794,24 @@ void html_printer::write_header (void)
header.no_of_headings++;
- text_glob *g=new text_glob(&st,
+ text_glob *h=new text_glob(&st,
header.headings.add_string(header.header_buffer, strlen(header.header_buffer)),
strlen(header.header_buffer),
header.no_of_headings, header.header_level,
header.no_of_headings, header.header_level,
FALSE, FALSE);
- header.headers.add(g); // and add this header to the header list
+ header.headers.add(h); // and add this header to the header list
+ } else {
+ terminate_current_font();
+ end_paragraph();
+ }
+
+ // we adjust the margin if necessary
+
+ if (g->minh < left_margin_indent) {
+ header_indent = g->minh;
}
- end_paragraph();
// and now we issue the real header
html.put_string("<h");
html.put_number(header.header_level);
@@ -2529,6 +2820,7 @@ void html_printer::write_header (void)
html.put_string("</h");
html.put_number(header.header_level);
html.put_string(">");
+
need_one_newline = FALSE;
begin_paragraph(left_alignment);
header.written_header = TRUE;
@@ -2536,6 +2828,19 @@ void html_printer::write_header (void)
}
/*
+ * translate_str_to_html - translates a string, str, into html representation.
+ * len indicates the string length.
+ */
+
+void translate_str_to_html (font *f, char *str, int len)
+{
+ char buf[MAX_STRING_LENGTH];
+
+ str_translate_to_html(f, buf, MAX_STRING_LENGTH, str, len, TRUE);
+ strncpy(str, buf, max(len, strlen(buf)+1));
+}
+
+/*
* write_headings - emits a list of links for the headings in this document
*/
@@ -2572,16 +2877,16 @@ void html_printer::determine_header_level (void)
void html_printer::build_header (text_glob *g)
{
- int r = font::res;
- int height = g->text_style.point_size*r/72;
text_glob *l;
int current_vpos;
+ char buf[MAX_STRING_LENGTH];
strcpy(header.header_buffer, "");
do {
l = g;
current_vpos = g->minv;
- strcat(header.header_buffer, (char *)g->text_string);
+ str_translate_to_html(g->text_style.f, buf, MAX_STRING_LENGTH, g->text_string, g->text_length, TRUE);
+ strcat(header.header_buffer, (char *)buf);
page_contents->words.move_right();
g = page_contents->words.get_data();
if (g->minv == current_vpos) {
@@ -2665,10 +2970,10 @@ int html_printer::is_a_header (text_glob *g)
int html_printer::processed_header (text_glob *g)
{
- if ((guess_on) && (g->minh == left_margin_indent) && (! using_table_for_indent()) &&
+ if ((guess_on) && (g->minh <= left_margin_indent) && (! using_table_for_indent()) &&
(is_a_header(g))) {
build_header(g);
- write_header();
+ write_header(g);
return( TRUE );
} else {
return( FALSE );
@@ -2710,17 +3015,65 @@ void html_printer::move_horizontal (text_glob *g, int left_margin)
}
}
+/*
+ * looks_like_subscript - returns TRUE if, g, looks like a subscript.
+ */
+
int html_printer::looks_like_subscript (text_glob *g)
{
- return(((output_vpos < g->minv) && (output_style.point_size != 0) &&
- (output_style.point_size > g->text_style.point_size)));
+ int r = font::res;
+ int height = output_style.point_size*r/72;
+
+ /* was return( ((output_vpos < g->minv) && (output_style.point_size != 0) &&
+ * (output_style.point_size > g->text_style.point_size)) );
+ */
+
+ return( (output_style.point_size != 0) && (! supress_sub_sup) && (output_vpos+height < g->maxv) );
}
+/*
+ * looks_like_superscript - returns TRUE if, g, looks like a superscript.
+ */
int html_printer::looks_like_superscript (text_glob *g)
{
- return(((output_vpos > g->minv) && (output_style.point_size != 0) &&
- (output_style.point_size > g->text_style.point_size)));
+ int r = font::res;
+ int height = output_style.point_size*r/72;
+
+/* was
+ * return(((output_vpos > g->minv) && (output_style.point_size != 0) &&
+ * (output_style.point_size > g->text_style.point_size)));
+ */
+
+ return( (output_style.point_size != 0) && (! supress_sub_sup) && (output_vpos+height > g->maxv) );
+}
+
+/*
+ * looks_like_larger_font - returns TRUE if, g, can be treated as a larger font.
+ * g needs to be on the same line
+ */
+
+int html_printer::looks_like_larger_font (text_glob *g)
+{
+ int r = font::res;
+ int height = output_style.point_size*r/72;
+
+ return( (output_vpos+height == g->maxv) && (output_style.point_size != 0) &&
+ (convertSizeToHTML(g->text_style.point_size)+1 == convertSizeToHTML(output_style.point_size)) );
+}
+
+/*
+ * looks_like_smaller_font - returns TRUE if, g, can be treated as a smaller font.
+ * g needs to be on the same line
+ */
+
+int html_printer::looks_like_smaller_font (text_glob *g)
+{
+ int r = font::res;
+ int height = output_style.point_size*r/72;
+
+ return( (output_vpos+height == g->maxv) && (output_style.point_size != 0) &&
+ (convertSizeToHTML(g->text_style.point_size) == convertSizeToHTML(output_style.point_size)+1) );
}
/*
@@ -2732,15 +3085,21 @@ int html_printer::looks_like_superscript (text_glob *g)
int html_printer::pretend_is_on_same_line (text_glob *g, int left_margin, int right_margin)
{
return( auto_on && (right_margin == output_hpos) && (left_margin == g->minh) &&
- (right_margin != g->maxh) && ((! is_whole_line_bold(g)) || (g->text_style.f == output_style.f)) );
+ (right_margin != g->maxh) && ((! is_whole_line_bold(g)) || (g->text_style.f == output_style.f)) &&
+ (! (using_table_for_indent()) || (indentation.wrap_margin)) );
}
int html_printer::is_on_same_line (text_glob *g, int vpos)
{
+#if 0
+ if (g->is_html_command) {
+ stop();
+ }
+#endif
return(
(vpos >= 0) &&
- is_intersection(vpos, vpos+g->text_style.point_size*font::res/72-1, g->minv, g->maxv)
- );
+ (is_intersection(vpos, vpos+g->text_style.point_size*font::res/72-1, g->minv, g->maxv))
+ );
}
@@ -2750,11 +3109,11 @@ int html_printer::is_on_same_line (text_glob *g, int vpos)
void html_printer::make_html_indent (int indent)
{
- int r=font::res;
-
- html.put_string("<span style=\" text-indent: ");
- html.put_float(((double)(indent)/((double)r)));
- html.put_string("in;\"></span>");
+ if (indent > 0) {
+ html.put_string("<span style=\" text-indent: ");
+ html.put_number((indent*100)/(right_margin_indent-get_left()));
+ html.put_string("%;\"></span>");
+ }
}
/*
@@ -2774,53 +3133,133 @@ int html_printer::using_table_for_indent (void)
int html_printer::calculate_min_gap (text_glob *g)
{
- return( g->text_style.f->get_space_width(g->text_style.point_size)*GAP_SPACES );
+ text_glob *t = g;
+
+ while ((t->is_raw_command) && (! page_contents->words.is_equal_to_tail()) &&
+ ((t->minv < end_region_vpos) || (end_region_vpos < 0))) {
+ page_contents->words.move_right();
+ t=page_contents->words.get_data();
+ }
+ rewind_text_to(g);
+ if (t->is_raw_command) {
+ return( font::res * 10 ); // impossibly large gap width
+ } else {
+ return( t->text_style.f->get_space_width(t->text_style.point_size)*GAP_SPACES );
+ }
}
/*
* collect_columns - place html text in a column and return the vertical limit reached.
*/
-int html_printer::collect_columns (struct text_defn *line, struct text_defn *last, int max_words)
+int html_printer::collect_columns (struct text_defn *next_words,
+ struct text_defn *next_cols,
+ struct text_defn *last_words,
+ struct text_defn *last_cols,
+ int max_words)
{
text_glob *start = page_contents->words.get_data();
text_glob *t = start;
int upper_limit = 0;
- line[0].left = 0;
- line[0].right = 0;
+ /*
+ * initialize cols and words
+ */
+ next_words[0].left = 0;
+ next_words[0].right = 0;
+ next_cols [0].left = 0;
+ next_cols [0].right = 0;
+
+ /*
+ * if we have not reached the end collect the words on the current line
+ */
if (start != 0) {
int graphic_limit = end_region_vpos;
- if (is_whole_line_bold(t) && (t->minh == left_margin_indent)) {
- // found header therefore terminate indentation table
- upper_limit = -t->minv; // so we know a header has stopped the column
+ if (is_whole_line_bold(t) && (t->minh <= left_margin_indent)) {
+ /*
+ * found header therefore terminate indentation table.
+ * Return a negative number so we know a header has
+ * stopped the column
+ */
+ upper_limit = -t->minv;
} else {
- int i =0;
- int j =0;
+ int i =0; // is the index into next_cols
+ int j =0; // is the column index for last_cols
+ int k =0; // is the index into next_words
+ int l =0; // is the index into next_words
int prevh =0;
int mingap =calculate_min_gap(start);
+ /*
+ * while words on the same line record them and any significant gaps
+ */
while ((t != 0) && (is_on_same_line(t, start->minv) && (i<max_words)) &&
((graphic_limit == -1) || (graphic_limit > t->minv))) {
- while ((last != 0) && (j<max_words) && (last[j].left != 0) && (last[j].left < t->minh)) {
- j++;
- }
- // t->minh might equal t->maxh when we are passing a special device character via \X
- // we currently ignore these when considering tables
- if (((t->minh - prevh >= mingap) || ((last != 0) && (last[j].left != 0) && (t->minh == last[j].left))) &&
+
+ /*
+ * now find column index from the last line which corresponds to, t.
+ */
+ j = find_column_index_in_line(t, last_cols);
+
+ /*
+ * now find word index from the last line which corresponds to, t.
+ */
+ l = find_column_index_in_line(t, last_words);
+
+ /*
+ * Note t->minh might equal t->maxh when we are passing a special device character via \X
+ * we currently ignore this when considering tables
+ *
+ * if we have found a significant gap then record it
+ */
+ if (((t->minh - prevh >= mingap) ||
+ ((last_cols != 0) && (last_cols [j].left != 0) && (t->minh == last_cols [j].left))) &&
(t->minh != t->maxh)) {
- line[i].left = t->minh;
- line[i].right = t->maxh;
+ next_cols[i].left = t->minh;
+ next_cols[i].right = t->maxh;
i++;
+ /*
+ * terminate the array
+ */
+ if (i<max_words) {
+ next_cols[i].left = 0;
+ next_cols[i].right = 0;
+ }
} else if (i>0) {
- line[i-1].right = t->maxh;
+ /*
+ * move previous right hand column to align with, t.
+ */
+
+ if (t->minh > next_cols[i-1].left) {
+ /*
+ * a simple precaution in case we get globs which are technically on the same line
+ * (sadly this does occur sometimes - maybe we should be stricter with is_on_same_line)
+ * --fixme--
+ */
+ next_cols[i-1].right = max(next_cols[i-1].right, t->maxh);
+ }
}
-
- // and record the vertical upper limit
+ /*
+ * remember to record the individual words
+ */
+ next_words[k].left = t->minh;
+ next_words[k].right = t->maxh;
+ k++;
+
+ /*
+ * and record the vertical upper limit
+ */
upper_limit = max(t->minv, upper_limit);
+ /*
+ * and update prevh - used to detect a when a different line is seen
+ */
prevh = t->maxh;
+
+ /*
+ * get next word into, t, which equals 0, if no word is found
+ */
page_contents->words.move_right();
t = page_contents->words.get_data();
if (page_contents->words.is_equal_to_head()) {
@@ -2828,10 +3267,35 @@ int html_printer::collect_columns (struct text_defn *line, struct text_defn *las
}
}
- if (i<max_words) {
- line[i].left = 0;
- line[i].right = 0;
+ /*
+ * and terminate the next_words array
+ */
+
+ if (k<max_words) {
+ next_words[k].left = 0;
+ next_words[k].right = 0;
+ }
+
+ /*
+ * consistency check, next_cols, after removing redundant colums.
+ */
+
+ remove_redundant_columns(next_cols);
+
+#if 0
+ for (k=0; k<count_columns(next_cols); k++) {
+ if (next_cols[k].left > next_cols[k].right) {
+ fprintf(stderr, "left > right\n"); fflush(stderr);
+ stop();
+ fatal("next_cols has messed up columns");
+ }
+ if ((k>0) && (k+1<count_columns(next_cols)) && (next_cols[k].right > next_cols[k+1].left)) {
+ fprintf(stderr, "next_cols[k].right > next_cols[k+1].left\n"); fflush(stderr);
+ stop();
+ fatal("next_cols has messed up columns");
+ }
}
+#endif
}
}
return( upper_limit );
@@ -3090,6 +3554,46 @@ int html_printer::is_column_match (struct text_defn *match,
return( found );
}
+/*
+ * check_lack_of_hits - returns TRUE if a column has been moved to a position
+ * of only one hit from a position of more than one hit.
+ */
+
+int html_printer::check_lack_of_hits (struct text_defn *next_guess,
+ struct text_defn *last_guess,
+ text_glob *start, int limit)
+{
+ text_glob *current=page_contents->words.get_data();
+ int n=count_columns(last_guess);
+ int m=count_columns(next_guess);
+ int i, j;
+
+ if (limit > 0) {
+ rewind_text_to(start);
+ count_hits(last_guess, n, limit);
+ rewind_text_to(current);
+ i=0;
+ j=0;
+ while ((i<n) && (j<m) &&
+ (last_guess[i].left != 0) && (next_guess[j].left != 0)) {
+ if ((is_intersection(last_guess[i].left, last_guess[i].right,
+ next_guess[j].left, next_guess[j].right)) &&
+ (next_guess[j].left < last_guess[i].left) &&
+ (last_guess[i].is_used >= 2)) {
+ /*
+ * next_guess has to be = 1 as this position is new
+ */
+ return( TRUE );
+ }
+ if (last_guess[i].left < next_guess[j].left) {
+ i++;
+ } else {
+ j++;
+ }
+ }
+ }
+ return( FALSE );
+}
/*
* remove_white_using_words - remove white space in, last_guess, by examining, next_line
@@ -3140,6 +3644,12 @@ int html_printer::remove_white_using_words (struct text_defn *next_guess,
}
}
}
+ while (next_line[k].left != 0) {
+ next_guess[i].left = next_line[k].left;
+ next_guess[i].right = next_line[k].right;
+ i++;
+ k++;
+ }
if (i<MAX_WORDS_PER_LINE) {
next_guess[i].left = 0;
next_guess[i].right = 0;
@@ -3186,6 +3696,35 @@ void html_printer::rewind_text_to (text_glob *g)
}
/*
+ * can_loose_column - checks to see whether we should combine two columns.
+ * This is allowed if there are is only one hit on the
+ * left hand edge and the previous column is very close.
+ */
+
+void html_printer::can_loose_column (text_glob *start, struct text_defn *last_guess, int limit)
+{
+ text_glob *current=page_contents->words.get_data();
+ int n=count_columns(last_guess);
+ int i;
+
+ rewind_text_to(start);
+ count_hits(last_guess, n, limit);
+ i=0;
+ while (i<n-1) {
+ if ((last_guess[i+1].is_used == 1) &&
+ (calculate_min_gap(start) > (last_guess[i+1].left-last_guess[i].right))) {
+ last_guess[i].right = last_guess[i+1].right;
+ remove_entry_in_line(last_guess, i+1);
+ n = count_columns(last_guess);
+ i = 0;
+ } else {
+ i++;
+ }
+ }
+ rewind_text_to(current);
+}
+
+/*
* display_columns - a long overdue debugging function, as this column code is causing me grief :-(
*/
@@ -3195,7 +3734,7 @@ void html_printer::display_columns (const char *word, const char *name, text_def
fprintf(stderr, "[%s:%s]", name, word);
while (line[i].left != 0) {
- fprintf(stderr, " <left=%d right=%d> ", line[i].left, line[i].right);
+ fprintf(stderr, " <left=%d right=%d %d%%> ", line[i].left, line[i].right, line[i].percent);
i++;
}
fprintf(stderr, "\n");
@@ -3206,7 +3745,7 @@ void html_printer::display_columns (const char *word, const char *name, text_def
* copy_line - dest = src
*/
-int html_printer::copy_line (struct text_defn *dest, struct text_defn *src)
+void html_printer::copy_line (struct text_defn *dest, struct text_defn *src)
{
int k;
@@ -3230,9 +3769,9 @@ void html_printer::add_column_gaps (struct text_defn *line)
struct text_defn t;
// firstly lets see whether we need an initial column on the left hand side
- if ((line[0].left != left_margin_indent) && (line[0].left != 0) &&
- (left_margin_indent < line[0].left) && (is_worth_column(left_margin_indent, line[0].left))) {
- t.left = left_margin_indent;
+ if ((line[0].left != get_left()) && (line[0].left != 0) &&
+ (get_left() < line[0].left) && (is_worth_column(get_left(), line[0].left))) {
+ t.left = get_left();
t.right = line[0].left;
include_into_list(line, &t);
}
@@ -3248,7 +3787,7 @@ void html_printer::add_column_gaps (struct text_defn *line)
i++;
}
}
- // lastly lets see whether we need a final column on the right hand side
+ // now let us see whether we need a final column on the right hand side
if ((i>0) && (line[i-1].right != right_margin_indent) &&
(is_worth_column(line[i-1].right, right_margin_indent))) {
t.left = line[i-1].right;
@@ -3312,9 +3851,9 @@ int html_printer::continue_searching_column (text_defn *next_col,
int words = count_columns(all_words);
if ((words == 0) || ((words == 1) &&
- (all_words[0].left == left_margin_indent) &&
+ (all_words[0].left == left_margin_indent) &&
(all_words[0].right == right_margin_indent))) {
- // no point as we have now seen a full line of contineous text
+ // no point as we have now seen a full line of contineous text with no gap
return( FALSE );
}
return( (count == count_columns(last_col)) &&
@@ -3356,10 +3895,8 @@ int html_printer::large_enough_gap (text_defn *last_col)
i++;
} else {
// not good enough for a single line, remove it
- if (i>0) {
- last_col[i-1].right = last_col[i].right;
- }
- remove_entry_in_line(last_col, i);
+ last_col[i].right = last_col[i+1].right;
+ remove_entry_in_line(last_col, i+1);
}
}
return( found );
@@ -3391,28 +3928,25 @@ int html_printer::is_subset_of_columns (text_defn *a, text_defn *b)
}
/*
- * count_hits - counts the number of hits per column. A hit is when the
- * left hand position of a glob hits the left hand column.
+ * count_hits - counts the number of hits per column. A left hit
+ * is when the left hand position of a glob hits
+ * the left hand column.
*/
-void html_printer::count_hits (text_defn *col)
+void html_printer::count_hits (text_defn *col, int no_of_columns, int limit)
{
int i;
text_glob *start = page_contents->words.get_data();
text_glob *g = start;
- int r = font::res;
- int gap = r/GAP_WIDTH_ONE_LINE;
- int n = count_columns(col);
- int left;
// firstly reset the used field
- for (i=0; i<n; i++) {
- col[i].is_used = 0;
+ for (i=0; i<no_of_columns; i++) {
+ col[i].is_used = 0;
}
// now calculate the left hand hits
- while ((g != 0) && (g->minv <= indentation.vertical_limit)) {
+ while ((g != 0) && (g->minv <= limit)) {
i=0;
- while ((col[i].left < g->minh) && (col[i].left != 0)) {
+ while ((i<no_of_columns) && (col[i].right < g->minh)) {
i++;
}
if ((col[i].left == g->minh) && (col[i].left != 0)) {
@@ -3426,101 +3960,813 @@ void html_printer::count_hits (text_defn *col)
g=page_contents->words.get_data();
}
}
- // now remove any column which is less than the
- // minimal gap for one hit.
- // column 0 is excempt
+}
+
+/*
+ * count_right_hits - counts the number of right hits per column.
+ * A right hit is when the left hand position
+ * of a glob hits the right hand column.
+ */
+
+void html_printer::count_right_hits (text_defn *col, int no_of_columns)
+{
+ int i;
+ text_glob *start = page_contents->words.get_data();
+ text_glob *g = start;
+
+ // firstly reset the used field
+ for (i=0; i<no_of_columns; i++) {
+ col[i].right_hits = 0;
+ }
+ // now calculate the left hand hits
+ while ((g != 0) && (g->minv <= indentation.vertical_limit)) {
+ i=0;
+ while ((i<no_of_columns) && (col[i].right < g->minh)) {
+ i++;
+ }
+ if ((i<no_of_columns) && (col[i].right == g->maxh)) {
+ if (debug_table_on) {
+ fprintf(stderr, "found right hit [%s] at %d in %d\n",
+ g->text_string, g->maxh, i);
+ fflush(stderr);
+ }
+ col[i].right_hits++;
+ }
+ page_contents->words.move_right();
+ if (page_contents->words.is_equal_to_head()) {
+ g = 0;
+ page_contents->words.start_from_tail();
+ } else {
+ g=page_contents->words.get_data();
+ }
+ }
+}
+
+/*
+ * right_indentation - returns TRUE if a single column has been found and
+ * it resembles an indentation. Ie .RS/.RE or ABSTACT
+ */
+
+int html_printer::right_indentation (struct text_defn *last_guess)
+{
+ // it assumes that last_guess contains a single column
+ return( (last_guess[0].left > left_margin_indent) );
+}
- left = col[0].left;
- i=1;
- while (i<count_columns(col)) {
- if (col[i].is_used == 1) {
- if (col[i].left - left < gap) {
- col[i-1].right = col[i].right;
- remove_entry_in_line(col, i);
- left = col[i].left;
+/*
+ * able_to_steal_width - returns TRUE if we have an unused column which we can steal from.
+ * It must have more than MIN_TEXT_PERCENT to do this.
+ */
+
+int html_printer::able_to_steal_width (void)
+{
+ int i;
+
+ for (i=0; i<indentation.no_of_columns; i++) {
+ if ((! indentation.columns[i].is_used) &&
+ (indentation.columns[i].percent > MIN_TEXT_PERCENT)) {
+ return( TRUE );
+ }
+ }
+ return( FALSE );
+}
+
+/*
+ * is_divisible_by - returns TRUE if n is divisible by d leaving no remainder.
+ */
+
+static int is_divisible_by (int n, int d)
+{
+ return( (n % d) == 0 );
+}
+
+/*
+ * need_to_steal_width - returns TRUE if a used column need to be
+ * given a little extra width for safty sake.
+ */
+
+int html_printer::need_to_steal_width (void)
+{
+ int i;
+
+ for (i=0; i<indentation.no_of_columns; i++) {
+ if ((indentation.columns[i].is_used) &&
+ (indentation.columns[i].percent == (((indentation.columns[i].right - indentation.columns[i].left) * 100) /
+ (right_margin_indent-left_margin_indent))) &&
+ (indentation.columns[i].percent < PERCENT_THRESHOLD)) {
+ return( TRUE );
+ }
+ }
+ return( FALSE );
+}
+
+/*
+ * utilize_round_off - utilize the remaining percent width in text columns
+ */
+
+void html_printer::utilize_round_off (void)
+{
+ int total = total_percentages();
+ int excess, i;
+
+ // use up the spare excess
+
+ excess = 100-total;
+
+ for (i=0; (i<indentation.no_of_columns) && (excess>0); i++) {
+ if ((indentation.columns[i].is_used) &&
+ (indentation.columns[i].percent < PERCENT_THRESHOLD)) {
+ indentation.columns[i].percent++;
+ excess--;
+ }
+ }
+ // we might as well try and keep any numbers simple if possible
+ for (i=0; (i<indentation.no_of_columns) && (excess>0); i++) {
+ if ((indentation.columns[i].is_used) &&
+ (! is_divisible_by(indentation.columns[i].percent, MIN_TEXT_PERCENT))) {
+ indentation.columns[i].percent++;
+ excess--;
+ }
+ }
+ // forget the niceties lets just use excess up now!
+ for (i=0; (i<indentation.no_of_columns) && (excess>0); i++) {
+ if (indentation.columns[i].is_used) {
+ indentation.columns[i].percent++;
+ excess--;
+ }
+ }
+}
+
+/*
+ * can_distribute_fairly - returns TRUE if we can redistribute some of the unused width into
+ * columns that are used.
+ */
+
+int html_printer::can_distribute_fairly (void)
+{
+ int i;
+ int total=0;
+ int used =0;
+ int excess;
+
+ // firstly total up all percentages - so we can use round offs
+ for (i=0; i<indentation.no_of_columns; i++) {
+ total += indentation.columns[i].percent;
+ if ((indentation.columns[i].is_used) &&
+ (indentation.columns[i].percent < PERCENT_THRESHOLD)) {
+ used++;
+ }
+ }
+ //
+ excess = 100-total;
+ if (excess < used) {
+ for (i=0; i<indentation.no_of_columns; i++) {
+ if (! indentation.columns[i].is_used) {
+ if (indentation.columns[i].percent > MIN_TEXT_PERCENT) {
+ indentation.columns[i].percent--;
+ excess++;
+ }
+ }
+ }
+ }
+ if (excess >= used) {
+ for (i=0; i<indentation.no_of_columns; i++) {
+ if ((indentation.columns[i].is_used) &&
+ (indentation.columns[i].percent < PERCENT_THRESHOLD) &&
+ (indentation.columns[i].percent == (((indentation.columns[i].right - indentation.columns[i].left) * 100) /
+ (right_margin_indent-left_margin_indent)))) {
+ indentation.columns[i].percent++;
+ excess--;
+ }
+ }
+ return( TRUE );
+ }
+ return( FALSE );
+}
+
+/*
+ * remove_table_column - removes column, i, from the indentation.
+ */
+
+void html_printer::remove_table_column (int i)
+{
+ while (i<indentation.no_of_columns) {
+ indentation.columns[i].left = indentation.columns[i+1].left;
+ indentation.columns[i].right = indentation.columns[i+1].right;
+ indentation.columns[i].is_used = indentation.columns[i+1].is_used;
+ indentation.columns[i].percent = indentation.columns[i+1].percent;
+ i++;
+ }
+ indentation.no_of_columns--;
+}
+
+/*
+ * next_line_on_left_column - returns TRUE if the next line in
+ * column, i, has a word on the left margin.
+ */
+
+int html_printer::next_line_on_left_column (int i, text_glob *start)
+{
+ int current_vpos=start->minv;
+
+ while ((start != 0) && (start->minv < indentation.vertical_limit) &&
+ (is_on_same_line(start, current_vpos))) {
+ if (page_contents->words.is_equal_to_tail()) {
+ start = 0;
+ } else {
+ page_contents->words.move_right();
+ start = page_contents->words.get_data();
+ }
+ }
+ if ((start != 0) && (start->minv < indentation.vertical_limit)) {
+ // onto next line now
+ current_vpos=start->minv;
+ while ((start != 0) && (start->minv < indentation.vertical_limit) &&
+ (is_on_same_line(start, current_vpos))) {
+ if (start->minh == indentation.columns[i].left) {
+ return( TRUE );
+ }
+ if (page_contents->words.is_equal_to_tail()) {
+ start = 0;
} else {
- left = col[i].left;
- i++;
+ page_contents->words.move_right();
+ start = page_contents->words.get_data();
+ }
+ }
+ }
+ return( FALSE );
+}
+
+/*
+ * will_wrap_text - returns TRUE if text is wrapped in column, i.
+ */
+
+int html_printer::will_wrap_text (int i, text_glob *start)
+{
+ text_glob *current=page_contents->words.get_data();
+
+ if (auto_on) {
+ rewind_text_to(start);
+ while ((start != 0) && (start->minv < indentation.vertical_limit)) {
+ if (indentation.columns[i].right == start->maxh) {
+ // ok right word is on column boarder - check next line
+ if (next_line_on_left_column(i, start)) {
+ rewind_text_to(current);
+ return( TRUE );
+ }
+ }
+ if (page_contents->words.is_equal_to_tail()) {
+ start = 0;
+ } else {
+ page_contents->words.move_right();
+ start = page_contents->words.get_data();
+ }
+ }
+ }
+ rewind_text_to(current);
+ return( FALSE );
+}
+
+/*
+ * remove_unnecessary_unused - runs through a table and decides whether an unused
+ * column can be removed. This is only true if the
+ * column to the left does not wrap text.
+ */
+
+void html_printer::remove_unnecessary_unused (text_glob *start)
+{
+ int i=0;
+ int left=get_left();
+ int right;
+
+ while (i<indentation.no_of_columns) {
+ if ((indentation.columns[i].is_used) &&
+ (i+1<indentation.no_of_columns) && (! indentation.columns[i+1].is_used)) {
+ /*
+ * so i+1 is unused and there is a used column to the left.
+ * Now we check whether we can add the unused column to the column, i.
+ * This can only be done if column, i, is not wrapping text.
+ */
+ if (! will_wrap_text(i, start)) {
+#if 1
+ if (i+1 < indentation.no_of_columns) {
+ right = indentation.columns[i+1].right;
+ } else {
+ right = right_margin_indent;
+ }
+ indentation.columns[i].percent = (((right - indentation.columns[i].left) * 100) /
+ (right_margin_indent-left));
+#else
+ indentation.columns[i].percent = (((indentation.columns[i+1].right - indentation.columns[i].left) * 100) /
+ (right_margin_indent-left));
+#endif
+ remove_table_column(i+1);
+ i=-1;
+ }
+ }
+ i++;
+ }
+}
+
+/*
+ * remove_zero_percentage_column - removes all zero percentage width columns
+ */
+
+void html_printer::remove_zero_percentage_column (void)
+{
+ int i=0;
+
+ while (i<indentation.no_of_columns) {
+ if (indentation.columns[i].percent == 0) {
+ remove_table_column(i);
+ i=0;
+ } else {
+ i++;
+ }
+ }
+}
+
+/*
+ * get_left - returns the actual left most margin.
+ */
+
+int html_printer::get_left (void)
+{
+ if ((header_indent < left_margin_indent) && (header_indent != -1)) {
+ return( header_indent );
+ } else {
+ return( left_margin_indent );
+ }
+}
+
+/*
+ * calculate_percentage_width - calculates the percentage widths,
+ * this function will be generous to
+ * columns which have words as some browsers
+ * produce messy output if the percentage is exactly
+ * that required for text..
+ * We try and round up to MIN_TEXT_PERCENT
+ * of course we can only do this if we can steal from
+ * an unused column.
+ */
+
+void html_printer::calculate_percentage_width (text_glob *start)
+{
+ int i;
+ int left=get_left();
+ int right;
+
+ // firstly calculate raw percentages
+ for (i=0; i<indentation.no_of_columns; i++) {
+#if 0
+ indentation.columns[i].percent = (((indentation.columns[i].right - indentation.columns[i].left) * 100) /
+ (right_margin_indent-left));
+#else
+ if (i+1 < indentation.no_of_columns) {
+ right = indentation.columns[i+1].left;
+ } else {
+ right = right_margin_indent;
+ }
+ indentation.columns[i].percent = (((right - indentation.columns[i].left) * 100) /
+ (right_margin_indent-left));
+#endif
+ }
+ if (debug_table_on) {
+ display_columns(start->text_string, "[b4 steal] indentation.columns", indentation.columns);
+ }
+
+ // now steal from the unused columns..
+ remove_unnecessary_unused(start);
+
+ if (debug_table_on) {
+ display_columns(start->text_string, "[after steal] indentation.columns", indentation.columns);
+ }
+
+#if 0
+ utilize_round_off();
+#endif
+ remove_zero_percentage_column();
+}
+
+
+/*
+ * is_column_subset - returns TRUE if the columns described by small can be contained in
+ * the columns in large.
+ */
+
+int html_printer::is_column_subset (struct text_defn *small, struct text_defn *large)
+{
+ int ns=count_columns(small);
+ int nl=count_columns(large);
+ int found;
+ int i=0;
+ int j;
+
+ while (i<ns) {
+ j=0;
+ found = FALSE;
+ while (j<nl) {
+ if (is_intersection(small[i].left, small[i].right, large[j].left, large[j].right)) {
+ found = TRUE;
+ if (! is_subsection(small[i].left, small[i].right, large[j].left, large[j].right)) {
+ // found column which is not a subset
+ return( FALSE );
+ }
}
+ j++;
+ }
+ if (! found) {
+ return( FALSE );
+ }
+ i++;
+ }
+ // small cannot be an empty set
+ return( ns>0 );
+}
+
+/*
+ * right_most_column - returns the right most column position.
+ */
+
+int html_printer::right_most_column (struct text_defn *col)
+{
+ int i = count_columns(col);
+
+ if (i>0) {
+ return( col[i-1].right );
+ } else {
+ return( 0 );
+ }
+}
+
+/*
+ * large_enough_gap_for_two - returns TRUE if there exists a large enough gap
+ * for two lines.
+ */
+
+int html_printer::large_enough_gap_for_two (struct text_defn *col)
+{
+ int i=0;
+ int found=FALSE;
+ int gap=MIN_COLUMN_FOR_TWO_LINES;
+
+ if (abs(col[i].left - left_margin_indent) >= gap) {
+ found = TRUE;
+ }
+ while ((col[i].left != 0) && (col[i+1].left != 0)) {
+ if (abs(col[i+1].left-col[i].right) >= gap) {
+ found = TRUE;
+ i++;
} else {
- left = col[i].left;
+ // not good enough for this table, remove it
+ col[i].right = col[i+1].right;
+ remove_entry_in_line(col, i+1);
+ }
+ }
+ return( found );
+}
+
+/*
+ * is_small_table - applies some rigorous rules to test whether we should start this
+ * table at this point.
+ */
+
+int html_printer::is_small_table (int lines, struct text_defn *last_guess,
+ struct text_defn *words_1, struct text_defn *cols_1,
+ struct text_defn *words_2, struct text_defn *cols_2,
+ int *limit, int *limit_1)
+{
+ /*
+ * firstly we check for an indented paragraph
+ */
+
+ if ((lines >= 2) &&
+ (count_columns(cols_1) == count_columns(cols_2)) && (count_columns(cols_1) == 1) &&
+ right_indentation(cols_1) && (! right_indentation(cols_2)) &&
+ (cols_1[0].right == right_margin_indent)) {
+ return( FALSE );
+ }
+
+ if (lines == 2) {
+ /*
+ * as we only have two lines in our table we need to examine in detail whether
+ * we should construct a table from these two lines.
+ * For example if the text is the start of an indented paragraph and
+ * line1 and line2 are contineous then they should form one row in our table but
+ * if line1 and line2 are not contineous it is safer to treat them separately.
+ *
+ * We are prepared to reduce the table to one line
+ */
+ if (((count_columns(cols_1) != count_columns(cols_2)) && (cols_1[0].left > cols_2[0].left)) ||
+ (! ((is_column_subset(cols_1, cols_2)) ||
+ (is_column_subset(cols_2, cols_1))))) {
+ /*
+ * now we must check to see whether line1 and line2 join
+ */
+ if ((right_most_column(cols_1) == right_margin_indent) &&
+ (cols_2[0].left == left_margin_indent)) {
+ /*
+ * looks like they join, we don't want a table at all.
+ */
+ return( FALSE );
+ }
+ /*
+ * use single line table
+ */
+ lines--;
+ *limit = *limit_1;
+ copy_line(last_guess, cols_1);
+ }
+ }
+
+ if ((count_columns(last_guess)==1) && (right_indentation(last_guess))) {
+ if (lines == 1) {
+ *limit = *limit_1;
+ }
+ return( TRUE );
+ }
+
+ /*
+ * check for large gap with single line or if multiple lines with more than one column
+ */
+
+ if (lines == 1) {
+ if (large_enough_gap(last_guess)) {
+ *limit = *limit_1;
+ return( TRUE );
+ }
+ } else if (count_columns(last_guess)>1) {
+ if (lines == 2) {
+ return( large_enough_gap_for_two(last_guess) );
+ }
+ return( TRUE );
+ }
+ return( FALSE );
+}
+
+
+/*
+ * is_appropriate_to_start_table - returns TRUE if it is appropriate to start the table
+ * at this point.
+ */
+
+int html_printer::is_appropriate_to_start_table (struct text_defn *cols_1,
+ struct text_defn *cols_2,
+ struct text_defn *last_guess)
+{
+ if (count_columns(last_guess) == 1) {
+ if (debug_table_on) {
+ display_columns("", "[is] cols_1" , cols_1);
+ display_columns("", "[is] cols_2" , cols_2);
+ display_columns("", "[is] last_guess", last_guess);
+ }
+
+ if (! ((is_column_subset(cols_1, cols_2)) ||
+ (is_column_subset(cols_2, cols_1)))) {
+ return( FALSE );
+ }
+ if ((count_columns(cols_1) == 1) &&
+ (cols_1[0].left > left_margin_indent) && (cols_1[0].right < right_margin_indent) &&
+ (cols_1[0].right != cols_2[0].right) &&
+ (count_columns(last_guess) == 1)) {
+ return( FALSE );
+ }
+ }
+ return( TRUE );
+}
+
+/*
+ * is_a_full_width_column - returns TRUE if there exists a full width column.
+ */
+
+int html_printer::is_a_full_width_column (void)
+{
+ int i=0;
+
+ while (i<indentation.no_of_columns) {
+ if (((indentation.columns[i].left == get_left()) ||
+ (indentation.columns[i].left == left_margin_indent)) &&
+ (indentation.columns[i].right == right_margin_indent)) {
+ return( TRUE );
+ }
+ i++;
+ }
+ return( FALSE );
+}
+
+/*
+ * should_defer_table - returns TRUE if we should defer this table.
+ * This can occur if the first line seen indent
+ * is < than future lines. In which case it
+ * will cause future lines in this table
+ * to be indented. The lesser of the evils
+ * is to treat the first line by itself.
+ */
+
+int html_printer::should_defer_table (int lines, struct text_glob *start, struct text_defn *cols_1)
+{
+ if (lines > 2) {
+ int i=0;
+ int c=count_columns(cols_1);
+
+ count_hits(cols_1, count_columns(cols_1), indentation.vertical_limit);
+ rewind_text_to(start);
+ count_right_hits(cols_1, count_columns(cols_1));
+ rewind_text_to(start);
+ while (i<c) {
+ if ((cols_1[i].is_used > 1) || (cols_1[i].right_hits > 1)) {
+ return( FALSE );
+ }
i++;
}
+ /*
+ * first line (cols_1) is not aligned on any future column, we defer.
+ */
+ return( TRUE );
+ }
+ return( FALSE );
+}
+
+/*
+ * is_new_exact_right - returns TRUE if the, next_cols, has a word sitting
+ * on the right hand margin of last_guess. But only
+ * if no exact right word was found in last_cols.
+ */
+
+int html_printer::is_new_exact_right (struct text_defn *last_guess,
+ struct text_defn *last_cols,
+ struct text_defn *next_cols)
+{
+ int n=count_columns(last_guess)-1;
+ return( FALSE );
+
+ if ((n>=0) && (last_guess[n].left != 0) && (last_cols[n].left != 0) && (next_cols[n].left != 0)) {
+ if ((last_cols[n].right != last_guess[n].right) &&
+ ((next_cols[n].right == last_guess[n].right) || (next_cols[n].right == right_margin_indent))) {
+ return( TRUE );
+ }
}
+ return( FALSE );
}
/*
* found_use_for_table - checks whether the some words on one line directly match
* the horizontal alignment of the line below.
+ * This is rather complex as we need to detect text tables
+ * such as .2C .IP Abstracts and indentations
+ *
+ * Algorithm is:
+ *
+ * read first line of text and calculate the significant
+ * gaps between words
+ * next next line of text and do the same
+ * if a conflict between these lines exists and
+ * first line is centered
+ * then
+ * return centered line
+ * elsif start of a table is found
+ * then
+ * repeat
+ * read next line of text and calculate significant gaps
+ * until conflict between the gaps is found
+ * record table
+ * return table found
+ * else
+ * return no table found
+ * fi
*/
int html_printer::found_use_for_table (text_glob *start)
{
text_glob *t;
- struct text_defn all_words [MAX_WORDS_PER_LINE];
- struct text_defn last_raw [MAX_WORDS_PER_LINE];
- struct text_defn next_line [MAX_WORDS_PER_LINE];
- struct text_defn prev_guess[MAX_WORDS_PER_LINE];
- struct text_defn last_guess[MAX_WORDS_PER_LINE];
- struct text_defn next_guess[MAX_WORDS_PER_LINE];
+ struct text_defn all_words [MAX_WORDS_PER_LINE]; // logical OR of words on each line
+ struct text_defn words_1 [MAX_WORDS_PER_LINE]; // actual words found on first line
+ struct text_defn words_2 [MAX_WORDS_PER_LINE]; // actual words found on second line
+ struct text_defn cols_1 [MAX_WORDS_PER_LINE]; // columns found on line 1
+ struct text_defn cols_2 [MAX_WORDS_PER_LINE]; // columns found on line 2
+ struct text_defn last_words [MAX_WORDS_PER_LINE]; // actual words found on last line
+ struct text_defn last_cols [MAX_WORDS_PER_LINE]; // columns found so far
+ struct text_defn next_words [MAX_WORDS_PER_LINE]; // actual words found on last line (new)
+ struct text_defn next_cols [MAX_WORDS_PER_LINE]; // columns found on next line
+ struct text_defn last_guess [MAX_WORDS_PER_LINE]; // columns found on last line
+ // (logical AND of gaps (treat gaps = true))
+ struct text_defn next_guess [MAX_WORDS_PER_LINE]; // columns found on next line
+ // (logical AND of gaps (treat gaps = true))
+ struct text_defn prev_guess [MAX_WORDS_PER_LINE]; // temporary copy of last_guess
int i =0;
- int lines =0;
- int mingap=calculate_min_gap(start);
- int limit;
+ int lines =1; // number of lines read
+ int limit; // vertical limit reached in our table
+ int limit_1; // vertical position after line 1
-#if 0
- if (strcmp(start->text_string, "man") == 0) {
+#if 1
+ if (strcmp(start->text_string, "This") == 0) {
stop();
}
#endif
- // get first set of potential columns into line1
- limit = collect_columns(last_guess, 0, MAX_WORDS_PER_LINE);
- copy_line(last_raw, last_guess);
- // add_right_full_width(last_guess, mingap); // adds extra right column to bring table to full width
-
- copy_line(all_words, last_guess);
+ /*
+ * get first set of potential columns into last_line, call this last_guess
+ */
+ limit = collect_columns(words_1, cols_1, 0, 0, MAX_WORDS_PER_LINE);
+ limit_1 = limit;
+ copy_line(last_guess, cols_1);
+
+ /*
+ * initialize the all_words columns - if this should ever equal a complete line
+ * with no gaps then we terminate the table.
+ */
+ copy_line(all_words, cols_1);
+
+ /*
+ * and set the current limit found
+ */
indentation.vertical_limit = limit;
+ /*
+ * have we reached the end of page?
+ */
if (page_contents->words.is_equal_to_head() || (limit == 0)) {
- next_line[0].left = 0;
- next_line[0].right = 0;
+ cols_2[0].left = 0;
+ cols_2[0].right = 0;
} else {
- // and get the next line for finding columns
- limit = collect_columns(next_line, last_guess, MAX_WORDS_PER_LINE);
- lines++;
+ /*
+ * the answer to the previous question was no.
+ * So we need to examine the next line
+ */
+ limit = collect_columns(words_2, cols_2, words_1, cols_1, MAX_WORDS_PER_LINE);
+ if (limit >= 0) {
+ lines++;
+ }
}
- // now check to see whether the first line looks like a single centered line
-
- if (single_centered_line(last_raw, next_line, start)) {
+ /*
+ * now check to see whether the first line looks like a single centered line
+ */
+ if (single_centered_line(cols_1, cols_2, start)) {
rewind_text_to(start);
write_centered_line(start);
- indentation.no_of_columns = 0; // center instead
+ /*
+ * indicate to caller than we have centered text, not found a table.
+ */
+ indentation.no_of_columns = 0;
return( TRUE );
} else if (! table_on) {
+ /*
+ * user does not allow us to find a table (we are allowed to find centered lines (above))
+ */
rewind_text_to(start);
return( FALSE );
}
- combine_line(all_words, next_line);
+ /*
+ * remove any gaps from all_words
+ */
+ combine_line(all_words, cols_2);
if (debug_table_on) {
- display_columns(start->text_string, "[b] all_words", all_words);
+ display_columns(start->text_string, "[1] all_words" , all_words);
+ display_columns(start->text_string, "[1] cols_1" , cols_1);
+ display_columns(start->text_string, "[1] words_1" , words_1);
+ display_columns(start->text_string, "[1] cols_2" , cols_2);
+ display_columns(start->text_string, "[1] words_2" , words_2);
+ display_columns(start->text_string, "[1] last_guess", last_guess);
+ }
+
+ /*
+ * next_guess = last_guess AND next_cols (where gap = true)
+ */
+
+ if (remove_white_using_words(prev_guess, last_guess, cols_2)) {
+ }
+ if (remove_white_using_words(next_guess, prev_guess, all_words)) {
}
- if ((! remove_white_using_words(next_guess, last_guess, next_line))) {
+ if (debug_table_on) {
+ display_columns(start->text_string, "[2] next_guess", next_guess);
}
+ copy_line(prev_guess, cols_1);
+ combine_line(prev_guess, cols_2);
+
+ /*
+ * if no sequence of words crosses a column and
+ * both the last column and all_words are not a full solid line of text
+ */
if ((! conflict_with_words(next_guess, all_words)) &&
(continue_searching_column(next_guess, next_guess, all_words)) &&
+ (is_appropriate_to_start_table(cols_1, cols_2, prev_guess)) &&
(! page_contents->words.is_equal_to_head()) &&
((end_region_vpos < 0) || (limit < end_region_vpos)) &&
(limit > 0)) {
- combine_line(last_guess, next_line);
- // subtract any columns which are bridged by a sequence of words
+ /*
+ * subtract any columns which are bridged by a sequence of words
+ */
+
+ copy_line(next_cols , cols_2);
+ copy_line(next_words, words_2);
+
do {
- copy_line(prev_guess, next_guess);
+ copy_line(prev_guess, next_guess); // copy next_guess away so we can compare it later
combine_line(last_guess, next_guess);
if (debug_table_on) {
@@ -3529,40 +4775,52 @@ int html_printer::found_use_for_table (text_glob *start)
}
indentation.vertical_limit = limit;
- copy_line(last_raw, next_line);
+ copy_line(last_cols, next_cols);
+ copy_line(last_words, next_words);
if (page_contents->words.is_equal_to_head()) {
- next_line[0].left = 0;
- next_line[0].right = 0;
+ /*
+ * terminate the search
+ */
+ next_cols[0].left = 0;
+ next_cols[0].right = 0;
} else {
- limit = collect_columns(next_line, last_guess, MAX_WORDS_PER_LINE);
+ limit = collect_columns(next_words, next_cols, last_words, last_cols, MAX_WORDS_PER_LINE);
lines++;
}
-
- combine_line(all_words, next_line);
+
+ combine_line(all_words, next_cols);
if (debug_table_on) {
- display_columns(t->text_string, "[l] all_words", all_words);
- display_columns(t->text_string, "[l] last_raw ", last_raw);
+ display_columns(t->text_string, "[l] all_words" , all_words);
+ display_columns(t->text_string, "[l] last_cols" , last_cols);
+ display_columns(t->text_string, "[l] next_words", next_words);
+ display_columns(t->text_string, "[l] next_cols" , next_cols);
}
- if (debug_table_on) {
- display_columns(t->text_string, "[l] next_line", next_line);
+ if (limit >= 0) {
+ /*
+ * (if limit is < 0 then the table ends anyway.)
+ * we check to see whether we should combine close columns.
+ */
+ can_loose_column(start, last_guess, limit);
}
t = page_contents->words.get_data();
#if 0
- if (strcmp(t->text_string, "market,") == 0) {
+ if (strcmp(t->text_string, "heT") == 0) {
stop();
}
#endif
-
- } while ((! remove_white_using_words(next_guess, last_guess, next_line)) &&
+
+ } while ((! remove_white_using_words(next_guess, last_guess, next_cols)) &&
(! conflict_with_words(next_guess, all_words)) &&
(continue_searching_column(next_guess, last_guess, all_words)) &&
- ((is_continueous_column(prev_guess, last_raw)) || (is_exact_left(last_guess, next_line))) &&
+ ((is_continueous_column(prev_guess, last_cols)) || (is_exact_left(last_guess, next_cols))) &&
+ (! is_new_exact_right(last_guess, last_cols, next_cols)) &&
(! page_contents->words.is_equal_to_head()) &&
+ (! check_lack_of_hits(next_guess, last_guess, start, limit)) &&
((end_region_vpos <= 0) || (t->minv < end_region_vpos)) &&
(limit >= 0));
+ lines--;
}
- lines--;
if (limit < 0) {
indentation.vertical_limit = limit;
@@ -3572,14 +4830,19 @@ int html_printer::found_use_for_table (text_glob *start)
// end of page check whether we should include everything
if ((! conflict_with_words(next_guess, all_words)) &&
(continue_searching_column(next_guess, last_guess, all_words)) &&
- ((is_continueous_column(prev_guess, last_raw)) || (is_exact_left(last_guess, next_line)))) {
+ ((is_continueous_column(prev_guess, last_cols)) || (is_exact_left(last_guess, next_cols)))) {
// end of page reached - therefore include everything
page_contents->words.start_from_tail();
t = page_contents->words.get_data();
+ combine_line(last_guess, next_guess);
indentation.vertical_limit = t->minv;
}
} else {
t = page_contents->words.get_data();
+ if (((! conflict_with_words(last_guess, all_words))) &&
+ (t->minv > end_region_vpos) && (end_region_vpos > 0)) {
+ indentation.vertical_limit = limit;
+ }
if ((end_region_vpos > 0) && (t->minv > end_region_vpos)) {
indentation.vertical_limit = min(indentation.vertical_limit, end_region_vpos+1);
} else if (indentation.vertical_limit < 0) {
@@ -3589,51 +4852,94 @@ int html_printer::found_use_for_table (text_glob *start)
}
if (debug_table_on) {
- display_columns(start->text_string, "[x] last_guess", last_guess);
+ display_columns(start->text_string, "[1] all_words" , all_words);
+ display_columns(start->text_string, "[1] cols_1" , cols_1);
+ display_columns(start->text_string, "[1] words_1" , words_1);
+ display_columns(start->text_string, "[1] cols_2" , cols_2);
+ display_columns(start->text_string, "[1] words_2" , words_2);
+ display_columns(start->text_string, "[1] last_guess", last_guess);
+ display_columns(start->text_string, "[1] next_guess", next_guess);
}
rewind_text_to(start);
i = count_columns(last_guess);
- if (((lines > 2) && ((i>1) || (continue_searching_column(last_guess, last_guess, all_words)))) ||
- ((lines == 1) && (large_enough_gap(last_guess)))) {
- // copy match into permenant html_table
-
- if (indentation.columns != 0) {
- free(indentation.columns);
- }
- if (debug_table_on) {
- display_columns(start->text_string, "[x] last_guess", last_guess);
- }
- add_column_gaps(last_guess);
- if (debug_table_on) {
- display_columns(start->text_string, "[g] last_guess", last_guess);
+ if ((i>1) || (right_indentation(last_guess))) {
+
+ // was (continue_searching_column(last_guess, last_guess, all_words)))) {
+ if (should_defer_table(lines, start, cols_1)) {
+ /*
+ * yes, but let us check for a single line table
+ */
+ lines = 1;
+ copy_line(last_guess, cols_1);
}
- indentation.no_of_columns = count_columns(last_guess);
- indentation.columns = (struct text_defn *)malloc(indentation.no_of_columns*sizeof(struct text_defn));
+ if (is_small_table(lines, last_guess, words_1, cols_1, words_2, cols_2,
+ &indentation.vertical_limit, &limit_1)) {
- i=0;
- while (i<indentation.no_of_columns) {
- indentation.columns[i].left = last_guess[i].left;
- indentation.columns[i].right = last_guess[i].right;
- i++;
+ // copy match into permenant html_table
+
+ if (indentation.columns != 0) {
+ free(indentation.columns);
+ }
+ if (debug_table_on) {
+ display_columns(start->text_string, "[x] last_guess", last_guess);
+ }
+ add_column_gaps(last_guess);
+ if (debug_table_on) {
+ display_columns(start->text_string, "[g] last_guess", last_guess);
+ }
+
+ /*
+ * +1 for the potential header_margin
+ * +1 for null
+ */
+
+ indentation.no_of_columns = count_columns(last_guess);
+ indentation.columns = (struct text_defn *)malloc((indentation.no_of_columns+2)*sizeof(struct text_defn));
+
+ i=0;
+ while (i<=indentation.no_of_columns) {
+ indentation.columns[i].left = last_guess[i].left;
+ indentation.columns[i].right = last_guess[i].right;
+ i++;
+ }
+
+ if (indentation.no_of_columns>0) {
+ assign_used_columns(start);
+ rewind_text_to(start);
+ calculate_percentage_width(start);
+
+ if (debug_table_on) {
+ display_columns(start->text_string, "[g] indentation.columns", indentation.columns);
+ }
+
+ /*
+ * clearly a single column 100% is not worth using a table.
+ * Also we check to see whether the first line is sensibly
+ * part of this table.
+ */
+ if (is_a_full_width_column()) {
+ indentation.no_of_columns = 0;
+ free( indentation.columns );
+ indentation.columns = 0;
+ } else {
+ return( TRUE );
+ }
+ }
}
- return( TRUE );
- } else {
- return( FALSE );
}
+ return( FALSE );
}
-void html_printer::define_cell (int left, int right)
-{
- float f=((float)(right-left))/((float)(right_margin_indent-left_margin_indent))*100.0;
+/*
+ * define_cell - creates a table cell using the percentage width.
+ */
- html.put_string("<td valign=\"top\" align=\"left\" width=\"");
- if (f > 1.0) {
- html.put_float(f);
- } else {
- html.put_float(1.0);
- }
+void html_printer::define_cell (int i)
+{
+ html.put_string("<td valign=\"top\" align=\"left\" width=\"");
+ html.put_number(indentation.columns[i].percent);
html.put_string("%\">\n");
}
@@ -3642,12 +4948,13 @@ void html_printer::define_cell (int left, int right)
* write out html text within this region.
*/
-void html_printer::column_display_word (int vert, int left, int right, int next)
+void html_printer::column_display_word (int cell, int vert, int left, int right, int next)
{
text_glob *g=page_contents->words.get_data();
+ supress_sub_sup = TRUE;
if (left != next) {
- define_cell(left, next);
+ define_cell(cell);
begin_paragraph_no_height(left_alignment);
while ((g != 0) && (g->minv <= vert)) {
if ((left <= g->minh) && (g->minh<right)) {
@@ -3659,7 +4966,7 @@ void html_printer::column_display_word (int vert, int left, int right, int next)
if (g->is_raw_command) {
html.put_string((char *)g->text_string);
} else {
- html.html_write_string((char *)g->text_string);
+ translate_to_html(g);
}
if (postword != 0) {
html.put_string(postword);
@@ -3673,14 +4980,6 @@ void html_printer::column_display_word (int vert, int left, int right, int next)
page_contents->words.move_right();
g=page_contents->words.get_data();
}
-#if 0
- if (page_contents->words.is_equal_to_head()) {
- g = 0;
- page_contents->words.start_from_tail();
- } else {
-
- }
-#endif
}
end_paragraph();
html.put_string("</td>\n");
@@ -3694,17 +4993,32 @@ void html_printer::column_display_word (int vert, int left, int right, int next)
}
/*
- * start_table - creates a table according with parameters contained within class html_table.
+ * total_percentages - returns the total of all the percentages in the table.
*/
-void html_printer::start_table (void)
+int html_printer::total_percentages ()
{
int i;
+ int sum=0;
- end_paragraph();
- html.put_string("\n<table width=\"100%\" rules=\"none\" frame=\"none\" cols=\"");
+ for (i=0; i<indentation.no_of_columns; i++) {
+ sum += indentation.columns[i].percent;
+ }
+ return( sum );
+}
+
+/*
+ * start_table - creates a table according with parameters contained within class html_table.
+ */
+
+void html_printer::start_table (void)
+{
+ save_paragraph();
+ html.put_string("\n<table width=\"");
+ html.put_number(total_percentages());
+ html.put_string("%\" rules=\"none\" frame=\"none\" cols=\"");
html.put_number(indentation.no_of_columns);
- html.put_string("\">\n");
+ html.put_string("\" cellspacing=\"0\" cellpadding=\"0\">\n");
}
/*
@@ -3715,6 +5029,8 @@ void html_printer::end_table (void)
{
html.put_string("</table>\n");
indentation.no_of_columns = 0;
+ restore_paragraph();
+ supress_sub_sup = TRUE;
}
/*
@@ -3746,7 +5062,7 @@ int html_printer::column_calculate_right_margin (int left, int right)
if (debug_on) {
fprintf(stderr, "problem as right word = %s %d [%d..%d]\n",
g->text_string, right, g->minh, g->maxh); fflush(stderr);
- stop();
+ // stop();
}
}
}
@@ -3762,11 +5078,7 @@ int html_printer::column_calculate_right_margin (int left, int right)
if (rightmost == -1) {
return( right ); // no words in this column
} else {
- if (count == 1) {
- return( rightmost+1 );
- } else {
- return( rightmost );
- }
+ return( rightmost );
}
}
}
@@ -3809,6 +5121,21 @@ int html_printer::column_calculate_left_margin (int left, int right)
* find_column_index - returns the index to the column in which glob, t, exists.
*/
+int html_printer::find_column_index_in_line (text_glob *t, text_defn *line)
+{
+ int i=0;
+
+ while ((line != 0) && ((line[i].left != 0) || (line[i].right != 0)) &&
+ (! ((line[i].left<=t->minh) && (line[i].right>t->minh)))) {
+ i++;
+ }
+ return( i );
+}
+
+/*
+ * find_column_index - returns the index to the column in which glob, t, exists.
+ */
+
int html_printer::find_column_index (text_glob *t)
{
int i=0;
@@ -3831,15 +5158,24 @@ int html_printer::determine_row_limit (text_glob *start, int v)
{
text_glob *t;
int i;
- int vpos, prev, last;
- int is_gap[MAX_WORDS_PER_LINE];
+ int vpos, last, prev;
+ text_glob *is_gap[MAX_WORDS_PER_LINE];
+ text_glob zero(&start->text_style, 0, 0, 0, 0, 0, 0, 0, 0);
+
+#if 1
+ if ((v == -1) && (strcmp(start->text_string, "CASE") == 0)) {
+ stop();
+ }
+#endif
if (v >= indentation.vertical_limit) {
return( v+1 );
} else {
- // initially we start with all gaps in our table
- // after a gap we start a new row
- // here we set the gap array to the previous line
+ /*
+ * initially we start with all gaps in our table
+ * after a gap we start a new row
+ * here we set the gap array to the previous line
+ */
if (v>=0) {
t = page_contents->words.get_data();
@@ -3851,16 +5187,22 @@ int html_printer::determine_row_limit (text_glob *start, int v)
(t->minv <= v));
}
}
- if (! page_contents->words.is_equal_to_head()) {
+ if (page_contents->words.is_equal_to_head()) {
+ t = &zero;
+ } else {
page_contents->words.move_left();
+ t = page_contents->words.get_data();
}
- t = page_contents->words.get_data();
+
prev = t->minv;
for (i=0; i<indentation.no_of_columns; i++) {
- is_gap[i] = prev;
+ is_gap[i] = t;
}
- if (! page_contents->words.is_equal_to_tail()) {
+ if (page_contents->words.is_equal_to_tail()) {
+ rewind_text_to(start);
+ return( indentation.vertical_limit );
+ } else {
page_contents->words.move_right();
}
t = page_contents->words.get_data();
@@ -3870,18 +5212,29 @@ int html_printer::determine_row_limit (text_glob *start, int v)
do {
last = vpos;
vpos = t->minv;
- i = find_column_index(t);
- if (! is_on_same_line(t, last)) {
- prev = last;
+ if (vpos > indentation.vertical_limit) {
+ // we have reached the end of the table, quit
+ rewind_text_to(start);
+ return( indentation.vertical_limit );
}
+
+ i = find_column_index(t);
+ if (i>=indentation.no_of_columns) {
+ error("find_column_index has failed");
+ stop();
+ } else {
+ if (! is_on_same_line(t, last)) {
+ prev = last;
+ }
- if ((is_gap[i] != vpos) && (is_gap[i] != prev) &&
- (indentation.columns[i].is_used)) {
- // no word on previous line - must be a gap - force alignment of row
- rewind_text_to(start);
- return( last );
+ if ((! is_on_same_line(is_gap[i], vpos)) && (! is_on_same_line(is_gap[i], prev)) &&
+ (indentation.columns[i].is_used)) {
+ // no word on previous line - must be a gap - force alignment of row
+ rewind_text_to(start);
+ return( prev );
+ }
+ is_gap[i] = t;
}
- is_gap[i] = vpos;
page_contents->words.move_right();
t = page_contents->words.get_data();
} while ((! page_contents->words.is_equal_to_head()) &&
@@ -3935,6 +5288,32 @@ void html_printer::assign_used_columns (text_glob *start)
}
/*
+ * adjust_margin_percentages - so far we have ignored the header_indent
+ * and just considered left_margin_indent..right_margin_indent.
+ * (We do this since we can assume 100% is total width for main text).
+ * However as header_indent can be < left_margin_indent we need to
+ * recalculate the real percentages in the light of the extended width.
+ */
+
+void html_printer::adjust_margin_percentages (void)
+{
+ if ((header_indent < left_margin_indent) && (header_indent != -1)) {
+ /*
+ * recalculation necessary
+ */
+ int i=0;
+
+ while (i<indentation.no_of_columns) {
+ indentation.columns[i].percent = (indentation.columns[i].percent *
+ (right_margin_indent - left_margin_indent)) /
+ (right_margin_indent - header_indent);
+ i++;
+ }
+ // remove_zero_percentage_column();
+ }
+}
+
+/*
* foreach_column_include_text - foreach column in a table place the
* appropriate html text.
*/
@@ -3946,9 +5325,10 @@ void html_printer::foreach_column_include_text (text_glob *start)
int left, right;
int limit=-1;
- assign_used_columns(start);
start_table();
rewind_text_to(start);
+ count_right_hits(indentation.columns, indentation.no_of_columns);
+ rewind_text_to(start);
do {
limit = determine_row_limit(start, limit); // find the bottom of the next row
@@ -3969,18 +5349,31 @@ void html_printer::foreach_column_include_text (text_glob *start)
if (right>indentation.columns[i].right) {
if (debug_on) {
fprintf(stderr, "assert calculated right column edge is greater than column\n"); fflush(stderr);
- stop();
+ // stop();
}
}
if (left<indentation.columns[i].left) {
if (debug_on) {
fprintf(stderr, "assert calculated left column edge is less than column\n"); fflush(stderr);
- stop();
+ // stop();
+ }
+ }
+
+ if ((indentation.columns[i].right_hits == 1) &&
+ (indentation.columns[i].right != right_margin_indent)) {
+ indentation.wrap_margin = FALSE;
+ if (debug_on) {
+ fprintf(stderr, "turning auto wrap off during column %d for start word %s\n",
+ i, start->text_string);
+ fflush(stderr);
+ // stop();
}
+ } else {
+ indentation.wrap_margin = TRUE;
}
- column_display_word(limit, left, right, indentation.columns[i].right);
+ column_display_word(i, limit, left, right, indentation.columns[i].right);
i++;
}
@@ -3996,8 +5389,8 @@ void html_printer::foreach_column_include_text (text_glob *start)
}
html.put_string("</tr>\n");
- } while ((limit < indentation.vertical_limit) && (start != 0) &&
- (! page_contents->words.is_empty()));
+ } while (((limit < indentation.vertical_limit) && (start != 0) &&
+ (! page_contents->words.is_empty())) || (limit == -1));
end_table();
if (start == 0) {
@@ -4023,8 +5416,9 @@ void html_printer::write_centered_line (text_glob *g)
move_vertical(g, center_alignment);
header.written_header = FALSE;
- output_vpos = g->minv;
- output_hpos = g->minh;
+ supress_sub_sup = TRUE;
+ output_vpos = g->minv;
+ output_hpos = g->minh;
do {
char *postword=html_position_text(g, left_margin_indent, right_margin_indent);
@@ -4032,7 +5426,7 @@ void html_printer::write_centered_line (text_glob *g)
if (g->is_raw_command) {
html.put_string((char *)g->text_string);
} else {
- html.html_write_string((char *)g->text_string);
+ translate_to_html(g);
}
if (postword != 0) {
html.put_string(postword);
@@ -4042,7 +5436,7 @@ void html_printer::write_centered_line (text_glob *g)
}
page_contents->words.move_right();
g = page_contents->words.get_data();
- } while ((! page_contents->words.is_equal_to_head()) && (g->minv == current_vpos));
+ } while ((! page_contents->words.is_equal_to_head()) && (is_on_same_line(g, current_vpos)));
page_contents->words.move_left(); // so when we move right we land on the word following this centered line
need_one_newline = TRUE;
}
@@ -4079,7 +5473,9 @@ int html_printer::check_able_to_use_center (text_glob *g)
// we are allowed to check for centered line
// first check to see whether we might be looking at a set of columns
struct text_defn last_guess[MAX_WORDS_PER_LINE];
- int limit = collect_columns(last_guess, 0, MAX_WORDS_PER_LINE);
+ struct text_defn last_words[MAX_WORDS_PER_LINE];
+
+ collect_columns(last_words, last_guess, 0, 0, MAX_WORDS_PER_LINE);
rewind_text_to(g);
if ((count_columns(last_guess) == 1) && (is_in_middle(last_guess[0].left, last_guess[0].right))) {
@@ -4115,12 +5511,12 @@ int html_printer::check_able_to_use_table (text_glob *g)
void html_printer::move_vertical (text_glob *g, paragraph_type p)
{
- int r =font::res;
+ int r = font::res;
int height = (g->text_style.point_size+2)*r/72; // --fixme-- we always assume VS is PS+2 (could do better)
int temp_vpos;
if (auto_on) {
- if ((more_than_line_break(output_vpos, g->minv, height)) || (p != para_type)) {
+ if ((more_than_line_break(output_vpos, g->minv, height)) || (p != current_paragraph->para_type)) {
end_paragraph();
begin_paragraph(p);
} else {
@@ -4156,7 +5552,7 @@ void html_printer::move_vertical (text_glob *g, paragraph_type p)
void html_printer::emit_space (text_glob *g, int force_space)
{
- if (! need_paragraph) {
+ if (! current_paragraph->need_paragraph) {
// only generate a space if we have written a word - as html will ignore it otherwise
if ((output_style != g->text_style) && (g->text_style.f != 0)) {
terminate_current_font();
@@ -4177,18 +5573,21 @@ char *html_printer::html_position_text (text_glob *g, int left_margin, int right
{
char *postword=0;
-#if 0
- if (strcmp(g->text_string, "increased.") == 0) {
- stop();
- }
-#endif
begin_paragraph(left_alignment);
if ((! header.written_header) &&
(is_on_same_line(g, output_vpos) ||
pretend_is_on_same_line(g, left_margin, right_margin))) {
- // check whether the font was reset after generating an image
+ /*
+ * check whether we should supress superscripts and subscripts.
+ * I guess we might be able to do better by examining text on this line
+ * --fixme--
+ */
+
+ if ((! is_on_same_line(g, output_vpos)) && (pretend_is_on_same_line(g, left_margin, right_margin))) {
+ supress_sub_sup = TRUE;
+ }
header.written_header = FALSE;
force_begin_paragraph();
@@ -4197,6 +5596,7 @@ char *html_printer::html_position_text (text_glob *g, int left_margin, int right
emit_space(g, TRUE);
}
+ // check whether the font was reset after generating an image
if (output_style.f == 0) {
change_font(g, TRUE);
}
@@ -4220,6 +5620,7 @@ char *html_printer::html_position_text (text_glob *g, int left_margin, int right
} else {
move_horizontal(g, left_margin);
}
+ supress_sub_sup = FALSE;
} else {
// we have found a new line
if (! header.written_header) {
@@ -4239,6 +5640,7 @@ char *html_printer::html_position_text (text_glob *g, int left_margin, int right
make_html_indent(g->minh-left_margin);
}
change_font(g, TRUE);
+ supress_sub_sup = FALSE;
}
}
output_vpos = g->minv;
@@ -4263,18 +5665,13 @@ int html_printer::html_position_region (void)
} else {
temp_vpos = output_vpos;
}
-
-#if 1
+ supress_sub_sup = TRUE;
if (need_one_newline) {
html_newline();
temp_vpos += height;
} else {
need_one_newline = TRUE;
}
-#else
- html_newline();
- temp_vpos += height;
-#endif
while ((temp_vpos < start_region_vpos) &&
(more_than_line_break(temp_vpos, start_region_vpos, height))) {
@@ -4286,29 +5683,15 @@ int html_printer::html_position_region (void)
if (auto_on && (is_in_middle(start_region_hpos, end_region_hpos))) {
is_center = TRUE;
} else {
- if (start_region_hpos > left_margin_indent) {
- html.put_string("<span style=\" text-indent: ");
- html.put_float(((double)(start_region_hpos-left_margin_indent)/((double)r)));
- html.put_string("in;\"></span>");
+ if (start_region_hpos > get_left()) {
+ make_html_indent(start_region_hpos-get_left());
}
}
-#if 0
- } else {
- // on the same line
- if (start_region_hpos > output_hpos) {
- html.put_string("<span style=\" text-indent: ");
- html.put_float(((double)(start_region_hpos-output_hpos)/((double)r)));
- html.put_string("in;\"></span>");
- }
- }
- }
-#endif
output_vpos = start_region_vpos;
output_hpos = start_region_hpos;
return( is_center );
}
-
/*
* gs_x - translate and scale the x axis
*/
@@ -4380,7 +5763,7 @@ void html_printer::end_of_line()
void html_printer::html_display_word (text_glob *g)
{
#if 0
- if (strcmp(g->text_string, "increased.") == 0) {
+ if (strcmp(g->text_string, "ot") == 0) {
stop();
}
#endif
@@ -4391,7 +5774,7 @@ void html_printer::html_display_word (text_glob *g)
if (g->is_raw_command) {
html.put_string((char *)g->text_string);
} else {
- html.html_write_string((char *)g->text_string);
+ translate_to_html(g);
}
if (postword != 0) {
html.put_string(postword);
@@ -4413,7 +5796,7 @@ void html_printer::troff_display_word (text_glob *g)
troff.put_string("\n");
} else if (l > 1) {
troff.put_string("C");
- troff.put_translated_char((char *)g->text_string);
+ troff.put_troffps_char((char *)g->text_string);
troff.put_string("\n");
}
} else {
@@ -4439,30 +5822,29 @@ void html_printer::display_word (text_glob *g, int is_to_html)
}
}
-
/*
- * this information may be better placed inside some of the font files
- * in devhtml - however one must bare in mind that we need the ability
- * to write out to TWO devices (image and html) and image
- * invokes ghostscript.
+ * translate_to_html - translates a textual string into html text
*/
-simple_output &simple_output::html_write_string (const char *s)
+void html_printer::translate_to_html (text_glob *g)
{
- int i=0;
+ char buf[MAX_STRING_LENGTH];
- while (s[i] != (char)0) {
- if (s[i] == '<') {
- put_string("&lt;");
- } else if (s[i] == '>') {
- put_string("&gt;");
- } else {
- fputc(s[i], fp);
- col++;
- }
- i++;
- }
- return *this;
+ str_translate_to_html(g->text_style.f, buf, MAX_STRING_LENGTH,
+ g->text_string, g->text_length, TRUE);
+ html.put_string(buf);
+}
+
+/*
+ * html_knows_about - given a character name, troff, return TRUE
+ * if we know how to display this character using
+ * html unicode.
+ */
+
+int html_printer::html_knows_about (char *troff)
+{
+ // --fixme-- needs to have similar code as above
+ return( FALSE );
}
/*
@@ -4641,101 +6023,25 @@ void html_printer::display_line (graphic_glob *g, int is_to_html)
}
+/*
+ * flush_sbuf - flushes the current sbuf into the list of glyphs.
+ */
+
void html_printer::flush_sbuf()
{
if (sbuf_len > 0) {
- int r=font::res; // resolution of the device actually
+ int r=font::res; // resolution of the device
set_style(sbuf_style);
page_contents->add(&sbuf_style, sbuf, sbuf_len,
sbuf_vpos-sbuf_style.point_size*r/72, sbuf_start_hpos,
- sbuf_vpos, sbuf_end_hpos);
+ sbuf_vpos , sbuf_end_hpos);
output_hpos = sbuf_end_hpos;
output_vpos = sbuf_vpos;
sbuf_len = 0;
+ sbuf_dmark_hpos = -1;
}
-
-#if 0
- enum {
- NONE,
- RELATIVE_H,
- RELATIVE_V,
- RELATIVE_HV,
- ABSOLUTE
- } motion = NONE;
- int space_flag = 0;
- if (sbuf_len == 0)
- return;
-
- if (output_style != sbuf_style) {
- set_style(sbuf_style);
- output_style = sbuf_style;
- }
-
- int extra_space = 0;
- if (output_hpos < 0 || output_vpos < 0)
- motion = ABSOLUTE;
- else {
- if (output_hpos != sbuf_start_hpos)
- motion = RELATIVE_H;
- if (output_vpos != sbuf_vpos) {
- if (motion != NONE)
- motion = RELATIVE_HV;
- else
- motion = RELATIVE_V;
- }
- }
- if (sbuf_space_code >= 0) {
- int w = sbuf_style.f->get_width(space_char_index, sbuf_style.point_size);
- if (w + sbuf_kern != sbuf_space_width) {
- if (sbuf_space_code != output_space_code) {
- output_space_code = sbuf_space_code;
- }
- space_flag = 1;
- extra_space = sbuf_space_width - w - sbuf_kern;
- if (sbuf_space_diff_count > sbuf_space_count/2)
- extra_space++;
- else if (sbuf_space_diff_count < -(sbuf_space_count/2))
- extra_space--;
- }
- }
-
- if (space_flag)
- html.put_number(extra_space);
- if (sbuf_kern != 0)
- html.put_number(sbuf_kern);
-
- html.put_string(sbuf, sbuf_len);
-
- char sym[2];
- sym[0] = 'A' + motion*4 + space_flag + 2*(sbuf_kern != 0);
- sym[1] = '\0';
- switch (motion) {
- case NONE:
- break;
- case ABSOLUTE:
- html.put_number(sbuf_start_hpos)
- .put_number(sbuf_vpos);
- break;
- case RELATIVE_H:
- html.put_number(sbuf_start_hpos - output_hpos);
- break;
- case RELATIVE_V:
- html.put_number(sbuf_vpos - output_vpos);
- break;
- case RELATIVE_HV:
- html.put_number(sbuf_start_hpos - output_hpos)
- .put_number(sbuf_vpos - output_vpos);
- break;
- default:
- assert(0);
- }
-
- output_hpos = sbuf_end_hpos;
- output_vpos = sbuf_vpos;
- sbuf_len = 0;
-#endif
}
@@ -4948,11 +6254,11 @@ html_printer::~html_printer()
write_title(FALSE);
header.write_headings(stdout);
{
- extern const char *version_string;
+ extern const char *Version_string;
html.begin_comment("Creator : ")
.comment_arg("groff ")
.comment_arg("version ")
- .comment_arg(version_string)
+ .comment_arg(Version_string)
.end_comment();
}
{
@@ -4966,9 +6272,6 @@ html_printer::~html_printer()
.comment_arg(ctime(&t))
.end_comment();
}
- for (font_pointer_list *f = font_list; f; f = f->next) {
- html_font *psf = (html_font *)(f->p);
- }
html.begin_comment("Total number of pages: ").comment_arg(itoa(no_of_printed_pages)).end_comment();
html.end_line();
html.copy_file(tempfp);
@@ -5042,29 +6345,63 @@ void html_printer::move_region_to_page (void)
}
}
+/*
+ * is_graphic_start - returns TRUE if the start of table, pic, eqn was seen.
+ */
+
+int is_graphic_start (char *s)
+{
+ return( (strcmp(s, "graphic-start") == 0) ||
+ ((strcmp(s, "table-start") == 0) && (table_image_on)) );
+}
+
+/*
+ * is_graphic_end - return TRUE if the end of a table, pic, eqn was seen.
+ */
+
+int is_graphic_end (char *s)
+{
+ return( (strcmp(s, "graphic-end") == 0) ||
+ ((strcmp(s, "table-end") == 0) && (table_image_on)) );
+}
+
+/*
+ * special - handle all x X requests from troff. For grohtml they allow users
+ * to pass raw html commands, turn auto linked headings off/on and
+ * also allow tbl, eqn & pic say what commands they have generated.
+ */
void html_printer::special(char *s, const environment *env)
{
if (s != 0) {
- if (strcmp(s, "graphic-start") == 0) {
+ if (is_graphic_start(s)) {
graphic_level++;
if (graphic_level == 1) {
page_contents->is_in_graphic = TRUE; // add words and lines to temporary region lists
}
- } else if ((strcmp(s, "graphic-end") == 0) && (graphic_level > 0)) {
+ } else if (is_graphic_end(s) && (graphic_level > 0)) {
graphic_level--;
if (graphic_level == 0) {
flush_graphic();
}
} else if (strncmp(s, "html:", 5) == 0) {
- int r=font::res; // resolution of the device actually
+ int r=font::res; // resolution of the device
+ char buf[MAX_STRING_LENGTH];
+ font *f=sbuf_style.f;
+
+ if (f == NULL) {
+ int found=FALSE;
- page_contents->add_html_command(&sbuf_style, &s[5], strlen(s)-5,
+ f = font::load_font("TR", &found);
+ }
+ str_translate_to_html(f, buf, MAX_STRING_LENGTH,
+ &s[5], strlen(s)-5, FALSE);
+ page_contents->add_html_command(&sbuf_style, buf, strlen(buf),
// need to pass rest of string through to html output during flush
env->vpos-env->size*r/72, env->hpos,
- env->vpos , env->hpos);
+ env->vpos , env->hpos);
// assume that the html command has no width, if it does then we hopefully troff
// will have fudged this in a macro and requested that the formatting move right by
// the appropriate width
@@ -5087,24 +6424,6 @@ void set_image_type (char *type)
}
}
-// A conforming PostScript document must not have lines longer
-// than 255 characters (excluding line termination characters).
-
-static int check_line_lengths(const char *p)
-{
- for (;;) {
- const char *end = strchr(p, '\n');
- if (end == 0)
- end = strchr(p, '\0');
- if (end - p > 255)
- return 0;
- if (*end == '\0')
- break;
- p = end + 1;
- }
- return 1;
-}
-
printer *make_printer()
{
return new html_printer;
@@ -5118,12 +6437,12 @@ int main(int argc, char **argv)
static char stderr_buf[BUFSIZ];
setbuf(stderr, stderr_buf);
int c;
- while ((c = getopt(argc, argv, "F:atvdgmx?I:r:")) != EOF)
+ while ((c = getopt(argc, argv, "F:atTvdgmx?I:r:")) != EOF)
switch(c) {
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "grohtml version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "grohtml version %s\n", Version_string);
fflush(stderr);
break;
}
@@ -5133,6 +6452,9 @@ int main(int argc, char **argv)
case 't':
table_on = FALSE;
break;
+ case 'T':
+ table_image_on = FALSE;
+ break;
case 'F':
font::command_line_font_dir(optarg);
break;
diff --git a/grohtml/html.h b/src/devices/grohtml/html.h
index d61a391a1..370077517 100644
--- a/grohtml/html.h
+++ b/src/devices/grohtml/html.h
@@ -23,8 +23,7 @@ public:
simple_output(FILE *, int max_line_length);
simple_output &put_string(const char *, int);
simple_output &put_string(const char *s);
- simple_output &html_write_string(const char *s);
- simple_output &put_translated_char (const char *s);
+ simple_output &put_troffps_char (const char *s);
simple_output &put_translated_string(const char *s);
simple_output &put_number(int);
simple_output &put_float(double);
@@ -39,13 +38,14 @@ public:
simple_output &include_file(FILE *);
simple_output &copy_file(FILE *);
simple_output &end_line();
- simple_output &put_delimiter(char);
+ simple_output &put_raw_char(char);
simple_output &special(const char *);
+ simple_output &put_html_char (char);
FILE *get_file();
private:
FILE *fp;
- int col;
int max_line_length; // not including newline
+ int col;
int need_space;
int fixed_point;
};
diff --git a/src/devices/grohtml/html_chars.h b/src/devices/grohtml/html_chars.h
new file mode 100755
index 000000000..76f094c83
--- /dev/null
+++ b/src/devices/grohtml/html_chars.h
@@ -0,0 +1,27 @@
+// -*- C++ -*-
+/* Copyright (C) 2000 Free Software Foundation, Inc.
+ *
+ * Gaius Mulley (gaius@glam.ac.uk) wrote output.cc
+ * but it owes a huge amount of ideas and raw code from
+ * James Clark (jjc@jclark.com) grops/ps.cc.
+ *
+ * html_chars.h
+ *
+ * provides a diacritical character combination table for html
+ */
+
+
+
+struct diacritical_desc {
+ char *mark;
+ char *second_troff_char;
+ char translation;
+};
+
+
+static struct diacritical_desc diacritical_table[] = {
+ { "ad" , "aeiouyAEIOU" , ':' , }, /* */
+ { "ac" , "cC" , ',' , }, /* cedilla */
+ { "aa" , "aeiouyAEIOU" , '\'' , }, /* acute */
+ { NULL , NULL , (char)0, },
+};
diff --git a/grohtml/ordered_list.h b/src/devices/grohtml/ordered_list.h
index 52fe1c9e6..52fe1c9e6 100644..100755
--- a/grohtml/ordered_list.h
+++ b/src/devices/grohtml/ordered_list.h
diff --git a/src/devices/grohtml/output.cc b/src/devices/grohtml/output.cc
new file mode 100644
index 000000000..48c85ee0e
--- /dev/null
+++ b/src/devices/grohtml/output.cc
@@ -0,0 +1,257 @@
+// -*- C++ -*-
+/* Copyright (C) 2000 Free Software Foundation, Inc.
+ *
+ * Gaius Mulley (gaius@glam.ac.uk) wrote output.cc
+ * but it owes a huge amount of ideas and raw code from
+ * James Clark (jjc@jclark.com) grops/ps.cc.
+ *
+ * output.cc
+ *
+ * provide the simple low level output routines needed by html.cc
+ */
+
+/*
+This file is part of groff.
+
+groff is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 2, or (at your option) any later
+version.
+
+groff is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License along
+with groff; see the file COPYING. If not, write to the Free Software
+Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#include "driver.h"
+#include "stringclass.h"
+#include "cset.h"
+
+#include <time.h>
+#include "html.h"
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#if !defined(TRUE)
+# define TRUE (1==1)
+#endif
+#if !defined(FALSE)
+# define FALSE (1==0)
+#endif
+
+
+/*
+ * the classes and methods for simple_output manipulation
+ */
+
+simple_output::simple_output(FILE *f, int n)
+: fp(f), col(0), max_line_length(n), need_space(0), fixed_point(0)
+{
+}
+
+simple_output &simple_output::set_file(FILE *f)
+{
+ fp = f;
+ col = 0;
+ return *this;
+}
+
+simple_output &simple_output::copy_file(FILE *infp)
+{
+ int c;
+ while ((c = getc(infp)) != EOF)
+ putc(c, fp);
+ return *this;
+}
+
+simple_output &simple_output::end_line()
+{
+ if (col != 0) {
+ putc('\n', fp);
+ col = 0;
+ need_space = 0;
+ }
+ return *this;
+}
+
+simple_output &simple_output::special(const char *s)
+{
+ return *this;
+}
+
+simple_output &simple_output::simple_comment(const char *s)
+{
+ if (col != 0)
+ putc('\n', fp);
+ fputs("<!-- ", fp);
+ fputs(s, fp);
+ fputs(" -->\n", fp);
+ col = 0;
+ need_space = 0;
+ return *this;
+}
+
+simple_output &simple_output::begin_comment(const char *s)
+{
+ if (col != 0)
+ putc('\n', fp);
+ fputs("<!-- ", fp);
+ fputs(s, fp);
+ col = 5 + strlen(s);
+ return *this;
+}
+
+simple_output &simple_output::end_comment()
+{
+ if (need_space) {
+ putc(' ', fp);
+ }
+ fputs(" -->\n", fp);
+ col = 0;
+ need_space = 0;
+ return *this;
+}
+
+simple_output &simple_output::comment_arg(const char *s)
+{
+ int len = strlen(s);
+
+ if (col + len + 1 > max_line_length) {
+ fputs("\n ", fp);
+ col = 1;
+ }
+ fputs(s, fp);
+ col += len + 1;
+ return *this;
+}
+
+simple_output &simple_output::set_fixed_point(int n)
+{
+ assert(n >= 0 && n <= 10);
+ fixed_point = n;
+ return *this;
+}
+
+simple_output &simple_output::put_raw_char(char c)
+{
+ putc(c, fp);
+ col++;
+ need_space = 0;
+ return *this;
+}
+
+simple_output &simple_output::put_string(const char *s, int n)
+{
+ int i=0;
+
+ while (i<n) {
+ fputc(s[i], fp);
+ i++;
+ }
+ col += n;
+ return *this;
+}
+
+simple_output &simple_output::put_translated_string(const char *s)
+{
+ int i=0;
+
+ while (s[i] != (char)0) {
+ if ((s[i] & 0x7f) == s[i]) {
+ fputc(s[i], fp);
+ }
+ i++;
+ }
+ col += i;
+ return *this;
+}
+
+simple_output &simple_output::put_string(const char *s)
+{
+ int i=0;
+
+ while (s[i] != '\0') {
+ fputc(s[i], fp);
+ i++;
+ }
+ col += i;
+ return *this;
+}
+
+struct html_2_postscript {
+ char *html_char;
+ char *postscript_char;
+};
+
+static struct html_2_postscript ps_char_conversions[] = {
+ { "+-", "char177", },
+ { "eq", "=" , },
+ { "mu", "char215", },
+ { NULL, NULL , },
+};
+
+
+/*
+ * this is an aweful hack which attempts to translate html characters onto
+ * postscript characters. Can this be done inside the devhtml files?
+ *
+ * or should we read the devps files and find out the translations?
+ */
+
+simple_output &simple_output::put_troffps_char (const char *s)
+{
+ int i=0;
+
+ while (ps_char_conversions[i].html_char != NULL) {
+ if (strcmp(s, ps_char_conversions[i].html_char) == 0) {
+ put_string(ps_char_conversions[i].postscript_char);
+ return *this;
+ } else {
+ i++;
+ }
+ }
+ put_string(s);
+ return *this;
+}
+
+simple_output &simple_output::put_number(int n)
+{
+ char buf[1 + INT_DIGITS + 1];
+ sprintf(buf, "%d", n);
+ int len = strlen(buf);
+ put_string(buf, len);
+ need_space = 1;
+ return *this;
+}
+
+simple_output &simple_output::put_float(double d)
+{
+ char buf[128];
+
+ sprintf(buf, "%.4f", d);
+ int len = strlen(buf);
+ put_string(buf, len);
+ need_space = 1;
+ return *this;
+}
+
+
+simple_output &simple_output::put_symbol(const char *s)
+{
+ int len = strlen(s);
+
+ if (need_space) {
+ putc(' ', fp);
+ col++;
+ }
+ fputs(s, fp);
+ col += len;
+ need_space = 1;
+ return *this;
+}
diff --git a/grolj4/Makefile.sub b/src/devices/grolj4/Makefile.sub
index 83b571275..bbb0cff0d 100644
--- a/grolj4/Makefile.sub
+++ b/src/devices/grolj4/Makefile.sub
@@ -3,4 +3,4 @@ MAN1=grolj4.n
XLIBS=$(LIBDRIVER) $(LIBGROFF)
MLIB=$(LIBM)
OBJS=lj4.o
-CCSRCS=lj4.cc
+CCSRCS=$(srcdir)/lj4.cc
diff --git a/grolj4/grolj4.man b/src/devices/grolj4/grolj4.man
index 9a7c7fde7..9a7c7fde7 100644
--- a/grolj4/grolj4.man
+++ b/src/devices/grolj4/grolj4.man
diff --git a/grolj4/lj4.cc b/src/devices/grolj4/lj4.cc
index 002503abe..163742a5f 100644
--- a/grolj4/lj4.cc
+++ b/src/devices/grolj4/lj4.cc
@@ -567,11 +567,11 @@ printer *make_printer()
static
int lookup_paper_size(const char *s)
{
- for (int i = 0; i < sizeof(paper_table)/sizeof(paper_table[0]); i++)
- // FIXME Do this case-insensitively.
- // Perhaps allow unique prefix.
- if (strcmp(s, paper_table[i].name) == 0)
+ for (int i = 0; i < sizeof(paper_table)/sizeof(paper_table[0]); i++) {
+ // FIXME Perhaps allow unique prefix.
+ if (strcasecmp(s, paper_table[i].name) == 0)
return i;
+ }
return -1;
}
@@ -637,8 +637,8 @@ int main(int argc, char **argv)
}
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "grolj4 version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "grolj4 version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/src/devices/grops/Makefile.sub b/src/devices/grops/Makefile.sub
new file mode 100644
index 000000000..4182527d5
--- /dev/null
+++ b/src/devices/grops/Makefile.sub
@@ -0,0 +1,12 @@
+PROG=grops
+MAN1=grops.n
+XLIBS=$(LIBDRIVER) $(LIBGROFF)
+MLIB=$(LIBM)
+OBJS=\
+ ps.o \
+ psrm.o
+CCSRCS=\
+ $(srcdir)/ps.cc \
+ $(srcdir)/psrm.cc
+HDRS=\
+ $(srcdir)/ps.h
diff --git a/grops/TODO b/src/devices/grops/TODO
index da67973a2..da67973a2 100644
--- a/grops/TODO
+++ b/src/devices/grops/TODO
diff --git a/grops/grops.man b/src/devices/grops/grops.man
index 6ac082f36..9213c74e6 100644
--- a/grops/grops.man
+++ b/src/devices/grops/grops.man
@@ -524,10 +524,8 @@ Conventions and contains a
.B %%BoundingBox
comment, then the bounding box can be automatically
extracted from within groff by using the
-.B sy
-request to run the
.B psbb
-command.
+request.
.RS
.LP
The
diff --git a/grops/ps.cc b/src/devices/grops/ps.cc
index 053161a41..0134c823f 100644
--- a/grops/ps.cc
+++ b/src/devices/grops/ps.cc
@@ -70,7 +70,7 @@ inline int is_ascii(char c)
}
ps_output::ps_output(FILE *f, int n)
-: fp(f), max_line_length(n), col(0), need_space(0), fixed_point(0)
+: fp(f), col(0), max_line_length(n), need_space(0), fixed_point(0)
{
}
@@ -381,7 +381,7 @@ ps_font *ps_font::load_ps_font(const char *s)
}
ps_font::ps_font(const char *nm)
-: font(nm), encoding(0), reencoded_name(0), encoding_index(-1)
+: font(nm), encoding_index(-1), encoding(0), reencoded_name(0)
{
}
@@ -512,15 +512,15 @@ public:
};
ps_printer::ps_printer()
-: pages_output(0),
+: out(0, MAX_LINE_LENGTH),
+ pages_output(0),
sbuf_len(0),
output_hpos(-1),
output_vpos(-1),
- out(0, MAX_LINE_LENGTH),
- ndefined_styles(0),
- next_encoding_index(0),
line_thickness(-1),
fill(FILL_MAX + 1),
+ ndefined_styles(0),
+ next_encoding_index(0),
ndefs(0),
invis_count(0)
{
@@ -1106,11 +1106,11 @@ ps_printer::~ps_printer()
putchar('\n');
out.set_file(stdout);
{
- extern const char *version_string;
+ extern const char *Version_string;
out.begin_comment("Creator:")
.comment_arg("groff")
.comment_arg("version")
- .comment_arg(version_string)
+ .comment_arg(Version_string)
.end_comment();
}
{
@@ -1473,8 +1473,8 @@ int main(int argc, char **argv)
switch(c) {
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "grops version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "grops version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/grops/ps.h b/src/devices/grops/ps.h
index 6e78597d1..6e78597d1 100644
--- a/grops/ps.h
+++ b/src/devices/grops/ps.h
diff --git a/grops/psfig.diff b/src/devices/grops/psfig.diff
index 5be080ddd..5be080ddd 100644
--- a/grops/psfig.diff
+++ b/src/devices/grops/psfig.diff
diff --git a/grops/psrm.cc b/src/devices/grops/psrm.cc
index 140b154e7..91b7e6f13 100644
--- a/grops/psrm.cc
+++ b/src/devices/grops/psrm.cc
@@ -51,6 +51,29 @@ const char *resource_table[] = {
const int NRESOURCES = sizeof(resource_table)/sizeof(resource_table[0]);
+static int read_uint_arg(const char **pp, unsigned *res)
+{
+ while (white_space(**pp))
+ *pp += 1;
+ if (**pp == '\0') {
+ error("missing argument");
+ return 0;
+ }
+ const char *start = *pp;
+ // XXX use strtoul
+ long n = strtol(start, (char **)pp, 10);
+ if (n == 0 && *pp == start) {
+ error("not an integer");
+ return 0;
+ }
+ if (n < 0) {
+ error("argument must not be negative");
+ return 0;
+ }
+ *res = unsigned(n);
+ return 1;
+}
+
struct resource {
resource *next;
resource_type type;
@@ -67,7 +90,7 @@ struct resource {
};
resource::resource(resource_type t, string &n, string &v, unsigned r)
-: type(t), revision(r), flags (0), filename(0), rank(-1), next(0)
+: next(0), type(t), flags(0), revision(r), filename(0), rank(-1)
{
name.move(n);
version.move(v);
@@ -96,14 +119,18 @@ void resource::print_type_and_name(FILE *outfp)
}
resource_manager::resource_manager()
-: resource_list(0), extensions(0), language_level(0)
+: extensions(0), language_level(0), resource_list(0)
{
read_download_file();
string procset_name("grops");
extern const char *version_string;
+ extern const char *revision_string;
+ unsigned revision_uint;
+ if ( !read_uint_arg( &revision_string, &revision_uint) )
+ revision_uint = 0;
string procset_version(version_string);
procset_resource = lookup_resource(RESOURCE_PROCSET, procset_name,
- procset_version, 0);
+ procset_version, revision_uint);
procset_resource->flags |= resource::SUPPLIED;
}
@@ -450,29 +477,6 @@ static int read_text_arg(const char **pp, string &res)
return 1;
}
-static int read_uint_arg(const char **pp, unsigned *res)
-{
- while (white_space(**pp))
- *pp += 1;
- if (**pp == '\0') {
- error("missing argument");
- return 0;
- }
- const char *start = *pp;
- // XXX use strtoul
- long n = strtol(start, (char **)pp, 10);
- if (n == 0 && *pp == start) {
- error("not an integer");
- return 0;
- }
- if (n < 0) {
- error("argument must not be negative");
- return 0;
- }
- *res = unsigned(n);
- return 1;
-}
-
resource *resource_manager::read_file_arg(const char **ptr)
{
string arg;
@@ -695,7 +699,7 @@ int read_one_of(const char **ptr, const char **s, int n)
return -1;
const char *start = *ptr;
do {
- ++ptr;
+ ++(*ptr);
} while (**ptr != '\0' && !white_space(**ptr));
for (int i = 0; i < n; i++)
if (strlen(s[i]) == *ptr - start
@@ -940,13 +944,13 @@ void resource_manager::process_file(int rank, FILE *fp, const char *filename,
const char *ptr;
int i;
for (i = 0; i < NCOMMENTS; i++)
- if (ptr = matches_comment(buf, comment_table[i].name)) {
+ if ((ptr = matches_comment(buf, comment_table[i].name))) {
copy_this_line
= (this->*(comment_table[i].proc))(ptr, rank, fp, outfp);
break;
}
if (i >= NCOMMENTS && in_header) {
- if (ptr = matches_comment(buf, "EndComments"))
+ if ((ptr = matches_comment(buf, "EndComments")))
in_header = 0;
else if (!had_extensions_comment
&& (ptr = matches_comment(buf, "Extensions:"))) {
diff --git a/grotty/Makefile.sub b/src/devices/grotty/Makefile.sub
index b0002cb88..91d3908c0 100644
--- a/grotty/Makefile.sub
+++ b/src/devices/grotty/Makefile.sub
@@ -3,4 +3,4 @@ MAN1=grotty.n
XLIBS=$(LIBDRIVER) $(LIBGROFF)
MLIB=$(LIBM)
OBJS=tty.o
-CCSRCS=tty.cc
+CCSRCS=$(srcdir)/tty.cc
diff --git a/grotty/TODO b/src/devices/grotty/TODO
index 3f23dc35d..3f23dc35d 100644
--- a/grotty/TODO
+++ b/src/devices/grotty/TODO
diff --git a/grotty/grotty.man b/src/devices/grotty/grotty.man
index d8d6ebdeb..c189518ad 100644
--- a/grotty/grotty.man
+++ b/src/devices/grotty/grotty.man
@@ -1,5 +1,5 @@
.ig \"-*- nroff -*-
-Copyright (C) 1989-1995 Free Software Foundation, Inc.
+Copyright (C) 1989-2000 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -39,9 +39,10 @@ should invoked by using the
.B groff
command
with a
-.B \-Tascii
-or
+.BR \-Tascii ,
.B \-Tlatin1
+or
+.B \-Tutf8
option.
If no files are given,
.B grotty
@@ -118,9 +119,10 @@ Search the directory
for font and device description files;
.I name
is the name of the device, usually
-.B ascii
+.BR ascii ,
+.B latin1
or
-.BR latin1 .
+.BR utf8 .
.TP
.B \-h
Use horizontal tabs in the output.
@@ -189,6 +191,17 @@ Font description file for font
of
.B latin1 device.
.TP
+.B @FONTDIR@/devutf8/DESC
+Device description file for
+.B utf8
+device.
+.TP
+.B @FONTDIR@/devutf8/ F
+Font description file for font
+.I F
+of
+.B utf8 device.
+.TP
.B @MACRODIR@/tmac.tty
Macros for use with
.BR grotty .
diff --git a/grotty/tty.cc b/src/devices/grotty/tty.cc
index c44edc6c2..63d8fb8fe 100644
--- a/grotty/tty.cc
+++ b/src/devices/grotty/tty.cc
@@ -1,5 +1,5 @@
// -*- C++ -*-
-/* Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2000 Free Software Foundation, Inc.
Written by James Clark (jjc@jclark.com)
This file is part of groff.
@@ -19,6 +19,7 @@ with groff; see the file COPYING. If not, write to the Free Software
Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "driver.h"
+#include "device.h"
#ifndef SHRT_MIN
#define SHRT_MIN (-32768)
@@ -103,7 +104,7 @@ class glyph {
public:
glyph *next;
short hpos;
- unsigned char code;
+ unsigned int code;
unsigned char mode;
void *operator new(size_t);
void operator delete(void *);
@@ -136,23 +137,26 @@ void glyph::operator delete(void *p)
}
class tty_printer : public printer {
+ int is_utf8;
glyph **lines;
int nlines;
int cached_v;
int cached_vpos;
- void add_char(unsigned char, int, int, unsigned char);
+ void add_char(unsigned int, int, int, unsigned char);
public:
- tty_printer();
+ tty_printer(const char *device);
~tty_printer();
void set_char(int, font *, const environment *, int, const char *name);
void draw(int code, int *p, int np, const environment *env);
+ void put_char(unsigned int);
void begin_page(int) { }
void end_page(int page_length);
font *make_font(const char *);
};
-tty_printer::tty_printer() : cached_v(0)
+tty_printer::tty_printer(const char *device) : cached_v(0)
{
+ is_utf8 = !strcmp(device,"utf8");
nlines = 66;
lines = new glyph *[nlines];
for (int i = 0; i < nlines; i++)
@@ -171,7 +175,7 @@ void tty_printer::set_char(int i, font *f, const environment *env, int w, const
add_char(f->get_code(i), env->hpos, env->vpos, ((tty_font *)f)->get_mode());
}
-void tty_printer::add_char(unsigned char c, int h, int v, unsigned char mode)
+void tty_printer::add_char(unsigned int c, int h, int v, unsigned char mode)
{
#if 0
// This is too expensive.
@@ -266,6 +270,33 @@ void tty_printer::draw(int code, int *p, int np, const environment *env)
}
}
+void tty_printer::put_char (unsigned int wc)
+{
+ if (is_utf8 && wc >= 0x80) {
+ char buf[6+1];
+ int count;
+ char *p = buf;
+ if (wc < 0x800)
+ count = 1, *p = (unsigned char) ((wc >> 6) | 0xC0);
+ else if (wc < 0x10000)
+ count = 2, *p = (unsigned char) ((wc >> 12) | 0xE0);
+ else if (wc < 0x200000)
+ count = 3, *p = (unsigned char) ((wc >> 18) | 0xF0);
+ else if (wc < 0x4000000)
+ count = 4, *p = (unsigned char) ((wc >> 24) | 0xF8);
+ else if (wc <= 0x7FFFFFFF)
+ count = 5, *p = (unsigned char) ((wc >> 30) | 0xFC);
+ else
+ return;
+ do *++p = (unsigned char)(((wc >> (6 * --count)) & 0x3F) | 0x80);
+ while (count > 0);
+ *++p = '\0';
+ fputs(buf,stdout);
+ } else {
+ putchar(wc);
+ }
+}
+
void tty_printer::end_page(int page_length)
{
if (page_length % font::vert != 0)
@@ -340,10 +371,10 @@ void tty_printer::end_page(int page_length)
putchar('\b');
}
if (p->mode & BOLD_MODE) {
- putchar(p->code);
+ put_char(p->code);
putchar('\b');
}
- putchar(p->code);
+ put_char(p->code);
hpos++;
}
putchar('\n');
@@ -365,7 +396,7 @@ font *tty_printer::make_font(const char *nm)
printer *make_printer()
{
- return new tty_printer;
+ return new tty_printer(device);
}
static void usage();
@@ -380,8 +411,8 @@ int main(int argc, char **argv)
switch(c) {
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "grotty version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "grotty version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/include/Makefile.sub b/src/include/Makefile.sub
index 35d34401c..191c4ccfc 100644
--- a/include/Makefile.sub
+++ b/src/include/Makefile.sub
@@ -1,4 +1,5 @@
-HDRS=assert.h cmap.h cset.h device.h driver.h errarg.h error.h font.h index.h \
+HDRS=\
+ assert.h cmap.h cset.h device.h driver.h errarg.h error.h font.h index.h \
lib.h macropath.h printer.h ptable.h refid.h search.h searchpath.h \
stringclass.h
GENHDRS=defs.h
@@ -7,9 +8,11 @@ CLEANADD=$(GENHDRS)
all depend: $(GENHDRS)
defs.h: FORCE
- @$(SHELL) $(srcdir)/../gendef.sh defs.h \
- "PROG_PREFIX=\"$(g)\"" "DEVICE=\"$(DEVICE)\"" \
- "FONTPATH=\"$(fontpath)\"" "MACROPATH=\"$(tmacpath)\"" \
+ @$(SHELL) $(top_srcdir)/gendef.sh defs.h \
+ "PROG_PREFIX=\"$(g)\"" \
+ "DEVICE=\"$(DEVICE)\"" \
+ "FONTPATH=\"$(fontpath)\"" \
+ "MACROPATH=\"$(tmacpath)\"" \
"INDEX_SUFFIX=\"$(indexext)\"" \
"COMMON_WORDS_FILE=\"$(common_words_file)\"" \
"DEFAULT_INDEX_DIR=\"$(indexdir)\"" \
diff --git a/include/assert.h b/src/include/assert.h
index 18d9c2623..18d9c2623 100644
--- a/include/assert.h
+++ b/src/include/assert.h
diff --git a/include/cmap.h b/src/include/cmap.h
index 1537d4627..1537d4627 100644
--- a/include/cmap.h
+++ b/src/include/cmap.h
diff --git a/include/cset.h b/src/include/cset.h
index b3a1a9761..b3a1a9761 100644
--- a/include/cset.h
+++ b/src/include/cset.h
diff --git a/include/device.h b/src/include/device.h
index 341af8d2a..341af8d2a 100644
--- a/include/device.h
+++ b/src/include/device.h
diff --git a/include/driver.h b/src/include/driver.h
index c18cdd422..c18cdd422 100644
--- a/include/driver.h
+++ b/src/include/driver.h
diff --git a/include/errarg.h b/src/include/errarg.h
index 0c7957c85..0c7957c85 100644
--- a/include/errarg.h
+++ b/src/include/errarg.h
diff --git a/include/error.h b/src/include/error.h
index d26e2c70f..d26e2c70f 100644
--- a/include/error.h
+++ b/src/include/error.h
diff --git a/include/font.h b/src/include/font.h
index e981bc1d0..099f97bea 100644
--- a/include/font.h
+++ b/src/include/font.h
@@ -50,6 +50,7 @@ public:
int get_left_italic_correction(int index, int point_size);
int get_subscript_correction(int index, int point_size);
int get_code(int i);
+ const char *get_special_device_encoding(int index);
const char *get_name();
const char *get_internal_name();
@@ -72,6 +73,8 @@ public:
static int spare2;
static int sizescale;
static int tcommand;
+ static int pass_filenames;
+ static int use_charnames_in_special;
static const char **font_name_table;
static const char **style_table;
diff --git a/include/index.h b/src/include/index.h
index 7e6081381..7e6081381 100644
--- a/include/index.h
+++ b/src/include/index.h
diff --git a/include/lib.h b/src/include/lib.h
index 1c46089ac..b309a77be 100644
--- a/include/lib.h
+++ b/src/include/lib.h
@@ -76,6 +76,10 @@ inline int illegal_input_char(int c)
return c >= 0 && illegal_char_table[c];
}
+#ifndef HAVE_STRCASECMP
+# define strcasecmp(a,b) strcmp((a),(b))
+#endif
+
#ifdef HAVE_CC_LIMITS_H
#include <limits.h>
#else /* not HAVE_CC_LIMITS_H */
diff --git a/include/macropath.h b/src/include/macropath.h
index 4aa2f00c5..4aa2f00c5 100644
--- a/include/macropath.h
+++ b/src/include/macropath.h
diff --git a/include/posix.h b/src/include/posix.h
index 312e49b7f..312e49b7f 100644
--- a/include/posix.h
+++ b/src/include/posix.h
diff --git a/include/printer.h b/src/include/printer.h
index 974c9d5b0..974c9d5b0 100644
--- a/include/printer.h
+++ b/src/include/printer.h
diff --git a/include/ptable.h b/src/include/ptable.h
index dc56add0f..dc56add0f 100644
--- a/include/ptable.h
+++ b/src/include/ptable.h
diff --git a/include/refid.h b/src/include/refid.h
index 605427e9a..605427e9a 100644
--- a/include/refid.h
+++ b/src/include/refid.h
diff --git a/include/search.h b/src/include/search.h
index 260410e23..260410e23 100644
--- a/include/search.h
+++ b/src/include/search.h
diff --git a/include/searchpath.h b/src/include/searchpath.h
index d1cb2eeee..d1cb2eeee 100644
--- a/include/searchpath.h
+++ b/src/include/searchpath.h
diff --git a/include/stringclass.h b/src/include/stringclass.h
index be3a044fb..be3a044fb 100644
--- a/include/stringclass.h
+++ b/src/include/stringclass.h
diff --git a/include/unix.h b/src/include/unix.h
index e69de29bb..e69de29bb 100644..100755
--- a/include/unix.h
+++ b/src/include/unix.h
diff --git a/src/libs/libbib/Makefile.sub b/src/libs/libbib/Makefile.sub
new file mode 100644
index 000000000..482f01abc
--- /dev/null
+++ b/src/libs/libbib/Makefile.sub
@@ -0,0 +1,14 @@
+LIB=bib
+OBJS=\
+ common.o \
+ index.o \
+ linear.o \
+ search.o \
+ map.o
+CCSRCS=\
+ $(srcdir)/common.cc \
+ $(srcdir)/index.cc \
+ $(srcdir)/linear.cc \
+ $(srcdir)/search.cc
+CSRCS=\
+ $(srcdir)/map.c
diff --git a/libbib/common.cc b/src/libs/libbib/common.cc
index 4b2bcca23..4b2bcca23 100644
--- a/libbib/common.cc
+++ b/src/libs/libbib/common.cc
diff --git a/libbib/index.cc b/src/libs/libbib/index.cc
index 2c11f06cd..6717fcbd3 100644
--- a/libbib/index.cc
+++ b/src/libs/libbib/index.cc
@@ -105,9 +105,9 @@ public:
index_search_item::index_search_item(const char *filename, int fid)
-: search_item(filename, fid), out_of_date_files(0), key_buffer(0),
- filename_buffer(0), filename_buflen(0), common_words_table(0),
- map_addr(0), map_len(0), buffer(0)
+: search_item(filename, fid), out_of_date_files(0), buffer(0), map_addr(0),
+ map_len(0), key_buffer(0), filename_buffer(0), filename_buflen(0),
+ common_words_table(0)
{
}
@@ -297,9 +297,10 @@ search_item *make_index_search_item(const char *filename, int fid)
index_search_item_iterator::index_search_item_iterator(index_search_item *ind,
const char *q)
-: indx(ind), buf(0), buflen(0), temp_list(0), query(strsave(q)),
+: indx(ind), out_of_date_files_iter(0), next_out_of_date_file(0), temp_list(0),
+ buf(0), buflen(0),
searcher(q, strlen(q), ind->ignore_fields, ind->header.truncate),
- out_of_date_files_iter(0), next_out_of_date_file(0)
+ query(strsave(q))
{
found_list = indx->search(q, strlen(q), &temp_list);
if (!found_list) {
diff --git a/libbib/linear.cc b/src/libs/libbib/linear.cc
index 3d2729af1..77bd23126 100644
--- a/libbib/linear.cc
+++ b/src/libs/libbib/linear.cc
@@ -345,7 +345,7 @@ int file_buffer::load(int fd, const char *filename)
linear_searcher::linear_searcher(const char *query, int query_len,
const char *ign, int trunc)
-: keys(0), nkeys(0), truncate_len(trunc), ignore_fields(ign)
+: ignore_fields(ign), truncate_len(trunc), keys(0), nkeys(0)
{
const char *query_end = query + query_len;
int nk = 0;
diff --git a/libbib/map.c b/src/libs/libbib/map.c
index 3632a11ef..3632a11ef 100644
--- a/libbib/map.c
+++ b/src/libs/libbib/map.c
diff --git a/libbib/search.cc b/src/libs/libbib/search.cc
index b5363b02d..8c7b3e162 100644
--- a/libbib/search.cc
+++ b/src/libs/libbib/search.cc
@@ -107,7 +107,7 @@ int search_list_iterator::next(const char **pp, int *lenp, reference_id *ridp)
}
search_item::search_item(const char *nm, int fid)
-: next(0), name(strsave(nm)), filename_id(fid)
+: name(strsave(nm)), filename_id(fid), next(0)
{
}
diff --git a/src/libs/libdriver/Makefile.sub b/src/libs/libdriver/Makefile.sub
new file mode 100644
index 000000000..d50f060bd
--- /dev/null
+++ b/src/libs/libdriver/Makefile.sub
@@ -0,0 +1,7 @@
+LIB=driver
+OBJS=\
+ input.o \
+ printer.o
+CCSRCS=\
+ $(srcdir)/input.cc \
+ $(srcdir)/printer.cc
diff --git a/libdriver/input.cc b/src/libs/libdriver/input.cc
index 41411dc83..ba71a5b3e 100644
--- a/libdriver/input.cc
+++ b/src/libs/libdriver/input.cc
@@ -22,7 +22,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "device.h"
#include "cset.h"
-const char *current_filename;
+const char *current_filename=0;
int current_lineno;
const char *device = 0;
FILE *current_file;
@@ -49,11 +49,31 @@ inline int get_char()
return getc(current_file);
}
+/*
+ * remember_filename - is needed as get_string might overwrite the
+ * filename eventually.
+ */
+
+void remember_filename (const char *filename)
+{
+ if (current_filename != 0) {
+ free((char *)current_filename);
+ }
+ if (strcmp(filename, "-") == 0) {
+ filename = "<standard input>";
+ }
+ current_filename = (const char *)malloc(strlen(filename)+1);
+ if (current_filename == 0) {
+ fatal("can't malloc space for filename");
+ }
+ strcpy((char *)current_filename, (char *)filename);
+}
+
void do_file(const char *filename)
{
int npages = 0;
if (filename[0] == '-' && filename[1] == '\0') {
- current_filename = "<standard input>";
+ remember_filename(filename);
current_file = stdin;
}
else {
@@ -63,7 +83,7 @@ void do_file(const char *filename)
error("can't open `%1'", filename);
return;
}
- current_filename = filename;
+ remember_filename(filename);
}
environment env;
env.vpos = -1;
@@ -130,6 +150,9 @@ void do_file(const char *filename)
case 'f':
env.fontno = get_integer();
break;
+ case 'F':
+ remember_filename(get_string());
+ break;
case 'C':
{
if (npages == 0)
diff --git a/libdriver/printer.cc b/src/libs/libdriver/printer.cc
index 7abe74624..770aa5071 100644
--- a/libdriver/printer.cc
+++ b/src/libs/libdriver/printer.cc
@@ -28,7 +28,7 @@ font_pointer_list::font_pointer_list(font *f, font_pointer_list *fp)
}
printer::printer()
-: font_table(0), nfonts(0), font_list(0)
+: font_list(0), font_table(0), nfonts(0)
{
}
diff --git a/src/libs/libgroff/Makefile.sub b/src/libs/libgroff/Makefile.sub
new file mode 100644
index 000000000..d854f4c76
--- /dev/null
+++ b/src/libs/libgroff/Makefile.sub
@@ -0,0 +1,78 @@
+LIB=groff
+OBJS=\
+ assert.o \
+ change_lf.o \
+ cmap.o \
+ cset.o \
+ device.o \
+ errarg.o \
+ error.o \
+ fatal.o \
+ filename.o \
+ font.o \
+ fontfile.o \
+ lf.o \
+ lineno.o \
+ macropath.o \
+ nametoindex.o \
+ new.o \
+ prime.o \
+ progname.o \
+ ptable.o \
+ searchpath.o \
+ string.o \
+ strsave.o \
+ tmpfile.o \
+ iftoa.o \
+ itoa.o \
+ matherr.o \
+ version.o \
+ illegal.o \
+ $(LIBOBJS)
+CCSRCS=\
+ $(srcdir)/assert.cc \
+ $(srcdir)/change_lf.cc \
+ $(srcdir)/cmap.cc \
+ $(srcdir)/cset.cc \
+ $(srcdir)/device.cc \
+ $(srcdir)/errarg.cc \
+ $(srcdir)/error.cc \
+ $(srcdir)/fatal.cc \
+ $(srcdir)/filename.cc \
+ $(srcdir)/font.cc \
+ $(srcdir)/fontfile.cc \
+ $(srcdir)/lf.cc \
+ $(srcdir)/lineno.cc \
+ $(srcdir)/macropath.cc \
+ $(srcdir)/nametoindex.cc \
+ $(srcdir)/new.cc \
+ $(srcdir)/prime.cc \
+ $(srcdir)/progname.cc \
+ $(srcdir)/ptable.cc \
+ $(srcdir)/searchpath.cc \
+ $(srcdir)/string.cc \
+ $(srcdir)/strsave.cc \
+ $(srcdir)/tmpfile.cc \
+ version.cc \
+ $(srcdir)/illegal.cc
+CSRCS=\
+ $(srcdir)/fmod.c \
+ $(srcdir)/getcwd.c \
+ $(srcdir)/iftoa.c \
+ $(srcdir)/itoa.c \
+ $(srcdir)/matherr.c \
+ $(srcdir)/strerror.c \
+ $(srcdir)/strtol.c \
+ $(srcdir)/putenv.c
+GENSRCS=\
+ version.cc
+
+version=`cat $(top_srcdir)/VERSION`
+revision=`cat $(top_srcdir)/REVISION`
+
+version.cc: $(top_srcdir)/VERSION $(top_srcdir)/REVISION
+ @echo Making version.cc
+ @echo const char \*version_string = \"$(version)\"\; >$@
+ @echo const char \*revision_string = \"$(revision)\"\; >>$@
+ @echo const char \*Version_string = \"$(version).$(revision)\"\; | \
+ sed -e 's/\.0\"/\"/' >>$@
diff --git a/libgroff/assert.cc b/src/libs/libgroff/assert.cc
index 89742e32c..89742e32c 100644
--- a/libgroff/assert.cc
+++ b/src/libs/libgroff/assert.cc
diff --git a/libgroff/change_lf.cc b/src/libs/libgroff/change_lf.cc
index 2e44af1d5..2e44af1d5 100644
--- a/libgroff/change_lf.cc
+++ b/src/libs/libgroff/change_lf.cc
diff --git a/libgroff/cmap.cc b/src/libs/libgroff/cmap.cc
index 4b75d06f1..4b75d06f1 100644
--- a/libgroff/cmap.cc
+++ b/src/libs/libgroff/cmap.cc
diff --git a/libgroff/cset.cc b/src/libs/libgroff/cset.cc
index e4845c110..e4845c110 100644
--- a/libgroff/cset.cc
+++ b/src/libs/libgroff/cset.cc
diff --git a/libgroff/device.cc b/src/libs/libgroff/device.cc
index 7efbfef25..7efbfef25 100644
--- a/libgroff/device.cc
+++ b/src/libs/libgroff/device.cc
diff --git a/libgroff/errarg.cc b/src/libs/libgroff/errarg.cc
index ea30c370b..ea30c370b 100644
--- a/libgroff/errarg.cc
+++ b/src/libs/libgroff/errarg.cc
diff --git a/libgroff/error.cc b/src/libs/libgroff/error.cc
index 53fd62984..53fd62984 100644
--- a/libgroff/error.cc
+++ b/src/libs/libgroff/error.cc
diff --git a/libgroff/fatal.cc b/src/libs/libgroff/fatal.cc
index 42560dcaf..42560dcaf 100644
--- a/libgroff/fatal.cc
+++ b/src/libs/libgroff/fatal.cc
diff --git a/libgroff/filename.cc b/src/libs/libgroff/filename.cc
index 1cbaa93dd..1cbaa93dd 100644
--- a/libgroff/filename.cc
+++ b/src/libs/libgroff/filename.cc
diff --git a/libgroff/fmod.c b/src/libs/libgroff/fmod.c
index 818f946ed..818f946ed 100644
--- a/libgroff/fmod.c
+++ b/src/libs/libgroff/fmod.c
diff --git a/libgroff/font.cc b/src/libs/libgroff/font.cc
index 40e49bde4..bc8306930 100644
--- a/libgroff/font.cc
+++ b/src/libs/libgroff/font.cc
@@ -41,6 +41,7 @@ struct font_char_metric {
int pre_math_space;
int italic_correction;
int subscript_correction;
+ char *special_device_coding;
};
struct font_kern_list {
@@ -80,7 +81,7 @@ struct text_file {
};
text_file::text_file(FILE *p, char *s)
-: lineno(0), buf(0), size(0), skip_comments(1), fp(p), path(s)
+: fp(p), path(s), lineno(0), size(0), skip_comments(1), buf(0)
{
}
@@ -147,8 +148,8 @@ void text_file::error(const char *format,
/* font functions */
font::font(const char *s)
-: special(0), ligatures(0), kern_hash_table(0), space_width(0),
- ch(0), ch_used(0), ch_size(0), ch_index(0), nindices(0), widths_cache(0)
+: ligatures(0), kern_hash_table(0), space_width(0), ch_index(0), nindices(0),
+ ch(0), ch_used(0), ch_size(0), special(0), widths_cache(0)
{
name = new char[strlen(s) + 1];
strcpy(name, s);
@@ -359,6 +360,12 @@ const char *font::get_internal_name()
return internalname;
}
+const char *font::get_special_device_encoding(int c)
+{
+ assert(c >= 0 && c < nindices && ch_index[c] >= 0);
+ return( ch[ch_index[c]].special_device_coding );
+}
+
void font::alloc_ch_index(int index)
{
if (nindices == 0) {
@@ -663,6 +670,20 @@ int font::load(int *not_found)
t.error("bad code `%1' for character `%2'", p, nm);
return 0;
}
+
+ p = strtok(0, WS);
+ if ((p == NULL) || (strcmp(p, "--") == 0)) {
+ metric.special_device_coding = NULL;
+ } else {
+ char *name=(char *)malloc(strlen(p)+1);
+
+ if (name == NULL) {
+ fatal("malloc failed while reading character encoding");
+ }
+ strcpy(name, p);
+ metric.special_device_coding = name;
+ }
+
if (strcmp(nm, "---") == 0) {
last_index = number_to_index(metric.code);
add_entry(last_index, metric);
@@ -750,6 +771,12 @@ int font::load_desc()
else if (strcmp("tcommand", p) == 0) {
tcommand = 1;
}
+ else if (strcmp("pass_filenames", p) == 0) {
+ pass_filenames = 1;
+ }
+ else if (strcmp("use_charnames_in_special", p) == 0) {
+ use_charnames_in_special = 1;
+ }
else if (strcmp("family", p) == 0) {
p = strtok(0, WS);
if (!p) {
diff --git a/libgroff/fontfile.cc b/src/libs/libgroff/fontfile.cc
index e86579aee..fa87b861f 100644
--- a/libgroff/fontfile.cc
+++ b/src/libs/libgroff/fontfile.cc
@@ -43,6 +43,8 @@ int font::biggestfont = 0;
int font::spare2 = 0;
int font::sizescale = 1;
int font::tcommand = 0;
+int font::pass_filenames = 0;
+int font::use_charnames_in_special = 0;
const char **font::font_name_table = 0;
int *font::sizes = 0;
const char *font::family = 0;
diff --git a/libgroff/getcwd.c b/src/libs/libgroff/getcwd.c
index 208e81118..208e81118 100644
--- a/libgroff/getcwd.c
+++ b/src/libs/libgroff/getcwd.c
diff --git a/libgroff/iftoa.c b/src/libs/libgroff/iftoa.c
index 75cd5e44d..75cd5e44d 100644
--- a/libgroff/iftoa.c
+++ b/src/libs/libgroff/iftoa.c
diff --git a/libgroff/illegal.cc b/src/libs/libgroff/illegal.cc
index 10f4d5bd7..10f4d5bd7 100644..100755
--- a/libgroff/illegal.cc
+++ b/src/libs/libgroff/illegal.cc
diff --git a/libgroff/itoa.c b/src/libs/libgroff/itoa.c
index 69f21cc88..69f21cc88 100644
--- a/libgroff/itoa.c
+++ b/src/libs/libgroff/itoa.c
diff --git a/libgroff/lf.cc b/src/libs/libgroff/lf.cc
index 34272c7d0..34272c7d0 100644
--- a/libgroff/lf.cc
+++ b/src/libs/libgroff/lf.cc
diff --git a/libgroff/lineno.cc b/src/libs/libgroff/lineno.cc
index f7138dba0..f7138dba0 100644
--- a/libgroff/lineno.cc
+++ b/src/libs/libgroff/lineno.cc
diff --git a/libgroff/macropath.cc b/src/libs/libgroff/macropath.cc
index 4fd22a30a..4fd22a30a 100644
--- a/libgroff/macropath.cc
+++ b/src/libs/libgroff/macropath.cc
diff --git a/libgroff/matherr.c b/src/libs/libgroff/matherr.c
index b0097b8b5..b0097b8b5 100644
--- a/libgroff/matherr.c
+++ b/src/libs/libgroff/matherr.c
diff --git a/libgroff/nametoindex.cc b/src/libs/libgroff/nametoindex.cc
index 694cab94b..694cab94b 100644
--- a/libgroff/nametoindex.cc
+++ b/src/libs/libgroff/nametoindex.cc
diff --git a/libgroff/new.cc b/src/libs/libgroff/new.cc
index d26db2f5a..d26db2f5a 100644
--- a/libgroff/new.cc
+++ b/src/libs/libgroff/new.cc
diff --git a/libgroff/prime.cc b/src/libs/libgroff/prime.cc
index f0b1eadcc..f0b1eadcc 100644
--- a/libgroff/prime.cc
+++ b/src/libs/libgroff/prime.cc
diff --git a/libgroff/progname.cc b/src/libs/libgroff/progname.cc
index a70e3419c..a70e3419c 100644
--- a/libgroff/progname.cc
+++ b/src/libs/libgroff/progname.cc
diff --git a/libgroff/ptable.cc b/src/libs/libgroff/ptable.cc
index 76735c242..76735c242 100644
--- a/libgroff/ptable.cc
+++ b/src/libs/libgroff/ptable.cc
diff --git a/libgroff/putenv.c b/src/libs/libgroff/putenv.c
index c1ca671ae..c1ca671ae 100644
--- a/libgroff/putenv.c
+++ b/src/libs/libgroff/putenv.c
diff --git a/libgroff/searchpath.cc b/src/libs/libgroff/searchpath.cc
index 730b5d996..730b5d996 100644
--- a/libgroff/searchpath.cc
+++ b/src/libs/libgroff/searchpath.cc
diff --git a/libgroff/strerror.c b/src/libs/libgroff/strerror.c
index 69089f132..69089f132 100644
--- a/libgroff/strerror.c
+++ b/src/libs/libgroff/strerror.c
diff --git a/libgroff/string.cc b/src/libs/libgroff/string.cc
index dd2917693..4bcd4cccb 100644
--- a/libgroff/string.cc
+++ b/src/libs/libgroff/string.cc
@@ -77,7 +77,7 @@ static char *srealloc(char *ptr, int oldsz, int oldlen, int newlen, int *sizep)
}
}
-string::string() : len(0), ptr(0), sz(0)
+string::string() : ptr(0), len(0), sz(0)
{
}
diff --git a/libgroff/strsave.cc b/src/libs/libgroff/strsave.cc
index dfd2b6f40..dfd2b6f40 100644
--- a/libgroff/strsave.cc
+++ b/src/libs/libgroff/strsave.cc
diff --git a/libgroff/strtol.c b/src/libs/libgroff/strtol.c
index 071bade8d..071bade8d 100644
--- a/libgroff/strtol.c
+++ b/src/libs/libgroff/strtol.c
diff --git a/libgroff/tmpfile.cc b/src/libs/libgroff/tmpfile.cc
index 280d87c5e..280d87c5e 100644
--- a/libgroff/tmpfile.cc
+++ b/src/libs/libgroff/tmpfile.cc
diff --git a/src/preproc/eqn/Makefile.sub b/src/preproc/eqn/Makefile.sub
new file mode 100644
index 000000000..eaafe2dd7
--- /dev/null
+++ b/src/preproc/eqn/Makefile.sub
@@ -0,0 +1,57 @@
+PROG=eqn
+MAN1=eqn.n
+XLIBS=$(LIBGROFF)
+OBJS=\
+ eqn.o \
+ main.o \
+ lex.o \
+ box.o \
+ limit.o \
+ list.o \
+ over.o \
+ text.o \
+ script.o \
+ mark.o \
+ other.o \
+ delim.o \
+ sqrt.o \
+ pile.o \
+ special.o
+CCSRCS=\
+ $(srcdir)/main.cc \
+ $(srcdir)/lex.cc \
+ $(srcdir)/box.cc \
+ $(srcdir)/limit.cc \
+ $(srcdir)/list.cc \
+ $(srcdir)/over.cc \
+ $(srcdir)/text.cc \
+ $(srcdir)/script.cc \
+ $(srcdir)/mark.cc \
+ $(srcdir)/other.cc \
+ $(srcdir)/delim.cc \
+ $(srcdir)/sqrt.cc \
+ $(srcdir)/pile.cc \
+ $(srcdir)/special.cc
+HDRS=\
+ $(srcdir)/box.h \
+ $(srcdir)/eqn.h \
+ $(srcdir)/pbox.h
+GRAM=$(srcdir)/eqn.y
+YTABC=$(srcdir)/eqn.cc
+YTABH=$(srcdir)/eqn.tab.h
+NAMEPREFIX=$(g)
+CLEANADD=neqn
+
+all: neqn
+
+neqn: neqn.sh
+ -rm -f neqn
+ sed -e 's/@g@/$(g)/g' -e "$(SH_SCRIPT_SED_CMD)" $(srcdir)/neqn.sh >neqn
+ chmod +x neqn
+
+install_data: neqn
+ -rm -f $(bindir)/$(NAMEPREFIX)neqn
+ $(INSTALL_PROGRAM) neqn $(bindir)/$(NAMEPREFIX)neqn
+
+uninstall_sub:
+ -rm -f $(bindir)/$(NAMEPREFIX)neqn
diff --git a/eqn/TODO b/src/preproc/eqn/TODO
index 210d0ab06..210d0ab06 100644
--- a/eqn/TODO
+++ b/src/preproc/eqn/TODO
diff --git a/eqn/box.cc b/src/preproc/eqn/box.cc
index e0ae1c0b6..4e61b5dc3 100644
--- a/eqn/box.cc
+++ b/src/preproc/eqn/box.cc
@@ -264,7 +264,7 @@ void set_script_size()
int box::next_uid = 0;
-box::box() : uid(next_uid++), spacing_type(ORDINARY_TYPE)
+box::box() : spacing_type(ORDINARY_TYPE), uid(next_uid++)
{
}
diff --git a/eqn/box.h b/src/preproc/eqn/box.h
index 01bfe96a4..01bfe96a4 100644
--- a/eqn/box.h
+++ b/src/preproc/eqn/box.h
diff --git a/eqn/delim.cc b/src/preproc/eqn/delim.cc
index 29deded38..29deded38 100644
--- a/eqn/delim.cc
+++ b/src/preproc/eqn/delim.cc
diff --git a/eqn/eqn.cc b/src/preproc/eqn/eqn.cc
index 1fdda6112..1fdda6112 100644..100755
--- a/eqn/eqn.cc
+++ b/src/preproc/eqn/eqn.cc
diff --git a/eqn/eqn.h b/src/preproc/eqn/eqn.h
index 70b19271c..70b19271c 100644
--- a/eqn/eqn.h
+++ b/src/preproc/eqn/eqn.h
diff --git a/eqn/eqn.man b/src/preproc/eqn/eqn.man
index 8c67b911e..e49078a04 100644
--- a/eqn/eqn.man
+++ b/src/preproc/eqn/eqn.man
@@ -1,5 +1,5 @@
.ig \"-*- nroff -*-
-Copyright (C) 1989-1995 Free Software Foundation, Inc.
+Copyright (C) 1989-2000 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -743,9 +743,10 @@ The default value is 0
(This is typically changed to 1 by the
.B eqnrc
file for the
-.B ascii
-and
+.BR ascii ,
.B latin1
+and
+.B utf8
devices.)
.LP
A more precise description of the role of many of these
diff --git a/eqn/eqn.tab.h b/src/preproc/eqn/eqn.tab.h
index 9a8b3cb22..9a8b3cb22 100644..100755
--- a/eqn/eqn.tab.h
+++ b/src/preproc/eqn/eqn.tab.h
diff --git a/eqn/eqn.y b/src/preproc/eqn/eqn.y
index 833a0f010..833a0f010 100644
--- a/eqn/eqn.y
+++ b/src/preproc/eqn/eqn.y
diff --git a/eqn/lex.cc b/src/preproc/eqn/lex.cc
index c0430bc58..a46d20cdd 100644
--- a/eqn/lex.cc
+++ b/src/preproc/eqn/lex.cc
@@ -471,7 +471,7 @@ int top_input::get_location(char **fnp, int *lnp)
argument_macro_input::argument_macro_input(const char *body, int ac,
char **av, input *x)
-: input(x), argc(ac), ap(0)
+: input(x), ap(0), argc(ac)
{
int i;
for (i = 0; i < argc; i++)
diff --git a/eqn/limit.cc b/src/preproc/eqn/limit.cc
index 046885d2a..046885d2a 100644
--- a/eqn/limit.cc
+++ b/src/preproc/eqn/limit.cc
diff --git a/eqn/list.cc b/src/preproc/eqn/list.cc
index 1118fa1b1..1118fa1b1 100644
--- a/eqn/list.cc
+++ b/src/preproc/eqn/list.cc
diff --git a/eqn/main.cc b/src/preproc/eqn/main.cc
index 986c28267..6260daa84 100644
--- a/eqn/main.cc
+++ b/src/preproc/eqn/main.cc
@@ -259,8 +259,8 @@ int main(int argc, char **argv)
break;
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU eqn version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU eqn version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/eqn/mark.cc b/src/preproc/eqn/mark.cc
index 99d1b75f2..99d1b75f2 100644
--- a/eqn/mark.cc
+++ b/src/preproc/eqn/mark.cc
diff --git a/eqn/neqn.sh b/src/preproc/eqn/neqn.sh
index 770376732..a979ebcbc 100644
--- a/eqn/neqn.sh
+++ b/src/preproc/eqn/neqn.sh
@@ -1,5 +1,5 @@
#!/bin/sh
# Provision of this shell script should not be taken to imply that use of
-# GNU eqn with groff -Tascii|-Tlatin1 is supported.
+# GNU eqn with groff -Tascii|-Tlatin1|-Tutf8 is supported.
exec @g@eqn -Tascii ${1+"$@"}
diff --git a/eqn/other.cc b/src/preproc/eqn/other.cc
index 3f624f95f..eb9e50a2b 100644
--- a/eqn/other.cc
+++ b/src/preproc/eqn/other.cc
@@ -38,7 +38,7 @@ box *make_accent_box(box *p, box *q)
return new accent_box(p, q);
}
-accent_box::accent_box(box *pp, box *qq) : ab(qq), pointer_box(pp)
+accent_box::accent_box(box *pp, box *qq) : pointer_box(pp), ab(qq)
{
}
@@ -386,7 +386,7 @@ void underline_box::debug_print()
fprintf(stderr, " } under");
}
-size_box::size_box(char *s, box *pp) : size(s), pointer_box(pp)
+size_box::size_box(char *s, box *pp) : pointer_box(pp), size(s)
{
}
@@ -495,7 +495,7 @@ void fat_box::debug_print()
}
-vmotion_box::vmotion_box(int i, box *pp) : n(i), pointer_box(pp)
+vmotion_box::vmotion_box(int i, box *pp) : pointer_box(pp), n(i)
{
}
@@ -534,7 +534,7 @@ void vmotion_box::debug_print()
fprintf(stderr, " }");
}
-hmotion_box::hmotion_box(int i, box *pp) : n(i), pointer_box(pp)
+hmotion_box::hmotion_box(int i, box *pp) : pointer_box(pp), n(i)
{
}
diff --git a/eqn/over.cc b/src/preproc/eqn/over.cc
index d92e6b8cb..06b032129 100644
--- a/eqn/over.cc
+++ b/src/preproc/eqn/over.cc
@@ -46,7 +46,7 @@ box *make_small_over_box(box *pp, box *qq)
}
over_box::over_box(int is_small, box *pp, box *qq)
-: num(pp), den(qq), reduce_size(is_small)
+: reduce_size(is_small), num(pp), den(qq)
{
spacing_type = INNER_TYPE;
}
diff --git a/eqn/pbox.h b/src/preproc/eqn/pbox.h
index d1f16ac48..d1f16ac48 100644
--- a/eqn/pbox.h
+++ b/src/preproc/eqn/pbox.h
diff --git a/eqn/pile.cc b/src/preproc/eqn/pile.cc
index 0df5241f0..0df5241f0 100644
--- a/eqn/pile.cc
+++ b/src/preproc/eqn/pile.cc
diff --git a/eqn/script.cc b/src/preproc/eqn/script.cc
index 7c2e6c258..7c2e6c258 100644
--- a/eqn/script.cc
+++ b/src/preproc/eqn/script.cc
diff --git a/eqn/special.cc b/src/preproc/eqn/special.cc
index 64ee5530f..310261ae4 100644
--- a/eqn/special.cc
+++ b/src/preproc/eqn/special.cc
@@ -59,7 +59,7 @@ box *make_special_box(char *s, box *p)
return new special_box(s, p);
}
-special_box::special_box(char *s, box *pp) :macro_name(s), pointer_box(pp)
+special_box::special_box(char *s, box *pp) : pointer_box(pp), macro_name(s)
{
}
diff --git a/eqn/sqrt.cc b/src/preproc/eqn/sqrt.cc
index 6109ffeaf..6109ffeaf 100644
--- a/eqn/sqrt.cc
+++ b/src/preproc/eqn/sqrt.cc
diff --git a/eqn/text.cc b/src/preproc/eqn/text.cc
index a236e9a97..b0f1700c2 100644
--- a/eqn/text.cc
+++ b/src/preproc/eqn/text.cc
@@ -165,7 +165,7 @@ void box::set_spacing_type(char *type)
}
char_box::char_box(unsigned char cc)
-: c(cc), prev_is_italic(0), next_is_italic(0)
+: c(cc), next_is_italic(0), prev_is_italic(0)
{
spacing_type = char_table[c].spacing_type;
}
diff --git a/src/preproc/pic/Makefile.sub b/src/preproc/pic/Makefile.sub
new file mode 100644
index 000000000..a15c030e2
--- /dev/null
+++ b/src/preproc/pic/Makefile.sub
@@ -0,0 +1,31 @@
+PROG=pic
+MAN1=pic.n
+XLIBS=$(LIBGROFF)
+MLIB=$(LIBM)
+OBJS=\
+ pic.o \
+ lex.o \
+ main.o \
+ object.o \
+ common.o \
+ troff.o \
+ tex.o
+ # fig.o
+CCSRCS=\
+ $(srcdir)/lex.cc \
+ $(srcdir)/main.cc \
+ $(srcdir)/object.cc \
+ $(srcdir)/common.cc \
+ $(srcdir)/troff.cc \
+ $(srcdir)/tex.cc
+HDRS=\
+ $(srcdir)/common.h \
+ $(srcdir)/object.h \
+ $(srcdir)/output.h \
+ $(srcdir)/pic.h \
+ $(srcdir)/position.h \
+ $(srcdir)/text.h
+GRAM=$(srcdir)/pic.y
+YTABC=$(srcdir)/pic.cc
+YTABH=$(srcdir)/pic.tab.h
+NAMEPREFIX=$(g)
diff --git a/pic/TODO b/src/preproc/pic/TODO
index 2346b575e..2346b575e 100644
--- a/pic/TODO
+++ b/src/preproc/pic/TODO
diff --git a/pic/common.cc b/src/preproc/pic/common.cc
index e83ef3122..e83ef3122 100644
--- a/pic/common.cc
+++ b/src/preproc/pic/common.cc
diff --git a/pic/common.h b/src/preproc/pic/common.h
index 25a6e10c6..25a6e10c6 100644
--- a/pic/common.h
+++ b/src/preproc/pic/common.h
diff --git a/pic/depend b/src/preproc/pic/depend
index 73ac3ab90..73ac3ab90 100644..100755
--- a/pic/depend
+++ b/src/preproc/pic/depend
diff --git a/pic/lex.cc b/src/preproc/pic/lex.cc
index 920938d53..238a62f49 100644
--- a/pic/lex.cc
+++ b/src/preproc/pic/lex.cc
@@ -65,9 +65,8 @@ int input::get_location(const char **, int *)
}
file_input::file_input(FILE *f, const char *fn)
-: lineno(0), ptr(""), filename(fn)
+: fp(f), filename(fn), lineno(0), ptr("")
{
- fp = f;
}
file_input::~file_input()
@@ -174,7 +173,7 @@ char *process_body(const char *body)
argument_macro_input::argument_macro_input(const char *body, int ac, char **av)
-: argc(ac), ap(0)
+: ap(0), argc(ac)
{
for (int i = 0; i < argc; i++)
argv[i] = av[i];
@@ -496,6 +495,7 @@ int lookup_keyword(const char *str, int len)
{ "spline", SPLINE },
{ "sprintf", SPRINTF },
{ "sqrt", SQRT },
+ { "srand", SRAND },
{ "start", START },
{ "the", THE },
{ "then", THEN },
@@ -1328,7 +1328,7 @@ public:
};
for_input::for_input(char *vr, double t, int bim, double b, char *bd)
-: var(vr), to(t), by_is_multiplicative(bim), by(b), body(bd), p(body),
+: var(vr), body(bd), to(t), by_is_multiplicative(bim), by(b), p(body),
done_newline(0)
{
}
@@ -1441,7 +1441,7 @@ public:
copy_file_thru_input::copy_file_thru_input(input *i, const char *b,
const char *u)
-: in(i), copy_thru_input(b, u)
+: copy_thru_input(b, u), in(i)
{
}
@@ -1604,7 +1604,7 @@ public:
};
simple_file_input::simple_file_input(FILE *p, const char *s)
-: filename(s), fp(p), lineno(1)
+: filename(s), lineno(1), fp(p)
{
}
diff --git a/pic/main.cc b/src/preproc/pic/main.cc
index cb4444f8f..1536513a7 100644
--- a/pic/main.cc
+++ b/src/preproc/pic/main.cc
@@ -563,8 +563,8 @@ int main(int argc, char **argv)
break;
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU pic version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU pic version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/pic/object.cc b/src/preproc/pic/object.cc
index 860e1bc64..6b346330e 100644
--- a/pic/object.cc
+++ b/src/preproc/pic/object.cc
@@ -29,7 +29,7 @@ line_type::line_type()
{
}
-output::output() : desired_height(0.0), desired_width(0.0), args(0)
+output::output() : args(0), desired_height(0.0), desired_width(0.0)
{
}
@@ -391,12 +391,12 @@ place *object::find_label(const char *)
}
segment::segment(const position &a, int n, segment *p)
-: pos(a), is_absolute(n), next(p)
+: is_absolute(n), pos(a), next(p)
{
}
text_item::text_item(char *t, const char *fn, int ln)
-: filename(fn), lineno(ln), text(t), next(0)
+: next(0), text(t), filename(fn), lineno(ln)
{
adj.h = CENTER_ADJUST;
adj.v = NONE_ADJUST;
@@ -855,7 +855,7 @@ public:
block_object::block_object(const position &d, const object_list &ol,
PTABLE(place) *t)
-: oblist(ol), tbl(t), rectangle_object(d)
+: rectangle_object(d), oblist(ol), tbl(t)
{
}
@@ -1194,7 +1194,7 @@ public:
};
linear_object::linear_object(const position &s, const position &e)
-: strt(s), en(e), arrow_at_start(0), arrow_at_end(0)
+: arrow_at_start(0), arrow_at_end(0), strt(s), en(e)
{
}
@@ -1214,7 +1214,7 @@ void linear_object::add_arrows(int at_start, int at_end,
line_object::line_object(const position &s, const position &e,
position *p, int i)
-: v(p), n(i), linear_object(s, e)
+: linear_object(s, e), v(p), n(i)
{
}
@@ -1743,7 +1743,7 @@ place and follow the path through the place to place within the place.
Note that `.A.B.C.sw' will work. */
path::path(corner c)
-: label_list(0), crn(c), ypath(0)
+: crn(c), label_list(0), ypath(0)
{
}
diff --git a/pic/object.h b/src/preproc/pic/object.h
index 2748e81e8..2748e81e8 100644
--- a/pic/object.h
+++ b/src/preproc/pic/object.h
diff --git a/pic/output.h b/src/preproc/pic/output.h
index ac490db46..ac490db46 100644
--- a/pic/output.h
+++ b/src/preproc/pic/output.h
diff --git a/pic/pic.cc b/src/preproc/pic/pic.cc
index c75d6bbc4..42d1480d9 100644..100755
--- a/pic/pic.cc
+++ b/src/preproc/pic/pic.cc
@@ -1,27 +1,15 @@
-#if defined(__STDC__) || defined(__cplusplus)
-#define YYCONST const
-#define YYPARAMS(x) x
-#define YYDEFUN(name, arglist, args) name(args)
-#define YYAND ,
-#define YYPTR void *
-#else
-#define YYCONST
-#define YYPARAMS(x) ()
-#define YYDEFUN(name, arglist, args) name arglist args;
-#define YYAND ;
-#define YYPTR char *
-#endif
#ifndef lint
-YYCONST static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley +Cygnus.28) 01/20/91";
+/*static char yysccsid[] = "from: @(#)yaccpar 1.9 (Berkeley) 02/21/93";*/
+static char yyrcsid[] = "$Id$";
#endif
#define YYBYACC 1
-#ifndef YYDONT_INCLUDE_STDIO
-#include <stdio.h>
-#endif
-#ifdef __cplusplus
-#include <stdlib.h> /* for malloc/realloc/free */
-#endif
-#line 20 "pic.y"
+#define YYMAJOR 1
+#define YYMINOR 9
+#define yyclearin (yychar=(-1))
+#define yyerrok (yyerrflag=0)
+#define YYRECOVERING (yyerrflag!=0)
+#define YYPREFIX "yy"
+#line 20 "/home/cjk/groff/pic/pic.y"
#include "pic.h"
#include "ptable.h"
#include "object.h"
@@ -42,8 +30,10 @@ extern "C" {
#endif
#undef rand
+#undef srand
extern "C" {
int rand();
+ void srand(unsigned int);
}
/* Maximum number of characters produced by printf("%g") */
@@ -75,7 +65,7 @@ const char *object_type_name(object_type type);
char *format_number(const char *form, double n);
char *do_sprintf(const char *form, const double *v, int nv);
-#line 73 "pic.y"
+#line 78 "/home/cjk/groff/pic/pic.y"
typedef union {
char *str;
int n;
@@ -94,7 +84,7 @@ typedef union {
graphics_state state;
object_type obtype;
} YYSTYPE;
-#line 95 "y.tab.c"
+#line 88 "y.tab.c"
#define LABEL 257
#define VARIABLE 258
#define NUMBER 259
@@ -170,43 +160,44 @@ typedef union {
#define K_MIN 329
#define INT 330
#define RAND 331
-#define COPY 332
-#define THRU 333
-#define TOP 334
-#define BOTTOM 335
-#define UPPER 336
-#define LOWER 337
-#define SH 338
-#define PRINT 339
-#define CW 340
-#define CCW 341
-#define FOR 342
-#define DO 343
-#define IF 344
-#define ELSE 345
-#define ANDAND 346
-#define OROR 347
-#define NOTEQUAL 348
-#define EQUALEQUAL 349
-#define LESSEQUAL 350
-#define GREATEREQUAL 351
-#define LEFT_CORNER 352
-#define RIGHT_CORNER 353
-#define CENTER 354
-#define END 355
-#define START 356
-#define RESET 357
-#define UNTIL 358
-#define PLOT 359
-#define THICKNESS 360
-#define FILL 361
-#define ALIGNED 362
-#define SPRINTF 363
-#define COMMAND 364
-#define DEFINE 365
-#define UNDEF 366
+#define SRAND 332
+#define COPY 333
+#define THRU 334
+#define TOP 335
+#define BOTTOM 336
+#define UPPER 337
+#define LOWER 338
+#define SH 339
+#define PRINT 340
+#define CW 341
+#define CCW 342
+#define FOR 343
+#define DO 344
+#define IF 345
+#define ELSE 346
+#define ANDAND 347
+#define OROR 348
+#define NOTEQUAL 349
+#define EQUALEQUAL 350
+#define LESSEQUAL 351
+#define GREATEREQUAL 352
+#define LEFT_CORNER 353
+#define RIGHT_CORNER 354
+#define CENTER 355
+#define END 356
+#define START 357
+#define RESET 358
+#define UNTIL 359
+#define PLOT 360
+#define THICKNESS 361
+#define FILL 362
+#define ALIGNED 363
+#define SPRINTF 364
+#define COMMAND 365
+#define DEFINE 366
+#define UNDEF 367
#define YYERRCODE 256
-static YYCONST short yylhs[] = { -1,
+short yylhs[] = { -1,
0, 0, 16, 17, 17, 28, 28, 29, 29, 30,
30, 30, 30, 30, 30, 30, 30, 30, 31, 30,
30, 32, 33, 30, 34, 35, 30, 36, 30, 30,
@@ -230,9 +221,9 @@ static YYCONST short yylhs[] = { -1,
9, 9, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1,
};
-static YYCONST short yylen[] = { 2,
+short yylen[] = { 2,
1, 1, 3, 1, 3, 0, 1, 1, 2, 3,
4, 1, 1, 1, 1, 1, 2, 2, 0, 3,
2, 0, 0, 7, 0, 0, 6, 0, 10, 1,
@@ -255,10 +246,10 @@ static YYCONST short yylen[] = { 2,
2, 2, 2, 1, 1, 2, 2, 2, 2, 1,
1, 1, 1, 1, 2, 2, 2, 2, 2, 3,
3, 3, 3, 3, 3, 2, 3, 4, 4, 6,
- 4, 4, 4, 6, 6, 4, 4, 3, 3, 3,
- 3, 3, 3, 3, 3, 3, 2,
+ 4, 4, 4, 6, 6, 4, 4, 3, 4, 3,
+ 3, 3, 3, 3, 3, 3, 3, 2,
};
-static YYCONST short yydefred[] = { 0,
+short yydefred[] = { 0,
8, 0, 2, 0, 0, 0, 0, 125, 16, 12,
13, 14, 15, 71, 72, 73, 74, 75, 76, 77,
78, 0, 19, 0, 0, 0, 0, 0, 0, 0,
@@ -266,1694 +257,1777 @@ static YYCONST short yydefred[] = { 0,
0, 0, 0, 0, 25, 0, 146, 203, 204, 149,
151, 188, 189, 145, 175, 176, 177, 178, 179, 180,
181, 182, 183, 184, 185, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 186, 187, 0, 0, 194,
- 195, 200, 202, 201, 0, 0, 0, 0, 0, 131,
- 129, 147, 0, 0, 0, 0, 0, 0, 41, 0,
- 38, 0, 0, 0, 0, 0, 0, 0, 0, 35,
- 0, 0, 0, 0, 0, 31, 3, 0, 113, 114,
- 115, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 102, 0, 0, 0, 111, 112,
- 119, 120, 121, 122, 116, 117, 0, 0, 124, 0,
- 118, 36, 0, 0, 10, 0, 22, 0, 20, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 190,
- 192, 196, 198, 191, 193, 197, 199, 0, 0, 0,
- 0, 0, 0, 0, 0, 137, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 205, 206, 207, 208, 209, 0,
- 142, 0, 0, 163, 155, 156, 157, 158, 159, 160,
- 161, 0, 154, 152, 153, 39, 0, 0, 57, 0,
- 0, 0, 43, 0, 0, 0, 0, 81, 127, 0,
- 0, 0, 0, 5, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 166, 100, 0, 169, 0, 0, 101, 0, 0,
- 0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
- 62, 0, 11, 0, 26, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 228, 0, 217, 140, 0, 150,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 148,
- 132, 133, 162, 0, 0, 53, 0, 0, 0, 0,
- 0, 51, 0, 0, 50, 49, 0, 66, 83, 32,
- 174, 0, 0, 0, 0, 164, 0, 168, 0, 0,
- 23, 0, 218, 219, 0, 221, 222, 223, 0, 0,
- 226, 227, 0, 0, 0, 0, 0, 44, 0, 126,
- 0, 0, 173, 172, 0, 165, 0, 0, 27, 0,
- 0, 0, 134, 138, 0, 0, 0, 0, 70, 67,
- 171, 0, 24, 46, 220, 224, 225, 136, 0, 0,
- 170, 0, 0, 28, 0, 0, 29,
+ 0, 0, 0, 0, 0, 0, 186, 187, 0, 0,
+ 194, 195, 200, 202, 201, 0, 0, 0, 0, 0,
+ 131, 129, 147, 0, 0, 0, 0, 0, 0, 41,
+ 0, 38, 0, 0, 0, 0, 0, 0, 0, 0,
+ 35, 0, 0, 0, 0, 0, 31, 3, 0, 113,
+ 114, 115, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 102, 0, 0, 0, 111,
+ 112, 119, 120, 121, 122, 116, 117, 0, 0, 124,
+ 0, 118, 36, 0, 0, 10, 0, 22, 0, 20,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 190, 192, 196, 198, 191, 193, 197, 199, 0,
+ 0, 0, 0, 0, 0, 0, 0, 137, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 205, 206, 207, 208,
+ 209, 0, 142, 0, 0, 163, 155, 156, 157, 158,
+ 159, 160, 161, 0, 154, 152, 153, 39, 0, 0,
+ 57, 0, 0, 0, 43, 0, 0, 0, 0, 81,
+ 127, 0, 0, 0, 0, 5, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 166, 100, 0, 169, 0, 0, 101,
+ 0, 0, 0, 0, 0, 37, 0, 0, 0, 0,
+ 0, 0, 62, 0, 11, 0, 26, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 228, 0, 0, 217,
+ 140, 0, 150, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 148, 132, 133, 162, 0, 0, 53, 0,
+ 0, 0, 0, 0, 51, 0, 0, 50, 49, 0,
+ 66, 83, 32, 174, 0, 0, 0, 0, 164, 0,
+ 168, 0, 0, 23, 0, 218, 219, 0, 221, 222,
+ 223, 0, 0, 226, 227, 229, 0, 0, 0, 0,
+ 0, 44, 0, 126, 0, 0, 173, 172, 0, 165,
+ 0, 0, 27, 0, 0, 0, 134, 138, 0, 0,
+ 0, 0, 70, 67, 171, 0, 24, 46, 220, 224,
+ 225, 136, 0, 0, 170, 0, 0, 28, 0, 0,
+ 29,
};
-static YYCONST short yydgoto[] = { 2,
- 105, 179, 107, 400, 90, 91, 33, 92, 93, 263,
- 264, 265, 108, 95, 34, 3, 35, 36, 96, 223,
- 97, 98, 379, 337, 109, 100, 101, 241, 5, 38,
- 46, 284, 377, 158, 352, 406, 243, 39, 330, 114,
- 390, 371, 115, 202,
+short yydgoto[] = { 2,
+ 106, 181, 108, 404, 91, 92, 33, 93, 94, 265,
+ 266, 267, 109, 96, 34, 3, 35, 36, 97, 225,
+ 98, 99, 383, 340, 110, 101, 102, 243, 5, 38,
+ 46, 286, 381, 159, 355, 410, 245, 39, 333, 115,
+ 394, 375, 116, 204,
};
-static YYCONST short yysindex[] = { -52,
- 0, 0, 0, 5205, -46, 7, -12, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, -249, 0,10894, -198,11035, -186,11441, 51,10894,
- 0, 0, -251, 0, -52,10595, 0, 0, -42, 0,
- -52,11035, 35, -236, 0, -145, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 79, 80, 85, 87, 91,
- 94, 98, 101, 102, 107, 0, 0, -126, -67, 0,
- 0, 0, 0, 0,11136,11035,11441,11441, 1187, 0,
- 0, 0, -71, -250, 2230, -10, 575, 426, 0,10894,
- 0, 71,11035,11035, 1220, -141, -305, -250, -291, 0,
- -28, -101,10894, -52, -52, 0, 0, 9974, 0, 0,
- 0,11746,11746,11746,11746,11441,11441,11441,11441,11542,
-11542,11542, 4851,11645, 0,11746,11746,11746, 0, 0,
- 0, 0, 0, 0, 0, 0,11441,11746, 0, 1647,
- 0, 0, -98,10233, 0,11035, 0, -100, 0,11035,
-11035,11035,11035,11035,11035,11035,11035,11035,10736, 0,
- 0, 0, 0, 0, 0, 0, 0, 1626, 141, 146,
- 42, -73, 99, 99, -105, 0,11441,11441,11441,11441,
-11441,11441,11441,11542,11441,11441,11441,11441,11441,11441,
-11441,11542, -18, 152, 0, 0, 0, 0, 0, -56,
- 0,11645,11645, 0, 0, 0, 0, 0, 0, 0,
- 0, 120, 0, 0, 0, 0,11441, 99, 0,11035,
-11035,11441, 0,11035,11035, -242, -242, 0, 0, 89,
- 5205, 125, -41, 0, 1647, 1647, 1647, 1647, 1647, 1647,
- 1647, 1647, 1187, -10, -10, -10, 2121, 455, 575, 2121,
- -33, 0, 0, 2134, 0,11237, 781, 0, 1647, 1647,
- 1647, 1647, 1647, 0, 7, -12, 0, 0, 0, -250,
- 0, -10, 0, -32, 0, 202, 203, 189, 207, 208,
- 210, 209, 217, 235, 0, 243, 0, 0,11542, 0,
- -1, 1117, 1180, 739, 739, 357, 357, 1647, -21, 192,
- 357, 46, 46, 99, 99, 99, 99, -35, 152, 0,
- 0, 0, 0, 1076, 1117, 0, 1659, -44, 357, 47,
- 1117, 0, 1659, -44, 0, 0, 10, 0, 0, 0,
- 0, 575, 2121, 2121, 264, 0, 67, 0, 1208, 146,
- 0, -27, 0, 0,11035, 0, 0, 0,11035,11035,
- 0, 0, 2, 13,11542,11542,11441, 0,11441, 0,
- 5205, 2121, 0, 0, 2121, 0, -27, 65, 0, 285,
- 292, 293, 0, 0, -14, -10, 1619, 1647, 0, 0,
- 0, 299, 0, 0, 0, 0, 0, 0,11340, 1,
- 0,11441, 1647, 0, 1647, 86, 0,
+short yysindex[] = { -44,
+ 0, 0, 0,11792, -40, -37, -14, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -246, 0,10742, -229,10874, -218,11317, 6,10742,
+ 0, 0, -296, 0, -44,10435, 0, 0, -39, 0,
+ -44,10874, 13, -280, 0, -195, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 45, 47, 54, 76, 87,
+ 92, 109, 120, 142, 146, 158, 0, 0, -262, -219,
+ 0, 0, 0, 0, 0,10985,10874,11317,11317, 350,
+ 0, 0, 0, -76, -162, 1981, 18, -35, 734, 0,
+10742, 0, 139,10874,10874, 1064, -153, -269, -162, -156,
+ 0, 623, -59,10742, -44, -44, 0, 0,11764, 0,
+ 0, 0,11649,11649,11649,11649,11317,11317,11317,11317,
+11428,11428,11428, 1994,11538, 0,11649,11649,11649, 0,
+ 0, 0, 0, 0, 0, 0, 0,11317,11649, 0,
+ 1477, 0, 0, -55,10076, 0,10874, 0, -48, 0,
+10874,10874,10874,10874,10874,10874,10874,10874,10874,10574,
+10874, 0, 0, 0, 0, 0, 0, 0, 0, 1517,
+ 166, 174, 97, -46, 127, 127, -79, 0,11317,11317,
+11317,11317,11317,11317,11317,11428,11317,11317,11317,11317,
+11317,11317,11317,11428, -7, 180, 0, 0, 0, 0,
+ 0, -29, 0,11538,11538, 0, 0, 0, 0, 0,
+ 0, 0, 0, 136, 0, 0, 0, 0,11317, 127,
+ 0,10874,10874,11317, 0,10874,10874, -252, -252, 0,
+ 0, 106,11792, 141, -26, 0, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 350, 18, 18, 18, 1649, 1192,
+ -35, 1649, -8, 0, 0, 1661, 0,11095, 266, 0,
+ 1477, 1477, 1477, 1477, 1477, 0, -37, -14, 0, 0,
+ 0, -162, 0, 18, 0, -16, 0, 210, 212, 211,
+ 216, 218, 228, 232, 233, 231, 0, 238, 239, 0,
+ 0,11428, 0, -15, 1414, 1484, 595, 595, 507, 507,
+ 1477, 190, 251, 507, -19, -19, 127, 127, 127, 127,
+ -42, 180, 0, 0, 0, 0, -11, 1414, 0, 1505,
+ -57, 507, 30, 1414, 0, 1505, -57, 0, 0, 28,
+ 0, 0, 0, 0, -35, 1649, 1649, 254, 0, 43,
+ 0, 634, 174, 0, -52, 0, 0,10874, 0, 0,
+ 0,10874,10874, 0, 0, 0, 14, -1,11428,11428,
+11317, 0,11317, 0,11792, 1649, 0, 0, 1649, 0,
+ -52, 52, 0, 273, 274, 280, 0, 0, -21, 18,
+ 1075, 1477, 0, 0, 0, 281, 0, 0, 0, 0,
+ 0, 0,11207, -20, 0,11317, 1477, 0, 1477, 71,
+ 0,
};
-static YYCONST short yyrindex[] = { 20,
- 0, 0, 0, 347, 150, 0, 0, 0, 0, 0,
+short yyrindex[] = { 202,
+ 0, 0, 0, 332, 93, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 23, 0, 0, 0,
- 0, 0, 59, 0, 109, 212, 0, 0, 268, 0,
-10487, 0, 0, 287, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 25, 0, 0, 0,
+ 0, 0, 58, 0, 161, 60, 0, 0, 70, 0,
+10326, 0, 0, 204, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 8932, 0,
- 0, 0, 0, 4221, 8476, 9124, 0, 0, 0, 589,
- 0, 0, 0, 0, 181, 0, 721, 0, 0, 0,
-10102, 0, 615, 5629, 5629, 0, 0, 122, 0, 0,
- 0, 9441, 9481, 9223, 9331, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 9580, 9690, 9789, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 9829, 0, 4977,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 8870,
+ 0, 0, 0, 0, 4424, 8570, 8999, 0, 0, 0,
+ 376, 0, 0, 0, 0, 1390, 0, 2313, 0, 0,
+ 0, 9969, 0, 465,11903,11903, 0, 0, 206, 0,
+ 0, 0, 9151, 9360, 9110, 9239, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 9460, 9545, 9669, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 9786, 0,
+ 4973, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 293,
+ 0, 261, 0, 0, 455, 563, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 308, 0, 213,
- 0, 0, 270, 602, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3101, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 2904, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 223,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 8437, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5273, 5381, 5681, 5789,
+ 6089, 6197, 6497, 6605, 0, 6905, 7013, 7313, 0, 0,
+ 0, 0, 0, 0, 0, 8656, 0, 0, 0, 0,
+ 7421, 7721, 7829, 8129, 8237, 0, 9547, 2399, 2602, 3043,
+ 37, 411, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 5084, 5401, 5508, 5825, 5932, 6249,
- 6356, 6673, 0, 6780, 7097, 7204, 0, 0, 0, 0,
- 0, 0, 0, 8782, 0, 0, 0, 0, 7521, 7628,
- 7945, 8052, 8369, 0,10163, 2065, 135, 1861, 36, 591,
+ 0, 0, 0, 0, 3983, 4091, 3209, 3542, 2219, 2327,
+ 4865, 8699, 0, 2660, 1778, 1886, 896, 1004, 1337, 1445,
+ 0, 3650, 0, 0, 0, 0, 0, 27, 0, 230,
+ 466, 2768, 0, 95, 0, 908, 1015, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 293, 0, 0, 468, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 3782, 4114, 3236, 3343, 2026, 2358, 4660, 8825, 0,
- 2465, 1587, 1919, 709, 1041, 1148, 1480, 0, 3675, 0,
- 0, 0, 0, 0, 390, 0, 8929, 179, 2797, 0,
- 92, 0, 614, 720, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 308, 0,
- 0, 652, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 679, 0, 0, 0, 0, 0, 652, 0, 0, 0,
- 0, 0, 0, 0, 0, 4553, 8, 11, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 12, 0, 14, 0, 0,
+ 0, 0, 0, 0, 484, 0, 0, 0, 0, 0,
+ 468, 0, 0, 0, 0, 0, 0, 0, 0, 4532,
+ -9, 32, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 33, 0, 34, 0,
+ 0,
};
-static YYCONST short yygindex[] = { 0,
- -24, 627, -77, 0, -57, 196, 0, 0, -5, 0,
- 0, 265, 1084, -88, -117, -40, 0, 0, 134, -59,
- 0, 0, -23, 0, 26, 323, -60, 3, 325, 0,
+short yygindex[] = { 0,
+ -24, 919, -89, 0, -69, 188, 0, 0, 768, 0,
+ 0, 327, 187, -83, -117, -18, 0, 0, 2276, -64,
+ 0, 0, -23, 0, 9, 314, -71, 7, 322, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0,
};
-#define YYTABLESIZE 12102
-static YYCONST short yytable[] = { 89,
- 244, 153, 4, 111, 204, 89, 1, 212, 200, 213,
- 44, 150, 40, 198, 196, 200, 197, 8, 199, 6,
- 198, 196, 34, 197, 86, 199, 229, 180, 212, 37,
- 213, 232, 212, 195, 213, 63, 281, 117, 225, 226,
- 234, 235, 383, 154, 212, 43, 213, 398, 42, 99,
- 370, 128, 226, 369, 128, 99, 236, 237, 30, 102,
- 178, 151, 183, 184, 41, 201, 205, 206, 207, 208,
- 209, 110, 201, 240, 242, 89, 268, 86, 129, 228,
- 129, 34, 200, 45, 212, 299, 213, 198, 89, 211,
- 112, 52, 199, 116, 63, 156, 157, 245, 246, 247,
- 248, 249, 250, 251, 252, 253, 253, 253, 6, 267,
- 6, 269, 270, 271, 319, 34, 159, 30, 160, 161,
- 29, 7, 272, 273, 162, 99, 163, 262, 63, 253,
- 164, 227, 52, 165, 14, 52, 238, 166, 99, 201,
- 167, 168, 6, 37, 170, 171, 169, 34, 233, 7,
- 52, 30, 326, 328, 321, 322, 332, 334, 239, 274,
- 63, 285, 302, 303, 304, 305, 306, 307, 308, 309,
- 311, 312, 313, 314, 315, 316, 317, 253, 56, 37,
- 47, 297, 7, 30, 52, 47, 298, 267, 267, 7,
- 300, 50, 201, 14, 7, 301, 51, 210, 343, 344,
- 320, 6, 324, 174, 175, 325, 327, 329, 350, 331,
- 333, 61, 323, 338, 7, 152, 52, 339, 181, 56,
- 340, 47, 56, 346, 47, 172, 173, 14, 203, 351,
- 188, 8, 355, 6, 212, 365, 213, 56, 47, 47,
- 7, 349, 353, 354, 50, 7, 7, 356, 357, 51,
- 358, 262, 359, 389, 262, 131, 131, 131, 348, 14,
- 360, 335, 336, 254, 255, 256, 37, 33, 366, 216,
- 61, 56, 7, 47, 253, 361, 6, 6, 185, 6,
- 6, 186, 372, 362, 176, 177, 21, 282, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 364, 234, 216, 56, 61, 47, 216, 375, 368, 216,
- 216, 216, 216, 216, 216, 384, 216, 187, 188, 189,
- 190, 191, 192, 376, 394, 395, 33, 310, 216, 216,
- 378, 216, 396, 397, 29, 318, 61, 262, 262, 401,
- 253, 253, 387, 404, 388, 21, 1, 407, 47, 279,
- 58, 6, 113, 393, 59, 52, 60, 6, 6, 118,
- 33, 6, 216, 6, 0, 216, 262, 0, 0, 262,
- 0, 0, 0, 0, 403, 0, 6, 405, 6, 21,
- 0, 52, 6, 6, 0, 0, 0, 0, 0, 235,
- 0, 188, 33, 200, 216, 0, 37, 188, 198, 196,
- 0, 197, 188, 199, 0, 0, 7, 7, 7, 7,
- 7, 21, 7, 0, 0, 0, 0, 7, 7, 7,
+#define YYTABLESIZE 12268
+short yytable[] = { 90,
+ 214, 246, 215, 112, 154, 90, 4, 8, 172, 173,
+ 206, 151, 37, 44, 1, 231, 182, 202, 40, 87,
+ 41, 214, 200, 215, 34, 202, 236, 201, 103, 228,
+ 200, 198, 100, 199, 227, 201, 63, 283, 100, 111,
+ 402, 118, 228, 43, 152, 113, 42, 155, 234, 117,
+ 197, 176, 177, 158, 387, 224, 214, 30, 215, 61,
+ 214, 180, 215, 185, 186, 270, 160, 236, 374, 33,
+ 236, 373, 128, 157, 203, 128, 90, 236, 237, 129,
+ 230, 129, 203, 34, 161, 236, 162, 45, 87, 90,
+ 174, 175, 7, 163, 52, 63, 242, 244, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 255, 255, 100,
+ 269, 29, 271, 272, 273, 164, 30, 34, 61, 236,
+ 240, 322, 100, 274, 275, 7, 165, 37, 33, 63,
+ 255, 166, 7, 178, 179, 52, 235, 7, 52, 214,
+ 302, 215, 329, 331, 324, 325, 335, 337, 167, 34,
+ 30, 236, 61, 52, 207, 208, 209, 210, 211, 168,
+ 6, 63, 33, 37, 305, 306, 307, 308, 309, 310,
+ 311, 312, 314, 315, 316, 317, 318, 319, 320, 255,
+ 47, 169, 30, 7, 61, 170, 50, 52, 7, 269,
+ 269, 51, 238, 239, 33, 346, 347, 171, 353, 229,
+ 241, 6, 276, 21, 327, 7, 300, 328, 330, 332,
+ 95, 334, 336, 287, 301, 7, 95, 303, 153, 52,
+ 203, 304, 238, 205, 216, 212, 202, 323, 326, 237,
+ 341, 200, 198, 342, 199, 343, 201, 217, 218, 219,
+ 220, 221, 222, 352, 223, 354, 338, 339, 349, 47,
+ 356, 37, 357, 6, 358, 50, 359, 393, 360, 238,
+ 51, 370, 21, 238, 238, 238, 238, 238, 361, 238,
+ 237, 364, 95, 237, 371, 362, 363, 255, 365, 366,
+ 376, 238, 238, 203, 238, 6, 368, 95, 237, 236,
+ 236, 372, 6, 214, 369, 215, 21, 379, 7, 380,
+ 95, 388, 202, 131, 131, 131, 382, 200, 198, 195,
+ 199, 398, 201, 399, 400, 238, 236, 95, 95, 95,
+ 401, 405, 237, 408, 6, 234, 236, 197, 21, 236,
+ 7, 1, 411, 47, 58, 189, 190, 191, 192, 193,
+ 194, 282, 281, 114, 255, 255, 391, 238, 392, 7,
+ 7, 7, 7, 7, 237, 7, 119, 397, 52, 203,
7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 235, 0, 363, 235, 188, 0, 0, 52, 52, 0,
- 0, 0, 56, 0, 47, 0, 0, 0, 235, 0,
- 201, 0, 0, 0, 7, 7, 7, 7, 7, 7,
- 7, 7, 7, 7, 7, 7, 0, 0, 56, 0,
- 47, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 235, 7, 7, 7, 7, 7, 7, 0,
- 0, 7, 0, 7, 0, 0, 0, 0, 385, 386,
- 0, 7, 7, 7, 7, 7, 7, 0, 7, 0,
- 0, 0, 7, 7, 235, 0, 222, 0, 0, 0,
- 0, 341, 0, 0, 345, 56, 216, 216, 216, 216,
- 0, 0, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 0, 0, 0, 222, 0, 0, 0, 0,
+ 7, 7, 7, 236, 236, 18, 59, 60, 407, 0,
+ 0, 409, 95, 37, 52, 0, 202, 0, 0, 0,
+ 95, 200, 198, 195, 199, 0, 201, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 196,
+ 64, 197, 0, 0, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 0, 7, 7, 7,
+ 7, 7, 7, 0, 18, 7, 0, 7, 0, 0,
+ 0, 52, 52, 203, 0, 7, 7, 7, 7, 7,
+ 7, 0, 7, 130, 216, 130, 7, 7, 6, 6,
+ 0, 6, 6, 0, 17, 56, 0, 45, 18, 64,
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 0, 69, 0, 0, 238, 216, 95, 187,
+ 0, 216, 188, 237, 216, 216, 216, 216, 216, 216,
+ 18, 216, 0, 64, 0, 0, 56, 0, 0, 56,
+ 0, 0, 238, 216, 216, 0, 216, 0, 0, 237,
+ 0, 0, 238, 17, 56, 238, 45, 0, 0, 237,
+ 0, 0, 237, 0, 6, 64, 0, 0, 0, 0,
+ 6, 6, 69, 202, 6, 0, 6, 216, 200, 198,
+ 216, 199, 0, 201, 0, 95, 95, 17, 56, 6,
+ 45, 6, 238, 0, 0, 6, 6, 0, 0, 238,
+ 238, 238, 238, 238, 238, 0, 69, 237, 0, 216,
+ 0, 0, 0, 0, 0, 344, 0, 0, 348, 17,
+ 56, 0, 45, 0, 0, 238, 0, 0, 0, 238,
+ 203, 0, 238, 238, 238, 238, 238, 238, 69, 238,
+ 0, 0, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 238, 238, 0, 238, 0, 0, 0, 0, 0,
+ 0, 202, 0, 0, 0, 0, 200, 198, 0, 199,
+ 0, 201, 0, 0, 0, 0, 0, 0, 0, 187,
+ 0, 0, 188, 0, 234, 238, 197, 0, 238, 202,
+ 0, 0, 0, 0, 200, 198, 0, 199, 0, 201,
+ 202, 0, 377, 378, 0, 200, 198, 195, 199, 0,
+ 201, 0, 234, 0, 197, 0, 0, 238, 203, 0,
+ 0, 0, 0, 234, 0, 197, 189, 190, 191, 192,
+ 193, 194, 395, 0, 0, 396, 0, 0, 0, 0,
+ 0, 216, 216, 216, 216, 0, 203, 216, 216, 216,
+ 216, 216, 216, 216, 216, 216, 216, 203, 0, 56,
+ 0, 0, 0, 0, 0, 216, 216, 216, 216, 216,
216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
+ 216, 216, 216, 216, 216, 56, 0, 216, 216, 216,
216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 0, 0, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 0, 0, 18, 0,
- 64, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 237, 0, 216, 216, 216, 216, 373, 374, 216,
- 216, 0, 216, 55, 17, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 0, 0, 0, 216,
- 216, 216, 216, 130, 237, 130, 391, 0, 237, 392,
- 0, 237, 237, 237, 237, 237, 237, 18, 237, 64,
- 0, 45, 106, 235, 55, 0, 0, 55, 0, 0,
- 237, 237, 0, 237, 0, 222, 0, 0, 155, 0,
- 0, 0, 55, 17, 0, 0, 0, 0, 69, 235,
- 0, 18, 0, 64, 0, 214, 0, 0, 0, 235,
- 0, 0, 235, 224, 237, 0, 0, 237, 215, 216,
- 217, 218, 219, 220, 0, 221, 55, 17, 212, 0,
- 45, 0, 182, 18, 214, 64, 0, 0, 0, 54,
- 48, 0, 342, 0, 0, 0, 237, 215, 216, 217,
- 218, 219, 220, 0, 221, 235, 235, 69, 55, 17,
- 0, 212, 0, 0, 45, 212, 0, 0, 212, 212,
- 212, 212, 212, 212, 0, 212, 0, 0, 0, 0,
- 54, 48, 0, 54, 48, 0, 0, 212, 212, 0,
- 212, 69, 0, 0, 0, 200, 45, 0, 54, 48,
- 198, 196, 283, 197, 0, 199, 286, 287, 288, 289,
- 290, 291, 292, 293, 294, 296, 0, 0, 232, 0,
- 195, 212, 0, 69, 212, 0, 0, 0, 0, 0,
- 0, 0, 54, 48, 0, 0, 0, 200, 0, 0,
- 0, 0, 198, 196, 193, 197, 0, 199, 0, 0,
- 0, 0, 201, 212, 214, 0, 0, 0, 0, 0,
- 232, 0, 195, 0, 54, 48, 0, 215, 216, 217,
- 218, 219, 220, 0, 221, 0, 0, 0, 237, 237,
- 237, 237, 0, 0, 237, 237, 237, 237, 237, 237,
- 237, 237, 237, 237, 201, 0, 0, 55, 0, 0,
- 0, 0, 237, 237, 237, 237, 237, 237, 237, 237,
- 237, 237, 237, 237, 237, 237, 237, 237, 237, 237,
- 237, 237, 0, 55, 237, 237, 237, 237, 237, 237,
- 237, 237, 237, 237, 237, 237, 237, 237, 0, 0,
- 0, 0, 0, 237, 237, 237, 237, 237, 237, 237,
- 237, 237, 237, 0, 0, 237, 237, 237, 237, 0,
- 0, 237, 237, 0, 237, 0, 0, 237, 237, 237,
- 237, 237, 237, 237, 237, 237, 237, 237, 0, 0,
- 55, 237, 237, 237, 237, 212, 212, 212, 212, 0,
- 0, 212, 212, 212, 212, 212, 212, 212, 212, 212,
- 212, 380, 0, 54, 48, 381, 382, 0, 0, 212,
+ 216, 0, 0, 0, 0, 0, 216, 216, 216, 216,
+ 216, 216, 216, 216, 216, 216, 216, 0, 0, 216,
+ 216, 216, 216, 0, 0, 216, 216, 0, 216, 0,
+ 0, 216, 216, 216, 216, 216, 216, 216, 216, 216,
+ 216, 216, 0, 56, 0, 216, 216, 216, 216, 238,
+ 238, 238, 238, 0, 224, 238, 238, 238, 238, 238,
+ 238, 238, 238, 238, 238, 0, 0, 0, 0, 0,
+ 0, 0, 0, 238, 238, 238, 238, 238, 238, 238,
+ 238, 238, 238, 238, 238, 238, 238, 238, 238, 238,
+ 238, 238, 238, 213, 0, 238, 238, 238, 238, 238,
+ 238, 238, 238, 238, 238, 238, 238, 238, 238, 0,
+ 0, 0, 8, 0, 238, 238, 238, 238, 238, 238,
+ 238, 238, 238, 238, 238, 212, 0, 238, 238, 238,
+ 238, 264, 0, 238, 238, 0, 238, 55, 0, 238,
+ 238, 238, 238, 238, 238, 238, 238, 238, 238, 238,
+ 0, 0, 0, 238, 238, 238, 238, 0, 212, 0,
+ 0, 0, 212, 0, 0, 212, 212, 212, 212, 212,
+ 212, 0, 212, 0, 107, 193, 194, 0, 55, 0,
+ 0, 55, 0, 0, 212, 212, 0, 212, 0, 0,
+ 156, 0, 0, 0, 0, 0, 55, 0, 0, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 0, 0,
+ 232, 233, 191, 192, 193, 194, 29, 0, 212, 0,
+ 0, 212, 0, 216, 0, 0, 0, 0, 0, 0,
+ 55, 226, 0, 213, 0, 184, 217, 218, 219, 220,
+ 221, 222, 0, 223, 54, 0, 0, 0, 0, 0,
+ 212, 0, 0, 0, 0, 0, 264, 0, 0, 264,
+ 0, 0, 55, 351, 0, 0, 213, 0, 0, 0,
+ 213, 0, 0, 213, 213, 213, 213, 213, 213, 0,
+ 213, 0, 0, 0, 0, 54, 0, 0, 54, 0,
+ 0, 0, 213, 213, 0, 213, 0, 0, 0, 0,
+ 0, 0, 0, 54, 0, 285, 0, 0, 0, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 298, 299,
+ 0, 0, 0, 0, 0, 0, 213, 0, 0, 213,
+ 202, 0, 0, 0, 0, 200, 198, 54, 199, 0,
+ 201, 202, 0, 264, 264, 0, 200, 198, 0, 199,
+ 0, 201, 0, 234, 0, 197, 0, 0, 213, 0,
+ 0, 0, 0, 0, 234, 0, 197, 0, 0, 54,
+ 0, 0, 0, 264, 0, 0, 264, 0, 0, 0,
+ 0, 0, 212, 212, 212, 212, 0, 203, 212, 212,
+ 212, 212, 212, 212, 212, 212, 212, 212, 203, 0,
+ 0, 55, 0, 0, 0, 0, 212, 212, 212, 212,
212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
- 212, 212, 212, 212, 212, 212, 212, 212, 212, 54,
- 48, 212, 212, 212, 212, 212, 212, 212, 212, 212,
- 212, 212, 212, 212, 212, 0, 0, 0, 0, 0,
+ 212, 212, 212, 212, 212, 212, 0, 55, 212, 212,
212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
- 213, 0, 212, 212, 212, 212, 0, 0, 212, 212,
- 0, 212, 0, 0, 212, 212, 212, 212, 212, 212,
- 212, 212, 212, 212, 212, 0, 54, 0, 212, 212,
- 212, 212, 0, 213, 0, 0, 0, 213, 0, 0,
- 213, 213, 213, 213, 213, 213, 0, 213, 191, 192,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 213,
- 213, 0, 213, 0, 0, 0, 0, 94, 0, 0,
- 0, 0, 200, 94, 0, 0, 0, 198, 196, 0,
- 197, 0, 199, 0, 0, 0, 187, 188, 189, 190,
- 191, 192, 0, 213, 0, 232, 213, 195, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 214, 0, 0,
- 0, 0, 0, 200, 0, 0, 0, 0, 198, 196,
- 0, 197, 0, 199, 0, 213, 0, 0, 94, 201,
- 0, 0, 0, 0, 0, 0, 232, 0, 195, 0,
- 214, 0, 0, 94, 214, 0, 0, 214, 214, 214,
- 214, 214, 214, 0, 214, 0, 94, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 214, 214, 0, 214,
- 201, 0, 0, 94, 94, 94, 200, 0, 0, 0,
- 0, 198, 196, 200, 197, 0, 199, 0, 198, 196,
- 193, 197, 0, 199, 0, 0, 0, 280, 0, 232,
- 214, 195, 0, 214, 200, 0, 194, 0, 195, 198,
- 196, 193, 197, 0, 199, 0, 200, 0, 0, 0,
- 0, 198, 196, 0, 197, 0, 199, 232, 0, 195,
- 0, 0, 214, 201, 0, 0, 0, 94, 0, 232,
- 201, 195, 0, 0, 0, 94, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 213, 213, 213,
- 213, 201, 0, 213, 213, 213, 213, 213, 213, 213,
- 213, 213, 213, 201, 0, 0, 0, 0, 0, 0,
- 0, 213, 213, 213, 213, 213, 213, 213, 213, 213,
+ 212, 212, 0, 0, 0, 0, 0, 212, 212, 212,
+ 212, 212, 212, 212, 212, 212, 212, 212, 0, 0,
+ 212, 212, 212, 212, 0, 0, 212, 212, 0, 212,
+ 0, 0, 212, 212, 212, 212, 212, 212, 212, 212,
+ 212, 212, 212, 0, 0, 55, 212, 212, 212, 212,
+ 213, 213, 213, 213, 0, 0, 213, 213, 213, 213,
+ 213, 213, 213, 213, 213, 213, 384, 0, 54, 0,
+ 385, 386, 224, 0, 213, 213, 213, 213, 213, 213,
213, 213, 213, 213, 213, 213, 213, 213, 213, 213,
- 213, 0, 0, 213, 213, 213, 213, 213, 213, 213,
- 213, 213, 213, 213, 213, 213, 213, 0, 0, 0,
- 0, 367, 213, 213, 213, 213, 213, 213, 213, 213,
- 213, 213, 0, 0, 213, 213, 213, 213, 0, 0,
- 213, 213, 94, 213, 0, 0, 213, 213, 213, 213,
- 213, 213, 213, 213, 213, 213, 213, 0, 0, 0,
- 213, 213, 213, 213, 214, 214, 214, 214, 0, 0,
- 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
- 0, 187, 188, 189, 190, 191, 192, 0, 214, 214,
+ 213, 213, 213, 213, 54, 0, 213, 213, 213, 213,
+ 213, 213, 213, 213, 213, 213, 213, 213, 213, 213,
+ 0, 0, 0, 0, 0, 213, 213, 213, 213, 213,
+ 213, 213, 213, 213, 213, 213, 214, 0, 213, 213,
+ 213, 213, 0, 0, 213, 213, 0, 213, 0, 0,
+ 213, 213, 213, 213, 213, 213, 213, 213, 213, 213,
+ 213, 0, 54, 403, 213, 213, 213, 213, 0, 214,
+ 0, 0, 0, 214, 0, 0, 214, 214, 214, 214,
+ 214, 214, 0, 214, 0, 0, 0, 0, 0, 47,
+ 0, 0, 0, 0, 0, 214, 214, 0, 214, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 232, 233, 191, 192, 193, 194, 0, 0, 0, 0,
+ 0, 189, 190, 191, 192, 193, 194, 0, 0, 214,
+ 47, 0, 214, 47, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 215, 0, 0, 0, 47, 0,
+ 202, 216, 0, 0, 0, 200, 198, 0, 199, 345,
+ 201, 214, 0, 0, 217, 218, 219, 220, 221, 222,
+ 0, 223, 0, 234, 0, 197, 0, 215, 0, 0,
+ 0, 215, 47, 0, 215, 215, 215, 215, 215, 215,
+ 0, 215, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 215, 215, 0, 215, 203, 0, 0,
+ 0, 0, 0, 202, 47, 0, 0, 0, 200, 198,
+ 202, 199, 0, 201, 0, 200, 198, 0, 199, 0,
+ 201, 0, 0, 0, 0, 0, 234, 215, 197, 0,
+ 215, 202, 0, 234, 0, 197, 200, 198, 0, 199,
+ 0, 201, 0, 202, 0, 0, 0, 0, 200, 198,
+ 195, 199, 0, 201, 234, 0, 197, 0, 0, 215,
+ 203, 0, 0, 0, 0, 0, 196, 203, 197, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 214, 214, 214, 214, 0, 203, 214,
+ 214, 214, 214, 214, 214, 214, 214, 214, 214, 0,
+ 203, 0, 0, 0, 0, 0, 0, 214, 214, 214,
214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
- 214, 214, 214, 214, 214, 214, 214, 214, 94, 94,
+ 214, 214, 214, 214, 214, 214, 214, 0, 0, 214,
214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
- 214, 214, 214, 214, 189, 190, 191, 192, 0, 214,
- 214, 214, 214, 214, 214, 214, 214, 214, 214, 215,
- 0, 214, 214, 214, 214, 0, 185, 214, 214, 186,
+ 214, 214, 214, 47, 0, 0, 0, 0, 214, 214,
+ 214, 214, 214, 214, 214, 214, 214, 214, 214, 0,
+ 0, 214, 214, 214, 214, 0, 0, 214, 214, 47,
214, 0, 0, 214, 214, 214, 214, 214, 214, 214,
- 214, 214, 214, 214, 0, 0, 0, 214, 214, 214,
- 214, 0, 215, 0, 0, 0, 215, 0, 0, 215,
- 215, 215, 215, 215, 215, 187, 215, 189, 190, 191,
- 192, 0, 187, 188, 189, 190, 191, 192, 215, 215,
- 0, 215, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 230, 231, 189, 190, 191, 192, 0,
- 0, 0, 0, 0, 0, 230, 231, 189, 190, 191,
- 192, 0, 215, 0, 0, 215, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 210, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 215, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 210,
- 0, 0, 0, 0, 0, 0, 210, 210, 0, 210,
- 210, 210, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 210, 210, 0, 210, 0,
- 0, 0, 0, 0, 0, 200, 0, 0, 0, 0,
- 198, 196, 200, 197, 0, 199, 0, 198, 196, 193,
- 197, 0, 199, 0, 0, 0, 0, 0, 232, 210,
- 195, 0, 210, 200, 0, 194, 0, 195, 198, 196,
- 0, 197, 0, 199, 0, 200, 0, 0, 0, 0,
- 198, 196, 0, 197, 0, 199, 232, 0, 195, 0,
- 0, 210, 201, 0, 0, 0, 0, 0, 232, 201,
- 195, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 215, 215, 215, 215,
- 201, 0, 215, 215, 215, 215, 215, 215, 215, 215,
- 215, 215, 201, 0, 0, 0, 0, 0, 0, 0,
+ 214, 214, 214, 214, 263, 0, 0, 214, 214, 214,
+ 214, 215, 215, 215, 215, 0, 350, 215, 215, 215,
+ 215, 215, 215, 215, 215, 215, 215, 0, 0, 0,
+ 0, 0, 0, 0, 0, 215, 215, 215, 215, 215,
215, 215, 215, 215, 215, 215, 215, 215, 215, 215,
+ 215, 215, 215, 215, 215, 0, 0, 215, 215, 215,
215, 215, 215, 215, 215, 215, 215, 215, 215, 215,
- 0, 0, 215, 215, 215, 215, 215, 215, 215, 215,
- 215, 215, 215, 215, 215, 215, 0, 0, 0, 0,
+ 215, 0, 191, 192, 193, 194, 215, 215, 215, 215,
+ 215, 215, 215, 215, 215, 215, 215, 210, 0, 215,
+ 215, 215, 215, 0, 0, 215, 215, 0, 215, 0,
0, 215, 215, 215, 215, 215, 215, 215, 215, 215,
- 215, 0, 0, 215, 215, 215, 215, 0, 0, 215,
- 215, 0, 215, 0, 0, 215, 215, 215, 215, 215,
- 215, 215, 215, 215, 215, 215, 0, 0, 0, 215,
- 215, 215, 215, 210, 210, 210, 210, 0, 0, 210,
- 210, 210, 210, 210, 210, 210, 210, 210, 210, 0,
- 15, 0, 0, 0, 0, 0, 0, 210, 210, 210,
+ 215, 215, 0, 0, 0, 215, 215, 215, 215, 0,
+ 210, 0, 0, 0, 0, 0, 187, 210, 210, 188,
+ 210, 210, 210, 189, 190, 191, 192, 193, 194, 0,
+ 189, 0, 191, 192, 193, 194, 210, 210, 0, 210,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 232, 0, 191, 192, 193, 194, 0, 0, 0,
+ 0, 0, 0, 232, 233, 191, 192, 193, 194, 0,
+ 210, 0, 0, 210, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 211, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 210, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 211, 52,
+ 53, 0, 0, 0, 0, 211, 211, 0, 211, 211,
+ 211, 52, 53, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 211, 211, 0, 211, 0, 0,
+ 0, 0, 0, 0, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 0, 55, 56, 57, 58,
+ 59, 60, 61, 62, 63, 64, 65, 0, 211, 0,
+ 0, 211, 0, 77, 78, 79, 80, 0, 0, 0,
+ 0, 0, 0, 0, 0, 77, 78, 79, 80, 0,
+ 0, 81, 82, 83, 84, 85, 0, 0, 0, 0,
+ 211, 0, 0, 81, 82, 83, 84, 85, 0, 0,
+ 0, 0, 0, 0, 0, 0, 212, 0, 0, 0,
+ 0, 0, 0, 262, 210, 210, 210, 210, 0, 263,
+ 210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
+ 0, 0, 0, 0, 0, 0, 0, 0, 210, 210,
+ 210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
+ 210, 210, 210, 210, 210, 210, 210, 210, 0, 0,
210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
- 210, 210, 210, 210, 210, 210, 210, 0, 0, 210,
+ 210, 210, 210, 210, 0, 0, 0, 0, 0, 210,
210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
- 210, 210, 210, 0, 0, 0, 0, 399, 210, 210,
- 210, 210, 210, 210, 210, 210, 210, 210, 211, 15,
- 210, 210, 210, 210, 0, 185, 210, 210, 186, 210,
- 0, 0, 210, 210, 210, 210, 210, 210, 210, 210,
- 210, 210, 210, 0, 0, 0, 210, 210, 210, 210,
- 0, 211, 0, 15, 0, 0, 189, 0, 211, 211,
- 0, 211, 211, 211, 187, 188, 189, 190, 191, 192,
- 0, 230, 231, 189, 190, 191, 192, 211, 211, 0,
- 211, 0, 0, 0, 0, 15, 0, 0, 0, 0,
- 0, 0, 187, 188, 189, 190, 191, 192, 0, 0,
- 0, 0, 0, 0, 230, 0, 189, 190, 191, 192,
- 0, 211, 0, 0, 211, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 230, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 211, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 230, 0,
- 0, 0, 0, 0, 0, 230, 230, 0, 0, 230,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 230, 230, 0, 230, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 203, 0, 0, 0, 0, 203, 203, 203, 203,
- 0, 203, 0, 0, 0, 0, 0, 189, 230, 0,
- 0, 230, 0, 189, 203, 0, 203, 0, 189, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 230, 0, 0, 0, 0, 0, 0, 0, 203, 0,
- 189, 0, 0, 0, 0, 0, 261, 0, 0, 0,
- 0, 0, 0, 0, 0, 211, 211, 211, 211, 347,
- 0, 211, 211, 211, 211, 211, 211, 211, 211, 211,
- 211, 0, 0, 0, 0, 0, 0, 0, 0, 211,
+ 0, 0, 210, 210, 210, 210, 0, 0, 210, 210,
+ 0, 210, 0, 0, 210, 210, 210, 210, 210, 210,
+ 210, 210, 210, 210, 210, 0, 0, 0, 210, 210,
+ 210, 210, 211, 211, 211, 211, 0, 0, 211, 211,
+ 211, 211, 211, 211, 211, 211, 211, 211, 0, 0,
+ 0, 0, 0, 0, 0, 0, 211, 211, 211, 211,
211, 211, 211, 211, 211, 211, 211, 211, 211, 211,
- 211, 211, 211, 211, 211, 211, 211, 211, 211, 0,
- 0, 211, 211, 211, 211, 211, 211, 211, 211, 211,
- 211, 211, 211, 211, 211, 0, 0, 0, 0, 0,
+ 211, 211, 211, 211, 211, 211, 0, 0, 211, 211,
211, 211, 211, 211, 211, 211, 211, 211, 211, 211,
- 0, 0, 211, 211, 211, 211, 0, 0, 211, 211,
- 0, 211, 0, 0, 211, 211, 211, 211, 211, 211,
- 211, 211, 211, 211, 211, 210, 0, 0, 211, 211,
- 211, 211, 230, 230, 230, 230, 0, 0, 230, 230,
- 230, 230, 230, 230, 230, 230, 230, 230, 0, 0,
- 0, 0, 0, 0, 0, 0, 230, 230, 230, 230,
- 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
- 230, 230, 230, 230, 230, 230, 0, 0, 230, 230,
- 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
- 230, 230, 0, 0, 0, 0, 0, 230, 230, 230,
- 230, 230, 230, 230, 230, 230, 230, 232, 0, 230,
- 230, 230, 230, 0, 203, 230, 230, 203, 230, 0,
- 0, 230, 230, 230, 230, 230, 230, 230, 230, 230,
- 230, 230, 0, 0, 0, 230, 230, 230, 230, 0,
- 232, 52, 53, 0, 0, 0, 0, 232, 232, 0,
- 0, 232, 0, 0, 52, 53, 0, 0, 0, 0,
- 203, 203, 203, 203, 203, 203, 232, 232, 0, 232,
- 0, 0, 0, 0, 0, 0, 55, 56, 57, 58,
+ 211, 211, 0, 0, 0, 0, 0, 211, 211, 211,
+ 211, 211, 211, 211, 211, 211, 211, 211, 231, 0,
+ 211, 211, 211, 211, 0, 0, 211, 211, 0, 211,
+ 0, 0, 211, 211, 211, 211, 211, 211, 211, 211,
+ 211, 211, 211, 0, 0, 0, 211, 211, 211, 211,
+ 259, 231, 0, 0, 0, 0, 260, 0, 231, 231,
+ 0, 261, 231, 0, 52, 53, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 231, 231, 0,
+ 231, 0, 0, 0, 0, 0, 55, 56, 57, 58,
59, 60, 61, 62, 63, 64, 65, 0, 0, 55,
56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
- 232, 0, 0, 232, 76, 77, 78, 79, 0, 0,
- 0, 0, 0, 0, 231, 0, 0, 76, 77, 78,
- 79, 0, 80, 81, 82, 83, 84, 0, 0, 0,
- 0, 0, 232, 0, 0, 80, 81, 82, 83, 84,
- 0, 0, 0, 0, 0, 0, 0, 231, 0, 0,
- 0, 0, 0, 0, 231, 231, 0, 0, 231, 0,
+ 0, 231, 48, 0, 231, 77, 78, 79, 80, 0,
+ 0, 0, 0, 0, 0, 0, 233, 0, 77, 78,
+ 79, 80, 0, 81, 82, 83, 84, 85, 0, 0,
+ 0, 0, 0, 231, 0, 0, 81, 82, 83, 84,
+ 85, 0, 0, 48, 0, 0, 48, 0, 0, 233,
+ 0, 183, 0, 0, 0, 0, 233, 233, 0, 0,
+ 233, 48, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 233, 233, 0, 233, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 48, 256, 257, 258, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 233,
+ 0, 0, 233, 0, 0, 0, 0, 0, 0, 0,
+ 284, 0, 0, 0, 0, 203, 0, 48, 0, 0,
+ 203, 203, 203, 203, 0, 203, 0, 0, 0, 0,
+ 0, 233, 0, 0, 0, 0, 0, 0, 203, 0,
+ 203, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 313, 0, 0, 0, 231, 231, 231, 231, 321,
+ 0, 231, 231, 231, 231, 231, 231, 231, 231, 231,
+ 231, 0, 203, 0, 0, 0, 0, 0, 0, 231,
+ 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
+ 231, 231, 231, 231, 231, 231, 231, 231, 231, 0,
+ 0, 231, 231, 231, 231, 231, 231, 231, 231, 231,
+ 231, 231, 231, 231, 231, 0, 0, 0, 0, 0,
+ 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
+ 231, 0, 0, 231, 231, 231, 231, 0, 0, 231,
+ 231, 0, 231, 0, 0, 231, 231, 231, 231, 231,
+ 231, 231, 231, 231, 231, 231, 48, 367, 0, 231,
+ 231, 231, 231, 233, 233, 233, 233, 0, 0, 233,
+ 233, 233, 233, 233, 233, 233, 233, 233, 233, 0,
+ 0, 14, 48, 0, 0, 0, 0, 233, 233, 233,
+ 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+ 233, 233, 233, 233, 233, 233, 233, 0, 0, 233,
+ 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
+ 233, 233, 233, 0, 389, 390, 0, 0, 233, 233,
+ 233, 233, 233, 233, 233, 233, 233, 233, 233, 232,
+ 14, 233, 233, 233, 233, 0, 0, 233, 233, 0,
+ 233, 0, 0, 233, 233, 233, 233, 233, 233, 233,
+ 233, 233, 233, 233, 0, 0, 0, 233, 233, 233,
+ 233, 0, 232, 0, 14, 0, 0, 188, 203, 232,
+ 232, 203, 0, 232, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 232, 232,
+ 0, 232, 0, 0, 0, 0, 14, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 231, 231, 0, 231, 0, 0, 0,
- 0, 0, 0, 0, 0, 55, 56, 57, 58, 59,
- 60, 61, 62, 63, 64, 65, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 231, 0, 0,
- 231, 0, 0, 76, 77, 78, 79, 0, 0, 0,
+ 0, 0, 0, 0, 0, 203, 203, 203, 203, 203,
+ 203, 0, 232, 0, 0, 232, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 230, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 80, 81, 82, 83, 84, 0, 0, 0, 231,
+ 0, 0, 0, 0, 232, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 230, 0, 0, 0, 0, 0, 0, 230, 230, 0,
+ 0, 230, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 230, 230, 0, 230,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 232, 232, 232, 232, 0, 0,
- 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
- 0, 0, 0, 0, 0, 0, 0, 0, 232, 232,
- 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
- 232, 232, 232, 232, 232, 232, 232, 232, 0, 0,
- 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
- 232, 232, 232, 232, 0, 0, 0, 0, 0, 232,
- 232, 232, 232, 232, 232, 232, 232, 232, 232, 0,
- 0, 232, 232, 232, 232, 0, 0, 232, 232, 0,
- 232, 0, 0, 232, 232, 232, 232, 232, 232, 232,
- 232, 232, 232, 232, 0, 0, 0, 232, 232, 232,
- 232, 231, 231, 231, 231, 0, 0, 231, 231, 231,
- 231, 231, 231, 231, 231, 231, 231, 0, 0, 0,
- 0, 0, 0, 0, 0, 231, 231, 231, 231, 231,
- 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
- 231, 231, 231, 231, 231, 0, 0, 231, 231, 231,
- 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
- 231, 0, 0, 0, 0, 0, 231, 231, 231, 231,
- 231, 231, 231, 231, 231, 231, 229, 0, 231, 231,
- 231, 231, 0, 0, 231, 231, 0, 231, 0, 0,
- 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
- 231, 0, 0, 0, 231, 231, 231, 231, 0, 229,
- 0, 0, 0, 0, 0, 0, 229, 229, 0, 0,
- 229, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 229, 229, 0, 229, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 188, 0,
+ 230, 0, 0, 230, 188, 0, 0, 0, 0, 188,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 229,
- 0, 0, 229, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 143, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 229, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 143, 0, 0, 0,
- 0, 0, 0, 143, 143, 0, 143, 143, 143, 0,
+ 0, 0, 230, 0, 0, 0, 0, 0, 0, 0,
+ 0, 188, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 232, 232, 232, 232,
+ 0, 0, 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 0, 0, 0, 0, 0, 0, 0, 0,
+ 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
+ 0, 0, 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 232, 232, 232, 0, 0, 0, 0,
+ 0, 232, 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 0, 0, 232, 232, 232, 232, 0, 0,
+ 232, 232, 0, 232, 0, 0, 232, 232, 232, 232,
+ 232, 232, 232, 232, 232, 232, 232, 0, 0, 0,
+ 232, 232, 232, 232, 230, 230, 230, 230, 0, 0,
+ 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
+ 0, 0, 15, 0, 0, 0, 0, 0, 230, 230,
+ 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
+ 230, 230, 230, 230, 230, 230, 230, 230, 0, 0,
+ 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
+ 230, 230, 230, 230, 0, 0, 0, 0, 0, 230,
+ 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
+ 143, 15, 230, 230, 230, 230, 0, 0, 230, 230,
+ 0, 230, 0, 0, 230, 230, 230, 230, 230, 230,
+ 230, 230, 230, 230, 230, 0, 0, 0, 230, 230,
+ 230, 230, 0, 143, 0, 15, 0, 0, 189, 0,
+ 143, 143, 0, 143, 143, 143, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 143,
+ 0, 0, 143, 0, 0, 0, 0, 15, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 143, 0, 0, 143, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 143, 0, 0, 143, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 235, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 143, 0, 0, 143,
+ 0, 0, 0, 0, 0, 143, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 235, 0, 0, 0, 0, 0, 0, 235, 235,
+ 0, 0, 235, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 235, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 143, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 189,
+ 0, 235, 0, 0, 235, 189, 0, 0, 0, 0,
+ 189, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 229, 229, 229, 229, 0, 0, 229,
- 229, 229, 229, 229, 229, 229, 229, 229, 229, 0,
- 0, 0, 0, 0, 0, 0, 0, 229, 229, 229,
- 229, 229, 229, 229, 229, 229, 229, 229, 229, 229,
- 229, 229, 229, 229, 229, 229, 229, 0, 0, 229,
- 229, 229, 229, 229, 229, 229, 229, 229, 229, 229,
- 229, 229, 229, 0, 0, 0, 0, 0, 229, 229,
- 229, 229, 229, 229, 229, 229, 229, 229, 0, 0,
- 229, 229, 229, 229, 0, 0, 229, 229, 0, 229,
- 0, 0, 229, 229, 229, 229, 229, 229, 229, 229,
- 229, 229, 229, 0, 0, 0, 229, 229, 229, 229,
- 143, 143, 143, 143, 0, 0, 143, 0, 143, 143,
- 143, 143, 143, 143, 143, 143, 0, 0, 0, 0,
- 0, 0, 0, 0, 143, 143, 143, 143, 143, 143,
+ 0, 0, 0, 235, 0, 0, 0, 0, 0, 0,
+ 0, 0, 189, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 143, 143, 143,
+ 143, 0, 0, 143, 0, 143, 143, 143, 143, 143,
+ 143, 143, 143, 0, 0, 0, 0, 0, 0, 0,
+ 0, 143, 143, 143, 143, 143, 143, 143, 143, 143,
143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
- 143, 143, 143, 0, 0, 0, 0, 143, 143, 143,
+ 0, 0, 0, 0, 143, 143, 143, 143, 143, 143,
143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
- 143, 143, 143, 143, 143, 234, 0, 143, 143, 143,
- 143, 0, 0, 143, 143, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 143, 143, 143, 143, 143,
- 0, 0, 0, 143, 143, 143, 143, 0, 234, 0,
- 0, 0, 0, 0, 0, 234, 234, 0, 0, 234,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 234, 0, 0, 0, 0, 0,
+ 143, 143, 143, 0, 0, 143, 143, 143, 143, 0,
+ 0, 143, 143, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 143, 143, 143, 143, 143, 0, 0,
+ 0, 143, 143, 143, 143, 235, 235, 235, 235, 0,
+ 0, 235, 235, 235, 235, 235, 235, 235, 235, 235,
+ 235, 0, 0, 0, 0, 0, 0, 0, 0, 235,
+ 235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
+ 235, 235, 235, 235, 235, 235, 235, 235, 235, 0,
+ 0, 235, 235, 235, 235, 235, 235, 235, 235, 235,
+ 235, 235, 235, 235, 235, 0, 0, 0, 0, 0,
+ 235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
+ 235, 234, 0, 235, 235, 235, 235, 0, 0, 235,
+ 235, 0, 235, 0, 0, 235, 235, 235, 235, 0,
+ 0, 235, 235, 235, 235, 235, 0, 0, 0, 235,
+ 235, 235, 235, 0, 234, 0, 0, 0, 0, 0,
+ 0, 234, 234, 0, 0, 234, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 234, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 234, 0,
- 0, 234, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 233, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 234, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 233, 0, 0, 0, 0,
- 0, 0, 233, 233, 0, 0, 233, 0, 0, 0,
+ 0, 0, 0, 0, 234, 0, 0, 234, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 144,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 233, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 234, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 144, 0, 0, 0, 0, 0, 0, 144,
+ 144, 0, 144, 144, 144, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 144, 0,
+ 0, 144, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 233, 0, 0, 233, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 144, 0, 0, 144, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 233, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 144, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 234, 234, 234, 234, 0, 0, 234, 234,
- 234, 234, 234, 234, 234, 234, 234, 234, 0, 0,
- 0, 0, 0, 0, 0, 0, 234, 234, 234, 234,
- 234, 234, 234, 234, 234, 234, 234, 234, 234, 234,
- 234, 234, 234, 234, 234, 234, 0, 0, 234, 234,
+ 0, 0, 0, 0, 0, 0, 0, 0, 234, 234,
+ 234, 234, 0, 0, 234, 234, 234, 234, 234, 234,
+ 234, 234, 234, 234, 0, 0, 0, 0, 0, 0,
+ 0, 0, 234, 234, 234, 234, 234, 234, 234, 234,
234, 234, 234, 234, 234, 234, 234, 234, 234, 234,
- 234, 234, 0, 0, 0, 0, 0, 234, 234, 234,
- 234, 234, 234, 234, 234, 234, 234, 0, 0, 234,
- 234, 234, 234, 0, 0, 234, 234, 0, 234, 0,
- 0, 234, 234, 234, 234, 0, 0, 234, 234, 234,
- 234, 234, 0, 0, 0, 234, 234, 234, 234, 233,
- 233, 233, 233, 0, 0, 233, 233, 233, 233, 233,
- 233, 233, 233, 233, 233, 0, 0, 0, 0, 0,
- 0, 0, 0, 233, 233, 233, 233, 233, 233, 233,
- 233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
- 233, 233, 233, 0, 0, 233, 233, 233, 233, 233,
- 233, 233, 233, 233, 233, 233, 233, 233, 233, 0,
- 0, 0, 0, 0, 233, 233, 233, 233, 233, 233,
- 233, 233, 233, 233, 144, 0, 233, 233, 233, 233,
- 0, 0, 233, 233, 0, 233, 0, 0, 233, 233,
- 233, 233, 0, 0, 233, 233, 233, 233, 233, 0,
- 0, 0, 233, 233, 233, 233, 0, 144, 0, 0,
- 0, 0, 0, 0, 144, 144, 0, 144, 144, 144,
+ 234, 234, 0, 0, 234, 234, 234, 234, 234, 234,
+ 234, 234, 234, 234, 234, 234, 234, 234, 0, 0,
+ 0, 0, 0, 234, 234, 234, 234, 234, 234, 234,
+ 234, 234, 234, 234, 0, 0, 234, 234, 234, 234,
+ 0, 0, 234, 234, 0, 234, 0, 0, 234, 234,
+ 234, 234, 0, 0, 234, 234, 234, 234, 234, 0,
+ 0, 0, 234, 234, 234, 234, 144, 144, 144, 144,
+ 0, 0, 144, 0, 144, 144, 144, 144, 144, 144,
+ 144, 144, 0, 0, 0, 0, 0, 0, 0, 0,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 0,
+ 0, 0, 0, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 236, 0, 144, 144, 144, 144, 0, 0,
+ 144, 144, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 144, 144, 144, 144, 144, 0, 0, 0,
+ 144, 144, 144, 144, 0, 236, 0, 0, 0, 0,
+ 0, 0, 236, 236, 0, 0, 236, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 144, 0, 0, 144, 0, 0, 0,
+ 0, 236, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 144, 0, 0,
- 144, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 235, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 144,
+ 0, 0, 0, 0, 0, 236, 0, 0, 236, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 235, 0, 0, 0, 0, 0,
- 0, 235, 235, 0, 0, 235, 0, 0, 0, 0,
+ 237, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 236, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 235, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 237, 0, 0, 0, 0, 0, 0,
+ 237, 237, 0, 0, 237, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 237,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 235, 0, 0, 235, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 237, 0, 0, 237, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 235, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 237, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 144, 144, 144, 144, 0, 0, 144, 0, 144,
- 144, 144, 144, 144, 144, 144, 144, 0, 0, 0,
- 0, 0, 0, 0, 0, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 0, 0, 0, 0, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 0, 0, 144, 144,
- 144, 144, 0, 0, 144, 144, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 144, 144, 144, 144,
- 144, 0, 0, 0, 144, 144, 144, 144, 235, 235,
- 235, 235, 0, 0, 235, 235, 235, 235, 235, 235,
- 235, 235, 235, 235, 0, 0, 0, 0, 0, 0,
- 0, 0, 235, 235, 235, 235, 235, 235, 235, 235,
- 235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
- 235, 235, 0, 0, 235, 235, 235, 235, 235, 235,
- 235, 235, 235, 235, 235, 235, 235, 235, 0, 0,
- 0, 0, 0, 235, 235, 235, 235, 235, 235, 235,
- 235, 235, 235, 236, 0, 235, 235, 235, 235, 0,
- 0, 235, 235, 0, 235, 0, 0, 235, 235, 0,
- 0, 0, 0, 235, 235, 235, 235, 235, 0, 0,
- 0, 235, 235, 235, 235, 0, 236, 0, 0, 0,
- 0, 0, 0, 236, 236, 0, 0, 236, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 236,
+ 236, 236, 236, 0, 0, 236, 236, 236, 236, 236,
+ 236, 236, 236, 236, 236, 0, 0, 0, 0, 0,
+ 0, 0, 0, 236, 236, 236, 236, 236, 236, 236,
+ 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
+ 236, 236, 236, 0, 0, 236, 236, 236, 236, 236,
+ 236, 236, 236, 236, 236, 236, 236, 236, 236, 0,
+ 0, 0, 0, 0, 236, 236, 236, 236, 236, 236,
+ 236, 236, 236, 236, 236, 0, 0, 236, 236, 236,
+ 236, 0, 0, 236, 236, 0, 236, 0, 0, 236,
+ 236, 0, 0, 0, 0, 236, 236, 236, 236, 236,
+ 0, 0, 0, 236, 236, 236, 236, 237, 237, 237,
+ 237, 0, 0, 237, 237, 237, 237, 237, 237, 237,
+ 237, 237, 237, 0, 0, 0, 0, 0, 0, 0,
+ 0, 237, 237, 237, 237, 237, 237, 237, 237, 237,
+ 237, 237, 237, 237, 237, 237, 237, 237, 237, 237,
+ 237, 0, 0, 237, 237, 237, 237, 237, 237, 237,
+ 237, 237, 237, 237, 237, 237, 237, 0, 0, 0,
+ 0, 0, 237, 237, 237, 237, 237, 237, 237, 237,
+ 237, 237, 237, 130, 0, 237, 237, 237, 237, 0,
+ 0, 237, 237, 0, 237, 0, 0, 0, 237, 0,
+ 0, 0, 0, 237, 237, 237, 237, 237, 0, 0,
+ 0, 237, 237, 237, 237, 0, 130, 0, 0, 0,
+ 0, 0, 0, 130, 130, 0, 130, 130, 130, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 236, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 130, 0, 0, 130, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 236, 0, 0, 236,
+ 0, 0, 0, 0, 0, 0, 130, 0, 0, 130,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 130, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 236, 0,
+ 0, 135, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 130, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 130, 0, 0, 0, 0, 0, 0,
- 130, 130, 0, 130, 130, 130, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 130,
- 0, 0, 130, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 135, 0, 0, 0, 0, 0,
+ 0, 135, 135, 0, 0, 135, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 135, 0, 0, 135, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 130, 0, 0, 130, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 135, 0, 0, 135, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 130, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 135, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 236, 236, 236, 236, 0, 0, 236, 236, 236, 236,
- 236, 236, 236, 236, 236, 236, 0, 0, 0, 0,
- 0, 0, 0, 0, 236, 236, 236, 236, 236, 236,
- 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
- 236, 236, 236, 236, 0, 0, 236, 236, 236, 236,
- 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
- 0, 0, 0, 0, 0, 236, 236, 236, 236, 236,
- 236, 236, 236, 236, 236, 0, 0, 236, 236, 236,
- 236, 0, 0, 236, 236, 0, 236, 0, 0, 0,
- 236, 0, 0, 0, 0, 236, 236, 236, 236, 236,
- 0, 0, 0, 236, 236, 236, 236, 130, 130, 130,
- 130, 0, 0, 130, 0, 130, 130, 130, 130, 130,
- 130, 130, 130, 0, 0, 0, 0, 0, 0, 0,
- 0, 130, 130, 130, 130, 130, 130, 130, 130, 130,
- 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 130, 130, 130, 130, 0, 0, 130, 0, 130, 130,
+ 130, 130, 130, 130, 130, 130, 0, 0, 0, 0,
0, 0, 0, 0, 130, 130, 130, 130, 130, 130,
- 130, 130, 130, 130, 130, 130, 130, 0, 0, 0,
- 0, 0, 130, 130, 130, 130, 130, 130, 130, 130,
- 130, 130, 135, 0, 130, 130, 130, 130, 0, 0,
- 130, 130, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 130, 130, 130, 130, 130, 0, 0, 0,
- 130, 130, 130, 130, 0, 135, 0, 0, 0, 0,
- 0, 0, 135, 135, 0, 0, 135, 0, 0, 0,
+ 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
+ 130, 130, 130, 0, 0, 0, 0, 130, 130, 130,
+ 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
+ 0, 0, 0, 0, 0, 130, 130, 130, 130, 130,
+ 130, 130, 130, 130, 130, 130, 0, 0, 130, 130,
+ 130, 130, 0, 0, 130, 130, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 130, 130, 130, 130,
+ 130, 0, 0, 0, 130, 130, 130, 130, 135, 135,
+ 135, 135, 0, 0, 135, 0, 135, 135, 135, 135,
+ 135, 135, 135, 135, 0, 0, 0, 0, 0, 0,
+ 0, 0, 135, 135, 135, 135, 135, 135, 135, 135,
+ 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
+ 135, 0, 0, 0, 0, 135, 135, 135, 135, 135,
+ 135, 135, 135, 135, 135, 135, 135, 135, 0, 0,
+ 0, 0, 0, 135, 135, 135, 135, 135, 135, 135,
+ 135, 135, 135, 135, 139, 0, 135, 135, 135, 135,
+ 0, 0, 135, 135, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 135, 135, 135, 135, 135, 0,
+ 0, 0, 135, 135, 135, 135, 0, 139, 0, 0,
+ 0, 0, 0, 0, 139, 139, 0, 0, 139, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 135, 0, 0, 135, 0, 0, 0, 0, 0,
+ 0, 0, 0, 139, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 135, 0, 0, 135, 0,
+ 0, 0, 0, 0, 0, 0, 0, 139, 0, 0,
+ 139, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 88, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 139,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 135, 0, 0,
+ 0, 0, 0, 0, 0, 88, 0, 0, 0, 0,
+ 0, 0, 88, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 139, 0, 0, 0, 0, 0, 0, 139,
- 139, 0, 0, 139, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 139, 0,
+ 0, 88, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 88, 0, 0, 88, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 139, 0, 0, 139, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 88, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 139, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 135,
- 135, 135, 135, 0, 0, 135, 0, 135, 135, 135,
- 135, 135, 135, 135, 135, 0, 0, 0, 0, 0,
- 0, 0, 0, 135, 135, 135, 135, 135, 135, 135,
- 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
- 135, 135, 0, 0, 0, 0, 135, 135, 135, 135,
- 135, 135, 135, 135, 135, 135, 135, 135, 135, 0,
- 0, 0, 0, 0, 135, 135, 135, 135, 135, 135,
- 135, 135, 135, 135, 0, 0, 135, 135, 135, 135,
- 260, 0, 135, 135, 0, 0, 261, 0, 0, 0,
- 0, 0, 0, 0, 135, 135, 135, 135, 135, 0,
- 0, 0, 135, 135, 135, 135, 139, 139, 139, 139,
- 0, 0, 139, 0, 139, 139, 139, 139, 139, 139,
- 139, 139, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 139, 139, 139, 139, 0, 0, 139, 0, 139,
+ 139, 139, 139, 139, 139, 139, 139, 0, 0, 0,
+ 0, 0, 0, 0, 0, 139, 139, 139, 139, 139,
139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
- 139, 139, 139, 139, 139, 139, 139, 139, 139, 0,
- 0, 0, 0, 139, 139, 139, 139, 139, 139, 139,
- 139, 139, 139, 139, 139, 139, 88, 0, 0, 0,
- 0, 139, 139, 139, 139, 139, 139, 139, 139, 139,
- 139, 0, 0, 139, 139, 139, 139, 0, 0, 139,
- 139, 0, 0, 0, 0, 0, 0, 0, 0, 88,
- 0, 139, 139, 139, 139, 139, 88, 0, 0, 139,
- 139, 139, 139, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 88, 0, 0, 0, 0,
+ 139, 139, 139, 139, 0, 0, 0, 0, 139, 139,
+ 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
+ 139, 0, 0, 0, 0, 0, 139, 139, 139, 139,
+ 139, 139, 139, 139, 139, 139, 139, 0, 0, 139,
+ 139, 139, 139, 0, 0, 139, 139, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 139, 139, 139,
+ 139, 139, 0, 0, 0, 139, 139, 139, 139, 88,
+ 88, 88, 88, 0, 0, 88, 0, 88, 88, 88,
+ 88, 88, 88, 88, 88, 0, 0, 0, 0, 0,
+ 0, 0, 0, 88, 88, 88, 88, 88, 88, 88,
+ 88, 88, 88, 88, 88, 88, 88, 88, 88, 88,
+ 88, 88, 90, 0, 0, 0, 0, 88, 88, 88,
+ 88, 88, 88, 88, 88, 88, 88, 88, 88, 0,
+ 0, 0, 0, 0, 88, 88, 88, 88, 88, 88,
+ 88, 88, 88, 88, 88, 90, 0, 88, 88, 88,
+ 88, 0, 90, 88, 88, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 88, 88, 88, 88, 88,
+ 0, 90, 0, 88, 88, 88, 88, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 88,
- 0, 0, 88, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 90, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 90, 0, 0, 90, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 88, 0, 0, 0, 0, 0, 257, 0, 0,
- 0, 0, 0, 258, 0, 0, 90, 0, 259, 0,
- 0, 52, 53, 90, 0, 0, 0, 0, 0, 0,
+ 92, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 90, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 90, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 90, 0, 0, 90,
- 0, 0, 0, 0, 76, 77, 78, 79, 0, 0,
+ 0, 0, 0, 92, 0, 0, 0, 0, 0, 0,
+ 92, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 92,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 80, 81, 82, 83, 84, 0, 90, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 88, 88, 88, 88, 0, 0, 88,
- 0, 88, 88, 88, 88, 88, 88, 88, 88, 0,
- 0, 0, 0, 0, 0, 0, 0, 88, 88, 88,
- 88, 88, 88, 88, 88, 88, 88, 88, 88, 88,
- 88, 88, 88, 88, 88, 88, 0, 0, 0, 0,
- 0, 88, 88, 88, 88, 88, 88, 88, 88, 88,
- 88, 88, 88, 0, 0, 32, 0, 0, 88, 88,
- 88, 88, 88, 88, 88, 88, 88, 88, 0, 0,
- 88, 88, 88, 88, 0, 0, 88, 88, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 31, 88, 88,
- 88, 88, 88, 0, 0, 0, 88, 88, 88, 88,
- 90, 90, 90, 90, 0, 0, 90, 0, 90, 90,
- 90, 90, 90, 90, 90, 90, 0, 0, 0, 0,
- 0, 0, 0, 0, 90, 90, 90, 90, 90, 90,
- 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
- 90, 90, 90, 0, 0, 0, 0, 0, 90, 90,
+ 0, 0, 0, 92, 0, 0, 92, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 92, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 90,
+ 90, 90, 90, 0, 0, 90, 0, 90, 90, 90,
+ 90, 90, 90, 90, 90, 0, 0, 0, 0, 0,
+ 0, 0, 0, 90, 90, 90, 90, 90, 90, 90,
90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
- 92, 0, 0, 0, 0, 90, 90, 90, 90, 90,
+ 90, 90, 0, 0, 0, 0, 0, 90, 90, 90,
+ 90, 90, 90, 90, 90, 90, 90, 90, 90, 0,
+ 0, 0, 0, 0, 90, 90, 90, 90, 90, 90,
90, 90, 90, 90, 90, 0, 0, 90, 90, 90,
90, 0, 0, 90, 90, 0, 0, 0, 0, 0,
- 0, 0, 0, 92, 0, 90, 90, 90, 90, 90,
- 92, 0, 0, 90, 90, 90, 90, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 92,
- 0, 6, 7, 0, 8, 9, 0, 0, 0, 0,
- 0, 0, 0, 10, 11, 12, 13, 14, 15, 16,
- 17, 18, 19, 20, 21, 0, 0, 0, 0, 0,
- 0, 0, 0, 92, 0, 0, 92, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 96, 0, 0,
+ 0, 0, 0, 0, 0, 90, 90, 90, 90, 90,
+ 0, 0, 0, 90, 90, 90, 90, 92, 92, 92,
+ 92, 0, 0, 92, 0, 92, 92, 92, 92, 92,
+ 92, 92, 92, 0, 0, 0, 0, 0, 0, 0,
+ 0, 92, 92, 92, 92, 92, 92, 92, 92, 92,
+ 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
+ 96, 0, 0, 0, 0, 92, 92, 92, 92, 92,
+ 92, 92, 92, 92, 92, 92, 92, 0, 0, 0,
+ 0, 0, 92, 92, 92, 92, 92, 92, 92, 92,
+ 92, 92, 92, 96, 0, 92, 92, 92, 92, 0,
+ 96, 92, 92, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 92, 92, 92, 92, 92, 0, 96,
+ 0, 92, 92, 92, 92, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 92, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 22, 0, 0, 0,
- 96, 0, 23, 24, 0, 0, 25, 96, 26, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 27, 0, 28, 0, 0, 96, 29, 30, 0,
+ 0, 0, 0, 96, 0, 0, 96, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 94, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 96, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 94, 0, 0, 0, 0, 0, 0, 94, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 96, 0, 0, 96, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 94, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 96, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 92, 92, 92,
- 92, 0, 0, 92, 0, 92, 92, 92, 92, 92,
- 92, 92, 92, 0, 0, 0, 0, 0, 0, 0,
- 0, 92, 92, 92, 92, 92, 92, 92, 92, 92,
- 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
- 0, 0, 0, 0, 0, 92, 92, 92, 92, 92,
- 92, 92, 92, 92, 92, 92, 92, 0, 0, 6,
- 0, 0, 92, 92, 92, 92, 92, 92, 92, 92,
- 92, 92, 0, 0, 92, 92, 92, 92, 0, 0,
- 92, 92, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 6, 92, 92, 92, 92, 92, 0, 0, 0,
- 92, 92, 92, 92, 96, 96, 96, 96, 0, 0,
- 96, 0, 96, 96, 96, 96, 96, 96, 96, 96,
- 0, 0, 0, 0, 0, 0, 0, 0, 96, 96,
+ 0, 94, 0, 0, 94, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 94, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 96, 96, 96,
+ 96, 0, 0, 96, 0, 96, 96, 96, 96, 96,
+ 96, 96, 96, 0, 0, 0, 0, 0, 0, 0,
+ 0, 96, 96, 96, 96, 96, 96, 96, 96, 96,
96, 96, 96, 96, 96, 96, 96, 96, 96, 96,
+ 0, 0, 0, 0, 0, 96, 96, 96, 96, 96,
96, 96, 96, 96, 96, 96, 96, 0, 0, 0,
0, 0, 96, 96, 96, 96, 96, 96, 96, 96,
- 96, 96, 96, 96, 94, 0, 0, 0, 0, 96,
- 96, 96, 96, 96, 96, 96, 96, 96, 96, 0,
- 0, 96, 96, 96, 96, 0, 0, 96, 96, 0,
- 0, 0, 0, 0, 0, 0, 0, 94, 0, 96,
- 96, 96, 96, 96, 94, 0, 0, 96, 96, 96,
- 96, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 94, 0, 6, 6, 0, 6, 6,
- 0, 0, 0, 0, 0, 0, 0, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 0,
- 0, 0, 0, 0, 0, 0, 0, 94, 0, 0,
+ 96, 96, 96, 0, 0, 96, 96, 96, 96, 0,
+ 0, 96, 96, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 96, 96, 96, 96, 96, 0, 0,
+ 0, 96, 96, 96, 96, 94, 94, 94, 94, 0,
+ 0, 94, 0, 94, 94, 94, 94, 94, 94, 94,
+ 94, 0, 0, 0, 0, 0, 0, 0, 0, 94,
+ 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
+ 94, 94, 94, 94, 94, 94, 94, 94, 84, 0,
+ 0, 0, 0, 94, 94, 94, 94, 94, 94, 94,
+ 94, 94, 94, 94, 94, 0, 0, 0, 0, 0,
+ 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
+ 94, 84, 0, 94, 94, 94, 94, 0, 84, 94,
94, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 84, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 94,
+ 0, 94, 94, 94, 94, 94, 0, 84, 0, 94,
+ 94, 94, 94, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 6, 0, 0, 0, 84, 0, 6, 6, 0, 0,
- 6, 84, 6, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 6, 0, 6, 0, 0,
- 84, 6, 6, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 84, 0, 0, 84, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 85, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 84, 0, 0, 84, 0, 0,
+ 0, 0, 0, 84, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 85,
+ 0, 0, 0, 0, 0, 0, 85, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 85, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 84, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 85,
+ 0, 0, 85, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 94, 94, 94, 94, 0, 0, 94, 0, 94,
- 94, 94, 94, 94, 94, 94, 94, 0, 0, 0,
- 0, 0, 0, 0, 0, 94, 94, 94, 94, 94,
- 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
- 94, 94, 94, 94, 0, 0, 0, 0, 0, 94,
- 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
- 94, 0, 0, 0, 0, 0, 94, 94, 94, 94,
- 94, 94, 94, 94, 94, 94, 0, 0, 94, 94,
- 94, 94, 0, 0, 94, 94, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 94, 94, 94, 94,
- 94, 0, 0, 0, 94, 94, 94, 94, 84, 84,
- 84, 84, 0, 0, 84, 0, 84, 84, 84, 84,
- 84, 84, 84, 84, 0, 0, 0, 0, 0, 0,
- 0, 0, 84, 84, 84, 84, 84, 84, 84, 84,
- 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
- 84, 0, 0, 0, 0, 0, 84, 84, 84, 84,
- 84, 84, 84, 84, 84, 84, 84, 84, 85, 0,
- 0, 0, 0, 84, 84, 84, 84, 84, 84, 84,
- 84, 84, 84, 0, 0, 84, 84, 84, 84, 0,
- 0, 84, 84, 0, 0, 0, 0, 0, 0, 0,
- 0, 85, 0, 84, 84, 84, 84, 84, 85, 0,
- 0, 84, 84, 84, 84, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 85, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 85, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 84, 84, 84, 84, 0,
+ 0, 84, 0, 84, 84, 84, 84, 84, 84, 84,
+ 84, 0, 0, 0, 0, 0, 0, 0, 0, 84,
+ 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
+ 84, 84, 84, 84, 84, 84, 84, 84, 0, 0,
+ 0, 0, 0, 84, 84, 84, 84, 84, 84, 84,
+ 84, 84, 84, 84, 84, 0, 0, 0, 0, 0,
+ 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
+ 84, 0, 0, 84, 84, 84, 84, 0, 0, 84,
+ 84, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 84, 84, 84, 84, 84, 0, 0, 0, 84,
+ 84, 84, 84, 85, 85, 85, 85, 0, 0, 85,
+ 0, 85, 85, 85, 85, 85, 85, 85, 85, 0,
+ 0, 0, 0, 0, 0, 0, 0, 85, 85, 85,
+ 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
+ 85, 85, 85, 85, 85, 85, 86, 0, 0, 0,
+ 0, 85, 85, 85, 85, 85, 85, 85, 85, 85,
+ 85, 85, 85, 0, 0, 0, 0, 0, 85, 85,
+ 85, 85, 85, 85, 85, 85, 85, 85, 85, 86,
+ 0, 85, 85, 85, 85, 0, 86, 85, 85, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 85,
+ 85, 85, 85, 85, 0, 86, 0, 85, 85, 85,
+ 85, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 85, 0, 0, 85, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 86, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 85, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 86, 0,
- 0, 0, 0, 0, 0, 86, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 86,
+ 0, 0, 86, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 87, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 86, 0, 0, 0, 0, 0,
+ 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 87, 0, 0,
+ 0, 0, 0, 0, 87, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 87, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 86, 0,
- 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 87, 0, 0,
+ 87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 87,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 85, 85, 85, 85, 0,
- 0, 85, 0, 85, 85, 85, 85, 85, 85, 85,
- 85, 0, 0, 0, 0, 0, 0, 0, 0, 85,
- 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
- 85, 85, 85, 85, 85, 85, 85, 85, 0, 0,
- 0, 0, 0, 85, 85, 85, 85, 85, 85, 85,
- 85, 85, 85, 85, 85, 0, 0, 0, 0, 0,
- 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
- 0, 0, 85, 85, 85, 85, 0, 0, 85, 85,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 85, 85, 85, 85, 85, 0, 0, 0, 85, 85,
- 85, 85, 86, 86, 86, 86, 0, 0, 86, 0,
- 86, 86, 86, 86, 86, 86, 86, 86, 0, 0,
- 0, 0, 0, 0, 0, 0, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
- 86, 86, 86, 86, 86, 0, 0, 0, 0, 0,
+ 0, 0, 0, 86, 86, 86, 86, 0, 0, 86,
+ 0, 86, 86, 86, 86, 86, 86, 86, 86, 0,
+ 0, 0, 0, 0, 0, 0, 0, 86, 86, 86,
86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
- 86, 86, 87, 0, 0, 0, 0, 86, 86, 86,
- 86, 86, 86, 86, 86, 86, 86, 0, 0, 86,
- 86, 86, 86, 0, 0, 86, 86, 0, 0, 0,
- 0, 0, 0, 0, 0, 87, 0, 86, 86, 86,
- 86, 86, 87, 0, 0, 86, 86, 86, 86, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 87, 0, 0, 0, 0, 0, 0, 0, 0,
+ 86, 86, 86, 86, 86, 86, 0, 0, 0, 0,
+ 0, 86, 86, 86, 86, 86, 86, 86, 86, 86,
+ 86, 86, 86, 0, 0, 0, 0, 0, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 86, 86, 0,
+ 0, 86, 86, 86, 86, 0, 0, 86, 86, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 86,
+ 86, 86, 86, 86, 0, 0, 0, 86, 86, 86,
+ 86, 87, 87, 87, 87, 0, 0, 87, 0, 87,
+ 87, 87, 87, 87, 87, 87, 87, 0, 0, 0,
+ 0, 0, 0, 0, 0, 87, 87, 87, 87, 87,
+ 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+ 87, 87, 87, 87, 97, 0, 0, 0, 0, 87,
+ 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
+ 87, 0, 0, 0, 0, 0, 87, 87, 87, 87,
+ 87, 87, 87, 87, 87, 87, 87, 97, 0, 87,
+ 87, 87, 87, 0, 97, 87, 87, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 87, 87, 87,
+ 87, 87, 0, 97, 0, 87, 87, 87, 87, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 87, 0, 0, 87, 0,
+ 0, 0, 0, 0, 0, 0, 0, 97, 0, 0,
+ 97, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 98, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 97,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 87, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 97, 0, 0, 0, 0, 0, 0, 97,
+ 0, 0, 0, 0, 0, 98, 0, 0, 0, 0,
+ 0, 0, 98, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 97, 0,
+ 0, 98, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 98, 0, 0, 98, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 97, 0, 0, 97, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 98, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 97, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 87,
- 87, 87, 87, 0, 0, 87, 0, 87, 87, 87,
- 87, 87, 87, 87, 87, 0, 0, 0, 0, 0,
- 0, 0, 0, 87, 87, 87, 87, 87, 87, 87,
- 87, 87, 87, 87, 87, 87, 87, 87, 87, 87,
- 87, 87, 0, 0, 0, 0, 0, 87, 87, 87,
- 87, 87, 87, 87, 87, 87, 87, 87, 87, 0,
- 0, 0, 0, 0, 87, 87, 87, 87, 87, 87,
- 87, 87, 87, 87, 0, 0, 87, 87, 87, 87,
- 0, 0, 87, 87, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 87, 87, 87, 87, 87, 0,
- 0, 0, 87, 87, 87, 87, 97, 97, 97, 97,
- 0, 0, 97, 0, 97, 97, 97, 97, 97, 97,
- 97, 97, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 97, 97, 97, 97, 0, 0, 97, 0, 97,
+ 97, 97, 97, 97, 97, 97, 97, 0, 0, 0,
+ 0, 0, 0, 0, 0, 97, 97, 97, 97, 97,
97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
- 97, 97, 97, 97, 97, 97, 97, 97, 97, 0,
- 0, 0, 0, 0, 97, 97, 97, 97, 97, 97,
- 97, 97, 97, 97, 97, 97, 98, 0, 0, 0,
- 0, 97, 97, 97, 97, 97, 97, 97, 97, 97,
- 97, 0, 0, 97, 97, 97, 97, 0, 0, 97,
- 97, 0, 0, 0, 0, 0, 0, 0, 0, 98,
- 0, 97, 97, 97, 97, 97, 98, 0, 0, 97,
- 97, 97, 97, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 98, 0, 0, 0, 0,
+ 97, 97, 97, 97, 0, 0, 0, 0, 0, 97,
+ 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
+ 97, 0, 0, 0, 0, 0, 97, 97, 97, 97,
+ 97, 97, 97, 97, 97, 97, 97, 0, 0, 97,
+ 97, 97, 97, 0, 0, 97, 97, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 97, 97, 97,
+ 97, 97, 0, 0, 0, 97, 97, 97, 97, 98,
+ 98, 98, 98, 0, 0, 98, 0, 98, 98, 98,
+ 98, 98, 98, 98, 98, 0, 0, 0, 0, 0,
+ 0, 0, 0, 98, 98, 98, 98, 98, 98, 98,
+ 98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
+ 98, 98, 99, 0, 0, 0, 0, 98, 98, 98,
+ 98, 98, 98, 98, 98, 98, 98, 98, 98, 0,
+ 0, 0, 0, 0, 98, 98, 98, 98, 98, 98,
+ 98, 98, 98, 98, 98, 99, 0, 98, 98, 98,
+ 98, 0, 99, 98, 98, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 98, 98, 98, 98, 98,
+ 0, 99, 0, 98, 98, 98, 98, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 98,
- 0, 0, 98, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 99, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 99, 0, 0, 99, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 98, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 99, 0, 0, 0,
- 0, 0, 0, 99, 0, 0, 0, 0, 0, 0,
+ 104, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 99, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 99, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 104, 0, 0, 0, 0, 0, 0,
+ 104, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 104,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 99, 0, 0, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 104, 0, 0, 104, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 99, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 104, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 98, 98, 98, 98, 0, 0, 98,
- 0, 98, 98, 98, 98, 98, 98, 98, 98, 0,
- 0, 0, 0, 0, 0, 0, 0, 98, 98, 98,
- 98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
- 98, 98, 98, 98, 98, 98, 0, 0, 0, 0,
- 0, 98, 98, 98, 98, 98, 98, 98, 98, 98,
- 98, 98, 98, 0, 0, 0, 0, 0, 98, 98,
- 98, 98, 98, 98, 98, 98, 98, 98, 0, 0,
- 98, 98, 98, 98, 0, 0, 98, 98, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 98, 98,
- 98, 98, 98, 0, 0, 0, 98, 98, 98, 98,
- 99, 99, 99, 99, 0, 0, 99, 0, 99, 99,
- 99, 99, 99, 99, 99, 99, 0, 0, 0, 0,
- 0, 0, 0, 0, 99, 99, 99, 99, 99, 99,
- 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
- 99, 99, 99, 0, 0, 0, 0, 0, 99, 99,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 99,
+ 99, 99, 99, 0, 0, 99, 0, 99, 99, 99,
+ 99, 99, 99, 99, 99, 0, 0, 0, 0, 0,
+ 0, 0, 0, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
- 104, 0, 0, 0, 0, 99, 99, 99, 99, 99,
+ 99, 99, 0, 0, 0, 0, 0, 99, 99, 99,
+ 99, 99, 99, 99, 99, 99, 99, 99, 99, 0,
+ 0, 0, 0, 0, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 0, 0, 99, 99, 99,
99, 0, 0, 99, 99, 0, 0, 0, 0, 0,
- 0, 0, 0, 104, 0, 99, 99, 99, 99, 99,
- 104, 0, 0, 99, 99, 99, 99, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 104,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 99, 99, 99, 99, 99,
+ 0, 0, 0, 99, 99, 99, 99, 104, 104, 104,
+ 104, 0, 0, 104, 0, 104, 104, 104, 104, 104,
+ 104, 104, 104, 0, 0, 0, 0, 0, 0, 0,
+ 0, 104, 104, 104, 104, 104, 104, 104, 104, 104,
+ 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
+ 106, 0, 0, 0, 0, 104, 104, 104, 104, 104,
+ 104, 104, 104, 104, 104, 104, 104, 0, 0, 0,
+ 0, 0, 104, 104, 104, 104, 104, 104, 104, 104,
+ 104, 104, 104, 106, 0, 104, 104, 104, 104, 0,
+ 106, 104, 104, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 104, 104, 104, 104, 104, 0, 106,
+ 0, 104, 104, 104, 104, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 104, 0, 0, 104, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 106, 0, 0,
+ 0, 0, 0, 106, 0, 0, 106, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 110, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 104, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 106, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 106, 0, 0, 0, 0, 0, 0, 106, 0, 0,
+ 0, 110, 0, 0, 0, 0, 0, 0, 110, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 106, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 110, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 106, 0, 0, 106, 0, 0, 0, 0, 0, 0,
+ 0, 110, 0, 0, 110, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 106, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 110, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 104, 104, 104,
- 104, 0, 0, 104, 0, 104, 104, 104, 104, 104,
- 104, 104, 104, 0, 0, 0, 0, 0, 0, 0,
- 0, 104, 104, 104, 104, 104, 104, 104, 104, 104,
- 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
- 0, 0, 0, 0, 0, 104, 104, 104, 104, 104,
- 104, 104, 104, 104, 104, 104, 104, 0, 0, 0,
- 0, 0, 104, 104, 104, 104, 104, 104, 104, 104,
- 104, 104, 0, 0, 104, 104, 104, 104, 0, 0,
- 104, 104, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 104, 104, 104, 104, 104, 0, 0, 0,
- 104, 104, 104, 104, 106, 106, 106, 106, 0, 0,
- 106, 0, 106, 106, 106, 106, 106, 106, 106, 106,
- 0, 0, 0, 0, 0, 0, 0, 0, 106, 106,
+ 0, 0, 0, 0, 0, 0, 0, 106, 106, 106,
+ 106, 0, 0, 106, 0, 106, 106, 106, 106, 106,
+ 106, 106, 106, 0, 0, 0, 0, 0, 0, 0,
+ 0, 106, 106, 106, 106, 106, 106, 106, 106, 106,
106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
+ 0, 0, 0, 0, 0, 106, 106, 106, 106, 106,
106, 106, 106, 106, 106, 106, 106, 0, 0, 0,
0, 0, 106, 106, 106, 106, 106, 106, 106, 106,
- 106, 106, 106, 106, 110, 0, 0, 0, 0, 106,
- 106, 106, 106, 106, 106, 106, 106, 106, 106, 0,
- 0, 106, 106, 106, 106, 0, 0, 106, 106, 0,
- 0, 0, 0, 0, 0, 0, 0, 110, 0, 106,
- 106, 106, 106, 106, 110, 0, 0, 106, 106, 106,
- 106, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 110, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 110, 0, 0,
+ 106, 106, 106, 0, 0, 106, 106, 106, 106, 0,
+ 0, 106, 106, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 106, 106, 106, 106, 106, 0, 0,
+ 0, 106, 106, 106, 106, 110, 110, 110, 110, 0,
+ 0, 110, 0, 110, 110, 110, 110, 110, 110, 110,
+ 110, 0, 0, 0, 0, 0, 0, 0, 0, 110,
+ 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+ 110, 110, 110, 110, 110, 110, 110, 110, 123, 0,
+ 0, 0, 0, 110, 110, 110, 110, 110, 110, 110,
+ 110, 110, 110, 110, 110, 0, 0, 0, 0, 0,
+ 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
+ 110, 123, 0, 110, 110, 110, 110, 0, 123, 110,
110, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 123, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 110,
+ 0, 110, 110, 110, 110, 110, 0, 123, 0, 110,
+ 110, 110, 110, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 123, 0, 0, 0, 0, 0,
- 0, 123, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 123, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 123, 0, 0, 123, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 108, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 123, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
+ 0, 0, 0, 0, 0, 0, 108, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 123, 0, 0, 123, 0, 0,
+ 0, 0, 0, 0, 0, 108, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 123, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
+ 0, 0, 108, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 110, 110, 110, 110, 0, 0, 110, 0, 110,
- 110, 110, 110, 110, 110, 110, 110, 0, 0, 0,
- 0, 0, 0, 0, 0, 110, 110, 110, 110, 110,
- 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
- 110, 110, 110, 110, 0, 0, 0, 0, 0, 110,
- 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
- 110, 0, 0, 0, 0, 0, 110, 110, 110, 110,
- 110, 110, 110, 110, 110, 110, 0, 0, 110, 110,
- 110, 110, 0, 0, 110, 110, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 110, 110, 110, 110,
- 110, 0, 0, 0, 110, 110, 110, 110, 123, 123,
- 123, 123, 0, 0, 123, 0, 123, 123, 123, 123,
- 123, 123, 123, 123, 0, 0, 0, 0, 0, 0,
- 0, 0, 123, 123, 123, 123, 123, 123, 123, 123,
+ 0, 108, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 123, 123, 123, 123, 0,
+ 0, 123, 0, 123, 123, 123, 123, 123, 123, 123,
+ 123, 0, 0, 0, 0, 0, 0, 0, 0, 123,
123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
- 123, 0, 0, 0, 0, 0, 123, 123, 123, 123,
- 123, 123, 123, 123, 123, 123, 123, 123, 108, 0,
+ 123, 123, 123, 123, 123, 123, 123, 123, 0, 0,
0, 0, 0, 123, 123, 123, 123, 123, 123, 123,
- 123, 123, 123, 0, 0, 123, 123, 123, 123, 0,
- 0, 123, 123, 0, 0, 0, 0, 0, 0, 0,
- 0, 108, 0, 123, 123, 123, 123, 123, 108, 0,
- 0, 123, 123, 123, 123, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 108, 0, 0,
- 0, 0, 0, 0, 0, 0, 237, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 108, 0, 0, 108, 0, 0, 0, 0, 0,
- 0, 0, 0, 237, 0, 141, 0, 237, 237, 237,
- 237, 237, 0, 237, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 108, 0, 237, 237, 0, 237, 0,
+ 123, 123, 123, 123, 123, 0, 0, 0, 0, 0,
+ 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
+ 123, 0, 0, 123, 123, 123, 123, 0, 0, 123,
+ 123, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 123, 123, 123, 123, 123, 0, 0, 0, 123,
+ 123, 123, 123, 108, 108, 108, 108, 0, 0, 108,
+ 0, 108, 108, 108, 108, 108, 108, 108, 108, 0,
+ 0, 0, 0, 0, 0, 0, 0, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 108, 0, 0, 0, 0,
+ 0, 108, 108, 108, 108, 108, 108, 108, 108, 108,
+ 108, 108, 108, 0, 0, 0, 0, 0, 108, 108,
+ 108, 108, 108, 108, 108, 108, 108, 108, 108, 141,
+ 0, 108, 108, 108, 108, 0, 0, 108, 108, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 108,
+ 108, 108, 108, 108, 0, 0, 0, 108, 108, 108,
+ 108, 0, 141, 0, 0, 0, 0, 0, 0, 141,
+ 141, 0, 141, 141, 141, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 141, 0,
- 0, 0, 0, 0, 0, 141, 141, 0, 141, 141,
- 141, 0, 0, 0, 0, 0, 0, 0, 0, 237,
- 0, 0, 0, 0, 141, 0, 0, 141, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 237, 0, 0, 0, 0, 0, 0, 141, 0,
0, 141, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 167, 0, 0, 0, 0,
+ 0, 0, 141, 0, 0, 141, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 141, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 167, 0,
+ 0, 0, 0, 0, 141, 167, 167, 0, 230, 167,
+ 167, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 167, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 108, 108, 108, 108, 0,
- 0, 108, 0, 108, 108, 108, 108, 108, 108, 108,
- 108, 0, 0, 0, 0, 0, 0, 0, 0, 108,
- 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
- 108, 108, 108, 108, 108, 108, 108, 108, 0, 0,
- 0, 0, 0, 108, 108, 108, 108, 108, 108, 108,
- 108, 108, 108, 108, 108, 0, 0, 0, 0, 0,
- 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
- 237, 0, 108, 108, 108, 108, 0, 0, 108, 108,
+ 0, 230, 0, 0, 0, 0, 0, 0, 230, 230,
+ 0, 0, 230, 0, 0, 0, 0, 0, 167, 0,
+ 0, 167, 0, 0, 0, 0, 0, 230, 230, 0,
+ 230, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 108, 108, 108, 108, 108, 0, 237, 0, 108, 108,
- 108, 108, 141, 141, 141, 141, 237, 0, 141, 237,
- 141, 141, 141, 141, 141, 141, 141, 141, 0, 0,
- 0, 0, 0, 0, 0, 0, 141, 141, 141, 141,
- 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
- 141, 141, 141, 141, 141, 0, 0, 0, 0, 141,
- 141, 167, 237, 237, 237, 237, 237, 237, 0, 0,
- 0, 0, 141, 141, 141, 141, 141, 141, 141, 141,
- 141, 141, 141, 141, 141, 141, 141, 0, 0, 0,
- 0, 0, 0, 0, 167, 141, 141, 0, 0, 0,
- 0, 167, 167, 0, 229, 167, 167, 0, 0, 0,
- 0, 0, 0, 0, 0, 141, 141, 141, 141, 0,
167, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 229, 0, 0,
- 0, 0, 0, 0, 229, 229, 0, 0, 229, 0,
- 0, 0, 0, 0, 167, 0, 0, 167, 0, 0,
- 0, 0, 0, 229, 229, 0, 229, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 167, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 229, 0, 0,
- 229, 0, 0, 0, 0, 0, 0, 0, 236, 0,
- 0, 40, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 229,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 40, 0, 0, 0, 0, 236,
- 0, 40, 236, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 236, 0, 0,
- 40, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 230, 0, 0, 230, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 236, 0, 0, 40, 0, 0, 40, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 167, 167,
- 167, 167, 0, 0, 167, 0, 167, 167, 167, 167,
- 167, 167, 0, 236, 0, 0, 40, 0, 0, 0,
- 0, 0, 167, 167, 167, 167, 167, 167, 167, 167,
+ 0, 0, 0, 230, 0, 0, 141, 141, 141, 141,
+ 0, 0, 141, 0, 141, 141, 141, 141, 141, 141,
+ 141, 141, 0, 0, 0, 0, 0, 0, 0, 0,
+ 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
+ 141, 141, 141, 141, 141, 141, 141, 141, 141, 40,
+ 0, 0, 0, 141, 141, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 141, 141, 141, 141,
+ 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
+ 141, 141, 40, 0, 0, 0, 0, 0, 0, 40,
+ 141, 141, 167, 167, 167, 167, 0, 0, 167, 0,
+ 167, 167, 167, 167, 167, 167, 0, 0, 40, 0,
+ 141, 141, 141, 141, 0, 0, 167, 167, 167, 167,
167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
- 167, 229, 229, 229, 229, 0, 167, 229, 0, 0,
- 0, 0, 229, 0, 0, 229, 229, 0, 0, 0,
- 0, 0, 0, 167, 167, 167, 167, 167, 167, 167,
- 167, 167, 167, 0, 0, 0, 0, 0, 0, 0,
- 0, 167, 167, 42, 0, 0, 0, 0, 0, 229,
- 229, 229, 229, 229, 229, 229, 229, 229, 229, 229,
- 229, 167, 167, 167, 167, 0, 229, 229, 229, 229,
- 229, 229, 229, 229, 229, 229, 42, 0, 229, 229,
- 229, 229, 0, 42, 0, 0, 0, 0, 0, 0,
- 229, 229, 229, 229, 229, 229, 229, 229, 229, 229,
- 229, 0, 42, 0, 0, 0, 0, 229, 40, 40,
- 40, 40, 236, 0, 40, 0, 0, 0, 0, 40,
- 0, 0, 40, 40, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 42, 0, 236, 42,
- 0, 0, 95, 0, 0, 0, 0, 0, 236, 0,
- 0, 236, 0, 0, 0, 0, 40, 40, 40, 40,
- 40, 40, 40, 40, 40, 40, 40, 40, 42, 0,
- 0, 0, 0, 40, 40, 40, 40, 40, 40, 40,
- 40, 40, 40, 0, 0, 40, 40, 40, 40, 0,
- 0, 0, 0, 0, 0, 236, 0, 0, 0, 0,
- 0, 95, 0, 40, 40, 40, 40, 40, 0, 0,
- 0, 0, 0, 0, 40, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 95, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 93, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 95, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 42, 42, 42, 42, 0, 0, 42, 0, 0, 93,
- 0, 42, 0, 0, 42, 42, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 93, 0, 0, 0, 0, 42, 42,
+ 167, 167, 167, 167, 167, 230, 230, 230, 230, 0,
+ 167, 230, 40, 0, 0, 40, 230, 0, 0, 230,
+ 230, 0, 0, 0, 0, 0, 0, 167, 167, 167,
+ 167, 167, 167, 167, 167, 167, 167, 167, 0, 0,
+ 0, 0, 0, 0, 40, 0, 167, 167, 42, 0,
+ 0, 0, 0, 230, 230, 230, 230, 230, 230, 230,
+ 230, 230, 230, 230, 230, 0, 167, 167, 167, 167,
+ 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
+ 230, 42, 0, 230, 230, 230, 230, 0, 42, 0,
+ 0, 0, 0, 0, 0, 230, 230, 230, 230, 230,
+ 230, 230, 230, 230, 230, 230, 0, 42, 0, 0,
+ 0, 0, 230, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 42, 0, 0, 42, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 95,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 42, 0, 0, 40, 40, 40, 40,
+ 0, 0, 40, 0, 0, 0, 0, 40, 0, 0,
+ 40, 40, 0, 0, 0, 0, 0, 0, 0, 0,
+ 89, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 95, 0,
+ 0, 0, 0, 0, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 0, 0, 0, 0,
+ 0, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 95, 0, 40, 40, 40, 40, 0, 89,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 40, 40, 40, 40, 40, 0, 0, 0,
+ 0, 0, 0, 40, 95, 0, 0, 0, 93, 0,
+ 0, 0, 0, 89, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 42, 42, 42, 42, 0,
+ 0, 42, 0, 0, 0, 0, 42, 0, 0, 42,
+ 42, 0, 0, 0, 0, 89, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 93, 0, 0,
+ 0, 0, 0, 42, 42, 42, 42, 42, 42, 42,
+ 42, 42, 42, 42, 42, 0, 0, 0, 0, 0,
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
- 89, 0, 0, 0, 0, 42, 42, 42, 42, 42,
- 42, 42, 42, 42, 42, 93, 0, 42, 42, 42,
- 42, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 42, 42, 42, 42, 42,
- 91, 0, 95, 0, 0, 0, 42, 95, 95, 95,
- 0, 95, 95, 95, 95, 0, 0, 0, 0, 89,
- 0, 0, 0, 95, 95, 95, 95, 95, 95, 95,
- 95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
- 95, 95, 188, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 89, 0, 0, 0, 0, 0, 91,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 42, 93, 0, 42, 42, 42, 42, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 95, 95, 0, 89, 0, 0, 0, 0,
- 0, 0, 0, 91, 0, 0, 0, 0, 0, 103,
- 0, 0, 95, 95, 95, 95, 0, 0, 0, 0,
- 93, 0, 0, 0, 0, 93, 93, 93, 0, 93,
- 93, 93, 93, 0, 0, 91, 0, 0, 0, 0,
- 0, 93, 93, 93, 93, 93, 93, 93, 93, 93,
- 93, 93, 93, 93, 93, 93, 93, 93, 93, 93,
- 189, 0, 0, 0, 0, 0, 0, 0, 103, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 93, 93, 103, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 105,
- 93, 93, 93, 93, 0, 0, 0, 0, 0, 0,
- 89, 0, 0, 0, 103, 89, 89, 89, 0, 89,
+ 0, 42, 42, 42, 42, 42, 0, 0, 0, 91,
+ 0, 0, 42, 93, 0, 0, 0, 0, 0, 95,
+ 0, 0, 0, 0, 95, 95, 95, 0, 95, 95,
+ 95, 95, 0, 0, 0, 0, 0, 0, 0, 0,
+ 95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
+ 95, 95, 95, 95, 95, 95, 95, 95, 95, 188,
+ 89, 0, 0, 0, 0, 89, 89, 89, 91, 89,
89, 89, 89, 0, 0, 0, 0, 0, 0, 0,
0, 89, 89, 89, 89, 89, 89, 89, 89, 89,
89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
- 91, 0, 0, 0, 0, 91, 91, 91, 105, 91,
- 91, 91, 91, 0, 0, 0, 0, 0, 0, 0,
- 0, 91, 91, 91, 91, 91, 91, 91, 91, 91,
+ 95, 95, 91, 0, 0, 0, 0, 0, 0, 103,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 95, 95, 95, 95, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 91, 0, 0, 0, 0, 0,
+ 0, 89, 89, 0, 0, 0, 0, 0, 93, 0,
+ 0, 0, 0, 93, 93, 93, 0, 93, 93, 93,
+ 93, 89, 89, 89, 89, 0, 0, 0, 103, 93,
+ 93, 93, 93, 93, 93, 93, 93, 93, 93, 93,
+ 93, 93, 93, 93, 93, 93, 93, 93, 189, 0,
+ 0, 0, 0, 0, 105, 0, 146, 0, 0, 0,
+ 0, 0, 103, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 93,
+ 93, 0, 0, 0, 103, 0, 0, 0, 0, 146,
+ 0, 146, 146, 0, 0, 0, 0, 0, 0, 93,
+ 93, 93, 93, 105, 0, 146, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 91,
+ 0, 0, 0, 0, 91, 91, 91, 0, 91, 91,
+ 91, 91, 0, 0, 0, 0, 0, 105, 0, 146,
91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
- 89, 89, 105, 0, 0, 0, 0, 0, 109, 0,
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 109, 105,
+ 0, 146, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 89, 89, 89, 89, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 105, 0, 0, 0, 0, 0,
- 91, 91, 0, 0, 0, 0, 0, 0, 107, 0,
+ 91, 91, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 103,
91, 91, 91, 91, 103, 103, 103, 109, 103, 103,
103, 103, 0, 0, 0, 0, 0, 0, 0, 0,
103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
103, 103, 103, 103, 103, 103, 103, 103, 103, 0,
- 0, 109, 0, 0, 0, 0, 0, 107, 0, 0,
+ 0, 109, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 109, 0, 0, 0, 0, 0, 103,
- 103, 107, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 103,
- 103, 103, 103, 0, 0, 0, 0, 0, 0, 105,
- 0, 0, 0, 107, 105, 105, 105, 0, 105, 105,
- 105, 105, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 107, 0, 0, 0, 0,
+ 0, 0, 0, 109, 0, 0, 0, 0, 0, 0,
+ 103, 103, 0, 0, 105, 0, 0, 0, 0, 105,
+ 105, 105, 0, 105, 105, 105, 105, 146, 146, 0,
+ 103, 103, 103, 103, 0, 105, 105, 105, 105, 105,
105, 105, 105, 105, 105, 105, 105, 105, 105, 105,
- 105, 105, 105, 105, 105, 105, 105, 105, 105, 0,
+ 105, 105, 105, 105, 107, 0, 0, 0, 0, 0,
+ 0, 0, 146, 146, 146, 146, 146, 146, 146, 146,
+ 146, 146, 146, 146, 146, 146, 146, 146, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 107, 0,
+ 0, 146, 146, 146, 146, 105, 105, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 146,
+ 146, 146, 146, 146, 0, 105, 105, 105, 105, 0,
+ 107, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 109, 0,
+ 0, 0, 0, 109, 109, 109, 0, 109, 109, 109,
+ 109, 0, 0, 0, 0, 0, 0, 0, 0, 109,
+ 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
+ 109, 109, 109, 109, 109, 109, 109, 109, 80, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 105,
- 105, 0, 40, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 109, 105,
- 105, 105, 105, 109, 109, 109, 0, 109, 109, 109,
- 109, 0, 0, 0, 32, 0, 0, 0, 0, 109,
- 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
- 109, 109, 109, 109, 109, 109, 109, 109, 107, 0,
- 0, 0, 0, 107, 107, 107, 31, 107, 107, 107,
- 107, 80, 0, 0, 0, 0, 0, 0, 0, 107,
+ 0, 80, 0, 0, 0, 0, 0, 0, 80, 109,
+ 109, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 80, 0, 109,
+ 109, 109, 109, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 107, 0, 0, 0, 0,
+ 107, 107, 107, 0, 107, 107, 107, 107, 0, 0,
+ 0, 80, 0, 0, 80, 0, 107, 107, 107, 107,
107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
- 107, 107, 107, 107, 107, 107, 107, 107, 109, 109,
- 0, 0, 0, 0, 80, 0, 0, 0, 0, 0,
- 0, 80, 0, 0, 0, 0, 0, 0, 109, 109,
- 109, 109, 0, 0, 0, 0, 0, 0, 0, 0,
- 80, 0, 146, 0, 0, 0, 0, 0, 107, 107,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 107, 107,
- 107, 107, 0, 0, 80, 0, 0, 80, 0, 0,
- 0, 0, 0, 0, 0, 146, 0, 146, 146, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 146, 0, 0, 0, 0, 80, 0, 0, 0,
- 6, 7, 0, 8, 9, 0, 0, 0, 0, 0,
- 0, 0, 10, 11, 12, 13, 14, 15, 16, 17,
- 18, 19, 20, 21, 0, 146, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 88, 0, 0, 0, 0,
- 0, 0, 85, 0, 0, 0, 0, 87, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 146, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 22, 0, 0, 0, 0,
- 0, 23, 24, 0, 0, 25, 0, 26, 0, 0,
- 0, 0, 0, 32, 0, 0, 0, 0, 86, 0,
- 27, 0, 28, 0, 0, 0, 29, 30, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 31, 0, 0, 80, 80,
- 80, 0, 0, 0, 80, 0, 80, 80, 80, 80,
- 80, 80, 80, 80, 0, 0, 0, 0, 0, 0,
- 0, 0, 80, 80, 80, 80, 80, 80, 80, 80,
+ 107, 107, 107, 107, 107, 0, 0, 0, 0, 0,
+ 0, 0, 0, 80, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 89, 0,
+ 0, 0, 0, 0, 0, 86, 0, 0, 0, 0,
+ 88, 0, 0, 0, 0, 0, 107, 107, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 107, 107, 107, 107,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 32, 0, 0, 0,
+ 0, 87, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 31, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 80, 80, 80, 0, 0,
+ 0, 80, 0, 80, 80, 80, 80, 80, 80, 80,
+ 80, 0, 0, 0, 0, 0, 0, 0, 0, 80,
80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
- 80, 0, 0, 0, 0, 0, 80, 80, 80, 80,
80, 80, 80, 80, 80, 80, 80, 80, 0, 0,
0, 0, 0, 80, 80, 80, 80, 80, 80, 80,
- 80, 80, 80, 146, 146, 80, 80, 80, 80, 0,
- 0, 80, 80, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 80, 80, 80, 80, 80, 0, 0,
- 0, 80, 80, 80, 0, 0, 0, 0, 146, 146,
- 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
- 146, 146, 146, 146, 0, 0, 0, 0, 0, 275,
- 276, 49, 8, 9, 0, 50, 146, 146, 146, 146,
- 51, 10, 11, 277, 278, 14, 15, 16, 17, 18,
- 19, 20, 21, 0, 146, 146, 146, 146, 146, 6,
- 0, 0, 0, 0, 0, 0, 6, 0, 0, 0,
- 0, 6, 0, 0, 0, 0, 0, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, 64, 65, 0,
- 0, 0, 0, 0, 66, 67, 68, 69, 70, 71,
- 72, 73, 74, 75, 22, 0, 76, 77, 78, 79,
- 23, 24, 0, 0, 25, 0, 26, 6, 0, 0,
- 0, 0, 6, 0, 80, 81, 82, 83, 84, 27,
- 0, 28, 0, 0, 0, 29, 30, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
+ 80, 80, 80, 80, 80, 0, 0, 0, 0, 0,
+ 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+ 80, 0, 0, 80, 80, 80, 80, 0, 0, 80,
+ 80, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 80, 80, 80, 80, 80, 0, 0, 0, 80,
+ 80, 80, 277, 278, 49, 8, 9, 0, 50, 0,
+ 0, 0, 0, 51, 10, 11, 279, 280, 14, 15,
+ 16, 17, 18, 19, 20, 21, 0, 0, 6, 0,
+ 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
+ 64, 65, 0, 0, 0, 0, 0, 66, 67, 68,
+ 69, 70, 71, 72, 73, 74, 75, 76, 22, 0,
+ 77, 78, 79, 80, 23, 24, 6, 0, 25, 0,
+ 26, 6, 0, 0, 0, 0, 0, 0, 81, 82,
+ 83, 84, 85, 27, 0, 28, 0, 0, 0, 29,
+ 30, 0, 0, 0, 0, 0, 0, 0, 6, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 88, 0, 0,
- 0, 0, 0, 0, 103, 0, 0, 0, 0, 87,
+ 0, 0, 0, 0, 0, 0, 0, 89, 0, 0,
+ 0, 0, 0, 0, 104, 0, 0, 0, 0, 88,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 6, 6, 6, 6, 6, 0, 6,
- 0, 0, 0, 0, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 0, 104, 0,
- 0, 0, 0, 0, 0, 103, 295, 0, 0, 0,
- 87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 0, 0, 0, 0, 0, 6, 6,
+ 0, 0, 6, 6, 6, 6, 6, 0, 6, 0,
+ 0, 0, 0, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 6, 6, 105, 0, 0, 0,
+ 0, 0, 0, 104, 297, 0, 0, 0, 88, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 0, 0, 0, 0, 0, 6, 6, 6,
6, 6, 6, 6, 6, 6, 6, 6, 6, 0,
- 6, 6, 6, 6, 6, 6, 0, 0, 6, 0,
- 6, 86, 0, 0, 0, 0, 0, 0, 6, 6,
+ 6, 6, 6, 6, 6, 6, 0, 0, 6, 87,
+ 6, 0, 0, 0, 0, 0, 0, 0, 6, 6,
6, 6, 6, 6, 0, 6, 0, 0, 0, 6,
- 6, 47, 48, 49, 8, 0, 0, 50, 0, 119,
- 120, 121, 51, 122, 123, 124, 125, 0, 0, 0,
- 0, 0, 0, 0, 0, 126, 127, 128, 129, 130,
- 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
- 141, 142, 143, 144, 0, 0, 0, 0, 0, 54,
+ 6, 47, 48, 49, 8, 0, 0, 50, 0, 120,
+ 121, 122, 51, 123, 124, 125, 126, 0, 0, 0,
+ 0, 0, 0, 0, 0, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
+ 142, 143, 144, 145, 0, 0, 0, 0, 0, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 0, 0, 0, 0, 0, 66, 67, 68, 69,
- 70, 71, 72, 73, 74, 75, 88, 0, 76, 77,
- 78, 79, 0, 85, 145, 146, 0, 0, 87, 0,
- 0, 0, 0, 0, 0, 0, 80, 81, 82, 83,
- 84, 0, 0, 0, 147, 148, 149, 29, 0, 0,
+ 70, 71, 72, 73, 74, 75, 76, 0, 0, 77,
+ 78, 79, 80, 0, 89, 146, 147, 0, 0, 0,
+ 0, 86, 0, 0, 0, 0, 88, 81, 82, 83,
+ 84, 85, 0, 0, 0, 148, 149, 150, 29, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 86,
- 0, 0, 47, 48, 49, 8, 0, 0, 50, 0,
- 0, 0, 0, 51, 0, 0, 52, 53, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 47, 48, 49, 8, 0, 0, 50, 87, 0, 0,
+ 0, 51, 0, 0, 52, 53, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
- 64, 65, 0, 0, 0, 0, 0, 66, 67, 68,
- 69, 70, 71, 72, 73, 74, 75, 104, 0, 76,
- 77, 78, 79, 0, 103, 0, 0, 0, 0, 87,
- 0, 0, 0, 0, 0, 0, 0, 80, 81, 82,
- 83, 84, 0, 0, 0, 0, 0, 0, 29, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 54, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
+ 0, 0, 0, 0, 0, 66, 67, 68, 69, 70,
+ 71, 72, 73, 74, 75, 76, 105, 0, 77, 78,
+ 79, 80, 0, 104, 0, 0, 0, 0, 88, 0,
+ 0, 0, 0, 0, 0, 0, 81, 82, 83, 84,
+ 85, 0, 0, 0, 0, 0, 0, 29, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 87,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 47, 48,
+ 49, 8, 0, 0, 50, 0, 0, 0, 0, 51,
+ 0, 0, 52, 53, 0, 0, 0, 105, 0, 0,
+ 0, 0, 0, 0, 86, 0, 0, 0, 0, 88,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 47, 48, 49, 8, 0, 0, 50, 0, 0, 0,
- 0, 51, 0, 0, 52, 53, 0, 0, 104, 0,
- 0, 0, 0, 0, 0, 85, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 54, 55, 56, 57,
+ 58, 59, 60, 61, 62, 63, 64, 65, 0, 0,
+ 0, 0, 0, 66, 67, 68, 69, 70, 71, 72,
+ 73, 74, 75, 76, 0, 0, 77, 78, 79, 80,
87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 81, 82, 83, 84, 85, 0,
+ 0, 0, 0, 0, 0, 29, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 105, 0, 0,
+ 47, 48, 49, 8, 268, 0, 50, 0, 0, 88,
+ 0, 51, 0, 0, 52, 53, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 54, 55,
56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
- 0, 0, 0, 0, 0, 66, 67, 68, 69, 70,
- 71, 72, 73, 74, 75, 0, 0, 76, 77, 78,
- 79, 86, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 80, 81, 82, 83, 84,
- 0, 0, 0, 0, 0, 0, 29, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 104,
- 0, 0, 0, 0, 0, 0, 266, 0, 0, 0,
- 0, 87, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 47, 48, 49, 8, 0, 0, 50, 0, 0,
- 0, 0, 51, 0, 0, 52, 53, 0, 0, 0,
+ 87, 0, 0, 0, 0, 66, 67, 68, 69, 70,
+ 71, 72, 73, 74, 75, 76, 0, 0, 77, 78,
+ 79, 80, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 81, 82, 83, 84,
+ 85, 0, 0, 0, 0, 0, 0, 29, 0, 89,
+ 0, 47, 48, 49, 8, 0, 104, 50, 406, 0,
+ 0, 88, 51, 0, 0, 52, 53, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 86, 0, 0, 0, 0, 0, 0, 54,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 0, 0, 0, 0, 0, 66, 67, 68, 69,
- 70, 71, 72, 73, 74, 75, 0, 0, 76, 77,
- 78, 79, 88, 0, 0, 0, 0, 0, 0, 103,
- 0, 402, 0, 0, 87, 0, 80, 81, 82, 83,
- 84, 0, 47, 48, 49, 8, 0, 29, 50, 0,
- 0, 0, 0, 51, 0, 0, 52, 53, 0, 0,
+ 65, 0, 87, 0, 0, 0, 66, 67, 68, 69,
+ 70, 71, 72, 73, 74, 75, 76, 0, 0, 77,
+ 78, 79, 80, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 81, 82, 83,
+ 84, 85, 0, 0, 0, 0, 0, 0, 29, 89,
+ 0, 47, 48, 49, 8, 0, 104, 50, 0, 0,
+ 0, 88, 51, 0, 0, 52, 53, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 86, 0, 0, 0, 0,
- 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
- 64, 65, 0, 0, 0, 0, 0, 66, 67, 68,
- 69, 70, 71, 72, 73, 74, 75, 0, 0, 76,
- 77, 78, 79, 88, 0, 0, 0, 0, 0, 0,
- 103, 0, 0, 0, 0, 87, 0, 80, 81, 82,
- 83, 84, 0, 47, 48, 49, 8, 0, 29, 50,
- 0, 0, 0, 0, 51, 0, 0, 52, 53, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 54,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
+ 65, 0, 87, 0, 0, 0, 66, 67, 68, 69,
+ 70, 71, 72, 73, 74, 75, 76, 0, 0, 77,
+ 78, 79, 80, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 81, 82, 83,
+ 84, 85, 0, 0, 0, 0, 0, 0, 29, 0,
+ 89, 0, 0, 47, 48, 49, 0, 86, 0, 50,
+ 0, 0, 88, 0, 51, 0, 0, 52, 53, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 86, 0, 0, 0,
0, 54, 55, 56, 57, 58, 59, 60, 61, 62,
- 63, 64, 65, 0, 0, 0, 0, 0, 66, 67,
- 68, 69, 70, 71, 72, 73, 74, 75, 0, 0,
- 76, 77, 78, 79, 88, 0, 0, 0, 0, 0,
- 0, 85, 0, 0, 0, 0, 87, 0, 80, 81,
- 82, 83, 84, 0, 0, 0, 47, 48, 49, 29,
- 0, 0, 50, 0, 0, 0, 0, 51, 0, 0,
- 52, 53, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 86, 0, 0,
- 0, 0, 0, 0, 54, 55, 56, 57, 58, 59,
- 60, 61, 62, 63, 64, 65, 0, 0, 0, 0,
- 0, 66, 67, 68, 69, 70, 71, 72, 73, 74,
- 75, 0, 0, 76, 77, 78, 79, 88, 0, 0,
- 0, 0, 0, 0, 266, 0, 0, 0, 0, 87,
- 0, 80, 81, 82, 83, 84, 0, 47, 48, 49,
- 0, 0, 0, 50, 0, 0, 0, 0, 51, 0,
- 0, 52, 53, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 0, 0, 0, 0, 54, 55, 56, 57, 58,
- 59, 60, 61, 62, 63, 64, 65, 0, 0, 0,
- 0, 0, 66, 67, 68, 69, 70, 71, 72, 73,
- 74, 75, 0, 0, 76, 77, 78, 79, 88, 0,
- 0, 0, 0, 0, 0, 103, 0, 0, 0, 0,
- 87, 0, 80, 81, 82, 83, 84, 0, 47, 48,
- 49, 0, 0, 0, 50, 0, 0, 0, 0, 51,
- 0, 0, 52, 53, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 86, 0, 0, 0, 0, 54, 55, 56, 57,
- 58, 59, 60, 61, 62, 63, 64, 65, 0, 0,
- 0, 0, 0, 66, 67, 68, 69, 70, 71, 72,
- 73, 74, 75, 0, 0, 76, 77, 78, 79, 0,
+ 63, 64, 65, 87, 0, 0, 0, 0, 66, 67,
+ 68, 69, 70, 71, 72, 73, 74, 75, 76, 0,
+ 0, 77, 78, 79, 80, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 81,
+ 82, 83, 84, 85, 0, 0, 0, 0, 0, 0,
+ 89, 0, 0, 47, 48, 49, 0, 268, 0, 50,
+ 0, 0, 88, 0, 51, 0, 0, 52, 53, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 80, 81, 82, 83, 84, 0, 0,
- 0, 47, 48, 49, 0, 0, 0, 50, 0, 0,
- 0, 0, 51, 0, 0, 52, 53, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 0, 0, 0, 0, 0, 66, 67, 68, 69,
- 70, 71, 72, 73, 74, 75, 0, 0, 76, 77,
- 78, 79, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 80, 81, 82, 83,
- 84, 0, 47, 48, 49, 0, 0, 0, 50, 0,
- 0, 0, 0, 51, 0, 0, 0, 0, 0, 0,
+ 0, 54, 55, 56, 57, 58, 59, 60, 61, 62,
+ 63, 64, 65, 87, 0, 0, 0, 0, 66, 67,
+ 68, 69, 70, 71, 72, 73, 74, 75, 76, 0,
+ 0, 77, 78, 79, 80, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 81,
+ 82, 83, 84, 85, 0, 0, 0, 0, 0, 0,
+ 0, 89, 0, 0, 47, 48, 49, 0, 104, 0,
+ 50, 0, 0, 88, 0, 51, 0, 0, 52, 53,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
- 64, 65, 0, 0, 0, 0, 0, 66, 67, 68,
- 69, 70, 71, 72, 73, 74, 75, 0, 0, 76,
- 77, 78, 79, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 80, 81, 82,
- 83, 84,
+ 0, 0, 54, 55, 56, 57, 58, 59, 60, 61,
+ 62, 63, 64, 65, 87, 0, 0, 0, 0, 66,
+ 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
+ 0, 0, 77, 78, 79, 80, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 81, 82, 83, 84, 85, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 47, 48, 49, 0, 0, 0,
+ 50, 0, 0, 0, 0, 51, 0, 0, 52, 53,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 40, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 54, 55, 56, 57, 58, 59, 60, 61,
+ 62, 63, 64, 65, 32, 0, 0, 0, 0, 66,
+ 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
+ 0, 0, 77, 78, 79, 80, 0, 0, 0, 0,
+ 0, 0, 32, 0, 0, 0, 31, 0, 0, 0,
+ 81, 82, 83, 84, 85, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 47, 48, 49, 0, 0,
+ 0, 50, 0, 0, 31, 0, 51, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 54, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 65, 0, 0, 0, 0, 0,
+ 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
+ 76, 0, 0, 77, 78, 79, 80, 0, 0, 0,
+ 0, 0, 0, 6, 0, 0, 0, 0, 0, 0,
+ 0, 81, 82, 83, 84, 85, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 7, 0, 8, 9, 6, 0, 0, 0, 0,
+ 0, 0, 10, 11, 12, 13, 14, 15, 16, 17,
+ 18, 19, 20, 21, 0, 0, 0, 0, 6, 7,
+ 0, 8, 9, 0, 0, 0, 0, 0, 0, 0,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 20, 21, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 22, 0, 0, 0,
+ 0, 0, 23, 24, 0, 0, 25, 0, 26, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 27, 0, 28, 22, 0, 0, 29, 30, 0,
+ 23, 24, 0, 0, 25, 0, 26, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
+ 0, 28, 0, 0, 0, 29, 30, 0, 0, 6,
+ 6, 0, 6, 6, 0, 0, 0, 0, 0, 0,
+ 0, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
+ 0, 6, 6, 0, 0, 6, 0, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 0, 6, 0, 0, 0, 6, 6,
};
-static YYCONST short yycheck[] = { 24,
- 118, 44, 0, 28, 93, 30, 59, 43, 37, 45,
- 260, 36, 59, 42, 43, 37, 45, 260, 47, 0,
- 42, 43, 0, 45, 96, 47, 104, 85, 43, 4,
- 45, 60, 43, 62, 45, 0, 154, 35, 98, 100,
- 346, 347, 41, 41, 43, 58, 45, 62, 61, 24,
- 41, 41, 113, 44, 44, 30, 348, 349, 0, 258,
- 85, 36, 87, 88, 58, 94, 317, 318, 319, 320,
- 321, 258, 94, 114, 115, 100, 134, 96, 43, 104,
- 45, 59, 37, 333, 43, 44, 45, 42, 113, 95,
- 40, 0, 47, 345, 59, 61, 333, 122, 123, 124,
- 125, 126, 127, 128, 129, 130, 131, 132, 0, 134,
- 91, 136, 137, 138, 203, 93, 262, 59, 40, 40,
- 363, 0, 147, 148, 40, 100, 40, 133, 93, 154,
- 40, 61, 41, 40, 0, 44, 111, 40, 113, 94,
- 40, 40, 123, 118, 271, 272, 40, 125, 290, 0,
- 59, 93, 230, 231, 212, 213, 234, 235, 260, 258,
- 125, 262, 187, 188, 189, 190, 191, 192, 193, 194,
- 195, 196, 197, 198, 199, 200, 201, 202, 0, 154,
- 0, 41, 33, 125, 93, 257, 41, 212, 213, 40,
- 264, 263, 94, 59, 45, 301, 268, 46, 258, 259,
- 257, 93, 227, 271, 272, 230, 231, 232, 266, 234,
- 235, 0, 93, 125, 93, 258, 125, 93, 85, 41,
- 262, 41, 44, 257, 44, 352, 353, 93, 300, 262,
- 96, 260, 44, 125, 43, 44, 45, 59, 257, 59,
- 91, 266, 41, 41, 263, 96, 125, 41, 41, 268,
- 41, 257, 44, 371, 260, 43, 44, 45, 264, 125,
- 44, 236, 237, 130, 131, 132, 241, 0, 304, 0,
- 59, 93, 123, 93, 299, 41, 257, 258, 300, 260,
- 261, 303, 342, 41, 352, 353, 0, 154, 269, 270,
- 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
- 302, 346, 33, 125, 93, 125, 37, 44, 262, 40,
- 41, 42, 43, 44, 45, 303, 47, 346, 347, 348,
- 349, 350, 351, 257, 260, 41, 59, 194, 59, 60,
- 358, 62, 41, 41, 363, 202, 125, 343, 344, 41,
- 365, 366, 367, 343, 369, 59, 0, 262, 41, 154,
- 343, 332, 30, 377, 343, 264, 343, 338, 339, 35,
- 93, 342, 93, 344, -1, 96, 372, -1, -1, 375,
- -1, -1, -1, -1, 399, -1, 357, 402, 359, 93,
- -1, 290, 363, 364, -1, -1, -1, -1, -1, 0,
- -1, 257, 125, 37, 125, -1, 371, 263, 42, 43,
- -1, 45, 268, 47, -1, -1, 257, 258, 259, 260,
- 261, 125, 263, -1, -1, -1, -1, 268, 269, 270,
- 271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
- 41, -1, 299, 44, 300, -1, -1, 346, 347, -1,
- -1, -1, 264, -1, 264, -1, -1, -1, 59, -1,
- 94, -1, -1, -1, 305, 306, 307, 308, 309, 310,
- 311, 312, 313, 314, 315, 316, -1, -1, 290, -1,
- 290, 322, 323, 324, 325, 326, 327, 328, 329, 330,
- 331, 332, 93, 334, 335, 336, 337, 338, 339, -1,
- -1, 342, -1, 344, -1, -1, -1, -1, 365, 366,
- -1, 352, 353, 354, 355, 356, 357, -1, 359, -1,
- -1, -1, 363, 364, 125, -1, 91, -1, -1, -1,
- -1, 257, -1, -1, 260, 347, 257, 258, 259, 260,
- -1, -1, 263, 264, 265, 266, 267, 268, 269, 270,
- 271, 272, -1, -1, -1, 91, -1, -1, -1, -1,
- 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
- 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
- -1, -1, 303, 304, 305, 306, 307, 308, 309, 310,
- 311, 312, 313, 314, 315, 316, -1, -1, 0, -1,
- 0, 322, 323, 324, 325, 326, 327, 328, 329, 330,
- 331, 0, -1, 334, 335, 336, 337, 343, 344, 340,
- 341, -1, 343, 0, 0, 346, 347, 348, 349, 350,
- 351, 352, 353, 354, 355, 356, -1, -1, -1, 360,
- 361, 362, 363, 43, 33, 45, 372, -1, 37, 375,
- -1, 40, 41, 42, 43, 44, 45, 59, 47, 59,
- -1, 0, 26, 264, 41, -1, -1, 44, -1, -1,
- 59, 60, -1, 62, -1, 91, -1, -1, 42, -1,
- -1, -1, 59, 59, -1, -1, -1, -1, 0, 290,
- -1, 93, -1, 93, -1, 260, -1, -1, -1, 300,
- -1, -1, 303, 268, 93, -1, -1, 96, 273, 274,
- 275, 276, 277, 278, -1, 280, 93, 93, 0, -1,
- 59, -1, 86, 125, 260, 125, -1, -1, -1, 0,
- 0, -1, 268, -1, -1, -1, 125, 273, 274, 275,
- 276, 277, 278, -1, 280, 346, 347, 59, 125, 125,
- -1, 33, -1, -1, 93, 37, -1, -1, 40, 41,
- 42, 43, 44, 45, -1, 47, -1, -1, -1, -1,
- 41, 41, -1, 44, 44, -1, -1, 59, 60, -1,
- 62, 93, -1, -1, -1, 37, 125, -1, 59, 59,
- 42, 43, 156, 45, -1, 47, 160, 161, 162, 163,
- 164, 165, 166, 167, 168, 169, -1, -1, 60, -1,
- 62, 93, -1, 125, 96, -1, -1, -1, -1, -1,
- -1, -1, 93, 93, -1, -1, -1, 37, -1, -1,
- -1, -1, 42, 43, 44, 45, -1, 47, -1, -1,
- -1, -1, 94, 125, 260, -1, -1, -1, -1, -1,
- 60, -1, 62, -1, 125, 125, -1, 273, 274, 275,
- 276, 277, 278, -1, 280, -1, -1, -1, 257, 258,
- 259, 260, -1, -1, 263, 264, 265, 266, 267, 268,
- 269, 270, 271, 272, 94, -1, -1, 264, -1, -1,
- -1, -1, 281, 282, 283, 284, 285, 286, 287, 288,
- 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
- 299, 300, -1, 290, 303, 304, 305, 306, 307, 308,
- 309, 310, 311, 312, 313, 314, 315, 316, -1, -1,
- -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, -1, -1, 334, 335, 336, 337, -1,
- -1, 340, 341, -1, 343, -1, -1, 346, 347, 348,
- 349, 350, 351, 352, 353, 354, 355, 356, -1, -1,
- 347, 360, 361, 362, 363, 257, 258, 259, 260, -1,
- -1, 263, 264, 265, 266, 267, 268, 269, 270, 271,
- 272, 355, -1, 264, 264, 359, 360, -1, -1, 281,
- 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
- 292, 293, 294, 295, 296, 297, 298, 299, 300, 290,
- 290, 303, 304, 305, 306, 307, 308, 309, 310, 311,
- 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
- 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
- 0, -1, 334, 335, 336, 337, -1, -1, 340, 341,
- -1, 343, -1, -1, 346, 347, 348, 349, 350, 351,
- 352, 353, 354, 355, 356, -1, 347, -1, 360, 361,
- 362, 363, -1, 33, -1, -1, -1, 37, -1, -1,
- 40, 41, 42, 43, 44, 45, -1, 47, 350, 351,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
- 60, -1, 62, -1, -1, -1, -1, 24, -1, -1,
- -1, -1, 37, 30, -1, -1, -1, 42, 43, -1,
- 45, -1, 47, -1, -1, -1, 346, 347, 348, 349,
- 350, 351, -1, 93, -1, 60, 96, 62, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 0, -1, -1,
- -1, -1, -1, 37, -1, -1, -1, -1, 42, 43,
- -1, 45, -1, 47, -1, 125, -1, -1, 85, 94,
- -1, -1, -1, -1, -1, -1, 60, -1, 62, -1,
- 33, -1, -1, 100, 37, -1, -1, 40, 41, 42,
- 43, 44, 45, -1, 47, -1, 113, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 59, 60, -1, 62,
- 94, -1, -1, 130, 131, 132, 37, -1, -1, -1,
- -1, 42, 43, 37, 45, -1, 47, -1, 42, 43,
- 44, 45, -1, 47, -1, -1, -1, 154, -1, 60,
- 93, 62, -1, 96, 37, -1, 60, -1, 62, 42,
- 43, 44, 45, -1, 47, -1, 37, -1, -1, -1,
- -1, 42, 43, -1, 45, -1, 47, 60, -1, 62,
- -1, -1, 125, 94, -1, -1, -1, 194, -1, 60,
- 94, 62, -1, -1, -1, 202, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
- 260, 94, -1, 263, 264, 265, 266, 267, 268, 269,
- 270, 271, 272, 94, -1, -1, -1, -1, -1, -1,
- -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
- 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
- 300, -1, -1, 303, 304, 305, 306, 307, 308, 309,
- 310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
- -1, 286, 322, 323, 324, 325, 326, 327, 328, 329,
- 330, 331, -1, -1, 334, 335, 336, 337, -1, -1,
- 340, 341, 299, 343, -1, -1, 346, 347, 348, 349,
- 350, 351, 352, 353, 354, 355, 356, -1, -1, -1,
- 360, 361, 362, 363, 257, 258, 259, 260, -1, -1,
- 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
- -1, 346, 347, 348, 349, 350, 351, -1, 281, 282,
- 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
- 293, 294, 295, 296, 297, 298, 299, 300, 365, 366,
- 303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
- 313, 314, 315, 316, 348, 349, 350, 351, -1, 322,
- 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
- -1, 334, 335, 336, 337, -1, 300, 340, 341, 303,
- 343, -1, -1, 346, 347, 348, 349, 350, 351, 352,
- 353, 354, 355, 356, -1, -1, -1, 360, 361, 362,
- 363, -1, 33, -1, -1, -1, 37, -1, -1, 40,
- 41, 42, 43, 44, 45, 346, 47, 348, 349, 350,
- 351, -1, 346, 347, 348, 349, 350, 351, 59, 60,
- -1, 62, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 346, 347, 348, 349, 350, 351, -1,
- -1, -1, -1, -1, -1, 346, 347, 348, 349, 350,
- 351, -1, 93, -1, -1, 96, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 0, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 125, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 33,
- -1, -1, -1, -1, -1, -1, 40, 41, -1, 43,
- 44, 45, -1, -1, -1, -1, -1, -1, -1, -1,
+short yycheck[] = { 24,
+ 43, 119, 45, 28, 44, 30, 0, 260, 271, 272,
+ 94, 36, 4, 260, 59, 105, 86, 37, 59, 96,
+ 58, 43, 42, 45, 0, 37, 0, 47, 258, 101,
+ 42, 43, 24, 45, 99, 47, 0, 155, 30, 258,
+ 62, 35, 114, 58, 36, 40, 61, 41, 60, 346,
+ 62, 271, 272, 334, 41, 91, 43, 0, 45, 0,
+ 43, 86, 45, 88, 89, 135, 262, 41, 41, 0,
+ 44, 44, 41, 61, 94, 44, 101, 347, 348, 43,
+ 105, 45, 94, 59, 40, 59, 40, 334, 96, 114,
+ 353, 354, 0, 40, 0, 59, 115, 116, 123, 124,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 101,
+ 135, 364, 137, 138, 139, 40, 59, 93, 59, 93,
+ 112, 205, 114, 148, 149, 33, 40, 119, 59, 93,
+ 155, 40, 40, 353, 354, 41, 290, 45, 44, 43,
+ 44, 45, 232, 233, 214, 215, 236, 237, 40, 125,
+ 93, 125, 93, 59, 317, 318, 319, 320, 321, 40,
+ 0, 125, 93, 155, 189, 190, 191, 192, 193, 194,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 257, 40, 125, 91, 125, 40, 263, 93, 96, 214,
+ 215, 268, 349, 350, 125, 260, 261, 40, 268, 61,
+ 260, 0, 258, 0, 229, 0, 41, 232, 233, 234,
+ 24, 236, 237, 262, 41, 123, 30, 264, 258, 125,
+ 94, 301, 0, 300, 260, 46, 37, 257, 93, 0,
+ 125, 42, 43, 93, 45, 262, 47, 273, 274, 275,
+ 276, 277, 278, 268, 280, 262, 238, 239, 257, 257,
+ 41, 243, 41, 93, 44, 263, 41, 375, 41, 37,
+ 268, 304, 59, 41, 42, 43, 44, 45, 41, 47,
+ 41, 41, 86, 44, 286, 44, 44, 302, 41, 41,
+ 345, 59, 60, 94, 62, 125, 302, 101, 59, 347,
+ 264, 262, 91, 43, 44, 45, 93, 44, 93, 257,
+ 114, 303, 37, 43, 44, 45, 359, 42, 43, 44,
+ 45, 260, 47, 41, 41, 93, 290, 131, 132, 133,
+ 41, 41, 93, 344, 123, 60, 300, 62, 125, 303,
+ 125, 0, 262, 41, 344, 347, 348, 349, 350, 351,
+ 352, 155, 155, 30, 369, 370, 371, 125, 373, 257,
+ 258, 259, 260, 261, 125, 263, 35, 381, 264, 94,
+ 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
+ 278, 279, 280, 347, 348, 0, 344, 344, 403, -1,
+ -1, 406, 196, 375, 290, -1, 37, -1, -1, -1,
+ 204, 42, 43, 44, 45, -1, 47, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 60,
+ 0, 62, -1, -1, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 332, 333, -1, 335, 336, 337,
+ 338, 339, 340, -1, 59, 343, -1, 345, -1, -1,
+ -1, 347, 348, 94, -1, 353, 354, 355, 356, 357,
+ 358, -1, 360, 43, 0, 45, 364, 365, 257, 258,
+ -1, 260, 261, -1, 0, 0, -1, 0, 93, 59,
+ 269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
+ 279, 280, -1, 0, -1, -1, 264, 33, 302, 300,
+ -1, 37, 303, 264, 40, 41, 42, 43, 44, 45,
+ 125, 47, -1, 93, -1, -1, 41, -1, -1, 44,
+ -1, -1, 290, 59, 60, -1, 62, -1, -1, 290,
+ -1, -1, 300, 59, 59, 303, 59, -1, -1, 300,
+ -1, -1, 303, -1, 333, 125, -1, -1, -1, -1,
+ 339, 340, 59, 37, 343, -1, 345, 93, 42, 43,
+ 96, 45, -1, 47, -1, 369, 370, 93, 93, 358,
+ 93, 360, 0, -1, -1, 364, 365, -1, -1, 347,
+ 348, 349, 350, 351, 352, -1, 93, 348, -1, 125,
+ -1, -1, -1, -1, -1, 259, -1, -1, 262, 125,
+ 125, -1, 125, -1, -1, 33, -1, -1, -1, 37,
+ 94, -1, 40, 41, 42, 43, 44, 45, 125, 47,
+ -1, -1, 347, 348, 349, 350, 351, 352, -1, -1,
+ -1, 59, 60, -1, 62, -1, -1, -1, -1, -1,
+ -1, 37, -1, -1, -1, -1, 42, 43, -1, 45,
+ -1, 47, -1, -1, -1, -1, -1, -1, -1, 300,
+ -1, -1, 303, -1, 60, 93, 62, -1, 96, 37,
+ -1, -1, -1, -1, 42, 43, -1, 45, -1, 47,
+ 37, -1, 346, 347, -1, 42, 43, 44, 45, -1,
+ 47, -1, 60, -1, 62, -1, -1, 125, 94, -1,
+ -1, -1, -1, 60, -1, 62, 347, 348, 349, 350,
+ 351, 352, 376, -1, -1, 379, -1, -1, -1, -1,
+ -1, 257, 258, 259, 260, -1, 94, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 94, -1, 264,
+ -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 290, -1, 303, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, -1, -1, 335,
+ 336, 337, 338, -1, -1, 341, 342, -1, 344, -1,
+ -1, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, -1, 348, -1, 361, 362, 363, 364, 257,
+ 258, 259, 260, -1, 91, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, -1, -1, -1, -1, -1,
+ -1, -1, -1, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 96, -1, 303, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, -1,
+ -1, -1, 260, -1, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 332, 0, -1, 335, 336, 337,
+ 338, 134, -1, 341, 342, -1, 344, 0, -1, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ -1, -1, -1, 361, 362, 363, 364, -1, 33, -1,
+ -1, -1, 37, -1, -1, 40, 41, 42, 43, 44,
+ 45, -1, 47, -1, 26, 351, 352, -1, 41, -1,
+ -1, 44, -1, -1, 59, 60, -1, 62, -1, -1,
+ 42, -1, -1, -1, -1, -1, 59, -1, -1, 347,
+ 348, 349, 350, 351, 352, -1, -1, -1, -1, -1,
+ 347, 348, 349, 350, 351, 352, 364, -1, 93, -1,
+ -1, 96, -1, 260, -1, -1, -1, -1, -1, -1,
+ 93, 268, -1, 0, -1, 87, 273, 274, 275, 276,
+ 277, 278, -1, 280, 0, -1, -1, -1, -1, -1,
+ 125, -1, -1, -1, -1, -1, 259, -1, -1, 262,
+ -1, -1, 125, 266, -1, -1, 33, -1, -1, -1,
+ 37, -1, -1, 40, 41, 42, 43, 44, 45, -1,
+ 47, -1, -1, -1, -1, 41, -1, -1, 44, -1,
+ -1, -1, 59, 60, -1, 62, -1, -1, -1, -1,
+ -1, -1, -1, 59, -1, 157, -1, -1, -1, 161,
+ 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
+ -1, -1, -1, -1, -1, -1, 93, -1, -1, 96,
+ 37, -1, -1, -1, -1, 42, 43, 93, 45, -1,
+ 47, 37, -1, 346, 347, -1, 42, 43, -1, 45,
+ -1, 47, -1, 60, -1, 62, -1, -1, 125, -1,
+ -1, -1, -1, -1, 60, -1, 62, -1, -1, 125,
+ -1, -1, -1, 376, -1, -1, 379, -1, -1, -1,
+ -1, -1, 257, 258, 259, 260, -1, 94, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 94, -1,
+ -1, 264, -1, -1, -1, -1, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, -1, 290, 303, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, -1, -1,
+ 335, 336, 337, 338, -1, -1, 341, 342, -1, 344,
+ -1, -1, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, -1, -1, 348, 361, 362, 363, 364,
+ 257, 258, 259, 260, -1, -1, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 358, -1, 264, -1,
+ 362, 363, 91, -1, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 290, -1, 303, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ -1, -1, -1, -1, -1, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 0, -1, 335, 336,
+ 337, 338, -1, -1, 341, 342, -1, 344, -1, -1,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, -1, 348, 289, 361, 362, 363, 364, -1, 33,
+ -1, -1, -1, 37, -1, -1, 40, 41, 42, 43,
+ 44, 45, -1, 47, -1, -1, -1, -1, -1, 0,
-1, -1, -1, -1, -1, 59, 60, -1, 62, -1,
- -1, -1, -1, -1, -1, 37, -1, -1, -1, -1,
- 42, 43, 37, 45, -1, 47, -1, 42, 43, 44,
- 45, -1, 47, -1, -1, -1, -1, -1, 60, 93,
- 62, -1, 96, 37, -1, 60, -1, 62, 42, 43,
- -1, 45, -1, 47, -1, 37, -1, -1, -1, -1,
- 42, 43, -1, 45, -1, 47, 60, -1, 62, -1,
- -1, 125, 94, -1, -1, -1, -1, -1, 60, 94,
- 62, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
- 94, -1, 263, 264, 265, 266, 267, 268, 269, 270,
- 271, 272, 94, -1, -1, -1, -1, -1, -1, -1,
- 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
- 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
- -1, -1, 303, 304, 305, 306, 307, 308, 309, 310,
- 311, 312, 313, 314, 315, 316, -1, -1, -1, -1,
- -1, 322, 323, 324, 325, 326, 327, 328, 329, 330,
- 331, -1, -1, 334, 335, 336, 337, -1, -1, 340,
- 341, -1, 343, -1, -1, 346, 347, 348, 349, 350,
- 351, 352, 353, 354, 355, 356, -1, -1, -1, 360,
- 361, 362, 363, 257, 258, 259, 260, -1, -1, 263,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 347, 348, 349, 350, 351, 352, -1, -1, -1, -1,
+ -1, 347, 348, 349, 350, 351, 352, -1, -1, 93,
+ 41, -1, 96, 44, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 0, -1, -1, -1, 59, -1,
+ 37, 260, -1, -1, -1, 42, 43, -1, 45, 268,
+ 47, 125, -1, -1, 273, 274, 275, 276, 277, 278,
+ -1, 280, -1, 60, -1, 62, -1, 33, -1, -1,
+ -1, 37, 93, -1, 40, 41, 42, 43, 44, 45,
+ -1, 47, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 59, 60, -1, 62, 94, -1, -1,
+ -1, -1, -1, 37, 125, -1, -1, -1, 42, 43,
+ 37, 45, -1, 47, -1, 42, 43, -1, 45, -1,
+ 47, -1, -1, -1, -1, -1, 60, 93, 62, -1,
+ 96, 37, -1, 60, -1, 62, 42, 43, -1, 45,
+ -1, 47, -1, 37, -1, -1, -1, -1, 42, 43,
+ 44, 45, -1, 47, 60, -1, 62, -1, -1, 125,
+ 94, -1, -1, -1, -1, -1, 60, 94, 62, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 257, 258, 259, 260, -1, 94, 263,
264, 265, 266, 267, 268, 269, 270, 271, 272, -1,
- 0, -1, -1, -1, -1, -1, -1, 281, 282, 283,
+ 94, -1, -1, -1, -1, -1, -1, 281, 282, 283,
284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
294, 295, 296, 297, 298, 299, 300, -1, -1, 303,
304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
- 314, 315, 316, -1, -1, -1, -1, 289, 322, 323,
- 324, 325, 326, 327, 328, 329, 330, 331, 0, 59,
- 334, 335, 336, 337, -1, 300, 340, 341, 303, 343,
- -1, -1, 346, 347, 348, 349, 350, 351, 352, 353,
- 354, 355, 356, -1, -1, -1, 360, 361, 362, 363,
- -1, 33, -1, 93, -1, -1, 96, -1, 40, 41,
- -1, 43, 44, 45, 346, 347, 348, 349, 350, 351,
- -1, 346, 347, 348, 349, 350, 351, 59, 60, -1,
- 62, -1, -1, -1, -1, 125, -1, -1, -1, -1,
- -1, -1, 346, 347, 348, 349, 350, 351, -1, -1,
- -1, -1, -1, -1, 346, -1, 348, 349, 350, 351,
- -1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
+ 314, 315, 316, 264, -1, -1, -1, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, -1,
+ -1, 335, 336, 337, 338, -1, -1, 341, 342, 290,
+ 344, -1, -1, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 46, -1, -1, 361, 362, 363,
+ 364, 257, 258, 259, 260, -1, 46, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
+ -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, -1, -1, 303, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, -1, 349, 350, 351, 352, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 0, -1, 335,
+ 336, 337, 338, -1, -1, 341, 342, -1, 344, -1,
+ -1, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, -1, -1, -1, 361, 362, 363, 364, -1,
+ 33, -1, -1, -1, -1, -1, 300, 40, 41, 303,
+ 43, 44, 45, 347, 348, 349, 350, 351, 352, -1,
+ 347, -1, 349, 350, 351, 352, 59, 60, -1, 62,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 347, -1, 349, 350, 351, 352, -1, -1, -1,
+ -1, -1, -1, 347, 348, 349, 350, 351, 352, -1,
+ 93, -1, -1, 96, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 0, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 33, -1,
- -1, -1, -1, -1, -1, 40, 41, -1, -1, 44,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 125, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 33, 271,
+ 272, -1, -1, -1, -1, 40, 41, -1, 43, 44,
+ 45, 271, 272, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 59, 60, -1, 62, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 37, -1, -1, -1, -1, 42, 43, 44, 45,
- -1, 47, -1, -1, -1, -1, -1, 257, 93, -1,
- -1, 96, -1, 263, 60, -1, 62, -1, 268, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 125, -1, -1, -1, -1, -1, -1, -1, 94, -1,
- 300, -1, -1, -1, -1, -1, 46, -1, -1, -1,
- -1, -1, -1, -1, -1, 257, 258, 259, 260, 46,
- -1, 263, 264, 265, 266, 267, 268, 269, 270, 271,
- 272, -1, -1, -1, -1, -1, -1, -1, -1, 281,
- 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
- 292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
- -1, 303, 304, 305, 306, 307, 308, 309, 310, 311,
- 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
- 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
- -1, -1, 334, 335, 336, 337, -1, -1, 340, 341,
- -1, 343, -1, -1, 346, 347, 348, 349, 350, 351,
- 352, 353, 354, 355, 356, 46, -1, -1, 360, 361,
- 362, 363, 257, 258, 259, 260, -1, -1, 263, 264,
+ -1, -1, -1, -1, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, -1, 93, -1,
+ -1, 96, -1, 335, 336, 337, 338, -1, -1, -1,
+ -1, -1, -1, -1, -1, 335, 336, 337, 338, -1,
+ -1, 353, 354, 355, 356, 357, -1, -1, -1, -1,
+ 125, -1, -1, 353, 354, 355, 356, 357, -1, -1,
+ -1, -1, -1, -1, -1, -1, 46, -1, -1, -1,
+ -1, -1, -1, 40, 257, 258, 259, 260, -1, 46,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ -1, -1, -1, -1, -1, -1, -1, -1, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, -1, -1,
+ 303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, -1, -1, -1, -1, -1, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
+ -1, -1, 335, 336, 337, 338, -1, -1, 341, 342,
+ -1, 344, -1, -1, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, -1, -1, -1, 361, 362,
+ 363, 364, 257, 258, 259, 260, -1, -1, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, -1, -1,
-1, -1, -1, -1, -1, -1, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, -1, -1, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, 0, -1, 334,
- 335, 336, 337, -1, 300, 340, 341, 303, 343, -1,
- -1, 346, 347, 348, 349, 350, 351, 352, 353, 354,
- 355, 356, -1, -1, -1, 360, 361, 362, 363, -1,
- 33, 271, 272, -1, -1, -1, -1, 40, 41, -1,
- -1, 44, -1, -1, 271, 272, -1, -1, -1, -1,
- 346, 347, 348, 349, 350, 351, 59, 60, -1, 62,
- -1, -1, -1, -1, -1, -1, 306, 307, 308, 309,
+ 325, 326, 327, 328, 329, 330, 331, 332, 0, -1,
+ 335, 336, 337, 338, -1, -1, 341, 342, -1, 344,
+ -1, -1, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, -1, -1, -1, 361, 362, 363, 364,
+ 257, 33, -1, -1, -1, -1, 263, -1, 40, 41,
+ -1, 268, 44, -1, 271, 272, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, 60, -1,
+ 62, -1, -1, -1, -1, -1, 306, 307, 308, 309,
310, 311, 312, 313, 314, 315, 316, -1, -1, 306,
307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- 93, -1, -1, 96, 334, 335, 336, 337, -1, -1,
- -1, -1, -1, -1, 0, -1, -1, 334, 335, 336,
- 337, -1, 352, 353, 354, 355, 356, -1, -1, -1,
- -1, -1, 125, -1, -1, 352, 353, 354, 355, 356,
- -1, -1, -1, -1, -1, -1, -1, 33, -1, -1,
- -1, -1, -1, -1, 40, 41, -1, -1, 44, -1,
+ -1, 93, 0, -1, 96, 335, 336, 337, 338, -1,
+ -1, -1, -1, -1, -1, -1, 0, -1, 335, 336,
+ 337, 338, -1, 353, 354, 355, 356, 357, -1, -1,
+ -1, -1, -1, 125, -1, -1, 353, 354, 355, 356,
+ 357, -1, -1, 41, -1, -1, 44, -1, -1, 33,
+ -1, 86, -1, -1, -1, -1, 40, 41, -1, -1,
+ 44, 59, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 59, 60, -1, 62, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 59, 60, -1, 62, -1, -1, -1,
- -1, -1, -1, -1, -1, 306, 307, 308, 309, 310,
- 311, 312, 313, 314, 315, 316, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
- 96, -1, -1, 334, 335, 336, 337, -1, -1, -1,
+ -1, -1, -1, -1, -1, 93, 131, 132, 133, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
+ -1, -1, 96, -1, -1, -1, -1, -1, -1, -1,
+ 155, -1, -1, -1, -1, 37, -1, 125, -1, -1,
+ 42, 43, 44, 45, -1, 47, -1, -1, -1, -1,
+ -1, 125, -1, -1, -1, -1, -1, -1, 60, -1,
+ 62, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 196, -1, -1, -1, 257, 258, 259, 260, 204,
+ -1, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, -1, 94, -1, -1, -1, -1, -1, -1, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
+ -1, 303, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, -1, -1, 335, 336, 337, 338, -1, -1, 341,
+ 342, -1, 344, -1, -1, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 264, 302, -1, 361,
+ 362, 363, 364, 257, 258, 259, 260, -1, -1, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, -1,
+ -1, 0, 290, -1, -1, -1, -1, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, -1, -1, 303,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, -1, 369, 370, -1, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, 0,
+ 59, 335, 336, 337, 338, -1, -1, 341, 342, -1,
+ 344, -1, -1, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, -1, -1, -1, 361, 362, 363,
+ 364, -1, 33, -1, 93, -1, -1, 96, 300, 40,
+ 41, 303, -1, 44, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 59, 60,
+ -1, 62, -1, -1, -1, -1, 125, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 347, 348, 349, 350, 351,
+ 352, -1, 93, -1, -1, 96, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 0, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 352, 353, 354, 355, 356, -1, -1, -1, 125,
+ -1, -1, -1, -1, 125, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 33, -1, -1, -1, -1, -1, -1, 40, 41, -1,
+ -1, 44, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 59, 60, -1, 62,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 257, 258, 259, 260, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 257, -1,
+ 93, -1, -1, 96, 263, -1, -1, -1, -1, 268,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 125, -1, -1, -1, -1, -1, -1, -1,
+ -1, 300, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
+ -1, -1, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ -1, -1, 303, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, -1, -1, -1, -1,
+ -1, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 332, -1, -1, 335, 336, 337, 338, -1, -1,
+ 341, 342, -1, 344, -1, -1, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, -1, -1, -1,
+ 361, 362, 363, 364, 257, 258, 259, 260, -1, -1,
263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
- -1, -1, -1, -1, -1, -1, -1, -1, 281, 282,
+ -1, -1, 0, -1, -1, -1, -1, -1, 281, 282,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 295, 296, 297, 298, 299, 300, -1, -1,
303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
313, 314, 315, 316, -1, -1, -1, -1, -1, 322,
- 323, 324, 325, 326, 327, 328, 329, 330, 331, -1,
- -1, 334, 335, 336, 337, -1, -1, 340, 341, -1,
- 343, -1, -1, 346, 347, 348, 349, 350, 351, 352,
- 353, 354, 355, 356, -1, -1, -1, 360, 361, 362,
- 363, 257, 258, 259, 260, -1, -1, 263, 264, 265,
- 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
- -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
- 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
- 296, 297, 298, 299, 300, -1, -1, 303, 304, 305,
- 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
- 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, 0, -1, 334, 335,
- 336, 337, -1, -1, 340, 341, -1, 343, -1, -1,
- 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
- 356, -1, -1, -1, 360, 361, 362, 363, -1, 33,
- -1, -1, -1, -1, -1, -1, 40, 41, -1, -1,
- 44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 59, 60, -1, 62, -1,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
+ 0, 59, 335, 336, 337, 338, -1, -1, 341, 342,
+ -1, 344, -1, -1, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, -1, -1, -1, 361, 362,
+ 363, 364, -1, 33, -1, 93, -1, -1, 96, -1,
+ 40, 41, -1, 43, 44, 45, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
+ -1, -1, 62, -1, -1, -1, -1, 125, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
- -1, -1, 96, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 0, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 93, -1, -1, 96, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 0, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 33, -1, -1, -1,
- -1, -1, -1, 40, 41, -1, 43, 44, 45, -1,
+ -1, -1, -1, -1, -1, 125, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 59, -1, -1, 62, -1, -1, -1, -1,
+ -1, 33, -1, -1, -1, -1, -1, -1, 40, 41,
+ -1, -1, 44, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 93, -1, -1, 96,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
+ -1, 93, -1, -1, 96, 263, -1, -1, -1, -1,
+ 268, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
+ -1, -1, 300, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
+ 260, -1, -1, 263, -1, 265, 266, 267, 268, 269,
+ 270, 271, 272, -1, -1, -1, -1, -1, -1, -1,
+ -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ -1, -1, -1, -1, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 332, -1, -1, 335, 336, 337, 338, -1,
+ -1, 341, 342, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 353, 354, 355, 356, 357, -1, -1,
+ -1, 361, 362, 363, 364, 257, 258, 259, 260, -1,
+ -1, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, -1, -1, -1, -1, -1, -1, -1, -1, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
+ -1, 303, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 0, -1, 335, 336, 337, 338, -1, -1, 341,
+ 342, -1, 344, -1, -1, 347, 348, 349, 350, -1,
+ -1, 353, 354, 355, 356, 357, -1, -1, -1, 361,
+ 362, 363, 364, -1, 33, -1, -1, -1, -1, -1,
+ -1, 40, 41, -1, -1, 44, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 125, -1,
+ 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 257, 258, 259, 260, -1, -1, 263,
- 264, 265, 266, 267, 268, 269, 270, 271, 272, -1,
- -1, -1, -1, -1, -1, -1, -1, 281, 282, 283,
- 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
- 294, 295, 296, 297, 298, 299, 300, -1, -1, 303,
- 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
- 314, 315, 316, -1, -1, -1, -1, -1, 322, 323,
- 324, 325, 326, 327, 328, 329, 330, 331, -1, -1,
- 334, 335, 336, 337, -1, -1, 340, 341, -1, 343,
- -1, -1, 346, 347, 348, 349, 350, 351, 352, 353,
- 354, 355, 356, -1, -1, -1, 360, 361, 362, 363,
- 257, 258, 259, 260, -1, -1, 263, -1, 265, 266,
- 267, 268, 269, 270, 271, 272, -1, -1, -1, -1,
- -1, -1, -1, -1, 281, 282, 283, 284, 285, 286,
- 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
- 297, 298, 299, -1, -1, -1, -1, 304, 305, 306,
- 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- 317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, 0, -1, 334, 335, 336,
- 337, -1, -1, 340, 341, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 352, 353, 354, 355, 356,
- -1, -1, -1, 360, 361, 362, 363, -1, 33, -1,
- -1, -1, -1, -1, -1, 40, 41, -1, -1, 44,
+ -1, -1, -1, -1, 93, -1, -1, 96, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 0,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 125, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 33, -1, -1, -1, -1, -1, -1, 40,
+ 41, -1, 43, 44, 45, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
+ -1, 62, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 93, -1,
- -1, 96, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 0, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 125, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 33, -1, -1, -1, -1,
+ -1, -1, 93, -1, -1, 96, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 125, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
+ 259, 260, -1, -1, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, -1, -1, -1, -1, -1, -1,
+ -1, -1, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, -1, -1, 303, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, -1, -1,
+ -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 332, -1, -1, 335, 336, 337, 338,
+ -1, -1, 341, 342, -1, 344, -1, -1, 347, 348,
+ 349, 350, -1, -1, 353, 354, 355, 356, 357, -1,
+ -1, -1, 361, 362, 363, 364, 257, 258, 259, 260,
+ -1, -1, 263, -1, 265, 266, 267, 268, 269, 270,
+ 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, -1,
+ -1, -1, -1, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 332, 0, -1, 335, 336, 337, 338, -1, -1,
+ 341, 342, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 353, 354, 355, 356, 357, -1, -1, -1,
+ 361, 362, 363, 364, -1, 33, -1, -1, -1, -1,
-1, -1, 40, 41, -1, -1, 44, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
@@ -1961,21 +2035,21 @@ static YYCONST short yycheck[] = { 24,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 93, -1, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 0, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 33, -1, -1, -1, -1, -1, -1,
+ 40, 41, -1, -1, 44, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 257, 258, 259, 260, -1, -1, 263, 264,
- 265, 266, 267, 268, 269, 270, 271, 272, -1, -1,
- -1, -1, -1, -1, -1, -1, 281, 282, 283, 284,
- 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
- 295, 296, 297, 298, 299, 300, -1, -1, 303, 304,
- 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, -1, -1, 334,
- 335, 336, 337, -1, -1, 340, 341, -1, 343, -1,
- -1, 346, 347, 348, 349, -1, -1, 352, 353, 354,
- 355, 356, -1, -1, -1, 360, 361, 362, 363, 257,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 93, -1, -1, 96, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 125, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
258, 259, 260, -1, -1, 263, 264, 265, 266, 267,
268, 269, 270, 271, 272, -1, -1, -1, -1, -1,
-1, -1, -1, 281, 282, 283, 284, 285, 286, 287,
@@ -1983,24 +2057,35 @@ static YYCONST short yycheck[] = { 24,
298, 299, 300, -1, -1, 303, 304, 305, 306, 307,
308, 309, 310, 311, 312, 313, 314, 315, 316, -1,
-1, -1, -1, -1, 322, 323, 324, 325, 326, 327,
- 328, 329, 330, 331, 0, -1, 334, 335, 336, 337,
- -1, -1, 340, 341, -1, 343, -1, -1, 346, 347,
- 348, 349, -1, -1, 352, 353, 354, 355, 356, -1,
- -1, -1, 360, 361, 362, 363, -1, 33, -1, -1,
- -1, -1, -1, -1, 40, 41, -1, 43, 44, 45,
+ 328, 329, 330, 331, 332, -1, -1, 335, 336, 337,
+ 338, -1, -1, 341, 342, -1, 344, -1, -1, 347,
+ 348, -1, -1, -1, -1, 353, 354, 355, 356, 357,
+ -1, -1, -1, 361, 362, 363, 364, 257, 258, 259,
+ 260, -1, -1, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, -1, -1, -1, -1, -1, -1, -1,
+ -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, -1, -1, 303, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
+ -1, -1, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 332, 0, -1, 335, 336, 337, 338, -1,
+ -1, 341, 342, -1, 344, -1, -1, -1, 348, -1,
+ -1, -1, -1, 353, 354, 355, 356, 357, -1, -1,
+ -1, 361, 362, 363, 364, -1, 33, -1, -1, -1,
+ -1, -1, -1, 40, 41, -1, 43, 44, 45, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 59, -1, -1, 62, -1, -1, -1,
+ -1, -1, 59, -1, -1, 62, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
- 96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 93, -1, -1, 96,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 0, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 125,
+ -1, -1, -1, -1, -1, -1, -1, -1, 125, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 33, -1, -1, -1, -1, -1,
-1, 40, 41, -1, -1, 44, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 59, -1, -1, 62, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 93, -1, -1, 96, -1, -1,
@@ -2009,177 +2094,130 @@ static YYCONST short yycheck[] = { 24,
-1, -1, -1, -1, -1, -1, 125, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 257, 258, 259, 260, -1, -1, 263, -1, 265,
- 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
- -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
- 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
- 296, 297, 298, 299, -1, -1, -1, -1, 304, 305,
- 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
- 316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, -1, -1, 334, 335,
- 336, 337, -1, -1, 340, 341, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 352, 353, 354, 355,
- 356, -1, -1, -1, 360, 361, 362, 363, 257, 258,
- 259, 260, -1, -1, 263, 264, 265, 266, 267, 268,
+ 257, 258, 259, 260, -1, -1, 263, -1, 265, 266,
+ 267, 268, 269, 270, 271, 272, -1, -1, -1, -1,
+ -1, -1, -1, -1, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, -1, -1, -1, -1, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ -1, -1, -1, -1, -1, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, -1, -1, 335, 336,
+ 337, 338, -1, -1, 341, 342, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 353, 354, 355, 356,
+ 357, -1, -1, -1, 361, 362, 363, 364, 257, 258,
+ 259, 260, -1, -1, 263, -1, 265, 266, 267, 268,
269, 270, 271, 272, -1, -1, -1, -1, -1, -1,
-1, -1, 281, 282, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
- 299, 300, -1, -1, 303, 304, 305, 306, 307, 308,
+ 299, -1, -1, -1, -1, 304, 305, 306, 307, 308,
309, 310, 311, 312, 313, 314, 315, 316, -1, -1,
-1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, 0, -1, 334, 335, 336, 337, -1,
- -1, 340, 341, -1, 343, -1, -1, 346, 347, -1,
- -1, -1, -1, 352, 353, 354, 355, 356, -1, -1,
- -1, 360, 361, 362, 363, -1, 33, -1, -1, -1,
- -1, -1, -1, 40, 41, -1, -1, 44, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 59, -1, -1, -1, -1, -1, -1, -1,
+ 329, 330, 331, 332, 0, -1, 335, 336, 337, 338,
+ -1, -1, 341, 342, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 353, 354, 355, 356, 357, -1,
+ -1, -1, 361, 362, 363, 364, -1, 33, -1, -1,
+ -1, -1, -1, -1, 40, 41, -1, -1, 44, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 59, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 93, -1, -1, 96,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 0, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 125, -1,
+ -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
+ 96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 0, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 125,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 33, -1, -1, -1, -1, -1, -1,
- 40, 41, -1, 43, 44, 45, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
- -1, -1, 62, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 33, -1, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 93, -1, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 93, -1, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 125, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 257, 258, 259, 260, -1, -1, 263, 264, 265, 266,
- 267, 268, 269, 270, 271, 272, -1, -1, -1, -1,
- -1, -1, -1, -1, 281, 282, 283, 284, 285, 286,
- 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
- 297, 298, 299, 300, -1, -1, 303, 304, 305, 306,
- 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- -1, -1, -1, -1, -1, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, -1, -1, 334, 335, 336,
- 337, -1, -1, 340, 341, -1, 343, -1, -1, -1,
- 347, -1, -1, -1, -1, 352, 353, 354, 355, 356,
- -1, -1, -1, 360, 361, 362, 363, 257, 258, 259,
- 260, -1, -1, 263, -1, 265, 266, 267, 268, 269,
- 270, 271, 272, -1, -1, -1, -1, -1, -1, -1,
- -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
- 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
- -1, -1, -1, -1, 304, 305, 306, 307, 308, 309,
- 310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
- -1, -1, 322, 323, 324, 325, 326, 327, 328, 329,
- 330, 331, 0, -1, 334, 335, 336, 337, -1, -1,
- 340, 341, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 352, 353, 354, 355, 356, -1, -1, -1,
- 360, 361, 362, 363, -1, 33, -1, -1, -1, -1,
- -1, -1, 40, 41, -1, -1, 44, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 59, -1, -1, 62, -1, -1, -1, -1, -1,
+ -1, 257, 258, 259, 260, -1, -1, 263, -1, 265,
+ 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
+ -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, -1, -1, -1, -1, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, -1, -1, 335,
+ 336, 337, 338, -1, -1, 341, 342, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 353, 354, 355,
+ 356, 357, -1, -1, -1, 361, 362, 363, 364, 257,
+ 258, 259, 260, -1, -1, 263, -1, 265, 266, 267,
+ 268, 269, 270, 271, 272, -1, -1, -1, -1, -1,
+ -1, -1, -1, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 0, -1, -1, -1, -1, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, -1,
+ -1, -1, -1, -1, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 332, 33, -1, 335, 336, 337,
+ 338, -1, 40, 341, 342, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 353, 354, 355, 356, 357,
+ -1, 59, -1, 361, 362, 363, 364, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 93, -1, -1, 96, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 0,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 0, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 33, -1, -1, -1, -1, -1, -1, 40,
- 41, -1, -1, 44, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
+ -1, -1, -1, 33, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 93, -1, -1, 96, -1, -1, -1, -1,
+ -1, -1, -1, 93, -1, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 125, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 125, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
258, 259, 260, -1, -1, 263, -1, 265, 266, 267,
268, 269, 270, 271, 272, -1, -1, -1, -1, -1,
-1, -1, -1, 281, 282, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
- 298, 299, -1, -1, -1, -1, 304, 305, 306, 307,
+ 298, 299, -1, -1, -1, -1, -1, 305, 306, 307,
308, 309, 310, 311, 312, 313, 314, 315, 316, -1,
-1, -1, -1, -1, 322, 323, 324, 325, 326, 327,
- 328, 329, 330, 331, -1, -1, 334, 335, 336, 337,
- 40, -1, 340, 341, -1, -1, 46, -1, -1, -1,
- -1, -1, -1, -1, 352, 353, 354, 355, 356, -1,
- -1, -1, 360, 361, 362, 363, 257, 258, 259, 260,
- -1, -1, 263, -1, 265, 266, 267, 268, 269, 270,
- 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
- 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
- 291, 292, 293, 294, 295, 296, 297, 298, 299, -1,
- -1, -1, -1, 304, 305, 306, 307, 308, 309, 310,
- 311, 312, 313, 314, 315, 316, 0, -1, -1, -1,
- -1, 322, 323, 324, 325, 326, 327, 328, 329, 330,
- 331, -1, -1, 334, 335, 336, 337, -1, -1, 340,
- 341, -1, -1, -1, -1, -1, -1, -1, -1, 33,
- -1, 352, 353, 354, 355, 356, 40, -1, -1, 360,
- 361, 362, 363, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 59, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
- -1, -1, 96, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 0, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 125, -1, -1, -1, -1, -1, 257, -1, -1,
- -1, -1, -1, 263, -1, -1, 33, -1, 268, -1,
- -1, 271, 272, 40, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 59, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 306, 307, 308, 309,
+ 328, 329, 330, 331, 332, -1, -1, 335, 336, 337,
+ 338, -1, -1, 341, 342, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 353, 354, 355, 356, 357,
+ -1, -1, -1, 361, 362, 363, 364, 257, 258, 259,
+ 260, -1, -1, 263, -1, 265, 266, 267, 268, 269,
+ 270, 271, 272, -1, -1, -1, -1, -1, -1, -1,
+ -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 0, -1, -1, -1, -1, 305, 306, 307, 308, 309,
310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 93, -1, -1, 96,
- -1, -1, -1, -1, 334, 335, 336, 337, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 352, 353, 354, 355, 356, -1, 125, -1,
+ -1, -1, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 332, 33, -1, 335, 336, 337, 338, -1,
+ 40, 341, 342, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 353, 354, 355, 356, 357, -1, 59,
+ -1, 361, 362, 363, 364, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 257, 258, 259, 260, -1, -1, 263,
- -1, 265, 266, 267, 268, 269, 270, 271, 272, -1,
- -1, -1, -1, -1, -1, -1, -1, 281, 282, 283,
- 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
- 294, 295, 296, 297, 298, 299, -1, -1, -1, -1,
- -1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
- 314, 315, 316, -1, -1, 91, -1, -1, 322, 323,
- 324, 325, 326, 327, 328, 329, 330, 331, -1, -1,
- 334, 335, 336, 337, -1, -1, 340, 341, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 123, 352, 353,
- 354, 355, 356, -1, -1, -1, 360, 361, 362, 363,
- 257, 258, 259, 260, -1, -1, 263, -1, 265, 266,
- 267, 268, 269, 270, 271, 272, -1, -1, -1, -1,
- -1, -1, -1, -1, 281, 282, 283, 284, 285, 286,
- 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
- 297, 298, 299, -1, -1, -1, -1, -1, 305, 306,
- 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- 0, -1, -1, -1, -1, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, -1, -1, 334, 335, 336,
- 337, -1, -1, 340, 341, -1, -1, -1, -1, -1,
- -1, -1, -1, 33, -1, 352, 353, 354, 355, 356,
- 40, -1, -1, 360, 361, 362, 363, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
- -1, 257, 258, -1, 260, 261, -1, -1, -1, -1,
- -1, -1, -1, 269, 270, 271, 272, 273, 274, 275,
- 276, 277, 278, 279, 280, -1, -1, -1, -1, -1,
-1, -1, -1, 93, -1, -1, 96, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 0, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 0, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 125, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 332, -1, -1, -1,
- 33, -1, 338, 339, -1, -1, 342, 40, 344, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 357, -1, 359, -1, -1, 59, 363, 364, -1,
+ -1, 33, -1, -1, -1, -1, -1, -1, 40, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 93, -1, -1, 96, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 125, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
260, -1, -1, 263, -1, 265, 266, 267, 268, 269,
@@ -2187,84 +2225,40 @@ static YYCONST short yycheck[] = { 24,
-1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
-1, -1, -1, -1, -1, 305, 306, 307, 308, 309,
- 310, 311, 312, 313, 314, 315, 316, -1, -1, 91,
+ 310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
-1, -1, 322, 323, 324, 325, 326, 327, 328, 329,
- 330, 331, -1, -1, 334, 335, 336, 337, -1, -1,
- 340, 341, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 123, 352, 353, 354, 355, 356, -1, -1, -1,
- 360, 361, 362, 363, 257, 258, 259, 260, -1, -1,
- 263, -1, 265, 266, 267, 268, 269, 270, 271, 272,
- -1, -1, -1, -1, -1, -1, -1, -1, 281, 282,
- 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
- 293, 294, 295, 296, 297, 298, 299, -1, -1, -1,
- -1, -1, 305, 306, 307, 308, 309, 310, 311, 312,
- 313, 314, 315, 316, 0, -1, -1, -1, -1, 322,
- 323, 324, 325, 326, 327, 328, 329, 330, 331, -1,
- -1, 334, 335, 336, 337, -1, -1, 340, 341, -1,
- -1, -1, -1, -1, -1, -1, -1, 33, -1, 352,
- 353, 354, 355, 356, 40, -1, -1, 360, 361, 362,
- 363, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 59, -1, 257, 258, -1, 260, 261,
- -1, -1, -1, -1, -1, -1, -1, 269, 270, 271,
- 272, 273, 274, 275, 276, 277, 278, 279, 280, -1,
- -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
- 96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 0, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 125,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 332, -1, -1, -1, 33, -1, 338, 339, -1, -1,
- 342, 40, 344, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 357, -1, 359, -1, -1,
- 59, 363, 364, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 93, -1, -1, 96, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 125, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 257, 258, 259, 260, -1, -1, 263, -1, 265,
- 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
- -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
- 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
- 296, 297, 298, 299, -1, -1, -1, -1, -1, 305,
- 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
- 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, -1, -1, 334, 335,
- 336, 337, -1, -1, 340, 341, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 352, 353, 354, 355,
- 356, -1, -1, -1, 360, 361, 362, 363, 257, 258,
- 259, 260, -1, -1, 263, -1, 265, 266, 267, 268,
- 269, 270, 271, 272, -1, -1, -1, -1, -1, -1,
- -1, -1, 281, 282, 283, 284, 285, 286, 287, 288,
- 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
- 299, -1, -1, -1, -1, -1, 305, 306, 307, 308,
- 309, 310, 311, 312, 313, 314, 315, 316, 0, -1,
- -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, -1, -1, 334, 335, 336, 337, -1,
- -1, 340, 341, -1, -1, -1, -1, -1, -1, -1,
- -1, 33, -1, 352, 353, 354, 355, 356, 40, -1,
- -1, 360, 361, 362, 363, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 330, 331, 332, -1, -1, 335, 336, 337, 338, -1,
+ -1, 341, 342, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 353, 354, 355, 356, 357, -1, -1,
+ -1, 361, 362, 363, 364, 257, 258, 259, 260, -1,
+ -1, 263, -1, 265, 266, 267, 268, 269, 270, 271,
+ 272, -1, -1, -1, -1, -1, -1, -1, -1, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 0, -1,
+ -1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 33, -1, 335, 336, 337, 338, -1, 40, 341,
+ 342, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 353, 354, 355, 356, 357, -1, 59, -1, 361,
+ 362, 363, 364, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 0, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 0, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 33, -1,
- -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 33,
+ -1, -1, -1, -1, -1, -1, 40, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 59, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 93, -1,
- -1, 96, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
+ -1, -1, 96, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 125, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 257, 258, 259, 260, -1,
-1, 263, -1, 265, 266, 267, 268, 269, 270, 271,
@@ -2274,124 +2268,160 @@ static YYCONST short yycheck[] = { 24,
-1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
- -1, -1, 334, 335, 336, 337, -1, -1, 340, 341,
+ 332, -1, -1, 335, 336, 337, 338, -1, -1, 341,
+ 342, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 353, 354, 355, 356, 357, -1, -1, -1, 361,
+ 362, 363, 364, 257, 258, 259, 260, -1, -1, 263,
+ -1, 265, 266, 267, 268, 269, 270, 271, 272, -1,
+ -1, -1, -1, -1, -1, -1, -1, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 0, -1, -1, -1,
+ -1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, -1, -1, -1, -1, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, 33,
+ -1, 335, 336, 337, 338, -1, 40, 341, 342, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 353,
+ 354, 355, 356, 357, -1, 59, -1, 361, 362, 363,
+ 364, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 352, 353, 354, 355, 356, -1, -1, -1, 360, 361,
- 362, 363, 257, 258, 259, 260, -1, -1, 263, -1,
- 265, 266, 267, 268, 269, 270, 271, 272, -1, -1,
- -1, -1, -1, -1, -1, -1, 281, 282, 283, 284,
- 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
- 295, 296, 297, 298, 299, -1, -1, -1, -1, -1,
- 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 315, 316, 0, -1, -1, -1, -1, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, -1, -1, 334,
- 335, 336, 337, -1, -1, 340, 341, -1, -1, -1,
- -1, -1, -1, -1, -1, 33, -1, 352, 353, 354,
- 355, 356, 40, -1, -1, 360, 361, 362, 363, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
+ -1, -1, 96, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 0, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 33, -1, -1,
+ -1, -1, -1, -1, 40, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 59, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 93, -1, -1, 96, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 0,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
+ 96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 33, -1, -1, -1, -1, -1, -1, 40,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 125,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 257, 258, 259, 260, -1, -1, 263,
+ -1, 265, 266, 267, 268, 269, 270, 271, 272, -1,
+ -1, -1, -1, -1, -1, -1, -1, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, -1, -1, -1, -1,
+ -1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, -1, -1, -1, -1, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, -1,
+ -1, 335, 336, 337, 338, -1, -1, 341, 342, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 353,
+ 354, 355, 356, 357, -1, -1, -1, 361, 362, 363,
+ 364, 257, 258, 259, 260, -1, -1, 263, -1, 265,
+ 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
+ -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 0, -1, -1, -1, -1, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 33, -1, 335,
+ 336, 337, 338, -1, 40, 341, 342, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 353, 354, 355,
+ 356, 357, -1, 59, -1, 361, 362, 363, 364, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
+ 96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 0, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 125,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 33, -1, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 93, -1, -1, 96, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 93, -1, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 125, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
+ -1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 257, 258, 259, 260, -1, -1, 263, -1, 265,
+ 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
+ -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, -1, -1, -1, -1, -1, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, -1, -1, 335,
+ 336, 337, 338, -1, -1, 341, 342, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 353, 354, 355,
+ 356, 357, -1, -1, -1, 361, 362, 363, 364, 257,
258, 259, 260, -1, -1, 263, -1, 265, 266, 267,
268, 269, 270, 271, 272, -1, -1, -1, -1, -1,
-1, -1, -1, 281, 282, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
- 298, 299, -1, -1, -1, -1, -1, 305, 306, 307,
+ 298, 299, 0, -1, -1, -1, -1, 305, 306, 307,
308, 309, 310, 311, 312, 313, 314, 315, 316, -1,
-1, -1, -1, -1, 322, 323, 324, 325, 326, 327,
- 328, 329, 330, 331, -1, -1, 334, 335, 336, 337,
- -1, -1, 340, 341, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 352, 353, 354, 355, 356, -1,
- -1, -1, 360, 361, 362, 363, 257, 258, 259, 260,
- -1, -1, 263, -1, 265, 266, 267, 268, 269, 270,
- 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
- 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
- 291, 292, 293, 294, 295, 296, 297, 298, 299, -1,
- -1, -1, -1, -1, 305, 306, 307, 308, 309, 310,
- 311, 312, 313, 314, 315, 316, 0, -1, -1, -1,
- -1, 322, 323, 324, 325, 326, 327, 328, 329, 330,
- 331, -1, -1, 334, 335, 336, 337, -1, -1, 340,
- 341, -1, -1, -1, -1, -1, -1, -1, -1, 33,
- -1, 352, 353, 354, 355, 356, 40, -1, -1, 360,
- 361, 362, 363, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 59, -1, -1, -1, -1,
+ 328, 329, 330, 331, 332, 33, -1, 335, 336, 337,
+ 338, -1, 40, 341, 342, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 353, 354, 355, 356, 357,
+ -1, 59, -1, 361, 362, 363, 364, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
- -1, -1, 96, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 0, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 33, -1, -1, -1,
- -1, -1, -1, 40, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 93, -1, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 59, -1, -1, -1, -1, -1, -1, -1,
+ 0, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 33, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 93, -1, -1, 96,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 125, -1,
+ -1, -1, -1, 93, -1, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 257, 258, 259, 260, -1, -1, 263,
- -1, 265, 266, 267, 268, 269, 270, 271, 272, -1,
- -1, -1, -1, -1, -1, -1, -1, 281, 282, 283,
- 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
- 294, 295, 296, 297, 298, 299, -1, -1, -1, -1,
- -1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
- 314, 315, 316, -1, -1, -1, -1, -1, 322, 323,
- 324, 325, 326, 327, 328, 329, 330, 331, -1, -1,
- 334, 335, 336, 337, -1, -1, 340, 341, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 352, 353,
- 354, 355, 356, -1, -1, -1, 360, 361, 362, 363,
- 257, 258, 259, 260, -1, -1, 263, -1, 265, 266,
- 267, 268, 269, 270, 271, 272, -1, -1, -1, -1,
- -1, -1, -1, -1, 281, 282, 283, 284, 285, 286,
- 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
- 297, 298, 299, -1, -1, -1, -1, -1, 305, 306,
- 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- 0, -1, -1, -1, -1, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, -1, -1, 334, 335, 336,
- 337, -1, -1, 340, 341, -1, -1, -1, -1, -1,
- -1, -1, -1, 33, -1, 352, 353, 354, 355, 356,
- 40, -1, -1, 360, 361, 362, 363, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
+ -1, -1, -1, -1, -1, 125, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
+ 258, 259, 260, -1, -1, 263, -1, 265, 266, 267,
+ 268, 269, 270, 271, 272, -1, -1, -1, -1, -1,
+ -1, -1, -1, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, -1, -1, -1, -1, -1, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, -1,
+ -1, -1, -1, -1, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 332, -1, -1, 335, 336, 337,
+ 338, -1, -1, 341, 342, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 353, 354, 355, 356, 357,
+ -1, -1, -1, 361, 362, 363, 364, 257, 258, 259,
+ 260, -1, -1, 263, -1, 265, 266, 267, 268, 269,
+ 270, 271, 272, -1, -1, -1, -1, -1, -1, -1,
+ -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 0, -1, -1, -1, -1, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
+ -1, -1, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 332, 33, -1, 335, 336, 337, 338, -1,
+ 40, 341, 342, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 353, 354, 355, 356, 357, -1, 59,
+ -1, 361, 362, 363, 364, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 93, -1, -1, 96, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 0, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 0, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 125, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 33, -1, -1, -1, -1, -1, -1, 40, -1, -1,
+ -1, 33, -1, -1, -1, -1, -1, -1, 40, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 59, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 93, -1, -1, 96, -1, -1, -1, -1, -1, -1,
+ -1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 125, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
260, -1, -1, 263, -1, 265, 266, 267, 268, 269,
@@ -2401,82 +2431,38 @@ static YYCONST short yycheck[] = { 24,
-1, -1, -1, -1, -1, 305, 306, 307, 308, 309,
310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
-1, -1, 322, 323, 324, 325, 326, 327, 328, 329,
- 330, 331, -1, -1, 334, 335, 336, 337, -1, -1,
- 340, 341, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 352, 353, 354, 355, 356, -1, -1, -1,
- 360, 361, 362, 363, 257, 258, 259, 260, -1, -1,
- 263, -1, 265, 266, 267, 268, 269, 270, 271, 272,
- -1, -1, -1, -1, -1, -1, -1, -1, 281, 282,
- 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
- 293, 294, 295, 296, 297, 298, 299, -1, -1, -1,
- -1, -1, 305, 306, 307, 308, 309, 310, 311, 312,
- 313, 314, 315, 316, 0, -1, -1, -1, -1, 322,
- 323, 324, 325, 326, 327, 328, 329, 330, 331, -1,
- -1, 334, 335, 336, 337, -1, -1, 340, 341, -1,
- -1, -1, -1, -1, -1, -1, -1, 33, -1, 352,
- 353, 354, 355, 356, 40, -1, -1, 360, 361, 362,
- 363, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 59, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
- 96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 0, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 125,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 33, -1, -1, -1, -1, -1,
- -1, 40, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 93, -1, -1, 96, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 125, -1, -1, -1,
+ 330, 331, 332, -1, -1, 335, 336, 337, 338, -1,
+ -1, 341, 342, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 353, 354, 355, 356, 357, -1, -1,
+ -1, 361, 362, 363, 364, 257, 258, 259, 260, -1,
+ -1, 263, -1, 265, 266, 267, 268, 269, 270, 271,
+ 272, -1, -1, -1, -1, -1, -1, -1, -1, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 0, -1,
+ -1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 33, -1, 335, 336, 337, 338, -1, 40, 341,
+ 342, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 353, 354, 355, 356, 357, -1, 59, -1, 361,
+ 362, 363, 364, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 257, 258, 259, 260, -1, -1, 263, -1, 265,
- 266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
- -1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
- 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
- 296, 297, 298, 299, -1, -1, -1, -1, -1, 305,
- 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
- 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, -1, -1, 334, 335,
- 336, 337, -1, -1, 340, 341, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 352, 353, 354, 355,
- 356, -1, -1, -1, 360, 361, 362, 363, 257, 258,
- 259, 260, -1, -1, 263, -1, 265, 266, 267, 268,
- 269, 270, 271, 272, -1, -1, -1, -1, -1, -1,
- -1, -1, 281, 282, 283, 284, 285, 286, 287, 288,
- 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
- 299, -1, -1, -1, -1, -1, 305, 306, 307, 308,
- 309, 310, 311, 312, 313, 314, 315, 316, 0, -1,
- -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, -1, -1, 334, 335, 336, 337, -1,
- -1, 340, 341, -1, -1, -1, -1, -1, -1, -1,
- -1, 33, -1, 352, 353, 354, 355, 356, 40, -1,
- -1, 360, 361, 362, 363, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
+ -1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 0, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 33,
+ -1, -1, -1, -1, -1, -1, 40, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
- -1, -1, -1, 37, -1, 0, -1, 41, 42, 43,
- 44, 45, -1, 47, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 125, -1, 59, 60, -1, 62, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 33, -1,
- -1, -1, -1, -1, -1, 40, 41, -1, 43, 44,
- 45, -1, -1, -1, -1, -1, -1, -1, -1, 93,
- -1, -1, -1, -1, 59, -1, -1, 62, -1, -1,
+ -1, -1, -1, -1, -1, 59, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 125, -1, -1, -1, -1, -1, -1, 93, -1,
- -1, 96, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 93,
+ -1, -1, 96, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 125, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 257, 258, 259, 260, -1,
-1, 263, -1, 265, 266, 267, 268, 269, 270, 271,
@@ -2486,197 +2472,205 @@ static YYCONST short yycheck[] = { 24,
-1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
- 264, -1, 334, 335, 336, 337, -1, -1, 340, 341,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 352, 353, 354, 355, 356, -1, 290, -1, 360, 361,
- 362, 363, 257, 258, 259, 260, 300, -1, 263, 303,
- 265, 266, 267, 268, 269, 270, 271, 272, -1, -1,
- -1, -1, -1, -1, -1, -1, 281, 282, 283, 284,
- 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
- 295, 296, 297, 298, 299, -1, -1, -1, -1, 304,
- 305, 0, 346, 347, 348, 349, 350, 351, -1, -1,
- -1, -1, 317, 318, 319, 320, 321, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, -1, -1, -1,
- -1, -1, -1, -1, 33, 340, 341, -1, -1, -1,
- -1, 40, 41, -1, 0, 44, 45, -1, -1, -1,
- -1, -1, -1, -1, -1, 360, 361, 362, 363, -1,
- 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 33, -1, -1,
- -1, -1, -1, -1, 40, 41, -1, -1, 44, -1,
- -1, -1, -1, -1, 93, -1, -1, 96, -1, -1,
- -1, -1, -1, 59, 60, -1, 62, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 125, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 93, -1, -1,
- 96, -1, -1, -1, -1, -1, -1, -1, 0, -1,
- -1, 0, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 125,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 33, -1, -1, -1, -1, 41,
- -1, 40, 44, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
- 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 93, -1, -1, 93, -1, -1, 96, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
- 259, 260, -1, -1, 263, -1, 265, 266, 267, 268,
- 269, 270, -1, 125, -1, -1, 125, -1, -1, -1,
- -1, -1, 281, 282, 283, 284, 285, 286, 287, 288,
- 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
- 299, 257, 258, 259, 260, -1, 305, 263, -1, -1,
- -1, -1, 268, -1, -1, 271, 272, -1, -1, -1,
- -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, -1, -1, -1, -1, -1, -1, -1,
- -1, 340, 341, 0, -1, -1, -1, -1, -1, 305,
- 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
- 316, 360, 361, 362, 363, -1, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, 33, -1, 334, 335,
- 336, 337, -1, 40, -1, -1, -1, -1, -1, -1,
- 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
- 356, -1, 59, -1, -1, -1, -1, 363, 257, 258,
- 259, 260, 264, -1, 263, -1, -1, -1, -1, 268,
- -1, -1, 271, 272, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 93, -1, 290, 96,
- -1, -1, 0, -1, -1, -1, -1, -1, 300, -1,
- -1, 303, -1, -1, -1, -1, 305, 306, 307, 308,
- 309, 310, 311, 312, 313, 314, 315, 316, 125, -1,
- -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, -1, -1, 334, 335, 336, 337, -1,
- -1, -1, -1, -1, -1, 347, -1, -1, -1, -1,
- -1, 59, -1, 352, 353, 354, 355, 356, -1, -1,
- -1, -1, -1, -1, 363, -1, -1, -1, -1, -1,
+ 332, -1, -1, 335, 336, 337, 338, -1, -1, 341,
+ 342, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 353, 354, 355, 356, 357, -1, -1, -1, 361,
+ 362, 363, 364, 257, 258, 259, 260, -1, -1, 263,
+ -1, 265, 266, 267, 268, 269, 270, 271, 272, -1,
+ -1, -1, -1, -1, -1, -1, -1, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, -1, -1, -1, -1,
+ -1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, -1, -1, -1, -1, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, 0,
+ -1, 335, 336, 337, 338, -1, -1, 341, 342, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 353,
+ 354, 355, 356, 357, -1, -1, -1, 361, 362, 363,
+ 364, -1, 33, -1, -1, -1, -1, -1, -1, 40,
+ 41, -1, 43, 44, 45, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
+ -1, 62, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 93, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 0, -1, -1, -1, -1,
+ -1, -1, 93, -1, -1, 96, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 0, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 33, -1,
+ -1, -1, -1, -1, 125, 40, 41, -1, 0, 44,
+ 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 33, -1, -1, -1, -1, -1, -1, 40, 41,
+ -1, -1, 44, -1, -1, -1, -1, -1, 93, -1,
+ -1, 96, -1, -1, -1, -1, -1, 59, 60, -1,
+ 62, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 125, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 257, 258, 259, 260, -1, -1, 263, -1, -1, 59,
- -1, 268, -1, -1, 271, 272, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 125, -1, -1, 257, 258, 259, 260,
+ -1, -1, 263, -1, 265, 266, 267, 268, 269, 270,
+ 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 0,
+ -1, -1, -1, 304, 305, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 317, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 332, 33, -1, -1, -1, -1, -1, -1, 40,
+ 341, 342, 257, 258, 259, 260, -1, -1, 263, -1,
+ 265, 266, 267, 268, 269, 270, -1, -1, 59, -1,
+ 361, 362, 363, 364, -1, -1, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 257, 258, 259, 260, -1,
+ 305, 263, 93, -1, -1, 96, 268, -1, -1, 271,
+ 272, -1, -1, -1, -1, -1, -1, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, -1, -1,
+ -1, -1, -1, -1, 125, -1, 341, 342, 0, -1,
+ -1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, 361, 362, 363, 364,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 33, -1, 335, 336, 337, 338, -1, 40, -1,
+ -1, -1, -1, -1, -1, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, -1, 59, -1, -1,
+ -1, -1, 364, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 93, -1, -1, -1, -1, 305, 306,
- 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- 0, -1, -1, -1, -1, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, 125, -1, 334, 335, 336,
- 337, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 352, 353, 354, 355, 356,
- 0, -1, 260, -1, -1, -1, 363, 265, 266, 267,
- -1, 269, 270, 271, 272, -1, -1, -1, -1, 59,
- -1, -1, -1, 281, 282, 283, 284, 285, 286, 287,
- 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
- 298, 299, 300, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 93, -1, -1, -1, -1, -1, 59,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 93, -1, -1, 96, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 0,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 340, 341, -1, 125, -1, -1, -1, -1,
- -1, -1, -1, 93, -1, -1, -1, -1, -1, 0,
- -1, -1, 360, 361, 362, 363, -1, -1, -1, -1,
- 260, -1, -1, -1, -1, 265, 266, 267, -1, 269,
- 270, 271, 272, -1, -1, 125, -1, -1, -1, -1,
- -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
- 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
- 300, -1, -1, -1, -1, -1, -1, -1, 59, -1,
+ -1, -1, -1, 125, -1, -1, 257, 258, 259, 260,
+ -1, -1, 263, -1, -1, -1, -1, 268, -1, -1,
+ 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
+ 0, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 59, -1,
+ -1, -1, -1, -1, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, -1, -1, -1, -1,
+ -1, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 332, 93, -1, 335, 336, 337, 338, -1, 59,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 353, 354, 355, 356, 357, -1, -1, -1,
+ -1, -1, -1, 364, 125, -1, -1, -1, 0, -1,
+ -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 257, 258, 259, 260, -1,
+ -1, 263, -1, -1, -1, -1, 268, -1, -1, 271,
+ 272, -1, -1, -1, -1, 125, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
+ -1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 93, -1, 335, 336, 337, 338, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 340, 341, 93, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 0,
- 360, 361, 362, 363, -1, -1, -1, -1, -1, -1,
- 260, -1, -1, -1, 125, 265, 266, 267, -1, 269,
- 270, 271, 272, -1, -1, -1, -1, -1, -1, -1,
- -1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
- 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ -1, 353, 354, 355, 356, 357, -1, -1, -1, 0,
+ -1, -1, 364, 125, -1, -1, -1, -1, -1, 260,
+ -1, -1, -1, -1, 265, 266, 267, -1, 269, 270,
+ 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
260, -1, -1, -1, -1, 265, 266, 267, 59, 269,
270, 271, 272, -1, -1, -1, -1, -1, -1, -1,
-1, 281, 282, 283, 284, 285, 286, 287, 288, 289,
290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
- 340, 341, 93, -1, -1, -1, -1, -1, 0, -1,
+ 341, 342, 93, -1, -1, -1, -1, -1, -1, 0,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 360, 361, 362, 363, -1, -1, -1, -1, -1, -1,
+ 361, 362, 363, 364, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 125, -1, -1, -1, -1, -1,
- 340, 341, -1, -1, -1, -1, -1, -1, 0, -1,
+ -1, 341, 342, -1, -1, -1, -1, -1, 260, -1,
+ -1, -1, -1, 265, 266, 267, -1, 269, 270, 271,
+ 272, 361, 362, 363, 364, -1, -1, -1, 59, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, -1,
+ -1, -1, -1, -1, 0, -1, 0, -1, -1, -1,
+ -1, -1, 93, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 341,
+ 342, -1, -1, -1, 125, -1, -1, -1, -1, 43,
+ -1, 45, 46, -1, -1, -1, -1, -1, -1, 361,
+ 362, 363, 364, 59, -1, 59, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 260,
- 360, 361, 362, 363, 265, 266, 267, 59, 269, 270,
- 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 265, 266, 267, -1, 269, 270,
+ 271, 272, -1, -1, -1, -1, -1, 93, -1, 93,
281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, -1,
- -1, 93, -1, -1, -1, -1, -1, 59, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 0, 125,
+ -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 125, -1, -1, -1, -1, -1, 340,
- 341, 93, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 360,
- 361, 362, 363, -1, -1, -1, -1, -1, -1, 260,
- -1, -1, -1, 125, 265, 266, 267, -1, 269, 270,
+ 341, 342, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 260,
+ 361, 362, 363, 364, 265, 266, 267, 59, 269, 270,
271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 294, 295, 296, 297, 298, 299, -1,
+ -1, 93, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 0, -1, -1, -1, -1,
+ -1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
+ 341, 342, -1, -1, 260, -1, -1, -1, -1, 265,
+ 266, 267, -1, 269, 270, 271, 272, 271, 272, -1,
+ 361, 362, 363, 364, -1, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 59, -1, -1, -1, -1, -1,
+ -1, -1, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 318, 319, 320, 321, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 93, -1,
+ -1, 335, 336, 337, 338, 341, 342, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 353,
+ 354, 355, 356, 357, -1, 361, 362, 363, 364, -1,
+ 125, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 260, -1,
+ -1, -1, -1, 265, 266, 267, -1, 269, 270, 271,
+ 272, -1, -1, -1, -1, -1, -1, -1, -1, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 0, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 340,
- 341, -1, 59, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 260, 360,
- 361, 362, 363, 265, 266, 267, -1, 269, 270, 271,
- 272, -1, -1, -1, 91, -1, -1, -1, -1, 281,
- 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
- 292, 293, 294, 295, 296, 297, 298, 299, 260, -1,
- -1, -1, -1, 265, 266, 267, 123, 269, 270, 271,
- 272, 0, -1, -1, -1, -1, -1, -1, -1, 281,
- 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
- 292, 293, 294, 295, 296, 297, 298, 299, 340, 341,
- -1, -1, -1, -1, 33, -1, -1, -1, -1, -1,
- -1, 40, -1, -1, -1, -1, -1, -1, 360, 361,
- 362, 363, -1, -1, -1, -1, -1, -1, -1, -1,
- 59, -1, 0, -1, -1, -1, -1, -1, 340, 341,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 360, 361,
- 362, 363, -1, -1, 93, -1, -1, 96, -1, -1,
- -1, -1, -1, -1, -1, 43, -1, 45, 46, -1,
+ -1, 33, -1, -1, -1, -1, -1, -1, 40, 341,
+ 342, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, -1, 361,
+ 362, 363, 364, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 260, -1, -1, -1, -1,
+ 265, 266, 267, -1, 269, 270, 271, 272, -1, -1,
+ -1, 93, -1, -1, 96, -1, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, -1, -1, -1, -1, -1,
+ -1, -1, -1, 125, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 33, -1,
+ -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
+ 45, -1, -1, -1, -1, -1, 341, 342, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 59, -1, -1, -1, -1, 125, -1, -1, -1,
- 257, 258, -1, 260, 261, -1, -1, -1, -1, -1,
- -1, -1, 269, 270, 271, 272, 273, 274, 275, 276,
- 277, 278, 279, 280, -1, 93, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 33, -1, -1, -1, -1,
- -1, -1, 40, -1, -1, -1, -1, 45, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 125, -1, -1,
+ -1, -1, -1, -1, -1, -1, 361, 362, 363, 364,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 332, -1, -1, -1, -1,
- -1, 338, 339, -1, -1, 342, -1, 344, -1, -1,
- -1, -1, -1, 91, -1, -1, -1, -1, 96, -1,
- 357, -1, 359, -1, -1, -1, 363, 364, -1, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, -1,
+ -1, 96, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 123, -1, -1, 257, 258,
- 259, -1, -1, -1, 263, -1, 265, 266, 267, 268,
- 269, 270, 271, 272, -1, -1, -1, -1, -1, -1,
- -1, -1, 281, 282, 283, 284, 285, 286, 287, 288,
- 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
- 299, -1, -1, -1, -1, -1, 305, 306, 307, 308,
- 309, 310, 311, 312, 313, 314, 315, 316, -1, -1,
- -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, 271, 272, 334, 335, 336, 337, -1,
- -1, 340, 341, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 352, 353, 354, 355, 356, -1, -1,
- -1, 360, 361, 362, -1, -1, -1, -1, 306, 307,
- 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
- 318, 319, 320, 321, -1, -1, -1, -1, -1, 257,
- 258, 259, 260, 261, -1, 263, 334, 335, 336, 337,
- 268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
- 278, 279, 280, -1, 352, 353, 354, 355, 356, 33,
- -1, -1, -1, -1, -1, -1, 40, -1, -1, -1,
- -1, 45, -1, -1, -1, -1, -1, 305, 306, 307,
- 308, 309, 310, 311, 312, 313, 314, 315, 316, -1,
- -1, -1, -1, -1, 322, 323, 324, 325, 326, 327,
- 328, 329, 330, 331, 332, -1, 334, 335, 336, 337,
- 338, 339, -1, -1, 342, -1, 344, 91, -1, -1,
- -1, -1, 96, -1, 352, 353, 354, 355, 356, 357,
- -1, 359, -1, -1, -1, 363, 364, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
+ -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 257, 258, 259, -1, -1,
+ -1, 263, -1, 265, 266, 267, 268, 269, 270, 271,
+ 272, -1, -1, -1, -1, -1, -1, -1, -1, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, -1, -1,
+ -1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, -1, -1, 335, 336, 337, 338, -1, -1, 341,
+ 342, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 353, 354, 355, 356, 357, -1, -1, -1, 361,
+ 362, 363, 257, 258, 259, 260, 261, -1, 263, -1,
+ -1, -1, -1, 268, 269, 270, 271, 272, 273, 274,
+ 275, 276, 277, 278, 279, 280, -1, -1, 33, -1,
+ -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
+ 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, -1,
+ 335, 336, 337, 338, 339, 340, 91, -1, 343, -1,
+ 345, 96, -1, -1, -1, -1, -1, -1, 353, 354,
+ 355, 356, 357, 358, -1, 360, -1, -1, -1, 364,
+ 365, -1, -1, -1, -1, -1, -1, -1, 123, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 33, -1, -1,
-1, -1, -1, -1, 40, -1, -1, -1, -1, 45,
@@ -2690,151 +2684,183 @@ static YYCONST short yycheck[] = { 24,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 257, 258, 259, 260, 261, -1, 263,
- -1, -1, -1, -1, 268, 269, 270, 271, 272, 273,
- 274, 275, 276, 277, 278, 279, 280, -1, 33, -1,
- -1, -1, -1, -1, -1, 40, 41, -1, -1, -1,
- 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
- 314, 315, 316, -1, -1, -1, -1, -1, 322, 323,
- 324, 325, 326, 327, 328, 329, 330, 331, 332, -1,
- 334, 335, 336, 337, 338, 339, -1, -1, 342, -1,
- 344, 96, -1, -1, -1, -1, -1, -1, 352, 353,
- 354, 355, 356, 357, -1, 359, -1, -1, -1, 363,
- 364, 257, 258, 259, 260, -1, -1, 263, -1, 265,
+ -1, -1, 257, 258, 259, 260, 261, -1, 263, -1,
+ -1, -1, -1, 268, 269, 270, 271, 272, 273, 274,
+ 275, 276, 277, 278, 279, 280, 33, -1, -1, -1,
+ -1, -1, -1, 40, 41, -1, -1, -1, 45, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, -1,
+ 335, 336, 337, 338, 339, 340, -1, -1, 343, 96,
+ 345, -1, -1, -1, -1, -1, -1, -1, 353, 354,
+ 355, 356, 357, 358, -1, 360, -1, -1, -1, 364,
+ 365, 257, 258, 259, 260, -1, -1, 263, -1, 265,
266, 267, 268, 269, 270, 271, 272, -1, -1, -1,
-1, -1, -1, -1, -1, 281, 282, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
296, 297, 298, 299, -1, -1, -1, -1, -1, 305,
306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, 33, -1, 334, 335,
- 336, 337, -1, 40, 340, 341, -1, -1, 45, -1,
- -1, -1, -1, -1, -1, -1, 352, 353, 354, 355,
- 356, -1, -1, -1, 360, 361, 362, 363, -1, -1,
+ 326, 327, 328, 329, 330, 331, 332, -1, -1, 335,
+ 336, 337, 338, -1, 33, 341, 342, -1, -1, -1,
+ -1, 40, -1, -1, -1, -1, 45, 353, 354, 355,
+ 356, 357, -1, -1, -1, 361, 362, 363, 364, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 96,
- -1, -1, 257, 258, 259, 260, -1, -1, 263, -1,
- -1, -1, -1, 268, -1, -1, 271, 272, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 257, 258, 259, 260, -1, -1, 263, 96, -1, -1,
+ -1, 268, -1, -1, 271, 272, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, 33, -1, 334,
- 335, 336, 337, -1, 40, -1, -1, -1, -1, 45,
- -1, -1, -1, -1, -1, -1, -1, 352, 353, 354,
- 355, 356, -1, -1, -1, -1, -1, -1, 363, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ -1, -1, -1, -1, -1, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 33, -1, 335, 336,
+ 337, 338, -1, 40, -1, -1, -1, -1, 45, -1,
+ -1, -1, -1, -1, -1, -1, 353, 354, 355, 356,
+ 357, -1, -1, -1, -1, -1, -1, 364, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 96,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 257, 258,
+ 259, 260, -1, -1, 263, -1, -1, -1, -1, 268,
+ -1, -1, 271, 272, -1, -1, -1, 33, -1, -1,
+ -1, -1, -1, -1, 40, -1, -1, -1, -1, 45,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, -1, -1,
+ -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 332, -1, -1, 335, 336, 337, 338,
96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 353, 354, 355, 356, 357, -1,
+ -1, -1, -1, -1, -1, 364, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 33, -1, -1,
+ 257, 258, 259, 260, 40, -1, 263, -1, -1, 45,
+ -1, 268, -1, -1, 271, 272, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 257, 258, 259, 260, -1, -1, 263, -1, -1, -1,
- -1, 268, -1, -1, 271, 272, -1, -1, 33, -1,
- -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
- 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 305, 306,
307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- -1, -1, -1, -1, -1, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, -1, -1, 334, 335, 336,
- 337, 96, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 352, 353, 354, 355, 356,
- -1, -1, -1, -1, -1, -1, 363, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 33,
- -1, -1, -1, -1, -1, -1, 40, -1, -1, -1,
- -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 257, 258, 259, 260, -1, -1, 263, -1, -1,
- -1, -1, 268, -1, -1, 271, 272, -1, -1, -1,
+ 96, -1, -1, -1, -1, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, -1, -1, 335, 336,
+ 337, 338, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 353, 354, 355, 356,
+ 357, -1, -1, -1, -1, -1, -1, 364, -1, 33,
+ -1, 257, 258, 259, 260, -1, 40, 263, 42, -1,
+ -1, 45, 268, -1, -1, 271, 272, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 96, -1, -1, -1, -1, -1, -1, 305,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 305,
306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
- 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, -1, -1, 334, 335,
- 336, 337, 33, -1, -1, -1, -1, -1, -1, 40,
- -1, 42, -1, -1, 45, -1, 352, 353, 354, 355,
- 356, -1, 257, 258, 259, 260, -1, 363, 263, -1,
- -1, -1, -1, 268, -1, -1, 271, 272, -1, -1,
+ 316, -1, 96, -1, -1, -1, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, -1, -1, 335,
+ 336, 337, 338, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 353, 354, 355,
+ 356, 357, -1, -1, -1, -1, -1, -1, 364, 33,
+ -1, 257, 258, 259, 260, -1, 40, 263, -1, -1,
+ -1, 45, 268, -1, -1, 271, 272, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 96, -1, -1, -1, -1,
- 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, -1, -1, 334,
- 335, 336, 337, 33, -1, -1, -1, -1, -1, -1,
- 40, -1, -1, -1, -1, 45, -1, 352, 353, 354,
- 355, 356, -1, 257, 258, 259, 260, -1, 363, 263,
- -1, -1, -1, -1, 268, -1, -1, 271, 272, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, -1, 96, -1, -1, -1, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, -1, -1, 335,
+ 336, 337, 338, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 353, 354, 355,
+ 356, 357, -1, -1, -1, -1, -1, -1, 364, -1,
+ 33, -1, -1, 257, 258, 259, -1, 40, -1, 263,
+ -1, -1, 45, -1, 268, -1, -1, 271, 272, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 96, -1, -1, -1,
-1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
- 314, 315, 316, -1, -1, -1, -1, -1, 322, 323,
- 324, 325, 326, 327, 328, 329, 330, 331, -1, -1,
- 334, 335, 336, 337, 33, -1, -1, -1, -1, -1,
- -1, 40, -1, -1, -1, -1, 45, -1, 352, 353,
- 354, 355, 356, -1, -1, -1, 257, 258, 259, 363,
- -1, -1, 263, -1, -1, -1, -1, 268, -1, -1,
- 271, 272, -1, -1, -1, -1, -1, -1, -1, -1,
+ 314, 315, 316, 96, -1, -1, -1, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, -1,
+ -1, 335, 336, 337, 338, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 353,
+ 354, 355, 356, 357, -1, -1, -1, -1, -1, -1,
+ 33, -1, -1, 257, 258, 259, -1, 40, -1, 263,
+ -1, -1, 45, -1, 268, -1, -1, 271, 272, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 96, -1, -1,
- -1, -1, -1, -1, 305, 306, 307, 308, 309, 310,
- 311, 312, 313, 314, 315, 316, -1, -1, -1, -1,
- -1, 322, 323, 324, 325, 326, 327, 328, 329, 330,
- 331, -1, -1, 334, 335, 336, 337, 33, -1, -1,
- -1, -1, -1, -1, 40, -1, -1, -1, -1, 45,
- -1, 352, 353, 354, 355, 356, -1, 257, 258, 259,
- -1, -1, -1, 263, -1, -1, -1, -1, 268, -1,
- -1, 271, 272, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 96, -1, -1, -1, -1, 305, 306, 307, 308, 309,
- 310, 311, 312, 313, 314, 315, 316, -1, -1, -1,
- -1, -1, 322, 323, 324, 325, 326, 327, 328, 329,
- 330, 331, -1, -1, 334, 335, 336, 337, 33, -1,
- -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
- 45, -1, 352, 353, 354, 355, 356, -1, 257, 258,
- 259, -1, -1, -1, 263, -1, -1, -1, -1, 268,
- -1, -1, 271, 272, -1, -1, -1, -1, -1, -1,
+ -1, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 96, -1, -1, -1, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, -1,
+ -1, 335, 336, 337, 338, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 353,
+ 354, 355, 356, 357, -1, -1, -1, -1, -1, -1,
+ -1, 33, -1, -1, 257, 258, 259, -1, 40, -1,
+ 263, -1, -1, 45, -1, 268, -1, -1, 271, 272,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 96, -1, -1, -1, -1, 305, 306, 307, 308,
- 309, 310, 311, 312, 313, 314, 315, 316, -1, -1,
- -1, -1, -1, 322, 323, 324, 325, 326, 327, 328,
- 329, 330, 331, -1, -1, 334, 335, 336, 337, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 352, 353, 354, 355, 356, -1, -1,
- -1, 257, 258, 259, -1, -1, -1, 263, -1, -1,
- -1, -1, 268, -1, -1, 271, 272, -1, -1, -1,
+ -1, -1, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 96, -1, -1, -1, -1, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
+ -1, -1, 335, 336, 337, 338, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 353, 354, 355, 356, 357, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 257, 258, 259, -1, -1, -1,
+ 263, -1, -1, -1, -1, 268, -1, -1, 271, 272,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 305,
- 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
- 316, -1, -1, -1, -1, -1, 322, 323, 324, 325,
- 326, 327, 328, 329, 330, 331, -1, -1, 334, 335,
- 336, 337, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 352, 353, 354, 355,
- 356, -1, 257, 258, 259, -1, -1, -1, 263, -1,
- -1, -1, -1, 268, -1, -1, -1, -1, -1, -1,
+ -1, -1, 59, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 91, -1, -1, -1, -1, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
+ -1, -1, 335, 336, 337, 338, -1, -1, -1, -1,
+ -1, -1, 91, -1, -1, -1, 123, -1, -1, -1,
+ 353, 354, 355, 356, 357, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 257, 258, 259, -1, -1,
+ -1, 263, -1, -1, 123, -1, 268, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 315, 316, -1, -1, -1, -1, -1, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, -1, -1, 334,
- 335, 336, 337, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 352, 353, 354,
- 355, 356,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, -1, -1, -1, -1, -1,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, -1, -1, 335, 336, 337, 338, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
+ -1, 353, 354, 355, 356, 357, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 257, 258, -1, 260, 261, 123, -1, -1, -1, -1,
+ -1, -1, 269, 270, 271, 272, 273, 274, 275, 276,
+ 277, 278, 279, 280, -1, -1, -1, -1, 257, 258,
+ -1, 260, 261, -1, -1, -1, -1, -1, -1, -1,
+ 269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
+ 279, 280, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 333, -1, -1, -1,
+ -1, -1, 339, 340, -1, -1, 343, -1, 345, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 358, -1, 360, 333, -1, -1, 364, 365, -1,
+ 339, 340, -1, -1, 343, -1, 345, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 358,
+ -1, 360, -1, -1, -1, 364, 365, -1, -1, 257,
+ 258, -1, 260, 261, -1, -1, -1, -1, -1, -1,
+ -1, 269, 270, 271, 272, 273, 274, 275, 276, 277,
+ 278, 279, 280, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 333, -1, -1, -1, -1,
+ -1, 339, 340, -1, -1, 343, -1, 345, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 358, -1, 360, -1, -1, -1, 364, 365,
};
#define YYFINAL 2
#ifndef YYDEBUG
#define YYDEBUG 0
#endif
-#define YYMAXTOKEN 366
+#define YYMAXTOKEN 367
#if YYDEBUG
-static YYCONST char *YYCONST yyname[] = {
+char *yyname[] = {
"end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
"'!'",0,0,0,"'%'",0,0,"'('","')'","'*'","'+'","','","'-'","'.'","'/'",0,0,0,0,0,
0,0,0,0,0,"':'","';'","'<'","'='","'>'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
@@ -2851,12 +2877,13 @@ static YYCONST char *YYCONST yyname[] = {
"AND","HERE","DOT_N","DOT_E","DOT_W","DOT_S","DOT_NE","DOT_SE","DOT_NW",
"DOT_SW","DOT_C","DOT_START","DOT_END","DOT_X","DOT_Y","DOT_HT","DOT_WID",
"DOT_RAD","SIN","COS","ATAN2","LOG","EXP","SQRT","K_MAX","K_MIN","INT","RAND",
-"COPY","THRU","TOP","BOTTOM","UPPER","LOWER","SH","PRINT","CW","CCW","FOR","DO",
-"IF","ELSE","ANDAND","OROR","NOTEQUAL","EQUALEQUAL","LESSEQUAL","GREATEREQUAL",
-"LEFT_CORNER","RIGHT_CORNER","CENTER","END","START","RESET","UNTIL","PLOT",
-"THICKNESS","FILL","ALIGNED","SPRINTF","COMMAND","DEFINE","UNDEF",
+"SRAND","COPY","THRU","TOP","BOTTOM","UPPER","LOWER","SH","PRINT","CW","CCW",
+"FOR","DO","IF","ELSE","ANDAND","OROR","NOTEQUAL","EQUALEQUAL","LESSEQUAL",
+"GREATEREQUAL","LEFT_CORNER","RIGHT_CORNER","CENTER","END","START","RESET",
+"UNTIL","PLOT","THICKNESS","FILL","ALIGNED","SPRINTF","COMMAND","DEFINE",
+"UNDEF",
};
-static YYCONST char *YYCONST yyrule[] = {
+char *yyrule[] = {
"$accept : top",
"top : optional_separator",
"top : element_list",
@@ -3086,6 +3113,7 @@ static YYCONST char *YYCONST yyrule[] = {
"expr : INT '(' any_expr ')'",
"expr : RAND '(' any_expr ')'",
"expr : RAND '(' ')'",
+"expr : SRAND '(' any_expr ')'",
"expr : expr '<' expr",
"expr : expr LESSEQUAL expr",
"expr : expr '>' expr",
@@ -3097,13 +3125,6 @@ static YYCONST char *YYCONST yyrule[] = {
"expr : '!' expr",
};
#endif
-#define YYLEX yylex()
-#define YYEMPTY -1
-#define yyclearin (yychar=(YYEMPTY))
-#define yyerrok (yyerrflag=0)
-#ifndef YYINITDEPTH
-#define YYINITDEPTH 200
-#endif
#ifdef YYSTACKSIZE
#undef YYMAXDEPTH
#define YYMAXDEPTH YYSTACKSIZE
@@ -3111,24 +3132,22 @@ static YYCONST char *YYCONST yyrule[] = {
#ifdef YYMAXDEPTH
#define YYSTACKSIZE YYMAXDEPTH
#else
-#define YYSTACKSIZE 10000
-#define YYMAXDEPTH 10000
+#define YYSTACKSIZE 500
+#define YYMAXDEPTH 500
#endif
#endif
int yydebug;
int yynerrs;
int yyerrflag;
int yychar;
+short *yyssp;
+YYSTYPE *yyvsp;
YYSTYPE yyval;
YYSTYPE yylval;
-static short *yyss;
-static YYSTYPE *yyvs;
-static int yystacksize;
-static int yygrow ();
-static YYPTR yymalloc YYPARAMS((unsigned));
-static YYPTR yyrealloc YYPARAMS((YYPTR, unsigned));
-#define yyfree(x) free(x)
-#line 1529 "pic.y"
+short yyss[YYSTACKSIZE];
+YYSTYPE yyvs[YYSTACKSIZE];
+#define yystacksize YYSTACKSIZE
+#line 1537 "/home/cjk/groff/pic/pic.y"
/* bison defines const to be empty unless __STDC__ is defined, which it
isn't under cfront */
@@ -3396,28 +3415,22 @@ char *do_sprintf(const char *form, const double *v, int nv)
result += '\0';
return strsave(result.contents());
}
-#line 3397 "y.tab.c"
+#line 3419 "y.tab.c"
#define YYABORT goto yyabort
+#define YYREJECT goto yyabort
#define YYACCEPT goto yyaccept
#define YYERROR goto yyerrlab
-
-#if YYDEBUG
-#ifdef __cplusplus
-extern "C" char *getenv();
-#else
-extern char *getenv();
-#endif
-#endif
-
int
+#if defined(__STDC__)
+yyparse(void)
+#else
yyparse()
+#endif
{
register int yym, yyn, yystate;
- register YYSTYPE *yyvsp;
- register short *yyssp;
- short *yysse;
#if YYDEBUG
- register YYCONST char *yys;
+ register char *yys;
+ extern char *getenv();
if (yys = getenv("YYDEBUG"))
{
@@ -3431,26 +3444,12 @@ yyparse()
yyerrflag = 0;
yychar = (-1);
- if (yyss == 0)
- {
- yyss = (short *) yymalloc (YYINITDEPTH * sizeof (short));
- if (yyss == 0)
- goto yyabort;
- yyvs = (YYSTYPE *) yymalloc (YYINITDEPTH * sizeof (YYSTYPE));
- if (yyvs == 0)
- {
- yyfree (yyss);
- goto yyabort;
- }
- yystacksize = YYINITDEPTH;
- }
- yysse = yyss + yystacksize - 1;
yyssp = yyss;
yyvsp = yyvs;
*yyssp = yystate = 0;
yyloop:
- if (yyn = yydefred[yystate]) goto yyreduce;
+ if ((yyn = yydefred[yystate]) != 0) goto yyreduce;
if (yychar < 0)
{
if ((yychar = yylex()) < 0) yychar = 0;
@@ -3460,8 +3459,8 @@ yyloop:
yys = 0;
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, reading %d (%s)\n", yystate,
- yychar, yys);
+ printf("%sdebug: state %d, reading %d (%s)\n",
+ YYPREFIX, yystate, yychar, yys);
}
#endif
}
@@ -3470,18 +3469,12 @@ yyloop:
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: state %d, shifting to state %d\n",
- yystate, yytable[yyn]);
+ printf("%sdebug: state %d, shifting to state %d\n",
+ YYPREFIX, yystate, yytable[yyn]);
#endif
- if (yyssp >= yysse)
+ if (yyssp >= yyss + yystacksize - 1)
{
- /* FIXME: Rework so there's only one of these. */
- int depth = yyssp - yyss;
- if (yygrow () != 0)
- goto yyoverflow;
- yysse = yyss + yystacksize - 1;
- yyssp = yyss + depth;
- yyvsp = yyvs + depth;
+ goto yyoverflow;
}
*++yyssp = yystate = yytable[yyn];
*++yyvsp = yylval;
@@ -3496,10 +3489,6 @@ yyloop:
goto yyreduce;
}
if (yyerrflag) goto yyinrecovery;
-#ifdef lint
- goto yynewerror;
-#endif
-yynewerror:
yyerror("syntax error");
#ifdef lint
goto yyerrlab;
@@ -3517,17 +3506,12 @@ yyinrecovery:
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: state %d, error recovery shifting\
- to state %d\n", *yyssp, yytable[yyn]);
+ printf("%sdebug: state %d, error recovery shifting\
+ to state %d\n", YYPREFIX, *yyssp, yytable[yyn]);
#endif
- if (yyssp >= yysse)
+ if (yyssp >= yyss + yystacksize - 1)
{
- int depth = yyssp - yyss;
- if (yygrow () != 0)
- goto yyoverflow;
- yysse = yyss + yystacksize - 1;
- yyssp = yyss + depth;
- yyvsp = yyvs + depth;
+ goto yyoverflow;
}
*++yyssp = yystate = yytable[yyn];
*++yyvsp = yylval;
@@ -3537,8 +3521,8 @@ yyinrecovery:
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: error recovery discarding state %d\n",
- *yyssp);
+ printf("%sdebug: error recovery discarding state %d\n",
+ YYPREFIX, *yyssp);
#endif
if (yyssp <= yyss) goto yyabort;
--yyssp;
@@ -3555,8 +3539,8 @@ yyinrecovery:
yys = 0;
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, error recovery discards token %d (%s)\n",
- yystate, yychar, yys);
+ printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
+ YYPREFIX, yystate, yychar, yys);
}
#endif
yychar = (-1);
@@ -3565,41 +3549,41 @@ yyinrecovery:
yyreduce:
#if YYDEBUG
if (yydebug)
- printf("yydebug: state %d, reducing by rule %d (%s)\n",
- yystate, yyn, yyrule[yyn]);
+ printf("%sdebug: state %d, reducing by rule %d (%s)\n",
+ YYPREFIX, yystate, yyn, yyrule[yyn]);
#endif
yym = yylen[yyn];
yyval = yyvsp[1-yym];
switch (yyn)
{
case 2:
-#line 272 "pic.y"
+#line 278 "/home/cjk/groff/pic/pic.y"
{
if (olist.head)
print_picture(olist.head);
}
break;
case 3:
-#line 281 "pic.y"
+#line 287 "/home/cjk/groff/pic/pic.y"
{ yyval.pl = yyvsp[-1].pl; }
break;
case 4:
-#line 286 "pic.y"
+#line 292 "/home/cjk/groff/pic/pic.y"
{ yyval.pl = yyvsp[0].pl; }
break;
case 5:
-#line 288 "pic.y"
+#line 294 "/home/cjk/groff/pic/pic.y"
{ yyval.pl = yyvsp[-2].pl; }
break;
case 10:
-#line 303 "pic.y"
+#line 309 "/home/cjk/groff/pic/pic.y"
{
define_variable(yyvsp[-2].str, yyvsp[0].x);
a_delete yyvsp[-2].str;
}
break;
case 11:
-#line 308 "pic.y"
+#line 314 "/home/cjk/groff/pic/pic.y"
{
place *p = lookup_label(yyvsp[-3].str);
if (!p) {
@@ -3613,37 +3597,37 @@ case 11:
}
break;
case 12:
-#line 320 "pic.y"
+#line 326 "/home/cjk/groff/pic/pic.y"
{ current_direction = UP_DIRECTION; }
break;
case 13:
-#line 322 "pic.y"
+#line 328 "/home/cjk/groff/pic/pic.y"
{ current_direction = DOWN_DIRECTION; }
break;
case 14:
-#line 324 "pic.y"
+#line 330 "/home/cjk/groff/pic/pic.y"
{ current_direction = LEFT_DIRECTION; }
break;
case 15:
-#line 326 "pic.y"
+#line 332 "/home/cjk/groff/pic/pic.y"
{ current_direction = RIGHT_DIRECTION; }
break;
case 16:
-#line 328 "pic.y"
+#line 334 "/home/cjk/groff/pic/pic.y"
{
olist.append(make_command_object(yyvsp[0].lstr.str, yyvsp[0].lstr.filename,
yyvsp[0].lstr.lineno));
}
break;
case 17:
-#line 333 "pic.y"
+#line 339 "/home/cjk/groff/pic/pic.y"
{
olist.append(make_command_object(yyvsp[0].lstr.str, yyvsp[0].lstr.filename,
yyvsp[0].lstr.lineno));
}
break;
case 18:
-#line 338 "pic.y"
+#line 344 "/home/cjk/groff/pic/pic.y"
{
fprintf(stderr, "%s\n", yyvsp[0].lstr.str);
a_delete yyvsp[0].lstr.str;
@@ -3651,11 +3635,11 @@ case 18:
}
break;
case 19:
-#line 344 "pic.y"
+#line 350 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 1; }
break;
case 20:
-#line 346 "pic.y"
+#line 352 "/home/cjk/groff/pic/pic.y"
{
delim_flag = 0;
if (safer_flag)
@@ -3666,7 +3650,7 @@ case 20:
}
break;
case 21:
-#line 355 "pic.y"
+#line 361 "/home/cjk/groff/pic/pic.y"
{
if (yychar < 0)
do_lookahead();
@@ -3675,15 +3659,15 @@ case 21:
}
break;
case 22:
-#line 362 "pic.y"
+#line 368 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 2; }
break;
case 23:
-#line 364 "pic.y"
+#line 370 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 0; }
break;
case 24:
-#line 366 "pic.y"
+#line 372 "/home/cjk/groff/pic/pic.y"
{
if (yychar < 0)
do_lookahead();
@@ -3694,15 +3678,15 @@ case 24:
}
break;
case 25:
-#line 375 "pic.y"
+#line 381 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 2; }
break;
case 26:
-#line 377 "pic.y"
+#line 383 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 0; }
break;
case 27:
-#line 379 "pic.y"
+#line 385 "/home/cjk/groff/pic/pic.y"
{
if (yychar < 0)
do_lookahead();
@@ -3712,11 +3696,11 @@ case 27:
}
break;
case 28:
-#line 387 "pic.y"
+#line 393 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 1; }
break;
case 29:
-#line 389 "pic.y"
+#line 395 "/home/cjk/groff/pic/pic.y"
{
delim_flag = 0;
if (yychar < 0)
@@ -3725,7 +3709,7 @@ case 29:
}
break;
case 30:
-#line 396 "pic.y"
+#line 402 "/home/cjk/groff/pic/pic.y"
{
if (yychar < 0)
do_lookahead();
@@ -3735,11 +3719,11 @@ case 30:
}
break;
case 31:
-#line 404 "pic.y"
+#line 410 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 1; }
break;
case 32:
-#line 406 "pic.y"
+#line 412 "/home/cjk/groff/pic/pic.y"
{
delim_flag = 0;
if (yychar < 0)
@@ -3753,27 +3737,27 @@ case 32:
}
break;
case 34:
-#line 419 "pic.y"
+#line 425 "/home/cjk/groff/pic/pic.y"
{ define_variable("scale", 1.0); }
break;
case 35:
-#line 424 "pic.y"
+#line 430 "/home/cjk/groff/pic/pic.y"
{ reset(yyvsp[0].str); a_delete yyvsp[0].str; }
break;
case 36:
-#line 426 "pic.y"
+#line 432 "/home/cjk/groff/pic/pic.y"
{ reset(yyvsp[0].str); a_delete yyvsp[0].str; }
break;
case 37:
-#line 428 "pic.y"
+#line 434 "/home/cjk/groff/pic/pic.y"
{ reset(yyvsp[0].str); a_delete yyvsp[0].str; }
break;
case 38:
-#line 433 "pic.y"
+#line 439 "/home/cjk/groff/pic/pic.y"
{ yyval.lstr = yyvsp[0].lstr; }
break;
case 39:
-#line 435 "pic.y"
+#line 441 "/home/cjk/groff/pic/pic.y"
{
yyval.lstr.str = new char[strlen(yyvsp[-1].lstr.str) + strlen(yyvsp[0].lstr.str) + 1];
strcpy(yyval.lstr.str, yyvsp[-1].lstr.str);
@@ -3791,7 +3775,7 @@ case 39:
}
break;
case 40:
-#line 454 "pic.y"
+#line 460 "/home/cjk/groff/pic/pic.y"
{
yyval.lstr.str = new char[GDIGITS + 1];
sprintf(yyval.lstr.str, "%g", yyvsp[0].x);
@@ -3800,11 +3784,11 @@ case 40:
}
break;
case 41:
-#line 461 "pic.y"
+#line 467 "/home/cjk/groff/pic/pic.y"
{ yyval.lstr = yyvsp[0].lstr; }
break;
case 42:
-#line 463 "pic.y"
+#line 469 "/home/cjk/groff/pic/pic.y"
{
yyval.lstr.str = new char[GDIGITS + 2 + GDIGITS + 1];
sprintf(yyval.lstr.str, "%g, %g", yyvsp[0].pair.x, yyvsp[0].pair.y);
@@ -3813,31 +3797,31 @@ case 42:
}
break;
case 43:
-#line 472 "pic.y"
+#line 478 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 1; }
break;
case 44:
-#line 474 "pic.y"
+#line 480 "/home/cjk/groff/pic/pic.y"
{ delim_flag = 0; yyval.if_data.x = yyvsp[-3].x; yyval.if_data.body = yyvsp[0].str; }
break;
case 45:
-#line 479 "pic.y"
+#line 485 "/home/cjk/groff/pic/pic.y"
{ yyval.str = 0; }
break;
case 46:
-#line 481 "pic.y"
+#line 487 "/home/cjk/groff/pic/pic.y"
{ yyval.str = yyvsp[0].lstr.str; }
break;
case 47:
-#line 486 "pic.y"
+#line 492 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[0].x; }
break;
case 48:
-#line 488 "pic.y"
+#line 494 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[0].x; }
break;
case 49:
-#line 493 "pic.y"
+#line 499 "/home/cjk/groff/pic/pic.y"
{
yyval.x = strcmp(yyvsp[-2].lstr.str, yyvsp[0].lstr.str) == 0;
a_delete yyvsp[-2].lstr.str;
@@ -3845,7 +3829,7 @@ case 49:
}
break;
case 50:
-#line 499 "pic.y"
+#line 505 "/home/cjk/groff/pic/pic.y"
{
yyval.x = strcmp(yyvsp[-2].lstr.str, yyvsp[0].lstr.str) != 0;
a_delete yyvsp[-2].lstr.str;
@@ -3853,47 +3837,47 @@ case 50:
}
break;
case 51:
-#line 505 "pic.y"
+#line 511 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[-2].x != 0.0 && yyvsp[0].x != 0.0); }
break;
case 52:
-#line 507 "pic.y"
+#line 513 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[-2].x != 0.0 && yyvsp[0].x != 0.0); }
break;
case 53:
-#line 509 "pic.y"
+#line 515 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[-2].x != 0.0 && yyvsp[0].x != 0.0); }
break;
case 54:
-#line 511 "pic.y"
+#line 517 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[-2].x != 0.0 || yyvsp[0].x != 0.0); }
break;
case 55:
-#line 513 "pic.y"
+#line 519 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[-2].x != 0.0 || yyvsp[0].x != 0.0); }
break;
case 56:
-#line 515 "pic.y"
+#line 521 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[-2].x != 0.0 || yyvsp[0].x != 0.0); }
break;
case 57:
-#line 517 "pic.y"
+#line 523 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[0].x == 0.0); }
break;
case 58:
-#line 523 "pic.y"
+#line 529 "/home/cjk/groff/pic/pic.y"
{ yyval.by.val = 1.0; yyval.by.is_multiplicative = 0; }
break;
case 59:
-#line 525 "pic.y"
+#line 531 "/home/cjk/groff/pic/pic.y"
{ yyval.by.val = yyvsp[0].x; yyval.by.is_multiplicative = 0; }
break;
case 60:
-#line 527 "pic.y"
+#line 533 "/home/cjk/groff/pic/pic.y"
{ yyval.by.val = yyvsp[0].x; yyval.by.is_multiplicative = 1; }
break;
case 61:
-#line 532 "pic.y"
+#line 538 "/home/cjk/groff/pic/pic.y"
{
yyval.pl.obj = yyvsp[0].spec->make_object(&current_position,
&current_direction);
@@ -3909,11 +3893,11 @@ case 61:
}
break;
case 62:
-#line 546 "pic.y"
+#line 552 "/home/cjk/groff/pic/pic.y"
{ yyval.pl = yyvsp[0].pl; define_label(yyvsp[-3].str, & yyval.pl); a_delete yyvsp[-3].str; }
break;
case 63:
-#line 548 "pic.y"
+#line 554 "/home/cjk/groff/pic/pic.y"
{
yyval.pl.obj = 0;
yyval.pl.x = yyvsp[0].pair.x;
@@ -3923,7 +3907,7 @@ case 63:
}
break;
case 64:
-#line 556 "pic.y"
+#line 562 "/home/cjk/groff/pic/pic.y"
{
yyval.pl = yyvsp[0].pl;
define_label(yyvsp[-3].str, & yyval.pl);
@@ -3931,7 +3915,7 @@ case 64:
}
break;
case 65:
-#line 562 "pic.y"
+#line 568 "/home/cjk/groff/pic/pic.y"
{
yyval.state.x = current_position.x;
yyval.state.y = current_position.y;
@@ -3939,7 +3923,7 @@ case 65:
}
break;
case 66:
-#line 568 "pic.y"
+#line 574 "/home/cjk/groff/pic/pic.y"
{
current_position.x = yyvsp[-2].state.x;
current_position.y = yyvsp[-2].state.y;
@@ -3947,13 +3931,13 @@ case 66:
}
break;
case 67:
-#line 574 "pic.y"
+#line 580 "/home/cjk/groff/pic/pic.y"
{
yyval.pl = yyvsp[-3].pl;
}
break;
case 68:
-#line 578 "pic.y"
+#line 584 "/home/cjk/groff/pic/pic.y"
{
yyval.pl.obj = 0;
yyval.pl.x = current_position.x;
@@ -3961,40 +3945,40 @@ case 68:
}
break;
case 69:
-#line 587 "pic.y"
+#line 593 "/home/cjk/groff/pic/pic.y"
{}
break;
case 70:
-#line 589 "pic.y"
+#line 595 "/home/cjk/groff/pic/pic.y"
{}
break;
case 71:
-#line 594 "pic.y"
+#line 600 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(BOX_OBJECT);
}
break;
case 72:
-#line 598 "pic.y"
+#line 604 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(CIRCLE_OBJECT);
}
break;
case 73:
-#line 602 "pic.y"
+#line 608 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(ELLIPSE_OBJECT);
}
break;
case 74:
-#line 606 "pic.y"
+#line 612 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(ARC_OBJECT);
yyval.spec->dir = current_direction;
}
break;
case 75:
-#line 611 "pic.y"
+#line 617 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(LINE_OBJECT);
lookup_variable("lineht", & yyval.spec->segment_height);
@@ -4003,7 +3987,7 @@ case 75:
}
break;
case 76:
-#line 618 "pic.y"
+#line 624 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(ARROW_OBJECT);
lookup_variable("lineht", & yyval.spec->segment_height);
@@ -4012,7 +3996,7 @@ case 76:
}
break;
case 77:
-#line 625 "pic.y"
+#line 631 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(MOVE_OBJECT);
lookup_variable("moveht", & yyval.spec->segment_height);
@@ -4021,7 +4005,7 @@ case 77:
}
break;
case 78:
-#line 632 "pic.y"
+#line 638 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(SPLINE_OBJECT);
lookup_variable("lineht", & yyval.spec->segment_height);
@@ -4030,21 +4014,21 @@ case 78:
}
break;
case 79:
-#line 639 "pic.y"
+#line 645 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(TEXT_OBJECT);
yyval.spec->text = new text_item(yyvsp[0].lstr.str, yyvsp[0].lstr.filename, yyvsp[0].lstr.lineno);
}
break;
case 80:
-#line 644 "pic.y"
+#line 650 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(TEXT_OBJECT);
yyval.spec->text = new text_item(format_number(0, yyvsp[0].x), 0, -1);
}
break;
case 81:
-#line 649 "pic.y"
+#line 655 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = new object_spec(TEXT_OBJECT);
yyval.spec->text = new text_item(format_number(yyvsp[0].lstr.str, yyvsp[-1].x),
@@ -4053,7 +4037,7 @@ case 81:
}
break;
case 82:
-#line 656 "pic.y"
+#line 662 "/home/cjk/groff/pic/pic.y"
{
saved_state *p = new saved_state;
yyval.pstate = p;
@@ -4070,7 +4054,7 @@ case 82:
}
break;
case 83:
-#line 671 "pic.y"
+#line 677 "/home/cjk/groff/pic/pic.y"
{
current_position.x = yyvsp[-2].pstate->x;
current_position.y = yyvsp[-2].pstate->y;
@@ -4084,7 +4068,7 @@ case 83:
}
break;
case 84:
-#line 683 "pic.y"
+#line 689 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->height = yyvsp[0].x;
@@ -4092,7 +4076,7 @@ case 84:
}
break;
case 85:
-#line 689 "pic.y"
+#line 695 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->radius = yyvsp[0].x;
@@ -4100,7 +4084,7 @@ case 85:
}
break;
case 86:
-#line 695 "pic.y"
+#line 701 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->width = yyvsp[0].x;
@@ -4108,7 +4092,7 @@ case 86:
}
break;
case 87:
-#line 701 "pic.y"
+#line 707 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->radius = yyvsp[0].x/2.0;
@@ -4116,7 +4100,7 @@ case 87:
}
break;
case 88:
-#line 707 "pic.y"
+#line 713 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= HAS_SEGMENT;
@@ -4137,7 +4121,7 @@ case 88:
}
break;
case 89:
-#line 726 "pic.y"
+#line 732 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->dir = UP_DIRECTION;
@@ -4146,7 +4130,7 @@ case 89:
}
break;
case 90:
-#line 733 "pic.y"
+#line 739 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->dir = UP_DIRECTION;
@@ -4155,7 +4139,7 @@ case 90:
}
break;
case 91:
-#line 740 "pic.y"
+#line 746 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->dir = DOWN_DIRECTION;
@@ -4164,7 +4148,7 @@ case 91:
}
break;
case 92:
-#line 747 "pic.y"
+#line 753 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->dir = DOWN_DIRECTION;
@@ -4173,7 +4157,7 @@ case 92:
}
break;
case 93:
-#line 754 "pic.y"
+#line 760 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->dir = RIGHT_DIRECTION;
@@ -4182,7 +4166,7 @@ case 93:
}
break;
case 94:
-#line 761 "pic.y"
+#line 767 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->dir = RIGHT_DIRECTION;
@@ -4191,7 +4175,7 @@ case 94:
}
break;
case 95:
-#line 768 "pic.y"
+#line 774 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->dir = LEFT_DIRECTION;
@@ -4200,7 +4184,7 @@ case 95:
}
break;
case 96:
-#line 775 "pic.y"
+#line 781 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->dir = LEFT_DIRECTION;
@@ -4209,7 +4193,7 @@ case 96:
}
break;
case 97:
-#line 782 "pic.y"
+#line 788 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= HAS_FROM;
@@ -4218,7 +4202,7 @@ case 97:
}
break;
case 98:
-#line 789 "pic.y"
+#line 795 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
if (yyval.spec->flags & HAS_SEGMENT)
@@ -4235,7 +4219,7 @@ case 98:
}
break;
case 99:
-#line 804 "pic.y"
+#line 810 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= HAS_AT;
@@ -4249,7 +4233,7 @@ case 99:
}
break;
case 100:
-#line 816 "pic.y"
+#line 822 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= HAS_WITH;
@@ -4257,7 +4241,7 @@ case 100:
}
break;
case 101:
-#line 822 "pic.y"
+#line 828 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= HAS_SEGMENT;
@@ -4266,7 +4250,7 @@ case 101:
}
break;
case 102:
-#line 829 "pic.y"
+#line 835 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
if (yyval.spec->flags & HAS_SEGMENT) {
@@ -4280,7 +4264,7 @@ case 102:
}
break;
case 103:
-#line 841 "pic.y"
+#line 847 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= IS_DOTTED;
@@ -4288,7 +4272,7 @@ case 103:
}
break;
case 104:
-#line 847 "pic.y"
+#line 853 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= IS_DOTTED;
@@ -4296,7 +4280,7 @@ case 104:
}
break;
case 105:
-#line 853 "pic.y"
+#line 859 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= IS_DASHED;
@@ -4304,7 +4288,7 @@ case 105:
}
break;
case 106:
-#line 859 "pic.y"
+#line 865 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= IS_DASHED;
@@ -4312,14 +4296,14 @@ case 106:
}
break;
case 107:
-#line 865 "pic.y"
+#line 871 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= IS_DEFAULT_FILLED;
}
break;
case 108:
-#line 870 "pic.y"
+#line 876 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= IS_FILLED;
@@ -4327,7 +4311,7 @@ case 108:
}
break;
case 109:
-#line 876 "pic.y"
+#line 882 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
/* line chop chop means line chop 0 chop 0*/
@@ -4345,7 +4329,7 @@ case 109:
}
break;
case 110:
-#line 892 "pic.y"
+#line 898 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
if (yyval.spec->flags & IS_DEFAULT_CHOPPED) {
@@ -4364,56 +4348,56 @@ case 110:
}
break;
case 111:
-#line 909 "pic.y"
+#line 915 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= IS_SAME;
}
break;
case 112:
-#line 914 "pic.y"
+#line 920 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= IS_INVISIBLE;
}
break;
case 113:
-#line 919 "pic.y"
+#line 925 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= HAS_LEFT_ARROW_HEAD;
}
break;
case 114:
-#line 924 "pic.y"
+#line 930 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= HAS_RIGHT_ARROW_HEAD;
}
break;
case 115:
-#line 929 "pic.y"
+#line 935 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= (HAS_LEFT_ARROW_HEAD|HAS_RIGHT_ARROW_HEAD);
}
break;
case 116:
-#line 934 "pic.y"
+#line 940 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= IS_CLOCKWISE;
}
break;
case 117:
-#line 939 "pic.y"
+#line 945 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags &= ~IS_CLOCKWISE;
}
break;
case 118:
-#line 944 "pic.y"
+#line 950 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
text_item **p;
@@ -4423,7 +4407,7 @@ case 118:
}
break;
case 119:
-#line 952 "pic.y"
+#line 958 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
if (yyval.spec->text) {
@@ -4435,7 +4419,7 @@ case 119:
}
break;
case 120:
-#line 962 "pic.y"
+#line 968 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
if (yyval.spec->text) {
@@ -4447,7 +4431,7 @@ case 120:
}
break;
case 121:
-#line 972 "pic.y"
+#line 978 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
if (yyval.spec->text) {
@@ -4459,7 +4443,7 @@ case 121:
}
break;
case 122:
-#line 982 "pic.y"
+#line 988 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
if (yyval.spec->text) {
@@ -4471,7 +4455,7 @@ case 122:
}
break;
case 123:
-#line 992 "pic.y"
+#line 998 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-2].spec;
yyval.spec->flags |= HAS_THICKNESS;
@@ -4479,20 +4463,20 @@ case 123:
}
break;
case 124:
-#line 998 "pic.y"
+#line 1004 "/home/cjk/groff/pic/pic.y"
{
yyval.spec = yyvsp[-1].spec;
yyval.spec->flags |= IS_ALIGNED;
}
break;
case 125:
-#line 1006 "pic.y"
+#line 1012 "/home/cjk/groff/pic/pic.y"
{
yyval.lstr = yyvsp[0].lstr;
}
break;
case 126:
-#line 1010 "pic.y"
+#line 1016 "/home/cjk/groff/pic/pic.y"
{
yyval.lstr.filename = yyvsp[-2].lstr.filename;
yyval.lstr.lineno = yyvsp[-2].lstr.lineno;
@@ -4502,7 +4486,7 @@ case 126:
}
break;
case 127:
-#line 1021 "pic.y"
+#line 1027 "/home/cjk/groff/pic/pic.y"
{
yyval.dv.v = 0;
yyval.dv.nv = 0;
@@ -4510,7 +4494,7 @@ case 127:
}
break;
case 128:
-#line 1027 "pic.y"
+#line 1033 "/home/cjk/groff/pic/pic.y"
{
yyval.dv = yyvsp[-2].dv;
if (yyval.dv.nv >= yyval.dv.maxv) {
@@ -4531,11 +4515,11 @@ case 128:
}
break;
case 129:
-#line 1049 "pic.y"
+#line 1055 "/home/cjk/groff/pic/pic.y"
{ yyval.pair = yyvsp[0].pair; }
break;
case 130:
-#line 1051 "pic.y"
+#line 1057 "/home/cjk/groff/pic/pic.y"
{
position pos = yyvsp[0].pl;
yyval.pair.x = pos.x;
@@ -4543,58 +4527,58 @@ case 130:
}
break;
case 131:
-#line 1060 "pic.y"
+#line 1066 "/home/cjk/groff/pic/pic.y"
{ yyval.pair = yyvsp[0].pair; }
break;
case 132:
-#line 1062 "pic.y"
+#line 1068 "/home/cjk/groff/pic/pic.y"
{
yyval.pair.x = yyvsp[-2].pair.x + yyvsp[0].pair.x;
yyval.pair.y = yyvsp[-2].pair.y + yyvsp[0].pair.y;
}
break;
case 133:
-#line 1067 "pic.y"
+#line 1073 "/home/cjk/groff/pic/pic.y"
{
yyval.pair.x = yyvsp[-2].pair.x - yyvsp[0].pair.x;
yyval.pair.y = yyvsp[-2].pair.y - yyvsp[0].pair.y;
}
break;
case 134:
-#line 1072 "pic.y"
+#line 1078 "/home/cjk/groff/pic/pic.y"
{
yyval.pair.x = yyvsp[-3].pair.x;
yyval.pair.y = yyvsp[-1].pair.y;
}
break;
case 135:
-#line 1077 "pic.y"
+#line 1083 "/home/cjk/groff/pic/pic.y"
{
yyval.pair.x = (1.0 - yyvsp[-4].x)*yyvsp[-2].pair.x + yyvsp[-4].x*yyvsp[0].pair.x;
yyval.pair.y = (1.0 - yyvsp[-4].x)*yyvsp[-2].pair.y + yyvsp[-4].x*yyvsp[0].pair.y;
}
break;
case 136:
-#line 1082 "pic.y"
+#line 1088 "/home/cjk/groff/pic/pic.y"
{
yyval.pair.x = (1.0 - yyvsp[-5].x)*yyvsp[-3].pair.x + yyvsp[-5].x*yyvsp[-1].pair.x;
yyval.pair.y = (1.0 - yyvsp[-5].x)*yyvsp[-3].pair.y + yyvsp[-5].x*yyvsp[-1].pair.y;
}
break;
case 139:
-#line 1095 "pic.y"
+#line 1101 "/home/cjk/groff/pic/pic.y"
{ yyval.pair.x = yyvsp[-2].x; yyval.pair.y = yyvsp[0].x; }
break;
case 140:
-#line 1097 "pic.y"
+#line 1103 "/home/cjk/groff/pic/pic.y"
{ yyval.pair = yyvsp[-1].pair; }
break;
case 141:
-#line 1102 "pic.y"
+#line 1108 "/home/cjk/groff/pic/pic.y"
{ yyval.pl = yyvsp[0].pl; }
break;
case 142:
-#line 1104 "pic.y"
+#line 1110 "/home/cjk/groff/pic/pic.y"
{
path pth(yyvsp[0].crn);
if (!pth.follow(yyvsp[-1].pl, & yyval.pl))
@@ -4602,7 +4586,7 @@ case 142:
}
break;
case 143:
-#line 1110 "pic.y"
+#line 1116 "/home/cjk/groff/pic/pic.y"
{
path pth(yyvsp[-1].crn);
if (!pth.follow(yyvsp[0].pl, & yyval.pl))
@@ -4610,7 +4594,7 @@ case 143:
}
break;
case 144:
-#line 1116 "pic.y"
+#line 1122 "/home/cjk/groff/pic/pic.y"
{
path pth(yyvsp[-2].crn);
if (!pth.follow(yyvsp[0].pl, & yyval.pl))
@@ -4618,7 +4602,7 @@ case 144:
}
break;
case 145:
-#line 1122 "pic.y"
+#line 1128 "/home/cjk/groff/pic/pic.y"
{
yyval.pl.x = current_position.x;
yyval.pl.y = current_position.y;
@@ -4626,7 +4610,7 @@ case 145:
}
break;
case 146:
-#line 1131 "pic.y"
+#line 1137 "/home/cjk/groff/pic/pic.y"
{
place *p = lookup_label(yyvsp[0].str);
if (!p) {
@@ -4638,13 +4622,13 @@ case 146:
}
break;
case 147:
-#line 1141 "pic.y"
+#line 1147 "/home/cjk/groff/pic/pic.y"
{
yyval.pl.obj = yyvsp[0].obj;
}
break;
case 148:
-#line 1145 "pic.y"
+#line 1151 "/home/cjk/groff/pic/pic.y"
{
path pth(yyvsp[0].str);
if (!pth.follow(yyvsp[-2].pl, & yyval.pl))
@@ -4652,26 +4636,26 @@ case 148:
}
break;
case 149:
-#line 1154 "pic.y"
+#line 1160 "/home/cjk/groff/pic/pic.y"
{ yyval.n = yyvsp[0].n; }
break;
case 150:
-#line 1156 "pic.y"
+#line 1162 "/home/cjk/groff/pic/pic.y"
{
/* XXX Check for overflow (and non-integers?).*/
yyval.n = (int)yyvsp[-1].x;
}
break;
case 151:
-#line 1164 "pic.y"
+#line 1170 "/home/cjk/groff/pic/pic.y"
{ yyval.n = 1; }
break;
case 152:
-#line 1166 "pic.y"
+#line 1172 "/home/cjk/groff/pic/pic.y"
{ yyval.n = yyvsp[-1].n; }
break;
case 153:
-#line 1171 "pic.y"
+#line 1177 "/home/cjk/groff/pic/pic.y"
{
int count = 0;
object *p;
@@ -4688,7 +4672,7 @@ case 153:
}
break;
case 154:
-#line 1186 "pic.y"
+#line 1192 "/home/cjk/groff/pic/pic.y"
{
int count = 0;
object *p;
@@ -4705,88 +4689,88 @@ case 154:
}
break;
case 155:
-#line 1204 "pic.y"
+#line 1210 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = BOX_OBJECT; }
break;
case 156:
-#line 1206 "pic.y"
+#line 1212 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = CIRCLE_OBJECT; }
break;
case 157:
-#line 1208 "pic.y"
+#line 1214 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = ELLIPSE_OBJECT; }
break;
case 158:
-#line 1210 "pic.y"
+#line 1216 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = ARC_OBJECT; }
break;
case 159:
-#line 1212 "pic.y"
+#line 1218 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = LINE_OBJECT; }
break;
case 160:
-#line 1214 "pic.y"
+#line 1220 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = ARROW_OBJECT; }
break;
case 161:
-#line 1216 "pic.y"
+#line 1222 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = SPLINE_OBJECT; }
break;
case 162:
-#line 1218 "pic.y"
+#line 1224 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = BLOCK_OBJECT; }
break;
case 163:
-#line 1220 "pic.y"
+#line 1226 "/home/cjk/groff/pic/pic.y"
{ yyval.obtype = TEXT_OBJECT; }
break;
case 164:
-#line 1225 "pic.y"
+#line 1231 "/home/cjk/groff/pic/pic.y"
{
yyval.pth = new path(yyvsp[0].str);
}
break;
case 165:
-#line 1229 "pic.y"
+#line 1235 "/home/cjk/groff/pic/pic.y"
{
yyval.pth = yyvsp[-2].pth;
yyval.pth->append(yyvsp[0].str);
}
break;
case 166:
-#line 1237 "pic.y"
+#line 1243 "/home/cjk/groff/pic/pic.y"
{
yyval.pth = new path(yyvsp[0].crn);
}
break;
case 167:
-#line 1244 "pic.y"
+#line 1250 "/home/cjk/groff/pic/pic.y"
{
yyval.pth = yyvsp[0].pth;
}
break;
case 168:
-#line 1248 "pic.y"
+#line 1254 "/home/cjk/groff/pic/pic.y"
{
yyval.pth = yyvsp[-1].pth;
yyval.pth->append(yyvsp[0].crn);
}
break;
case 169:
-#line 1256 "pic.y"
+#line 1262 "/home/cjk/groff/pic/pic.y"
{
yyval.pth = yyvsp[0].pth;
}
break;
case 170:
-#line 1260 "pic.y"
+#line 1266 "/home/cjk/groff/pic/pic.y"
{
yyval.pth = yyvsp[-3].pth;
yyval.pth->set_ypath(yyvsp[-1].pth);
}
break;
case 171:
-#line 1266 "pic.y"
+#line 1272 "/home/cjk/groff/pic/pic.y"
{
lex_warning("`%1%2 last %3' in `with' argument ignored",
yyvsp[-3].n, ordinal_postfix(yyvsp[-3].n), object_type_name(yyvsp[-1].obtype));
@@ -4794,7 +4778,7 @@ case 171:
}
break;
case 172:
-#line 1272 "pic.y"
+#line 1278 "/home/cjk/groff/pic/pic.y"
{
lex_warning("`last %1' in `with' argument ignored",
object_type_name(yyvsp[-1].obtype));
@@ -4802,7 +4786,7 @@ case 172:
}
break;
case 173:
-#line 1278 "pic.y"
+#line 1284 "/home/cjk/groff/pic/pic.y"
{
lex_warning("`%1%2 %3' in `with' argument ignored",
yyvsp[-2].n, ordinal_postfix(yyvsp[-2].n), object_type_name(yyvsp[-1].obtype));
@@ -4810,7 +4794,7 @@ case 173:
}
break;
case 174:
-#line 1284 "pic.y"
+#line 1290 "/home/cjk/groff/pic/pic.y"
{
lex_warning("initial `%1' in `with' argument ignored", yyvsp[-1].str);
a_delete yyvsp[-1].str;
@@ -4818,119 +4802,119 @@ case 174:
}
break;
case 175:
-#line 1293 "pic.y"
+#line 1299 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north; }
break;
case 176:
-#line 1295 "pic.y"
+#line 1301 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::east; }
break;
case 177:
-#line 1297 "pic.y"
+#line 1303 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::west; }
break;
case 178:
-#line 1299 "pic.y"
+#line 1305 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::south; }
break;
case 179:
-#line 1301 "pic.y"
+#line 1307 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north_east; }
break;
case 180:
-#line 1303 "pic.y"
+#line 1309 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object:: south_east; }
break;
case 181:
-#line 1305 "pic.y"
+#line 1311 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north_west; }
break;
case 182:
-#line 1307 "pic.y"
+#line 1313 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::south_west; }
break;
case 183:
-#line 1309 "pic.y"
+#line 1315 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::center; }
break;
case 184:
-#line 1311 "pic.y"
+#line 1317 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::start; }
break;
case 185:
-#line 1313 "pic.y"
+#line 1319 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::end; }
break;
case 186:
-#line 1315 "pic.y"
+#line 1321 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north; }
break;
case 187:
-#line 1317 "pic.y"
+#line 1323 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::south; }
break;
case 188:
-#line 1319 "pic.y"
+#line 1325 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::west; }
break;
case 189:
-#line 1321 "pic.y"
+#line 1327 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::east; }
break;
case 190:
-#line 1323 "pic.y"
+#line 1329 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north_west; }
break;
case 191:
-#line 1325 "pic.y"
+#line 1331 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::south_west; }
break;
case 192:
-#line 1327 "pic.y"
+#line 1333 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north_east; }
break;
case 193:
-#line 1329 "pic.y"
+#line 1335 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::south_east; }
break;
case 194:
-#line 1331 "pic.y"
+#line 1337 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::west; }
break;
case 195:
-#line 1333 "pic.y"
+#line 1339 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::east; }
break;
case 196:
-#line 1335 "pic.y"
+#line 1341 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north_west; }
break;
case 197:
-#line 1337 "pic.y"
+#line 1343 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::south_west; }
break;
case 198:
-#line 1339 "pic.y"
+#line 1345 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::north_east; }
break;
case 199:
-#line 1341 "pic.y"
+#line 1347 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::south_east; }
break;
case 200:
-#line 1343 "pic.y"
+#line 1349 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::center; }
break;
case 201:
-#line 1345 "pic.y"
+#line 1351 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::start; }
break;
case 202:
-#line 1347 "pic.y"
+#line 1353 "/home/cjk/groff/pic/pic.y"
{ yyval.crn = &object::end; }
break;
case 203:
-#line 1352 "pic.y"
+#line 1358 "/home/cjk/groff/pic/pic.y"
{
if (!lookup_variable(yyvsp[0].str, & yyval.x)) {
lex_error("there is no variable `%1'", yyvsp[0].str);
@@ -4940,11 +4924,11 @@ case 203:
}
break;
case 204:
-#line 1360 "pic.y"
+#line 1366 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[0].x; }
break;
case 205:
-#line 1362 "pic.y"
+#line 1368 "/home/cjk/groff/pic/pic.y"
{
if (yyvsp[-1].pl.obj != 0)
yyval.x = yyvsp[-1].pl.obj->origin().x;
@@ -4953,7 +4937,7 @@ case 205:
}
break;
case 206:
-#line 1369 "pic.y"
+#line 1375 "/home/cjk/groff/pic/pic.y"
{
if (yyvsp[-1].pl.obj != 0)
yyval.x = yyvsp[-1].pl.obj->origin().y;
@@ -4962,7 +4946,7 @@ case 206:
}
break;
case 207:
-#line 1376 "pic.y"
+#line 1382 "/home/cjk/groff/pic/pic.y"
{
if (yyvsp[-1].pl.obj != 0)
yyval.x = yyvsp[-1].pl.obj->height();
@@ -4971,7 +4955,7 @@ case 207:
}
break;
case 208:
-#line 1383 "pic.y"
+#line 1389 "/home/cjk/groff/pic/pic.y"
{
if (yyvsp[-1].pl.obj != 0)
yyval.x = yyvsp[-1].pl.obj->width();
@@ -4980,7 +4964,7 @@ case 208:
}
break;
case 209:
-#line 1390 "pic.y"
+#line 1396 "/home/cjk/groff/pic/pic.y"
{
if (yyvsp[-1].pl.obj != 0)
yyval.x = yyvsp[-1].pl.obj->radius();
@@ -4989,19 +4973,19 @@ case 209:
}
break;
case 210:
-#line 1397 "pic.y"
+#line 1403 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[-2].x + yyvsp[0].x; }
break;
case 211:
-#line 1399 "pic.y"
+#line 1405 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[-2].x - yyvsp[0].x; }
break;
case 212:
-#line 1401 "pic.y"
+#line 1407 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[-2].x * yyvsp[0].x; }
break;
case 213:
-#line 1403 "pic.y"
+#line 1409 "/home/cjk/groff/pic/pic.y"
{
if (yyvsp[0].x == 0.0) {
lex_error("division by zero");
@@ -5011,7 +4995,7 @@ case 213:
}
break;
case 214:
-#line 1411 "pic.y"
+#line 1417 "/home/cjk/groff/pic/pic.y"
{
if (yyvsp[0].x == 0.0) {
lex_error("modulus by zero");
@@ -5021,7 +5005,7 @@ case 214:
}
break;
case 215:
-#line 1419 "pic.y"
+#line 1425 "/home/cjk/groff/pic/pic.y"
{
errno = 0;
yyval.x = pow(yyvsp[-2].x, yyvsp[0].x);
@@ -5036,15 +5020,15 @@ case 215:
}
break;
case 216:
-#line 1432 "pic.y"
+#line 1438 "/home/cjk/groff/pic/pic.y"
{ yyval.x = -yyvsp[0].x; }
break;
case 217:
-#line 1434 "pic.y"
+#line 1440 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[-1].x; }
break;
case 218:
-#line 1436 "pic.y"
+#line 1442 "/home/cjk/groff/pic/pic.y"
{
errno = 0;
yyval.x = sin(yyvsp[-1].x);
@@ -5055,7 +5039,7 @@ case 218:
}
break;
case 219:
-#line 1445 "pic.y"
+#line 1451 "/home/cjk/groff/pic/pic.y"
{
errno = 0;
yyval.x = cos(yyvsp[-1].x);
@@ -5066,7 +5050,7 @@ case 219:
}
break;
case 220:
-#line 1454 "pic.y"
+#line 1460 "/home/cjk/groff/pic/pic.y"
{
errno = 0;
yyval.x = atan2(yyvsp[-3].x, yyvsp[-1].x);
@@ -5081,7 +5065,7 @@ case 220:
}
break;
case 221:
-#line 1467 "pic.y"
+#line 1473 "/home/cjk/groff/pic/pic.y"
{
errno = 0;
yyval.x = log10(yyvsp[-1].x);
@@ -5092,7 +5076,7 @@ case 221:
}
break;
case 222:
-#line 1476 "pic.y"
+#line 1482 "/home/cjk/groff/pic/pic.y"
{
errno = 0;
yyval.x = pow(10.0, yyvsp[-1].x);
@@ -5103,7 +5087,7 @@ case 222:
}
break;
case 223:
-#line 1485 "pic.y"
+#line 1491 "/home/cjk/groff/pic/pic.y"
{
errno = 0;
yyval.x = sqrt(yyvsp[-1].x);
@@ -5114,23 +5098,23 @@ case 223:
}
break;
case 224:
-#line 1494 "pic.y"
+#line 1500 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[-3].x > yyvsp[-1].x ? yyvsp[-3].x : yyvsp[-1].x; }
break;
case 225:
-#line 1496 "pic.y"
+#line 1502 "/home/cjk/groff/pic/pic.y"
{ yyval.x = yyvsp[-3].x < yyvsp[-1].x ? yyvsp[-3].x : yyvsp[-1].x; }
break;
case 226:
-#line 1498 "pic.y"
+#line 1504 "/home/cjk/groff/pic/pic.y"
{ yyval.x = floor(yyvsp[-1].x); }
break;
case 227:
-#line 1500 "pic.y"
+#line 1506 "/home/cjk/groff/pic/pic.y"
{ yyval.x = 1.0 + floor(((rand()&0x7fff)/double(0x7fff))*yyvsp[-1].x); }
break;
case 228:
-#line 1502 "pic.y"
+#line 1508 "/home/cjk/groff/pic/pic.y"
{
/* return a random number in the range [0,1) */
/* portable, but not very random */
@@ -5138,42 +5122,46 @@ case 228:
}
break;
case 229:
-#line 1508 "pic.y"
-{ yyval.x = (yyvsp[-2].x < yyvsp[0].x); }
+#line 1514 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = 0; srand((unsigned int)yyvsp[-1].x); }
break;
case 230:
-#line 1510 "pic.y"
-{ yyval.x = (yyvsp[-2].x <= yyvsp[0].x); }
+#line 1516 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x < yyvsp[0].x); }
break;
case 231:
-#line 1512 "pic.y"
-{ yyval.x = (yyvsp[-2].x > yyvsp[0].x); }
+#line 1518 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x <= yyvsp[0].x); }
break;
case 232:
-#line 1514 "pic.y"
-{ yyval.x = (yyvsp[-2].x >= yyvsp[0].x); }
+#line 1520 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x > yyvsp[0].x); }
break;
case 233:
-#line 1516 "pic.y"
-{ yyval.x = (yyvsp[-2].x == yyvsp[0].x); }
+#line 1522 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x >= yyvsp[0].x); }
break;
case 234:
-#line 1518 "pic.y"
-{ yyval.x = (yyvsp[-2].x != yyvsp[0].x); }
+#line 1524 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x == yyvsp[0].x); }
break;
case 235:
-#line 1520 "pic.y"
-{ yyval.x = (yyvsp[-2].x != 0.0 && yyvsp[0].x != 0.0); }
+#line 1526 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x != yyvsp[0].x); }
break;
case 236:
-#line 1522 "pic.y"
-{ yyval.x = (yyvsp[-2].x != 0.0 || yyvsp[0].x != 0.0); }
+#line 1528 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x != 0.0 && yyvsp[0].x != 0.0); }
break;
case 237:
-#line 1524 "pic.y"
+#line 1530 "/home/cjk/groff/pic/pic.y"
+{ yyval.x = (yyvsp[-2].x != 0.0 || yyvsp[0].x != 0.0); }
+break;
+case 238:
+#line 1532 "/home/cjk/groff/pic/pic.y"
{ yyval.x = (yyvsp[0].x == 0.0); }
break;
-#line 5174 "y.tab.c"
+#line 5165 "y.tab.c"
}
yyssp -= yym;
yystate = *yyssp;
@@ -5183,8 +5171,8 @@ break;
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: after reduction, shifting from state 0 to\
- state %d\n", YYFINAL);
+ printf("%sdebug: after reduction, shifting from state 0 to\
+ state %d\n", YYPREFIX, YYFINAL);
#endif
yystate = YYFINAL;
*++yyssp = YYFINAL;
@@ -5198,8 +5186,8 @@ break;
yys = 0;
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, reading %d (%s)\n",
- YYFINAL, yychar, yys);
+ printf("%sdebug: state %d, reading %d (%s)\n",
+ YYPREFIX, YYFINAL, yychar, yys);
}
#endif
}
@@ -5213,17 +5201,12 @@ break;
yystate = yydgoto[yym];
#if YYDEBUG
if (yydebug)
- printf("yydebug: after reduction, shifting from state %d \
-to state %d\n", *yyssp, yystate);
+ printf("%sdebug: after reduction, shifting from state %d \
+to state %d\n", YYPREFIX, *yyssp, yystate);
#endif
- if (yyssp >= yysse)
+ if (yyssp >= yyss + yystacksize - 1)
{
- int depth = yyssp - yyss;
- if (yygrow () != 0)
- goto yyoverflow;
- yysse = yyss + yystacksize - 1;
- yyssp = yyss + depth;
- yyvsp = yyvs + depth;
+ goto yyoverflow;
}
*++yyssp = yystate;
*++yyvsp = yyval;
@@ -5235,52 +5218,3 @@ yyabort:
yyaccept:
return (0);
}
-
-static int
-yygrow ()
-{
- int old_stacksize = yystacksize;
- short *new_yyss;
- YYSTYPE *new_yyvs;
-
- if (yystacksize >= YYMAXDEPTH)
- return (1);
- yystacksize *= 2;
- if (yystacksize > YYMAXDEPTH)
- yystacksize = YYMAXDEPTH;
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: growing stack size from %d to %d\n",
- old_stacksize, yystacksize);
-#endif
- new_yyss = (short *) yyrealloc (yyss, yystacksize * sizeof (short));
- if (new_yyss == 0)
- return (1);
- new_yyvs = (YYSTYPE *) yyrealloc (yyvs, yystacksize * sizeof (YYSTYPE));
- if (new_yyvs == 0)
- {
- yyfree (new_yyss);
- return (1);
- }
- yyss = new_yyss;
- yyvs = new_yyvs;
- return (0);
-}
-
-static YYPTR
-YYDEFUN (yymalloc, (bytes), unsigned bytes)
-{
- YYPTR ptr = (YYPTR) malloc (bytes);
- if (ptr != 0) return (ptr);
- yyerror ("yyparse: memory exhausted");
- return (0);
-}
-
-static YYPTR
-YYDEFUN (yyrealloc, (old, bytes), YYPTR old YYAND unsigned bytes)
-{
- YYPTR ptr = (YYPTR) realloc (old, bytes);
- if (ptr != 0) return (ptr);
- yyerror ("yyparse: memory exhausted");
- return (0);
-}
diff --git a/pic/pic.h b/src/preproc/pic/pic.h
index 77e59c7e7..77e59c7e7 100644
--- a/pic/pic.h
+++ b/src/preproc/pic/pic.h
diff --git a/pic/pic.man b/src/preproc/pic/pic.man
index 70ab94631..22481019a 100644
--- a/pic/pic.man
+++ b/src/preproc/pic/pic.man
@@ -472,6 +472,9 @@ The syntax for expressions has been significantly extended:
.IR x ;
deprecated)
.br
+.BI srand( x )
+(set the random number seed)
+.br
.BI max( e1 , \ e2 )
.br
.BI min( e1 , \ e2 )
diff --git a/pic/pic.tab.h b/src/preproc/pic/pic.tab.h
index c71bdfd2c..2a3f9d816 100644..100755
--- a/pic/pic.tab.h
+++ b/src/preproc/pic/pic.tab.h
@@ -73,41 +73,42 @@
#define K_MIN 329
#define INT 330
#define RAND 331
-#define COPY 332
-#define THRU 333
-#define TOP 334
-#define BOTTOM 335
-#define UPPER 336
-#define LOWER 337
-#define SH 338
-#define PRINT 339
-#define CW 340
-#define CCW 341
-#define FOR 342
-#define DO 343
-#define IF 344
-#define ELSE 345
-#define ANDAND 346
-#define OROR 347
-#define NOTEQUAL 348
-#define EQUALEQUAL 349
-#define LESSEQUAL 350
-#define GREATEREQUAL 351
-#define LEFT_CORNER 352
-#define RIGHT_CORNER 353
-#define CENTER 354
-#define END 355
-#define START 356
-#define RESET 357
-#define UNTIL 358
-#define PLOT 359
-#define THICKNESS 360
-#define FILL 361
-#define ALIGNED 362
-#define SPRINTF 363
-#define COMMAND 364
-#define DEFINE 365
-#define UNDEF 366
+#define SRAND 332
+#define COPY 333
+#define THRU 334
+#define TOP 335
+#define BOTTOM 336
+#define UPPER 337
+#define LOWER 338
+#define SH 339
+#define PRINT 340
+#define CW 341
+#define CCW 342
+#define FOR 343
+#define DO 344
+#define IF 345
+#define ELSE 346
+#define ANDAND 347
+#define OROR 348
+#define NOTEQUAL 349
+#define EQUALEQUAL 350
+#define LESSEQUAL 351
+#define GREATEREQUAL 352
+#define LEFT_CORNER 353
+#define RIGHT_CORNER 354
+#define CENTER 355
+#define END 356
+#define START 357
+#define RESET 358
+#define UNTIL 359
+#define PLOT 360
+#define THICKNESS 361
+#define FILL 362
+#define ALIGNED 363
+#define SPRINTF 364
+#define COMMAND 365
+#define DEFINE 366
+#define UNDEF 367
typedef union {
char *str;
int n;
diff --git a/pic/pic.y b/src/preproc/pic/pic.y
index 46f1a8d96..2477085c0 100644
--- a/pic/pic.y
+++ b/src/preproc/pic/pic.y
@@ -37,8 +37,10 @@ extern "C" {
#endif
#undef rand
+#undef srand
extern "C" {
int rand();
+ void srand(unsigned int);
}
/* Maximum number of characters produced by printf("%g") */
@@ -171,6 +173,7 @@ char *do_sprintf(const char *form, const double *v, int nv);
%token K_MIN
%token INT
%token RAND
+%token SRAND
%token COPY
%token THRU
%token TOP
@@ -225,7 +228,7 @@ parses properly. */
%left CHOP DASHED DOTTED UP DOWN FILL
%left LABEL
-%left VARIABLE NUMBER '(' SIN COS ATAN2 LOG EXP SQRT K_MAX K_MIN INT RAND LAST
+%left VARIABLE NUMBER '(' SIN COS ATAN2 LOG EXP SQRT K_MAX K_MIN INT RAND SRAND LAST
%left ORDINAL HERE '`'
/* these need to be lower than '-' */
@@ -1507,6 +1510,8 @@ expr:
/* portable, but not very random */
$$ = (rand() & 0x7fff) / double(0x8000);
}
+ | SRAND '(' any_expr ')'
+ { $$ = 0; srand((unsigned int)$3); }
| expr '<' expr
{ $$ = ($1 < $3); }
| expr LESSEQUAL expr
diff --git a/pic/position.h b/src/preproc/pic/position.h
index ab7d5469c..ab7d5469c 100644
--- a/pic/position.h
+++ b/src/preproc/pic/position.h
diff --git a/pic/tex.cc b/src/preproc/pic/tex.cc
index 2a91b621c..2a91b621c 100644
--- a/pic/tex.cc
+++ b/src/preproc/pic/tex.cc
diff --git a/pic/text.h b/src/preproc/pic/text.h
index f9d348750..f9d348750 100644
--- a/pic/text.h
+++ b/src/preproc/pic/text.h
diff --git a/pic/troff.cc b/src/preproc/pic/troff.cc
index 16568542b..16568542b 100644
--- a/pic/troff.cc
+++ b/src/preproc/pic/troff.cc
diff --git a/src/preproc/refer/Makefile.sub b/src/preproc/refer/Makefile.sub
new file mode 100644
index 000000000..1631b5e36
--- /dev/null
+++ b/src/preproc/refer/Makefile.sub
@@ -0,0 +1,23 @@
+PROG=refer
+MAN1=refer.n
+XLIBS=$(LIBBIB) $(LIBGROFF)
+MLIB=$(LIBM)
+OBJS=\
+ command.o \
+ label.o \
+ ref.o \
+ refer.o \
+ token.o
+CCSRCS=\
+ $(srcdir)/command.cc \
+ $(srcdir)/ref.cc \
+ $(srcdir)/refer.cc \
+ $(srcdir)/token.cc
+HDRS=\
+ $(srcdir)/refer.h \
+ $(srcdir)/token.h \
+ $(srcdir)/command.h \
+ $(srcdir)/ref.h
+GRAM=$(srcdir)/label.y
+YTABC=$(srcdir)/label.cc
+NAMEPREFIX=$(g)
diff --git a/refer/TODO b/src/preproc/refer/TODO
index 5bbd9bff1..5bbd9bff1 100644
--- a/refer/TODO
+++ b/src/preproc/refer/TODO
diff --git a/refer/command.cc b/src/preproc/refer/command.cc
index 004189eeb..004189eeb 100644
--- a/refer/command.cc
+++ b/src/preproc/refer/command.cc
diff --git a/refer/command.h b/src/preproc/refer/command.h
index c7085db69..c7085db69 100644
--- a/refer/command.h
+++ b/src/preproc/refer/command.h
diff --git a/refer/label.cc b/src/preproc/refer/label.cc
index 5d1ae90bb..90c3777a0 100644..100755
--- a/refer/label.cc
+++ b/src/preproc/refer/label.cc
@@ -1,26 +1,14 @@
-#if defined(__STDC__) || defined(__cplusplus)
-#define YYCONST const
-#define YYPARAMS(x) x
-#define YYDEFUN(name, arglist, args) name(args)
-#define YYAND ,
-#define YYPTR void *
-#else
-#define YYCONST
-#define YYPARAMS(x) ()
-#define YYDEFUN(name, arglist, args) name arglist args;
-#define YYAND ;
-#define YYPTR char *
-#endif
#ifndef lint
-YYCONST static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley +Cygnus.28) 01/20/91";
+/*static char yysccsid[] = "from: @(#)yaccpar 1.9 (Berkeley) 02/21/93";*/
+static char yyrcsid[] = "$Id$";
#endif
#define YYBYACC 1
-#ifndef YYDONT_INCLUDE_STDIO
-#include <stdio.h>
-#endif
-#ifdef __cplusplus
-#include <stdlib.h> /* for malloc/realloc/free */
-#endif
+#define YYMAJOR 1
+#define YYMINOR 9
+#define yyclearin (yychar=(-1))
+#define yyerrok (yyerrflag=0)
+#define YYRECOVERING (yyerrflag!=0)
+#define YYPREFIX "yy"
#line 22 "label.y"
#include "refer.h"
@@ -80,7 +68,7 @@ class field_expr : public expression {
int number;
char name;
public:
- field_expr(char nm, int num) : name(nm), number(num) { }
+ field_expr(char nm, int num) : number(num), name(nm) { }
void evaluate(int, const reference &, string &, substring_position &);
unsigned analyze() { return CONTAINS_VARIABLE; }
};
@@ -139,14 +127,14 @@ class extractor_expr : public unary_expr {
public:
enum { BEFORE = +1, MATCH = 0, AFTER = -1 };
extractor_expr(expression *e, extractor_func *f, int pt)
- : unary_expr(e), func(f), part(pt) { }
+ : unary_expr(e), part(pt), func(f) { }
void evaluate(int, const reference &, string &, substring_position &);
};
class truncate_expr : public unary_expr {
int n;
public:
- truncate_expr(expression *e, int i) : n(i), unary_expr(e) { }
+ truncate_expr(expression *e, int i) : unary_expr(e), n(i) { }
void evaluate(int, const reference &, string &, substring_position &);
};
@@ -226,52 +214,52 @@ typedef union {
struct { int ndigits; int val; } dig;
struct { int start; int len; } str;
} YYSTYPE;
-#line 230 "y.tab.c"
+#line 218 "y.tab.c"
#define TOKEN_LETTER 257
#define TOKEN_LITERAL 258
#define TOKEN_DIGIT 259
#define YYERRCODE 256
-static YYCONST short yylhs[] = { -1,
+short yylhs[] = { -1,
0, 1, 1, 6, 6, 2, 2, 2, 3, 3,
5, 5, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 9, 9, 7, 7, 8, 8,
10, 10, 10,
};
-static YYCONST short yylen[] = { 2,
+short yylen[] = { 2,
1, 1, 5, 0, 1, 1, 3, 3, 1, 2,
1, 3, 1, 1, 1, 2, 2, 2, 5, 3,
3, 2, 3, 3, 0, 1, 1, 2, 1, 2,
0, 1, 1,
};
-static YYCONST short yydefred[] = { 0,
+short yydefred[] = { 0,
0, 14, 13, 0, 0, 0, 0, 5, 0, 0,
0, 0, 1, 27, 0, 17, 29, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 22, 0, 28,
30, 23, 24, 0, 0, 0, 32, 33, 0, 0,
0, 0, 0, 0, 3, 0, 19,
};
-static YYCONST short yydgoto[] = { 7,
+short yydgoto[] = { 7,
8, 9, 10, 11, 12, 13, 15, 18, 47, 39,
};
-static YYCONST short yysindex[] = { -32,
+short yysindex[] = { -32,
-257, 0, 0, -240, -32, -32, 0, 0, -18, -32,
-36, -114, 0, 0, -246, 0, 0, -241, -14, -39,
-32, -32, -32, -114, -21, -257, -257, 0, -32, 0,
0, 0, 0, -25, -32, -32, 0, 0, -223, -246,
-246, -36, -32, -257, 0, -246, 0,
};
-static YYCONST short yyrindex[] = { 35,
+short yyrindex[] = { 35,
1, 0, 0, 0, -5, -4, 0, 0, 14, 208,
159, 224, 0, 0, 11, 0, 0, 40, 0, 0,
2, 0, 0, 253, -220, 0, 0, 0, 0, 0,
0, 0, 0, 0, 263, 281, 0, 0, 0, 50,
105, 214, 0, 115, 0, 149, 0,
};
-static YYCONST short yygindex[] = { 0,
+short yygindex[] = { 0,
19, 0, 7, 37, -10, 10, -23, 0, 0, 0,
};
#define YYTABLESIZE 511
-static YYCONST short yytable[] = { 24,
+short yytable[] = { 24,
15, 14, 40, 41, 4, 28, 26, 5, 27, 25,
16, 29, 30, 2, 19, 20, 16, 31, 17, 23,
46, 37, 33, 38, 24, 24, 32, 6, 35, 36,
@@ -325,7 +313,7 @@ static YYCONST short yytable[] = { 24,
0, 0, 0, 0, 0, 0, 0, 0, 0, 10,
10,
};
-static YYCONST short yycheck[] = { 10,
+short yycheck[] = { 10,
0, 259, 26, 27, 37, 42, 43, 40, 45, 46,
0, 126, 259, 0, 5, 6, 257, 259, 259, 38,
44, 43, 62, 45, 35, 36, 41, 60, 22, 23,
@@ -385,7 +373,7 @@ static YYCONST short yycheck[] = { 10,
#endif
#define YYMAXTOKEN 259
#if YYDEBUG
-static YYCONST char *YYCONST yyname[] = {
+char *yyname[] = {
"end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,"'%'","'&'",0,"'('","')'","'*'","'+'",0,"'-'","'.'",0,0,0,0,0,0,0,0,0,0,0,
"':'",0,"'<'",0,"'>'","'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
@@ -395,7 +383,7 @@ static YYCONST char *YYCONST yyname[] = {
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,"TOKEN_LETTER","TOKEN_LITERAL","TOKEN_DIGIT",
};
-static YYCONST char *YYCONST yyrule[] = {
+char *yyrule[] = {
"$accept : expr",
"expr : optional_conditional",
"conditional : alternative",
@@ -432,13 +420,6 @@ static YYCONST char *YYCONST yyrule[] = {
"flag : '-'",
};
#endif
-#define YYLEX yylex()
-#define YYEMPTY -1
-#define yyclearin (yychar=(YYEMPTY))
-#define yyerrok (yyerrflag=0)
-#ifndef YYINITDEPTH
-#define YYINITDEPTH 200
-#endif
#ifdef YYSTACKSIZE
#undef YYMAXDEPTH
#define YYMAXDEPTH YYSTACKSIZE
@@ -446,23 +427,21 @@ static YYCONST char *YYCONST yyrule[] = {
#ifdef YYMAXDEPTH
#define YYSTACKSIZE YYMAXDEPTH
#else
-#define YYSTACKSIZE 10000
-#define YYMAXDEPTH 10000
+#define YYSTACKSIZE 500
+#define YYMAXDEPTH 500
#endif
#endif
int yydebug;
int yynerrs;
int yyerrflag;
int yychar;
+short *yyssp;
+YYSTYPE *yyvsp;
YYSTYPE yyval;
YYSTYPE yylval;
-static short *yyss;
-static YYSTYPE *yyvs;
-static int yystacksize;
-static int yygrow ();
-static YYPTR yymalloc YYPARAMS((unsigned));
-static YYPTR yyrealloc YYPARAMS((YYPTR, unsigned));
-#define yyfree(x) free(x)
+short yyss[YYSTACKSIZE];
+YYSTYPE yyvs[YYSTACKSIZE];
+#define yystacksize YYSTACKSIZE
#line 397 "label.y"
/* bison defines const to be empty unless __STDC__ is defined, which it
@@ -998,7 +977,7 @@ int reference::merge_labels_by_parts(reference **v, int n, label_type type,
string label_pool;
label_info::label_info(const string &s)
-: count(0), total(1), length(s.length()), start(label_pool.length())
+: start(label_pool.length()), length(s.length()), count(0), total(1)
{
label_pool += s;
}
@@ -1245,28 +1224,22 @@ int reference::get_nauthors() const
}
return nauthors;
}
-#line 1249 "y.tab.c"
+#line 1228 "y.tab.c"
#define YYABORT goto yyabort
+#define YYREJECT goto yyabort
#define YYACCEPT goto yyaccept
#define YYERROR goto yyerrlab
-
-#if YYDEBUG
-#ifdef __cplusplus
-extern "C" char *getenv();
-#else
-extern char *getenv();
-#endif
-#endif
-
int
+#if defined(__STDC__)
+yyparse(void)
+#else
yyparse()
+#endif
{
register int yym, yyn, yystate;
- register YYSTYPE *yyvsp;
- register short *yyssp;
- short *yysse;
#if YYDEBUG
- register YYCONST char *yys;
+ register char *yys;
+ extern char *getenv();
if (yys = getenv("YYDEBUG"))
{
@@ -1280,26 +1253,12 @@ yyparse()
yyerrflag = 0;
yychar = (-1);
- if (yyss == 0)
- {
- yyss = (short *) yymalloc (YYINITDEPTH * sizeof (short));
- if (yyss == 0)
- goto yyabort;
- yyvs = (YYSTYPE *) yymalloc (YYINITDEPTH * sizeof (YYSTYPE));
- if (yyvs == 0)
- {
- yyfree (yyss);
- goto yyabort;
- }
- yystacksize = YYINITDEPTH;
- }
- yysse = yyss + yystacksize - 1;
yyssp = yyss;
yyvsp = yyvs;
*yyssp = yystate = 0;
yyloop:
- if (yyn = yydefred[yystate]) goto yyreduce;
+ if ((yyn = yydefred[yystate]) != 0) goto yyreduce;
if (yychar < 0)
{
if ((yychar = yylex()) < 0) yychar = 0;
@@ -1309,8 +1268,8 @@ yyloop:
yys = 0;
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, reading %d (%s)\n", yystate,
- yychar, yys);
+ printf("%sdebug: state %d, reading %d (%s)\n",
+ YYPREFIX, yystate, yychar, yys);
}
#endif
}
@@ -1319,18 +1278,12 @@ yyloop:
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: state %d, shifting to state %d\n",
- yystate, yytable[yyn]);
+ printf("%sdebug: state %d, shifting to state %d\n",
+ YYPREFIX, yystate, yytable[yyn]);
#endif
- if (yyssp >= yysse)
+ if (yyssp >= yyss + yystacksize - 1)
{
- /* FIXME: Rework so there's only one of these. */
- int depth = yyssp - yyss;
- if (yygrow () != 0)
- goto yyoverflow;
- yysse = yyss + yystacksize - 1;
- yyssp = yyss + depth;
- yyvsp = yyvs + depth;
+ goto yyoverflow;
}
*++yyssp = yystate = yytable[yyn];
*++yyvsp = yylval;
@@ -1345,10 +1298,6 @@ yyloop:
goto yyreduce;
}
if (yyerrflag) goto yyinrecovery;
-#ifdef lint
- goto yynewerror;
-#endif
-yynewerror:
yyerror("syntax error");
#ifdef lint
goto yyerrlab;
@@ -1366,17 +1315,12 @@ yyinrecovery:
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: state %d, error recovery shifting\
- to state %d\n", *yyssp, yytable[yyn]);
+ printf("%sdebug: state %d, error recovery shifting\
+ to state %d\n", YYPREFIX, *yyssp, yytable[yyn]);
#endif
- if (yyssp >= yysse)
+ if (yyssp >= yyss + yystacksize - 1)
{
- int depth = yyssp - yyss;
- if (yygrow () != 0)
- goto yyoverflow;
- yysse = yyss + yystacksize - 1;
- yyssp = yyss + depth;
- yyvsp = yyvs + depth;
+ goto yyoverflow;
}
*++yyssp = yystate = yytable[yyn];
*++yyvsp = yylval;
@@ -1386,8 +1330,8 @@ yyinrecovery:
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: error recovery discarding state %d\n",
- *yyssp);
+ printf("%sdebug: error recovery discarding state %d\n",
+ YYPREFIX, *yyssp);
#endif
if (yyssp <= yyss) goto yyabort;
--yyssp;
@@ -1404,8 +1348,8 @@ yyinrecovery:
yys = 0;
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, error recovery discards token %d (%s)\n",
- yystate, yychar, yys);
+ printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
+ YYPREFIX, yystate, yychar, yys);
}
#endif
yychar = (-1);
@@ -1414,8 +1358,8 @@ yyinrecovery:
yyreduce:
#if YYDEBUG
if (yydebug)
- printf("yydebug: state %d, reducing by rule %d (%s)\n",
- yystate, yyn, yyrule[yyn]);
+ printf("%sdebug: state %d, reducing by rule %d (%s)\n",
+ YYPREFIX, yystate, yyn, yyrule[yyn]);
#endif
yym = yylen[yyn];
yyval = yyvsp[1-yym];
@@ -1599,7 +1543,7 @@ case 33:
#line 393 "label.y"
{ yyval.num = -1; }
break;
-#line 1603 "y.tab.c"
+#line 1547 "y.tab.c"
}
yyssp -= yym;
yystate = *yyssp;
@@ -1609,8 +1553,8 @@ break;
{
#if YYDEBUG
if (yydebug)
- printf("yydebug: after reduction, shifting from state 0 to\
- state %d\n", YYFINAL);
+ printf("%sdebug: after reduction, shifting from state 0 to\
+ state %d\n", YYPREFIX, YYFINAL);
#endif
yystate = YYFINAL;
*++yyssp = YYFINAL;
@@ -1624,8 +1568,8 @@ break;
yys = 0;
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
if (!yys) yys = "illegal-symbol";
- printf("yydebug: state %d, reading %d (%s)\n",
- YYFINAL, yychar, yys);
+ printf("%sdebug: state %d, reading %d (%s)\n",
+ YYPREFIX, YYFINAL, yychar, yys);
}
#endif
}
@@ -1639,17 +1583,12 @@ break;
yystate = yydgoto[yym];
#if YYDEBUG
if (yydebug)
- printf("yydebug: after reduction, shifting from state %d \
-to state %d\n", *yyssp, yystate);
+ printf("%sdebug: after reduction, shifting from state %d \
+to state %d\n", YYPREFIX, *yyssp, yystate);
#endif
- if (yyssp >= yysse)
+ if (yyssp >= yyss + yystacksize - 1)
{
- int depth = yyssp - yyss;
- if (yygrow () != 0)
- goto yyoverflow;
- yysse = yyss + yystacksize - 1;
- yyssp = yyss + depth;
- yyvsp = yyvs + depth;
+ goto yyoverflow;
}
*++yyssp = yystate;
*++yyvsp = yyval;
@@ -1661,52 +1600,3 @@ yyabort:
yyaccept:
return (0);
}
-
-static int
-yygrow ()
-{
- int old_stacksize = yystacksize;
- short *new_yyss;
- YYSTYPE *new_yyvs;
-
- if (yystacksize >= YYMAXDEPTH)
- return (1);
- yystacksize *= 2;
- if (yystacksize > YYMAXDEPTH)
- yystacksize = YYMAXDEPTH;
-#if YYDEBUG
- if (yydebug)
- printf("yydebug: growing stack size from %d to %d\n",
- old_stacksize, yystacksize);
-#endif
- new_yyss = (short *) yyrealloc (yyss, yystacksize * sizeof (short));
- if (new_yyss == 0)
- return (1);
- new_yyvs = (YYSTYPE *) yyrealloc (yyvs, yystacksize * sizeof (YYSTYPE));
- if (new_yyvs == 0)
- {
- yyfree (new_yyss);
- return (1);
- }
- yyss = new_yyss;
- yyvs = new_yyvs;
- return (0);
-}
-
-static YYPTR
-YYDEFUN (yymalloc, (bytes), unsigned bytes)
-{
- YYPTR ptr = (YYPTR) malloc (bytes);
- if (ptr != 0) return (ptr);
- yyerror ("yyparse: memory exhausted");
- return (0);
-}
-
-static YYPTR
-YYDEFUN (yyrealloc, (old, bytes), YYPTR old YYAND unsigned bytes)
-{
- YYPTR ptr = (YYPTR) realloc (old, bytes);
- if (ptr != 0) return (ptr);
- yyerror ("yyparse: memory exhausted");
- return (0);
-}
diff --git a/refer/label.y b/src/preproc/refer/label.y
index 474158df0..6bc12c18e 100644
--- a/refer/label.y
+++ b/src/preproc/refer/label.y
@@ -77,7 +77,7 @@ class field_expr : public expression {
int number;
char name;
public:
- field_expr(char nm, int num) : name(nm), number(num) { }
+ field_expr(char nm, int num) : number(num), name(nm) { }
void evaluate(int, const reference &, string &, substring_position &);
unsigned analyze() { return CONTAINS_VARIABLE; }
};
@@ -136,14 +136,14 @@ class extractor_expr : public unary_expr {
public:
enum { BEFORE = +1, MATCH = 0, AFTER = -1 };
extractor_expr(expression *e, extractor_func *f, int pt)
- : unary_expr(e), func(f), part(pt) { }
+ : unary_expr(e), part(pt), func(f) { }
void evaluate(int, const reference &, string &, substring_position &);
};
class truncate_expr : public unary_expr {
int n;
public:
- truncate_expr(expression *e, int i) : n(i), unary_expr(e) { }
+ truncate_expr(expression *e, int i) : unary_expr(e), n(i) { }
void evaluate(int, const reference &, string &, substring_position &);
};
@@ -928,7 +928,7 @@ int reference::merge_labels_by_parts(reference **v, int n, label_type type,
string label_pool;
label_info::label_info(const string &s)
-: count(0), total(1), length(s.length()), start(label_pool.length())
+: start(label_pool.length()), length(s.length()), count(0), total(1)
{
label_pool += s;
}
diff --git a/refer/ref.cc b/src/preproc/refer/ref.cc
index 9347e9655..c3517b194 100644
--- a/refer/ref.cc
+++ b/src/preproc/refer/ref.cc
@@ -51,7 +51,7 @@ const char *reference_types[] = {
static string temp_fields[256];
reference::reference(const char *start, int len, reference_id *ridp)
-: no(-1), field(0), nfields(0), h(0), merged(0), label_ptr(0),
+: h(0), merged(0), no(-1), field(0), nfields(0), label_ptr(0),
computed_authors(0), last_needed_author(-1), nauthors(-1)
{
int i;
diff --git a/refer/ref.h b/src/preproc/refer/ref.h
index 13a984a4c..13a984a4c 100644
--- a/refer/ref.h
+++ b/src/preproc/refer/ref.h
diff --git a/refer/refer.cc b/src/preproc/refer/refer.cc
index 065faf653..cc8febe4d 100644
--- a/refer/refer.cc
+++ b/src/preproc/refer/refer.cc
@@ -336,8 +336,8 @@ int main(int argc, char **argv)
}
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU refer version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU refer version %s\n", Version_string);
fflush(stderr);
opt++;
break;
diff --git a/refer/refer.h b/src/preproc/refer/refer.h
index f0ab3cd70..f0ab3cd70 100644
--- a/refer/refer.h
+++ b/src/preproc/refer/refer.h
diff --git a/refer/refer.man b/src/preproc/refer/refer.man
index 6b09c973a..6b09c973a 100644
--- a/refer/refer.man
+++ b/src/preproc/refer/refer.man
diff --git a/refer/token.cc b/src/preproc/refer/token.cc
index 1cf6890f2..1cf6890f2 100644
--- a/refer/token.cc
+++ b/src/preproc/refer/token.cc
diff --git a/refer/token.h b/src/preproc/refer/token.h
index 6da430d6a..6da430d6a 100644
--- a/refer/token.h
+++ b/src/preproc/refer/token.h
diff --git a/soelim/Makefile.sub b/src/preproc/soelim/Makefile.sub
index 7c873a6a9..77007e25f 100644
--- a/soelim/Makefile.sub
+++ b/src/preproc/soelim/Makefile.sub
@@ -2,5 +2,5 @@ PROG=soelim
MAN1=soelim.n
XLIBS=$(LIBGROFF)
OBJS=soelim.o
-CCSRCS=soelim.cc
+CCSRCS=$(srcdir)/soelim.cc
NAMEPREFIX=$(g)
diff --git a/soelim/TODO b/src/preproc/soelim/TODO
index f2a3924ef..f2a3924ef 100644
--- a/soelim/TODO
+++ b/src/preproc/soelim/TODO
diff --git a/soelim/soelim.cc b/src/preproc/soelim/soelim.cc
index a6f63ae5d..571f7345c 100644
--- a/soelim/soelim.cc
+++ b/src/preproc/soelim/soelim.cc
@@ -43,8 +43,16 @@ static void
include_path_append(char *path)
{
++include_list_length;
- size_t nbytes = include_list_length * sizeof(include_list[0]);
- include_list = (char **)realloc((void *)include_list, nbytes);
+ size_t nbytes = include_list_length * sizeof(char *);
+ if (include_list)
+ include_list = (char **)realloc((void *)include_list, nbytes);
+ else
+ include_list = (char **)malloc(nbytes);
+ if (include_list == NULL)
+ {
+ fprintf(stderr, "%s: out of memory\n", program_name);
+ exit(2);
+ }
include_list[include_list_length - 1] = path;
}
@@ -64,8 +72,8 @@ int main(int argc, char **argv)
switch (opt) {
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU soelim version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU soelim version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/soelim/soelim.man b/src/preproc/soelim/soelim.man
index 7026f3ee3..7026f3ee3 100644
--- a/soelim/soelim.man
+++ b/src/preproc/soelim/soelim.man
diff --git a/src/preproc/tbl/Makefile.sub b/src/preproc/tbl/Makefile.sub
new file mode 100644
index 000000000..224baffcf
--- /dev/null
+++ b/src/preproc/tbl/Makefile.sub
@@ -0,0 +1,12 @@
+PROG=tbl
+MAN1=tbl.n
+XLIBS=$(LIBGROFF)
+OBJS=\
+ main.o \
+ table.o
+CCSRCS=\
+ $(srcdir)/main.cc \
+ $(srcdir)/table.cc
+HDRS=\
+ $(srcdir)/table.h
+NAMEPREFIX=$(g)
diff --git a/tbl/main.cc b/src/preproc/tbl/main.cc
index 3956a494b..8a559e8d1 100644
--- a/tbl/main.cc
+++ b/src/preproc/tbl/main.cc
@@ -229,14 +229,14 @@ void process_input_file(FILE *fp)
c = getc(fp);
}
putchar('\n');
- printf(".if '\\*(.T'html' \\X(graphic-start(\n");
+ printf(".if '\\*(.T'html' \\X(table-start(\n");
current_lineno++;
{
table_input input(fp);
process_table(input);
set_troff_location(current_filename, current_lineno);
if (input.ended()) {
- printf(".if '\\*(.T'html' \\X(graphic-end(\n");
+ printf(".if '\\*(.T'html' \\X(table-end(\n");
fputs(".TE", stdout);
while ((c = getc(fp)) != '\n') {
if (c == EOF) {
@@ -334,7 +334,7 @@ struct options {
};
options::options()
-: flags(0), tab_char('\t'), decimal_point_char('.'), linesize(0)
+: flags(0), linesize(0), tab_char('\t'), decimal_point_char('.')
{
delim[0] = delim[1] = '\0';
}
@@ -1460,8 +1460,8 @@ int main(int argc, char **argv)
break;
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU tbl version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU tbl version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/tbl/table.cc b/src/preproc/tbl/table.cc
index 893e1b363..354c7d885 100644
--- a/tbl/table.cc
+++ b/src/preproc/tbl/table.cc
@@ -326,8 +326,8 @@ public:
};
table_entry::table_entry(const entry_modifier *m)
-: next(0), start_row(-1), end_row(-1), start_col(-1), end_col(-1), mod(m),
- input_lineno(-1), input_filename(0)
+: next(0), input_lineno(-1), input_filename(0),
+ start_row(-1), end_row(-1), start_col(-1), end_col(-1), mod(m)
{
}
@@ -445,7 +445,7 @@ int empty_entry::line_type()
}
text_entry::text_entry(char *s, const entry_modifier *m)
-: contents(s), simple_entry(m)
+: simple_entry(m), contents(s)
{
}
@@ -1009,7 +1009,7 @@ struct stuff {
virtual int is_double_line() { return 0; };
};
-stuff::stuff(int r) : row(r), next(0), printed(0)
+stuff::stuff(int r) : next(0), row(r), printed(0)
{
}
@@ -1029,7 +1029,7 @@ struct text_stuff : public stuff {
text_stuff::text_stuff(const string &s, int r, const char *fn, int ln)
-: contents(s), stuff(r), filename(fn), lineno(ln)
+: stuff(r), contents(s), filename(fn), lineno(ln)
{
}
@@ -1105,7 +1105,7 @@ struct vertical_rule {
};
vertical_rule::vertical_rule(int sr, int er, int c, int dbl, vertical_rule *p)
-: start_row(sr), end_row(er), col(c), is_double(dbl), next(p)
+: next(p), start_row(sr), end_row(er), col(c), is_double(dbl)
{
}
@@ -1199,11 +1199,11 @@ void vertical_rule::print()
}
table::table(int nc, unsigned f, int ls, char dpc)
-: ncolumns(nc), flags(f), linesize(ls), decimal_point_char(dpc),
- nrows(0), allocated_rows(0), entry(0), entry_list(0),
- entry_list_tailp(&entry_list),
- left_separation(0), right_separation(0), stuff_list(0), vline(0),
- vrule_list(0), row_is_all_lines(0), span_list(0)
+: flags(f), nrows(0), ncolumns(nc), linesize(ls), decimal_point_char(dpc),
+ vrule_list(0), stuff_list(0), span_list(0),
+ entry_list(0), entry_list_tailp(&entry_list), entry(0),
+ vline(0), row_is_all_lines(0), left_separation(0), right_separation(0),
+ allocated_rows(0)
{
minimum_width = new string[ncolumns];
column_separation = ncolumns > 1 ? new int[ncolumns - 1] : 0;
@@ -1969,7 +1969,7 @@ void table::sum_columns(int start_col, int end_col)
}
horizontal_span::horizontal_span(int sc, int ec, horizontal_span *p)
-: start_col(sc), end_col(ec), next(p)
+: next(p), start_col(sc), end_col(ec)
{
}
diff --git a/tbl/table.h b/src/preproc/tbl/table.h
index ca55b8026..ca55b8026 100644
--- a/tbl/table.h
+++ b/src/preproc/tbl/table.h
diff --git a/tbl/tbl.man b/src/preproc/tbl/tbl.man
index 6016ddf35..6016ddf35 100644
--- a/tbl/tbl.man
+++ b/src/preproc/tbl/tbl.man
diff --git a/groff/Makefile.sub b/src/roff/groff/Makefile.sub
index 0acd882b4..42ae221c4 100644
--- a/groff/Makefile.sub
+++ b/src/roff/groff/Makefile.sub
@@ -3,6 +3,6 @@ MAN1=groff.n
XLIBS=$(LIBGROFF)
MLIB=$(LIBM)
OBJS=groff.o pipeline.o
-CCSRCS=groff.cc
-CSRCS=pipeline.c
-HDRS=pipeline.h
+CCSRCS=$(srcdir)/groff.cc
+CSRCS=$(srcdir)/pipeline.c
+HDRS=$(srcdir)/pipeline.h
diff --git a/groff/groff.cc b/src/roff/groff/groff.cc
index c5f55e02d..c5f55e02d 100644
--- a/groff/groff.cc
+++ b/src/roff/groff/groff.cc
diff --git a/groff/groff.man b/src/roff/groff/groff.man
index aa57f31f1..0d36ba8eb 100644
--- a/groff/groff.man
+++ b/src/roff/groff/groff.man
@@ -1,5 +1,5 @@
.ig \"-*- nroff -*-
-Copyright (C) 1999 Free Software Foundation, Inc.
+Copyright (C) 1999-2000 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -105,7 +105,11 @@ For a 100dpi X11 previewer.
For typewriter-like devices.
.TP
.B latin1
-For typewriter-like devices using the ISO Latin-1 character set.
+For typewriter-like devices using the ISO Latin-1 (ISO 8859-1) character set.
+.TP
+.B utf8
+For typewriter-like devices using the Unicode (ISO 10646) character set with
+UTF-8 encoding.
.TP
.B lj4
For an HP LaserJet4-compatible (or other PCL5-compatible) printer.
diff --git a/groff/pipeline.c b/src/roff/groff/pipeline.c
index 9f444d014..9f444d014 100644
--- a/groff/pipeline.c
+++ b/src/roff/groff/pipeline.c
diff --git a/groff/pipeline.h b/src/roff/groff/pipeline.h
index 72c4daced..72c4daced 100644
--- a/groff/pipeline.h
+++ b/src/roff/groff/pipeline.h
diff --git a/grog/Makefile.sub b/src/roff/grog/Makefile.sub
index 5b8f089f6..e1c53e17a 100644
--- a/grog/Makefile.sub
+++ b/src/roff/grog/Makefile.sub
@@ -14,7 +14,7 @@ grog: grog.pl grog.sh
chmod +x $@
install_data: grog
- -test -d $(bindir) || mkdir $(bindir)
+ -test -d $(bindir) || $(mkinstalldirs) $(bindir)
-rm -f $(bindir)/grog
$(INSTALL_PROGRAM) grog $(bindir)/grog
diff --git a/grog/grog.man b/src/roff/grog/grog.man
index 8e9265730..8e9265730 100644
--- a/grog/grog.man
+++ b/src/roff/grog/grog.man
diff --git a/grog/grog.pl b/src/roff/grog/grog.pl
index b131da64b..b131da64b 100644
--- a/grog/grog.pl
+++ b/src/roff/grog/grog.pl
diff --git a/grog/grog.sh b/src/roff/grog/grog.sh
index 631b356aa..631b356aa 100644
--- a/grog/grog.sh
+++ b/src/roff/grog/grog.sh
diff --git a/nroff/Makefile.sub b/src/roff/nroff/Makefile.sub
index 096c046c8..275db4d10 100644
--- a/nroff/Makefile.sub
+++ b/src/roff/nroff/Makefile.sub
@@ -10,6 +10,7 @@ nroff: nroff.sh
chmod +x $@
install_data: nroff
+ -test -d $(bindir) || $(mkinstalldirs) $(bindir)
-rm -f $(bindir)/$(NAMEPREFIX)nroff
$(INSTALL_PROGRAM) nroff $(bindir)/$(NAMEPREFIX)nroff
diff --git a/nroff/nroff.man b/src/roff/nroff/nroff.man
index 4087ebe53..8f31d6bf5 100644
--- a/nroff/nroff.man
+++ b/src/roff/nroff/nroff.man
@@ -1,5 +1,5 @@
.ig \"-*- nroff -*-
-Copyright (C) 1989-1999 Free Software Foundation, Inc.
+Copyright (C) 1989-2000 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -54,9 +54,10 @@ command using groff.
The
.B \-T
option with an argument other than
-.B ascii
-and
+.BR ascii ,
.B latin1
+or
+.B utf8
will be ignored.
The
.B \-h
diff --git a/nroff/nroff.sh b/src/roff/nroff/nroff.sh
index ee4e332c9..a199541d7 100755..100644
--- a/nroff/nroff.sh
+++ b/src/roff/nroff/nroff.sh
@@ -3,12 +3,25 @@
prog="$0"
# Default device.
-if test "X$LC_CTYPE" = "Xiso_8859_1" || test "X$LESSCHARSET" = "Xlatin1"
-then
- T=-Tlatin1
-else
- T=-Tascii
-fi
+# First try the "locale charmap" command, because it's most reliable.
+# On systems where it doesn't exist, look at the environment variables.
+case "`locale charmap 2>/dev/null`" in
+ UTF-8 ) T=-Tutf8 ;;
+ ISO-8859-1 ) T=-Tlatin1 ;;
+ *)
+ case "${LC_ALL-${LC_CTYPE-${LANG}}}" in
+ *.UTF-8 ) T=-Tutf8 ;;
+ iso_8859_1 | *.ISO-8859-1 ) T=-Tlatin1 ;;
+ *)
+ case "$LESSCHARSET" in
+ utf-8 ) T=-Tutf8 ;;
+ latin1 ) T=-Tlatin1 ;;
+ *) T=-Tascii ;;
+ esac
+ ;;
+ esac
+ ;;
+esac
opts=
safer=-S
@@ -29,7 +42,7 @@ do
opts="$opts $1";
;;
- -Tascii|-Tlatin1)
+ -Tascii|-Tlatin1|-Tutf8)
T=$1
;;
-T*)
diff --git a/src/roff/troff/Makefile.sub b/src/roff/troff/Makefile.sub
new file mode 100644
index 000000000..342ad5954
--- /dev/null
+++ b/src/roff/troff/Makefile.sub
@@ -0,0 +1,57 @@
+PROG=troff
+MAN1=troff.n
+XLIBS=$(LIBGROFF)
+MLIB=$(LIBM)
+OBJS=\
+ env.o \
+ node.o \
+ input.o \
+ div.o \
+ symbol.o \
+ dictionary.o \
+ reg.o \
+ number.o \
+ majorminor.o
+CCSRCS=\
+ $(srcdir)/env.cc \
+ $(srcdir)/node.cc \
+ $(srcdir)/input.cc \
+ $(srcdir)/div.cc \
+ $(srcdir)/symbol.cc \
+ $(srcdir)/dictionary.cc \
+ $(srcdir)/reg.cc \
+ $(srcdir)/number.cc \
+ majorminor.cc
+HDRS=\
+ $(srcdir)/charinfo.h \
+ $(srcdir)/dictionary.h \
+ $(srcdir)/div.h \
+ $(srcdir)/env.h \
+ $(srcdir)/hvunits.h \
+ $(srcdir)/node.h \
+ $(srcdir)/reg.h \
+ $(srcdir)/request.h \
+ $(srcdir)/symbol.h \
+ $(srcdir)/token.h \
+ $(srcdir)/troff.h
+GENSRCS=majorminor.cc
+NAMEPREFIX=$(g)
+
+majorminor.cc: $(top_srcdir)/VERSION $(top_srcdir)/REVISION
+ @echo Making $@
+ @-rm -f $@
+ @echo const char \*major_version = \
+ \"`sed -e 's/^\([^.]*\)\..*$$/\1/' $(top_srcdir)/VERSION`\"\; >$@
+ @echo const char \*minor_version = \
+ \"`sed -e 's/^[^.]*\.\([0-9]*\).*$$/\1/' $(top_srcdir)/VERSION`\"\; >>$@
+ @echo const char \*revision = \"`cat $(top_srcdir)/REVISION`\"\; >>$@
+
+install_data: hyphen.us
+ -test -d $(datadir) || $(mkinstalldirs) $(datadir)
+ -test -d $(datasubdir) || $(mkinstalldirs) $(datasubdir)
+ -test -d $(tmacdir) || $(mkinstalldirs) $(tmacdir)
+ -rm -f $(tmacdir)/hyphen.us
+ $(INSTALL_DATA) $(srcdir)/hyphen.us $(tmacdir)/hyphen.us
+
+uninstall_sub:
+ -rm -f $(tmacdir)/hyphen.us
diff --git a/troff/TODO b/src/roff/troff/TODO
index 7e511235e..7e511235e 100644
--- a/troff/TODO
+++ b/src/roff/troff/TODO
diff --git a/troff/charinfo.h b/src/roff/troff/charinfo.h
index 9979d3775..a4ecd5748 100644
--- a/troff/charinfo.h
+++ b/src/roff/troff/charinfo.h
@@ -74,6 +74,7 @@ public:
void set_number(int);
int get_number();
int numbered();
+ symbol *get_symbol();
};
charinfo *get_charinfo(symbol);
@@ -163,3 +164,8 @@ inline int charinfo::first_time_not_found()
return 1;
}
}
+
+inline symbol *charinfo::get_symbol()
+{
+ return( &nm );
+}
diff --git a/troff/column.cc b/src/roff/troff/column.cc
index fce389db1..fce389db1 100644
--- a/troff/column.cc
+++ b/src/roff/troff/column.cc
diff --git a/troff/dictionary.cc b/src/roff/troff/dictionary.cc
index fc71e3c5c..169536c67 100644
--- a/troff/dictionary.cc
+++ b/src/roff/troff/dictionary.cc
@@ -38,7 +38,7 @@ static int is_good_size(int p)
return 1;
}
-dictionary::dictionary(int n) : threshold(0.5), factor(1.5), used(0), size(n)
+dictionary::dictionary(int n) : size(n), used(0), threshold(0.5), factor(1.5)
{
table = new association[n];
}
diff --git a/troff/dictionary.h b/src/roff/troff/dictionary.h
index 4f319be49..4f319be49 100644
--- a/troff/dictionary.h
+++ b/src/roff/troff/dictionary.h
diff --git a/troff/div.cc b/src/roff/troff/div.cc
index e5b4b589f..995c54cd3 100644
--- a/troff/div.cc
+++ b/src/roff/troff/div.cc
@@ -48,7 +48,7 @@ static vunits truncated_space;
static vunits needed_space;
diversion::diversion(symbol s)
-: nm(s), prev(0), vertical_position(V0), marked_place(V0), high_water_mark(V0)
+: prev(0), nm(s), vertical_position(V0), high_water_mark(V0), marked_place(V0)
{
}
@@ -284,10 +284,11 @@ void macro_diversion::copy_file(const char *filename)
}
top_level_diversion::top_level_diversion()
-: page_count(0), have_next_page_number(0), page_length(units_per_inch*11),
- page_offset(units_per_inch), prev_page_offset(units_per_inch),
- ejecting_page(0), page_trap_list(0), before_first_page(1), no_space_mode(0),
- page_number(0), last_page_count(-1)
+: page_number(0), page_count(0), last_page_count(-1),
+ page_length(units_per_inch*11),
+ prev_page_offset(units_per_inch), page_offset(units_per_inch),
+ page_trap_list(0), have_next_page_number(0),
+ ejecting_page(0), before_first_page(1), no_space_mode(0)
{
}
@@ -437,7 +438,7 @@ void top_level_diversion::space(vunits n, int forced)
}
trap::trap(symbol s, vunits n, trap *p)
- : nm(s), next(p), position(n)
+ : next(p), position(n), nm(s)
{
}
diff --git a/troff/div.h b/src/roff/troff/div.h
index e97e0a776..e97e0a776 100644
--- a/troff/div.h
+++ b/src/roff/troff/div.h
diff --git a/troff/env.cc b/src/roff/troff/env.cc
index 07093b01e..973c15ea1 100644
--- a/troff/env.cc
+++ b/src/roff/troff/env.cc
@@ -430,6 +430,7 @@ void environment::set_font(symbol nm)
prev_fontno = tem;
}
else {
+ prev_fontno = fontno;
int n = symbol_fontno(nm);
if (n < 0) {
n = next_available_font_position();
@@ -438,7 +439,6 @@ void environment::set_font(symbol nm)
}
if (family->make_definite(n) < 0)
return;
- prev_fontno = fontno;
fontno = n;
}
}
@@ -511,7 +511,7 @@ void environment::set_char_slant(int n)
}
environment::environment(symbol nm)
-: name(nm),
+: dummy(0),
prev_line_length((units_per_inch*13)/2),
line_length((units_per_inch*13)/2),
prev_title_length((units_per_inch*13)/2),
@@ -538,45 +538,45 @@ environment::environment(symbol nm)
line_spacing(1),
prev_indent(0),
indent(0),
- have_temporary_indent(0),
temporary_indent(0),
+ have_temporary_indent(0),
underline_lines(0),
input_trap_count(0),
+ line(0),
prev_text_length(0),
width_total(0),
space_total(0),
input_line_start(0),
- control_char('.'),
- no_break_control_char('\''),
- hyphen_indicator_char(0),
- spread_flag(0),
- line(0),
- pending_lines(0),
- discarding(0),
tabs(units_per_inch/2, TAB_LEFT),
current_tab(TAB_NONE),
+ leader_node(0),
+ tab_char(0),
+ leader_char(charset_table['.']),
current_field(0),
+ discarding(0),
+ spread_flag(0),
margin_character_flags(0),
margin_character_node(0),
margin_character_distance(points_to_units(10)),
numbering_nodes(0),
number_text_separation(1),
- line_number_multiple(1),
line_number_indent(0),
+ line_number_multiple(1),
no_number_count(0),
- tab_char(0),
- leader_char(charset_table['.']),
hyphenation_flags(1),
- dummy(0),
- leader_node(0),
-#ifdef WIDOW_CONTROL
- widow_control(0),
-#endif /* WIDOW_CONTROL */
hyphen_line_count(0),
hyphen_line_max(-1),
hyphenation_space(H0),
hyphenation_margin(H0),
- composite(0)
+ composite(0),
+ pending_lines(0),
+#ifdef WIDOW_CONTROL
+ widow_control(0),
+#endif /* WIDOW_CONTROL */
+ name(nm),
+ control_char('.'),
+ no_break_control_char('\''),
+ hyphen_indicator_char(0)
{
prev_family = family = lookup_family(default_family);
prev_fontno = fontno = 1;
@@ -588,17 +588,21 @@ environment::environment(symbol nm)
}
environment::environment(const environment *e)
-: name(e->name), // so that eg `.if "\n[.ev]"0"' works
+: dummy(1),
prev_line_length(e->prev_line_length),
line_length(e->line_length),
prev_title_length(e->prev_title_length),
title_length(e->title_length),
prev_size(e->prev_size),
size(e->size),
- prev_requested_size(e->prev_requested_size),
requested_size(e->requested_size),
+ prev_requested_size(e->prev_requested_size),
char_height(e->char_height),
char_slant(e->char_slant),
+ prev_fontno(e->prev_fontno),
+ fontno(e->fontno),
+ prev_family(e->prev_family),
+ family(e->family),
space_size(e->space_size),
sentence_space_size(e->sentence_space_size),
adjust_mode(e->adjust_mode),
@@ -615,49 +619,45 @@ environment::environment(const environment *e)
line_spacing(e->line_spacing),
prev_indent(e->prev_indent),
indent(e->indent),
- have_temporary_indent(0),
temporary_indent(0),
+ have_temporary_indent(0),
underline_lines(0),
input_trap_count(0),
+ line(0),
prev_text_length(e->prev_text_length),
width_total(0),
space_total(0),
input_line_start(0),
- control_char(e->control_char),
- no_break_control_char(e->no_break_control_char),
- hyphen_indicator_char(e->hyphen_indicator_char),
- spread_flag(0),
- line(0),
- pending_lines(0),
- discarding(0),
tabs(e->tabs),
current_tab(TAB_NONE),
+ leader_node(0),
+ tab_char(e->tab_char),
+ leader_char(e->leader_char),
current_field(0),
+ discarding(0),
+ spread_flag(0),
margin_character_flags(e->margin_character_flags),
margin_character_node(e->margin_character_node),
margin_character_distance(e->margin_character_distance),
numbering_nodes(0),
number_text_separation(e->number_text_separation),
- line_number_multiple(e->line_number_multiple),
line_number_indent(e->line_number_indent),
+ line_number_multiple(e->line_number_multiple),
no_number_count(e->no_number_count),
- tab_char(e->tab_char),
- leader_char(e->leader_char),
hyphenation_flags(e->hyphenation_flags),
- fontno(e->fontno),
- prev_fontno(e->prev_fontno),
- dummy(1),
- family(e->family),
- prev_family(e->prev_family),
- leader_node(0),
-#ifdef WIDOW_CONTROL
- widow_control(e->widow_control),
-#endif /* WIDOW_CONTROL */
- hyphen_line_max(e->hyphen_line_max),
hyphen_line_count(0),
+ hyphen_line_max(e->hyphen_line_max),
hyphenation_space(e->hyphenation_space),
hyphenation_margin(e->hyphenation_margin),
- composite(0)
+ composite(0),
+ pending_lines(0),
+#ifdef WIDOW_CONTROL
+ widow_control(e->widow_control),
+#endif /* WIDOW_CONTROL */
+ name(e->name), // so that eg `.if "\n[.ev]"0"' works
+ control_char(e->control_char),
+ no_break_control_char(e->no_break_control_char),
+ hyphen_indicator_char(e->hyphen_indicator_char)
{
}
@@ -2872,7 +2872,7 @@ struct trie_node {
};
trie_node::trie_node(char ch, trie_node *p)
-: c(ch), right(p), down(0), val(0)
+: c(ch), down(0), right(p), val(0)
{
}
@@ -2941,7 +2941,7 @@ struct operation {
};
operation::operation(int i, int j, operation *op)
-: num(i), distance(j), next(op)
+: next(op), distance(j), num(i)
{
}
diff --git a/troff/env.h b/src/roff/troff/env.h
index c0cc90da1..c0cc90da1 100644
--- a/troff/env.h
+++ b/src/roff/troff/env.h
diff --git a/troff/hvunits.h b/src/roff/troff/hvunits.h
index 8efb5ab35..8efb5ab35 100644
--- a/troff/hvunits.h
+++ b/src/roff/troff/hvunits.h
diff --git a/troff/hyphen.us b/src/roff/troff/hyphen.us
index d86c3d58a..d86c3d58a 100644..100755
--- a/troff/hyphen.us
+++ b/src/roff/troff/hyphen.us
diff --git a/troff/input.cc b/src/roff/troff/input.cc
index 9d980403a..a4565904b 100644
--- a/troff/input.cc
+++ b/src/roff/troff/input.cc
@@ -50,7 +50,8 @@ extern "C" {
#define USAGE_EXIT_CODE 1
#define MACRO_PREFIX "tmac."
-#define STARTUP_FILE "troffrc"
+#define INITIAL_STARTUP_FILE "troffrc"
+#define FINAL_STARTUP_FILE "troffrc-end"
#define DEFAULT_INPUT_STACK_LIMIT 1000
#ifndef DEFAULT_WARNING_MASK
@@ -263,8 +264,13 @@ public:
};
file_iterator::file_iterator(FILE *f, const char *fn, int po)
-: fp(f), filename(fn), lineno(1), newline_flag(0), popened(po)
+: fp(f), lineno(1), filename(fn), popened(po), newline_flag(0)
{
+ if ((font::use_charnames_in_special) && (fn != 0)) {
+ if (!the_output)
+ init_output();
+ the_output->put_filename(fn);
+ }
}
file_iterator::~file_iterator()
@@ -365,8 +371,12 @@ void file_iterator::backtrace()
int file_iterator::set_location(const char *f, int ln)
{
- if (f)
+ if (f) {
filename = f;
+ if (!the_output)
+ init_output();
+ the_output->put_filename(f);
+ }
lineno = ln;
return 1;
}
@@ -1954,7 +1964,7 @@ static int transparent_translate(int cc)
case charinfo::TRANSLATE_HYPHEN_INDICATOR:
return ESCAPE_PERCENT;
}
- // This is realy ugly.
+ // This is really ugly.
ci = ci->get_translation(1);
if (ci) {
int c = ci->get_ascii_code();
@@ -2300,7 +2310,7 @@ private:
};
char_list::char_list()
-: head(0), tail(0), ptr(0), len(0)
+: ptr(0), len(0), head(0), tail(0)
{
}
@@ -2413,7 +2423,7 @@ macro::macro()
}
macro::macro(const macro &m)
-: filename(m.filename), lineno(m.lineno), p(m.p), length(m.length)
+: p(m.p), filename(m.filename), lineno(m.lineno), length(m.length)
{
if (p != 0)
p->count++;
@@ -2530,7 +2540,7 @@ public:
};
string_iterator::string_iterator(const macro &m, const char *p, symbol s)
-: lineno(1), mac(m), newline_flag(0), how_invoked(p), nm(s)
+: mac(m), how_invoked(p), newline_flag(0), lineno(1), nm(s)
{
count = mac.length;
if (count != 0) {
@@ -3926,6 +3936,38 @@ static node *do_non_interpreted()
return new non_interpreted_node(mac);
}
+static void encode_char (macro *mac, char c)
+{
+ if (c == '\0') {
+ if ((font::use_charnames_in_special) && tok.special()) {
+ charinfo *ci=tok.get_char(1);
+ const char *s=ci->get_symbol()->contents();
+
+ if (s[0] != (char)0) {
+ mac->append('\\');
+ mac->append('(');
+ int i=0;
+ while (s[i] != (char)0) {
+ mac->append(s[i]);
+ i++;
+ }
+ mac->append('\\');
+ mac->append(')');
+ }
+ } else {
+ error("%1 is illegal within \\X", tok.description());
+ }
+ } else {
+ if ((font::use_charnames_in_special) && (c == '\\')) {
+ /*
+ * add escape escape sequence
+ */
+ mac->append(c);
+ }
+ mac->append(c);
+ }
+}
+
node *do_special()
{
token start;
@@ -3955,10 +3997,7 @@ node *do_special()
c = '\b';
else
c = tok.ch();
- if (c == '\0')
- error("%1 is illegal within \\X", tok.description());
- else
- mac.append(c);
+ encode_char(&mac, c);
}
return new special_node(mac);
}
@@ -4343,6 +4382,189 @@ void pipe_source()
#endif /* not POPEN_MISSING */
}
+
+// .psbb
+
+static int llx_reg_contents = 0;
+static int lly_reg_contents = 0;
+static int urx_reg_contents = 0;
+static int ury_reg_contents = 0;
+
+struct bounding_box {
+ int llx, lly, urx, ury;
+};
+
+/* Parse the argument to a %%BoundingBox comment. Return 1 if it
+contains 4 numbers, 2 if it contains (atend), 0 otherwise. */
+
+int parse_bounding_box(char *p, bounding_box *bb)
+{
+ if (sscanf(p, "%d %d %d %d",
+ &bb->llx, &bb->lly, &bb->urx, &bb->ury) == 4)
+ return 1;
+ else {
+ /* The Document Structuring Conventions say that the numbers
+ should be integers. Unfortunately some broken applications
+ get this wrong. */
+ double x1, x2, x3, x4;
+ if (sscanf(p, "%lf %lf %lf %lf", &x1, &x2, &x3, &x4) == 4) {
+ bb->llx = (int)x1;
+ bb->lly = (int)x2;
+ bb->urx = (int)x3;
+ bb->ury = (int)x4;
+ return 1;
+ }
+ else {
+ for (; *p == ' ' || *p == '\t'; p++)
+ ;
+ if (strncmp(p, "(atend)", 7) == 0) {
+ return 2;
+ }
+ }
+ }
+ bb->llx = bb->lly = bb->urx = bb->ury = 0;
+ return 0;
+}
+
+// This version is taken from psrm.cc
+
+#define PS_LINE_MAX 255
+cset white_space("\n\r \t");
+
+int ps_get_line(char *buf, FILE *fp, const char* filename)
+{
+ int c = getc(fp);
+ if (c == EOF) {
+ buf[0] = '\0';
+ return 0;
+ }
+ int i = 0;
+ int err = 0;
+ while (c != '\r' && c != '\n' && c != EOF) {
+ if ((c < 0x1b && !white_space(c)) || c == 0x7f)
+ error("illegal input character code %1 in `%2'", int(c), filename);
+ else if (i < PS_LINE_MAX)
+ buf[i++] = c;
+ else if (!err) {
+ err = 1;
+ error("PostScript file `%1' is non-conforming "
+ "because length of line exceeds 255", filename);
+ }
+ c = getc(fp);
+ }
+ buf[i++] = '\n';
+ buf[i] = '\0';
+ if (c == '\r') {
+ c = getc(fp);
+ if (c != EOF && c != '\n')
+ ungetc(c, fp);
+ }
+ return 1;
+}
+
+void do_ps_file(FILE *fp, const char* filename)
+{
+ bounding_box bb;
+ int bb_at_end = 0;
+ char buf[PS_LINE_MAX];
+ llx_reg_contents = lly_reg_contents =
+ urx_reg_contents = ury_reg_contents = 0;
+ if (!ps_get_line(buf, fp, filename)) {
+ error("`%1' is empty", filename);
+ return;
+ }
+ if (strncmp("%!PS-Adobe-", buf, 11) != 0) {
+ error("`%1' is not conforming to the Document Structuring Conventions",
+ filename);
+ return;
+ }
+ while (ps_get_line(buf, fp, filename) != 0) {
+ if (buf[0] != '%' || buf[1] != '%'
+ || strncmp(buf + 2, "EndComments", 11) == 0)
+ break;
+ if (strncmp(buf + 2, "BoundingBox:", 12) == 0) {
+ int res = parse_bounding_box(buf + 14, &bb);
+ if (res == 1)
+ goto assign_registers;
+ else if (res == 2) {
+ bb_at_end = 1;
+ break;
+ }
+ else {
+ error("the arguments to the %%%%BoundingBox comment in `%1' are bad",
+ filename);
+ return;
+ }
+ }
+ }
+ if (bb_at_end) {
+ long offset;
+ int last_try = 0;
+ /* in the trailer, the last BoundingBox comment is significant */
+ for (offset = 512; !last_try; offset *= 2) {
+ int had_trailer = 0;
+ int got_bb = 0;
+ if (offset > 32768 || fseek(fp, -offset, 2) == -1) {
+ last_try = 1;
+ if (fseek(fp, 0L, 0) == -1)
+ break;
+ }
+ while (ps_get_line(buf, fp, filename) != 0) {
+ if (buf[0] == '%' && buf[1] == '%') {
+ if (!had_trailer) {
+ if (strncmp(buf + 2, "Trailer", 7) == 0)
+ had_trailer = 1;
+ }
+ else {
+ if (strncmp(buf + 2, "BoundingBox:", 12) == 0) {
+ int res = parse_bounding_box(buf + 14, &bb);
+ if (res == 1)
+ got_bb = 1;
+ else if (res == 2) {
+ error("`(atend)' not allowed in trailer of `%1'", filename);
+ return;
+ }
+ else {
+ error("the arguments to the %%%%BoundingBox comment in `%1' are bad",
+ filename);
+ return;
+ }
+ }
+ }
+ }
+ }
+ if (got_bb)
+ goto assign_registers;
+ }
+ }
+ error("%%%%BoundingBox comment not found in `%1'", filename);
+ return;
+
+assign_registers:
+ llx_reg_contents = bb.llx;
+ lly_reg_contents = bb.lly;
+ urx_reg_contents = bb.urx;
+ ury_reg_contents = bb.ury;
+}
+
+void ps_bbox_request()
+{
+ symbol nm = get_long_name(1);
+ if (nm.is_null())
+ skip_line();
+ else {
+ while (!tok.newline() && !tok.eof())
+ tok.next();
+ errno = 0;
+ FILE *fp = fopen(nm.contents(), "r");
+ if (fp)
+ do_ps_file(fp, nm.contents());
+ else
+ error("can't open `%1': %2", nm.contents(), strerror(errno));
+ tok.next();
+ }
+}
+
const char *asciify(int c)
{
static char buf[3];
@@ -5213,10 +5435,10 @@ static void process_macro_file(const char *mac)
process_input_stack();
}
-static void process_startup_file()
+static void process_startup_file(char *filename)
{
char *path;
- FILE *fp = macro_path.open_file(STARTUP_FILE, &path);
+ FILE *fp = macro_path.open_file(filename, &path);
if (fp) {
input_stack::push(new file_iterator(fp, symbol(path).contents()));
a_delete path;
@@ -5377,8 +5599,8 @@ int main(int argc, char **argv)
switch(c) {
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU troff version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU troff version %s\n", Version_string);
fflush(stderr);
break;
}
@@ -5511,7 +5733,7 @@ int main(int argc, char **argv)
delete tem;
}
if (!no_rc)
- process_startup_file();
+ process_startup_file(INITIAL_STARTUP_FILE);
if (safer_flag)
prepend_string("safer", &macros);
while (macros) {
@@ -5520,6 +5742,8 @@ int main(int argc, char **argv)
macros = macros->next;
delete tem;
}
+ if (!no_rc)
+ process_startup_file(FINAL_STARTUP_FILE);
for (i = optind; i < argc; i++)
process_input_file(argv[i]);
if (optind >= argc || iflag)
@@ -5556,6 +5780,7 @@ static void init_registers()
set_number_reg("dw", int(tt->tm_wday + 1));
set_number_reg("dy", int(tt->tm_mday));
set_number_reg("mo", int(tt->tm_mon + 1));
+ set_number_reg("year", int(1900 + tt->tm_year));
set_number_reg("yr", int(tt->tm_year));
set_number_reg("$$", getpid());
number_reg_dictionary.define(".A",
@@ -5628,6 +5853,7 @@ void init_input_requests()
#ifndef POPEN_MISSING
init_request("pso", pipe_source);
#endif /* not POPEN_MISSING */
+ init_request("psbb", ps_bbox_request);
number_reg_dictionary.define("systat", new variable_reg(&system_status));
number_reg_dictionary.define("slimit",
new variable_reg(&input_stack::limit));
@@ -5643,8 +5869,14 @@ void init_input_requests()
number_reg_dictionary.define(".x", new constant_reg(major_version));
extern const char *minor_version;
number_reg_dictionary.define(".y", new constant_reg(minor_version));
+ extern const char *revision;
+ number_reg_dictionary.define(".Y", new constant_reg(revision));
number_reg_dictionary.define(".g", new constant_reg("1"));
number_reg_dictionary.define(".warn", new constant_int_reg(&warning_mask));
+ number_reg_dictionary.define("llx", new variable_reg(&llx_reg_contents));
+ number_reg_dictionary.define("lly", new variable_reg(&lly_reg_contents));
+ number_reg_dictionary.define("urx", new variable_reg(&urx_reg_contents));
+ number_reg_dictionary.define("ury", new variable_reg(&ury_reg_contents));
}
object_dictionary request_dictionary(501);
@@ -5988,9 +6220,9 @@ charinfo *get_charinfo(symbol nm)
int charinfo::next_index = 0;
charinfo::charinfo(symbol s)
-: nm(s), hyphenation_code(0), translation(0), flags(0), ascii_code(0),
- special_translation(TRANSLATE_NONE), mac(0), not_found(0),
- transparent_translate(1)
+: translation(0), mac(0), special_translation(TRANSLATE_NONE),
+ hyphenation_code(0), flags(0), ascii_code(0), not_found(0),
+ transparent_translate(1), nm(s)
{
index = next_index++;
}
diff --git a/troff/node.cc b/src/roff/troff/node.cc
index 5c1fa43ae..79da579ef 100644
--- a/troff/node.cc
+++ b/src/roff/troff/node.cc
@@ -180,11 +180,10 @@ static font_info **font_table = 0;
static int font_table_size = 0;
font_info::font_info(symbol nm, int n, symbol enm, font *f)
-: internal_name(nm), external_name(enm), fm(f), number(n),
- is_constant_spaced(CONSTANT_SPACE_NONE),
- sf(0), is_bold(0), cond_bold_list(0),
- last_ligature_mode(1), last_kern_mode(1),
- last_tfont(0), last_size(0)
+: last_tfont(0), number(n), last_size(0),
+ internal_name(nm), external_name(enm), fm(f),
+ is_bold(0), is_constant_spaced(CONSTANT_SPACE_NONE), last_ligature_mode(1),
+ last_kern_mode(1), cond_bold_list(0), sf(0)
{
}
@@ -298,7 +297,7 @@ void font_info::set_conditional_bold(int fontno, hunits offset)
}
conditional_bold::conditional_bold(int f, hunits h, conditional_bold *x)
- : fontno(f), offset(h), next(x)
+ : next(x), fontno(f), offset(h)
{
}
@@ -631,6 +630,7 @@ class real_output_file : public output_file {
vunits before, vunits after) = 0;
virtual void really_begin_page(int pageno, vunits page_length) = 0;
virtual void really_copy_file(hunits x, vunits y, const char *filename);
+ virtual void really_put_filename(const char *filename);
protected:
FILE *fp;
public:
@@ -640,6 +640,7 @@ public:
void transparent_char(unsigned char);
void print_line(hunits x, vunits y, node *n, vunits before, vunits after);
void begin_page(int pageno, vunits page_length);
+ void put_filename(const char *filename);
int is_printing();
void copy_file(hunits x, vunits y, const char *filename);
};
@@ -719,6 +720,7 @@ public:
void really_print_line(hunits x, vunits y, node *n, vunits before, vunits after);
void really_begin_page(int pageno, vunits page_length);
void really_copy_file(hunits x, vunits y, const char *filename);
+ void really_put_filename(const char *filename);
void draw(char, hvpair *, int, font_size);
int get_hpos() { return hpos; }
int get_vpos() { return vpos; }
@@ -1067,6 +1069,14 @@ void troff_output_file::draw(char code, hvpair *point, int npoints,
put('\n');
}
+void troff_output_file::really_put_filename(const char *filename)
+{
+ flush_tbuf();
+ put("F ");
+ put(filename);
+ put('\n');
+}
+
void troff_output_file::really_begin_page(int pageno, vunits page_length)
{
flush_tbuf();
@@ -1142,7 +1152,7 @@ void troff_output_file::trailer(vunits page_length)
}
troff_output_file::troff_output_file()
-: current_height(0), current_slant(0), tbuf_len(0), nfont_positions(10),
+: current_slant(0), current_height(0), nfont_positions(10), tbuf_len(0),
begun_page(0)
{
font_position = new symbol[nfont_positions];
@@ -1175,6 +1185,11 @@ void output_file::trailer(vunits)
{
}
+
+void output_file::put_filename(const char *filename)
+{
+}
+
real_output_file::real_output_file()
: printing(0)
{
@@ -1267,6 +1282,14 @@ void real_output_file::really_copy_file(hunits, vunits, const char *)
// do nothing
}
+void real_output_file::put_filename(const char *filename)
+{
+ really_put_filename(filename);
+}
+
+void real_output_file::really_put_filename(const char *filename)
+{
+}
/* ascii_output_file */
@@ -1324,7 +1347,7 @@ public:
};
charinfo_node::charinfo_node(charinfo *c, node *x)
-: ci(c), node(x)
+: node(x), ci(c)
{
}
@@ -1491,7 +1514,7 @@ void glyph_node::operator delete(void *p)
void ligature_node::operator delete(void *p)
{
- delete p;
+ delete[] (char *)p;
}
glyph_node::glyph_node(charinfo *c, tfont *t, node *x)
@@ -1697,7 +1720,7 @@ node *ligature_node::add_self(node *n, hyphen_list **p)
}
kern_pair_node::kern_pair_node(hunits n, node *first, node *second, node *x)
- : node(x), n1(first), n2(second), amount(n)
+ : node(x), amount(n), n1(first), n2(second)
{
}
@@ -2044,7 +2067,7 @@ node *node::add_italic_correction(hunits *width)
}
italic_corrected_node::italic_corrected_node(node *nn, hunits xx, node *p)
-: n(nn), x(xx), node(p)
+: node(p), n(nn), x(xx)
{
assert(n != 0);
}
@@ -2380,7 +2403,7 @@ void zero_width_node::vertical_extent(vunits *min, vunits *max)
node_list_vertical_extent(n, min, max);
}
-overstrike_node::overstrike_node() : max_width(H0), list(0)
+overstrike_node::overstrike_node() : list(0), max_width(H0)
{
}
@@ -2416,7 +2439,7 @@ hunits overstrike_node::width()
return max_width;
}
-bracket_node::bracket_node() : max_width(H0), list(0)
+bracket_node::bracket_node() : list(0), max_width(H0)
{
}
@@ -2428,7 +2451,8 @@ bracket_node::~bracket_node()
node *bracket_node::copy()
{
bracket_node *on = new bracket_node;
- node *last, *tem;
+ node *last = 0;
+ node *tem;
for (tem = list; tem; tem = tem->next) {
if (tem->next)
tem->next->last = tem;
@@ -3293,7 +3317,7 @@ hvpair::hvpair()
}
draw_node::draw_node(char c, hvpair *p, int np, font_size s)
- : code(c), npoints(np), sz(s)
+ : npoints(np), sz(s), code(c)
{
point = new hvpair[npoints];
for (int i = 0; i < npoints; i++)
@@ -3969,7 +3993,7 @@ const char *italic_corrected_node::type()
left_italic_corrected_node::left_italic_corrected_node(node *x)
-: n(0), node(x)
+: node(x), n(0)
{
}
@@ -4396,7 +4420,7 @@ void font_position()
}
font_family::font_family(symbol s)
-: nm(s), map_size(10)
+: map_size(10), nm(s)
{
map = new int[map_size];
for (int i = 0; i < map_size; i++)
diff --git a/troff/node.h b/src/roff/troff/node.h
index fdfe36d4e..b50955759 100644
--- a/troff/node.h
+++ b/src/roff/troff/node.h
@@ -440,7 +440,7 @@ node *copy_node_list(node *);
int get_bold_fontno(int f);
inline hyphen_list::hyphen_list(unsigned char code, hyphen_list *p)
-: hyphenation_code(code), next(p), hyphen(0), breakable(0)
+: hyphen(0), breakable(0), hyphenation_code(code), next(p)
{
}
@@ -466,6 +466,7 @@ public:
virtual void begin_page(int pageno, vunits page_length) = 0;
virtual void copy_file(hunits x, vunits y, const char *filename) = 0;
virtual int is_printing() = 0;
+ virtual void put_filename (const char *filename);
#ifdef COLUMN
virtual void vjustify(vunits, symbol);
#endif /* COLUMN */
diff --git a/troff/number.cc b/src/roff/troff/number.cc
index b4e3d1dec..b4e3d1dec 100644
--- a/troff/number.cc
+++ b/src/roff/troff/number.cc
diff --git a/troff/reg.cc b/src/roff/troff/reg.cc
index a9eec052e..1aa27f82e 100644
--- a/troff/reg.cc
+++ b/src/roff/troff/reg.cc
@@ -74,7 +74,7 @@ static const char *number_value_to_ascii(int value, char format, int width)
if (width <= 0)
return itoa(value);
else if (width > sizeof(buf) - 2)
- sprintf(buf, "%.*d", sizeof(buf) - 2, int(value));
+ sprintf(buf, "%.*d", int(sizeof(buf) - 2), int(value));
else
sprintf(buf, "%.*d", width, int(value));
break;
diff --git a/troff/reg.h b/src/roff/troff/reg.h
index 51d5b9a1e..51d5b9a1e 100644
--- a/troff/reg.h
+++ b/src/roff/troff/reg.h
diff --git a/troff/request.h b/src/roff/troff/request.h
index 2334a4638..2334a4638 100644
--- a/troff/request.h
+++ b/src/roff/troff/request.h
diff --git a/troff/symbol.cc b/src/roff/troff/symbol.cc
index ce09e393d..ce09e393d 100644
--- a/troff/symbol.cc
+++ b/src/roff/troff/symbol.cc
diff --git a/troff/symbol.h b/src/roff/troff/symbol.h
index 88e0fff39..88e0fff39 100644
--- a/troff/symbol.h
+++ b/src/roff/troff/symbol.h
diff --git a/troff/token.h b/src/roff/troff/token.h
index 5a7d44092..f6707f2a4 100644
--- a/troff/token.h
+++ b/src/roff/troff/token.h
@@ -68,6 +68,7 @@ public:
int nspaces(); // 1 if space, 2 if double space, 0 otherwise
int space(); // is it a space or double space?
int white_space(); // is the current token space or tab?
+ int special(); // is the current token a special character?
int newline(); // is the current token a newline?
int tab(); // is the current token a tab?
int leader();
@@ -124,6 +125,11 @@ inline int token::space()
return type == TOKEN_SPACE;
}
+inline int token::special()
+{
+ return type == TOKEN_SPECIAL;
+}
+
inline int token::nspaces()
{
if (type == TOKEN_SPACE)
diff --git a/troff/troff.h b/src/roff/troff/troff.h
index c55850166..c55850166 100644
--- a/troff/troff.h
+++ b/src/roff/troff/troff.h
diff --git a/troff/troff.man b/src/roff/troff/troff.man
index 4d54afd69..82d373bad 100644
--- a/troff/troff.man
+++ b/src/roff/troff/troff.man
@@ -1092,8 +1092,25 @@ exists, append to it instead of truncating it.
Print the names and contents of all currently defined number registers
on stderr.
.TP
+.BI .psbb \ filename
+Get the bounding box of a PostScript image
+.IR filename .
+This file must conform to Adobe's Document Structuring Conventions; the
+command looks for a
+.B %%BoundingBox
+comment to extract the bounding box values.
+After a successful call, the coordinates (in PostScript units) of the lower
+left and upper right edge can be found in the registers
+.BR \en[llx] ,
+.BR \en[lly] ,
+.BR \en[urx] ,
+and
+.BR \en[ury] ,
+respectively.
+If some error has occurred, the four registers are set to zero.
+.TP
.BI .pso \ command
-This is behaves like the
+This behaves like the
.B so
request except that input comes from the standard output of
.IR command .
@@ -1639,6 +1656,21 @@ then
.B \en(.y
will contain
.BR 03 .
+.TP
+.B \en(.Y
+The revision number of groff.
+.TP
+.B \en[llx]
+.TQ
+.B \en[lly]
+.TQ
+.B \en[urx]
+.TQ
+.B \en[ury]
+These four registers are set by the
+.B \&.psbb
+request and contain the bounding box values (in PostScript units) of a given
+PostScript image.
.LP
The following registers are set by the
.B \ew
@@ -1676,6 +1708,14 @@ If greater than 0, the maximum number of objects on the input stack.
If less than or equal to 0, there is no limit on the number of objects
on the input stack. With no limit, recursion can continue until
virtual memory is exhausted.
+.TP
+.B \en[year]
+The current year.
+Note that the traditional
+.B troff
+number register
+.B \en[yr]
+is the current year minus 1900.
.SS Miscellaneous
.LP
Fonts not listed in the
diff --git a/src/utils/addftinfo/Makefile.sub b/src/utils/addftinfo/Makefile.sub
new file mode 100644
index 000000000..23848d54f
--- /dev/null
+++ b/src/utils/addftinfo/Makefile.sub
@@ -0,0 +1,11 @@
+PROG=addftinfo
+MAN1=addftinfo.n
+XLIBS=$(LIBGROFF)
+OBJS=\
+ addftinfo.o \
+ guess.o
+CCSRCS=\
+ $(srcdir)/addftinfo.cc \
+ $(srcdir)/guess.cc
+HDRS=\
+ $(srcdir)/guess.h
diff --git a/addftinfo/addftinfo.cc b/src/utils/addftinfo/addftinfo.cc
index 55b62427d..55b62427d 100644
--- a/addftinfo/addftinfo.cc
+++ b/src/utils/addftinfo/addftinfo.cc
diff --git a/addftinfo/addftinfo.man b/src/utils/addftinfo/addftinfo.man
index 6741c171f..6741c171f 100644
--- a/addftinfo/addftinfo.man
+++ b/src/utils/addftinfo/addftinfo.man
diff --git a/addftinfo/guess.cc b/src/utils/addftinfo/guess.cc
index dcfd4c92c..dcfd4c92c 100644
--- a/addftinfo/guess.cc
+++ b/src/utils/addftinfo/guess.cc
diff --git a/addftinfo/guess.h b/src/utils/addftinfo/guess.h
index 4471dda8d..4471dda8d 100644
--- a/addftinfo/guess.h
+++ b/src/utils/addftinfo/guess.h
diff --git a/afmtodit/Makefile.sub b/src/utils/afmtodit/Makefile.sub
index fb5daac6c..c27b2b803 100644
--- a/afmtodit/Makefile.sub
+++ b/src/utils/afmtodit/Makefile.sub
@@ -13,7 +13,7 @@ afmtodit: afmtodit.pl
chmod +x afmtodit
install_data: afmtodit
- -test -d $(bindir) || mkdir $(bindir)
+ -test -d $(bindir) || $(mkinstalldirs) $(bindir)
-rm -f $(bindir)/afmtodit
$(INSTALL_PROGRAM) afmtodit $(bindir)/afmtodit
diff --git a/afmtodit/afmtodit.man b/src/utils/afmtodit/afmtodit.man
index 84fe8f292..84fe8f292 100644
--- a/afmtodit/afmtodit.man
+++ b/src/utils/afmtodit/afmtodit.man
diff --git a/afmtodit/afmtodit.pl b/src/utils/afmtodit/afmtodit.pl
index c3d839a22..a44ae7a2d 100644
--- a/afmtodit/afmtodit.pl
+++ b/src/utils/afmtodit/afmtodit.pl
@@ -1,6 +1,6 @@
#! /usr/bin/perl -P-
# -*- Perl -*-
-#Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
+#Copyright (C) 1989-2000 Free Software Foundation, Inc.
# Written by James Clark (jjc@jclark.com)
#
#This file is part of groff.
@@ -311,7 +311,7 @@ for ($i = 0; $i < 256; $i++) {
printf(",%d", do conv($h));
}
printf("\t%d", $type);
- printf("\t0%03o\t%s\n", $i, $ch);
+ printf("\t0%03o\t-- %s\n", $i, $ch);
for ($j = 1; $j < $nmap{$ch}; $j++) {
printf("%s\t\"\n", $map{$ch,$j});
}
diff --git a/hpftodit/Makefile.sub b/src/utils/hpftodit/Makefile.sub
index 16744d9f5..f5ff13e48 100644
--- a/hpftodit/Makefile.sub
+++ b/src/utils/hpftodit/Makefile.sub
@@ -3,4 +3,4 @@ MAN1=hpftodit.n
XLIBS=$(LIBGROFF)
MLIB=$(LIBM)
OBJS=hpftodit.o
-CCSRCS=hpftodit.cc
+CCSRCS=$(srcdir)/hpftodit.cc
diff --git a/hpftodit/hpftodit.cc b/src/utils/hpftodit/hpftodit.cc
index c11f8cbb1..af0738c49 100644
--- a/hpftodit/hpftodit.cc
+++ b/src/utils/hpftodit/hpftodit.cc
@@ -219,8 +219,8 @@ int main(int argc, char **argv)
break;
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "hpftodit version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "hpftodit version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/hpftodit/hpftodit.man b/src/utils/hpftodit/hpftodit.man
index 75af154e2..75af154e2 100644
--- a/hpftodit/hpftodit.man
+++ b/src/utils/hpftodit/hpftodit.man
diff --git a/indxbib/Makefile.sub b/src/utils/indxbib/Makefile.sub
index b23b425c5..2c50e659a 100644
--- a/indxbib/Makefile.sub
+++ b/src/utils/indxbib/Makefile.sub
@@ -2,14 +2,20 @@ PROG=indxbib
MAN1=indxbib.n
XLIBS=$(LIBBIB) $(LIBGROFF)
MLIB=$(LIBM)
-OBJS=indxbib.o dirnamemax.o signal.o
-CCSRCS=indxbib.cc
-CSRCS=dirnamemax.c signal.c
+OBJS=\
+ indxbib.o \
+ dirnamemax.o \
+ signal.o
+CCSRCS=\
+ $(srcdir)/indxbib.cc
+CSRCS=\
+ $(srcdir)/dirnamemax.c \
+ $(srcdir)/signal.c
NAMEPREFIX=$(g)
install_data: eign
- -test -d $(datadir) || mkdir $(datadir)
- -test -d $(datasubdir) || mkdir $(datasubdir)
+ -test -d $(datadir) || $(mkinstalldirs) $(datadir)
+ -test -d $(datasubdir) || $(mkinstalldirs) $(datasubdir)
if test -f /usr/lib/eign; then \
rm -f $(common_words_file); \
ln -s /usr/lib/eign $(common_words_file) 2>/dev/null \
diff --git a/indxbib/dirnamemax.c b/src/utils/indxbib/dirnamemax.c
index a8cd9923c..a8cd9923c 100644..100755
--- a/indxbib/dirnamemax.c
+++ b/src/utils/indxbib/dirnamemax.c
diff --git a/indxbib/eign b/src/utils/indxbib/eign
index 7718c8b11..7718c8b11 100644
--- a/indxbib/eign
+++ b/src/utils/indxbib/eign
diff --git a/indxbib/indxbib.cc b/src/utils/indxbib/indxbib.cc
index fe310c35b..c22190f53 100644
--- a/indxbib/indxbib.cc
+++ b/src/utils/indxbib/indxbib.cc
@@ -169,8 +169,8 @@ int main(int argc, char **argv)
break;
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU indxbib version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU indxbib version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/indxbib/indxbib.man b/src/utils/indxbib/indxbib.man
index 914cb6980..914cb6980 100644
--- a/indxbib/indxbib.man
+++ b/src/utils/indxbib/indxbib.man
diff --git a/indxbib/signal.c b/src/utils/indxbib/signal.c
index 8078472f9..8078472f9 100644
--- a/indxbib/signal.c
+++ b/src/utils/indxbib/signal.c
diff --git a/lkbib/Makefile.sub b/src/utils/lkbib/Makefile.sub
index 30035bcf0..8f31e10f5 100644
--- a/lkbib/Makefile.sub
+++ b/src/utils/lkbib/Makefile.sub
@@ -3,4 +3,4 @@ MAN1=lkbib.n
XLIBS=$(LIBBIB) $(LIBGROFF)
MLIB=$(LIBM)
OBJS=lkbib.o
-CCSRCS=lkbib.cc
+CCSRCS=$(srcdir)/lkbib.cc
diff --git a/lkbib/lkbib.cc b/src/utils/lkbib/lkbib.cc
index 6cba5e58e..cfd099a53 100644
--- a/lkbib/lkbib.cc
+++ b/src/utils/lkbib/lkbib.cc
@@ -73,8 +73,8 @@ int main(int argc, char **argv)
}
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU lkbib version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU lkbib version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/lkbib/lkbib.man b/src/utils/lkbib/lkbib.man
index f16a77ec6..f16a77ec6 100644
--- a/lkbib/lkbib.man
+++ b/src/utils/lkbib/lkbib.man
diff --git a/lookbib/Makefile.sub b/src/utils/lookbib/Makefile.sub
index 1183812c5..91b140453 100644
--- a/lookbib/Makefile.sub
+++ b/src/utils/lookbib/Makefile.sub
@@ -3,5 +3,5 @@ MAN1=lookbib.n
XLIBS=$(LIBBIB) $(LIBGROFF)
MLIB=$(LIBM)
OBJS=lookbib.o
-CCSRCS=lookbib.cc
+CCSRCS=$(srcdir)/lookbib.cc
NAMEPREFIX=$(g)
diff --git a/lookbib/lookbib.cc b/src/utils/lookbib/lookbib.cc
index 7154a0178..4240a47fe 100644
--- a/lookbib/lookbib.cc
+++ b/src/utils/lookbib/lookbib.cc
@@ -72,8 +72,8 @@ int main(int argc, char **argv)
}
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "GNU lookbib version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "GNU lookbib version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/lookbib/lookbib.man b/src/utils/lookbib/lookbib.man
index 465990bae..465990bae 100644
--- a/lookbib/lookbib.man
+++ b/src/utils/lookbib/lookbib.man
diff --git a/pfbtops/Makefile.sub b/src/utils/pfbtops/Makefile.sub
index aa464ddd2..f731ff578 100644
--- a/pfbtops/Makefile.sub
+++ b/src/utils/pfbtops/Makefile.sub
@@ -1,6 +1,6 @@
PROG=pfbtops
MAN1=pfbtops.n
OBJS=pfbtops.o
-CSRCS=pfbtops.c
+CSRCS=$(srcdir)/pfbtops.c
XLIBS=$(LIBGROFF)
MLIB=$(LIBM)
diff --git a/pfbtops/pfbtops.c b/src/utils/pfbtops/pfbtops.c
index fb370ab79..46b882f53 100644
--- a/pfbtops/pfbtops.c
+++ b/src/utils/pfbtops/pfbtops.c
@@ -34,8 +34,8 @@ int main(argc, argv)
switch (opt) {
case 'v':
{
- extern char *version_string;
- fprintf(stderr, "pfbtops groff version %s\n", version_string);
+ extern char *Version_string;
+ fprintf(stderr, "pfbtops groff version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/pfbtops/pfbtops.man b/src/utils/pfbtops/pfbtops.man
index cfef3e0a1..cfef3e0a1 100644
--- a/pfbtops/pfbtops.man
+++ b/src/utils/pfbtops/pfbtops.man
diff --git a/tfmtodit/Makefile.sub b/src/utils/tfmtodit/Makefile.sub
index aa430e2da..057bb3e66 100644
--- a/tfmtodit/Makefile.sub
+++ b/src/utils/tfmtodit/Makefile.sub
@@ -3,4 +3,4 @@ MAN1=tfmtodit.n
XLIBS=$(LIBGROFF)
MLIB=$(LIBM)
OBJS=tfmtodit.o
-CCSRCS=tfmtodit.cc
+CCSRCS=$(srcdir)/tfmtodit.cc
diff --git a/tfmtodit/tfmtodit.cc b/src/utils/tfmtodit/tfmtodit.cc
index 18f9ed168..167527420 100644
--- a/tfmtodit/tfmtodit.cc
+++ b/src/utils/tfmtodit/tfmtodit.cc
@@ -125,7 +125,7 @@ public:
kern_iterator::kern_iterator(tfm *p)
-: t(p), i(-1), c(t->bc)
+: t(p), c(t->bc), i(-1)
{
}
@@ -711,8 +711,8 @@ int main(int argc, char **argv)
}
case 'v':
{
- extern const char *version_string;
- fprintf(stderr, "tfmtodit version %s\n", version_string);
+ extern const char *Version_string;
+ fprintf(stderr, "tfmtodit version %s\n", Version_string);
fflush(stderr);
break;
}
diff --git a/tfmtodit/tfmtodit.man b/src/utils/tfmtodit/tfmtodit.man
index f17c4414a..f17c4414a 100644
--- a/tfmtodit/tfmtodit.man
+++ b/src/utils/tfmtodit/tfmtodit.man
diff --git a/xditview/ChangeLog b/src/xditview/ChangeLog
index 6dffe9eca..435e1869f 100644
--- a/xditview/ChangeLog
+++ b/src/xditview/ChangeLog
@@ -1,3 +1,12 @@
+2000-02-06 Werner LEMBERG <wl@gnu.org>
+
+ * Imakefile: Adapted to new directory structure.
+
+ * README: Updated.
+
+Version 1.15 released
+=====================
+
1999-12-21 Werner LEMBERG <wl@gnu.org>
* README: Fixed ftp GNU address.
@@ -293,7 +302,7 @@ Sun May 26 14:14:01 1991 James Clark (jjc at jclark)
* xditview.c: Add -resolution argument.
* GXditview.ad: Add default for GXditview.height.
* Dvi.c (Initialize, SetDevice): Use default_resolution.
-
+
* Dvi.c: Make MY_HEIGHT and MY_WIDTH use the paperlength and
paperwidth commands in the DESC file.
diff --git a/xditview/DESC b/src/xditview/DESC
index 172170c9c..172170c9c 100644
--- a/xditview/DESC
+++ b/src/xditview/DESC
diff --git a/xditview/Dvi.c b/src/xditview/Dvi.c
index 5eae76d8b..5eae76d8b 100644
--- a/xditview/Dvi.c
+++ b/src/xditview/Dvi.c
diff --git a/xditview/Dvi.h b/src/xditview/Dvi.h
index 5aab7d8c7..5aab7d8c7 100644
--- a/xditview/Dvi.h
+++ b/src/xditview/Dvi.h
diff --git a/xditview/DviChar.c b/src/xditview/DviChar.c
index 90c636984..90c636984 100644
--- a/xditview/DviChar.c
+++ b/src/xditview/DviChar.c
diff --git a/xditview/DviChar.h b/src/xditview/DviChar.h
index b075240d3..b075240d3 100644
--- a/xditview/DviChar.h
+++ b/src/xditview/DviChar.h
diff --git a/xditview/DviP.h b/src/xditview/DviP.h
index 851fdfeed..851fdfeed 100644
--- a/xditview/DviP.h
+++ b/src/xditview/DviP.h
diff --git a/xditview/FontMap b/src/xditview/FontMap
index 90911f048..90911f048 100644
--- a/xditview/FontMap
+++ b/src/xditview/FontMap
diff --git a/xditview/GXditview-ad.h b/src/xditview/GXditview-ad.h
index d9be3da25..d9be3da25 100644
--- a/xditview/GXditview-ad.h
+++ b/src/xditview/GXditview-ad.h
diff --git a/xditview/GXditview.ad b/src/xditview/GXditview.ad
index e99ff5e16..e99ff5e16 100644
--- a/xditview/GXditview.ad
+++ b/src/xditview/GXditview.ad
diff --git a/xditview/INSTALL b/src/xditview/INSTALL
index 144118fd7..144118fd7 100644
--- a/xditview/INSTALL
+++ b/src/xditview/INSTALL
diff --git a/xditview/Imakefile b/src/xditview/Imakefile
index e0a9c66d0..ad94a07bc 100644..100755
--- a/xditview/Imakefile
+++ b/src/xditview/Imakefile
@@ -16,6 +16,9 @@ INCLUDES = -I$(TOOLKITSRC) -I$(TOP)
MATHLIB = -lm
DEFINES = $(SIGNAL_DEFINES) -DFONTPATH=\"$(GROFF_FONTPATH)\" # -DX_NOT_STDC_ENV
+DEVDIR = ../../font
+MKINSTALLDIRS = ../../mkinstalldirs
+
ComplexProgramTarget_1(gxditview,$(LOCAL_LIBRARIES),$(MATHLIB))
NormalProgramTarget(xtotroff,$(OBJS2),$(DEPXLIB),$(XLIB), /**/)
@@ -26,20 +29,22 @@ fonts: xtotroff DESC FontMap
fonts=`sed -e 's/[ ].*//' FontMap`; \
for dpi in $(DPIS); do \
echo Making devX$$dpi; \
- test -d ../devX$$dpi || mkdir ../devX$$dpi; \
- rm -f ../devX$$dpi/DESC; \
- sed -e "s/res 75/res $$dpi/" DESC >../devX$$dpi/DESC; \
- (cd ../devX$$dpi; \
+ test -d $(DEVDIR)/devX$$dpi || \
+ $(MKINSTALLDIRS) $(DEVDIR)/devX$$dpi; \
+ rm -f $(DEVDIR)/devX$$dpi/DESC; \
+ sed -e "s/res 75/res $$dpi/" DESC >$(DEVDIR)/devX$$dpi/DESC; \
+ (cd $(DEVDIR)/devX$$dpi; \
rm -f Makefile.sub; \
echo DEV=X$$dpi >Makefile.sub; \
echo DEVFILES=DESC $$fonts >>Makefile.sub; \
$$dir/xtotroff -g -r $$dpi -s 10 $$dir/FontMap); \
echo Making devX$$dpi-12; \
- test -d ../devX$$dpi-12 || mkdir ../devX$$dpi-12; \
- rm -f ../devX$$dpi-12/DESC; \
+ test -d $(DEVDIR)/devX$$dpi-12 || \
+ $(MKINSTALLDIRS) $(DEVDIR)/devX$$dpi-12; \
+ rm -f $(DEVDIR)/devX$$dpi-12/DESC; \
sed -e "s/res 75/res $$dpi/" -e 's/unitwidth 10/unitwidth 12/' DESC \
- >../devX$$dpi-12/DESC; \
- (cd ../devX$$dpi-12; \
+ >$(DEVDIR)/devX$$dpi-12/DESC; \
+ (cd $(DEVDIR)/devX$$dpi-12; \
rm -f Makefile.sub; \
echo DEV=X$$dpi-12 >Makefile.sub; \
echo DEVFILES=DESC $$fonts >>Makefile.sub; \
diff --git a/xditview/Menu.h b/src/xditview/Menu.h
index c306b2740..c306b2740 100644
--- a/xditview/Menu.h
+++ b/src/xditview/Menu.h
diff --git a/xditview/README b/src/xditview/README
index 7e061b03e..b18f64a7b 100644
--- a/xditview/README
+++ b/src/xditview/README
@@ -1,7 +1,7 @@
This is gxditview, a X11 previewer for groff based on MIT's xditview.
This version can be used with the output of gtroff -Tps as well as
-with -TX75 and -TX100. You will need X11R5 to install it (it might
-work on X11R4, but I haven't tested it.)
+with -TX75 and -TX100. You will need X11R5 or newer to install it (it
+might work on X11R4, but I haven't tested it.)
See the file INSTALL in this directory for installation instructions.
diff --git a/xditview/TODO b/src/xditview/TODO
index 161a7cf11..161a7cf11 100644
--- a/xditview/TODO
+++ b/src/xditview/TODO
diff --git a/xditview/XFontName.c b/src/xditview/XFontName.c
index 5ca9bb81e..5ca9bb81e 100644
--- a/xditview/XFontName.c
+++ b/src/xditview/XFontName.c
diff --git a/xditview/XFontName.h b/src/xditview/XFontName.h
index efe9eb16d..efe9eb16d 100644
--- a/xditview/XFontName.h
+++ b/src/xditview/XFontName.h
diff --git a/xditview/ad2c b/src/xditview/ad2c
index 651ab8c40..651ab8c40 100644
--- a/xditview/ad2c
+++ b/src/xditview/ad2c
diff --git a/xditview/device.c b/src/xditview/device.c
index f1e51dead..f1e51dead 100644
--- a/xditview/device.c
+++ b/src/xditview/device.c
diff --git a/xditview/device.h b/src/xditview/device.h
index 2b9a64bac..2b9a64bac 100644
--- a/xditview/device.h
+++ b/src/xditview/device.h
diff --git a/xditview/draw.c b/src/xditview/draw.c
index 69e86cd6a..69e86cd6a 100644
--- a/xditview/draw.c
+++ b/src/xditview/draw.c
diff --git a/xditview/font.c b/src/xditview/font.c
index 2e028aa60..2e028aa60 100644
--- a/xditview/font.c
+++ b/src/xditview/font.c
diff --git a/xditview/gray1.bm b/src/xditview/gray1.bm
index c40a95e6e..c40a95e6e 100644
--- a/xditview/gray1.bm
+++ b/src/xditview/gray1.bm
diff --git a/xditview/gray2.bm b/src/xditview/gray2.bm
index e87a1bcc0..e87a1bcc0 100644
--- a/xditview/gray2.bm
+++ b/src/xditview/gray2.bm
diff --git a/xditview/gray3.bm b/src/xditview/gray3.bm
index d9313ebd5..d9313ebd5 100644
--- a/xditview/gray3.bm
+++ b/src/xditview/gray3.bm
diff --git a/xditview/gray4.bm b/src/xditview/gray4.bm
index dad142a9b..dad142a9b 100644
--- a/xditview/gray4.bm
+++ b/src/xditview/gray4.bm
diff --git a/xditview/gray5.bm b/src/xditview/gray5.bm
index 5f5761841..5f5761841 100644
--- a/xditview/gray5.bm
+++ b/src/xditview/gray5.bm
diff --git a/xditview/gray6.bm b/src/xditview/gray6.bm
index b76701db1..b76701db1 100644
--- a/xditview/gray6.bm
+++ b/src/xditview/gray6.bm
diff --git a/xditview/gray7.bm b/src/xditview/gray7.bm
index ef47bc692..ef47bc692 100644
--- a/xditview/gray7.bm
+++ b/src/xditview/gray7.bm
diff --git a/xditview/gray8.bm b/src/xditview/gray8.bm
index 12de7cb6f..12de7cb6f 100644
--- a/xditview/gray8.bm
+++ b/src/xditview/gray8.bm
diff --git a/xditview/gxditview.man b/src/xditview/gxditview.man
index 04cd446df..04cd446df 100644
--- a/xditview/gxditview.man
+++ b/src/xditview/gxditview.man
diff --git a/xditview/lex.c b/src/xditview/lex.c
index 32831bdac..32831bdac 100644
--- a/xditview/lex.c
+++ b/src/xditview/lex.c
diff --git a/xditview/page.c b/src/xditview/page.c
index 9284199cd..9284199cd 100644
--- a/xditview/page.c
+++ b/src/xditview/page.c
diff --git a/xditview/parse.c b/src/xditview/parse.c
index 8367c17b9..8367c17b9 100644
--- a/xditview/parse.c
+++ b/src/xditview/parse.c
diff --git a/xditview/xdit.bm b/src/xditview/xdit.bm
index 67b9c8ab5..67b9c8ab5 100644
--- a/xditview/xdit.bm
+++ b/src/xditview/xdit.bm
diff --git a/xditview/xdit_mask.bm b/src/xditview/xdit_mask.bm
index f34a4f863..f34a4f863 100644
--- a/xditview/xdit_mask.bm
+++ b/src/xditview/xdit_mask.bm
diff --git a/xditview/xditview.c b/src/xditview/xditview.c
index e836cf507..e836cf507 100644
--- a/xditview/xditview.c
+++ b/src/xditview/xditview.c
diff --git a/xditview/xtotroff.c b/src/xditview/xtotroff.c
index 3e4e78bc2..3e4e78bc2 100644
--- a/xditview/xtotroff.c
+++ b/src/xditview/xtotroff.c
diff --git a/tbl/Makefile.dep b/tbl/Makefile.dep
deleted file mode 100644
index fd68809e2..000000000
--- a/tbl/Makefile.dep
+++ /dev/null
@@ -1,6 +0,0 @@
-main.o: main.cc table.h ../include/cset.h ../include/cmap.h \
- ../include/stringclass.h ../include/errarg.h ../include/error.h \
- ../include/lib.h
-table.o: table.cc table.h ../include/cset.h ../include/cmap.h \
- ../include/stringclass.h ../include/errarg.h ../include/error.h \
- ../include/lib.h
diff --git a/tbl/Makefile.sub b/tbl/Makefile.sub
deleted file mode 100644
index 8ab4a7478..000000000
--- a/tbl/Makefile.sub
+++ /dev/null
@@ -1,7 +0,0 @@
-PROG=tbl
-MAN1=tbl.n
-XLIBS=$(LIBGROFF)
-OBJS=main.o table.o
-CCSRCS=main.cc table.cc
-HDRS=table.h
-NAMEPREFIX=$(g)
diff --git a/test-groff b/test-groff
index 35fd0e07c..e78ba302e 100755..100644
--- a/test-groff
+++ b/test-groff
@@ -2,25 +2,38 @@
# This script runs groff without requiring that it be installed.
# The current directory must be the build directory.
-builddir=.
+builddir=./src
srcdir=`echo $0 | sed -e 's;/[^/]*$;;'`
-if test ! -d groff || test ! -r groff/groff
+if test ! -d $builddir/roff/groff || test ! -r $builddir/roff/groff/groff
then
echo $0 must be run with the build directory as the current directory 2>&1
exit 1
fi
-PATH=$builddir/troff:$builddir/pic:$builddir/eqn:$builddir/tbl:$builddir/refer:$builddir/soelim:$builddir/grops:$builddir/grodvi:$builddir/grotty:$srcdir/$builddir/xditview:$PATH
+PATH=\
+$builddir/roff/troff:\
+$builddir/preproc/pic:\
+$builddir/preproc/eqn:\
+$builddir/preproc/tbl:\
+$builddir/preproc/refer:\
+$builddir/preproc/soelim:\
+$builddir/devices/grops:\
+$builddir/devices/grodvi:\
+$builddir/devices/grotty:\
+$builddir/devices/grolj4:\
+$builddir/devices/grohtml:\
+$srcdir/$builddir/xditview:\
+$PATH
test -n "$srcdir" || srcdir=.
-XENVIRONMENT=`cd $srcdir; pwd`/xditview/GXditview.ad
+XENVIRONMENT=`cd $srcdir; pwd`/src/xditview/GXditview.ad
export XENVIRONMENT
GROFF_COMMAND_PREFIX=
-GROFF_FONT_PATH=$builddir:$srcdir
-GROFF_TMAC_PATH=$srcdir/tmac:$srcdir/troff
+GROFF_FONT_PATH=$builddir:$srcdir/font
+GROFF_TMAC_PATH=$srcdir/tmac:$srcdir/src/roff/troff
export PATH GROFF_COMMAND_PREFIX GROFF_FONT_PATH GROFF_TMAC_PATH
-exec $builddir/groff/groff ${1+"$@"}
+exec $builddir/roff/groff/groff ${1+"$@"}
diff --git a/tfmtodit/Makefile.dep b/tfmtodit/Makefile.dep
deleted file mode 100644
index 1d09926e9..000000000
--- a/tfmtodit/Makefile.dep
+++ /dev/null
@@ -1,2 +0,0 @@
-tfmtodit.o: tfmtodit.cc ../include/lib.h ../include/errarg.h \
- ../include/error.h ../include/assert.h ../include/cset.h
diff --git a/tmac/Makefile.sub b/tmac/Makefile.sub
index 5fd7b4daa..48db39c04 100644
--- a/tmac/Makefile.sub
+++ b/tmac/Makefile.sub
@@ -1,15 +1,24 @@
-MAN7=groff_ms.n groff_man.n groff_me.n groff_msafer.n \
- groff_mdoc.n groff_mdoc.samples.n
+MAN7=\
+ groff_ms.n \
+ groff_man.n \
+ groff_me.n \
+ groff_msafer.n \
+ groff_mdoc.n \
+ groff_mdoc.samples.n \
+ groff_markup.n
-NORMALFILES=tmac.andoc tmac.pic tmac.ps tmac.psnew tmac.psold tmac.pspic \
- tmac.psatk tmac.dvi tmac.tty tmac.tty-char tmac.X tmac.Xps tmac.latin1 \
- tmac.lj4 eqnrc troffrc tmac.safer tmac.html tmac.arkup
+NORMALFILES=\
+ tmac.andoc tmac.pic tmac.ps tmac.psnew tmac.psold tmac.pspic \
+ tmac.psatk tmac.dvi tmac.tty tmac.tty-char tmac.X tmac.Xps tmac.latin1 \
+ tmac.lj4 eqnrc troffrc troffrc-end tmac.safer tmac.html tmac.arkup \
+ tmac.a4 tmac.trace
SPECIALFILES=tmac.an tmac.s
STRIPFILES=tmac.e tmac.doc tmac.doc.old
MDOCFILES=doc-common doc-ditroff doc-nroff doc-syms
mdocdir=$(tmacdir)/mdoc
-CLEANADD=stamp-strip stamp-wrap tmac.e-s tmac.doc-s tmac.doc.old-s \
- doc-common-s doc-ditroff-s doc-nroff-s doc-syms-s *-wrap
+CLEANADD=\
+ stamp-strip stamp-wrap tmac.e-s tmac.doc-s tmac.doc.old-s \
+ doc-common-s doc-ditroff-s doc-nroff-s doc-syms-s *-wrap
tmac_s_prefix=
tmac_an_prefix=
tmac_wrap=
@@ -18,7 +27,7 @@ sys_tmac_prefix=
all: stamp-strip stamp-wrap
install_data: $(NORMALFILES) $(SPECIALFILES) stamp-wrap stamp-strip man.local
- -test -d $(tmacdir) || mkdir $(tmacdir)
+ -test -d $(tmacdir) || $(mkinstalldirs) $(tmacdir)
if test -n "$(tmac_wrap)"; then \
for m in ""$(tmac_wrap); do \
$(INSTALL_DATA) $$m-wrap $(tmacdir)/tmac.$$m; \
@@ -36,7 +45,7 @@ install_data: $(NORMALFILES) $(SPECIALFILES) stamp-wrap stamp-strip man.local
rm -f $(tmacdir)/$$f; \
$(INSTALL_DATA) $$f-s $(tmacdir)/$$f; \
done
- -test -d $(mdocdir) || mkdir $(mdocdir)
+ -test -d $(mdocdir) || $(mkinstalldirs) $(mdocdir)
for f in $(MDOCFILES); do \
rm -f $(mdocdir)/$$f; \
$(INSTALL_DATA) $$f-s $(mdocdir)/$$f; \
diff --git a/tmac/eqnrc b/tmac/eqnrc
index 4b263cfd6..a8bc83656 100644
--- a/tmac/eqnrc
+++ b/tmac/eqnrc
@@ -51,6 +51,7 @@ ifdef ps|X|html ! set draw_lines 1 !
ifdef ascii ! define n %1% !
ifdef latin1 ! define n %1% !
+ifdef utf8 ! define n %1% !
ifdef n !
set nroff 1
!
diff --git a/tmac/groff_markup.man b/tmac/groff_markup.man
new file mode 100755
index 000000000..46233cea6
--- /dev/null
+++ b/tmac/groff_markup.man
@@ -0,0 +1,319 @@
+.TH GROFF_MARKUP @MAN7EXT@ "@MDATE@" "Groff Version @VERSION@"
+.\" Copyright (C) 2000 Free Software Foundation, Inc.
+.\" Written by Gaius Mulley (gaius@glam.ac.uk)
+.\"
+.\" This file is part of groff.
+.\"
+.\" groff is free software; you can redistribute it and/or modify it under
+.\" the terms of the GNU General Public License as published by the Free
+.\" Software Foundation; either version 2, or (at your option) any later
+.\" version.
+.\"
+.\" groff is distributed in the hope that it will be useful, but WITHOUT ANY
+.\" WARRANTY; without even the implied warranty of MERCHANTABILITY or
+.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+.\" for more details.
+.\"
+.\" You should have received a copy of the GNU General Public License along
+.\" with groff; see the file COPYING. If not, write to the Free Software
+.\" Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+.\"
+.\" user level guide to using the -markup macroset
+.\"
+.do mso tmac.arkup
+.LINE
+.SH NAME
+groff_markup \- groff macros for authoring web pages
+.LINE
+.SH SYNOPSIS
+.B "groff \-markup"
+[ options ]
+file ...
+.SH DESCRIPTION
+This manual page describes the GNU \-markup macros, which is part of the
+groff document formatting system.
+The manual page is very a basic guide, and the html device driver
+.RB ( grohtml )
+is still very alpha.
+It has been included into the distribution so that a lot of people have a
+chance to test it.
+Note that this macro file will be automatically called (via the
+\fCtroffrc\fP file) if you use \fC-Thtml\fP.
+.PP
+To see the hyperlinks in action, please format this man page with the
+.B grohtml
+device.
+.PP
+Here is a summary of the functions found in this macro set.
+.SH SYNPOSIS
+.ta 2iL
+\&.HTMLINDEX determine automatic link cut off
+.br
+ point for sections/headers
+.br
+\&.BODYCOLOR specify colours on a web page
+.br
+\&.BACKGROUND specify background image
+.br
+\&.URL create a url using two parameters
+.br
+\&.MAILTO create a html email address
+.br
+\&.FTP create an ftp reference
+.br
+\&.IMAGE include an image file
+.br
+\&.HTML pass an html raw request to the
+.br
+ device driver
+.br
+\&.TAG generate an html name tag from $1
+.br
+.\"\&.CDFTP optionally create two different links
+.\".br
+.\" depending on hostname
+.\".br
+\&.LINE create a full width horizontal rule
+.br
+.PP
+Output of the
+.IR pic ,
+.IR eqn ,
+.IR refer ,
+and
+.I tbl
+preprocessors is acceptable as input.
+.SH REQUESTS
+.TP
+.B HTMLINDEX
+determines the cut off point for automatic link generation to headings.
+By default all headings found in a troff document have links created to them
+at the top of the html web page.
+It maybe that many of the lower heading levels do not require links.
+Alternatively some web pages may not need any heading links at all, in which
+case:
+.sp
+.nf
+\fC\&.HTMLINDEX 0\fP
+.fi
+.sp
+will tell
+.B grohtml
+not to generate links.
+An \fCHTMLINDEX\fP of 2 will mean that a heading
+.sp
+.B "1.1.1 Some Title"
+.sp
+will not be included in the links either as it is said to have a heading
+level of three.
+.TP
+.B BODYCOLOR
+takes five parameters: foreground, background, active hypertext link,
+hypertext link not yet visited, and visited hypertext link colour.
+.TP
+.B BACKGROUND
+the only parameter to this macro is the background image file.
+.TP
+.B URL
+generates
+.TAG URL
+a URL using either two or three arguments.
+$1 is the name of the link, $2 is the actual URL, and $3 is optional stuff
+to be printed immediately after $2.
+Here is how to encode
+.URL "homepage for groff" http://groff.ffii.org/ :
+.sp
+.nf
+\s-2\fC\&.URL "homepage for groff" http://groff.ffii.org/ :\fP\s+2
+.fi
+.sp
+If this is processed by a device other than \fC-Thtml\fP
+it appears as:
+homepage for groff \(lahttp://groff.ffii.org\(ra.
+The URL macro can be of any type; for example we can reference
+.URL "Eric Raymond's pic guide" pic.html
+by:
+.sp
+.nf
+\s-2\fC\&.URL "Eric Raymond's pic guide" pic.html\fP\s+2
+.fi
+.sp
+.TP
+.B MAILTO
+generates an email html reference.
+The first argument is mandatory as the email address.
+The optional second argument is the text you see in your browser, and
+an optional third argument is stuff printed immediately after the
+second argument.
+For example, the groff maintainers are
+.MAILTO wl@gnu.org "Werner Lemberg"
+and
+.MAILTO Ted.Harding@nessie.mcc.ac.uk "Ted Harding" .
+This is achieved by the following macros:
+.sp
+.nf
+\s-2\fC\&.MAILTO wl@gnu.org "Werner Lemberg"\fP
+.sp
+\fC\&.MAILTO Ted.Harding@nessie.mcc.ac.uk \\
+.br
+"Ted Harding" .\s+2\fP
+.fi
+.sp
+Note that all the urls actually are treated as consuming no textual space
+in groff.
+This could be considered as a bug since it causes some problems.
+To circumvent this, \fCtmac.arkup\fP inserts a zero-width character which
+expands to a harmless space (only if in HTML mode)
+.TP
+.B FTP
+indicates that data can be obtained via ftp.
+The first argument is the browser text and the second is the url.
+A third argument, similar to the macros above, is intended for stuff printed
+immediately after the second argument.
+The second and the third parameter are optional.
+As an example, here the location of the
+.FTP "current groff development distribution" \
+ftp://ftp.ffii.org/pub/groff/devel/groff-current.tar.gz .
+The macro example above was specified by:
+.sp
+\s-2\fC\&.FTP "current groff development distribution" \\
+.br
+ftp://ftp.ffii.org/pub/groff/devel/groff-current.tar.gz .\fP\s+2
+.sp
+.TP
+.B IMAGE
+allows the document to include pictures.
+The first argument is the image file.
+The next two arguments are optional:
+Argument two is the width in pixels (default is 400 pixels if absent).
+The third argument is the height in pixels (default is the width value if
+absent).
+.sp
+.TP
+.B HTML
+all text after this macro is treated as raw html.
+If the document is processed \fIwithout\fP \fC-Thtml\fP then
+the macro is ignored.
+This macro is a building block for other higher level macros.
+.sp
+For example, the \fCBACKGROUND\fP macro is defined as:
+.nf
+\fC\&.de BACKGROUND
+\&. HTML <body background=\\$1>
+\&..
+\fP
+.fi
+.TP
+.B TAG
+generates an html name tag from its argument.
+This can then be referenced using the
+.URL URL #URL
+macro.
+As you can see, you must precede the tag name with `\fC#\fP' since it is
+a local reference.
+This link was achieved via placing a TAG in the URL description above;
+the source looks like this:
+.sp
+\s-2\fC\&.TP
+.br
+\&.B URL
+.br
+generates
+.br
+\&.TAG URL
+.br
+a URL using either two or three
+.br
+arguments.
+.br
+$1 is the name of the link, $2 is the actual URL
+.br
+\fP\s+2etc.
+.sp
+.\".TP
+.\".B CDFTP
+.\"takes four arguments.
+.\"Basically it is the FTP macro with optional local reference.
+.\"It was designed to allow the same groff source to be built on two different
+.\"machines and access the ftp data differently.
+.\"For example, on a web server you might wish for the web page to reference
+.\"a web site.
+.\"However, if you were producing a CDROM of your information you might wish
+.\"for the ftp data to be also stored on your CDROM and referenced as a file.
+.\"An example to get the current groff development distribution
+.\".CDFTP merlin "click here." \
+.\"ftp://ftp.ffii.org/pub/groff/devel/groff-current.tar.gz \
+.\"../../groff.tar.gz
+.\"The source for this CDFTP invocation is
+.\".sp
+.\"\fC\s-2\&.CDFTP merlin "click here." \
+.\"ftp://ftp.ffii.org/pub/groff/devel/groff-current.tar.gz \
+.\"../../groff.tar.gz\fP\s+2
+.\".sp
+.\"which means if the html is generated on machine \fCmerlin\fP
+.\"then generate a URL to \fC../../groff.tar.gz\fP.
+.\"Otherwise construct an FTP URL to
+.\"\fCftp://ftp.ffii.org/pub/groff/devel/groff-current.tar.gz\fP.
+.TP
+.B LINE
+generates a full width horizontal rule.
+Example:
+.sp
+\fC\s-2\&.LINE\fP\s+2
+.sp
+.SH
+SECTION HEADING LINKS
+.LP
+By default
+.B grohtml
+generates links to all section headings and places these at the top of the
+html document.
+.B Grohtml
+has to guess what a section heading looks like \(em remember that all
+.B grohtml
+actually sees is a device independent language telling it where to place
+text, draw lines, change font sizes and faces etc.
+It believes a section heading to be a line of bold text which starts at the
+left most margin.
+Consequently it may misinterpret.
+Users can turn off all heading and title guessing by giving invoking groff
+with \fCgroff -P-g\fP.
+.SH
+LIMITATIONS OF GROHTML
+.LP
+Although basic text can be translated in a straightforward fashion there are
+some areas where
+.B grohtml
+has to try and guess text relationship.
+In particular, whenever
+.B grohtml
+encounters text tables and indented paragraphs or two column mode it will
+try and utilize the html table construct to preserve columns.
+.B Grohtml
+also attempts to work out which lines should be automatically formatted by
+the browser.
+Ultimately in trying to make reasonable guesses most of the time it will
+make mistakes.
+Hopefully these mistakes will happen less and less as we get bug reports
+and patches :-).
+.PP
+Tbl, pic, eqn's are also generated using images which may be
+considered a limitation.
+.SH FILES
+@MACRODIR@/tmac.arkup
+.SH "SEE ALSO"
+.BR groff (@MAN1EXT@),
+.BR @g@troff (@MAN1EXT@)
+.BR grohtml (@MAN1EXT@),
+.LP
+.SH AUTHOR
+.B Grohtml
+is written by
+.MAILTO gaius@glam.ac.uk "Gaius Mulley"
+.LINE
+.SH BUGS
+Report bugs to the
+.MAILTO bug-groff@gnu.org "Groff Bug Mailing List" .
+Include a complete, self-contained example that will allow the bug to be
+reproduced, and say which version of groff you are using.
+.LINE
diff --git a/tmac/groff_mdoc.samples.man b/tmac/groff_mdoc.samples.man
index cdbbc21c4..cdbbc21c4 100644..100755
--- a/tmac/groff_mdoc.samples.man
+++ b/tmac/groff_mdoc.samples.man
diff --git a/tmac/groff_msafer.man b/tmac/groff_msafer.man
index 0e0de775b..0e0de775b 100644..100755
--- a/tmac/groff_msafer.man
+++ b/tmac/groff_msafer.man
diff --git a/tmac/mm.diff b/tmac/mm.diff
index d6694aa35..d6694aa35 100644..100755
--- a/tmac/mm.diff
+++ b/tmac/mm.diff
diff --git a/tmac/tmac.X b/tmac/tmac.X
index 53dd59638..53dd59638 100644..100755
--- a/tmac/tmac.X
+++ b/tmac/tmac.X
diff --git a/tmac/tmac.Xps b/tmac/tmac.Xps
index 92471abbc..92471abbc 100644..100755
--- a/tmac/tmac.Xps
+++ b/tmac/tmac.Xps
diff --git a/tmac/tmac.a4 b/tmac/tmac.a4
index 14a0b4c01..14a0b4c01 100644..100755
--- a/tmac/tmac.a4
+++ b/tmac/tmac.a4
diff --git a/tmac/tmac.an b/tmac/tmac.an
index 144dbc87d..efd271eb0 100644..100755
--- a/tmac/tmac.an
+++ b/tmac/tmac.an
@@ -32,12 +32,7 @@
.if !rC .nr C 0
.if rP .pn 0\nP
.de set-an-margin
-. ie '\*(.T'html' \{\
-. nr an-margin 0i
-. \}
-. el \{\
-. nr an-margin \\n[IN]
-. \}
+. nr an-margin \\n[IN]
..
.\" .TH title section extra1 extra2 extra3
.de TH
@@ -54,7 +49,7 @@
\\..
.DT
.ie '\*(.T'html' \{\
-. nr IN 1.3i
+. nr IN 1.2i
.\}
.el \{\
. nr IN 7.2n
diff --git a/tmac/tmac.andoc b/tmac/tmac.andoc
index 8cf989c09..8cf989c09 100644..100755
--- a/tmac/tmac.andoc
+++ b/tmac/tmac.andoc
diff --git a/tmac/tmac.arkup b/tmac/tmac.arkup
index b8c94df25..ea3113d10 100644..100755
--- a/tmac/tmac.arkup
+++ b/tmac/tmac.arkup
@@ -1,19 +1,16 @@
.\"
-.\" a simple set of macros to provide HTML documents with basic www functionality
-.\"
-.\" please can someone with more skill at creating macros improve on this
-.\" many thanks - Gaius
-.\"
-.\" suggestion: maybe when run with non -Thtml all the urls should appear as
-.\" references.
-.\"
-.\" some simple html additions to any macro set
+.\" A simple set of macros to provide HTML documents with basic
+.\" www functionality. It will work with any macro set.
.\"
.de HTML
-.if '\*(.T'html' \X^html:\\$*^
+. if '\*(.T'html' \{\
+.\" the following line makes the vertical mode leave, so to say
+\&
+\X^html:\\$*^
+. \}
..
.de HTMLINDEX
-.if '\*(.T'html' \X^index:\\$*^
+. if '\*(.T'html' \X^index:\\$*^
..
.\"
.\" BODYCOLOR - $1 is foreground color
@@ -23,96 +20,77 @@
.\" $5 is the color of a visited hypertext link
.\"
.de BODYCOLOR
-. HTML <body text=\\$1 bgcolor=\\$2 link=\\$3 alink=\\$4 vlink=\\$5>
+. HTML <body text=\\$1 bgcolor=\\$2 link=\\$3 alink=\\$4 vlink=\\$5>
..
.\"
.\" BACKGROUND - $1 is the background image file
.\"
.de BACKGROUND
-. HTML <body background=\\$1>
+. HTML <body background=\\$1>
..
.\"
.\" URL - $1 is the classical underlined blue text
.\" $2 is the url
+.\" $3 is optional stuff printed immediately after $3
.\"
.de URL
-. ie '\*(.T'html' \{\
-. HTML <a href="\\$2">\\$1</a>
-. \}
-. el \{\
-\\$1 (<url: \\$2>)
-. \}
-..
-.\"
-.\" LINK - $1 is the classical underlined blue text
-.\" $2 is the URL *with* the textual reference within a document
-.\"
-.\" example: .LINK "a nice heading" "#heading123"
-.\"
-.\" provides a link from "a nice heading" to the
-.\" textual name reference "heading123"
-.\"
-.\" .LINK "The GNU FSF" "" "www.gnu.org"
-.\"
-.\" deprecated - use the URL macro instead
-.\"
-.\"
-.de LINK
-. ie !'\\$3'' \{\
-. @error the LINK macro has changed, use the URL (or FTP if appropriate) macro here
-. @error you are advised to replace with URL or FTP macro "\\$1" "\\$3#\\$2"
-. URL "\\$1" "\\$3#\\$2"
-. \}
-. el \{\
-. ie '\*(.T'html' \{\
-. HTML <a href=\\$2>\\$1</a>
-. \}
-. el \{\
-. URL "\\$1" "\\$2"
-. \}
-. \}
+. ie '\*(.T'html' \{\
+. HTML <a href="\\$2">\\$1</a>\\$3
+. \}
+. el \{\
+\\$1 \(la\fC\\$2\fP\(ra\\$3
+. \}
..
.\"
.\" FTP - $1 is the classical underlined blue text
.\" $2 is the ftp url
+.\" $3 is optional stuff printed immediately after $2
.de FTP
-. ie '\*(.T'html' \{\
-. HTML <a href=\\$2>\\$1</a>
-. \}
-. el \{\
-$1 (<ftp:\\$2>)
-. \}
+. ie '\*(.T'html' \{\
+. HTML <a href=\\$2>\\$1</a>\\$3
+. \}
+. el \{\
+\\$1 \(la\fC\\$2\fP\(ra\\$3
+. \}
..
.\"
.\" MAILTO - generate html email reference
-.\" $1 is the email address
+.\" $1 is the email address (without the `mailto:' prefix)
.\" $2 is the optional name
+.\" $3 is optional stuff printed immediately after $2 (resp. $1)
+.\"
+.\" example:
.\"
-.\" example .MAILTO fred@foo.bar "Fredrick Bloggs"
+.\" Foobar has been written by
+.\" .MAILTO fred@foo.bar "Fredrick Bloggs" .
.\"
.de MAILTO
.\"
.\" force reset after a potential heading by performing some motion..
.\" how do we do this --fixme--
.\" \h'\w' ''\h'-\w' '' doesn't work..
-. ie '\*(.T'html' \{\
-. ie '\\$2'' \{\
-. HTML "<a href=mailto:\\$1>\\$1</a>"
-. \}
-. el \{\
-. HTML "<a href=mailto:\\$1>\\$2</a>"
-. \}
-. \}
-. el \{\
-\s-2\fB<email:\\$1>\fP\s+2
-. \}
+. ie '\*(.T'html' \{\
+. ie '\\$2'' \{\
+. HTML "<a href=mailto:\\$1>\\$1</a>\\$3"
+. \}
+. el \{\
+. HTML "<a href=mailto:\\$1>\\$2</a>\\$3"
+. \}
+. \}
+. el \{\
+. ie '\\$2'' \{\
+\fC\\$1\fP\\$3
+. \}
+. el \{\
+\\$2 \(la\fC\\$1\fP\(ra\\$3
+. \}
+. \}
..
.\"
-.\"
.\" TAG - generate an html name $1
.\"
.de TAG
-.HTML <a name="\\$1"></a>
+. HTML <a name="\\$1"></a>
..
.\"
.\" IMAGE - reference an image
@@ -121,22 +99,22 @@ $1 (<ftp:\\$2>)
.\" $3 is the y width (default if absent is the x value)
.\"
.de IMAGE
-. ie '\*(.T'html' \{\
-. nr HTMLWIDTH 400
-. if '\\$2'' \{\
-. nr HTMLWIDTH \\$2
-. \}
-. nr HTMLHEIGHT \\n[HTMLWIDTH]
-. if '\\$3'' \{\
-. nr HTMLHEIGHT \\$3
-. \}
-. HTML <img src="\\$1" width=\\n[HTMLWIDTH height=\\n[HTMLHEIGHT]>
-. \}
-. el \{\
-. B1
-\fB\s-2<img src=\\$1>\fP\s+2
-. B2
-. \}
+. ie '\*(.T'html' \{\
+. nr HTMLWIDTH 400
+. if '\\$2'' \{\
+. nr HTMLWIDTH \\$2
+. \}
+. nr HTMLHEIGHT \\n[HTMLWIDTH]
+. if '\\$3'' \{\
+. nr HTMLHEIGHT \\$3
+. \}
+. HTML <img src="\\$1" width=\\n[HTMLWIDTH height=\\n[HTMLHEIGHT]>
+. \}
+. el \{\
+. B1
+\(la\fC\\$1\fP\(ra
+. B2
+. \}
..
.\"
.\" CDFTP - if we are processing this on machine \\$1 then we create a
@@ -161,18 +139,23 @@ $1 (<ftp:\\$2>)
.\" machine doing both though :-(
.\"
.\"
-.de CDFTP
-. sy /bin/rm -f /tmp/tmac.n
-. sy /bin/echo ".ds HOSTNAME `hostname --short`" > /tmp/tmac.n
-. so /tmp/tmac.n
-. sy /bin/rm -f /tmp/tmac.n
-. ie '\\*[HOSTNAME]'\\$1' \{\
-. FTP "\\$2" "\\$3"
-. \}
-. el \{\
-. URL "\\$2" "\\$4"
-. \}
+.\".de CDFTP
+.\". sy /bin/rm -f /tmp/tmac.n
+.\". sy /bin/echo ".ds HOSTNAME `hostname --short`" > /tmp/tmac.n
+.\". so /tmp/tmac.n
+.\". sy /bin/rm -f /tmp/tmac.n
+.\". ie '\\*[HOSTNAME]'\\$1' \{\
+.\". FTP "\\$2" "\\$3"
+.\". \}
+.\". el \{\
+.\". URL "\\$2" "\\$4"
+.\". \}
+.\"..
+.de LINE
+. HTML <hr>
..
+.\"
.\" it doesn't make sense to use hyphenation with html, so we turn it off.
+.\"
.hy 0
.nr HY 0
diff --git a/tmac/tmac.doc b/tmac/tmac.doc
index e575df7c3..e575df7c3 100644..100755
--- a/tmac/tmac.doc
+++ b/tmac/tmac.doc
diff --git a/tmac/tmac.doc.old b/tmac/tmac.doc.old
deleted file mode 100644
index 51a0ec005..000000000
--- a/tmac/tmac.doc.old
+++ /dev/null
@@ -1,1858 +0,0 @@
-.\"
-.\" Copyright (c) 1990 The Regents of the University of California.
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgement:
-.\" This product includes software developed by the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" @(#)tmac.doc.old 5.2 (Berkeley) 3/13/91
-.\" Slightly modified by jjc@jclark.com to work with groff as well.
-.\"
-.\" Assume nroff on crt's only if cR==1
-.if n .nr cR 1
-.\" STRING CONSTANTS
-.\" DITROFF
-.if t \{\
-.\" Address Style
-.ds aD \fI
-.\" Argument Reference Style
-.ds aR \f(CO
-.\" Interactive Comand Modifier (flag)
-.ds cM \f(CB
-.\" Emphasis (in the English sense - usually italics)
-.ds eM \fI
-.\" Errno Style
-.ds eR \fC
-.\" Environment Variable Style
-.ds eV \fC
-.\" Command Line Flag Style
-.ds fL \f(CB
-.\" Header String Style
-.ds Hs \fR
-.\" Interactive Command Style
-.ds iC \f(CB
-.\" Literal Style
-.ds lI \fC
-.\" Left Parenthesis Style
-.ds lP \fR\|(\|\fP
-.\" Right Parenthesis Style
-.ds rP \fR\|)\|\fP
-.\" Options Open Bracket Style
-.ds lB \fR\^[\^\fP
-.\" Options Open Bracket Style
-.ds rB \fR\^]\fP
-.\" Name (subject of manpage) Style
-.ds nM \f(CB
-.\" Pathname Style
-.ds pA \fC
-.\" Accepted punctuation string for -mdoc syntax
-.ds Pu \fR[.,:;(\^)[\^]\fR]
-.\" Section Header Style
-.ds Sp \s12\fB
-.\" .ds sT \s-2\fR
-.\" Symbolic Emphasis (boldface)
-.ds sY \f(CB
-.\" Generic Variable Style
-.ds vA \fI
-.\" Volume Title Style
-.ds Vs \fR
-.\" Cross Reference STyle (man page only)
-.ds xR \fC
-.\" Math *
-.tr *\(**
-.\}
-.\" NROFF
-.if n \{\
-.\" Address Style
-.ds aD \fI
-.\" Argument Reference Style
-.ds aR \fI
-.\" Interactive Command Modifier (flag)
-.ds cM \fB
-.\" Emphasis (in the English sense - usually italics)
-.ds eM \fI
-.\" Errno Style
-.ds eR \fR
-.\" Environment Variable Style
-.ds eV \fR
-.\" Command Line Flag Style
-.ds fL \fB
-.\" Header String Style
-.ds Hs \fR
-.\" Interactive Command Style
-.ds iC \fB
-.\" Literal Style
-.ds lI \fR
-.\" Left Parenthesis Style
-.ds lP \fR\|(\fP
-.\" Right Parenthesis Style
-.ds rP \fR\|)\fP
-.\" Options Open Bracket Style
-.ds lB \fR\|[\|\fP
-.\" Options Open Bracket Style
-.ds rB \fR\|]\fP
-.\" Name (subject of manpage) Style
-.ds nM \fB
-.\" Pathname Style
-.ds pA \fI
-.\" Accepted punctuation string for -mdoc syntax
-.ds Pu [.,;:()[]]
-.\" Section Header Style
-.ds Sp \s12\fB
-.\" .ds sT \s-2\fR
-.\" .ds sT \s-2\fR
-.\" Symbol, Mode or Mask Style
-.ds sY \fB
-.\" Generic Variable Style
-.ds vA \fI
-.\" Volume Title Style
-.ds Vs \fR
-.\" Cross Reference Style (man page only)
-.ds xR \fR
-.\}
-.\" INDENTS - Subheaders(sI), Text(Ti) between Section Headers and Subsects
-.if t \{\
-. nr sI \w'\fC,'u*5
-. nr Ti \n(sIu
-.\}
-.if n \{\
-. nr sI .5i
-. nr Ti .5i
-.\}
-.\" Flags for macros names which are used only for .Ds
-.nr dI 6n
-.nr dC 1
-.nr dL 1
-.nr dR 1
-.\" INDENT WIDTHS (for Lists)
-.\" Width Needed for Address Tag (indented amount)
-.nr Ad 12n
-.\" Angle Quote Width
-.nr Aq 12n
-.\" Width Needed for Argument
-.nr Ar 12n
-.\" Width Needed for Column offset
-.nr Cl 15n
-.\" Width neeeded for Interactive Command Modifier
-.nr Cm 10n
-.\" Width Needed for Complex Expressions
-.nr Cx 20n
-.\" Indent Width Needed for Display (right and left margins)
-.nr Ds 6n
-.\" Double Quote Width
-.nr Dq 12n
-.\" tI is dependent on Ds and used by .Dp
-.nr tI \n(Dsu
-.\" Width Needed for Display
-.nr Em 10n
-.\" Width Needed for Errno Types
-.nr Er 15n
-.\" Width Needed for Environment Variables
-.nr Ev 15n
-.\" Width Needed for Example Indent
-.nr Ex 10n
-.\" Width Needed for Flag
-.nr Fl 10n
-.\" Width Needed for Function
-.nr Fn 16n
-.\" Width neeeded for Interactive Command Name
-.nr Ic 10n
-.\" Width Needed for Constant
-.nr Li 16n
-.\" Width Needed for Math Symbol ? not sure if needed
-.nr Ms 6n
-.\" Width Needed for Name
-.nr Nm 10n
-.\" Width Needed for Option Begin
-.nr Ob 14n
-.\" Width Needed for Option End
-.nr Oe 14n
-.\" Width Needed for Option (one line)
-.nr Op 14n
-.\" Width Needed for Pathname
-.nr Pa 32n
-.\" Parenthesis Quote Width
-.nr Pq 12n
-.\" Single Quote Width
-.nr Sq 12n
-.\" Width Needed for Symbols, Modes or Masks
-.nr Sy 6n
-.\" Width needed for default or unknown text width
-.nr Tx 22n
-.\" Width Needed for Generic Variable
-.nr Va 12n
-.\" Width Needed for Cross Reference, should the cross ref be annotated.
-.nr Xr 10n
-.\" PARAGRAPH SPACE
-.if t \{\
-. nr Pp .5v
-.\}
-.if n \{\
-. nr Pp 1v
-.\}
-.\" PAGE LAYOUT
-.\" .Li Tagged Paragraph Style - zero if break on oversized tag
-.\" one if add em space and continue filling line.
-.nr tP 0
-.\" Page Layout Macro
-.de pL
-.\" DITROFF
-.ie t \{\
-.\" Header Margin
-. nr Hm .5i
-.\" Footer Margin
-. nr Fm .5i
-.\" Line length
-. nr ll 5.5i
-.\" Line length
-. ll 5.5i
-.\" Title length
-. nr lt 5.5i
-.\" Title length
-. lt 5.5i
-.\" Page offset
-. nr po 1.56i
-.\" Page offset
-. po 1.56i
-.\" Vertical space distance (from Section headers/Lists/Subsections)
-. nr vV .5v
-.\" em space
-. ds tP \|\|\|\|\|\|
-.\}
-.el \{\
-.\" Line length
-. nr ll 78n
-. ll 78n
-.\" Title length
-. nr lt 78n
-.\" Title length
-. lt 78n
-.\" Page offset
-. nr po 0i
-.\" Page offset
-. po 0i
-.\" Vertical space distance (from Section headers/Lists/Subsections)
-. nr vV 1v
-.\" em space
-. ds tP \0\0
-.\" Test for crt
-. ie \\n(cR .nr Hm 0
-. el .nr Hm .5i
-.\" Footer Margin
-. nr Fm .5i
-.\}
-..
-.\" Adjustment mode
-.if n \{\
-.ad l
-.na
-..
-.\}
-.\" PREDEFINED STRINGS
-.if t \{\
-. ds <= \(<=
-. ds >= \(>=
-. ds Lq \&``
-. ds Rq \&''
-. ds ua \(ua
-. ds aa \(aa
-. ds ga \(ga
-. ds sR \(aa
-. ds sL \(ga
-.\}
-.if n \{\
-. ds <= \&<\&=
-. ds >= \&>\&=
-. ds Rq ''
-. ds Lq ``
-. ds ua ^
-. ds aa '
-. ds ga `
-. ds sL `
-. ds sR '
-.\}
-.\" Note: The distances from the bottom or top of the page are set
-.\" in headers (macro .hK): to -1.25 for troff, and -1.167 for nroff
-.\" bottoms, and top is 0.
-.\"
-.\" .Dt Document/manpage_title section/chapter volume
-.\" The \{ and \} is necessary as roff doesn't nest if-elses
-.\" properly, especially with .ds.
-.\" TODO: separate Dt into Dt, Ch and Vt for supp docs.
-.de Dt
-.ds dT UNTITLED
-.ds vT Local
-.ds cH Null
-.\" Volume and Section Number or Chapter Number
-.if !"\\$1"" .ds dT \\$1
-.if !"\\$2"" \{\
-. ds cH \\$2
-. if "\\$3"" \{\
-. \" Volume Title if none given
-. if \\$2>=1 .if \\$2<=8 \{\
-. ds vT UNIX Reference Manual
-. if \\$2>1 .if \\$2<6 .ds vT UNIX Programmer's Manual
-. if "\\$2"8" .ds vT UNIX System Manager's Manual
-. \}
-. if "\\$2"unass" .ds vT DRAFT
-. if "\\$2"draft" .ds vT DRAFT
-. if "\\$2"paper" .ds vT Null
-. \}
-.\}
-.if !"\\$3"" \{\
-. \" Volume Title if given
-. if "\\$3"USD" .ds vT UNIX User's Supplementary Documents
-. if "\\$3"PS1" .ds vT UNIX Programmers's Supplementary Documents
-. if "\\$3"AMD" .ds vT UNIX Ancestral Manual Documents
-. if "\\$3"SMM" .ds vT UNIX System Manager's Manual
-. if "\\$3"URM" .ds vT UNIX Reference Manual
-. if "\\$3"PRM" .ds vT UNIX Programmers's Manual
-. if "\\$3"IND" .ds vT UNIX Manual Master Index
-. if "\\$3"CON" .ds vT UNIX Contributed Software Manual
-. if "\\$3"IMP" .ds vT UNIX Implementation Notes
-. if "\\$3"HOW" .ds vT UNIX How Pocket Manual
-. if "\\$3"LOCAL" .ds vT UNIX Local Manual
-. if "\\*(vT"Local" .ds vT \\$3
-.\}
-..
-.\"
-.\" .Os Operating System/Standard and Release or Version Number
-.\"
-.de Os
-.ds oS Null
-.if "\\$1"" \{\
-. ds oS \fIBSD Experimental\fP
-.\" . ds oS (\fIBag o' Bits\fP)
-.\}
-.if "\\$2"" \{\
-. ds o1 Non-Null
-.\}
-.if "\\$1"ATT" \{\
-. ds oS AT&T
-. if "\\$2"" .as oS \0UNIX
-. if "\\$2"7th" .as oS \07th Edition
-. if "\\$2"7" .as oS \07th Edition
-. if "\\$2"III" .as oS \0System III
-. if "\\$2"3" .as oS \0System III
-. if "\\$2"V" .as oS \0System V
-. if "\\$2"V.2" .as oS \0System V Release 2
-. if "\\$2"V.3" .as oS \0System V Release 3
-. if "\\$2"V.4" .as oS \0System V Release 4
-.\}
-.if "\\$1"BSD" \{\
-. if "\\$2"3" .ds oS 3rd Berkeley Distribution
-. if "\\$2"4" .ds oS 4th Berkeley Distribution
-. if "\\$2"4.1" .ds oS 4.1 Berkeley Distribution
-. if "\\$2"4.2" .ds oS 4.2 Berkeley Distribution
-. if "\\$2"4.3" .ds oS 4.3 Berkeley Distribution
-. if "\\$2"4.3+" .ds oS 4.3+tahoe Berkeley Distribution
-.\}
-.if "\\*(oS"Null" .ds oS \\$1
-.if "\\*(o1"Non-Null" .as oS \0\\$2
-.rm o1
-..
-.\"
-.\" Standards
-.\"
-.\" .de St
-.\" .ds sT Null
-.\" .if "\\$1"POSIX" \{\
-.\" . ds sT IEEE Standard POSIX
-.\" . if \\$2 .as sT \0\\$2
-.\" .\}
-.\" .if "\\$1"ANSI" \{\
-.\" . ds sT ANSI Standard
-.\" . if \\$2 .as sT \0\\$2
-.\" .\}
-.\" .if "\\$1"ISO" \{\
-.\" . ds sT ISO Standard
-.\" . if \\$2 .as sT \0\\$2
-.\" .\}
-.\" .if "\\*(sT"Null" .ds sR \\$3
-.\" ..
-.\"
-.\" .de Gp
-.\" .ie !"\\$1"" .ds gP \&\\$1 \\$2 \\$3 \\$4 \\$5
-.\" .el .ds gP Null
-.\" ..
-.\"
-.\"
-.de Dd
-.nr aa 0
-.ie \\n(.$>0 \{\
-. ie \\n(.$<4 \{\
-. ds dD \\$1 \\$2 \\$3
-. \}
-. el .tm Usage: .Dd Month Day, Year (e.g July 4, 1977).
-.\}
-.el \{\
-. ds dD Epoch
-.\}
-..
-.\"
-.\" House Keeping Macro - Make sense of dT, cH, vT, sT, gP and dS
-.\" TODO: Try to get else's for efficiency
-.\" TODO: GET RID OF .wh -1.167i (its in v7)
-.\"
-.\"
-.de hK
-.nr % 1
-.ds hT \\*(dT
-.if !"\\*(cH"Null" \{\
-. ie !"\\*(gP"Null" .as hT \|(\|\\*(cH\\*(gP\|)
-. el .as hT \\|(\\|\\*(cH\\|)
-.\}
-.if "\\*(cH"Null" .if !"\\*(gP"Null" .as hT \&\|(\|\\*(gP\|)
-.if t \{\
-. wh 0 hM
-. wh -1.25i fM
-.\}
-.if n \{\
-. ie \\n(cR \{\
-. hM
-. wh -0v fM
-. \}
-. el \{\
-. wh 0 hM
-. wh -1.167i fM
-. \}
-.\}
-.if n \{\
-. if \\n(nl==0:\\n(nl==-1 'bp
-.\}
-.if t 'bp
-.em lM
-..
-.\" Header Macro
-.\"
-.de hM
-.ev 1
-.pL
-.if !\\n(cR 'sp \\n(Hmu
-.tl @\\*(Hs\\*(hT\fP@\\*(Vs\\*(vT\fP@\\*(Hs\\*(hT\fP@
-'sp \\n(Hmu
-.ev
-..
-.\"
-.de fM
-.ev 1
-.pL
-.if !\\n(cR \{\
-' sp \\n(Fmu
-. tl @\\*(Hs\\*(oS\fP@\\*(Vs\\*(dD\fP@%@
-' bp
-.\}
-.if \\n(cR \{\
-.\" . tl @\\*(Hs\\*(oS\fP@\\*(Vs\\*(dD\fP@%@
-.\" ' bp
-.\}
-.ev
-..
-.de lM
-.fl
-.if \\n(cR \{\
-. fM
-. pl \\n(nlu
-.\}
-..
-.de Pp
-.sp \\n(Ppu
-.ne 2
-.ns
-..
-.de Lp
-.Pp
-..
-.de LP
-.tm Not a \-mdoc command: .LP
-..
-.de PP
-.tm Not a \-mdoc command: .PP
-..
-.de pp
-.tm Not a \-mdoc command: .pp
-..
-.de Co
-.tm Not a \-mdoc command: .Co
-..
-.nr z. 1
-.nr z, 1
-.nr z: 1
-.nr z; 1
-.nr z) 1
-.nr z( 1
-.nr z[ 1
-.nr z] 1
-.\" This is disgusting, troff not parse if stmt properly
-.nr z1 0
-.nr z2 0
-.nr z3 0
-.nr z4 0
-.nr z5 0
-.nr z6 0
-.nr z7 0
-.nr z8 0
-.nr z9 0
-.nr z0 0
-.nr z# 0
-.\"
-.de Ad
-.ie \\n(.$==0 \{\
-. tm Usage: .Ad address [...] \\*(Pu
-.\}
-.el \{\
-. ds sV \\*(aD
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.\" Command Line Argument Macro
-.\"
-.de Ar
-.ie \\n(.$==0 \{\
-. ie !"\\*(iM"" .as f1 \&[\|\\*(aRfile\ ...\fP\|]
-. el \&[\|\\*(aRfile\ ...\fP\|]
-.\}
-.el \{\
-. ds sV \\*(aR
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Em
-.ie \\n(.$==0 \{\
-. tm Usage: .Em text ... \\*(Pu
-.\}
-.el \{\
-. ds sV \\*(eM
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Er
-.ie \\n(.$==0 \{\
-. tm Usage: .Er ERRNOTYPE ... \\*(Pu
-. \}
-.el \{\
-. ds sV \\*(eR
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Ev
-.ie \\n(.$==0 \{\
-. tm Usage: .Ev ENVIRONMENT_VARIABLE(s) ... \\*(Pu
-. \}
-.el \{\
-. ds sV \\*(eV
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.\" Flag Name Macro
-.\"
-.de Fl
-.ie \\n(.$==0 \{\
-. ie !"\\*(iM"" .as f1 \&\\*(fL\-\fP
-. el \&\\*(fL\-\fP
-.\}
-.el \{\
-. nr rZ 0
-. sW \\$1
-. if (\\n(sW==1&\\n(.$==1) .rZ \\$1
-. ds sV \\*(fL
-. nr cF \\n(.f
-. ie \\n(rZ \{\
-. ie "\\*(iM"" .ds f1 \&\\*(sV\-\f\\n(cF\\$1
-. el \&\\*(sV\-\f\\n(cF\\$1
-. \}
-. el \{\
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. fB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-. \}
-.\}
-..
-.\" Interactive Commands Macro
-.\"
-.de Ic
-.ie \\n(.$==0 \{\
-. tm Usage: .Ic Interactive Commands(s) ... \\*(Pu
-.\}
-.el \{\
-. ds sV \\*(iC
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.\" Interactive Command Modifiers (flags)
-.\"
-.de Cm
-.ie \\n(.$==0 \{\
-. tm Usage: .Cm Interactive Command Modifier(s) ... \\*(Pu
-.\}
-.el \{\
-. ds sV \\*(cM
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Li
-.ie \\n(.$==0 \{\
-. tm Usage: .Li literal ... \\*(Pu
-. \}
-.el \{\
-. ds sV \\*(lI
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\" If in nroff or any other case where the default font
-.\" is constant width, and literal means zilch, single quote instead.
-.ie n \{\
-.de Ql
-. ie \\n(.$==0 \{\
-. tm Usage: .Ql literal ... \\*(Pu
-. \}
-. el \{\
-. Sq \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-..
-.\}
-.el \{\
-.de Ql
-. ie \\n(.$==0 \{\
-. tm Usage: .Ql literal ... \\*(Pu
-. \}
-. el \{\
-. Li \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-..
-.\}
-.\"
-.de Nm
-.ie \\n(.$==0 \{\
-. if "\\*(n1"" .tm Usage: .Nm Name(s) ... \\*(Pu
-. ie !"\\*(iM"" .as f1 \&\\*(nM\\*(n1\\$1\fP
-. el \&\\*(nM\\*(n1\\$1\fP
-.\}
-.el \{\
-. ds sV \\*(nM
-. nr cF \\n(.f
-. if \\n(nS \{\
-. rs
-. in -\\n(iSu
-. ie \\n(nS>1 .br
-. el \{\
-. sW \\$1
-. nr iS ((\\n(sW+1)*\\n(fW)u
-. \}
-. in +\\n(iSu
-. ti -\\n(iSu
-. nr nS \\n(nS+1
-. \}
-. if "\\*(n1"" .ds n1 \\$1
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Pa
-.ie \\n(.$==0 \{\
-\&\\*(pA~\fP
-.\}
-.el \{\
-. ds sV \\*(pA
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Sy
-.ie \\n(.$==0 \{\
-. tm Usage: .Sy Symbolic Text ... \\*(Pu
-. \}
-.el \{\
-. ds sV \\*(sY
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Ms
-.ie \\n(.$==0 \{\
-. tm Usage: .Ms Math Symbol ... \\*(Pu
-. \}
-.el \{\
-. ds sV \\*(sY
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de Va
-.ie \\n(.$==0 \{\
-. tm Usage: .Va variable_name(s) ... \\*(Pu
-.\}
-.el \{\
-. ds sV \\*(vA
-. nr cF \\n(.f
-. ie "\\*(iM"" .ds f1 \&\\*(sV
-. el .as f1 \&\\*(sV
-. nB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-.\}
-..
-.\"
-.de nB
-.hy 0
-.if \\n(.$==0 .tm Usage error: called with empty arguments (empty quotes)?
-.ie \\n(.$>1 \{\
-. rZ \\$1
-. ie \\n(rZ .as f1 \&\f\\n(cF\\$1\fP
-. el .as f1 \&\\$1
-. rZ \\$2
-. if !\\n(rZ \{\
-. ie !"\\*(iM""\{\
-.\" I surrender
-. if "\\*(iM"Tp" .as f1 \&\ \&
-. if "\\*(iM"Dp" .as f1 \&\ \&
-. if "\\*(iM"Op" .as f1 \&\ \&
-. if "\\*(iM"Cx" .as f1 \&\ \&
-. if "\\*(iM"Dq" .as f1 \& \&
-. if "\\*(iM"Sq" .as f1 \& \&
-. if "\\*(iM"Pq" .as f1 \& \&
-. if "\\*(iM"Aq" .as f1 \& \&
-. \}
-. el .as f1 \& \&
-. \}
-. nB \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-.\}
-.el \{\
-. rZ \\$1
-. ie \\n(rZ .as f1 \&\f\\n(cF\\$1
-. el .as f1 \&\\$1\f\\n(cF
-. if "\\*(iM"" \{\&\\*(f1
-. ds f1
-. \}
-. hy
-.\}
-..
-.de fB
-.hy 0
-.if \\n(.$==0 .tm Usage error: called with empty arguments (empty quotes)?
-.ie \\n(.$>1 \{\
-. rZ \\$1
-. ie \\n(rZ .as f1 \&\f\\n(cF\\$1\fP
-. el \{\
-. ie "\\$1"-" .as f1 \&\-\-
-. el .as f1 \&\-\\$1
-. \}
-. rZ \\$2
-. if !\\n(rZ \{\
-. ie !"\\*(iM""\{\
-.\" I surrender
-. if "\\*(iM"Tp" .as f1 \&\ \&
-. if "\\*(iM"Dp" .as f1 \&\ \&
-. if "\\*(iM"Op" .as f1 \&\ \&
-. if "\\*(iM"Cx" .as f1 \&\ \&
-. if "\\*(iM"Dq" .as f1 \& \&
-. if "\\*(iM"Sq" .as f1 \& \&
-. if "\\*(iM"Pq" .as f1 \& \&
-. if "\\*(iM"Aq" .as f1 \& \&
-. \}
-. el .as f1 \& \&
-. \}
-. fB \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-.\}
-.el \{\
-. rZ \\$1
-. ie \\n(rZ .as f1 \&\f\\n(cF\\$1
-. el \{\
-. ie "\\$1"-" .as f1 \&\-\-\f\\n(cF
-. el .as f1 \&\-\\$1\f\\n(cF
-. \}
-. if "\\*(iM"" \{\&\\*(f1
-. ds f1
-. \}
-. hy
-.\}
-..
-.\"
-.\" Single quoted Items
-.\" eF, sB g[0-9] and f2
-.de Sq
-.nr eF 0
-.ie \\n(.$==0 \{\
-. ie "\\*(iM"" \&\\*(sL\&\\*sR
-. el .as f1 \&\\*(sL\&\\*(sR
-.\}
-.el \{\
-. ie "\\*(iM"" \{\
-. ds f1 \&\\*(sL
-. ds iM Sq
-. \}
-. el .as f1 \&\\*(sL
-. sB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ie \\n(eF>0 .\\*(g1 \\*(g2 \\*(g3 \\*(g4 \\*(g5 \\*(g6 \\*(g7 \\*(g8
-. el .as f1 \\*(g0
-. as f1 \\*(sR
-. if !"\\*(f2"" .as f1 \\*(f2
-. if "\\*(iM"Sq" \{\
-\&\\*(f1
-. ds f1
-. ds iM
-. \}
-. ds f2
-. rm g0 g1 g2 g3 g4 g5 g6 g7 g8 g9
-. nr eF 0
-.\}
-..
-.\"
-.\" Double quoted Items
-.de Dq
-.nr Ef 0
-.ie \\n(.$==0 \{\
-. ie "\\*(iM"" \&\\*(Lq\&\\*(Rq
-. el .as f1 \&\\*(Lq\&\\*(Rq
-.\}
-.el \{\
-. ie "\\*(iM"" \{\
-. ds f1 \&\\*(Lq
-. ds iM Dq
-. \}
-. el .as f1 \&\\*(Lq
-. Sb \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ie \\n(Ef>0 .\\*(k1 \\*(k2 \\*(k3 \\*(k4 \\*(k5 \\*(k6 \\*(k7 \\*(k8
-. el .as f1 \\*(k0
-. as f1 \\*(Rq
-. if !"\\*(f4"" .as f1 \\*(f4
-. if "\\*(iM"Dq" \{\
-\&\\*(f1
-. ds f1
-. ds iM
-. \}
-. ds f4
-. rm k0 k1 k2 k3 k4 k5 k6 k7 k8 k9
-. nr Ef 0
-.\}
-..
-.\"
-.\" Parenthesis quoted Items
-.de Pq
-.nr pQ 0
-.ie \\n(.$==0 \{\
-. ie "\\*(iM"" \&(\&)
-. el .as f1 \&(\&)
-.\}
-.el \{\
-. ie "\\*(iM"" \{\
-. ds f1 \&(
-. ds iM Pq
-. \}
-. el .as f1 \&(
-. pB \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ie \\n(pQ>0 .\\*(y1 \\*(y2 \\*(y3 \\*(y4 \\*(y5 \\*(y6 \\*(y7 \\*(y8
-. el .as f1 \\*(y0
-. as f1 \&)
-. if !"\\*(f3"" .as f1 \\*(f3
-. if "\\*(iM"Pq" \{\
-\&\\*(f1
-. ds f1
-. ds iM
-. \}
-. ds f3
-. rm y0 y1 y2 y3 y4 y5 y6 y7 y8 y9
-. nr pQ 0
-.\}
-..
-.\" eF, sB g[0-9] and f2
-.de sB
-.hy 0
-.ie \\n(.$==0 .tm Sick Logic: macro sB
-.el \{\
-. ie \\n(eF>=1 .nr eF \\n(eF+1
-. el \{\
-. mN \\$1
-. if \\n(mN .nr eF \\n(eF+1
-. \}
-. rZ \\$1
-. ie \\n(rZ .as f2 \\$1
-. el \{\
-. ie \\n(eF<1 .as g\\n(eF \\$1
-. el .as g\\n(eF \\$1
-. \}
-. if \\n(.$>1 \{\
-. rZ \\$2
-. if \\n(rZ==0 \{\
-. if \\n(eF<1 \{\
-. as g\\n(eF \& \&
-. \}
-. \}
-. sB \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-.\}
-..
-.de Sb
-.hy 0
-.ie \\n(.$==0 .tm Sick Logic: macro Sb
-.el \{\
-. ie \\n(Ef>=1 .nr Ef \\n(Ef+1
-. el \{\
-. mN \\$1
-. if \\n(mN .nr Ef \\n(Ef+1
-. \}
-. rZ \\$1
-. ie \\n(rZ .as f4 \\$1
-. el \{\
-. ie \\n(Ef<1 .as k\\n(Ef \\$1
-. el .as k\\n(Ef \\$1
-. \}
-. if \\n(.$>1 \{\
-. rZ \\$2
-. if \\n(rZ==0 \{\
-. if \\n(Ef<1 \{\
-. as k\\n(Ef \& \&
-. \}
-. \}
-. Sb \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-.\}
-..
-.de pB
-.hy 0
-.ie \\n(.$==0 .tm Sick Logic: macro pB
-.el \{\
-. ie \\n(pQ>=1 .nr pQ \\n(pQ+1
-. el \{\
-. mN \\$1
-. if \\n(mN .nr pQ \\n(pQ+1
-. \}
-. rZ \\$1
-. ie \\n(rZ .as f3 \\$1
-. el \{\
-. ie \\n(pQ<1 .as y\\n(pQ \\$1
-. el .as y\\n(pQ \\$1
-. \}
-. if \\n(.$>1 \{\
-. rZ \\$2
-. if \\n(rZ==0 \{\
-. if \\n(pQ<1 \{\
-. as y\\n(pQ \& \&
-. \}
-. \}
-. pB \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-.\}
-..
-.de aQ
-.hy 0
-.ie \\n(.$==0 .tm Bad Syntax: .Aq
-.el \{\
-. ie \\n(aQ>=1 .nr aQ \\n(aQ+1
-. el \{\
-. mN \\$1
-. if \\n(mN .nr aQ \\n(aQ+1
-. \}
-. rZ \\$1
-. ie \\n(rZ .as aZ \\$1
-. el \{\
-. ie \\n(aQ<1 .as a\\n(aQ \\$1
-. el .as a\\n(aQ \\$1
-. \}
-. if \\n(.$>1 \{\
-. rZ \\$2
-. if \\n(rZ==0 \{\
-. if \\n(aQ<1 \{\
-. as a\\n(aQ \& \&
-. \}
-. \}
-. aQ \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-.\}
-..
-.\" Angle Bracket Quoted Items
-.de Aq
-.nr aQ 0
-.ie \\n(.$==0 \{\
-. ie "\\*(iM"" \&<\&>
-. el .as f1 \&<\&>
-.\}
-.el \{\
-. ie "\\*(iM"" \{\
-. ds f1 \&<
-. ds iM Aq
-. \}
-. el .as f1 \&<
-. aQ \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
-. ie \\n(aQ>0 .\\*(a1 \\*(a2 \\*(a3 \\*(a4 \\*(a5 \\*(a6 \\*(a7 \\*(a8
-. el .as f1 \\*(a0
-. as f1 \&>
-. if !"\\*(aZ"" .as f1 \\*(aZ
-. if "\\*(iM"Aq" \{\
-\&\\*(f1
-. ds f1
-. ds iM
-. \}
-. ds aZ
-. rm a0 a1 a2 a3 a4 a5 a6 a7 a8
-. nr aQ 0
-.\}
-..
-.\" macro Name test, return macro register value if true
-.if \n(.g .ig
-.de mN
-.nr mN 0
-.sW \\$1
-.if \\n(sW==2 \{\
-. if \\n(\\$1 .nr mN \\n(\\$1
-.\}
-..
-.if !\n(.g .ig
-.de mN
-.nr mN 0
-.if \A'\\$1' \{\
-. sW \\$1
-. if \\n(sW==2 \{\
-. if \\n(\\$1 .nr mN \\n(\\$1
-. \}
-.\}
-..
-.\" Punctuation test (using z registers), return 1 if true
-.if \n(.g .ig
-.de rZ
-.nr rZ 0
-.sW \\$1
-.if \\n(sW==1 \{\
-. if \\n(z\\$1==1 \{\
-. nr rZ 1
-. \}
-.\}
-..
-.if !\n(.g .ig
-.de rZ
-.nr rZ 0
-.if \A'\\$1' \{\
-. sW \\$1
-. if \\n(sW==1 \{\
-. if \\n(z\\$1==1 \{\
-. nr rZ 1
-. \}
-. \}
-.\}
-..
-.\"
-.\" sW returns number of characters in a string
-.if t \{\
-.nr fW \w'\fC,'
-.de sW
-.nr sW \w'\fC\\$1'
-.\}
-.if n \{\
-.nr fW \w'0'
-.de sW
-.nr sW \w'\\$1'
-.\}
-.ie \\n(sW>=\\n(fW \{\
-. ie \\n(sW%\\n(fW .nr sW (\\n(sW/\\n(fW)+1
-. el .nr sW \\n(sW/\\n(fW
-.\}
-.el .nr sW 0
-..
-.\" Option Expression -
-.\" TODO - add line overflow check (right!)
-.nr eP 0
-.ds e1
-.nr oE 0
-.nr hP 0
-.ds hP
-.nr Ep 0
-.de Op
-.hy 0
-.if "\\*(iM"" \{\
-. ds iM Op
-. ds f1 \&
-.\}
-.as f1 \&\\*(lB
-.\" .tm Op: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-.dO \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-.ie !"\\$1"Cx" .oE
-.el .nr oE \\n(oE+1
-..
-.\"
-.\" just for mike, with every bite of garlic in mind (oops, i mean burp).
-.\" dO: go dOwn an argument vector and test each argument to see if
-.\" a macro name or punctuation. stash in respective place along
-.\" with its arguments.
-.nr oO 0
-.nr oP 0
-.nr aO 0
-.de dO
-.mN \\$1
-.ie \\n(mN \{\
-. if \\n(oP \{\
-. if \\n(hP \{\
-. nr oZ 1
-. oZ
-. Oz
-. \}
-. if \\n(e1==1 \{\
-.\\*(e1 \\*(e2 \\*(e3 \\*(e4 \\*(e5 \\*(e6 \\*(e7 \\*(e8 \\*(e9
-. \}
-. uO
-. if !(\\n(oO:\\n(aO) .as f1 \& \&
-. \}
-. ie "\\$1"Op" \{\
-. as f1 \&\\*(lB
-. nr aO \\n(aO+1
-. \}
-. el \{\
-. nr eP \\n(eP+1
-. ds e\\n(eP \\$1
-. nr e\\n(eP 1
-. \}
-.\}
-.el \{\
-.\" .tm dO: $1: \\$1: eP \\n(eP e[\\n(eP]: \\*(e\\n(ePEE
-. rZ \\$1
-. ie \\n(rZ \{\
-.\" .tm dO:rZ: $1: \\$1: eP \\n(eP e[\\n(eP]: \\*(e\\n(eP
-. nr hP \\n(hP+1
-. ds h\\n(hP \\$1
-. \}
-. el \{\
-.\" .tm dO:word $1: \\$1: eP \\n(eP e[\\n(eP]: \\*(e\\n(ePEE
-. if \\n(eP==0:\\n(e\\n(eP==1 .nr eP \\n(eP+1
-. if \\n(eZ .as e\\n(eP \& \&
-. as e\\n(eP " \&\\$1
-.\" . ds e\\n(eP \&\\$1
-. nr eZ \\n(eZ+1
-. \}
-.\}
-.nr oP 1
-.ie \\n(.$>1 \{\
-. dO \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-.\}
-.el \{\
-. ie \\n(e1 \{\
-.\\*(e1 \\*(e2 \\*(e3 \\*(e4 \\*(e5 \\*(e6 \\*(e7 \\*(e8 \\*(e9
-. \}
-. el \{\
-. as f1 \\*(e1
-. \}
-.\}
-..
-.\" handle old style arguments such as the arg -Idir
-.\" in adb, .Oo is a toggle.
-.de Oo
-.ie \\n(oO .nr oO 0
-.el .nr oO 1
-..
-.\" stash punctuation
-.de oZ
-.if \\n(hP>=\\n(oZ \{\
-. nr eP \\n(eP+1
-. ds e\\n(eP \\*(h\\n(oZ
-. nr oZ \\n(oZ+1
-. oZ
-.\}
-..
-.\" clean up punctuation vector
-.de Oz
-.if \\n(hP>0 \{\
-. rm h\\n(hP
-. nr hP \\n(hP-1
-. Oz
-.\}
-..
-.\" uO: go back up created vector cleaning it up along the way
-.de uO
-.if \\n(eP>0 \{\
-. rm e\\n(eP
-. rr e\\n(eP
-. nr eP \\n(eP-1
-. nr oP 0
-. nr eZ 0
-. uO
-.\}
-..
-.\" option end
-.de oE
-.uO
-.ie \\n(hP \{\
-. as f1 \\*(rB\\*(h1\\*(h2\\*(h3
-. Oz
-. nr oZ 0
-.\}
-.el \{\
-. as f1 \\*(rB
-.\}
-.ie "\\*(iM"Op" \{\
-. if \\n(aO .aO
-.if t \{\
-. if (\\n(.lu-\\n(.ku-\\n(.ou-(2*\\n(fWu))<\w'\fC\\*(f1'u .br
-.\}
-.if n \{\
-. nr aa \w'\\*(f1'u
-.\" . nr qq \\n(.lu-\\n(.ku-\\n(.ou
-.\" \&aa == \\n(aa, f1==\\*(f1, qq==\\n(qq
-. if (\\n(.lu-\\n(.ku-\\n(.ou-\\n(aau)<=(8*\\n(fWu) .br
-.\}
-\&\\*(f1
-. ds iM
-. ds f1
-. hy
-.\}
-.el .nr oE \\n(oE-1
-..
-.de aO
-.as f1 \\*(rB
-.nr aO \\n(aO-1
-.if \\n(aO >0 .aO
-..
-.\"
-.de Xr
-.if \\n(.$<=1 \{\
-. ie \\n(.$==1 \{\
-. if !"\\*(iM"" .as f1 \&\\*(xR\\$1\fP
-. if "\\*(iM"" \&\\*(xR\\$1\fP
-. \}
-. el .tm Xr Usage: .Xr manpage_name [section#] \\*(Pu
-.\}
-.if \\n(.$==2 \{\
-. rZ \\$2
-. ie "\\*(iM"" \{\
-. ie \\n(rZ \&\\*(xR\\$1\fP\\$2
-. el \&\\*(xR\\$1\fP(\\$2)
-. \}
-. el \{\
-. ie \\n(rZ .as f1 \&\\*(xR\\$1\fP\\$2
-. el .as f1 \&\\*(xR\\$1\fP(\\$2)
-. \}
-.\}
-.if \\n(.$>=3 \{\
-. rZ \\$2
-. ie \\n(rZ \{\
-. ie !"\\*(iM"" .as f1 \&\\*(xR\\$1\fP\\$2\\$3\\$4\\$5\\$6\\$7\\$8
-. el \&\\*(xR\\$1\fP\\$2\\$3\\$4\\$5\\$6\\$7\\$8
-. \}
-. el \{\
-. rZ \\$3
-. ie \\n(rZ \{\
-. if !"\\*(iM"" \{\
-. as f1 \&\\*(xR\\$1\fP(\\$2)\\$3\\$4\\$5\\$6\\$7\\$8
-. \}
-. if "\\*(iM"" \{\
-\&\\*(xR\\$1\fP(\\$2)\\$3\\$4\\$5\\$6\\$7\\$8
-. \}
-. \}
-. el \{\
-. tm rZ = \\n(rZ the arg is \\$3
-. tm Xr-XX Usage: .Xr manpage_name [section#] \\*(Pu
-. \}
-. \}
-.\}
-..
-.\"
-.\"
-.de Ex
-.tm Ex defunct, Use .Dl: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-..
-.\" Display (one) Line of text.
-.de Dl
-.ie "\\*(iM"" \{\
-' ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
-. in \\n(.iu+\\n(Dsu
-. mN \\$1
-. ie \\n(mN .\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. el \{\
-. nr cF \\n(.f
-.\" Literal font is none specified
-\&\\*(lI\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. ft \\n(cF
-. \}
-. in \\n(.iu-\\n(Dsu
-.\}
-.el \{\
-. mN \\$1
-. ie \\n(mN .\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
-. el \{\
-. nr cF \\n(.f
-. ds f1 \&\\*(lI\\&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
-. as f1 \&\f\\n(cF
-. \}
-.\}
-..
-.\"
-.\"
-.\" user set Tagged Paragraph Width (used in both Dp and Tp)
-.de Tw
-.ie \\n(.$==0 \{\
-. nr aa 0
-.\}
-.el \{\
-. mN \\$1
-. ie \\n(sW>2 \{\
-. nr tW (\\n(sW+3)*\\n(fWu)
-. \}
-. el \{\
-. ie \\n(mN .nr tW \\n(mN
-. el .nr tW \\$1
-. \}
-. nr tF 1
-.\}
-..
-.\"
-.de Dw
-.Tw \\$1
-..
-.\"
-.de Di
-.ie \\n(.$==0 \{\
-. nr tI \\n(Dsu
-.\}
-.el \{\
-. sW \\$1
-. if \\n(sW>=2 \{\
-. nr tI \\$1u
-. \}
-. if \\n(sW<2 \{\
-. if "\\$1"L" \{\
-. nr tI 0
-. \}
-. \}
-.\}
-..
-.\" tagged paragraph
-.\" initialize baby stack variables
-.nr np 0
-.nr p1 0
-.ds s\n(np
-.\"
-.de Tp
-.ie "\\$1"" .pE p s np
-.el \{\
-. ds iM Tp
-. mN \\$1
-. ie \\n(tF \{\
-. ds tC Tw
-. nr tC 1
-. nr tF 0
-. \}
-. el \{\
-. if !"Tw"\\*(s\\n(np" \{\
-. ie \\n(mN \{\
-. ds tC \\$1
-. nr tW \\n(mN
-. \}
-. el \{\
-. ds tC Tx
-. nr tW \\n(Tx
-. \}
-. if !"\\*(tC"\\*(s\\n(np" .nr tC 1
-. \}
-. \}
-. sp \\n(vVu
-. if !\\n(cR .ne 2
-. if \\n(tC \{\
-. nr np \\n(np+1
-. nr p\\n(np \\n(tW
-. ds s\\n(np \\*(tC
-. nr tC 0
-. ds tC
-. in \\n(.iu+\\n(p\\n(npu
-. \}
-. ie \\n(mN \{\
-. ds f1
-. \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. if !"\\$1"Cx" .pT st p np
-. \}
-. el \{\
-. br
-. ev 1
-. fi
-. di Td
-\&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. br
-. di
-. ev
-. na
-. ds tD \\*(Td\\
-. pT di p np
-. \}
-.\}
-..
-.\"
-.\"
-.\" Complex Expression Macro
-.\"
-.\" TODO: add length across line boundary check (like Li)
-.de Cx
-.hy 0
-.ie \\n(.$==0 \{\
-. if "\\*(iM"Cx" \{\
-. ds iM
-. if \\n(oE .oE
-\&\\*(f1
-. ds f1
-. \}
-. if "\\*(iM"Tp" .pT st p np
-. if "\\*(iM"Dp" .pT st q mp
-.\}
-.el \{\
-. if "\\*(iM"" \{\
-. ds iM Cx
-. ds f1 \&
-. \}
-. mN \\$1
-.\" Here are the args: `\\$1' `\\$2' `\\$3' `\\$4'
-. ie \\n(mN .\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. el \{\
-. as f1 \&\\$1
-. if \\n(.$>1 .Cx \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-.\}
-..
-.\" Prefix string in default font to content specified string
-.de Pf
-.Cx \\$1
-.\\$2 \\$3 \\$4 \\$5
-.Cx
-..
-.\" Suffix string in default font to content specified string
-.de Sf
-.Cx \\$1 \\$2
-.Cx \\$3
-.Cx
-..
-.\" Simple Option Begin
-.de Ob
-.hy 0
-.ie "\\*(iM"" \{\
-. ev 2
-. fi
-. di oB
-.\}
-.el \{\
-.tm shouldn't be here
-. as f1 \&[
-. mN \\$1
-. ie \\n(mN .\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. el \{\
-. as f1 \&\\$1
-. if \\n(.$>1 .Oc \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-.\}
-..
-.de Oc
-.as f1 \&\\$1
-.if \\n(.$>1 .Oc \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-..
-.de Oe
-.hy 0
-.ie "\\*(iM"" \{\
-. br
-. di
-. ev
-. ds bO \\*(oB\\
-\&[\\*(bO\&]
-.\}
-.el \{\
-. as f1 \&]
-.\}
-..
-.\" White space for Cx
-.de Ws
-.Cx \&\ \&
-..
-.\" tagged paragraph
-.\" initialize baby stack variables
-.nr mp 0
-.nr q1 0
-.ds r\n(np
-.\"
-.\" Complex Dp tag
-.de Dc
-.Dp Cx \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
-..
-.\" Complex Tp tag
-.de Tc
-.Tp Cx \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
-..
-.\" Tag with a flag and an argument with a space
-.de Ta
-.if "\\$2"" \{\
-. Tp Fl \\$1
-.\}
-.el \{\
-. Tp Fl \\$1
-. Cx \&\ \&
-. Ar \\$2 \\$3
-. Cx
-.\}
-..
-.de Da
-.Dp Cx Fl \\$1
-.Ws
-.Ar \\$2 \\$3
-.Cx
-..
-.de To
-.Tp Cx Fl \\$1
-.Ar \\$2 \\$3
-.Cx
-..
-.de Do
-.Dp Cx Fl \\$1
-.Ar \\$2 \\$3
-.Cx
-..
-.\" Blended tag toggle
-.de Bt
-.ie \\n(tP==0 .nr tP 1
-.el .nr tP 0
-..
-.\" Bullet paragraph
-.de Bu
-.Tp Sy \&\(bu
-..
-.\" Display tagged paragraph
-.de Dp
-.ie "\\$1"" \{\
-. pE q r mp
-. sp \\n(vVu
-.\}
-.el \{\
-. ds iM Dp
-. mN \\$1
-. ie \\n(tF \{\
-. ds tC Tw
-. nr tC 1
-. nr tF 0
-. \}
-. el \{\
-. if !"Tw"\\*(r\\n(mp" \{\
-. ie \\n(mN \{\
-. ds tC \\$1
-. nr tW \\n(mN
-. \}
-. el \{\
-. ds tC Tx
-. nr tW \\n(Tx
-. \}
-. if !"\\*(tC"\\*(r\\n(mp" .nr tC 1
-. \}
-. \}
-. if !\\n(cR .ne 2
-. if \\n(tC \{\
-. nr mp \\n(mp+1
-. nr q\\n(mp \\n(tW
-. ds r\\n(mp \\*(tC
-. nr tC 0
-. ds tC
-. ie \\n(tIu==\\n(Dsu .nr i\\n(mp \\n(Dsu
-. el \{\
-. nr i\\n(mp \\n(tIu
-. nr tI \\n(Dsu
-. \}
-. in \\n(.iu+\\n(i\\n(mpu
-. sp \\n(vVu
-. in \\n(.iu+\\n(\\q\\n(mpu
-. \}
-. ie \\n(mN \{\
-. \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. if !"\\$1"Cx" .pT st q mp
-. \}
-. el \{\
-. br
-. ev 1
-. fi
-. di Td
-\&\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. br
-. di
-. ev
-. na
-. ds tD \\*(Td\\
-. pT di q mp
-. \}
-.\}
-..
-.\"
-.\" .pE number_stack string_stack counter
-.de pE
-.ie "\\$3"mp" \{\
-. in \\n(.iu-(\\n(\\$1\\n(\\$3u)-(\\n(i\\n(mpu)
-. rr i\\n(mp
-.\}
-.el .in \\n(.iu-\\n(\\$1\\n(\\$3u
-.\" .in \\n(.iu-\\n(\\$1\\n(\\$3u
-.if \\n(\\$3<=0 .tm Extraneous call .Tp or .Dp
-.rr \\$1\\n(\\$3
-.rm \\$2\\n(\\$3
-.nr \\$3 \\n(\\$3-1
-.ds iM
-..
-.\"
-.\" .pT [st or di] number_stack counter
-.de pT
-.ie "\\$1"st" \{\
-. nr bb \\n(\\$2\\n(\\$3u
-. ti -\\n(bbu
-. ie (\\n(\\$2\\n(\\$3u-2n)<=\w'\\*(f1'u \{\&\\*(f1\\*(tP
-. if \\n(tP==0 .br
-. \}
-. el \\*(f1\h'|\\n(\\$2\\n(\\$3u'\c
-.\}
-.el \{\
-. ti -\\n(\\$2\\n(\\$3u
-. ie (\\n(\\$2\\n(\\$3u-2n)<=\\n(dlu \{\&\\*(tD\\*(tP
-. if !\\n(tP .br
-. \}
-. el \\*(tD\h'|\\n(\\$2\\n(\\$3u'\c
-. if t 'ad
-.\}
-. ds iM
-. ds f1
-'fi
-..
-.\"
-.\" The new SH
-.\"
-.de Sh
-.\" set Sh state off, check for list state before calling indent (.In)
-.nr nS 0
-.nr sE 0
-.ie "\\$1"NAME" \{\
-.\" name state on, housekeep (headers & footers)
-. hK
-' in 0
-.\}
-.el \{\
-. if "\\$1"SYNOPSIS" .nr nS 1
-. in 0
-.\}
-.pL
-'sp
-.ns
-.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
-.if !\\n(cR .ne 3
-'fi
-\&\fB\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6 \|\\$7 \|\\$8 \|\\$9
-\&\fP\&
-.in \\n(.iu+\\n(Tiu
-.if "\\$1"SEE" .nr sE 1
-.ns
-..
-.\"
-.\" Nd minus sign for an en dash used in .Sh Name
-.de Nd
-\&\-\& \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-..
-.de Ss
-.sp
-.ti -.25i
-\&\fB\\$1 \|\\$2 \|\\$3 \|\\$4 \|\\$5 \|\\$6 \|\\$7 \|\\$8 \|\\$9
-\&\fP\&
-.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
-.if !\\n(cR .ne 2
-.br
-..
-.\" .if "\\$1"Ss" .in \\n(.iu+\\n(sIu
-.\"..
-.\"
-.\"
-.\" Column Macro
-.\"
-.hy 0
-.de Cw
-.ie \\n(.$==0 \{\
-. br
-. in \\n(.iu-\\n(eWu
-. ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i
-.\}
-.el \{\
-. Pp
-. if \\n(.$==1 \{\
-. ta \w'\\$1 'u
-. nr eW \w'\\$1 'u
-' in \\n(.iu+\\n(eWu
-. \}
-. if \\n(.$==2 \{\
-. ta \w'\\$1 'u +\w'\\$2 'u
-. nr eW \w'\\$1 'u+\w'\\$2 'u
-' in \\n(.iu+\\n(eWu
-. \}
-. if \\n(.$==3 \{\
-. ta \w'\\$1 'u +\w'\\$2 'u +\w'\\$3 'u
-. nr eW \w'\\$1 'u+\w'\\$2 'u+\w'\\$3 'u
-' in \\n(.iu+\\n(eWu
-. \}
-. if \\n(.$==4 \{\
-. ta \w'\\$1 'u +\w'\\$2 'u +\w'\\$3 'u +\w'\\$4 'u
-. nr eW \w'\\$1 'u+\w'\\$2 'u+\w'\\$3 'u +\w'\\$4 'u
-' in \\n(.iu+\\n(eWu
-. \}
-. if \\n(.$==5 \{\
-.ta \w'\\$1 'u +\w'\\$2 'u +\w'\\$3 'u +\w'\\$4 'u +\w'\\$5 'u
-.nr eW \w'\\$1 'u +\w'\\$2 'u +\w'\\$3 'u +\w'\\$4 'u +\w'\\$5 'u
-' in \\n(.iu+\\n(eWu
-. \}
-.\}
-..
-.de Cl
-.ti -\\n(eWu
-.mN \\$1
-.ie \\n(mN .\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-.el \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-..
-.nr dQ 0
-.de Ds
-.ie !"\\$1"" \{\
-. mN d\\$1
-. if \\n(mN \{\
-. nr dQ \\n(dQ+1
-. d\\$1
-. \}
-.\}
-.el .br
-.nf
-..
-.de Df
-.ie !"\\$1"" \{\
-. mN d\\$1
-. if \\n(mN \{\
-. nr dQ \\n(dQ+1
-. d\\$1
-. \}
-.\}
-.el .br
-..
-.de Dn
-\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-.nf
-..
-.de dI
-.nr d\\n(dQ \\n(dIu
-.in \\n(.iu+\\n(dIu
-..
-.de dC
-.nr d\\n(dQ (\\n(.l-\\n(.i)/4u
-.in \\n(.iu+\\n(d\\n(dQu
-..
-.de dR
-.nr d\\n(dQ (\\n(.l/3)u
-.in \\n(.iu+\\n(d\\n(dQu
-..
-.de dL
-.nr aa 0
-..
-.de De
-.br
-.if \\n(d\\n(dQ \{\
-. in \\n(.iu-\\n(d\\n(dQu
-. rr d\\n(dQ
-. nr dQ \\n(dQ-1
-.\}
-.fi
-..
-.\"
-.de Fn
-.ie \\n(.$==0 \{\
-. tm Usage: .Fn function_name function_arg(s) ... \\*(Pu
-.\}
-.el \{\
-. nr cF \\n(.f
-. ie \\n(.$==1 .ds f1 \&\\*(nM\\$1\fP\\*(lP\fP\\*(rP\fP
-. el \{\
-. ds f1 \\*(nM\\$1\fP\\*(lP
-. nr aa 0
-. rC \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
-. \}
-. if "\\*(iM"" \{\\&\\*(f1
-. ds f1
-. \}
-.\}
-..
-.\"
-.de rC
-.rZ \\$1
-.ie \\n(rZ \{\
-. as f1 \f\\n(cF\\*(rP\f\\n(cF\\$1\\$2\\$3\\$4\\$5\\$6\\$7
-.\}
-.el \{\
-. ie \\n(aa .as f1 \fP, \\*(aR\\$1
-. el .as f1 \\*(aR\\$1
-. nr aa 1
-. ie \\n(.$>1 .rC \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
-. el .as f1 \fP\\*(rP\fP
-.\}
-..
diff --git a/tmac/tmac.dvi b/tmac/tmac.dvi
index 59c6df50d..59c6df50d 100644..100755
--- a/tmac/tmac.dvi
+++ b/tmac/tmac.dvi
diff --git a/tmac/tmac.e b/tmac/tmac.e
index 3a4eb86a9..3a4eb86a9 100644..100755
--- a/tmac/tmac.e
+++ b/tmac/tmac.e
diff --git a/tmac/tmac.html b/tmac/tmac.html
index cd8a518a7..991ced368 100644..100755
--- a/tmac/tmac.html
+++ b/tmac/tmac.html
@@ -12,8 +12,8 @@
.char \(ul \v'.25m'\D'l .5m 0'\v'-.25m'
.char \(br \v'.25m'\D'l 0 -1m'\v'.75m'
.char \(rn \v'-.75m'\D'l .5m 0'\v'.75m'
-.char ~ \v'-.55m'\\s[\\n(.s/2u]\v'.2m'\(ti\v'-.2m'\s0\v'.55m'
-.char ^ \v'-.55m'\\s[\\n(.s/2u]\v'.3m'\(ha\v'-.3m'\s0\v'.55m'
+.\" .char ~ \v'-.55m'\\s[\\n(.s/2u]\v'.2m'\(ti\v'-.2m'\s0\v'.55m'
+.\" .char ^ \v'-.55m'\\s[\\n(.s/2u]\v'.3m'\(ha\v'-.3m'\s0\v'.55m'
.if !c\(va .char \(va \o'\(ua\(da'
.if !c\(em .char \(em --
.if !c\(en .char \(en \-
@@ -56,3 +56,5 @@
.\" it doesn't make sense to use hyphenation with html, so we turn it off.
.hy 0
.nr HY 0
+.\" avoid line breaks after hyphen-like characters.
+.cflags 0 -\(hy\(em\(en
diff --git a/tmac/tmac.latin1 b/tmac/tmac.latin1
index f33ea2164..f33ea2164 100644..100755
--- a/tmac/tmac.latin1
+++ b/tmac/tmac.latin1
diff --git a/tmac/tmac.lj4 b/tmac/tmac.lj4
index 658b9a7ab..658b9a7ab 100644..100755
--- a/tmac/tmac.lj4
+++ b/tmac/tmac.lj4
diff --git a/tmac/tmac.pic b/tmac/tmac.pic
index 1177fc09d..1177fc09d 100644..100755
--- a/tmac/tmac.pic
+++ b/tmac/tmac.pic
diff --git a/tmac/tmac.ps b/tmac/tmac.ps
index 4d954f4ae..4d954f4ae 100644..100755
--- a/tmac/tmac.ps
+++ b/tmac/tmac.ps
diff --git a/tmac/tmac.psatk b/tmac/tmac.psatk
index b59d23a24..b59d23a24 100644..100755
--- a/tmac/tmac.psatk
+++ b/tmac/tmac.psatk
diff --git a/tmac/tmac.psfig b/tmac/tmac.psfig
index 5f4111ce6..5f4111ce6 100644..100755
--- a/tmac/tmac.psfig
+++ b/tmac/tmac.psfig
diff --git a/tmac/tmac.psnew b/tmac/tmac.psnew
index e13bdb886..e13bdb886 100644..100755
--- a/tmac/tmac.psnew
+++ b/tmac/tmac.psnew
diff --git a/tmac/tmac.psold b/tmac/tmac.psold
index 04a5f6df4..04a5f6df4 100644..100755
--- a/tmac/tmac.psold
+++ b/tmac/tmac.psold
diff --git a/tmac/tmac.pspic b/tmac/tmac.pspic
index b47e4fa4c..ef4186f64 100644..100755
--- a/tmac/tmac.pspic
+++ b/tmac/tmac.pspic
@@ -1,15 +1,6 @@
.\" Define the PSPIC macro.
.\" When used other than with -Tps, it will draw a box around where
.\" the picture would go.
-.de ps-bb
-.nr ps-nargs \\n[.$]
-.if \\n[ps-nargs]=4 \{\
-. nr ps-llx 0\\$1
-. nr ps-lly 0\\$2
-. nr ps-urx 0\\$3
-. nr ps-ury 0\\$4
-.\}
-..
.de PSPIC
.nr ps-offset-mode 0
.if '\\$1'-L' \{\
@@ -26,12 +17,10 @@
. shift 2
.\}
.br
-.sy echo .ps-bb `psbb \\$1` >/tmp/psbb\\n[$$]
-.so /tmp/psbb\\n[$$]
-.sy rm /tmp/psbb\\n[$$]
-.if \\n[ps-nargs]=4 \{\
-. nr ps-wid (\\n[ps-urx]-\\n[ps-llx])
-. nr ps-ht (\\n[ps-ury]-\\n[ps-lly])
+.psbb \\$1
+.if (\\n[llx] & \\n[lly] & \\n[urx] & \\n[ury]) \{\
+. nr ps-wid (\\n[urx]-\\n[llx])
+. nr ps-ht (\\n[ury]-\\n[lly])
. if \\n[ps-wid]<0 .nr ps-wid 0-\\n[ps-wid]
. if \\n[ps-ht]<0 .nr ps-ht 0-\\n[ps-ht]
. ie \\n[.$]>=2 .nr ps-deswid (i;\\$2)
@@ -54,7 +43,7 @@
\Z'\D'p 0 \\n[ps-desht]u \\n[ps-deswid]u 0 0 -\\n[ps-desht]u''\
\X'ps: endinvis'\
\v'\\n[ps-desht]u'\X'ps: import \\$1 \
-\\n[ps-llx] \\n[ps-lly] \\n[ps-urx] \\n[ps-ury] \\n[ps-deswid] \\*[ps-desht]'
+\\n[llx] \\n[lly] \\n[urx] \\n[ury] \\n[ps-deswid] \\*[ps-desht]'
. br
. sp \\n[ps-desht]u
.\}
diff --git a/tmac/tmac.s b/tmac/tmac.s
index 547f862b3..6770b0dfb 100644..100755
--- a/tmac/tmac.s
+++ b/tmac/tmac.s
@@ -70,8 +70,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
.ds MONTH11 November
.ds MONTH12 December
.ds MO \\*[MONTH\n[mo]]
-.nr *year \n[yr]+1900
-.ds DY \n[dy] \*[MO] \n[*year]
+.ds DY \n[dy] \*[MO] \n[year]
.de ND
.if \\n[.$] .ds DY "\\$*
..
diff --git a/tmac/tmac.safer b/tmac/tmac.safer
index be348d5fe..be348d5fe 100644..100755
--- a/tmac/tmac.safer
+++ b/tmac/tmac.safer
diff --git a/tmac/tmac.trace b/tmac/tmac.trace
index 2691c46ec..2691c46ec 100644..100755
--- a/tmac/tmac.trace
+++ b/tmac/tmac.trace
diff --git a/tmac/tmac.tty b/tmac/tmac.tty
index 419a68532..419a68532 100644..100755
--- a/tmac/tmac.tty
+++ b/tmac/tmac.tty
diff --git a/tmac/tmac.tty-char b/tmac/tmac.tty-char
index f66d7a858..8dc1aee7d 100644..100755
--- a/tmac/tmac.tty-char
+++ b/tmac/tmac.tty-char
@@ -1,8 +1,8 @@
.\" This file defines standard troff characters and some groff characters for
-.\" use with -Tascii and -Tlatin1.
+.\" use with -Tascii, -Tlatin1 and -Tutf8.
.\"
.\" These definitions are chosen so that, as far as possible, they:
-.\" - work with both -Tascii and -Tlatin1.
+.\" - work with all of -Tascii, -Tlatin1 and -Tutf8.
.\" - work on devices that display only the last overstruck character
.\" as well as on devices that support overstriking
.\" - represent the character's graphical shape (not its meaning)
diff --git a/tmac/troffrc b/tmac/troffrc
index 19024438e..952c78f7b 100644
--- a/tmac/troffrc
+++ b/tmac/troffrc
@@ -12,8 +12,9 @@
.do ds troffrc!X100-12 tmac.X
.do ds troffrc!ascii tmac.tty
.do ds troffrc!latin1 tmac.tty
+.do ds troffrc!utf8 tmac.tty
.do ds troffrc!lj4 tmac.lj4
-.do ds troffrc!html tmac.html
+.do ds troffrc!html tmac.arkup
.do if d troffrc!\*[.T] \
. do mso \*[troffrc!\*[.T]]
.do rm troffrc!ps troffrc!Xps troffrc!dvi troffrc!X75 troffrc!X75-12 \
diff --git a/tmac/troffrc-end b/tmac/troffrc-end
new file mode 100644
index 000000000..edd23e4ff
--- /dev/null
+++ b/tmac/troffrc-end
@@ -0,0 +1,6 @@
+.\"
+.\" final startup file for troff
+.\" this file is parsed after all macro sets have been read
+.\"
+.if '\*(.T'html' .mso tmac.html
+.\" Don't let blank lines creep in here. \ No newline at end of file
diff --git a/troff/Makefile.dep b/troff/Makefile.dep
deleted file mode 100644
index 06f568af0..000000000
--- a/troff/Makefile.dep
+++ /dev/null
@@ -1,36 +0,0 @@
-env.o: env.cc troff.h ../include/lib.h ../include/assert.h \
- ../include/device.h ../include/cset.h ../include/cmap.h \
- ../include/errarg.h ../include/error.h symbol.h dictionary.h \
- hvunits.h env.h request.h node.h token.h div.h reg.h charinfo.h \
- ../include/searchpath.h ../include/macropath.h
-node.o: node.cc troff.h ../include/lib.h ../include/assert.h \
- ../include/device.h ../include/cset.h ../include/cmap.h \
- ../include/errarg.h ../include/error.h symbol.h dictionary.h \
- hvunits.h env.h request.h node.h token.h charinfo.h ../include/font.h \
- reg.h
-input.o: input.cc troff.h ../include/lib.h ../include/assert.h \
- ../include/device.h ../include/cset.h ../include/cmap.h \
- ../include/errarg.h ../include/error.h symbol.h dictionary.h \
- hvunits.h env.h request.h node.h reg.h token.h div.h charinfo.h \
- ../include/font.h ../include/searchpath.h ../include/macropath.h \
- ../include/defs.h ../include/posix.h
-div.o: div.cc troff.h ../include/lib.h ../include/assert.h \
- ../include/device.h ../include/cset.h ../include/cmap.h \
- ../include/errarg.h ../include/error.h symbol.h dictionary.h \
- hvunits.h env.h request.h node.h token.h div.h reg.h
-symbol.o: symbol.cc troff.h ../include/lib.h ../include/assert.h \
- ../include/device.h ../include/cset.h ../include/cmap.h \
- ../include/errarg.h ../include/error.h symbol.h
-dictionary.o: dictionary.cc troff.h ../include/lib.h \
- ../include/assert.h ../include/device.h ../include/cset.h \
- ../include/cmap.h ../include/errarg.h ../include/error.h symbol.h \
- dictionary.h
-reg.o: reg.cc troff.h ../include/lib.h ../include/assert.h \
- ../include/device.h ../include/cset.h ../include/cmap.h \
- ../include/errarg.h ../include/error.h symbol.h dictionary.h token.h \
- request.h reg.h
-number.o: number.cc troff.h ../include/lib.h ../include/assert.h \
- ../include/device.h ../include/cset.h ../include/cmap.h \
- ../include/errarg.h ../include/error.h symbol.h hvunits.h env.h \
- token.h div.h
-majorminor.o: majorminor.cc
diff --git a/troff/Makefile.sub b/troff/Makefile.sub
deleted file mode 100644
index dc67031fe..000000000
--- a/troff/Makefile.sub
+++ /dev/null
@@ -1,30 +0,0 @@
-PROG=troff
-MAN1=troff.n
-XLIBS=$(LIBGROFF)
-MLIB=$(LIBM)
-OBJS=env.o node.o input.o div.o symbol.o dictionary.o reg.o \
- number.o majorminor.o
-CCSRCS=env.cc node.cc input.cc div.cc symbol.cc dictionary.cc reg.cc \
- number.cc majorminor.cc
-HDRS=charinfo.h dictionary.h div.h env.h hvunits.h node.h reg.h request.h \
- symbol.h token.h troff.h
-GENSRCS=majorminor.cc
-NAMEPREFIX=$(g)
-
-majorminor.cc: ../VERSION
- @echo Making $@
- @-rm -f $@
- @echo const char \*major_version = \
- \"`sed -e 's/^\([^.]*\)\..*$$/\1/' $(srcdir)/../VERSION`\"\; >$@
- @echo const char \*minor_version = \
- \"`sed -e 's/^[^.]*\.\([0-9]*\).*$$/\1/' $(srcdir)/../VERSION`\"\; >>$@
-
-install_data: hyphen.us
- -test -d $(datadir) || mkdir $(datadir)
- -test -d $(datasubdir) || mkdir $(datasubdir)
- -test -d $(tmacdir) || mkdir $(tmacdir)
- -rm -f $(tmacdir)/hyphen.us
- $(INSTALL_DATA) $(srcdir)/hyphen.us $(tmacdir)/hyphen.us
-
-uninstall_sub:
- -rm -f $(tmacdir)/hyphen.us