aboutsummaryrefslogtreecommitdiff
path: root/contrib/groff/contrib/mm
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/groff/contrib/mm')
-rw-r--r--contrib/groff/contrib/mm/ChangeLog679
-rw-r--r--contrib/groff/contrib/mm/Makefile.sim66
-rw-r--r--contrib/groff/contrib/mm/Makefile.sub62
-rw-r--r--contrib/groff/contrib/mm/NOTES105
-rw-r--r--contrib/groff/contrib/mm/README31
-rw-r--r--contrib/groff/contrib/mm/examples/APP352
-rw-r--r--contrib/groff/contrib/mm/examples/B1B291
-rw-r--r--contrib/groff/contrib/mm/examples/COVER235
-rw-r--r--contrib/groff/contrib/mm/examples/IND4191
-rw-r--r--contrib/groff/contrib/mm/examples/LT1058
-rw-r--r--contrib/groff/contrib/mm/examples/LT.se1062
-rw-r--r--contrib/groff/contrib/mm/examples/ML169
-rw-r--r--contrib/groff/contrib/mm/examples/MOVE175
-rw-r--r--contrib/groff/contrib/mm/examples/MUL535
-rw-r--r--contrib/groff/contrib/mm/examples/NCOL196
-rw-r--r--contrib/groff/contrib/mm/examples/ND17
-rw-r--r--contrib/groff/contrib/mm/examples/README32
-rw-r--r--contrib/groff/contrib/mm/examples/References975
-rw-r--r--contrib/groff/contrib/mm/examples/SETR109
-rw-r--r--contrib/groff/contrib/mm/groff_mm.man2104
-rw-r--r--contrib/groff/contrib/mm/groff_mmse.man86
-rw-r--r--contrib/groff/contrib/mm/m.tmac3536
-rw-r--r--contrib/groff/contrib/mm/mm.tmac3
-rw-r--r--contrib/groff/contrib/mm/mm/0.MT146
-rw-r--r--contrib/groff/contrib/mm/mm/4.MT82
-rw-r--r--contrib/groff/contrib/mm/mm/5.MT34
-rw-r--r--contrib/groff/contrib/mm/mm/ms.cov84
-rw-r--r--contrib/groff/contrib/mm/mm/se_ms.cov3
-rw-r--r--contrib/groff/contrib/mm/mmroff.man49
-rwxr-xr-xcontrib/groff/contrib/mm/mmroff.pl137
-rw-r--r--contrib/groff/contrib/mm/mmse.tmac3
-rw-r--r--contrib/groff/contrib/mm/mse.tmac184
32 files changed, 0 insertions, 16591 deletions
diff --git a/contrib/groff/contrib/mm/ChangeLog b/contrib/groff/contrib/mm/ChangeLog
deleted file mode 100644
index c1f8985693c1..000000000000
--- a/contrib/groff/contrib/mm/ChangeLog
+++ /dev/null
@@ -1,679 +0,0 @@
-Thu May 26 08:23:40 2005 Werner LEMBERG <wl@gnu.org>
-
- * m.tmac: Load devtag.tmac.
-
-Wed Mar 16 06:56:02 2005 Larry Kollar <kollar@alltel.net>
-
- Add rudimentary support for grohtml.
-
- * m.tmac (H): Call DEVTAG-NH and DEVTAG-EO-H.
- (pg@enable-trap, pg@header): Do nothing for devhtml.
-
-Sun Mar 7 16:34:46 2004 Jeff Conrad <jeff_conrad@msn.com>
-
- * m.tmac (S): Improve debug message.
-
-Wed Mar 05:38:57 2004 Joergen Haegg <jh@axis.com>
-
- * Changed default value for Hy in manual to 0
- * Check Hy at each new page
-
-Mon Mar 1 22:16:38 2004 Jeff Conrad <jeff_conrad@msn.com>
-
- * m.tmac (S): Fix scaling indicator for vertical spacing.
-
-Tue Nov 05:14:45 2003 Joergen Haegg <jh@axis.com>
-
- * another patch from ulrich lauther to fix the
- TOC up to 14 heading levels.
-
-Mon Oct 13:48:25 2003 Joergen Haegg <jh@axis.com>
-
- * problem with more than 7 levels of headings fixed with
- patch from ulrich lauther.
-
-Wed Apr 06:42:35 2003 Joergen Haegg <jh@axis.com>
-
- * the footer was not adjusted by VM due to a missing
- pg*extra-footer-size in the calculation of pg*last-pos
-
-Wed Apr 06:04:58 2003 Joergen Haegg <jh@axis.com>
-
- * space adjustments in 4.MT to make it more like
- the original
-
-Sun Mar 21:45:10 2003 Joergen Haegg <jh@axis.com>
-
- * removed error check i 4.MT, .AF is not mandatory anymore
-
-Sat Mar 21:56:57 2003 Joergen Haegg <jh@axis.com>
-
- * cov*firm now defined only if arg to AF is non-empty
- That will also enable cov*default-firm from the mm locale-file
- to work.
-
-Sat Mar 21:05:29 2003 Joergen Haegg <jh@axis.com>
-
- * added .ll in pg@set-env to initialize the
- header environment properly
-
-Wed Mar 19 23:02:16 2003 Werner LEMBERG <wl@gnu.org>
-
- * groff_mm.man: Some fixes from Robert D. Goulding
- <goulding@Princeton.EDU>.
-
-Wed Sep 09:53:06 2002 Joergen Haegg <jh@axis.com>
-
- * added implicit -mm to mmroff, it's now possible
- to use mmroff with or without -mm as argument.
-
-Thu Aug 08 00:31:00 Bob Diertens <bobd@science.uva.nl>
-
- * m.tmac (VM): Add missing backslash.
-
-Fri Jun 10:37:58 2002 Joergen Haegg <jh@axis.com>
-
- * added init@reset for LT-macros so .S works for letters
-
-Thu May 06:30:06 2002 Joergen Haegg <jh@axis.com>
-
- * adding -T to VM for setting the total
- header and footer size.
- * changing pg*extra-header-size unit from v to u in DS-size
- calculation
-
-Mon May 05:40:16 2002 Joergen Haegg <jh@axis.com>
-
- * All lists now get an empty line before the list
- even if there is no empty lines between the items (bug in LB)
-
-Sat May 07:36:08 2002 Joergen Haegg <jh@axis.com>
-
- * PIC is now drawn 1v higher, making it
- possible to put a picture at 0,0.
- * Indentbug in P fixed, Pt=2 now behaves as it should
-
-Wed May 10:18:26 2002 Joergen Haegg <jh@axis.com>
-
- * added L, W and O in groff_mm.man
- * extra space in expression removed in EPIC
- * EPIC can leftadjust with -L
- * EPIC was drawing 1v down
- * forgot to add mmse.tmac and mm.tmac to cvs
-
-Fri May 20:35:32 2002 Joergen Haegg <jh@axis.com>
-
- * Clarified manual about INITR
- * Added mm.tmac and mmse.tmac wrappers
- * Fixed bug in mmroff so a .qrf-file always will be created
- * .EQ mark was not correctly positioned anymore.
- * changed SP to sp in DS/DE to further correct .EQ
-
-Sun Dec 9 00:00:00 2001 Werner LEMBERG (wl@gnu.org)
-
- * Makefile.sim, groff_mm.man, groff_mmse.man: Minor fixes.
- * mmroff.man: This is a section 1 man page.
- Minor fixes.
- * Makefile.sub: Install mmroff.man in section 1.
-
-Wed Nov 28 00:00:00 2001 Werner LEMBERG (wl@gnu.org)
-
- * m.tmac: Assure that the macro package is loaded only once.
-
-Wed Sep 5 00:00:00 2001 Werner LEMBERG (wl@gnu.org)
-
- * m.tmac: Enable all warnings only if no -W or -w option is given on
- the command line (or rather, if only the default warnings are
- set).
-
-Mon Sep 3 00:00:00 2001 Werner LEMBERG (wl@gnu.org)
-
- * groff_mm.man: Don't use .ne for TTY devices.
-
-Thu Jul 26 00:00:00 2001 Werner LEMBERG (wl@gnu.org)
-
- * groff_mm.man: Start always a new line after end of sentence. Add
- some compatibility info to the HF variable.
-
-Thu Jul 26 00:00:00 2001 Larry Jones (larry.jones@sdrc.com)
-
- * m.tmac: Fix initialization of Hps1 and Hps2.
-
-Wed May 16 00:00:00 2001 Bruce Lilly (blilly@erols.com)
-
- * m.tmac (TH): Fix incorrect error message.
-
-Thu Apr 12 00:00:00 2001 Ruslan Ermilov (ru@FreeBSD.org)
-
- * groff_mm.man: Fixing some typos.
-
-Mon Mar 5 09:30:18 2001 Jörgen Hägg (jh@axis.com)
-
- * S didn't reset to default point size
- * (dummy line to force cvs update...)
-
-Sat Jan 06 10:30:00 2001 Werner LEMBERG (wl@gnu.org)
-
- * Fixed assignment of page offset given as a command line argument.
-
-Fri Nov 17 05:34:17 2000 Jörgen Hägg (jh@axis.com)
-
- * Renamed tmac.m and tmac.mse to m.tmac and mse.tmac
-
-Thu Sep 14 05:52:48 2000 Jörgen Hägg (jh@axis.com)
-
- * New Changelog-format, it will show changes better.
- Easier for other to use. (Somehow I didn't really
- understand why the e-mail address was supposed to be
- 'jh at axis.com' in the Changelog. :-)
-
-Mon Aug 28 00:00:00 2000 Bruno Haible (haible at clisp.cons.org)
-
- * Makefile.sub: New target 'all', makes all prerequisites of
- 'install'.
-
-Thu Sep 7 06:17:42 2000 Jörgen Hägg (jh at axis.com)
-
- * version 2.0
- * Had to do something about my version numbering.
- The main CVS archive was not in sync with mine.
- So, now it is 2.0. :-)
-
-Sat Jun 17 23:00:00 2000 Eli Zaretskii (eliz@is.elta.co.il)
-
- * Makefile.sim (.man.n): Replace `;' with `|', since DOS/Windows
- path lists use the semicolon as a separator.
-
-Sun Jun 4 21:39:00 2000 Kaneda Hiroshi (vanitas at ma3.seikyou.ne.jp)
-
- * Fixing a lot of typos in groff_mm.man
-
-Tue Mar 7 00:00:00 2000 OKAZAKI Tetsurou (okazaki at be.to)
-
- * Makefile.sub: Use $(INSTALL_SCRIPT) for script files.
-
-Sun Jan 30 22:52:20 2000 Jörgen Hägg (jh at axis.com)
-
- * version 1.34
- * Changed the version number in the CVS repository
- * MC had a bug in column calculation, (thanks to T. Kurt Bond)
-
-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. :-)
- * version 1.32
- * fixed .el-error
- * Added number variable Hss
- * Changed Hps1 and Hps2 to units
- * added hd*h1-text to be used in user defined macro TP.
- * -U needed for SETR (I really need 'mv', 'echo', 'rm'
- and 'test' builtin!)
- * Rewritten the reference system, SETR now prints to stderr
- if the number register Qrf > 0. Store in the filename
- that is the argument to .INITR
- The old behaviour is returned if number register Initr > 0.
- * Fixed bug with List of XXXX, long lines messed up the result.
- * added number register H1dot.
- * added string variable H1txt
- * added string variable Tcst
- * added number register Dsp.
- * added alias APPX for user-defined appendix title.
- * added string variable Apptxt
- * added H1h for use in TP in headers
- * added macro EPIC
- * added macro PIC (safe replacement for PSPIC)
- * fixed Hps-bug, should be 1, not 1v.
- * fixed bug with APPSK, variable not set.
-
-Wed Feb 4 15:46:04 1998 Jörgen Hägg (jh at axis.se)
-
- * version 1.31
- * .LI will now honor a space mark.
- * Another fix for .AU to let it be used without arguments.
- * uninitialized eq*label fixed
-
-Fri Sep 6 07:13:07 1996 Jörgen Hägg (jh at axis.se)
-
- * version 1.30
- * This is more like a beta-release, bugs might pop up. :-)
- * last line in TOC was not correctly terminated (missing .br)
- * changed the indentation for displays, it will now
- indent to the current indent, not the one at the definition
- of the display.
- * Equation marks should now work better, indentation also.
- * included these bug fixes from Larry Jones:
- * The documentation for the argument to .AS was incorrect for MT 4.
- * \*(EM should be a double-dash for nroff.
- * \nS is in points, not units.
- * If \nO isn't set, the default page offset should be .75i for nroff
- and .963i for troff.
- * .S D should set the point size to \nS, not 10.
- * .S was setting the vertical spacing based on the old point size
- instead of the new point size.
- * Got rid of a spurrious .br that prevented run-in headings from
- working.
- * Reset the .SP counters in pg@header so that spacing on one page
- won't affect spacing on subsequent pages.
- * Allow .AU and .AF with no arguments (real mm does, even though it
- isn't documented).
- * Do .init@reset first thing to initialize the default environment.
- * For MT 4, the title should be 4 points larger than the default size,
- not 12 point.
- * The cover environment needs to be initialized.
- * Printing the abstract on the first page needs to be controlled by
- the .AS argument.
- * Heading eject should be suppressed if the heading immediately
- follows the first page stuff (title, author, etc.).
- * support for table of contents numbering style (.nr Oc)
- * changes the troff empty line height from .25v to .5v
- * fixed section page numbering
- * fixed a really nasty bug in footnotes that could cause you
- to lose the page footer completely if the very first
- footnote on the page occurred at just the wrong place
-
-
-Wed May 15 07:39:32 1996 Jörgen Hägg (jh at axis.se)
-
- * version 1.29
- * Syntax and scaling errror fixed, (thanks to Frazer Williams)
- * DF/DE will now do a line-break before printing the display.
- * Updated the manual for TB,FG,EX and EC.
- * Added support for the ms- (and mgs-)macro .IX
- * Added indexmacro IX, INITI, IND and INDP, support for
- TXIND, TYIND and TZIND.
- * PGFORM will now always really reset to the default
- values for unspecified arguments.
- * Floating displays tested and repaired, it should
- now (finanlly) work exactly as the original (I hope :-).
- * Should now set year correctly even after 2000.
- * Stupid bug in PGNH fixed.
- * Corrected line length for figure caption (FG and friends)
-
-
-Mon Apr 24 07:37:52 1995 Jörgen Hägg (jh at axis.se)
-
- * version 1.28
- * Added AVL (AV without date)
- * Fixed nroff scaling for W and L.
- * Added support for register E and roman/bold
- for all Subject/Date/From strings.
- * Added support for register C (1-4), (for DRAFTs and other types)
- * Will protest if not used with groff.
- * Change of the internal number registers @ps and @vs, they
- are now in units, and is set in the new macros .@ps and .@vs.
- @ps and @vs is now corrected to the real point and vertical size.
- * Macro EQ has now correct pointsize.
- * Figures should now get the right page number in the index.
- * User-defined macros can now be defined for list of
- figures, tables, equations and exhibits (T{X,Y}{FG,TB,EC,EX}.
- * Space may be omitted between prefix and mark in automatic lists (.AL)
- See .LI
-
-Tue Jan 10 07:51:37 1995 Jörgen Hägg (jh at axis.se)
-
- * version 1.27
- * Manual updated
- * More bugs fixed in DS/DF
- * added alias for :g
- * LC can now be used without argument (as the manual says. :-)
- * Register :R now supported (RS/RF)
- * footnote line was printed even if there was no room for
- any footnotes. Fixed.
- * Fixed 1C so that it can be used without page eject
- * Added support for EOP (TPs twin)
- * Hyphenation turned off by default. (Hy == 0)
-
-Fri Nov 4 08:14:50 1994 Jörgen Hägg (jh at axis.se)
-
- * version 1.25
- * DS/DF separated and several bugs fixed. Watch out for new though. :-)
- * string DT was emptied by mistake in the previous version.
- * RD made prettier.
- * typo in AV and let@print-head fixed.
-
-Mon Oct 31 08:19:24 1994 Jörgen Hägg (jh at axis.se)
-
- * version 1.24
- * Bug fixed and format extended in .SG and .FC.
- * date is always printed unless .ND without argument is used.
- (I wonder what's the right thing to do, this might change.)
- * Swedish letter-standards implemented in tmac.mse.
- * .ND can be used to turn off the date. (Empty argument)
-
-Mon Oct 31 08:14:09 1994 Jörgen Hägg (jh at axis.se)
-
- * version 1.23
- * An attempt to get in sync with RCS. This is the distributed
- version.
-
-Thu Oct 27 08:29:34 1994 Jörgen Hägg (jh at axis.se)
-
- * version 1.22
- * (version 1.21 lost... :-)
- * Letter macros added!!
- * The following macros are added:
- * AV, FC, IA ,IE, LT, LO, NE, NS, SG, WA, WE
- * nP also added.
-
-Tue Dec 14 16:26:36 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.20
- * spelling-corrections
- * Makefile.sim updated to the correct version, and a uninstall
- target added.
- * @cur-lib removed from tmac.m (obsolete)
- * fixed check for references i .TC, .RP now resets the flag correctly.
- * floating display should now be printed if there is space.
- * first version using RCS. I've been avoiding version control until it
- became necessary.
- * WC WD now works in two-column-mode.
-
-Tue Sep 7 08:37:00 1993 Jörgen Hägg (jh at efd.lth.se)
-
- * version 1.19
- * .lt is called in the header for .TP also.
- * Variable Pgps added to control the header and footer point-size.
- * Error-text printed with .APP removed.
- * Error with .FG, .TB, .EC and .EX indentation fixed.
- * header and footer line-length is not changed by MC or 2C.
- * Default for page-length and page-offset is now taken from
- \n[.p] and \n[.o].
- * Argument to .ab (abort) is supplied.
- * Argument to .1C added.
- * Argument to .PGFORM added.
- * RP/RS/RF totally rewritten. Should work with 2C now.
-
-Fri Apr 23 10:37:25 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.18
- * Height of display is now more exactly calculated.
- * tabs and blankspaces where wrong in .VERBON.
- * error in manual for escape-character in VERBON.
- * Makefile.sub: installed tmac.m as tmac.m and tmac.mse
- * Installation of tmac.mse now supports TMAC_M.
- * bug with N fixed.
-
-Mon Apr 5 09:36:01 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.17
- * MULB preserves size.
- * bug in VERBON fixed, causing strange errors.
- * section-page footer fixed.
- * added support for numberregister S
- * fixed bug with floating displays wich made floats to
- generate space on a page, but broke page anyway.
- * end-of-page trap reinstalled.
-
-Mon Mar 29 10:53:13 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.16
- * MUL* now use the previous font and family.
- * extra blank page at end-of-text eliminated.
-
-Mon Mar 8 10:27:47 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.15
- * Didn't restore pointsize to current size in .H.
- * B1/B2 did not work with indent. (MULE and friends)
- * fixed old problem with trailing empty pages.
-
-Fri Mar 5 15:20:49 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.14
- * Sigh. Amazing what a missing \} can do. If the string
- HP was set, then all text disappeared...
-
-Fri Mar 5 14:12:43 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.13
- * Fixed bug with handling ps/vs in .H. (again, sigh... )
-
-Wed Mar 3 09:21:20 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.12
- * Line-break added to PGFORM.
- * added more features to VERBON
- * .S is not used anymore in H, it caused confusion with
- normal text, but it will still set .vs.
- * SK was broken, will now produce the requested number of
- empty pages.
- * dotted lines added to LIST OF FIGURES adn friends.
- Also better linespacing.
-
-Mon Feb 22 12:41:06 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.11
- * missing left-parenthesis gave ") .sp" when N=4.
- * N=4 removed user-specified header also.
- * MOVE made linelength pageoffset wider than wanted.
- * fixed (again) parenthesis in RP.
-
-Thu Jan 21 12:10:39 1993 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.10
- * changed PROG_PREFIX to g in the manual-pages.
- * Better check if new page is needed in .H, when Ej>0.
- * Usage of variable Lsp now more complete.
- * Space added in TOC when mark is equal to size.
- * Usermacro HY moved after font-calulations.
- * .S used instead of .ps, which will use .vs correct.
- * Now possible to set Hps1/2 inside HX.
- * .FD "" 1 is now fixed.
- * section-page numbering bug fixed.
- * several bugs in VERBON/OFF fixed.
-
-Tue Dec 8 16:43:15 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.09
- * N==4 gives no default header
-
-Sat Nov 21 14:28:20 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.08
- * Escape-character disabled between
- VERBON/VERBOFF (turned on by an argument).
- Pointsize and fontchange also added as arguments.
- * MULB, MULN and MULE added to get multicolumn output
- with different width.
- * Number register N can now use 1-5.
- * Register Sectp and Sectf added.
- * Register P is now updated correctly for "section-page" numbering.
-
-Thu Nov 19 11:19:33 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.07
- * .OP fixed to eject a blank page if not odd.
-
-Fri Nov 13 09:46:09 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.06
- * Macro TL rewritten. TL depends now on a following .AU.
- * NOTES updated.
- * .lt is now used more frequent when linelength is changed.
- * macro AST added.
- * removed PH/EH/OH not needed in ?.MT.
-
-Wed Oct 28 14:35:43 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.05
- * .VM implemented.
- * Possible bug in page heading fixed. Changed .sp to 'sp in HEADER.
-
-Thu Aug 20 13:56:31 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.04
- * page-break in .EQ moved.
- * changed unit for footer-size and header-size from units to lines.
- Fixes problems with .S and page-breaks.
- * \n[%] is now treated as a string, wich makes it possible
- to assign new formats to it. Unfortunately, it was necessary
- to change the page-number-variable in GETPN to a string.
- * Makefile.sub included. (Thank you, James)
-
-Thu May 7 16:14:10 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.03
- * Typo and centering in DS/DE fixed.
- Even and odd pageheaders were reversed.
- * LI: pad and mark-indent was lost in some earlier versions. Now fixed.
- * fixed bug in reference to .FG, .TB, ...
- * APP did not clear headercounters.
- * Pointsize in titles is now only set at the beginning and
- when PH, PF, OH, OF, EH and EF are used.
-
-Thu May 6 16:01:35 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.02
- * OP fixed.
-
-Fri Mar 6 09:36:09 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.01
- * two .LI without text between should not be printed
- on the same row. Now fixed.
- * figure titles and friends fixed, now possible with many .FG
- in a DS/DE. Didn't always position correctly in previous version,
- but is now always printed as it should.
- * Makefile fixed for Ultrix.
- * DS/DF could not handle empty arguments correct
- * Missing .br i EQ added.
-
-Sat Jan 25 15:47:21 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 1.00
- * No betaversion anymore!
- * Fixed headernumbers within appendixes.
- * DS did not keep the same font as before DS.
- * mmse did a line break.
-
-Fri Jan 24 14:38:16 1992 Joergen Haegg (jh at efd.lth.se)
-
- * version 0.16
- * bug in TC, multiple line headers did not wrap correctly.
- * added support for mm/locale and mm/language_locale.
- * cov*default-firm in locale sets name of firm in the MT covers.
- * cov*location-xxxx in locale sets location xxxx to the contents
- of cov*location-xxxx. Used in the MT covers.
- * hanging indent in lists fixed.
- * use larger empty lines if .nroff is defined.
- * macros, like .P, can now be used inside abstracts.
- * .S do not reset indentation anymore.
- * .RS aA now sets a string, not an integer.
- * appendix with .APP or .APPSK added.
-
-Thu Nov 28 22:00:59 1991 Joergen Haegg (jh at efd.lth.se)
-
- * version 0.15
- * Fixed .AU in MT 0-3, added support for variable Au.
- * Bug in the positioning of the foot-notes.
- * lists not indented properly.
- * Hps1 and Hps2 added.
- * COVER had to have an argument.
- * table of contents can now have multiline header.
- * .HU now increments headingvariable H?
- * added the inclusion of a locale file.
-
-Sat Nov 23 14:40:17 1991 Joergen Haegg (jh at efd.lth.se)
-
- * version 0.14
- * bug when using -rO fixed.
- * MT 1-4 added.
- * default is now MT 1
- * .EQ/.EN can be used outside of .DS/.DE without complaints. But
- I don't recommend it. Neither does the DWB books.
- * LI don't break lines now if arg too big.
- * PGFORM did not reset indent.
- * Added the numbervariable Hps.
- * Rewritten and added MT 0-5 + "string".
- * Added TM.
- * Indent to AS added
-
-Wed Nov 6 15:18:40 1991 Joergen Haegg (jh at efd.lth.se)
-
- * version 0.13
- * ds*format nod defined if PS/PE is used without DS/DE.
- * GETST added, fourth argument to EX, FG, TB and EC added.
-
-Mon Nov 4 13:38:01 1991 Joergen Haegg (jh at efd.lth.se)
-
- * version 0.12
- * Fixed C,D,P,+-size in .S
-
-Sun Jan 1 00:00:00 1991 Joergen Haegg (jh at efd.lth.se)
- * Next version will have ChangeLog entries...
- * Bug in INITR fixed.
- * VERBON/VERBOFF added to include programlistings
- * Bug in .DE fixed, addition overflow
-Sun Jan 1 00:00:00 1991 Joergen Haegg (jh at efd.lth.se)
- * spelling error in month-names.
- * WC should work now (no warranty :-)
- * FD almost finished, some details missing.
- * incorrect calculation of foot-notes fixed.
- * DS/DE did not break page when the size was smaller than the paper
- * Forward/backward referencesystem added. Se .INITR in README.
- * mgmsw changed name to mgmse.
-Sun Jan 1 00:00:00 1991 Joergen Haegg (jh at efd.lth.se)
- * embarrassing bug in .P fixed
- * .H did always eject page, now fixed.
- * lost floating displays now found.
- * accents added (from mgs)
- * empty line in .EQ/.EN removed
- * indentation in .TC corrected.
- * indentation of DS/DE in lists fixed.
- * .TB and friends now work inside DS/DE and outside.
- * .WC partially implemented (WF and WD). Still working on it.
- * .mso used if version>=1.02
-Sun Jan 1 00:00:00 1991 Joergen Haegg (jh at efd.lth.se)
- * register P was not working.
- * support for register Fg, Tb, Ec and Ex.
- * list items was left on the previous page at a page break.
- * tlevel in .TC now defaults to 2.
- * string DT, EM and Tm supported.
- * new macro: PGNH, see comments.
- * bug in MOVE fixed.
- * pagenumber in .TC fixed.
- * a blank page was ejected if Ej==1, now fixed
- * bug in floating display fixed (did break and SP wrong)
- * bug in .SP fixed, no lines is now printed at top of page
- * There are still problems with footnotes and displays in two column mode.
-Sun Jan 1 00:00:00 1991 Joergen Haegg (jh at efd.lth.se)
- * register P added (same as %)
- * bug in floating displays fixed
- * MOVE added
- * MT added, see comment below
- * COVER/COVEND added
- * fixed bug in figure titles
- * extended S, se comment below
- * MT 0 added
- * ms-cover added (COVER ms)
-Sun Jan 1 00:00:00 1991 Joergen Haegg (jh at efd.lth.se)
- * bugs in RD and comb. fonts fixed
-Sun Jan 1 00:00:00 1991 Joergen Haegg (jh at efd.lth.se)
- * HC added
- * Combined fonts (IB,BI...)
- * HM added
- * RD added
- * OP added
- * TP&PX supported
- * warnings for unimplemented macros
diff --git a/contrib/groff/contrib/mm/Makefile.sim b/contrib/groff/contrib/mm/Makefile.sim
deleted file mode 100644
index 2c645bee3180..000000000000
--- a/contrib/groff/contrib/mm/Makefile.sim
+++ /dev/null
@@ -1,66 +0,0 @@
-#
-# $Id: Makefile.sim,v 2.3 2002/05/22 06:26:12 jhaegg Exp $
-#
-# To install mgm separately as gm.tmac:
-# make -f Makefile.sub tmacdir=/usr/local/lib/groff/tmac srcdir=. \
-# INSTALL_DATA='install -m 644' tmac_m=gm install
-#
-# or as m.tmac:
-#
-# tmacdir is the destination for your groff/tmac-directory, srcdir is
-# this directory and INSTALL_DATA is the command to install a file with.
-# If you dont have 'install': use 'cp'.
-
-
-# change this to whatever you like
-tmacdir=/usr/local/lib/groff/tmac
-#tmac_m = gm
-tmac_m = m
-indexdir = xx
-install = install -m 644
-
-# Do not change anything below this line
-srcdir = .
-version = 2.8
-mdate = 2002-05-11
-
-.SUFFIXES: .n .man
-
-all:
-
-
-install: groff_mm.n groff_mmse.n
- $(MAKE) -f Makefile.sub tmacdir=$(tmacdir) srcdir=$(srcdir) \
- INSTALL_DATA='$(install)' tmac_m=$(tmac_m) install
-
-uninstall: groff_mm.n groff_mmse.n
- $(MAKE) -f Makefile.sub tmacdir=$(tmacdir) srcdir=$(srcdir) \
- INSTALL_DATA='$(install)' tmac_m=$(tmac_m) uninstall_sub
-
-
-.man.n:
- @echo Making $@ from $<
- @-rm -f $@
- @sed -e "s|@HYPHENFILE@|$(hyphenfile)|g" \
- -e "s|@FONTDIR@|$(fontdir)|g" \
- -e "s|@FONTPATH@|$(fontpath)|g" \
- -e "s|@MACRODIR@|$(tmacdir)|g" \
- -e "s|@MACROPATH@|$(tmacpath)|g" \
- -e "s|@DEVICE@|$(DEVICE)|g" \
- -e "s|@DEFAULT_INDEX@|$(indexdir)/$(indexname)|g" \
- -e "s|@DEFAULT_INDEX_NAME@|$(indexname)|g" \
- -e "s|@INDEX_SUFFIX@|$(indexext)|g" \
- -e "s|@COMMON_WORDS_FILE@|$(common_words_file)|g" \
- -e "s|@MAN1EXT@|$(man1ext)|g" \
- -e "s|@MAN5EXT@|$(man5ext)|g" \
- -e "s|@MAN7EXT@|$(man7ext)|g" \
- -e "s|@TMAC_S@|$(tmac_s)|g" \
- -e "s|@TMAC_M@|$(tmac_m)|g" \
- -e "s|@TMAC_MDIR@|$(tmacdir)/mm|g" \
- -e "s|@BROKEN_SPOOLER_FLAGS@|$(BROKEN_SPOOLER_FLAGS)|g" \
- -e "s|@VERSION@|$(version)|g" \
- -e "s|@MDATE@|$(mdate)|g" \
- -e "s|@g@|$(g)|g" \
- -e "s!@G@;`echo $(g) | tr [a-z] [A-Z]`!g" \
- $< >$@
-
diff --git a/contrib/groff/contrib/mm/Makefile.sub b/contrib/groff/contrib/mm/Makefile.sub
deleted file mode 100644
index 40b77071d51c..000000000000
--- a/contrib/groff/contrib/mm/Makefile.sub
+++ /dev/null
@@ -1,62 +0,0 @@
-#
-# $Id: Makefile.sub,v 2.3 2002/05/22 06:26:12 jhaegg Exp $
-#
-PROG=mmroff
-MAN1=\
- mmroff.n
-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
-
-all: mmroff
-
-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
- -rm -f $(tmacdir)/$(tmac_m_prefix)m.tmac
- $(INSTALL_DATA) $(srcdir)/m.tmac $(tmacdir)/$(tmac_m_prefix)m.tmac
- @sed -e "s;^.mso m.tmac;.mso $(tmac_m_prefix)m.tmac;g" \
- $(srcdir)/mse.tmac > $(tmacdir)/$(tmac_m_prefix)mse.tmac
- @sed -e "s;^.mso mse.tmac;.mso $(tmac_m_prefix)mse.tmac;g" \
- $(srcdir)/mmse.tmac > $(tmacdir)/$(tmac_m_prefix)mmse.tmac
- @sed -e "s;^.mso m.tmac;.mso $(tmac_m_prefix)m.tmac;g" \
- $(srcdir)/mm.tmac > $(tmacdir)/$(tmac_m_prefix)mm.tmac
-
-install_mmroff: mmroff
- -test -d $(bindir) || $(mkinstalldirs) $(bindir)
- -rm -f $(bindir)/mmroff
- $(INSTALL_SCRIPT) 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_m_prefix)m.tmac
- -rm -f $(tmacdir)/$(tmac_m_prefix)mm.tmac
- -rm -f $(tmacdir)/$(tmac_m_prefix)mse.tmac
- -rm -f $(tmacdir)/$(tmac_m_prefix)mmse.tmac
- -rmdir $(tmacdir)/mm
- -rm -f $(bindir)/mmroff
diff --git a/contrib/groff/contrib/mm/NOTES b/contrib/groff/contrib/mm/NOTES
deleted file mode 100644
index 7643c10067c7..000000000000
--- a/contrib/groff/contrib/mm/NOTES
+++ /dev/null
@@ -1,105 +0,0 @@
-######################################################################
-$Id: NOTES,v 2.0 2000/09/14 03:40:24 jhaegg Exp $
-
-Beware!
-This may be old information. Trust only the source. :-)
-
-Implementation notes. (Or how to make your own national mm)
-
-Different commands:
-
-COVER [arg]
-MT [arg [addressee]]
-The arg is part of a filename in mm/*.MT or mm/*.cov.
-This file is read when the macro is executed. Therefore it must be
-put before any text output.
-In each file there are definitions of all extra macros needed for the
-cover sheet. MT files is only for compatibility reasons, and has several
-limits due to that it don't know when the cover starts, and cannot
-change sizes. Use COVER for new coversheet macros.
-
-But with MT it is possible to write all of the AT&T covers.
-An example can be found in mm/0.MT.
-
-When writing a new cover using COVER, have in mind that the cover
-should print the page with the COVEND macro. This macro
-should be defined by the new macrofile.
-
-Here is a part of ms.cov:
-> .\"-----------------
-> .de COVEND
-> .sp |4.2c
-> .cov@print-title
-> .cov@print-authors
-> .cov@print-firm
-> .cov@print-abstract
-> .cov@print-date
-This is important, since COVER disables the page header.
-> .pg@enable-top-trap
-Should begin with page one (normally).
-> .bp 1
-And enable the trap at the page footer.
-> .pg@enable-trap
-> ..
-
-#########################
-
-Variables for covers:
-I = integer
-S = string
-D = diversion
-M = macro
-
-Name Type Desc.
-cov*au I The number of authors.
-
-cov*title M Title collected with .TL.
-
-cov*au!x!y S Author(s) given to .AU
-cov*at!x!y S Author(s) title given to .AT
- x is the author-index [1-cov*au],
- y is the argument-index [1-9].
- Look at the table with indexes.
-
-cov*firm I Author(s) firm.
-
-cov*abs-arg I Argument to abstract.
-
-cov*abs-ind I Indent for abstract.
-
-cov*abs-name S The string 'ABSTRACT', changed with .AST
-
-cov*abstract M The abstract.
-
-cov*new-date S The date (todays date if ND is not used)
-
-cov*mt-type S MT type
-cov*mt-addresse S MT addressee
-
-
-##########################
-Argument-index for cov*au:
-
-Index Desc.
-1 name
-2 initials
-3 location
-4 department
-5 extension
-6 room
-7 arg 7
-8 arg 8
-9 arg 9
-
-The location is set to the contents of string cov*location-xxxx
-if location is equal to xxxx and cov*location-xxxx is defined
-in the file locale.
-
-
-Argument-index for cov*at:
-
-Index Desc.
-1 title 1
-. .
-. .
-9 title 9
diff --git a/contrib/groff/contrib/mm/README b/contrib/groff/contrib/mm/README
deleted file mode 100644
index f52f3eb0dbc6..000000000000
--- a/contrib/groff/contrib/mm/README
+++ /dev/null
@@ -1,31 +0,0 @@
-
-$Id: README,v 2.2 2002/05/22 06:26:12 jhaegg Exp $
-
-This is mgm, a macro package for groff.
-
-It is supposed to be compatible with the DWB mm macros,
-and has several extensions.
-
-Send bug reports to jh@axis.com with a description of the problem
-and a sample of text which reproduces the error.
-
-Don't forget to mention the version of mgm (look in the beginning
-of m.tmac) and the version of groff.
-
-Any new ideas or improvements are welcome.
-
-Newest version is available here or at the groff CVS repository.
-ftp://ftp.axis.se/pub/groff/mm<something>.gz
-
-You can install mgm as a separate package without the configure in groff
-with the following command:
-
-make -f Makefile.sim install
-
-This README should be bigger :-)
-
-/Jörgen Hägg
-
-Thanks to everyone who have sent me bug-reports and fixes.
-
-
diff --git a/contrib/groff/contrib/mm/examples/APP b/contrib/groff/contrib/mm/examples/APP
deleted file mode 100644
index 82352e58c3e4..000000000000
--- a/contrib/groff/contrib/mm/examples/APP
+++ /dev/null
@@ -1,352 +0,0 @@
-.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/groff/contrib/mm/examples/B1B2 b/contrib/groff/contrib/mm/examples/B1B2
deleted file mode 100644
index a2bb3add57d9..000000000000
--- a/contrib/groff/contrib/mm/examples/B1B2
+++ /dev/null
@@ -1,91 +0,0 @@
-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/groff/contrib/mm/examples/COVER b/contrib/groff/contrib/mm/examples/COVER
deleted file mode 100644
index d23597f0a897..000000000000
--- a/contrib/groff/contrib/mm/examples/COVER
+++ /dev/null
@@ -1,235 +0,0 @@
-.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/groff/contrib/mm/examples/IND b/contrib/groff/contrib/mm/examples/IND
deleted file mode 100644
index fbf6c43a031a..000000000000
--- a/contrib/groff/contrib/mm/examples/IND
+++ /dev/null
@@ -1,4191 +0,0 @@
-.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/groff/contrib/mm/examples/LT b/contrib/groff/contrib/mm/examples/LT
deleted file mode 100644
index cf063897371c..000000000000
--- a/contrib/groff/contrib/mm/examples/LT
+++ /dev/null
@@ -1,1058 +0,0 @@
-.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/groff/contrib/mm/examples/LT.se b/contrib/groff/contrib/mm/examples/LT.se
deleted file mode 100644
index bfbd77f5543e..000000000000
--- a/contrib/groff/contrib/mm/examples/LT.se
+++ /dev/null
@@ -1,1062 +0,0 @@
-.\" 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/groff/contrib/mm/examples/ML b/contrib/groff/contrib/mm/examples/ML
deleted file mode 100644
index bbfca3def549..000000000000
--- a/contrib/groff/contrib/mm/examples/ML
+++ /dev/null
@@ -1,169 +0,0 @@
-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/groff/contrib/mm/examples/MOVE b/contrib/groff/contrib/mm/examples/MOVE
deleted file mode 100644
index 0f0399cc7a35..000000000000
--- a/contrib/groff/contrib/mm/examples/MOVE
+++ /dev/null
@@ -1,175 +0,0 @@
-.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/groff/contrib/mm/examples/MUL b/contrib/groff/contrib/mm/examples/MUL
deleted file mode 100644
index ae91fae0d404..000000000000
--- a/contrib/groff/contrib/mm/examples/MUL
+++ /dev/null
@@ -1,535 +0,0 @@
-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/groff/contrib/mm/examples/NCOL b/contrib/groff/contrib/mm/examples/NCOL
deleted file mode 100644
index 82c6f8d50812..000000000000
--- a/contrib/groff/contrib/mm/examples/NCOL
+++ /dev/null
@@ -1,196 +0,0 @@
-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/groff/contrib/mm/examples/ND b/contrib/groff/contrib/mm/examples/ND
deleted file mode 100644
index 4b3694a37261..000000000000
--- a/contrib/groff/contrib/mm/examples/ND
+++ /dev/null
@@ -1,17 +0,0 @@
-.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/groff/contrib/mm/examples/README b/contrib/groff/contrib/mm/examples/README
deleted file mode 100644
index cb6980f85327..000000000000
--- a/contrib/groff/contrib/mm/examples/README
+++ /dev/null
@@ -1,32 +0,0 @@
-
-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/groff/contrib/mm/examples/References b/contrib/groff/contrib/mm/examples/References
deleted file mode 100644
index 72f648220903..000000000000
--- a/contrib/groff/contrib/mm/examples/References
+++ /dev/null
@@ -1,975 +0,0 @@
-.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/groff/contrib/mm/examples/SETR b/contrib/groff/contrib/mm/examples/SETR
deleted file mode 100644
index 0a922415895e..000000000000
--- a/contrib/groff/contrib/mm/examples/SETR
+++ /dev/null
@@ -1,109 +0,0 @@
-.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/contrib/groff/contrib/mm/groff_mm.man b/contrib/groff/contrib/mm/groff_mm.man
deleted file mode 100644
index bd5223d47764..000000000000
--- a/contrib/groff/contrib/mm/groff_mm.man
+++ /dev/null
@@ -1,2104 +0,0 @@
-.\"
-.\" $Id: groff_mm.man,v 2.13 2004/07/03 12:46:56 wlemb Exp $
-.\"
-.de T2
-.if t .ne 2v
-.ti -.5i
-\\$1
-.sp -1
-..
-.
-.de T3
-.if t .ne 2v
-.ti -.5i
-\fB\\$1\fP
-.br
-..
-.
-.TH GROFF_MM @MAN7EXT@ "@MDATE@" "Groff Version @VERSION@"
-.SH NAME
-groff_mm \- groff mm macros
-.SH SYNOPSIS
-.B groff
-.B \-m@TMAC_M_PREFIX@m
-[
-.IR options .\|.\|.
-]
-[
-.IR files .\|.\|.
-]
-.SH DESCRIPTION
-The groff mm macros are intended to be compatible with the DWB mm macros
-with the following limitations:
-.TP
-.B \(bu
-no Bell Labs localisms implemented.
-.TP
-.B \(bu
-the macros OK and PM are not implemented.
-.TP
-.B \(bu
-groff mm does not support cut marks
-.LP
-\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_PREFIX@mse\fP as an example.
-.\"########################################################################
-.LP
-A file called \fBlocale\fP or \fIlang\fP\fB_locale\fP is read
-after the initiation of the global variables.
-It is therefore
-possible to localize the macros with companyname and so on.
-.sp
-In this manual square brackets is used to show optional arguments.
-.sp 3
-\fBNumber registers and strings\fP
-.br
-Many macros can be controlled by number registers and strings.
-A number register is assigned with the \fBnr\fP command:
-.br
-\fB\&.nr\fP \fIXXX\fP \fI[+-]n [i]\fP
-.br
-\fBXXX\fP is the name of the register, \fBn\fP is the value to
-be assigned, and \fBi\fP is increment value for auto-increment.
-\fBn\fP can have a plus or minus sign as prefix if an increment
-or decrement of the current value is wanted.
-(Auto-increment or decrement
-occurs if the number register is used with a plus or minus sign,
-\fB\en+[XXX]\fP or \fB\en-[XXX]\fP.)
-.sp
-Strings is defined with \fBds\fP.
-.br
-\fB\&.ds\fP \fIYYY string\fP
-.br
-The string is assigned everything to the end of the line, even blanks.
-Initial blanks in \fIstring\fP should be prefixed with
-a double-quote.
-(Strings are used in the text as \fB\e*[YYY]\fP.)
-.sp
-\fBSpecial formatting of number registers\fP
-.br
-A number register is printed with normal digits if no format has been
-given.
-Set the format with \fBaf\fP:
-.br
-\fB\&.af\fP \fIR c\fP
-.br
-\fIR\fP is the name of the register, \fIc\fP is the format.
-.in +.5i
-.T2 \fBForm\fP
-\fBSequence\fP
-.T2 1
-0, 1, 2, 3, ...
-.T2 001
-000, 001, 002, 003, ...
-.T2 i
-0, i, ii, iii, iv, ...
-.T2 I
-0, I, II, III, IV, ...
-.T2 a
-0, a, b, c, ..., z, aa, ab, ...
-.T2 A
-0, A, B, C, ..., Z, AA, AB, ...
-.in
-
-.LP
-\fBMacros:\fP
-.TP
-.B ")E level text"
-Adds \fBtext\fP (heading-text) to the table of contents
-with \fBlevel\fP either 0
-or between 1-7.
-See also \fB.H\fP.
-This macro is used for customized
-table of contents.
-.TP
-.B "1C [1]"
-Begin one column processing.
-An \fB1\fP as argument disables the page-break.
-Use wide footnotes, small footnotes may be overprinted.
-.TP
-.B 2C
-Begin two column processing.
-Splits the page in two columns.
-It is
-a special case of \fBMC\fP.
-See also \fB1C\fP.
-.TP
-.B AE
-Abstract end, see \fBAS\fP.
-.TP
-.B "AF [name of firm]"
-Authors firm, should be called before \fBAU\fP, see also \fBCOVER\fP.
-.TP
-.B "AL [type [text-indent [1]]]"
-Start autoincrement list.
-Items are numbered beginning on one.
-The \fItype\fP argument controls the type of numbers.
-.in +.5i
-.T2 Arg
-Description
-.T2 1
-Arabic (the default)
-.T2 A
-Upper-case letters (A-Z)
-.T2 a
-Lower-case letters (a-z)
-.T2 I
-Upper-case roman
-.T2 i
-Lower-case roman
-.in
-\fIText-indent\fP sets the indent and overrides \fBLi\fP.
-A third argument will prohibit printing of a blank line before each
-item.
-.TP
-.B "APP name text"
-Begin an appendix with name \fIname\fP.
-Automatic naming occurs if
-\fIname\fP is "".
-The appendixes starts with \fBA\fP if auto is used.
-An new page is ejected, and a header is also produced if the number
-variable \fBAph\fP is non-zero.
-This is the default.
-The appendix always appear in the 'List of contents' with correct
-pagenumber.
-The name \fIAPPENDIX\fP can be changed by setting
-the string \fBApp\fP to the desired text.
-The string \fBApptxt\fP contains the current appendix text.
-.TP
-.B "APPSK name pages text"
-Same as \fB.APP\fP, but the pagenr is incremented with \fIpages\fP.
-This is used when diagrams or other non-formatted documents are
-included as appendixes.
-.TP
-.B "AS [arg [indent]]"
-Abstract start.
-Indent is specified in 'ens', but scaling is allowed.
-Argument \fIarg\fP controls where the abstract is printed.
-.in +.5i
-.T2 Arg
-Placement
-.T2 0
-Abstract will be printed on page 1 and on the cover sheet if
-used in the released-paper style (\fBMT 4\fP), otherwise
-it will be printed on page 1 without a cover sheet.
-.T2 1
-Abstract will only be printed on the cover sheet (\fBMT 4\fP only).
-.T2 2
-Abstract will be printed only on the cover sheet (other than \fBMT 4\fP only).
-The cover sheet is printed without need for \fBCS\fP.
-.in
-Abstract is not printed at all in external letters (\fBMT 5\fP).
-The \fIindent\fP controls the indentation of both margins, otherwise
-will normal text indent be used.
-.TP
-.B "AST [title]"
-Abstract title.
-Default is \fBABSTRACT\fP.
-Sets the text above the abstract text.
-.TP
-.B "AT title1 [title2 ...]"
-Authors title.
-\fBAT\fP must appear just after each \fBAU\fP.
-The title will show up after the name in the signature block.
-.TP
-.B "AU [name [initials [loc [dept [ext [room [arg [arg [arg]]]]]]]]]"
-Author information, specifies the author of the memo or paper, and
-will be printed on the cover sheet and on other similar places.
-\fBAU\fP must not appear before \fBTL\fP.
-The author information
-can contain initials, location, department, telephone extension,
-room number or name and up to three extra arguments.
-.TP
-.B "AV [name [1]]"
-Approval signature, generates an approval line with place for
-signature and date.
-The string \fBAPPROVED:\fP can be changed
-with variable \fBLetapp\fP, and the string \fBDate\fP in \fBLetdate\fP.
-.TP
-.B "AVL [name]"
-Letter signature, generates a line with place for signature.
-.TP
-.B "B [bold-text [prev-font-text [bold...]]]"
-Begin boldface.
-No limit on the number of arguments.
-All arguments will be concatenated to one word, the first, third and so
-on will be printed in boldface.
-.TP
-.B B1
-Begin box (as the ms macro).
-Draws a box around the text.
-The text will be indented one character,
-and the right margin will be one character shorter.
-.TP
-.B B2
-End box.
-Finish the box started by \fBB1\fP.
-.TP
-.B BE
-End bottom block, see \fBBS\fP.
-.TP
-.B "BI [bold-text [italic-text [bold-text [...]]]]"
-Bold-italic.
-No limit on the number of arguments, see \fBB\fP.
-.TP
-.B "BL [text-indent [1]]"
-Start bullet list, initialize a list with a bullet and a space
-in the beginning of each list item (see \fBLI\fP).
-\fIText-indent\fP
-overrides the default indentation of the list items set by
-number register \fBPi\fP.
-A third argument will prohibit printing of a blank line before each
-item.
-.TP
-.B "BR [bold-text [roman-text [bold-text [...]]]]"
-Bold-roman.
-No limit on the number of arguments.
-.TP
-.B BS
-Bottom block start.
-Begins the definition of a text block which is
-printed at the bottom of each page.
-Block ends with \fBBE\fP.
-.TP
-.B "BVL text-indent [mark-indent [1]]"
-Start of
-broken variable-item list.
-Broken variable-item list has no fixed mark, it assumes that
-every \fBLI\fP has a mark instead.
-The text will always begin at the next line after the mark.
-\fIText-indent\fP sets the indent to the text, and \fImark-indent\fP
-the distance from the current indent to the mark.
-A third argument will prohibit printing of a blank line before each
-item.
-.TP
-.B "COVER [arg]"
-\&\fBCOVER\fP begins a coversheet definition.
-It is important
-that \fB.COVER\fP appears before any normal text.
-\&\fB.COVER\fP uses \fIarg\fP to build the filename
-@TMAC_MDIR@/\fIarg\fP.cov.
-Therefore it is possible to create unlimited
-types of coversheets.
-\fIms.cov\fP is supposed to look like the \fBms\fP coversheet.
-\&\fB.COVER\fP requires a \fB.COVEND\fP at the end of the coverdefinition.
-Always use this order of the covermacros:
-.nf
-\&.COVER
-\&.TL
-\&.AF
-\&.AU
-\&.AT
-\&.AS
-\&.AE
-\&.COVEND
-.fi
-However, only \fB.TL\fP and \fB.AU\fP are required.
-.TP
-.B COVEND
-This finish the cover description and prints the cover-page.
-It is defined in the cover file.
-.TP
-.B DE
-Display end.
-Ends a block of text, display, that begins
-with \fBDS\fP or \fBDF\fP.
-.TP
-.B "DF [format [fill [rindent]]]"
-Begin floating display (no nesting allowed).
-A floating display is saved in a queue and is printed in the
-order entered.
-\fIFormat\fP, \fIfill\fP and \fIrindent\fP is the same
-as in \fBDS\fP.
-Floating displays are controlled by the two number registers \fBDe\fP
-and \fBDf\fP.
-.sp
-\fBDe register\fP
-.in +.5i
-.T2 0
-Nothing special, this is the default.
-.T2 1
-A page eject will occur after each printed display, giving only
-one display per page and no text following it.
-.in
-.sp
-\fBDf register\fP
-.in +.5i
-.T2 0
-Displays are printed at the end of each section (when section-page
-numbering is active) or at the end of the document.
-.T2 1
-A new display will be printed on the current page if there is enough
-space, otherwise it will be printed at the end of the document.
-.T2 2
-One display will be printed at the top of each page or column
-(in multi-column mode).
-.T2 3
-Print one display if there is enough space for it, otherwise it will
-be printed at the top of the next page or column.
-.T2 4
-Print as many displays that will fit in a new page or column.
-A page break will occur between each display if \fBDe\fP is not zero.
-.T2 5
-Fill the current page with displays and the rest beginning at a new page
-or column.
-(This is the default.)
-A page break will occur between each display
-if \fBDe\fP is not zero.
-.in
-.TP
-.B "DL [text-indent [1 [1]]]"
-Dash list start.
-Begins a list where each item is printed
-after a dash.
-\fIText-indent\fP changes the default indentation
-of the list items set by
-number register \fBPi\fP.
-A second argument prevents the empty line between each list item
-to be printed.
-See \fBLI\fP.
-A third argument will prohibit printing of a blank line before each
-item.
-.TP
-.B "DS [format [fill [rindent]]]"
-Static display start.
-Begins collection of text until \fBDE\fP.
-The text is printed together on the same page, unless it is longer
-than the height of the page.
-\fBDS\fP can be nested to a unlimited depth (reasonably :-).
-.sp
-\fBformat\fP
-.in +.5i
-.ds x "
-.T2 """"""
-No indentation.
-.T2 none
-No indentation.
-.T2 L
-No indentation.
-.T2 I
-Indent text with the value of number register \fBSi\fP.
-.T2 C
-Center each line
-.T2 CB
-Center the whole display as a block.
-.T2 R
-Right adjust the lines.
-.T2 RB
-Right adjust the whole display as a block
-.in
-.sp
-L, I, C and CB can also be specified as 0, 1, 2 or 3 for compatibility
-reasons.
-(Don't use it.\ :-)
-.sp
-\fBfill\fP
-.in +.5i
-.T2 """"""
-Line-filling turned off.
-.T2 none
-Line-filling turned off.
-.T2 N
-Line-filling turned off.
-.T2 F
-Line-filling turned on.
-.in
-.sp
-N and F can also be specified as 0 or 1.
-An empty line will normally be printed before and after the
-display.
-Setting number register \fBDs\fP to 0 will prevent this.
-\fIRindent\fP shortens the line length by that amount.
-.TP
-.B "EC [title [override [flag [refname]]]]"
-Equation title.
-Sets a title for an equation.
-The \fIoverride\fP argument
-change the numbering.
-.sp
-\fBflag\fP
-.in +.5i
-.T2 none
-\fIoverride\fP is a prefix to the number.
-.T2 0
-\fIoverride\fP is a prefix to the number.
-.T2 1
-\fIoverride\fP is a suffix to the number.
-.T2 2
-\fIoverride\fP replaces the number.
-.in
-\fBEC\fP uses the number register \fBEc\fP as counter.
-It is possible to use \fB.af\fP to change the format of the number.
-If number register \fBOf\fP is 1, then the format of title
-will use a dash instead of a dot after the number.
-.br
-The string \fBLe\fP controls the title of the
-List of Equations, default is \fILIST OF EQUATIONS\fP.
-The List of Equations will only be printed if number register \fBLe\fP
-is 1, default 0.
-The string \fBLiec\fP contains the word \fIEquation\fP, wich
-is printed before the number.
-If \fIrefname\fP is used, then the equation number is saved with
-\&\fB.SETR\fP, and can be retrieved with \fB.GETST\fP \fIrefname\fP.
-.br
-Special handling of the title will occur if
-\fBEC\fP is used inside \fBDS\fP/\fBDE\fP, it will not be
-affected by the format of \fBDS\fP.
-.TP
-.B "EF [arg]"
-Even-page footer, printed just above the normal page footer
-on even pages, see \fBPF\fP.
-.TP
-.B "EH [arg]"
-Even-page header, printed just below the normal page header
-on even pages, see \fBPH\fP.
-.TP
-.B EN
-Equation end, see \fBEQ\fP.
-.TP
-.B EOP
-End of page user-defined macro.
-This macro will be called
-instead of the normal printing of the footer.
-The macro
-will be executed in a separate environment, without any
-trap active.
-See \fBTP\fP.
-.sp
-\fBStrings available to EOP\fP
-.in +.5i
-.T2 EOPf
-Argument from \fBPF\fP.
-.T2 EOPef
-Argument from \fBEF\fP.
-.T2 EOPof
-Argument from \fBOF\fP.
-.in
-.TP
-.B "EPIC [-L] width height [name]"
-\fBEPIC\fP draws a box with the given \fIwidth\fP and \fIheight\fP, it will
-also print the text \fIname\fP or a default string if
-\fIname\fP is not specified..
-This is used to include external pictures, just give the size
-of the picture.
-\fB-L\fP will leftadjust the picture, the default is to center adjust.
-See \fBPIC\fP
-.TP
-.B "EQ [label]"
-Equation start.
-\fBEQ\fP/\fBEN\fP are the delimiters for equations written for \fBeqn\fP.
-\fBEQ\fP/\fBEN\fP must be inside a \fBDS\fP/\fBDE\fP-pair, except
-when \fBEQ\fP is only used to set options in \fBeqn\fP.
-The \fIlabel\fP will appear at the right margin of the equation, unless
-number register \fBEq\fP is\ 1.
-Then the label will appear at the
-left margin.
-.TP
-.B "EX [title [override [flag [refname]]]]"
-Exhibit title, arguments are the same as for \fBEC\fP.
-\fBEX\fP uses the number register \fBEx\fP as counter.
-The string \fBLx\fP controls the title of the
-List of Exhibits, default is \fILIST OF EXHIBITS\fP.
-The List of Exhibits will only be printed if number register \fBLx\fP
-is 1, default 1.
-The string \fBLiex\fP contains the word \fIExhibit\fP, which
-is printed before the number.
-If \fIrefname\fP is used, then the exhibit number is saved with
-\&\fB.SETR\fP, and can be retrieved with \fB.GETST\fP \fIrefname\fP.
-.br
-Special handling of the title will occur if
-\fBEX\fP is used inside \fBDS\fP/\fBDE\fP, it will not be
-affected by the format of \fBDS\fP.
-.TP
-.B "FC [closing]"
-Prints \fIYours\ very\ truly,\fP as a formal closing of a letter or
-memorandum.
-The argument replaces the defualt string.
-The default is stored in string variable \fBLetfc\fP.
-.TP
-.B "FD [arg [1]]"
-Footnote default format.
-Controls the hyphenation (hyphen), right margin justification (adjust),
-indentation of footnote text (indent).
-It can also change the label
-justification (ljust).
-.sp
-.if t .ne 14v
-.nf
-.ta .5i +.8i +.8i +.8i +.8i
-\fBarg hyphen adjust indent ljust\fP
-0 no yes yes left
-1 yes yes yes left
-2 no no yes left
-3 yes no yes left
-4 no yes no left
-5 yes yes no left
-6 no no no left
-7 yes no no left
-8 no yes yes right
-9 yes yes yes right
-10 no no yes right
-11 yes no yes right
-.sp
-.fi
-.DT
-Argument greater than or equal to 11 is considered as arg 0.
-Default for m@TMAC_M_PREFIX@m is 10.
-.TP
-.B FE
-Footnote end.
-.TP
-.B "FG [title [override [flag [refname]]]]"
-Figure title, arguments are the same as for \fBEC\fP.
-\fBFG\fP uses the number register \fBFg\fP as counter.
-The string \fBLf\fP controls the title of the
-List of Figures, default is \fILIST OF FIGURES\fP.
-The List of Figures will only be printed if number register \fBLf\fP
-is 1, default 1.
-The string \fBLifg\fP contains the word \fIFigure\fP, wich
-is printed before the number.
-If \fIrefname\fP is used, then the figure number is saved with
-\&\fB.SETR\fP, and can be retrieved with \fB.GETST\fP \fIrefname\fP.
-.br
-Special handling of the title will occur if
-\fBFG\fP is used inside \fBDS\fP/\fBDE\fP, it will not be
-affected by the format of \fBDS\fP.
-.TP
-.B "FS [label]"
-Footnote start.
-The footnote is ended by \fBFE\fP.
-Footnotes is normally automatically
-numbered, the number is available in string \fBF\fP.
-Just add \fB\e*F\fP in the text.
-By adding \fIlabel\fP, it is possible
-to have other number or names on the footnotes.
-Footnotes in displays is now possible.
-An empty line separates footnotes, the height of the line
-is controlled by number register \fBFs\fP, default value is 1.
-.TP
-.B "GETHN refname [varname]"
-Includes the headernumber where the corresponding \fBSETR\fP \fIrefname\fP
-was placed.
-Will be X.X.X. in pass\ 1.
-See \fBINITR\fP.
-If \fIvarname\fP is used, \fBGETHN\fP sets the stringvariable \fIvarname\fP to the
-headernumber.
-.TP
-.B "GETPN refname [varname]"
-Includes the pagenumber where the corresponding \fBSETR\fP \fIrefname\fP
-was placed.
-Will be 9999 in pass\ 1.
-See \fBINITR\fP.
-If \fIvarname\fP is used, \fBGETPN\fP sets the stringvariable \fIvarname\fP
-to the pagenumber.
-.TP
-.B "GETR refname"
-Combines \fBGETHN\fP and \fBGETPN\fP with the text 'chapter' and ', page'.
-The string \fIQrf\fP contains the text for reference:
-.ti +.5i
-\&.ds Qrf See chapter \e\e*[Qrfh], page \e\e*[Qrfp].
-.br
-\fIQrf\fP may be changed to support other languages.
-Strings \fIQrfh\fP and \fIQrfp\fP are set by \fBGETR\fP
-and contains the page and headernumber.
-.TP
-.B "GETST refname [varname]"
-Includes the string saved with the second argument to \fB.SETR\fP.
-Will be dummystring in pass 1.
-If varname is used, \fBGETST\fP sets the stringvariable \fIvarname\fP to the
-saved string.
-See \fBINITR\fP.
-.TP
-.B "H level [heading-text [heading-suffix]]"
-Numbered section heading.
-Section headers can have a level between 1 and 14, level 1 is the
-top level.
-The text is given in \fIheading-text\fP, and must be
-surrounded by double quotes if it contains spaces.
-\fBHeading-suffix\fP is added to the header in the text but not in
-the table of contents.
-This is normally used for footnote marks
-and similar things.
-Don't use \fB\e*F\fP in \fIheading-suffix\fP, it won't
-work.
-A manual label must be used, see \fBFS\fP.
-.sp
-An eventual paragraph, \fBP\fP, directly after \fBH\fP will be
-ignored, \fBH\fP is taking care of spacing and indentation.
-.sp
-\fBPage ejection before heading\fP
-.br
-Number register \fBEj\fP controls page ejection before the heading.
-Normally, a level one heading gets two blank lines before it, higher levels
-gets only one.
-A new page is ejected before each
-first-level heading if number register \fBEj\fP is 1.
-All levels below or equal the value of \fBEj\fP gets a new page.
-Default value for \fBEj\fP is 0.
-.sp
-\fBHeading break level\fP
-.br
-A line break occurs after the heading if the heading level is less
-or equal to number register \fBHb\fP.
-Default value 2.
-.sp
-\fBHeading space level\fP
-.br
-A blank line is inserted after the heading if the heading level is less
-or equal to number register \fBHs\fP.
-Default value 2.
-.sp
-Text will follow the heading on the same line if the level is greater
-than both \fBHb\fP and \fBHs\fP.
-.sp
-\fBPost-heading indent\fP
-.br
-Indentation of the text after the heading is controlled by number
-register \fBHi\fP, default value 0.
-.sp
-\fBHi\fP
-.in +.5i
-.T2 0
-The text will be left-justified.
-.T2 1
-Indentation of the text will follow the value of number register \fBPt\fP,
-see \fBP\fP.
-.T2 2
-The text will be lined up with the first word of the heading.
-.in
-.sp
-\fBCentered section headings\fP
-.br
-All headings whose level is equal or below number register \fBHc\fP
-and also less than or equal to \fBHb\fP or \fBHs\fP
-is centerered.
-.sp
-\fBFont control of the heading\fP
-.br
-The font of each heading level is controlled by string \fBHF\fP.
-It contains a fontnumber or fontname for each level.
-Default
-is \fB2\ 2\ 2\ 2\ 2\ 2\ 2\ 2\ 2\ 2\ 2\ 2\ 2\ 2\fP (all headings in italic).
-Could also be written as \fBI\ I\ I\ I\ I\ I\ I\ I\ I\ I\ I\ I\ I\ I\fP.
-Note that some other implementations use \fB3\ 3\ 2\ 2\ 2\ 2\ 2\fP as the
-default value.
-All omitted values are presumed to be a 1.
-.sp
-\fBPoint size control\fP.
-.br
-String \fBHP\fP controls the pointsize of each heading, in the
-same way as \fBHF\fP controls the font.
-A value of 0 selects the default point size.
-Default value is \fB0\ 0\ 0\ 0\ 0\ 0\ 0\ 0\ 0\ 0\ 0\ 0\ 0\ 0\fP.
-Beware that only the
-point size changes, not the vertical size.
-That can be controlled by the user specified macro \fBHX\fP and/or
-\fBHZ\fP.
-.sp
-\fBHeading counters\fP
-.br
-Fourteen number registers, named \fBH1\fP thru \fBH14\fP contains
-the counter for each heading level.
-The values are printed using arabic numerals, this can be changed
-with the macro \fBHM\fP (see below).
-All marks are concatenated before printing.
-To avoid this, set
-number register \fBHt\fP to\ 1.
-That will only print the current
-heading counter at each heading.
-.sp
-\fBAutomatic table of contents\fP
-.br
-All headings whose level is equal or below number register \fBCl\fP
-is saved to be printed in the table of contents.
-Default value is\ 2.
-.sp
-\fBSpecial control of the heading, user-defined macros\fP.
-.br
-These macros can be defined by the user to get a finer control
-of vertical spacing, fonts or other features.
-Argument \fIlevel\fP is the level-argument to \fBH\fP, but
-0 for unnumbered headings (see \fBHU\fP).
-Argument \fIrlevel\fP is the real level, it is
-set to number register \fBHu\fP for unnumbered headings.
-Argument \fIheading-text\fP is the text argument to \fBH\fP and \fBHU\fP.
-.sp
-\fBHX\ \fP\fIlevel\ rlevel\ heading-text\fP
-.br
-\fBHX\fP is called just before the printing of the heading.
-The following register is available for \fBHX\fP.
-\fBHX\fP may alter \fB}0\fP, \fB}2\fP and \fB;3\fP.
-.in +.5i
-.T3 "string }0"
-Contains the heading mark plus two spaces if \fIrlevel\fP is non-zero,
-otherwise empty.
-.T3 "register ;0"
-Contains the position of the text after the heading.
-0 means that the text should follow the heading on the same line, 1
-means that a line break should occur before the text and
-2 means that a blank line should separate the heading and the text.
-.T3 "string }2"
-Contains two spaces if register \fB;0\fP is\ 0.
-It is used to
-separate the heading from the text.
-The string
-is empty if \fB;0\fP is non-zero.
-.T3 "register ;3"
-Contains the needed space in units after the heading.
-Default is 2v.
-
-Can be used to change things like numbering (\fB}0\fP),
-vertical spacing (\fB}2\fP)
-and the needed space after the heading.
-.in
-.sp
-\fBHY\ \fP\fIdlevel\ rlevel\ heading-text\fP
-.br
-\fBHY\fP is called after size and font calculations and
-might be used to change indentation.
-.sp
-\fBHZ\ \fP\fIdlevel\ rlevel\ heading-text\fP
-.br
-\fBHZ\fP is called after the printing of the heading, just before
-\fBH\fP or \fBHU\fP exits.
-Could be used to change the page header according to the section heading.
-.TP
-.B "HC [hyphenation-character]"
-Set hyphenation character.
-Default value is \e%.
-Resets to the default if called without argument.
-Hyphenation can be turned off by setting number
-register \fBHy\fP to 0 in the beginning of the file.
-.TP
-.B "HM [arg1 [arg2 [... [arg14]]]]"
-Heading mark style.
-Controls the type of marking for printing of the heading counters.
-Default is 1 for all levels.
-.sp
-\fBArgument\fP
-.in +.5i
-.T2 1
-Arabic numerals.
-.T2 0001
-Arabic numerals with leading zeroes, one or more.
-.T2 A
-Upper-case alphabetic
-.T2 a
-Lower-case alphabetic
-.T2 I
-Upper-case roman numerals
-.T2 i
-lower-case roman numerals
-.T2 \fIempty\fP
-Arabic numerals.
-.in
-.TP
-.B "HU heading-text"
-Unnumbered section header.
-\fBHU\fP behavies like \fBH\fP at the level in number register \fBHu\fP.
-See \fBH\fP.
-.TP
-.B "HX dlevel rlevel heading-text"
-Userdefined heading exit.
-Called just before printing the header.
-See \fBH\fP.
-.TP
-.B "HY dlevel rlevel heading-text"
-Userdefined heading exit.
-Called just before printing the header.
-See \fBH\fP.
-.TP
-.B "HZ dlevel rlevel heading-text"
-Userdefined heading exit.
-Called just after printing the header.
-See \fBH\fP.
-.TP
-.B "I [italic-text [prev-font-text [italic-text [...]]]]"
-Italic.
-Changes the font to italic if called without arguments.
-With one argument it will set the word in italic.
-With two argument it will concatenate them and set the first
-word in italic and the second in the previous font.
-There is no limit on the number of argument, all will be concatenated.
-.TP
-.B "IA [addressee-name [title]]"
-Begins specification of the addressee and addressee's address in
-letter style.
-Several names can be specified with empty \fBIA\fP/\fBIE\fP-pairs, but
-only one address.
-See \fBLT\fP.
-.TP
-.B "IB [italic-text [bold-text [italic-text [...]]]]"
-Italic-bold.
-Even arguments is printed in italic, odd in boldface.
-See \fBI\fP.
-.TP
-.B IE
-Ends the address-specification after \fPIA\fP.
-.TP
-.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
-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
-.T2 N
-Page numbers
-.T2 H
-Header marks
-.T2 B
-Both page numbers and header marks, tab separated
-.in
-.TP
-.B "INITR filename"
-Initialize the refencemacros.
-References will be written to stderr and is supposed to
-be written to \fIfilename.qrf\fP.
-Requires two passes with groff, this is handled by a
-separate program called \fBmmroff\fP, the reason is that
-groff is often installed without the unsafe operations that
-\fBINITR\fP requiered.
-The first pass looks for references and the second one includes them.
-\fBINITR\fP can be used several times, but it is only the first
-occurrence of \fBINITR\fP that is active.
-
-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.
-.in +.5i
-\fBExamples\fP
-.br
-arg1\etpage number
-.br
-arg1\etarg2\etpage number
-.br
-arg1\etheader mark
-.br
-arg1\etpage number\etheader mark
-.in
-.TP
-.B "INDP"
-\fBINDP\fP prints the index by running the command specified
-by string variable \fBIndcmd\fP, normally \fIsort\ -t\et\fP.
-\fBINDP\fP reads the output from the command to form
-the index, normally in two columns (can be changed by defining \fBTYIND\fP).
-The index is printed with string variable \fBIndex\fP as header,
-default is \fBINDEX\fP.
-One-column processing is
-returned after the list.
-\fBINDP\fP will call the
-user-defined macros \fBTXIND\fP, \fBTYIND\fP and \fBTZIND\fP if defined.
-\fBTXIND\fP is called before printing \fBINDEX\fP, \fBTYIND\fP
-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 "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.
-Even arguments is printed in italic, odd in roman.
-See \fBI\fP.
-.TP
-.B "LB text-indent mark-indent pad type [mark [LI-space [LB-space]]]"
-List begin macro.
-This is the common macro used for all lists.
-\fIText-indent\fP is the number of spaces to indent the text from the
-current indent.
-.sp
-\fIPad\fP and \fImark-indent\fP controls where to put the mark.
-The mark is placed within the mark area, and \fImark-indent\fP
-sets the number of spaces before this area.
-It is normally\ 0.
-The mark area ends where the text begins.
-The start of the text
-is still controlled by \fItext-indent\fP.
-.sp
-The mark is left justified whitin the mark area if \fIpad\fP is 0.
-If \fIpad\fP is greater than 0, then \fImark-indent\fP is ignored, and
-the mark is placed \fIpad\fP spaces before the text.
-This will right justify the mark.
-.sp
-If \fItype\fP is 0 the list will have either a hanging indent or, if
-argument \fImark\fP is given, the string \fImark\fP as mark.
-.sp
-If \fItype\fP is greater than 0 automatic numbering will occur, arabic
-if \fImark\fP is empty.
-\fIMark\fP can then be any of \fB1\fP, \fBA\fP,
-\fBa\fP, \fBI\fP or \fBi\fP.
-.sp
-\fIType\fP selects one of six possible ways to display the mark.
-.br
-\fBtype\fP
-.in +.6i
-.T2 1
-x.
-.T2 2
-x)
-.T2 3
-(x)
-.T2 4
-[x]
-.T2 5
-<x>
-.T2 6
-{x}
-.in
-.sp
-Every item in the list will get \fILI-space\fP number of blank lines
-before them.
-Default is\ 1.
-.sp
-\fBLB\fP itself will print \fILB-space\fP blank lines.
-Default is\ 0.
-.TP
-.B "LC [list-level]"
-List-status clear.
-Terminates all current active lists down to \fIlist-level\fP, or 0
-if no argmuent is given.
-This is used by \fBH\fP to clear any
-active list.
-.TP
-.B "LE [1]"
-List end.
-Terminate the current list.
-\fBLE\fP outputs a blank line
-if an argument is given.
-.TP
-.B "LI [mark [1]]"
-List item precedes every item in a list.
-Without argument \fBLI\fP
-will print the mark determined by the current list type.
-By giving
-\fBLI\fP one argument, it will use that as the mark instead.
-Two arguments to \fBLI\fP will make \fImark\fP a prefix to
-the current mark.
-There will be no separating space between the prefix
-and the mark if the second argument is \fB2\fP instead of \fB1\fP.
-This behaviour can also be achieved by setting number register
-\fBLimsp\fP to zero.
-A zero length \fImark\fP will make a hanging
-indent instead.
-.sp
-A blank line is normally printed before the list item.
-This behaviour
-can be controlled by number register \fBLs\fP.
-Pre-spacing
-will occur for each list-level less than or equal to \fBLs\fP.
-Default value is\ 99.
-(Nesting of lists is unlimited.\ :-)
-.sp
-The indentation can be changed thru number register \fBLi\fP.
-Default is 6.
-.sp
-All lists begins with a list initialization macro, \fBLB\fP.
-There are, however, seven predefined listtypes to
-make lists easier to use.
-They all call \fBLB\fP with different
-default values.
-.in +.5i
-.T2 \fBAL\fP
-Automatically Incremented List
-.T2 \fBML\fP
-Marked List
-.T2 \fBVL\fP
-Variable-Item List
-.T2 \fBBL\fP
-Bullet List
-.T2 \fBDL\fP
-Dash List
-.T2 \fBRL\fP
-Reference List
-.T2 \fBBVL\fP
-Broken Varable List.
-.in
-These lists are described at other places in this manual.
-See also \fBLB\fP.
-.TP
-.B "LT [arg]"
-Formats a letter in one of four different styles depending
-on the argument.
-See also \fBINTERNALS\fP.
-.in +.5i
-.T2 \fBArg
-Style\fP
-.T2 BL
-Blocked.
-Date line, return address, writer's address and closing
-begins at the center of the line.
-All other lines begin at the left margin.
-.T2 SB
-Semi-blocked.
-Same as blocked, except that the first line in every
-paragraph is indented five spaces.
-.T2 FB
-Full-blocked.
-All lines begin at the left margin.
-.T2 SP
-Simplified.
-Almost the same as the full-blocked style.
-Subject and
-the writer's identification are printed in all-capital.
-.in
-.TP
-.B "LO type [arg]"
-Specify options in letter (see \fB.LT\fP).
-This is a list of the standard options:
-.in +.5i
-.T2 CN
-Confidential notation.
-Prints \fBCONFIDENTIAL\fP on the second line
-below the date line.
-Any argument replaces \fBCONFIDENTIAL\fP.
-See also string variable \fBLetCN\fP.
-.T2 RN
-Reference notation.
-Prints \fBIn reference to:\fP and the argument
-two lines below the date line.
-See also string variable \fBLetRN\fP.
-.T2 AT
-Attention.
-Prints \fBATTENTION:\fP and the argument below the inside address.
-See also string variable \fBLetAT\fP.
-.T2 SA
-Salutation.
-Prints \fBTo Whom It May Concern:\fP or the argument if
-it was present.
-The salutation is printed two lines below the inside address.
-See also string variable \fBLetSA\fP.
-.T2 SJ
-Subject line.
-Prints the argument as subject prefixed with \fBSUBJECT:\fP
-two lines below the inside address, except in letter type \fBSP\fP.
-Then the subject is printed in all-captial without any prefix.
-See also string variable \fBLetSJ\fP.
-.in
-.TP
-.B "MC column-size [column-separation] "
-Begin multiple columns.
-Return to normal with \fB1C\fP.
-\fBMC\fP will create as many columns as the current line length permits.
-\fIColumn-size\fP is the width of each column, and \fIcolumn-separation\fP
-is the space between two columns.
-Default separation is the
-column-size/15.
-See also \fB1C\fP.
-.TP
-.B "ML mark [text-indent [1]]"
-Marked list start.
-The \fImark\fP argument will be printed before
-each list item.
-\fIText-indent\fP sets the indent and overrides \fBLi\fP.
-A third argument will prohibit printing of a blank line before each
-item.
-.TP
-.B "MT [arg [addressee]]"
-Memorandum type.
-The \fIarg\fP is part of a filename in \fI@TMAC_MDIR@/*.MT\fP.
-Memorandum type 0 thru 5 are supported, including \fI"string"\fP.
-\fIAddressee\fP just sets a variable, used in the AT&T macros.
-.br
-\fBarg\fP
-.in +.5i
-.T2 0
-Normal memorandum, no type printed
-.T2 1
-Memorandum with \fIMEMORANDUM FOR FILE\fP printed
-.T2 2
-Memorandum with \fIPROGRAMMER'S NOTES\fP printed
-.T2 3
-Memorandum with \fIENGINEER'S NOTES\fP printed
-.T2 4
-Released paper style
-.T2 5
-External letter style
-.in
-See also \fBCOVER\fP/\fBCOVEND\fP, a more flexible type of front page.
-.TP
-.B "MOVE y-pos [x-pos [line-length]]"
-Move to a position, pageoffset set to \fIx-pos\fP.
-If \fIline-length\fP is not given, the difference between
-current and new pageoffset is used.
-Use \fBPGFORM\fP without arguments to return to normal.
-.TP
-.B "MULB cw1 space1 [cw2 space2 [cw3 ...]]"
-Begin a special multi-column mode.
-Every columns width must be specified.
-Also the space between the columns must be specified.
-The last column
-does not need any space-definition.
-\fBMULB\fP starts a diversion and \fBMULE\fP
-ends the diversion and prints the columns.
-The unit for width and space is 'n', but \fBMULB\fP accepts all
-normal unitspecifications like 'c' and 'i'.
-\fBMULB\fP operates in a separate environment.
-.TP
-.B "MULN"
-Begin the next column.
-This is the only way to switch column.
-.TP
-.B "MULE"
-End the multi-column mode and print the columns.
-.TP
-.B "nP [type]"
-Print numbered paragraph with header level two.
-See \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,
-then the argument becomes the entire notation.
-If the argument doesn't exist in the predefined, it will be
-printed as \fBCopy (\fP\fIarg\fP\fB) to\fP.
-It is possible to add more standard notations, see the string variable
-\fBLetns\fP and \fBLetnsdef\fP.
-.nf
-.in +.5i
-.T2 \fBArg
-Notation\fP
-.T2 \fInone\fP
-Copy To
-.T2 """""
-Copy To
-.T2 1
-Copy To (with att.) to
-.T2 2
-Copy To (without att.) to
-.T2 3
-Att.
-.T2 4
-Atts.
-.T2 5
-Enc.
-.T2 6
-Encs.
-.T2 7
-Under separate cover
-.T2 8
-Letter to
-.T2 9
-Memorandum to
-.T2 10
-Copy (with atts.) to
-.T2 11
-Copy (without atts.) to
-.T2 12
-Abstract Only to
-.T2 13
-Complete Memorandum to
-.T2 14
-CC
-.in
-.fi
-.TP
-.B "ND new-date"
-New date.
-Override the current date.
-Date is not
-printed if \fInew-date\fP is an empty string.
-.TP
-.B "OF [arg]"
-Odd-page footer, a line printed just above the normal footer.
-See \fBEF\fP and \fBPF\fP.
-.TP
-.B "OH [arg]"
-Odd-page header, a line printed just below the normal header.
-See \fBEH\fP and \fBPH\fP.
-.TP
-.B OP
-Make sure that the following text is printed at the top
-of an odd-numbered page.
-Will not output an empty page
-if currently at the top of an odd page.
-.TP
-.B "P [type]"
-Begin new paragraph.
-\fBP\fP without argument will produce left justified text, even
-the first line of the paragraph.
-This is the same as setting
-\fItype\fP to 0.
-If the argument is\ 1, then the first line
-of text following \fBP\fP will be indented by the number of
-spaces in number register \fBPi\fP, normally 5.
-.sp
-Instead of giving 1 as argument to \fBP\fP it is possible to set the
-paragraph type in number register \fBPt\fP.
-Using 0 and\ 1
-will be the same as adding that value to \fBP\fP.
-A value of 2 will indent all paragraphs, except after
-headings, lists and displays.
-.sp
-The space between two paragraphs is controlled by number register \fBPs\fP,
-and is 1 by default (one blank line).
-.TP
-.B "PGFORM [linelength [pagelength [pageoffset [1]]]]"
-Sets linelength, pagelength and/or pageoffset.
-This macro can be used for special formatting, like letterheads
-and other.
-It is normally the first command in a file, though it's not necessary.
-\fBPGFORM\fP can be used without arguments
-to reset everything after a \fBMOVE\fP.
-A line-break is done unless the fourth argument is given.
-This can be used to avoid the pagenumber on the first page while setting
-new width and length.
-(It seems as if this macro sometimes doesn't work too well.
-Use the command line arguments
-to change linelength, pagelength and pageoffset instead.
-Sorry.)
-.TP
-.B PGNH
-No header is printed on the next page.
-Used to get rid of
-the header in letters or other special texts.
-This macro must be used before any text to inhibit the pageheader
-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 \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_PREFIX@pic\fP, see the manual for \fB@TMAC_M_PREFIX@pic\fP.
-.TP
-.B "PF [arg]"
-Page footer.
-\fBPF\fP sets the line to be printed at the bottom of each page.
-Normally empty.
-See \fBPH\fP for the argument specification.
-.TP
-.B "PH [arg]"
-Page header, a line printed at the top of each page.
-The argument should be specified as "'left-part'center-part'right-part'",
-where left-, center- and right-part is printed left-justified, centered
-and right justified.
-The character \fB%\fP is changed to the current
-page number.
-The default page-header is "''- % -''", the page
-number between two dashes.
-.TP
-.B PS
-Picture start (from pic).
-Begins a picture for \fB@g@pic\fP, see
-the manual.
-.TP
-.B PX
-Page-header user-defined exit.
-\fBPX\fP is called just after the printing of the page header
-in \fIno-space\fP mode.
-.TP
-.B R
-Roman.
-Return to roman font, see also \fBI\fP.
-.TP
-.B "RB [roman-text [bold-text [roman-text [...]]]]"
-Roman-bold.
-Even arguments is printed in roman, odd in boldface.
-See \fBI\fP.
-.TP
-.B "RD [prompt [diversion [string]]]"
-Read from standard input to diversion and/or string.
-The text will be saved in a diversion named \fIdiversion\fP.
-Recall the text by writing the name of the diversion after a dot
-on an empty line.
-A string will also be defined if
-\fIstring\fP is given.
-\fIDiversion\fP and/or \fIprompt\fP can
-be empty ("").
-.TP
-.B RF
-Reference end.
-Ends a reference definition and returns to normal
-processing.
-See \fBRS\fP.
-.TP
-.B "RI [roman-text [italic-text [roman-text [...]]]]"
-Even arguments are printed in roman, odd in italic.
-See \fBI\fP.
-.TP
-.B "RL [text-indent [1]]"
-Reference list start.
-Begins a list where each item is preceded with a automatically
-incremented number between
-square brackets.
-\fIText-indent\fP changes the default indentation.
-.TP
-.B "RP [arg1 [arg2]]"
-Produce reference page.
-\fBRP\fP can be used if a reference page is wanted somewhere in the
-document.
-It is not needed if \fBTC\fP is used to produce
-a table of content.
-The reference page will then be printed automatically.
-.sp
-The reference counter will not be reset if \fIarg1\fP is 1.
-.sp
-\fIArg2\fP tells \fBRP\fP whether to eject a page or not.
-.br
-\fBArg2\fP
-.in +.5i
-.T2 0
-The reference page will be printed on a separate page.
-This is
-the default.
-.T2 1
-Do not eject page after the list.
-.T2 2
-Do not eject page before the list.
-.T2 3
-Do not eject page before and after the list.
-.in
-The reference items will be separated by a blank line.
-Setting number register \fBLs\fP to 0 will suppress the line.
-.sp
-The string \fBRp\fP contains the reference page title and
-is normally set to \fIREFERENCES\fP.
-.TP
-.B "RS [string-name]"
-\fBRS\fP begins an automatically numbered reference definition.
-Put the string \fB\e*(Rf\fP where the reference mark
-should be and write the reference between \fBRS\fP/\fBRF\fP
-at next new line after the reference mark.
-The reference number
-is stored in number register \fB:R\fP.
-If \fIstring-name\fP is given, a string with that name
-will be defined and contain the current reference mark.
-The string can be referenced as \fB\e*[\fIstring-name\fP]\fP later in
-the text.
-.TP
-.B "S [size [spacing]]"
-Set point size and vertical spacing.
-If any argument is equal 'P', then
-the previous value is used.
-A 'C' means current value, and 'D' default value.
-If '+' or '-' is used before the value, then increment or decrement of
-the current value will be done.
-.TP
-.B "SA [arg]"
-Set right-margin justification.
-Justification is normally turned on.
-No argumenent or \fB0\fP turns off justification, a \fB1\fP turns on
-justification.
-.TP
-.B "SETR refname [string]"
-Remember the current header and page-number as \fIrefname\fP.
-Saves \fIstring\fP if \fIstring\fP is defined.
-\fIstring\fP is retrieved
-with \fB.GETST\fP.
-See \fBINITR\fP.
-.TP
-.B "SG [arg [1]]"
-Signature line.
-Prints the authors name(s) after the formal closing.
-The argument will be appended to the reference data, printed
-at either the first or last author.
-The reference data is the location,
-department and initials specified with \fB.AU\fP.
-It will be printed at the first author if the second argument is given,
-otherwise at the last.
-No reference data will be printed if the author(s) is specifed
-thru \fB.WA\fP/\fB.WE\fP.
-See \fBINTERNALS\fP.
-.TP
-.B "SK [pages]"
-Skip pages.
-If \fIpages\fP is \fB0\fP or omitted, a skip to the next page
-will occur unless it is already at the top of a page.
-Otherwise it will skip \fIpages\fP pages.
-.TP
-.B "SM string1 [string2 [string3]]"
-Make a string smaller.
-If \fIstring2\fP is given, \fIstring1\fP will be smaller and \fIstring2\fP
-normal, concatenated with \fIstring1\fP.
-With three argument, all is
-concatenated, but only \fIstring2\fP is made smaller.
-.TP
-.B "SP [lines]"
-Space vertically.
-\fIlines\fP can have any scalingfactor, like \fI3i\fP or
-\fI8v\fP.
-Several \fBSP\fP in a line will only produce the
-maximum number of lines, not the sum.
-\fBSP\fP will also be ignored
-until the first textline in a page.
-Add a \fB\e&\fP before \fBSP\fP
-to avoid this.
-.TP
-.B TAB
-reset tabs to every\ 5n.
-Normally used to reset any previous tabpositions.
-.TP
-.B "TB [title [override [flag [refname]]]]"
-Table title, arguments are the same as for \fBEC\fP.
-\fBTB\fP uses the number register \fBTb\fP as counter.
-The string \fBLt\fP controls the title of the
-List of Tables, default is \fILIST OF TABLES\fP.
-The List of Tables will only be printed if number register \fBLt\fP
-is 1, default 1.
-The string \fBLitb\fP contains the word \fITABLE\fP, wich
-is printed before the number.
-.br
-Special handling of the title will occur if
-\fBTB\fP is used inside \fBDS\fP/\fBDE\fP, it will not be
-affected by the format of \fBDS\fP.
-.TP
-.B "TC [slevel [spacing [tlevel [tab [h1 [h2 [h3 [h4 [h5]]]]]]]]]"
-Table of contents.
-This macro is normally used at the last line of the document.
-It generates a table of contents with headings up to the level
-controlled by number register \fBCl\fP.
-Note that \fBCl\fP controls
-the saving of headings, it has nothing to do with \fBTC\fP.
-Headings with level less than or equal to \fIslevel\fP will get
-\fIspacing\fP number of lines before them.
-Headings with level less than or equal to \fItlevel\fP will have
-their page numbers right justified with dots or spaces separating
-the text and the page number.
-Spaces is used if \fItab\fP
-is greater than zero, otherwise dots.
-Other headings will have the
-page number directly at the end of the heading text (\fIragged right\fP).
-.sp
-The rest of the arguments will be printed, centered, before the
-table of contents.
-.sp
-The user-defined macros \fBTX\fP and \fBTY\fP are used if \fBTC\fP is called
-with at most four arguments.
-\fBTX\fP is called before the printing
-of \fICONTENTS\fP, and \fBTY\fP is called instead of printing \fICONTENTS\fP.
-.sp
-Equivalent macros can be defined for list of figures, tables, equations
-and excibits by defining \fBTXxx\fP or \fBTYxx\fP, where \fBxx\fP
-is \fBFg\fP, \fBTB\fP, \fBEC\fP or \fBEX\fP.
-.sp
-String \fBCi\fP can be set to control the indentations for each heading-level.
-It must be scaled, like \fB.ds\ Ci\ .25i\ .5i\ .75i\ 1i\ 1i\fP.
-The indentation is normally controlled by the maxlength of headings
-in each level.
-.sp
-All texts can be redefined, new stringvariables
-\fILifg\fP, \fILitb\fP, \fILiex\fP, \fILiec\fP and \fILicon\fP contain
-"Figure", "TABLE", "Exhibit", "Equation" and "CONTENTS".
-These can be redefined to other languages.
-.TP
-.B TE
-Table end.
-See \fBTS\fP.
-.TP
-.B "TH [N]"
-Table header.
-See \fBTS\fP.
-\fBTH\fP ends the header of the table.
-This header will
-be printed again if a page-break occurs.
-Argument \fIN\fP isn't implemented yet.
-.TP
-.B TL [charging-case number(s) [filing-case number(s)]]
-Begin title of memorandum.
-All text up to the next \fBAU\fP is included in the title.
-\fICharging-case number\fP and \fIfiling-case\fP are saved
-for use in the front page processing.
-.TP
-.B TM [num1 [num2 [...]]]
-Technical memorandumnumbers used in \fB.MT\fP.
-Unlimited number
-of arguments may be given.
-.TP
-.B TP
-Top of page user-defined macro.
-This macro is called instead of the normal page header.
-It is
-possible to get complete control over the header.
-Note that header and footer is printed in a separate environment.
-Linelength is preserved though.
-.TP
-.B "TS [H]"
-Table start.
-This is the start of a table specification
-to \fB@g@tbl\fP.
-See separate manual for \fB@g@tbl\fP.
-\fBTS\fP ends with \fBTE\fP.
-Argument \fIH\fP tells \fBm@TMAC_M_PREFIX@m\fP that the table
-has a header.
-See \fBTH\fP.
-.TP
-.B TX
-Userdefined table of contents exit.
-This macro is called just before \fBTC\fP prints the word \fICONTENTS\fP.
-See \fBTC\fP.
-.TP
-.B TY
-Userdefined table of contents exit (no "CONTENTS").
-This macro is called instead of printing \fICONTENTS\fP.
-See \fBTC\fP.
-.TP
-.B VERBON [flag [pointsize [font]]]
-Begin verbatim output using courier font.
-Usually for printing programs.
-All character has equal width.
-The pointsize can be changed with
-the second argument.
-By specifying the font-argument
-it is possible to use another font instead of courier.
-\fIflag\fP controls several special features.
-It contains the sum of all wanted features.
-.in +.5i
-.T2 Value
-Description
-.T2 1
-Disable the escape-character (\e).
-This is normally turned on during
-verbose output.
-.T2 2
-Add an empty line before the verbose text.
-.T2 4
-Add an empty line after the verbose text.
-.T2 8
-Print the verbose text with numbered lines.
-This adds four digitsized
-spaces in the beginning of each line.
-Finer control is available with
-the string-variable \fBVerbnm\fP.
-It contains all arguments to the
-\fBtroff\fP-command \fB.nm\fP, normally '1'.
-.T2 16
-Indent the verbose text with five 'n':s.
-This is controlled by the
-number-variable \fBVerbin\fP (in units).
-.in
-.TP
-.B VERBOFF
-End verbatim output.
-.TP
-.B "VL text-indent [mark-indent [1]]"
-Variable-item list has no fixed mark, it assumes that
-every \fBLI\fP have a mark instead.
-\fIText-indent\fP sets the indent to the text, and \fImark-indent\fP
-the distance from the current indent to the mark.
-A third argument will prohibit printing of a blank line before each
-item.
-.TP
-.B "VM [-T] [top [bottom]]"
-Vertical margin. Adds extra vertical top and margin space.
-Option \fB-T\fP set the total space instead.
-No argument resets the margin to zero or the default
-\fI(7v 5v)\fP if \fB-T\fP
-was used. It is higly recommended that macro \fBTP\fP and/or
-\fBEOP\fP are defined
-if using \fB-T\fP and setting top and/or bottom margin to less than the default.
-.TP
-.B "WA [writer-name [title]]"
-Begins specification of the writer and writer's address.
-Several names can be specified with empty \fBWA\fP/\fBWE\fP-pairs, but
-only one address.
-.TP
-.B WE
-Ends the address-specification after \fP.WA\fP.
-.TP
-.B "WC [format]"
-Footnote and display width control.
-.in +.5i
-.T2 N
-Set default mode, \fB-WF\fP, \fB-FF\fP, \fB-WD\fP and \fBFB\fP.
-.T2 WF
-Wide footnotes, wide also in two-column mode.
-.T2 -WF
-Normal footnote width, follow column mode.
-.T2 FF
-All footnotes gets the same width as the first footnote encountered.
-.T2 -FF
-Normal footnotes, width follows \fBWF\fP and \fB-WF\fP.
-.T2 WD
-Wide displays, wide also in two-column mode.
-.T2 -WD
-Normal display width, follow column mode.
-.T2 FB
-Floating displays generates a line break when printed on the current page.
-.T2 -FB
-Floating displays does not generate line break.
-.in
-.sp 3
-.LP
-.\"########################################################################
-.LP
-.B "Strings used in m@TMAC_M_PREFIX@m:"
-.TP
-.B App
-A string containing the word "APPENDIX".
-.TP
-.B Apptxt
-The current appendix text.
-.TP
-.B "EM"
-Em dash string
-.TP
-.B H1txt
-Will be updated by \fB.H\fP and \fB.HU\fP to the current heading text.
-Also updated in table of contents & friends.
-.TP
-.B HF
-Fontlist for headings, normally "2 2 2 2 2 2 2".
-Nonnumeric fontnames may also be used.
-.TP
-.B HP
-Pointsize list for headings.
-Normally "0 0 0 0 0 0 0" which is the same as
-"10 10 10 10 10 10 10".
-.TP
-.B Index
-Contains \fIINDEX\fP.
-.TP
-.B Indcmd
-Contains the index command, \fIsort\ -t\et\fP.
-.TP
-.B Lifg
-String containing \fIFigure\fP.
-.TP
-.B Litb
-String containing \fITABLE\fP.
-.TP
-.B Liex
-String containing \fIExhibit\fP.
-.TP
-.B Liec
-String containing \fIEquation\fP.
-.TP
-.B Licon
-String containing \fICONTENTS\fP.
-.TP
-.B Lf
-Contains "LIST OF FIGURES".
-.TP
-.B Lt
-Contains "LIST OF TABLES".
-.TP
-.B Lx
-Contains "LIST OF EXHIBITS".
-.TP
-.B Le
-Contains "LIST OF EQUATIONS".
-.TP
-.B Letfc
-Contains "Yours very truly,", used in \fB.FC\fP.
-.TP
-.B Letapp
-Contains "APPROVED:", used in \fB.AV\fP.
-.TP
-.B Letdate
-Contains "Date", used in \fB.AV\fP.
-.TP
-.B LetCN
-Contains "CONFIDENTIAL", used in \fB.LO CN\fP.
-.TP
-.B LetSA
-Contains "To Whom It May Concern:", used in \fB.LO SA\fP.
-.TP
-.B LetAT
-Contains "ATTENTION:", used in \fB.LO AT\fP.
-.TP
-.B LetSJ
-Contains "SUBJECT:", used in \fB.LO SJ\fP.
-.TP
-.B LetRN
-Contains "In reference to:", used in \fB.LO RN\fP.
-.TP
-.B Letns
-is an array containing the different strings used in \fB.NS\fP.
-It is really a number of stringvariables prefixed with \fBLetns!\fP.
-If the argument doesn't exist, it will be included
-between \fB()\fP with \fBLetns!copy\fP as prefix and \fBLetns!to\fP as suffix.
-Observe the space after \fBcopy\fP and before \fBto\fP.
-.nf
-.ta 1.5i
-\fBName Value\fP
-Letns!0 Copy to
-Letns!1 Copy (with att.) to
-Letns!2 Copy (without att.) to
-Letns!3 Att.
-Letns!4 Atts.
-Letns!5 Enc.
-Letns!6 Encs.
-Letns!7 Under separate cover
-Letns!8 Letter to
-Letns!9 Memorandum to
-Letns!10 Copy (with atts.) to
-Letns!11 Copy (without atts.) to
-Letns!12 Abstract Only to
-Letns!13 Complete Memorandum to
-Letns!14 CC
-Letns!copy Copy "
-Letns!to " to
-.fi
-.TP
-.B Letnsdef
-Defines the standard-notation used when no argument is given
-to \fB.NS\fP.
-Default is \fB0\fP.
-.TP
-.B "MO1 - MO12"
-Strings containing \fIJanuary\fP thru \fIDecember\fP.
-.TP
-.B Qrf
-String containing "See chapter \e\e*[Qrfh], page \e\en[Qrfp].".
-.TP
-.B Rp
-Contains "REFERENCES".
-.TP
-.B Tcst
-Contains current status of table of contents and list of XXXX.
-Empty outside \fB.TC\fP.
-Useful in user-defined macros like \fB.TP\fP.
-.nf
-.ta 1.5i
-\fBValue Meaning\fP
-co Table of contents
-fg List of figures
-tb List of tables
-ec List of equations
-ex List of exhibits
-ap Appendix
-.fi
-.ta
-.TP
-.B Tm
-Contains \e(tm, trade mark.
-.TP
-.B Verbnm
-Argument to \fB.nm\fP in \fB.VERBON\fP, default: \fB1\fP.
-.\"-----------------------------------
-.LP
-.B "Number variables used in m@TMAC_M_PREFIX@m:"
-.TP
-.B Aph
-Print an appendix-page for every new appendix
-if this numbervariable is non-zero.
-No output will occur if \fBAph\fP is zero, but there will always
-be an appendix-entry in the 'List of contents'.
-.TP
-.B Cl
-Contents level [0:14], contents saved if heading level <= Cl, default 2.
-.TP
-.B Cp
-Eject page between LIST OF XXXX if Cp == 0, default 0.
-.TP
-.B D
-Debugflag, values >0 produces varying degree of debug.
-A value of\ 1
-gives information about the progress of formatting, default\ 0.
-.TP
-.B De
-Eject after floating display is output [0:1], default\ 0.
-.TP
-.B Dsp
-Controls the space output before and after static displays
-if defined.
-Otherwise is the value of Lsp used.
-.TP
-.B Df
-Floating keep output [0:5], default 5.
-.TP
-.B Ds
-\fBLsp\fP space before and after display if == 1 [0:1], default 1.
-.TP
-.B Ej
-Eject page, default 0.
-.TP
-.B Eq
-Equation lable adjust 0=left, 1=right.
-Default\ 0.
-.TP
-.B Fs
-Footnote spacing, default 1.
-.TP
-.B "H1-H7"
-Heading counters
-.TP
-.B H1dot
-Append a dot after the level one heading number if >\ 0.
-Default is\ 1.
-.TP
-.B H1h
-Copy of number register \fBH1\fP, but it is incremented
-just before the page break.
-Useful in user defined header macros.
-.TP
-.B Hb
-Heading break level [0:14], default\ 2.
-.TP
-.B Hc
-Heading centering level, [0:14].
-Default\ 0.
-.TP
-.B Hi
-Heading temporary indent [0:2], default\ 1.
-.br
-0\ ->\ 0 indent, left margin
-.br
-1\ ->\ indent to right , like .P 1
-.br
-2\ ->\ indent to line up with text part of preceding heading
-.TP
-.B Hps
-Number variable with the heading pre-space level.
-If the heading-level
-is less than or equal to \fBHps\fP, then two lines will precede the
-section heading instead of one.
-Default is first level only.
-The real amount of lines is controlled by the variables \fBHps1\fP and
-\fBHps2\fP.
-.TP
-.B Hps1
-This is the number of lines preceding \fB.H\fP when the heading-level
-is greater than \fBHps\fP.
-Value is in units, normally 0.5.
-.TP
-.B Hps2
-This is the number of lines preceding \fB.H\fP when the heading-level
-is less than or equal to \fBHps\fP.
-Value is in units, normally\ 1.
-.TP
-.B Hs
-Heading space level [0:14], default\ 2.
-.TP
-.B Hss
-This is the number of lines that follows \fB.H\fP when the heading-level
-is less than or equal to \fBHs\fP.
-Value is in units, normally\ 1.
-.TP
-.B Ht
-Heading numbering type, default 0.
-0 -> multiple (1.1.1 ...)
-.br
-1 -> single
-.TP
-.B Hu
-Unnumbered heading level, default 2.
-.TP
-.B Hy
-Hyphenation in body, default 0.
-.br
-0\ ->\ no hyphenation
-.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 L
-Page length, only for command line settings.
-.TP
-.B Letwam
-Max lines in return-address, used in \fB.WA\fP/\fB.WE\fP.
-Default\ 14.
-.TP
-.B "Lf, Lt, Lx, Le"
-Enables (1) or disables (0) the printing of List of figures,
-List of tables, List of exhibits and List of equations.
-Default: Lf=1, Lt=1, Lx=1, Le=0.
-.TP
-.B Li
-List indent, used by .AL, default 6.
-.TP
-.B Limsp
-Flag for space between prefix and mark in automatic lists (.AL).
-.br
-0\ ==\ no space
-.br
-1\ ==\ space
-.TP
-.B Ls
-List space, if current listlevel > Ls then no spacing will occur around lists.
-Default 99.
-.TP
-.B Lsp
-The size of an empty line.
-Normally 0.5v, but it is 1v
-if \fBn\fP is set (\fB.nroff\fP).
-.TP
-.B N
-Numbering style [0:5], default 0.
-.br
-0\ ==\ (default) normal header for all pages.
-.br
-1\ ==\ header replaces footer on first page, header is empty.
-.br
-2\ ==\ page header is removed on the first page.
-.br
-3\ ==\ "section-page" numbering enabled.
-.br
-4\ ==\ page header is removed on the first page.
-.br
-5\ ==\ "section-page" and "section-figure" numbering enabled.
-See also the number-register Sectf and Sectp.
-.TP
-.B Np
-Numbered paragraphs, default 0.
-.br
-0\ ==\ not numbered
-.br
-1\ ==\ numbered in first level headings.
-.TP
-.B O
-Page offset, only for command line settings.
-.TP
-.B Of
-Format of figure,table,exhibit,equation titles, default 0.
-.br
-0\ =\ ". "
-.br
-1\ =\ " - "
-.TP
-.B P
-Current page-number, normally the same as % unless "section-page" numbering
-is enabled.
-.TP
-.B Pi
-paragraph indent, default 5.
-.TP
-.B Pgps
-Controls whether header and footer pointsize should follow the current
-setting or just change when the header and footer is defined.
-.in +.5i
-.ti -.5i
-.T2 Value
-Description
-.T2 0
-Pointsize will only change to the current setting when \fB.PH\fP, \fB.PF\fP,
-\&\fB.OH\fP, \fP.EH\fP, \fB.OF\fP or \fB.OE\fP is executed.
-.T2 1
-Pointsize will change after every \fB.S\fP.
-This is the default.
-.in
-.TP
-.B Ps
-paragraph spacing, default 1.
-.TP
-.B Pt
-Paragraph type, default 0.
-.br
-0\ ==\ left-justified
-.br
-1\ ==\ indented .P
-.br
-2\ ==\ indented .P except after .H, .DE or .LE.
-.TP
-.B Sectf
-Flag controlling "section-figures".
-A non-zero value enables this.
-See also register N.
-.TP
-.B Sectp
-Flag controlling "section-page-numbers".
-A non-zero value enables this.
-See also register N.
-.TP
-.B Si
-Display indent, default 5.
-.TP
-.B Verbin
-Indent for \fB.VERBON\fP, default 5n.
-.TP
-.B W
-Line length, only for command line settings.
-.TP
-.B .mgm
-Always 1.
-.LP
-.SH INTERNALS
-The letter macros is using different submacros depending on
-the letter type.
-The name of the submacro has the letter type
-as suffix.
-It is therefore possible to define other letter types, either
-in the national macro-file, or as local additions.
-\&\fB.LT\fP will set the number variables \fBPt\fP and \fBPi\fP to 0 and 5.
-The following strings and macros must be defined for a new letter type:
-.TP
-\fBlet@init_\fP\fItype\fP
-This macro is called directly by \fB.LT\fP.
-It is supposed to initialize
-variables and other stuff.
-.TP
-\fBlet@head_\fP\fItype\fP
-This macro prints the letter head, and is called instead of the
-normal page header.
-It is supposed to remove the alias \fBlet@header\fP,
-otherwise it will be called for all pages.
-.TP
-\fBlet@sg_\fP\fItype\ name\ title\ n\ flag\ [arg1\ [arg2\ [...]]]\fP
-\&\fB.SG\fP is calling this macro only for letters, memorandums has
-its own processing.
-\fIname\fP and \fItitle\fP is specified
-thru \fB.WA\fP/\fB.WB\fP.
-\fIn\fP is the counter, 1-max, and
-\fIflag\fP is true for the last name.
-Any other argument to \fB.SG\fP
-is appended.
-.TP
-\fBlet@fc_\fP\fItype\ closing\fP
-This macro is called by \fB.FC\fP, and has the
-formal closing as argument.
-.LP
-\&\fB.LO\fP is implemented as a general option-macro.
-\fB.LO\fP demands
-that a string named \fBLet\fP\fItype\fP is defined, where \fItype\fP
-is the letter type.
-\&\fB.LO\fP will then assign the argument to the string
-variable \fBlet*lo-\fP\fItype\fP.
-.LP
-.\".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 (@MAN1EXT@),
-.BR @g@troff (@MAN1EXT@),
-.BR @g@tbl (@MAN1EXT@),
-.BR @g@pic (@MAN1EXT@),
-.BR @g@eqn (@MAN1EXT@)
-.br
-.BR groff_mmse (@MAN7EXT@)
-.
-.\" Local Variables:
-.\" mode: nroff
-.\" coding: latin-1
-.\" End:
diff --git a/contrib/groff/contrib/mm/groff_mmse.man b/contrib/groff/contrib/mm/groff_mmse.man
deleted file mode 100644
index 511eac5898c7..000000000000
--- a/contrib/groff/contrib/mm/groff_mmse.man
+++ /dev/null
@@ -1,86 +0,0 @@
-.\"
-.\" $Id: groff_mmse.man,v 2.2 2001/12/09 12:15:09 wlemb Exp $
-.\" Skrivet av Jörgen Hägg, Lund, Sverige
-.\"
-.TH GROFF_MMSE @MAN7EXT@ "@MDATE@" "Groff Version @VERSION@"
-.SH NAMN
-groff_mmse \- svenska mm makro för groff
-.SH SYNTAX
-.B groff
-.B \-m@TMAC_M_PREFIX@mse
-[
-.IR flaggor .\|.\|.
-]
-[
-.IR filer .\|.\|.
-]
-.SH BESKRIVNING
-\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
-för vänster och högerjusterad text.
-.LP
-\fBCOVER\fP kan använda \fIse_ms\fP som argument. Detta ger ett
-svenskt försättsblad.
-Se \fBgroff_mm(@MAN7EXT@)\fP för övriga detaljer.
-.SH BREV
-Tillgängliga brevtyper:
-.TP
-.B ".LT SVV"
-Vänsterställd löptext med adressat i position T0 (vänsterställt).
-.TP
-.B ".LT SVH"
-Högerställd löptext med adressat i position T4 (passar
-fönsterkuvert).
-.LP
-Följande extra LO-variabler används.
-.TP
-.B ".LO DNAMN\fI namn\fP"
-Anger dokumentets namn.
-.TP
-.br
-.B ".LO MDAT\fI datum\fP"
-Mottagarens datum, anges under \fBErt datum:\fP (\fBLetMDAT\fP).
-.TP
-.br
-.B ".LO BIL\fI sträng\fP"
-Anger bilaga, nummer eller sträng med \fBBilaga\fP (\fBLetBIL\fP)
-som prefix.
-.TP
-.br
-.B ".LO KOMP\fI text\fP"
-Anger kompletteringsuppgift.
-.TP
-.br
-.B ".LO DBET\fI beteckning\fP"
-Anger dokumentbeteckning eller dokumentnummer.
-.TP
-.br
-.B ".LO BET\fI beteckning\fP"
-Anger beteckning (ärendebeteckning i form av diarienummer eller liknande).
-.TP
-.br
-.B ".LO SIDOR\fI antal\fP"
-Anger totala antalet sidor och skrivs ut efter sidnumret inom
-parenteser.
-.LP
-Om makrot \fB.TP\fP är definierat anropas det efter utskrift av brevhuvudet.
-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_PREFIX@mse
-.B @TMAC_MDIR@/se_*.cov
-.SH "SE OCKSÅ"
-.BR groff (@MAN1EXT@),
-.BR @g@troff (@MAN1EXT@),
-.BR @g@tbl (@MAN1EXT@),
-.BR @g@pic (@MAN1EXT@),
-.BR @g@eqn (@MAN1EXT@)
-.br
-.BR groff_mm (@MAN7EXT@)
-.
-.\" Local Variables:
-.\" mode: nroff
-.\" End:
diff --git a/contrib/groff/contrib/mm/m.tmac b/contrib/groff/contrib/mm/m.tmac
deleted file mode 100644
index db52e93deb7a..000000000000
--- a/contrib/groff/contrib/mm/m.tmac
+++ /dev/null
@@ -1,3536 +0,0 @@
-.\"
-.de @revision
-.ds RE \\$2
-..
-.\"
-.\" $Id: m.tmac,v 2.26 2005/05/26 06:28:38 wl Exp $
-.@revision $Revision: 2.26 $
-.ig
-
-Copyright (C) 1991-2000, 2001, 2002, 2003, 2004, 2005
- Free Software Foundation, Inc.
-mgm is written by Jörgen Hägg <jh@axis.com>
-
-mgm 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.
-
-mgm 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, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Please send bugreports with examples to jh@axis.com.
-
-Naming convention stolen from mgs.
-Local names module*name
-Extern names module@name
-Env.var environ:name
-Index array!index
-..
-.if !\n(.g .ab These mm macros require groff.
-.do if d PH .nx
-.if \n(.C .ab The groff mm macros do not work in compatibility mode.
-.if (\n[.warn] == 65543) .warn
-.mso devtag.tmac
-.\" ######## init #######
-.\" Contents level [0:14], contents saved if heading level <= Cl
-.nr Cl 2
-.\" Eject page between LIST OF XXXX if Cp == 0
-.nr Cp 0
-.\" Debugflag
-.if !r D .nr D 0
-.\" Eject after floating display is output [0:1]
-.nr De 0
-.\" Floating keep output [0;5]
-.nr Df 5
-.\" space before and after display if == 1 [0:1]
-.nr Ds 1
-.\" Eject page
-.nr Ej 0
-.\" Equation label adjust 0=left, 1=right
-.nr Eq 0
-.\" Em dash string
-.ie n .ds EM " --
-.el .ds EM \(em
-.\" Footnote spacing
-.nr Fs 1
-.\" H1-H7 heading counters
-.nr H1 0 1
-.nr H2 0 1
-.nr H3 0 1
-.nr H4 0 1
-.nr H5 0 1
-.nr H6 0 1
-.nr H7 0 1
-.nr H8 0 1
-.nr H9 0 1
-.nr H10 0 1
-.nr H11 0 1
-.nr H12 0 1
-.nr H13 0 1
-.nr H14 0 1
-.\" Heading break level [0:14]
-.nr Hb 2
-.\" heading centering level, [0:14]
-.nr Hc 0
-.\" header format
-.ds HF 2 2 2 2 2 2 2 2 2 2 2 2 2 2
-.\" heading temp. indent [0:2]
-.\" 0 -> 0 indent, left margin
-.\" 1 -> indent to right , like .P 1
-.\" 2 -> indent to line up with text part of preceding heading
-.nr Hi 1
-.\" header pointsize
-.ds HP 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-.\" heading space level [0:14]
-.nr Hs 2
-.\" heading numbering type
-.\" 0 -> multiple (1.1.1 ...)
-.\" 1 -> single
-.nr Ht 0
-.\" Unnumbered heading level
-.nr Hu 2
-.\" hyphenation in body
-.\" 0 -> no hyphenation
-.\" 1 -> hyphenation 14 on
-.nr Hy 0
-.\" text for toc, selfexplanatory. Look in the new variable section
-.ds Lf LIST OF FIGURES
-.nr Lf 1
-.ds Lt LIST OF TABLES
-.nr Lt 1
-.ds Lx LIST OF EXHIBITS
-.nr Lx 1
-.ds Le LIST OF EQUATIONS
-.nr Le 0
-.\" List indent, used by .AL
-.nr Li 6
-.\" List space, if listlevel > Ls then no spacing will occur around lists.
-.nr Ls 99
-.\" Numbering style [0:5]
-.if !r N .nr N 0
-.\" numbered paragraphs
-.\" 0 == not numbered
-.\" 1 == numbered in first level headings.
-.nr Np 0
-.\" Format of figure,table,exhibit,equation titles.
-.\" 0= ". ", 1=" - "
-.nr Of 0
-.\" Table of contents page numbering style
-.nr Oc 0
-.\" Page-number, normally same as %.
-.nr P 0
-.\" paragraph indent
-.nr Pi 5
-.\" paragraph spacing
-.nr Ps 1
-.\" paragraph type
-.\" 0 == left-justified
-.\" 1 == indented .P
-.\" 2 == indented .P except after .H, .DE or .LE.
-.nr Pt 0
-.\" Reference title
-.ds Rp REFERENCES
-.\" Display indent
-.nr Si 5
-.\"
-.\" Current state of TOC, empty outside TC, inside
-.\" it will be set to co,fg,tb,ec,ex or ap.
-.ds Tcst
-.\"
-.ds Tm \(tm
-.\"
-.\"---------------------------------------------
-.\" Internal global variables
-.\"
-.\" This is for cover macro .MT
-.\" .ds @language
-.\"
-.nr @copy_type 0
-.if r C .nr @copy_type \n[C]
-.\" >0 if Subject/Date/From should be bold, roman otherwise
-.ie n .ds @sdf_font R
-.el .ds @sdf_font B
-.if \n[@copy_type]=4 \{\
-. ls 2
-. nr Pi 10
-. nr Pt 1
-.\}
-.\"
-.\"
-.if r E \{\
-. ie \n[E] .ds @sdf_font B
-. el .ds @sdf_font R
-.\}
-.\"
-.\" Current pointsize and vertical space, always in points.
-.if !r S .nr S 10
-.ps \n[S]
-.vs \n[S]+2
-.\"
-.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 \{\
-. ie n .pl \n[L]u
-. el .pl \n[L]u
-.\}
-.nr @pl \n[.p]
-.\"
-.\" page width
-.ie r W \{\
-. ie n .ll \n[W]u
-. el .ll \n[W]u
-.\}
-.el .ll 6i
-.nr @ll \n[.l]
-.nr @cur-ll \n[@ll]
-.lt \n[@ll]u
-.\"
-.\" page offset
-.ie r O .po \n[O]u
-.el \{\
-. ie n .po .75i
-. el .po .963i
-.\}
-.\"
-.nr @po \n[.o]
-.\"
-.\" non-zero if escape mechanism is turned off. Used by VERBON/OFF
-.nr @verbose-flag 0
-.\"---------------------------------------------
-.\" New variables
-.\"
-.\" Appendix name
-.ds App APPENDIX
-.\" print appendixheader, 0 == don't
-.nr Aph 1
-.\"
-.\" Current appendix text
-.ds Apptext
-.\" Controls the space before and after static displays if defined.
-.\" Lsp is used otherwise
-.\" .nr Dsp 1v
-.\"
-.\" Add a dot after level one heading number if >0
-.nr H1dot 1
-.\"
-.\" header prespace level. If level <= Hps, then two lines will be printed
-.\" before the header instead of one.
-.nr Hps 1
-.\"
-.\" These variables controls the number of lines preceding .H.
-.\" Hps1 is the number of lines when level > Hps
-.nr Hps1 0.5v
-.if n .nr Hps1 1v
-.\"
-.\" Hps2 is the number of lines when level <= Hps
-.nr Hps2 1v
-.if n .nr Hps2 2v
-.\"
-.\" Hss is the number of lines (Lsp) after the header.
-.nr Hss 1
-.\"
-.\" H1txt will be updated by .H and .HU, containing the heading text.
-.\" Will also be updated in table of contents & friends
-.\"
-.ds H1txt
-.\"
-.\" header text for the index
-.ds Index INDEX
-.\" command to sort the index
-.ds Indcmd sort
-.\"
-.\" flag for mkindex
-.if !r Idxf .nr Idxf 0
-.\" Change these in the national configuration file
-.ds Lifg Figure
-.ds Litb TABLE
-.ds Liex Exhibit
-.ds Liec Equation
-.ds Licon CONTENTS
-.\" Flag for space between mark and prefix 1==space, 0==no space
-.\" Can also be controlled by using '.LI mark 2'
-.nr Limsp 1
-.\"
-.\" Lsp controls the height of an empty line. Normally 0.5v
-.\" Normally used for nroff compatibility.
-.nr Lsp 0.5v
-.if n .nr Lsp 1v
-.ds MO1 January
-.ds MO2 February
-.ds MO3 March
-.ds MO4 April
-.ds MO5 May
-.ds MO6 June
-.ds MO7 July
-.ds MO8 August
-.ds MO9 September
-.ds MO10 October
-.ds MO11 November
-.ds MO12 December
-.\" for GETR
-.ds Qrf See chapter \\*[Qrfh], page \\*[Qrfp].
-.\"
-.\" header- and footer-size will only change to the current
-.\" if Pgps is > 0.
-.nr Pgps 1
-.\"
-.\" section-page if Sectp > 0
-.nr Sectp 0
-.if (\n[N]=3):(\n[N]=5) \{\
-. nr Sectp 1
-. nr Ej 1
-.\}
-.\" section-figure if Sectf > 0
-.nr Sectf 0
-.if \n[N]=5 .nr Sectf 1
-.\"
-.\" argument to .nm in .VERBON.
-.ds Verbnm "1
-.\" indent for VERBON
-.nr Verbin 5n
-.\"
-.\" Letter section
-.\" Formal closing (.FC)
-.ds Letfc Yours very truly,
-.\"
-.\" Approval line
-.ds Letapp APPROVED:
-.\" Approval date-string
-.ds Letdate Date
-.\"
-.ds LetCN CONFIDENTIAL\" Confidential default
-.ds LetSA To Whom It May Concern:\" Salutation default
-.ds LetAT ATTENTION:\" Attention string
-.ds LetSJ SUBJECT:\" Subject string
-.ds LetRN In reference to:\" Reference string
-.\"
-.\" Copy to (.NS)
-.ds Letnsdef 0
-.ds Letns!copy Copy \" space!
-.ds Letns!to " to
-.ds Letns!0 Copy to
-.ds Letns!1 Copy (with att.) to
-.ds Letns!2 Copy (without att.) to
-.ds Letns!3 Att.
-.ds Letns!4 Atts.
-.ds Letns!5 Enc.
-.ds Letns!6 Encs.
-.ds Letns!7 Under separate cover
-.ds Letns!8 Letter to
-.ds Letns!9 Memorandum to
-.ds Letns!10 Copy (with atts.) to
-.ds Letns!11 Copy (without atts.) to
-.ds Letns!12 Abstract Only to
-.ds Letns!13 Complete Memorandum to
-.ds Letns!14 CC:
-.\"
-.\" Text printed below the footer. Controlled by @copy_type (C).
-.ds Pg_type!0
-.ds Pg_type!1 OFFICIAL FILE COPY
-.ds Pg_type!2 DATE FILE COPY
-.ds Pg_type!3 D\ R\ A\ F\ T
-.ds Pg_type!4 D\ R\ A\ F\ T
-.\" Max lines in return address
-.nr Letwam 14
-.\"--------------------------
-.\" test for mgm macro. This can be used if the text must test
-.\" what macros is used.
-.nr .mgm 1
-.\"
-.\" Due to security problems with groff I had to rewrite
-.\" the reference system. It's not as elegant as before, you
-.\" have to run groff with '-z -rRef=1' and put stderr into the filename
-.\" for .INITR
-.\"
-.\" Output references to stderr if non-zero
-.ie !r Ref \{\
-. nr Ref 0
-.\}
-.el .warn 0
-.\"
-.\"---------------------------------------------
-.\" set local variables.
-.ie d @language .mso mm/\*[@language]_locale
-.el .mso mm/locale
-.\"---------------------------------------------
-.if \n[D] .tm Groff mm, version \*[RE].
-.\" ####### module init ######
-.\" reset all things
-.de init@reset
-.ie \\n[misc@adjust] 'ad
-.el 'na
-.ie \\n[Hy] 'hy 14
-.el 'nh
-'in 0
-'ti 0
-.ps \\n[@ps]u
-.vs \\n[@vs]u
-..
-.de @warning
-'tm WARNING:(\\n[.F]) input line \\n[.c]:\\$*
-.if \\n[D] .backtrace
-..
-.de @error
-'tm ******************
-'tm ERROR:(\\n[.F]) input line \\n[.c]:\\$*
-.if \\n[D] .backtrace
-'tm ******************
-.ab "Input aborted, syntax error"
-..
-.de misc@toupper
-.tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
-.br
-\\$1
-.tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
-.br
-..
-.\" ####### module debug #################################
-.de debug
-'tm \\$1:\\n[.F]:\\n[c.] ll=\\n[.l] vs=\\n[.v] ps=\\n[.s],\\n[.ps] \
-in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
-..
-.de debug-all
-.nr debug*n 1n
-.nr debug*m 1m
-'tm \\$1:\\n[.F]:\\n[c.] ll=\\n[.l] vs=\\n[.v] ps=\\n[.s] in=\\n[.i]\
- ad=\\n[.j] fi=\\n[.u] pl=\\n[.p] page=\\n[%] .o=\\n[.o]
-'tm _______ .d=\\n[.d] .f=\\n[.f] .h=\\n[.h] .k=\\n[.k] .n=\\n[.n]\
- .p=\\n[.p] .t=\\n[.t] .z=\\n[.z] nl=\\n[nl] dn=\\n[dn] n=\\n[debug*n]
-..
-.\" ####### module par #################################
-.nr par@ind-flag 1 \" indent on following P if Pt=2
-.nr hd*last-pos -1
-.nr hd*last-hsize -1
-.nr par*number 0 1
-.af par*number 01
-.nr par*number2 0 1
-.af par*number2 01
-.nr par*num-count 0 1
-.af par*num-count 01
-.\" reset numbered paragraphs, arg1 = headerlevel
-.de par@reset-num
-.if \\$1<3 .nr par*num-count 0
-.if (\\$1=1)&(\\n[Np]=1) .nr par*number 0
-..
-.\"------------
-.\" paragraph
-.de P
-.\" skip P if previous heading
-.if \\n[D]>2 \{\
-. tm Paragraph nl=\\n[nl], last=\\n[hd*last-pos]
-. tm Paragraph .k=\\n[.k], hsize=\\n[hd*last-hsize]
-.\}
-.if !((\\n[nl]=\\n[hd*last-pos]):(\\n[hd*last-hsize]=\\n[.k])) \{\
-. if \\n[D]>2 .tm Paragraph set ind-flag=1
-. nr par@ind-flag 1
-.\}
-.\" any collected unprinted text?
-.par@doit \\$*
-.if \\n[Np] \\n[H1].\\n+[par*number]\ \ \c
-..
-.\"------------
-.de nP
-.\" skip P if previous heading
-.if \\n[D]>2 \{\
-. tm Paragraph nl=\\n[nl], last=\\n[hd*last-pos]
-. tm Paragraph .k=\\n[.k], hsize=\\n[hd*last-hsize]
-.\}
-.if !((\\n[nl]=\\n[hd*last-pos]):(\\n[hd*last-hsize]=\\n[.k])) \{\
-. if \\n[D]>2 .tm Paragraph set ind-flag=1
-. nr par@ind-flag 1
-.\}
-.par@doit \\$*
-\\n[H2].\\n+[par*number2]\ \ \c
-.nr par@ind-flag 1
-..
-.\"------------
-.de par@doit
-.SP (u;\\n[Ps]*\\n[Lsp])
-.ie \\n[.$] \{\
-. if \\$1=1 .ti +\\n[Pi]n
-.\}
-.el \{\
-. if \\n[Pt]=1 .ti +\\n[Pi]n
-. if (\\n[Pt]=2)&\\n[par@ind-flag] .ti +\\n[Pi]n
-.\}
-..
-.\" ####### module line #######################################
-.de SP
-.br
-.if !r line*lp\\n[.z] .nr line*lp\\n[.z] 0
-.if !r line*ac\\n[.z] .nr line*ac\\n[.z] 0
-.ie \\n[.$] .nr line*temp (v;\\$1)
-.el .nr line*temp 1v
-.\"
-.ie \\n[line*lp\\n[.z]]=\\n[.d] \{\
-. \" go here if no output since the last .SP
-. nr line*output \\n[line*temp]-\\n[line*ac\\n[.z]]
-. if \\n[line*output]<0 .nr line*output 0
-. nr line*ac\\n[.z] +\\n[line*output]
-.\}
-.el \{\
-. nr line*ac\\n[.z] \\n[line*temp]
-. nr line*output \\n[line*temp]
-. \" no extra space in the beginning of a page
-. if (\\n[.d]<0):(\\n[pg*head-mark]=\\n[.d]) .nr line*output 0
-.\}
-.if \\n[line*output] .sp \\n[line*output]u
-.nr line*lp\\n[.z] \\n[.d]
-..
-.\" ######## module misc ###############
-.nr misc@adjust 14
-.de SA
-.if \\n[.$] \{\
-. if \\$1-1 .@error "SA: bad arg: \\$1"
-. nr misc@adjust 0\\$1
-.\}
-.ie \\n[misc@adjust] 'ad
-.el 'na
-..
-.\"-------------
-.\" switch environment, keep all important settings.
-.de misc@ev-keep
-.nr misc*ll \\n[.l]
-.ev \\$1
-.ll \\n[misc*ll]u
-.lt \\n[misc*ll]u
-..
-.\"-------------
-.\" .misc@push stackname value
-.de misc@push
-.ie d misc*st-\\$1 .ds misc*st-\\$1 \\$2 \\*[misc*st-\\$1]
-.el .ds misc*st-\\$1 \\$2
-..
-.\"-------------
-.\" .misc@pop stackname
-.\" value returned in the string misc*pop
-.de misc@pop
-.misc@pop-set misc*st-\\$1 \\*[misc*st-\\$1]
-..
-.\"-------------
-.de misc@pop-set
-.ds misc*st-name \\$1
-.shift
-.if \\n[.$]<1 .@error "stack \\*[misc*st-name] empty"
-.ds misc*pop \\$1
-.shift
-.ds \\*[misc*st-name] \\$*
-..
-.\"-------------
-.\" .misc@pop-nr stackname varname
-.de misc@pop-nr
-.misc@pop \\$1
-.nr \\$2 \\*[misc*pop]
-..
-.\"-------------
-.\" .misc@pop-ds stackname varname
-.de misc@pop-ds
-.misc@pop \\$1
-.ds \\$2 \\*[misc*pop]
-..
-.\"-----------
-.\" reset tabs
-.de TAB
-.ta T 5n
-..
-.\"-------------
-.\" .PGFORM linelength [ pagelength [ pageoffset [1]]]
-.de PGFORM
-.\" 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 @cur-ll \\n[@ll]
-. lt \\n[@ll]u
-.\}
-.el \{\
-. ll \\n[@ll]u
-. lt \\n[@ll]u
-.\}
-.\"
-.ie !''\\$2' \{\
-. pl \\$2
-. nr @pl \\n[.p]
-.\}
-.el .pl \\n[@pl]u
-.\"
-.ie !''\\$3' \{\
-. po \\$3
-. 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]
-.\" move to line y, indent to x
-.de MOVE
-.if !\\n[.$] .@error "MOVE y [x]: no arguments"
-.if \\n[nl]<0 \c
-.\" move to Y-pos
-.sp |(v;\\$1)
-.\" calc linelength
-.ie \\n[.$]>2 .nr pg*i (n;\\$3)
-.el \{\
-. ie \\n[.$]>1 .nr pg*i (n;\\n[@ll]u-\\$2)
-. el .nr pg*i \\n[@ll]u
-.\}
-.\" move to X-pos, if any
-.if !''\\$2' .po \\$2
-.\" set linelength
-.ll \\n[pg*i]u
-..
-.\"-------------
-.de SM
-.if !\\n[.$] .@error "SM: no arguments"
-.if \\n[.$]=1 \s-1\\$1\s0
-.if \\n[.$]=2 \s-1\\$1\s0\\$2
-.if \\n[.$]=3 \\$1\s-1\\$2\s0\\$3
-..
-.\"-------------
-.nr misc*S-ps \n[@ps]
-.nr misc*S-vs \n[@vs]
-.nr misc*S-ps1 \n[@ps]
-.nr misc*S-vs1 \n[@vs]
-.ds misc*a
-.ds misc*b
-.de S
-.ie !\\n[.$] \{\
-. ds misc*a P
-. ds misc*b P
-.\}
-.el \{\
-. ie \\n[.$]=1 .ds misc*b D
-. el \{\
-. ie \w@\\$2@=0 .ds misc*b C
-. el .ds misc*b \\$2
-. \}
-. ie \w@\\$1@=0 .ds misc*a C
-. el .ds misc*a \\$1
-.\}
-.\"
-.\" set point size
-.if !'\\*[misc*a]'C' \{\
-. ie '\\*[misc*a]'P' .ps \\n[misc*S-ps]u
-. el \{\
-. ie '\\*[misc*a]'D' .ps \\n[S]
-. el .ps \\*[misc*a]
-. if \\n[D]>2 .tm S: .ps \\*[misc*a]
-. \}
-.\}
-.\"
-.\" set vertical spacing
-.if !'\\*[misc*b]'C' \{\
-. ie '\\*[misc*b]'P' .vs \\n[misc*S-vs]u
-. el \{\
-. ie '\\*[misc*b]'D' .vs \\n[.ps]s+2p
-. el .vs \\*[misc*b]
-. if \\n[D]>2 .tm S: .vs \\*[misc*b]
-. \}
-.\}
-.nr @ps \\n[.ps]
-.nr @psu \\n[.ps]s
-.nr @vs \\n[.v]
-.nr @vsp \\n[.v]u/1p
-.nr @res 1i
-.\"
-.if \\n[D]>1 \{\
-. tmc "S(\\$*): ma:\\*[misc*a], mb:\\*[misc*b]
-. tm1 " => ps:\\n[.s]p (\\n[@psu]u), vs:\\n[@vsp]p (\\n[@vs]u) (res:\\n[@res])
-.\}
-.nr misc*S-ps \\n[misc*S-ps1]
-.nr misc*S-vs \\n[misc*S-vs1]
-.nr misc*S-ps1 \\n[@ps]
-.nr misc*S-vs1 \\n[@vs]
-.pg@move-trap
-..
-.\"------------
-.de HC
-.ev 0
-.hc \\$1
-.ev
-.ev 1
-.hc \\$1
-.ev
-.ev 2
-.hc \\$1
-.ev
-..
-.\"------------
-.de RD
-.di misc*rd
-'fl
-.rd \\$1\t
-.br
-.di
-.ie !''\\$3' \{\
-. di misc*rd2
-. ds \\$3 "\\*[misc*rd]
-. br
-. di
-.\}
-.if !''\\$2' .rn misc*rd \\$2
-.rm misc*rd misc*rd2
-..
-.\"------------
-.\" VERBON [flag [pointsize [font]]]
-.\" flag
-.\" bit function
-.\" 0 escape on
-.\" 1 add an empty line before verbose text
-.\" 2 add an empty line after verbose text
-.\" 3 numbered lines (controlled by the string Verbnm)
-.\" 4 indent text by the numbervariable Verbin.
-.de VERBON
-.br
-.nr misc*verb 0\\$1
-.if (0\\n[misc*verb]%4)/2 .SP \\n[Lsp]u
-.misc@ev-keep misc*verb-ev
-.nf
-.if (0\\n[misc*verb]%16)/8 .nm \\*[Verbnm]
-.ie !'\\$3'' .ft \\$3
-.el .ft CR
-.ie 0\\$2 \{\
-. ss \\$2
-. ps \\$2
-. vs \\$2
-.\}
-.el .ss 12
-.ta T 8u*\w@n@u
-.if (0\\n[misc*verb]%32)/16 .in +\\n[Verbin]u
-.if 0\\n[misc*verb]%2 \{\
-. eo
-. nr @verbose-flag 1 \" tell pageheader to set ec/eo
-.\}
-..
-.de VERBOFF
-.ec
-.br
-.if (0\\n[misc*verb]%8)/4 .SP \\n[Lsp]u
-.if (0\\n[misc*verb]%16)/8 .nm
-.if (0\\n[misc*verb]%32)/16 .in
-.ev
-.nr @verbose-flag 0
-..
-.\" ######## module pict #################
-.nr pict*width 0
-.nr pict*height 0
-.nr pict*mode 0
-.nr pict*ind 0
-.nr pict*id 0 1
-.\" I assume that the number variable pict*id is the same
-.\" between two runs.
-.de PIC
-.br
-.nr pict*ind 0
-.nr pict*box 0
-.while \\n[.$]>0 \{\
-. if '-B'\\$1' \{\
-. nr pict*box 1
-. shift
-. continue
-. \}
-. if '-L'\\$1' \{\
-. nr pict*mode 0
-. shift
-. continue
-. \}
-. if '-R'\\$1' \{\
-. nr pict*mode 1
-. shift
-. continue
-. \}
-. if '-I'\\$1' \{\
-. nr pict*ind (m;\\$2)
-. nr pict*mode 2
-. shift 2
-. continue
-. \}
-. if '-C'\\$1' \{\
-. nr pict*mode 3
-. shift
-. continue
-. \}
-. ds pict*f \\$1
-. nr pict*id +1
-. shift
-. if \\n[.$]>0 \{\
-. nr pict*width (i;\\$1)
-. shift
-. \}
-. if \\n[.$]>0 \{\
-. nr pict*height (i;\\$1)
-. shift
-. \}
-.\}
-.\" let mmroff know the filename and id
-.if \\n[Ref]>0 \{\
-. tm .\\\\" PIC id \\n[pict*id]
-. tm .\\\\" PIC file \\*[pict*f]
-.\}
-.\" these are defined by mmroff in the second pass
-.if d pict*file!\\n[pict*id] \{\
-. ds pict*f \\*[pict*file!\\n[pict*id]]
-. nr pict*llx \\n[pict*llx!\\n[pict*id]]
-. nr pict*lly \\n[pict*lly!\\n[pict*id]]
-. nr pict*urx \\n[pict*urx!\\n[pict*id]]
-. nr pict*ury \\n[pict*ury!\\n[pict*id]]
-. \"
-. nr pict*w (p;\\n[pict*urx]-\\n[pict*llx])
-. if \\n[pict*w]<0 .nr pict*w 0-\\n[pict*w]
-. nr pict*h (p;\\n[pict*ury]-\\n[pict*lly])
-. if \\n[pict*h]<0 .nr pict*h 0-\\n[pict*h]
-. if \\n[pict*width]>0 \{\
-. nr pict*rs (u;1000*\\n[pict*width]/\\n[pict*w])
-. nr pict*w (u;\\n[pict*w]*\\n[pict*rs]/1000)
-. nr pict*h (u;\\n[pict*h]*\\n[pict*rs]/1000)
-. \}
-. if \\n[pict*height]>0 \{\
-. nr pict*rs (u;1000*\\n[pict*height]/\\n[pict*h])
-. nr pict*h (u;\\n[pict*h]*\\n[pict*rs]/1000)
-. \}
-. if '0'\\n[pict*mode]' \{\
-. nr pict*in \\n[.i]u
-. \}
-. if '1'\\n[pict*mode]' \{\
-. nr pict*in (u;\\n[.l]-\\n[.i]-\\n[pict*w])
-. \}
-. if '2'\\n[pict*mode]' \{\
-. nr pict*in \\n[pict*ind]u
-. \}
-. if '3'\\n[pict*mode]' \{\
-. nr pict*in (u;(\\n[.l]-\\n[.i]-\\n[pict*w])/2)
-. \}
-. ds pict*h "
-. if \\n[pict*h]>0 .ds pict*h \\n[pict*h]
-. \"
-. ne \\n[pict*h]u-1v
-. \"
-. \" these lines are copied and modified from tmac.pspic.
-. \" Originally written by James Clark
-. br
-. ie \\n[pict*box]>0 \{\
-\v'-1v'\h'\\n[pict*in]u'\
-\Z'\D'p 0 \\n[pict*h]u \\n[pict*w]u 0 0 -\\n[pict*h]u''\
-\v'\\n[pict*h]u'\X'ps: import \\*[pict*f] \
-\\n[pict*llx] \\n[pict*lly] \
-\\n[pict*urx] \\n[pict*ury] \
-\\n[pict*w] \\n[pict*h]'
-.\}
-. el \{\
-\v'-1v'\h'\\n[pict*in]u'\
-\X'ps: invis'\
-\Z'\D'p 0 \\n[pict*h]u \\n[pict*w]u 0 0 -\\n[pict*h]u''\
-\X'ps: endinvis'\
-\v'\\n[pict*h]u'\X'ps: import \\*[pict*f] \
-\\n[pict*llx] \\n[pict*lly] \
-\\n[pict*urx] \\n[pict*ury] \
-\\n[pict*w] \\n[pict*h]'
-. \}
-. br
-. sp \\n[pict*h]u-1v
-.\}
-..
-.\" external picture
-.\" -L left adjust
-.de EPIC
-.if \\n[.$]<2 .@error "EPIC: Not enough arguments"
-.nr pict*adj 0 \" centered
-.if '\\$1'-L' \{\
-. shift 1 \" left adjust
-. nr pict*adj 1
-.\}
-.if \\n[nl]<0 \&
-.nr pict*w \\$1
-.nr pict*h \\$2
-.ds pict*name "External picture
-.if !''$3' .ds pict*name \\$3
-.ne \\n[pict*h]u
-.sp \\n[pict*h]u-1v
-.nr pict*ind 0
-.if !\\n[pict*adj] .nr pict*ind (u;(\\n[.l]-\\n[.i]-\\n[pict*w])/2)
-.mk
-.in +\\n[pict*ind]u
-\D'l \\n[pict*w]u 0'\
-\D'l 0 -\\n[pict*h]u'\
-\D'l -\\n[pict*w]u 0'\
-\D'l 0 \\n[pict*h]u'\
-\v'-(u;\\n[pict*h]/2)'\
-\h'(u;(\\n[pict*w]-\w'\\*[pict*name]'/2))'\\*[pict*name]
-.in
-.rt
-.sp 1v
-..
-.\" ######## module acc #################
-.\"-----------
-.\" accents. These are copied from mgs, written by James Clark.
-.de acc@over-def
-.ds \\$1 \Z'\v'(u;\w'x'*0+\En[rst]-\En[.cht])'\
-\h'(u;-\En[skw]+(-\En[.w]-\w'\\$2'/2)+\En[.csk])'\\$2'
-..
-.de acc@under-def
-.ds \\$1 \Z'\v'\En[.cdp]u'\h'(u;-\En[.w]-\w'\\$2'/2)'\\$2'
-..
-.acc@over-def ` \`
-.acc@over-def ' \'
-.acc@over-def ^ ^
-.acc@over-def ~ ~
-.acc@over-def : \(ad
-.acc@over-def ; \(ad
-.acc@under-def , \(ac
-.\" ######## module uni #################
-.\" unimplemented macros
-.de OK
-'tm "OK: not implemented"
-..
-.de PM
-'tm "PM: not implemented"
-..
-.\" ######## module hd #################
-.\" support for usermacro
-.nr hd*h1-page 1 \" last page-number for level 1 header.
-.nr hd*htype 0
-.ds hd*sect-pg
-.ds hd*mark
-.ds hd*suf-space
-.nr hd*need 0
-.aln ;0 hd*htype
-.als }0 hd*mark
-.als }2 hd*suf-space
-.aln ;3 hd*need
-.\"-------------
-.\" .hd@split varable index name val1 val2 ...
-.de hd@split
-.if \\$2>(\\n[.$]-3) .@error "\\$3 must have at least \\$2 values (\\*[\\$3]).
-.nr hd*sp-tmp \\$2+3
-.ds \\$1 \\$[\\n[hd*sp-tmp]]
-..
-.de HU
-.H 0 "\\$1"
-..
-.\"-------------
-.de H
-.if !r hd*cur-bline .nr hd*cur-bline \\n[nl]
-.br
-.df@print-float 2\" $$$ could be wrong...
-.\" terminate all lists
-.LC
-.init@reset
-.nr hd*level 0\\$1
-.nr hd*arg1 0\\$1
-.if !\\n[hd*level] .nr hd*level \\n[Hu]
-.\"
-.\" clear lower counters
-.nr hd*i 1 1
-.while \\n+[hd*i]<15 .if \\n[hd*level]<\\n[hd*i] .nr H\\n[hd*i] 0 1
-.\"
-.\" save last text for use in TP
-.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. 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
-.\" appeared before.
-.if \\n[Ej]&(\\n[Ej]>=\\n[hd*level])&(\\n[nl]>\\n[hd*cur-bline]) .pg@next-page
-.\"
-.\" increment current counter
-.nr H\\n[hd*level] +1
-.\"
-.\" update pagenumber if section-page is used
-.if (\\n[hd*level]=1)&(\\n[Sectp]>0) .hd@set-page 1
-.\"
-.\" hd*mark is the text written to the left of the header.
-.ds hd*mark \\n[H1].
-.\"
-.if \\n[hd*level]>1 .as hd*mark \\n[H2]
-.\"
-.nr hd*i 2 1
-.while \\n+[hd*i]<15 .if \\n[hd*level]>(\\n[hd*i]-1) .as hd*mark .\\n[H\\n[hd*i]]
-.if \\n[Ht] .ds hd*mark \\n[H\\n[hd*level]].
-.\"
-.\" special case, no dot after level one heading if not H1dot true
-.if (\\n[hd*level]=1)&(\\n[H1dot]=0) .ds hd*mark \\n[H1]
-.\"
-.as hd*mark \ \ \" add spaces between mark and heading
-.if !\\n[hd*arg1] .ds hd*mark\" no mark for unnumbered
-.\"
-.if \\n[D]>1 .tm At header \\*[hd*mark] "\\$2"
-.nr hd*htype 0 \" hd*htype = check break and space
-. \" 0 = run-in, 1 = break only, 2 = space
-.if \\n[hd*level]<=\\n[Hb] .nr hd*htype 1
-.if \\n[hd*level]<=\\n[Hs] .nr hd*htype 2
-. \" two spaces if hd*htype == 0
-.ie (\\n[hd*htype]=0)&(\w@\\$2@) .ds hd*suf-space " \"
-.el .ds hd*suf-space
-.nr hd*need 2v \" hd*need = header need space
-.\"---------- user macro HX ------------
-.\" User exit macro to override numbering.
-.\" May change hd*mark (}0), hd*suf-space (}2) and hd*need (;3)
-.\" Can also change Hps1/2.
-.if d HX .HX \\n[hd*level] \\n[hd*arg1] "\\$2\\$3"
-.\"--------------------------------------
-.\" pre-space
-.ie \\n[hd*level]<=\\n[Hps] .SP (u;\\n[Hps2])
-.el .SP (u;\\n[Hps1])
-.\"
-.par@reset-num \\n[hd*level]\" reset numbered paragraph
-.\" start diversion to measure size of header
-.di hd*div
-\\*[hd*mark]\\$2\\$3\\*[hd*suf-space]
-.br
-.di
-.rm hd*div
-.if \\n[hd*htype] .na \" no adjust if run-in
-.if \\n[hd*htype]<2 .nr hd*need +\\n[Lsp]u \" add some extra space
-.ne \\n[hd*need]u+\\n[dn]u+.5p-1v \" this is the needed space for a header
-.\"
-.\" size and font calculations
-.hd@split hd*font \\n[hd*level] HF \\*[HF]\" get font for this level
-.ft \\*[hd*font]\" set new font
-.hd@split hd*new-ps \\n[hd*level] HP \\*[HP]\" get point size
-.ie (\\*[hd*new-ps]=0):(\w@\\*[hd*new-ps]@=0) \{\
-. if \\n[hd*htype] \{\
-. if '\\*[hd*font]'3' \{\
-. ps -1
-. vs -1
-. \}
-. if '\\*[hd*font]'B' \{\
-. ps -1
-. vs -1
-. \}
-. \}
-.\}
-.el \{\
-. ps \\*[hd*new-ps]
-. vs \\*[hd*new-ps]+2
-.\}
-.\"
-.\"---------- user macro HY -------------
-.\" user macro to reset indents
-.if d HY .HY \\n[hd*level] \\n[hd*arg1] "\\$2\\$3"
-.DEVTAG-NH \\n[hd*level] \" HTML: mark beginning of heading
-.\"--------------------------------------
-.nr hd*mark-size \w@\\*[hd*mark]@
-.if (\\n[hd*level]<=\\n[Hc])&\\n[hd*htype] .ce\" center if level<=Hc
-.\"
-.\" finally, output the header
-\\*[hd*mark]\&\c
-.\" and the rest of the header
-.ie \\n[hd*htype] \{\
-\\$2\\$3
-. br
-.\}
-.el \\$2\\$3\\*[hd*suf-space]\&\c
-.ft 1
-.\" restore pointsize and vertical size.
-.ps \\n[@ps]u
-.vs \\n[@vs]u
-.\"
-.\" table of contents
-.if (\\n[hd*level]<=\\n[Cl])&\w@\\$2@ .toc@entry \\n[hd*level] "\\$2"
-.\" set adjust to previous value
-.SA
-.\" do break or space
-.if \\n[hd*htype] .br
-.if \\n[hd*htype]>1 .SP (u;\\n[Lsp]*\\n[Hss])
-.if \\n[hd*htype] \{\
-. \" indent if Hi=1 and Pt=1
-. if (\\n[Hi]=1)&(\\n[Pt]=1) .ti +\\n[Pi]n
-. \" indent size of mark if Hi=2
-. if \\n[hd*htype]&(\\n[Hi]>1) .ti +\\n[hd*mark-size]u
-.\}
-.nr par@ind-flag 0 \" no indent on .P if Pt=2
-.\"
-.\" check if it is time to reset footnotes
-.if (\\n[hd*level]=1)&\\n[ft*clear-at-header] .nr ft*nr 0 1
-.\"
-.\" check if it is time to reset indexes
-.if (\\n[hd*level]=1)&\\n[Sectf] \{\
-. nr lix*fg-nr 0 1
-. nr lix*tb-nr 0 1
-. nr lix*ec-nr 0 1
-. nr lix*ex-nr 0 1
-.\}
-.\"---------- user macro HZ ----------
-.if d HZ .HZ \\n[hd*level] \\n[hd*arg1] "\\$2\\$3"
-.nr hd*last-pos \\n[nl]
-.nr hd*last-hsize \\n[.k]
-.nr par@ind-flag 0
-.DEVTAG-EO-H \" HTML: end of heading
-..
-.\"--------
-.de HM
-.nr hd*i 0 1
-.while \\n+[hd*i]<15 .af H\\n[hd*i] \\$[\\n[hd*i]] 1
-..
-.\"----------------------
-.\" set page-nr, called from header
-.\"
-.de hd@set-page
-.\"
-.ie \\n[.$]>0 .nr P \\$1
-.el .nr P +1
-.\" Set section-page-string
-.ds hd*sect-pg \\n[H1]-\\n[P]
-.if \\n[Sectp]>1 .if '\\n[H1]'0' .ds hd*sect-pg "
-..
-.\"########### module pg ####################
-.\" set end of text trap
-.wh 0 pg@header
-.em pg@end-of-text
-.\"
-.ds pg*header ''- \\nP -''
-.ds pg*footer
-.if \n[N]=4 .ds pg*header ''''
-.if (\n[N]=3):(\n[N]=5) \{\
-. ds pg*header ''''
-. ds pg*footer ''\\*[hd*sect-pg]''
-.\}
-.ds pg*even-footer
-.ds pg*odd-footer
-.ds pg*even-header
-.ds pg*odd-header
-.\"
-.nr pg*top-margin 0
-.nr pg*foot-margin 0
-.nr pg*block-size 0
-.nr pg*footer-size 5v\" 1v+footer+even/odd footer+2v
-.nr pg*header-size 7v\" 3v+header+even/odd header+2v
-.nr pg*extra-footer-size 0
-.nr pg*extra-header-size 0
-.nr ft*note-size 0
-.nr pg*cur-column 0
-.nr pg*cols-per-page 1
-.nr pg*cur-po \n[@po]
-.nr pg*head-mark 0
-.\"
-.nr pg*ps \n[@ps]
-.nr pg*vs \n[@vs]
-.\"-------------------------
-.\" footer TRAPS: set, enable and disable
-.de pg@set-new-trap
-.nr pg*foot-trap \\n[@pl]u-(\\n[pg*block-size]u+\\n[ft*note-size]u+\\n[pg*foot-margin]u+\\n[pg*footer-size]u+\\n[pg*extra-footer-size]u)
-.\"
-.if \\n[D]>2 .tm pg*foot-trap \\n[@pl]u-(\\n[pg*block-size]u+\\n[ft*note-size]u+\\n[pg*foot-margin]u+\\n[pg*footer-size]u+\\n[pg*extra-footer-size]u) = \\n[pg*foot-trap]
-.\"
-.\" last-pos points to the position of the footer and bottom
-.\" block below foot-notes.
-.nr pg*last-pos \\n[@pl]u-(\\n[pg*block-size]u+\\n[pg*foot-margin]u+\\n[pg*footer-size]u+\\n[pg*extra-footer-size]u)
-.if \\n[D]>2 .tm pg*last-pos \\n[@pl]u-(\\n[pg*block-size]u+\\n[pg*foot-margin]u+\\n[pg*footer-size]u+\\n[pg*extra-footer-size]u) = \\n[pg*last-pos]
-..
-.de pg@enable-trap
-.\" Disable in HTML mode
-.if !'\*[.T]'html' \{\
-.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
-..
-.\" move to new trap (if changed).
-.de pg@move-trap
-.pg@disable-trap
-.pg@set-new-trap
-.pg@enable-trap
-..
-.de pg@enable-top-trap
-.\" set trap for pageheader.
-.nr pg*top-enabled 1
-..
-.de pg@disable-top-trap
-.\" remove trap for pageheader.
-.nr pg*top-enabled 0
-..
-.\" no header on the next page
-.de PGNH
-.nr pg*top-enabled (-1)
-..
-.\" set first trap for pagefooter
-.pg@enable-top-trap
-.pg@set-new-trap
-.pg@enable-trap
-.\"-------------------------
-.\" stop output and begin on next page. Fix footnotes and all that.
-.de pg@next-page
-.\".debug next-page
-.ne 999i \" activate trap
-.\" .pg@footer
-..
-.\"-------------------------
-.\" support for PX, TP and EOP.
-.als }t pg*header
-.als }e pg*even-header
-.als }o pg*odd-header
-.als TPh pg*header
-.als TPeh pg*even-header
-.als TPoh pg*odd-header
-.\"
-.als EOPf pg*footer
-.als EOPef pg*even-footer
-.als EOPof pg*odd-footer
-.\"------------------------------------------------------------
-.\" HEADER
-.de pg@header
-.\" Disable in HTML mode
-.if !'\*[.T]'html' \{\
-.if \\n[D]>1 .tm Page# \\n[%] (\\n[.F]:\\n[c.])
-.\" check if Hy has been changed
-.ie \\n[Hy] 'hy 14
-.el 'nh
-.if \\n[Idxf] \{\
-.tl '<pagenr\ \\n[%]>'''
-.\}
-.\" assign current page-number to P
-.hd@set-page
-.\" reset spacing
-.nr line*lp\\n[.z] 0
-.nr line*ac\\n[.z] 0
-.\"
-.\" suppress pageheader if pagenumber == 1 and N == [124]
-.if \\n[pg*top-enabled] \{\
-.\" must be fixed!!
-.\". pg@disable-top-trap
-. if \\n[pg*extra-header-size] 'sp \\n[pg*extra-header-size]u
-. if \\n[pg*top-margin] 'sp \\n[pg*top-margin]u
-. ev pg*tl-ev
-. pg@set-env
-. ie d let@header .let@header
-. el \{\
-. ie d TP .TP
-. el \{\
-' sp 3
-. ie ((\\n[%]=1)&((\\n[N]=1):(\\n[N]=2))) .sp
-. el .tl \\*[pg*header]
-. ie o .tl \\*[pg*odd-header]
-. el .tl \\*[pg*even-header]
-' sp 2
-. \}
-. \}
-. ev
-. \" why no-space??
-. if d PX \{\
-. ns
-. PX
-. rs
-. \}
-. \" check for pending footnotes
-. ft@check-old
-. \"
-. \" back to normal text processing
-. pg@enable-trap
-. \" mark for multicolumn
-. nr pg*head-mark \\n[nl]u
-. \" reset NCOL pointer at each new page.
-. nr pg*last-ncol 0
-. \" set multicolumn
-. \"
-. pg@set-po
-. \" print floating displays
-. df@print-float 4
-. tbl@top-hook
-. ns
-.\}
-.if \\n[pg*top-enabled]<0 .nr pg*top-enabled 1
-.nr hd*cur-bline \\n[nl] \" .H needs to know if output has occured
-.\}
-..
-.\"---------------------------------------------------------
-.\" FOOTER
-.de pg@footer
-.ec
-.if \\n[D]>2 .tm Footer# \\n[%] (\\n[.F]:\\n[c.]) nl=\\n[nl]
-.pg@disable-trap
-.\".debug footer
-.tbl@bottom-hook
-.\" increment pageoffset for MC
-.\" move to the exact start of footer.
-'sp |\\n[pg*foot-trap]u+1v
-.\"
-.if \\n[D]>3 .tm FOOTER after .sp, nl=\\n[nl]
-.\" print footnotes
-.if d ft*div .ft@print
-.\"
-.pg@inc-po
-.if !\\n[pg*cur-column] .pg@print-footer
-.\" next column
-.pg@set-po
-.pg@enable-trap
-.if \\n[@verbose-flag] .eo \" to help VERBON/VERBOFF
-..
-.\"-------------------------
-.de pg@print-footer
-.\" jump to the position just below the foot-notes.
-'sp |\\n[pg*last-pos]u+1v
-.if \\n[D]>3 .tm print-footer nl=\\n[nl]
-.\" check if there are any bottom block
-.if d pg*block-div .pg@block
-.\"
-.\" print the footer and eject new page
-.ev pg*tl-ev
-.pg@set-env
-.\" user defined end-of-page macro
-.ie d EOP .EOP
-.el \{\
-. ie o .tl \\*[pg*odd-footer]
-. el .tl \\*[pg*even-footer]
-. ie (\\n[%]=1)&(\\n[N]=1) .tl \\*[pg*header]
-. el .tl \\*[pg*footer]
-. tl ''\\*[Pg_type!\\n[@copy_type]]''
-.\}
-.ev
-.\" be sure that floating displays and footnotes will be
-.\" printed at the end of the document.
-.ie (\\n[df*fnr]>=\\n[df*o-fnr]):\\n[ft*exist] \{\
-. ev ne
-' bp
-. ev
-.\}
-.el 'bp
-..
-.\"-------------------------
-.\"
-.\" Initialize the title environment
-.de pg@set-env
-'na
-'nh
-'in 0
-'ti 0
-.ie \\n[Pgps] \{\
-. ps \\n[@ps]u
-. vs \\n[@vs]u
-.\}
-.el \{\
-. ps \\n[pg*ps]u
-. vs \\n[pg*vs]u
-.\}
-.lt \\n[@ll]u
-.ll \\n[@ll]u
-..
-.\"-------------------------
-.de PH
-.ds pg*header "\\$1
-.pg@set-new-size
-..
-.de PF
-.ds pg*footer "\\$1
-.pg@set-new-size
-..
-.de OH
-.ds pg*odd-header "\\$1
-.pg@set-new-size
-..
-.de EH
-.ds pg*even-header "\\$1
-.pg@set-new-size
-..
-.de OF
-.ds pg*odd-footer "\\$1
-.pg@set-new-size
-..
-.de EF
-.ds pg*even-footer "\\$1
-.pg@set-new-size
-..
-.de pg@clear-hd
-.ds pg*even-header
-.ds pg*odd-header
-.ds pg*header
-..
-.de pg@clear-ft
-.ds pg*even-footer
-.ds pg*odd-footer
-.ds pg*footer
-..
-.de pg@set-new-size
-.nr pg*ps \\n[@ps]
-.nr pg*vs \\n[@vs]
-.pg@move-trap
-..
-.\"-------------------------
-.\" end of page processing
-.de pg@footnotes
-.\".debug footnotes
-.\" output footnotes. set trap for block
-.\"
-..
-.\"-------------------------
-.\" print bottom block
-.de pg@block
-.ev pg*block-ev
-'nf
-'in 0
-.ll 100i
-.pg*block-div
-.br
-.ev
-..
-.\"-------------------------
-.\" define bottom block
-.de BS
-.misc@ev-keep pg*block-ev
-.init@reset
-.br
-.di pg*block-div
-..
-.\"-------------------------
-.de BE
-.br
-.di
-.nr pg*block-size \\n[dn]u
-.ev
-.pg@move-trap
-..
-.\"-------------------------
-.\" print out all pending text
-.de pg@end-of-text
-.if \\n[D]>2 .tm ---------- End of text processing ----------------
-.df@eot-print
-.ref@eot-print
-..
-.\"-------------------------
-.\" set top and bottom margins
-.\" -T sets pg*footer-size and pg*header-size instead
-.de VM
-.ie '\\$1'-T' \{\
-. shift
-. if \\n[.$]=0 \{\
-. nr pg*footer-size 5v
-. nr pg*header-size 7v
-. \}
-. if \\n[.$]>0 .nr pg*header-size (v;\\$1)
-. if \\n[.$]>1 .nr pg*footer-size (v;\\$2)
-.\}
-.el \{\
-. if \\n[.$]=0 \{\
-. nr pg*extra-footer-size 0
-. nr pg*extra-header-size 0
-. \}
-. if \\n[.$]>0 .nr pg*extra-header-size (v;\\$1)
-. if \\n[.$]>1 .nr pg*extra-footer-size (v;\\$2)
-. if \\n[D]>2 \{\
-. tm extra top \\n[pg*extra-footer-size]
-. tm extra bottom \\n[pg*extra-header-size]
-. \}
-.\}
-.pg@move-trap
-..
-.\"---------------------
-.\" multicolumn output.
-.de pg@set-po
-.if \\n[pg*cols-per-page]>1 \{\
-. ll \\n[pg*column-size]u
-.\}
-..
-.de pg@inc-po
-.if \\n[pg*cols-per-page]>1 \{\
-. ie \\n+[pg*cur-column]>=\\n[pg*cols-per-page] \{\
-. nr pg*cur-column 0 1
-. nr pg*cur-po \\n[@po]u
-. po \\n[@po]u
-. ll \\n[@ll]u
-. \}
-. el \{\
-. nr pg*cur-po +(\\n[pg*column-size]u+\\n[pg*column-sep]u)
-. po \\n[pg*cur-po]u
-' sp |\\n[pg*head-mark]u
-. tbl@top-hook
-. \}
-.\}
-..
-.\" An argument disables the page-break.
-.de 1C
-.br
-.if \\n[pg*cols-per-page]<=1 .@error "1C: multicolumn mode not active"
-.nr pg*cols-per-page 1
-.nr pg*column-sep 0
-.nr pg*column-size \\n[@ll]
-.nr pg*ncol-i \\n[pg*cur-column]\" temp variable
-.nr pg*cur-column 0 1
-.nr pg*cur-po \\n[@po]u
-.PGFORM
-.ie !'\\$1'1' .SK
-.el \{\
-. if d ft*div \{\
-. if \\n[pg*ncol-i]>0 \{\
-. @warning 1C: footnotes will be messy
-. \}
-. \}
-. if \\n[pg*last-ncol]>0 \{\
-. sp |\\n[pg*last-ncol]u
-. nr pg*last-ncol 0
-. \}
-.\}
-..
-.de 2C
-.br
-.nr pg*head-mark \\n[nl]u
-.if \\n[pg*cols-per-page]>1 .@error "2C: multicolumn mode already active"
-.nr pg*cols-per-page 2
-.nr pg*column-sep \\n[@ll]/15
-.nr pg*column-size (\\n[@ll]u*7)/15
-.nr pg*cur-column 0 1
-.nr pg*cur-po \\n[@po]u
-.ll \\n[pg*column-size]u
-.\" .lt \\n[pg*column-size]u
-..
-.\" MC column-size [ column-separation ]
-.de MC
-.br
-.nr pg*head-mark \\n[nl]u
-.if \\n[pg*cols-per-page]>1 .@error "MC: multicolumn mode already active"
-.ie ''\\$1' .nr pg*column-size \\n[.l]
-.el .nr pg*column-size (n;\\$1)
-.ie ''\\$2' .nr pg*column-sep \\n[pg*column-size]/15
-.el .nr pg*column-sep (n;\\$2)
-.\"
-.\" calculate the number of columns/page
-.nr pg*cols-per-page 0
-.nr pg*i \\n[pg*column-size]
-.while \\n[pg*i]<=\\n[.l] \{\
-. nr pg*cols-per-page \\n[pg*cols-per-page]+1
-. nr pg*i \\n[pg*i]+\\n[pg*column-sep]+\\n[pg*column-size]
-.\}
-.nr pg*cur-column 0 1
-.nr pg*cur-po \\n[@po]u
-.ll \\n[pg*column-size]u
-.\" .lt \\n[pg*column-size]u
-..
-.\" begin a new column
-.de NCOL
-.br
-.if \\n[nl]>\\n[pg*last-ncol] .nr pg*last-ncol \\n[nl]
-.pg@footer
-..
-.\" skip pages
-.de SK
-.br
-.bp
-.nr pg*i 0 1
-.\" force new page by writing something invisible.
-.while \\n+[pg*i]<=(0\\$1) \{\
-\&
-. bp
-.\}
-..
-.\"-------------------------------
-.\" MULB width1 space1 width2 space2 width3 space3 ...
-.de MULB
-.br
-.nr pg*i 0 1
-.nr pg*mul-x 0 1
-.nr pg*mul-ind 0
-.nr pg*mul-last 0
-.while \\n[.$] \{\
-. nr pg*mul!\\n+[pg*i] (n;0\\$1)
-. nr pg*muls!\\n[pg*i] (n;0\\$2)
-. shift 2
-.\}
-.nr pg*mul-max-col \\n[pg*i]
-.ds pg*mul-fam \\n[.fam]
-.nr pg*mul-font \\n[.f]
-.ev pg*mul-ev
-.ps \\n[@ps]u
-.vs \\n[@vs]u
-.fam \\*[pg*mul-fam]
-.ft \\n[pg*mul-font]
-.fi
-.hy 14
-.di pg*mul-div
-.MULN
-..
-.\"-----------
-.de MULN
-.if \\n[pg*mul-x]>=\\n[pg*mul-max-col] .@error "MULN: Undefined columnwidth"
-.br
-.if \\n[.d]>\\n[pg*mul-last] .nr pg*mul-last \\n[.d]
-.rt +0
-.in \\n[pg*mul-ind]u
-.ll (u;\\n[.i]+\\n[pg*mul!\\n+[pg*mul-x]])u
-.nr pg*mul-ind +(u;\\n[pg*mul!\\n[pg*mul-x]]+\\n[pg*muls!\\n[pg*mul-x]])
-..
-.\"-----------
-.\" MULE
-.de MULE
-.br
-.if \\n[.d]>\\n[pg*mul-last] .nr pg*mul-last \\n[.d]
-.di
-.ev
-.ne \\n[pg*mul-last]u
-.nf
-.mk
-.pg*mul-div
-.rt
-.sp \\n[pg*mul-last]u
-.fi
-..
-.\"-----------
-.de OP
-.br
-.ie o .if !\\n[pg*head-mark]=\\n[nl] \{\
-. bp +1
-. bp +1
-.\}
-.el .bp
-..
-.\"########### module footnotes ###################
-.nr ft*note-size 0
-.nr ft*busy 0
-.nr ft*nr 0 1
-.nr ft*wide 0
-.nr ft*hyphen 0\" hyphenation value
-.nr ft*adjust 1\" >0 if adjust true
-.nr ft*indent 1\" >0 if text indent true (not imp. $$$)
-.nr ft*just 0\" 0=left justification, 1=right (not imp. $$$)
-.nr ft*exist 0\" not zero if there are any footnotes to be printed
-.nr ft*clear-at-header 0\" >0 if footnotes should be reset at first level head.
-.\"
-.ds F \v'-.4m'\s-3\\n+[ft*nr]\s0\v'.4m'
-.\"
-.\"-----------------
-.\" init footnote environment
-.de ft@init
-.\" indentcontrol not implemented $$$
-.\" label justification not implemented $$$
-'in 0
-'fi
-.ie \\n[ft*adjust] 'ad
-.el 'na
-.ie \\n[ft*hyphen] 'hy 14
-.el 'hy 0
-.ll \\n[@cur-ll]u
-.lt \\n[@cur-ll]u
-.ps (p;\\n[@ps]u-2)
-.vs (p;\\n[@vs]u-1)
-..
-.\"-----------------
-.\" set footnote format
-.\" no support for two column processing (yet). $$$
-.de FD
-.if \\n[.$]=0 .@error "FD: bad arg \\$1"
-.ie \\n[.$]=2 .nr ft*clear-at-header 1
-.el .nr ft*clear-at-header 0
-.\"
-.if !'\\$1'' \{\
-. ie \\$1>11 .nr ft*format 0
-. el .nr ft*format \\$1
-. \"
-. nr ft*hyphen (\\n[ft*format]%2)*14
-. nr ft*format \\n[ft*format]/2
-. \"
-. nr ft*adjust 1-(\\n[ft*format]%2)
-. nr ft*format \\n[ft*format]/2
-. \"
-. nr ft*indent 1-(\\n[ft*format]%2)
-. nr ft*format \\n[ft*format]/2
-. \"
-. nr ft*just \\n[ft*format]%2
-.\}
-..
-.\"---------------
-.\" Footnote and display width control $$$
-.de WC
-.nr ft*i 0 1
-.while \\n+[ft*i]<=\\n[.$] \{\
-. ds ft*x \\$[\\n[ft*i]]
-. if '\\*[ft*x]'N' \{\
-. nr ft*wide 0
-. nr ft*first-fn 0
-. nr ds*wide 0
-. nr ds*float-break 1
-. \}
-. if '\\*[ft*x]'-WF' .nr ft*wide 0
-. if '\\*[ft*x]'WF' .nr ft*wide 1
-. if '\\*[ft*x]'-FF' .nr ft*first-fn 0
-. if '\\*[ft*x]'FF' .nr ft*first-fn 1
-. if '\\*[ft*x]'-WD' \{\
-. nr ds*wide 0
-. if r ft*df-save \{\
-. nr Df \\n[ft*df-save]
-. rm ft*df-save
-. \}
-. \}
-. if '\\*[ft*x]'WD' \{\
-. nr ds*wide 1
-. nr ft*df-save \\n[Df]
-. nr Df 4
-. \}
-. if '\\*[ft*x]'-FB' .nr ds*float-break 0
-. if '\\*[ft*x]'FB' .nr ds*float-break 1
-. if \\n[D]>1 .tm WC WF=\\n[ft*wide] WD=\\n[ds*wide]
-.\}
-..
-.\"-----------------
-.\" begin footnote
-.\" Change environment, switch to diversion and print the foot-note mark.
-.de FS
-.if \\n[ft*busy] .@error "FS: missing FE"
-.nr ft*busy 1
-.ev ft*ev
-.ft@init
-.if !\\n[ft*wide] .pg@set-po
-.di ft*tmp-div
-.nr ft*space (u;\\n[Fs]*\\n[Lsp])
-.sp \\n[ft*space]u
-.\" print mark
-.ie \\n[.$] .ds ft*mark \\$1
-.el .ds ft*mark \\n[ft*nr].
-\\*[ft*mark]
-.in +.75c
-.sp -1
-.nr ft*exist 1
-..
-.\"-----------------
-.\" init footnote diversion
-.de ft@init-footnote
-.di ft*div
-\l'20n'
-.br
-.di
-.nr ft*note-size \\n[dn]
-..
-.\"-----------------
-.\" end footnote
-.\" End the diversion, back to previous environment, and adjust
-.\" the trap to the new foot-note size.
-.de FE
-.nr ft*busy 0
-.br
-.di
-'in 0
-'nf
-.if \\n[@pl]u<\\n[dn]u .@error "FE: too big footnote"
-.if !d ft*div .nr dn +1v
-.if \\n[D]>3 .tm FE: foot-trap=\\n[pg*foot-trap] .d=\\n[.d] dn=\\n[dn]
-.ie (\\n[pg*foot-trap]u-\\n[.d]u)<\\n[dn]u \{\
-. da ft*next-div
-. ft*tmp-div
-. br
-. di
-.\}
-.el \{\
-. if !d ft*div .ft@init-footnote
-. da ft*div
-. ft*tmp-div
-. di
-. nr ft*note-size +\\n[dn]
-.\}
-.rm ft*tmp-div
-.ev
-.pg@move-trap
-..
-.\"-----------------
-.\" print footnotes, see pg@footer
-.de ft@print
-.ev ft*print-ev
-'nf
-'in 0
-.ll 100i
-.ft*div
-.br
-.ev
-.rm ft*div
-.nr ft*note-size 0
-.pg@move-trap
-..
-.\"-----------------
-.\" check if any pending footnotes, see pg@header
-.de ft@check-old
-.if d ft*next-div \{\
-. ev ft*ev
-. ft@init
-. ft@init-footnote
-. nf
-. in 0
-. da ft*div
-. ft*next-div
-. di
-. nr ft*note-size +\\n[dn]
-. rm ft*next-div
-. ev
-. nr ft*exist 0
-. pg@move-trap
-.\}
-..
-.\"########### module display ###################
-.nr ds*wide 0\" >0 if wide displays wanted
-.nr df*fnr 0 1\" floating display counter
-.nr df*o-fnr 1\" floating display counter, already printed
-.nr ds*snr 0 1\" static display counter
-.nr ds*lvl 0 1\" display level
-.nr ds*float-busy 0\" >0 if printing float
-.nr df*float 0 >0 if previous display was floating
-.\"--------------------------------------------
-.de DE
-.ie \\n[df*float] .df@end \\$@
-.el .ds@end \\$@
-..
-.\"--------------------------------------------
-.\" floating display start
-.\" nested DF/DE is not allowed.
-.de DF
-.if \\n[df*float] .@error "DF:nested floating is not allowed. Use DS."
-.ds@set-format \\$@
-.\"
-.nr df*old-ll \\n[.l]
-.nr ds*ftmp \\n[.f]
-.misc@ev-keep df*ev
-.ft \\n[ds*ftmp]
-.\"
-.init@reset
-.di df*div
-'in 0
-.\"
-.ds@set-new-ev \\n[df*old-ll]
-.SP \\n[Lsp]u
-.nr df*float 1
-..
-.\"--------------------------------------------
-.de df@end
-.br
-.SP \\n[Lsp]u
-.di
-.nr df*width!\\n+[df*fnr] \\n[dl]
-.nr df*height!\\n[df*fnr] \\n[dn]
-.nr df*wide!\\n[df*fnr] \\n[ds*wide]
-.nr df*format!\\n[df*fnr] \\n[ds*format]
-.ev
-.if \\n[D]>2 .tm DF:fnr=\\n[df*fnr] w=\\n[dl] h=\\n[dn] wide=\\n[ds*wide] \
- form=\\n[ds*format]
-.\" move div to the floating display list
-.rn df*div df*fdiv!\\n[df*fnr]
-.\"
-.nr par@ind-flag 0
-.\" print float if queue is empty and the display fits into
-.\" the current page
-.if ((\\n[df*fnr]>=\\n[df*o-fnr])&(\\n[dn]<\\n[.t])) .df@print-float 1
-.nr df*float 0
-..
-.\"-------------
-.\" called by end-of-text
-.de df@eot-print
-.br
-.if \\n[df*o-fnr]<=\\n[df*fnr] \{\
-. if \\n[D]>2 .tm Print remaining displays.
-.\" still some floats left, make non-empty environment
-. misc@ev-keep ne
-. init@reset
-\c
-. df@print-float 3
-. ev
-.\}
-..
-.\"---------------
-.\" print according to Df and De.
-.\" .df@print-float type
-.\" type called from
-.\" 1 .DE
-.\" 2 end of section
-.\" 3 end of document
-.\" 4 beginning of new page
-.\"
-.de df@print-float
-.if \\n[Df]>5 .@error "Df=\\n[Df], max value is 5"
-.if !\\n[ds*float-busy] \{\
-. nr ds*float-busy 1
-.\" at .DE
-. if \\n[D]>3 .tm print-float: .t=\\n[.t], h=\\n[df*height!\\n[df*o-fnr]]
-. \" Df = 1 or 5
-. if (\\$1=1)&((\\n[Df]=1):(\\n[Df]=5)) \{\
-. if \\n[.t]>\\n[df*height!\\n[df*o-fnr]] \{\
-. \" Print only new displays.
-. if \\n[df*o-fnr]=\\n[df*fnr] \{\
-. br
-. ds@print-one-float
-. \}
-. \}
-. \}
-. \" Df = 3
-. if (\\$1=1)&(\\n[Df]=3) \{\
-. if \\n[.t]>\\n[df*height!\\n[df*o-fnr]] \{\
-. br
-. ds@print-one-float
-. \}
-. \}
-.\" print all if Df<2 and end of section
-. if (\\$1=2)&(\\n[Sectp]>0)&(\\n[Df]<2) \{\
-. br
-. ds@print-all-floats
-. \}
-.\" print all if end of document. Where should they go instead?
-. if \\$1=3 \{\
-. br
-. ds@print-all-floats
-.\}
-.\" new page
-. if (\\$1=4)&(\\n[Df]>1) \{\
-. if \\n[Df]=2 .ds@print-one-float
-. if \\n[Df]=3 .ds@print-one-float
-. if \\n[Df]>3 \{\
-. ie \\n[De] .ds@print-all-floats
-. el .ds@print-this-page
-. \}
-. \}
-. nr ds*float-busy 0
-.\}
-..
-.\"---------------
-.\" DF out
-.\" print a floating diversion
-.de ds@output-float
-.nr df*old-ll \\n[.l]
-.nr df*old-in \\n[.i]
-.ev ds*fev
-.nf
-.nr df*i \\n[df*o-fnr]
-.nr df*f \\n[df*format!\\n[df*i]]
-.\"
-.in \\n[df*old-in]u
-.if \\n[df*f]=1 'in +\\n[Si]n
-.if \\n[df*f]>=2 'in 0
-.if \\n[df*f]=2 'ce 9999
-.if \\n[df*f]=3 'in (u;(\\n[.l]-\\n[df*width!\\n[df*i]])/2)
-.if \\n[df*f]=4 'rj 9999
-.if \\n[df*f]=5 'in (u;\\n[.l]-\\n[df*width!\\n[df*i]])
-.\"
-.\"
-.df*fdiv!\\n[df*o-fnr]
-.\"
-.if \\n[df*f]=2 'ce 0
-.if \\n[df*f]=4 'rj 0
-.ev
-.rm df*fdiv!\\n[df*i]
-.rm df*height!\\n[df*i]
-.rm df*format!\\n[df*i]
-.if \\n[df*wide!\\n[df*i]] .nr pg*head-mark \\n[nl]u
-.nr df*o-fnr +1
-..
-.\"---------------
-.\" print one floating display if there is one.
-.de ds@print-one-float
-.if \\n[df*o-fnr]<=\\n[df*fnr] \{\
-. if \\n[D]>3 .tm print-one-float: .t=\\n[.t], h=\\n[df*height!\\n[df*o-fnr]]
-. if \\n[.t]<\\n[df*height!\\n[df*o-fnr]] .pg@next-page
-. ds@output-float
-. if \\n[De] .pg@next-page
-.\}
-..
-.\"---------------
-.\" print all queued floats.
-.\" if De>0 do a page eject between the floats.
-.de ds@print-all-floats
-.while \\n[df*o-fnr]<=\\n[df*fnr] \{\
-. if \\n[D]>3 .tm print-all-floats: .t=\\n[.t], h=\\n[df*height!\\n[df*o-fnr]]
-. if \\n[.t]<\\n[df*height!\\n[df*o-fnr]] .pg@next-page
-. br
-\c
-. ds@output-float
-. if \\n[De] .pg@next-page
-.\}
-..
-.\"---------------
-.\" print as many floats as will fit on the current page
-.de ds@print-this-page
-.while \\n[df*o-fnr]<=\\n[df*fnr] \{\
-. if \\n[D]>3 .tm print-this-page: .t=\\n[.t], h=\\n[df*height!\\n[df*o-fnr]]
-. if \\n[.t]<\\n[df*height!\\n[df*o-fnr]] .break
-. ds@output-float
-.\}
-..
-.\"---------------------------------------------------
-.\" get format of the display
-.de ds@set-format
-.ie \\n[.$] \{\
-. ie r ds*format!\\$1 .nr ds*format \\n[ds*format!\\$1]
-. el .@error "DS/DF:wrong format:\\$1"
-.\}
-.el .nr ds*format 0
-.if \\n[D]>2 .tm set format=\\n[ds*format]
-.\" fill or not to fill, that is the...
-.nr ds*fill 0
-.ie \\n[.$]>1 \{\
-. ie r ds*fill!\\$2 .nr ds*fill \\n[ds*fill!\\$2]
-. el .@error "\\*[ds*type]:wrong fill:\\$2"
-.\}
-.if \\n[D]>2 .tm set fill=\\n[ds*fill]
-.nr ds*rindent 0
-.if \\n[.$]>2 .nr ds*rindent \\$3
-.if \\n[D]>2 .tm set indent=\\n[ds*rindent]
-..
-.\"-----------------------------
-.\" .ds@set-new-ev previous-line-length
-.de ds@set-new-ev
-.ll \\$1u
-.lt \\$1u
-.if \\n[ds*rindent] \{\
-. ll -\\n[ds*rindent]n
-. lt -\\n[ds*rindent]n
-.\}
-.if \\n[ds*wide] \{\
-. ll \\n[@ll]u
-. lt \\n[@ll]u
-.\}
-.\"
-.ie \\n[ds*fill] 'fi
-.el 'nf
-..
-.\"--------------------------------------------------------
-.nr ds*format 0\" dummy value for .En/.EQ
-.nr ds*format! 0\" no indent
-.nr ds*format!0 0\" no indent
-.nr ds*format!L 0\" no indent
-.nr ds*format!I 1\" indent
-.nr ds*format!1 1\" indent
-.nr ds*format!C 2\" center each line
-.nr ds*format!2 2\" center each line
-.nr ds*format!CB 3\" center as block
-.nr ds*format!3 3\" center as block
-.nr ds*format!R 4\" right justify each line
-.nr ds*format!4 4\" right justify each line
-.nr ds*format!RB 5\" right justify as block
-.nr ds*format!5 5\" right justify as block
-.\"---------------
-.nr ds*fill! 0\" no fill
-.nr ds*fill!N 0\" no fill
-.nr ds*fill!0 0\" no fill
-.nr ds*fill!F 1\" fill on
-.nr ds*fill!1 1\" fill on
-.\"--------------------------------------------
-.\" static display start
-.\" nested DS/DE is allowed. No limit on depth.
-.de DS
-.br
-.nr XXX \\n[nl]
-.nr ds*lvl +1
-.ds@set-format \\$@
-.\"
-.nr ds*old-ll \\n[.l]
-.nr ds*old-in \\n[.i]
-.misc@push ds-ll \\n[.l]
-.misc@push ds-form \\n[ds*format]
-.nr ds*i \\n[.i]
-.nr ds*ftmp \\n[.f]
-.misc@ev-keep ds*ev!\\n+[ds*snr]
-.ft \\n[ds*ftmp]
-.\"
-.init@reset
-.\" indent in a diversion doesn't seem like a good idea.
-'in 0
-.di ds*div!\\n[ds*snr]
-.\"
-.ds@set-new-ev \\n[ds*old-ll]
-.nr df*float 0
-..
-.\"--------------------------------------------
-.de ds@end
-.if \\n-[ds*lvl]<0 .@error "DE: no corresponding DS"
-.br
-.di
-.\" **********
-.nr ds*width \\n[dl]
-.nr ds*height \\n[dn]
-.misc@pop-nr ds-ll ds*old-ll
-.misc@pop-nr ds-form ds*format
-.\"
-.\" **********
-'nf
-.\" calculate needed space
-.nr ds*need \\n[ds*height]
-.nr ds*i \\n[pg*foot-trap]-\\n[pg*header-size]u-\\n[pg*extra-header-size]u
-.if (\\n[ds*height]>\\n[ds*i])&(\\n[.t]<(\\n[ds*i]/2)) .nr ds*need \\n[.t]u+1v
-.if (\\n[ds*height]<\\n[ds*i])&(\\n[.t]<(\\n[ds*height])) .nr ds*need \\n[.t]u+1v
-.\" Eject page if display will fit one page and
-.\" there are less than half of the page left.
-.if \\n[ds*need] .ne \\n[ds*need]u
-.\"
-.\" check if pending equation label
-.eq@check \\n[ds*need]
-'in \\n[ds*old-in]u
-.if \\n[ds*format]=1 'in \\n[ds*old-in]u+\\n[Si]n
-.if \\n[ds*format]>=2 'in 0
-.if \\n[ds*format]=2 'ce 9999
-.if \\n[ds*format]=3 'in (u;(\\n[.l]-\\n[ds*width])/2)
-.if \\n[ds*format]=4 'rj 9999
-.if \\n[ds*format]=5 'in (u;\\n[.l]-\\n[ds*width])
-.\" **********
-.\"
-.\" Print static display
-.nr ds*i \\n[Lsp]
-.if r Dsp .nr ds*i \\n[Dsp]
-.\"
-.if \\n[Ds] .sp \\n[ds*i]u
-.ds*div!\\n[ds*snr]
-.if \\n[Ds] .sp \\n[ds*i]u
-.\"
-.if \\n[ds*format]=2 'ce 0
-.if \\n[ds*format]=4 'rj 0
-.rm ds*div!\\n[ds*snr]
-.nr ds*snr -1
-.nr par@ind-flag 0
-.ev
-..
-.\"########### module list ###################
-.\" .LI text-indent mark-indent pad type [mark [LI-space [LB-space] ] ]
-.\"
-.nr li*tind 0
-.nr li*mind 0
-.nr li*pad 0
-.nr li*type 0
-.ds li*mark 0
-.nr li*li-spc 0
-.nr li*lvl 0 1
-.aln :g li*lvl
-.nr li*cur-vpos 0
-.\"--------------------------
-.\" the major list-begin macro.
-.\" If type == -1 a 'break' will occur.
-.de LB
-.if \\n[.$]<4 .@error "LB: not enough arguments, min 4"
-.misc@push cind \\n[.i]
-.misc@push tind \\n[li*tind]
-.misc@push mind \\n[li*mind]
-.misc@push pad \\n[li*pad]
-.misc@push type \\n[li*type]
-.misc@push li-spc \\n[li*li-spc]
-.ds li*mark-list!\\n[li*lvl] \\*[li*mark]
-.nr li*lvl +1
-.\"
-.nr li*tind (n;0\\$1)\" text-indent
-.nr li*mind (n;0\\$2)\" mark-indent
-.nr li*pad (n;0\\$3)\" pad
-.nr li*type 0\\$4\" type
-.ds li*mark \\$5\" mark
-.ie !'\\$6'' .nr li*li-spc \\$6\" LI-space
-.el .nr li*li-spc 1
-.ie !'\\$7'' .nr li*lb-spc \\$7\" LB-space
-.el .nr li*lb-spc 0
-.\" init listcounter
-.nr li*cnt!\\n[li*lvl] 0 1
-.\" assign format
-.af li*cnt!\\n[li*lvl] 1
-.if \\n[li*type] .if !'\\*[li*mark]'' .af li*cnt!\\n[li*lvl] \\*[li*mark]
-.\"
-.if \\n[li*lb-spc] .SP (u;\\n[li*lb-spc]*\\n[Lsp])
-.in +\\n[li*tind]u
-..
-.\"---------------
-.de LI
-.if \\n[li*lvl]<1 .@error "LI:no lists active"
-.if \\n[li*li-spc]&(\\n[Ls]>=\\n[li*lvl]) .SP (u;\\n[li*li-spc]*\\n[Lsp])
-.ne 2v
-.\"
-.ds li*c-mark \\*[li*mark]
-.nr li*cnt!\\n[li*lvl] +1
-.if \\n[li*type]=1 .ds li*c-mark \\n[li*cnt!\\n[li*lvl]].
-.if \\n[li*type]=2 .ds li*c-mark \\n[li*cnt!\\n[li*lvl]])
-.if \\n[li*type]=3 .ds li*c-mark (\\n[li*cnt!\\n[li*lvl]])
-.if \\n[li*type]=4 .ds li*c-mark [\\n[li*cnt!\\n[li*lvl]]]
-.if \\n[li*type]=5 .ds li*c-mark <\\n[li*cnt!\\n[li*lvl]]>
-.if \\n[li*type]=6 .ds li*c-mark {\\n[li*cnt!\\n[li*lvl]]}
-.if \\n[.$]=1 .ds li*c-mark \\$1
-.ie \\n[.$]=2 \{\
-. ie (\\$2=2):(\\n[Limsp]=0) .ds li*c-mark \\$1\\*[li*c-mark]
-. el .ds li*c-mark \\$1\ \\*[li*c-mark]
-.\}
-.\"
-.\" determine where the text begins
-.nr li*text-begin \\n[li*tind]>?\w@\\*[li*c-mark]\ @
-.nr x \w@\\*[li*c-mark]\ @
-.\"
-.\" determine where the mark begin
-.ie !\\n[li*pad] .nr li*in \\n[li*mind]
-.el .nr li*in \\n[li*text-begin]-\\n[li*pad]-\w@\\*[li*c-mark]@
-.if !\\n[li*in] .nr li*in 0
-.\"
-.ti -\\n[li*tind]u
-.\" no indentation if hanging indent
-.if (\w@\\*[li*c-mark]@=0)&((\\n[.$]=0):(\w@\\$1@=0)) .nr li*text-begin 0
-\Z'\&\h'\\n[li*in]u'\\*[li*c-mark]'\h'\\n[li*text-begin]u'\&\c
-.if \\n[li*type]=-1 .br
-..
-.\"
-.\"-------------
-.de li@pop
-.nr li*lvl -1
-.misc@pop-nr cind li*tmp
-.in \\n[li*tmp]u
-.misc@pop-nr tind li*tind
-.misc@pop-nr mind li*mind
-.misc@pop-nr pad li*pad
-.misc@pop-nr type li*type
-.misc@pop-nr li-spc li*li-spc
-.ds li*mark \\*[li*mark-list!\\n[li*lvl]]
-..
-.de LE
-.if \\n[li*lvl]<1 .@error "LE:mismatched"
-.li@pop
-.if '\\$1'1' .SP \\n[Lsp]u
-..
-.\"-------------
-.\" list status clear.
-.\" terminate all lists to level i
-.de LC
-.ie \\n[.$]<1 .nr li*i 0
-.el .nr li*i \\$1
-.if \\n[li*i]>\\n[li*lvl] .@error "LC: incorrect argument: \\n[li*i] (too big)"
-.while \\n[li*lvl]>\\n[li*i] .li@pop
-.nr par@ind-flag 0
-..
-.\"-------------
-.de AL
-.if \\n[.$]>3 .@error "AL: too many arguments"
-.if \\n[D]>2 .tm AL $*
-.ie \\n[.$]<=1 .LB \\n[Li] 0 2 1 "\\$1"
-.el \{\
-. ie \\n[.$]=2 .LB 0\\$2 0 2 1 "\\$1"
-. el \{\
-. ie !'\\$2'' .LB \\$2 0 2 1 "\\$1" 0 1
-. el .LB \\n[Li] 0 2 1 "\\$1" 0 1
-. \}
-.\}
-..
-.de ML
-.if \\n[.$]>3 .@error "ML: too many arguments"
-.if \\n[D]>2 .tm ML $*
-.nr li*ml-width \w@\\$1@u+1n
-.if \\n[.$]<2 .LB \\n[li*ml-width]u 0 1 0 "\\$1"
-.if \\n[.$]=2 .LB 0\\$2 0 1 0 "\\$1"
-.if \\n[.$]=3 \{\
-. ie '\\$2'' .LB \\n[li*ml-width]u 0 1 0 "\\$1" 0 1
-. el .LB \\n[Li] 0 1 0 "\\$1" 0 1
-.\}
-..
-.de VL
-.if \\n[D]>2 .tm VL $*
-.if \\n[.$]>3 .@error "VL: too many arguments"
-.if \\n[.$]<1 .@error "VL: missing text-indent"
-.ie \\n[.$]<3 .LB 0\\$1 0\\$2 0 0
-.el .LB 0\\$1 0\\$2 0 0 \& 0 1
-..
-.\" Bullet (for .BL)
-.de BL
-.if \\n[D]>2 .tm BL $*
-.ds BU \s-2\(bu\s0
-.if \\n[.$]>2 .@error "BL: too many arguments"
-.if \\n[.$]<1 .LB \\n[Pi] 0 1 0 \\*[BU]
-.if \\n[.$]=1 .LB 0\\$1 0 1 0 \\*[BU]
-.if \\n[.$]=2 \{\
-. ie '\\$1'' .LB \\n[Pi] 0 1 0 \\*[BU] 0 1
-. el .LB 0\\$1 0 1 0 \\*[BU] 0 1
-.\}
-..
-.de DL
-.if \\n[D]>2 .tm DL $*
-.if \\n[.$]>2 .@error "DL: too many arguments"
-.if \\n[.$]<1 .LB \\n[Pi] 0 1 0 \(em
-.if \\n[.$]=1 .LB 0\\$1 0 1 0 \(em
-.if \\n[.$]=2 \{\
-. ie '\\$1'' .LB \\n[Pi] 0 1 0 \(em 0 1
-. el .LB 0\\$1 0 1 0 \(em 0 1
-.\}
-..
-.de RL
-.if \\n[D]>2 .tm RL $*
-.if \\n[.$]>2 .@error "RL: too many arguments"
-.if \\n[.$]<1 .LB 6 0 2 4
-.if \\n[.$]=1 .LB 0\\$1 0 2 4
-.if \\n[.$]=2 \{\
-. ie '\\$1'' .LB 6 0 2 4 1 0 1
-. el .LB 0\\$1 0 2 4 1 0 1
-.\}
-..
-.\" Broken Variable List. As .VL but text begin on the next line
-.de BVL
-.if \\n[D]>2 .tm BVL $*
-.if \\n[.$]>3 .@error "BVL: too many arguments"
-.if \\n[.$]<1 .@error "BVL: missing text-indent"
-.ie \\n[.$]<3 .LB 0\\$1 0\\$2 0 -1
-.el .LB 0\\$1 0\\$2 0 -1 \& 0 1
-..
-.\" ####### module tbl #######################################
-.\" This module is copied from groff_ms and modified for mgm.
-.\" Yes, it does not resemble the original anymore :-).
-.\" Don't know if I missed something important.
-.\" Groff_ms is written by James Clark.
-.nr tbl*have-header 0
-.nr tbl*header-written 0
-.de TS
-.br
-.if ''\\n[.z]' .SP
-.if '\\$1'H' .di tbl*header-div
-..
-.de tbl@top-hook
-.if \\n[tbl*have-header] \{\
-. ie \\n[.t]-\\n[tbl*header-ht]-1v .tbl@print-header
-. el .sp \\n[.t]u
-.\}
-..
-.de tbl@bottom-hook
-.if \\n[tbl*have-header] \{\
-. nr T. 1
-.\" draw bottom and side lines of boxed tables.
-. T#
-.\}
-.nr tbl*header-written 0
-..
-.de tbl@print-header
-.ev tbl*ev
-'nf
-.tbl*header-div
-.ev
-.mk #T
-.nr tbl*header-written 1
-..
-.de TH
-.ie '\\n[.z]'tbl*header-div' \{\
-. nr T. 0
-. T#
-. br
-. di
-. nr tbl*header-ht \\n[dn]
-. ne \\n[dn]u+1v
-. nr tbl*have-header 1
-. ie '\\$1'N' .if !\\n[tbl*header-written] .tbl@print-header
-. el .tbl@print-header
-.\}
-.el .@error ".TH without .TS H"
-..
-.de TE
-.ie '\\n(.z'tbl*header-div' .@error ".TS H but no .TH before .TE"
-.el \{\
-. nr tbl*have-header 0
-.\}
-.\" reset tabs
-.TAB
-..
-.de T&
-..
-.\" ####### module pic #######################################
-.de PS
-.nr pic*in 0
-.br
-.SP .5
-.ie \\n[.$]<2 .@error "PS: bad arguments. Probably not processed with pic."
-.el \{\
-. if !\\n[ds*lvl] .ne (u;\\$1)+1v
-.\" should be contained between .DS/.DE
-.if r ds*format \{\
-. if \\n[ds*lvl]&((\\n[ds*format]=2):(\\n[ds*format]=3)) \{\
-. nr pic*in \\n[.i]
-.\" . in +(u;\\n[.l]-\\n[.i]-\\$2/2)
-. \}
-. \}
-.\}
-..
-.de PE
-.init@reset
-.SP .5
-..
-.\" ####### module eq #######################################
-.\"
-.nr eq*number 0 1
-.ds eq*label
-.de EQ
-.ds eq*label "\\$1
-..
-.de eq@check
-.if !'\\*[eq*label]'' \{\
-. mk
-. \" space down to middle of equation
-' sp (u;\\$1/2)
-. ie (\\n[Eq]%2) \{\
-. \" label to the left
-\h'|0'\\*[eq*label]
-. \}
-. el \{\
-. \" label to the right
-\h'|\\n[.l]u'\\*[eq*label]
-. \}
-. rt
-.\}
-.ds eq*label
-..
-.de EN
-..
-.\"########### module toc ###################
-.\" table of contents
-.nr toc*slevel 1
-.nr toc*spacing \n[Lsp]u
-.nr toc*tlevel 2
-.nr toc*tab 0
-.\"-----------
-.\" Table of contents with friends (module lix)
-.de TC
-.br
-.\" print any pending displays and references
-.df@print-float 3
-.if \\n[ref*flag] .RP 0 1
-.\"
-.if \w@\\$1@>0 .nr toc*slevel \\$1
-.if \w@\\$2@>0 .nr toc*spacing (u;\\$2*\\n[Lsp])
-.if \w@\\$3@>0 .nr toc*tlevel \\$3
-.if \w@\\$4@>0 .nr toc*tab \\$4
-.if \\n[pg*cols-per-page]>1 .1C
-.ds H1txt \\*[Licon]
-.ds Tcst co
-.pg@clear-hd
-.EF ""
-.OF ""
-.pg@next-page
-.\"-------------
-.if d Ci .toc@read-Ci \\*[Ci]
-.nf
-.in 0
-.ie \\n[Oc] .hd@set-page 1
-.el \{\
-. nr toc*pn 1 1
-. af toc*pn i
-. aln ;g toc*pn
-. PF "''\\\\\\\\n[toc*pn]''"
-. am pg@header
-. nr toc*pn +1
-\\..
-.\}
-.nr toc*i 4 1
-.while \\n+[toc*i]<10 \{\
-. if !'\\$\\n[toc*i]'' \{\
-. ce
-\\$\\n[toc*i]
-. br
-. \}
-.\}
-.if \\n[.$]<=4 .if d TX .TX
-.ie d TY .if \\n[.$]<=4 .TY
-.el \{\
-. ce
-\\*[Licon]
-. br
-. SP 3
-.\}
-.if d toc*list .toc*list
-.br
-.\" print LIST OF XXX
-.if d lix*dsfg .lix@print-ds fg FG "\\*[Lf]" \\n[.$]
-.if d lix*dstb .lix@print-ds tb TB "\\*[Lt]" \\n[.$]
-.if d lix*dsec .lix@print-ds ec EC "\\*[Le]" \\n[.$]
-.if d lix*dsex .lix@print-ds ex EX "\\*[Lx]" \\n[.$]
-..
-.\"-----------
-.\" .toc@read-Ci lev1 lev2 lev3 lev4 ... lev7
-.de toc@read-Ci
-.nr toc*i 0 1
-.while \\n+[toc*i]<15 \{\
-. nr toc*hl!\\n[toc*i] \\$[\\n[toc*i]]
-.\}
-..
-.\"-----------
-.de toc@entry
-.ie \\n[Sectp] \{\
-. toc@save \\$1 "\\*[hd*mark]" "\\$2" \\*[hd*sect-pg]
-.\}
-.el .toc@save \\$1 "\\*[hd*mark]" "\\$2" \\n[%]
-..
-.als )E toc@entry
-.\"-----------
-.de toc@save
-.\" collect maxsize of mark if string Ci don't exist.
-.if !d Ci \{\
-. if !r toc*hl!\\$1 .nr toc*hl!\\$1 0
-. if \\n[toc*hl!\\$1]<=\w@\\$2@ \{\
-. nr toc*hl!\\$1 \w@\\$2@u
-. \}
-.\}
-.am toc*list
-.\" .toc@set level headernumber text pagenr
-.toc@set \\$1 "\\$2" "\\$3" \\$4
-\\..
-..
-.\"-----------
-.\" level mark text pagenumber
-.de toc@set
-.if \\$1<=\\n[toc*slevel] .SP \\n[toc*spacing]u
-.na
-.fi
-.nr toc*ind 0
-.nr toc*i 0 1
-.ie d Ci \{\
-. nr toc*ind +\\n[toc*hl!\\$1]u
-.\}
-.el \{\
-. while \\n+[toc*i]<\\$1 \{\
-. nr toc*ind +\\n[toc*hl!\\n[toc*i]]u
-. \}
-.\}
-.nr toc*text \\n[toc*ind]u+\\n[toc*hl!\\$1]u
-.in \\n[toc*text]u
-.ti -\\n[toc*hl!\\$1]u
-.\"
-.\" length of headernum space
-.nr toc*i \\n[toc*hl!\\$1]-\w@\\$2@
-.\"
-.ll \\n[@ll]u-\w@\\$4@u-2m
-.ne 2v
-.\" ragged right ---------------------------------
-.ie \\$1>\\n[toc*tlevel] \{\
-\\$2
-. sp -1
-\\$3\ \ \ \\$4
-. br
-.\}
-.el \{\
-. \" unnumbered heading --------------------
-. ie '\\$2'' \{\
-. in \\n[toc*ind]u
-\\$3\h'1m'
-. \}
-. \" normal heading ------------------------
-. el \{\
-\\$2
-. sp -1
-\\$3\h'1m'
-. \}
-. ll \\n[@ll]u
-. sp -1
-. nr toc*sep (u;\\n[.l]-\\n[.n]-\\n[.i]-\w@\\$4@)-1m
-\h'|\\n[.n]u'\l'\\n[toc*sep]u.'\h'1m'\\$4
-.\}
-.ll \\n[@ll]u
-..
-.\"########################### module lix ############################
-.\" LIST OF figures, tables, exhibits and equations
-.nr lix*fg-nr 0 1
-.nr lix*tb-nr 0 1
-.nr lix*ec-nr 0 1
-.nr lix*ex-nr 0 1
-.aln Fg lix*fg-nr
-.aln Tb lix*tb-nr
-.aln Ec lix*ec-nr
-.aln Ex lix*ex-nr
-.\"------------
-.de FG
-.lix@print-line fg Lf \\n+[lix*fg-nr] "\\$1" "\\$2" "\\$3" "\\$4"
-..
-.de TB
-.lix@print-line tb Lt \\n+[lix*tb-nr] "\\$1" "\\$2" "\\$3" "\\$4"
-..
-.de EC
-.lix@print-line ec Le \\n+[lix*ec-nr] "\\$1" "\\$2" "\\$3" "\\$4"
-..
-.de EX
-.lix@print-line ex Lx \\n+[lix*ex-nr] "\\$1" "\\$2" "\\$3" "\\$4"
-..
-.\"------------
-.\" print line with 'figure' in the text
-.\" type stringvar number text override flag refname
-.de lix@print-line
-.ds lix*text "\\$4
-.\"
-.ie \\n[Sectf] .ds lix*numb \\n[H1]-\\$3
-.el .ds lix*numb \\$3
-.\"
-.ie !\\n[Of] .ds lix*ds-form .\ \ \"
-.el .ds lix*ds-form "\ \(em\ \"
-.nr lix*in \\n[.i]
-.ds lix*label \\*[Li\\$1]\ \\*[lix*numb]\\*[lix*ds-form]
-.if !'\\$5'' \{\
-. if !0\\$6 .ds lix*label \\*[Li\\$1]\ \\$5\\*[lix*numb]\\*[lix*ds-form]
-. if 0\\$6=1 .ds lix*label \\*[Li\\$1]\ \\*[lix*numb]\\$5\\*[lix*ds-form]
-. if 0\\$6=2 .ds lix*label \\*[Li\\$1]\ \\$5\\*[lix*ds-form]
-.\}
-.\" print line if not between DS/DE
-.ie \\n[ds*lvl]<1&\\n[df*float]=0 \{\
-. lix@print-text "\\*[lix*label]" "\\*[lix*text]" \\$1 \\$2 \\$7
-.\}
-.el \{\
-. lix@embedded-text "\\*[lix*label]" "\\*[lix*text]" \\$1 \\$2 \\$7
-.\}
-.\"
-..
-.\"-----------
-.\" label text type stringvar refname
-.de lix@print-text
-.ie \\n[Sectp] .ds lix*pgnr \\*[hd*sect-pg]
-.el .ds lix*pgnr \\n[%]
-.SP \\n[Lsp]u
-.misc@ev-keep lix
-.init@reset
-.br
-.ie (\w@\\$1\\$2@)>(\\n[.l]-\\n[.i]) \{\
-. in +\w@\\$1@u
-. ti 0
-.\}
-.el .ce 1
-\fB\\$1\fP\\$2
-.br
-.ev
-.\" save line for LIST OF XXX, wth is the width of the label
-.if !r lix*wth\\$3 .nr lix*wth\\$3 0
-.\" find the maximum width
-.if \w@\\*[lix*label]@>\\n[lix*wth\\$3] .nr lix*wth\\$3 \w@\\*[lix*label]@
-.if \\n[\\$4] .lix@ds-save \\$3 \\*[lix*pgnr] "\\*[lix*text]" "\\*[lix*label]"
-.\" save reference to the figure
-.if !'\\$5'' .SETR \\$5 \\*[lix*numb]
-..
-.\" hide printout until diversion is evaluated
-.de lix@embedded-text
-\!.ie \\\\n[Sectp] .ds lix*pgnr \\\\*[hd*sect-pg]
-\!.el .ds lix*pgnr \\\\n[%]
-\!.SP \\\\n[Lsp]u
-\!.misc@ev-keep lix
-\!.ll \\n[.l]u
-\!.init@reset
-\!.fi
-\!.ie (\w@\\$1\\$2@)>(\\\\n[.l]-\\\\n[.i]) \{\
-. in +\w@\\$1@u
-\!. ti 0
-\!\fB\\$1\fP\\$2
-\!.\}
-\!.el \{\
-. ce 1
-\!\fB\\$1\fP\\$2
-\!.\}
-\!.br
-\!.ev
-.\" save line for LIST OF XXX, wth is the width of the label
-\!.if !r lix*wth\\$3 .nr lix*wth\\$3 0
-.\" find the maximum width
-\!.if \w@\\*[lix*label]@>\\\\n[lix*wth\\$3] .nr lix*wth\\$3 \w@\\*[lix*label]@
-\!.if \\\\n[\\$4] .lix@ds-save \\$3 \\\\*[lix*pgnr] "\\*[lix*text]" "\\*[lix*label]"
-.\" save reference to the figure
-\!.if !'\\$5'' .SETR \\$5 \\*[lix*numb]
-..
-.\"------------
-.\" print complete list of XXXX
-.de lix@print-ds
-.\" arg: fg,tb,ec,ex text
-.ds H1txt \\$3
-.ds Tcst \\$1
-.if !\\n[Cp] .pg@next-page
-.\" print LIST OF XXXX
-.\" execute user-defined macros
-.if \\$4<=4 .if d TX\\$2 .TX\\$2
-.ie d TY\\$2 .if \\$4<=4 .TY\\$2
-.el \{\
-. ce
-\\$3
-. SP 3
-.\}
-.in \\n[lix*wth\\$1]u
-.fi
-.lix*ds\\$1
-..
-.\"------------
-.\" save line of list in macro
-.de lix@ds-save
-.\" type pagenumber text
-.am lix*ds\\$1
-.lix@dsln \\$1 \\$2 "\\$3" "\\$4" \\$5
-\\..
-..
-.\"------------
-.\" print appended macro
-.\" lix@dsln type pagenumber text headernr
-.de lix@dsln
-.nr lix*i \\n[lix*wth\\$1]-\w@\\$4@
-.ne 4v
-.ll \\n[@ll]u-\w@\\$4@u-\w@\\$2@u-2m
-.ti -\\n[lix*wth\\$1]u
-\\$4
-.sp -1
-\\$3\h'1m'
-.sp -1
-.ll
-.nr lix*sep (u;\\n[.l]-\\n[.n]-\\n[.i]-\w@\\$2@)-1m
-\h'|\\n[.n]u'\l'\\n[lix*sep]u.'\h'1m'\\$2
-.SP \\n[toc*spacing]u
-..
-.\"########################### module fnt ############################
-.\" some font macros.
-.de R
-.ft R
-.ul 0
-..
-.\"-----------
-.de fnt@switch
-.ul 0
-.ds fnt*tmp
-.nr fnt*prev \\n[.f]
-.nr fnt*i 2 1
-.while \\n+[fnt*i]<=\\n[.$] \{\
-. if \\n[fnt*i]>3 .as fnt*tmp \,
-. ie (\\n[fnt*i]%2)=1 .as fnt*tmp \\$1\\$[\\n[fnt*i]]
-. el .as fnt*tmp \\$2\\$[\\n[fnt*i]]
-. if \\n[fnt*i]<\\n[.$] .as fnt*tmp \/
-.\}
-\&\\*[fnt*tmp]\f[\\n[fnt*prev]]
-..
-.\"-----------
-.de B
-.ie \\n[.$] .fnt@switch \fB \f[\\n[.f]] \\$@
-.el .ft B
-..
-.de I
-.ie \\n[.$] .fnt@switch \fI \f[\\n[.f]] \\$@
-.el .ft I
-..
-.de IB
-.if \\n[.$] .fnt@switch \fI \fB \\$@
-..
-.de BI
-.if \\n[.$] .fnt@switch \fB \fI \\$@
-..
-.de IR
-.if \\n[.$] .fnt@switch \fI \fR \\$@
-..
-.de RI
-.if \\n[.$] .fnt@switch \fR \fI \\$@
-..
-.de RB
-.if \\n[.$] .fnt@switch \fR \fB \\$@
-..
-.de BR
-.if \\n[.$] .fnt@switch \fB \fR \\$@
-..
-.\"########################### module box ############################
-.\" draw a box around some text. Text will be kept on the same page.
-.\"
-.nr box*ll 0
-.\" .B1 and .B2 works like .DS
-.de B1
-.if \\n[box*ll] .@error "B1: missing B2"
-.nr box*ll \\n[.l]
-.nr box*ind \\n[.i]
-.nr box*hyp \\n[.hy]
-.nr box*wid \\n[.l]-\\n[.i]
-.\"
-.\" jump to new environment.
-.ev box*ev
-.di box*div
-.ps \\n[@ps]u
-.vs \\n[@vs]u
-.in 1n
-.ll (u;\\n[box*wid]-1n)
-.hy \\n[.hy]
-..
-.de B2
-.if !\\n[box*ll] .@error "B2: missing B1"
-.br
-.di
-.nr box*height \\n[dn]
-.ne \\n[dn]u+1v
-.ll \\n[box*ll]u
-.in \\n[box*ind]u
-.nr box*y-pos \\n[.d]u
-.nf
-.box*div
-.fi
-\v'-1v+.25m'\
-\D'l \\n[box*wid]u 0'\
-\D'l 0 -\\n[box*height]u'\
-\D'l -\\n[box*wid]u 0'\
-\D'l 0 \\n[box*height]u'
-.br
-.sp -1
-.ev
-.sp .20v
-.in \\n[box*ind]u
-.ll \\n[box*ll]u
-.rm box*div
-.nr box*ll 0
-..
-.\"########################### module ref ############################
-.nr ref*nr 0 1
-.aln :R ref*nr
-.nr ref*nr-width 5n
-.nr ref*flag 0 \" for end-of-text
-.ds Rf \v'-.4m'\s-3[\\n+[ref*nr]]\s0\v'.4m'
-.\"
-.\" start reference
-.\"------------
-.de RS
-.if !''\\$1' .ds \\$1 \v'-.4m'\s-3[\\n[ref*nr]]\s0\v'.4m'
-.nr ref*flag 1
-.am ref*mac
-.ref@start-print \\n[ref*nr]
-\\..
-.eo
-.am ref*mac RF
-..
-.\"------------
-.de RF
-.ec
-.am ref*mac
-.ref@stop-print
-\\..
-..
-.\"------------
-.de ref@start-print
-.di ref*div
-.in \\n[ref*nr-width]u
-.ti -(\w@\\$1.@u+1n)
-\\$1.
-.sp -1
-..
-.de ref@stop-print
-.br
-.di
-.ne \\n[dn]u
-.ev ref*ev2
-.nf
-.ref*div
-.ev
-.rm ref*div
-.if \\n[Ls] .SP \\n[Lsp]u
-..
-.\"-----------
-.de RP
-.if !d ref*mac .@error "RP: No references!"
-.nr ref*i 0\\$2
-.if \\n[ref*i]<2 .SK
-.SP 2
-.ref@print-refs
-.if 0\\$1<1 .nr ref*nr 0 1
-.if ((\\n[ref*i]=0):(\\n[ref*i]=2)) .SK
-..
-.\"-----------
-.\" called by end-of-text!
-.de ref@eot-print
-.\".if \\n[ref*flag] \{
-.if d ref*mac \{\
-. if \\n[D]>2 .tm Print references, called by eot
-. nr ref*flag 0
-. br
-. misc@ev-keep ne
-. init@reset
-\c
-' bp
-. ev
-. ref@print-refs
-.\}
-..
-.\"-----------
-.\" prints the references
-.de ref@print-refs
-.toc@save 1 "" "\\*[Rp]" \\n[%]
-.ce
-\fI\\*[Rp]\fP
-.sp
-.nr ref*ll \\n[.l]
-.misc@ev-keep ref*ev
-.ll \\n[ref*ll]u
-.in 0
-.ref*mac
-.in
-.rm ref*mac
-.ev
-.nr ref*flag 0 1
-..
-.\"########################### module app ############################
-.\"
-.nr app*nr 0 1
-.af app*nr A
-.nr app*dnr 0 1
-.nr app*flag 0
-.\"------------
-.\" .APP name text
-.\" name == "" -> autonumber
-.de APP
-.\" .if \\n[.$]<2 .@error "APP: too few arguments"
-.app@set-ind "\\$1"
-.\"
-.ds Tcst ap
-.ds Apptxt \\$2
-.\"
-.ie \\n[Aph] .app@header \\*[app*ind] "\\$2"
-.el .bp
-.app@index "\\*[app*ind]" "\\$2"
-..
-.\"------------
-.\" .APPSK name pages text
-.\" name == "" -> autonumber
-.de APPSK
-.if \\n[.$]<2 .@error "APPSK: too few arguments"
-.app@set-ind "\\$1"
-.\"
-.ds Tcst ap
-.ds Apptxt \\$3
-.\"
-.ie \\n[Aph] .app@header \\*[app*ind] "\\$3"
-.el .bp
-.app@index "\\*[app*ind]" "\\$3"
-.pn +\\$2
-..
-.\"------------
-.de app@set-ind
-.ie \w@\\$1@ .ds app*ind \\$1
-.el \{\
-. if !\\n[app*flag] \{\
-. nr H1 0 1
-. af H1 A
-. af H1h A
-. nr app*flag 1
-. \}
-. ds app*ind \\n+[app*nr]
-. nr H1 \\n+[app*dnr]
-. nr H1h \\n[app*dnr]
-.\}
-.\" clear lower counters
-.nr app*i 1 1
-.while \\n+[app*i]<15 .nr H\\n[app*i] 0 1
-..
-.\"------------
-.de app@index
-.toc@save 1 "" "\\*[App] \\$1: \\$2" \\n[%]
-..
-.\"------------
-.\" app@heaer name text
-.de app@header
-.bp
-.SP (u;\\n[Lsp]*4)
-.ce 1
-\s+4\fB\\*[App]\ \\$1\fP\s0
-.SP (u;\\n[Lsp]*2)
-.if \w@\\$2@<\\n[.l] .ce 1
-\fB\s+2\\$2\s0\fP
-.SP (u;\\n[Lsp]*4)
-..
-.als APPX app@header
-.\"########################### module cov ############################
-.\" title stored in diversion cov*title
-.\" abstract stored in diversion cov*abstract
-.\" arg to abstract stored in cov*abs-arg
-.\" indent stored in cov*abs-ind
-.\" number of authors stored in cov*au
-.\" author(s) stored in cov*au!x!y
-.\" author(s) title stored in cov*at!x!y
-.\" x is the author-index [1-cov*au], y is the argument-index [1-9].
-.\" author(s) firm stored in cov*firm
-.\" new date (if .ND exists) is stored in cov*new-date
-.\"
-.\"
-.ds cov*abs-name ABSTRACT
-.\"
-.nr cov*au 0
-.de TL
-.rm IA IE WA WE LO LT
-.if \\n[.$]>0 .ds cov*title-charge-case \\$1
-.if \\n[.$]>1 .ds cov*title-file-case \\$2
-.pg@disable-top-trap
-.eo
-.de cov*title AU
-..
-.\"-------------------
-.de cov@title-end
-.ec
-..
-.\"-------------------
-.\" .AU name [initials [loc [dept [ext [room [arg [arg [arg]]]]]]]]
-.de AU
-.cov@title-end
-.pg@disable-top-trap
-.nr cov*au +1
-.nr cov*i 0 1
-.ds cov*au!\\n[cov*au]!1
-.while \\n[.$]>=\\n+[cov*i] \{\
-. ds cov*au!\\n[cov*au]!\\n[cov*i] "\\$[\\n[cov*i]]
-.\}
-.if (\\n[.$]>=3)&(\w@\\$3@) \{\
-. if d cov*location-\\$3] \{\
-. ds cov*au!3!\\n[cov*au] \\*[cov*location-\\$3]
-. \}
-.\}
-..
-.\"-------------------
-.\" .AT title1 [title2 [... [title9] ]]]]
-.\" Well, thats all that COVEND look for.
-.\" Must appear directly after .AU
-.de AT
-.if \\n[.$]<1 .@error "AT: no arguments"
-.nr cov*i 0 1
-.while \\n[.$]>=\\n+[cov*i] \{\
-. ds cov*at!\\n[cov*au]!\\n[cov*i] "\\$[\\n[cov*i]]
-.\}
-..
-.\"-------------------
-.de AF
-.cov@title-end
-.if !''\\$1' .ds cov*firm \\$1
-..
-.de AST
-.ds cov*abs-name \\$1
-..
-.de AS
-.pg@disable-top-trap
-.if d cov*abstract .@error "AS: only one abstract allowed"
-.if !''\\n[.z]' .@error "AS: no diversion allowed (previous .AS?)"
-.nr cov*abs-arg 0\\$1
-.nr cov*abs-ind (n;0\\$2)
-.de cov*abstract AE
-..
-.de AE
-..
-.\" 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
-.nr cov*i 0 1
-.while \\n[.$]>=\\n+[cov*i] .ds cov*mt-tm!\\n[cov*i] \\$[\\n[cov*i]]
-.nr cov*mt-tm-max \\n[.$]
-..
-.\"-----------------------
-.\" cover sheet
-.\" the file must have the following last lines (somewhere):
-.\" .pg@enable-top-trap
-.\" .bp 1
-.\" .pg@enable-trap
-.ds cov*mt-file!0 0.MT
-.ds cov*mt-file!1 0.MT
-.ds cov*mt-file!2 0.MT
-.ds cov*mt-file!3 0.MT
-.ds cov*mt-file!4 4.MT
-.ds cov*mt-file!5 5.MT
-.ds cov*mt-file!6 0.MT
-.\"------------
-.de MT
-.ie \\n[.$] \{\
-. ie d cov*mt-file!\\$1 .ds cov*mt-type \\$1
-. el .ds cov*mt-type 6
-.\}
-.el .ds cov*mt-type 1
-.ds cov*mt-addresse "\\$2
-.ds cov*mt-type-text "\\$1
-.ie d @language .ds cov*str mm/\\*[@language]_
-.el .ds cov*str mm/
-.mso \\*[cov*str]\\*[cov*mt-file!\\*[cov*mt-type]]
-..
-.de COVER
-.ie !\\n[.$] .ds cov*cov-type ms
-.el .ds cov*cov-type \\$1
-.pg@disable-top-trap
-.ie d @language .ds cov*str mm/\\*[@language]_\\*[cov*cov-type].cov
-.el .ds cov*str mm/\\*[cov*cov-type].cov
-.mso \\*[cov*str]
-..
-.\"########################### module qrf ############################
-.\" forward and backward reference thru special files.
-.\"
-.\" check if stderr-method is wanted
-.\" This was needed when I discovered that groff was considered unsafe
-.\" and groff -U didn't work. It's a workaround like the original
-.\" index method, but not in my view elegant enough.
-.\"
-.\" init reference system
-.de INITR
-.ds qrf*file \\$1.qrf
-.nr qrf*pass 2
-.if \\n[D]>1 .tm INITR: source \\*[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"
-.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
-. ds \\*[qrf*name]-hn \\*[hd*mark]
-. \" page-number
-. ds \\*[qrf*name]-pn \\n[%]
-. \"
-. if \\n[Ref] \{\
-. tm .ds \\*[qrf*name]-hn \\*[hd*mark]
-. tm .ds \\*[qrf*name]-pn \\n[%]
-. if !'\\$2'' .tm .ds \\*[qrf*name]-xx \\$2
-. \}
-.\}
-..
-.\"---------------
-.\" get misc-string
-.\" If two arg -> set var. arg to misc-string.
-.de GETST
-.if \\n[.$]<1 .@error "GETST:reference name missing"
-.if !r qrf*pass .tm "GETST: No .INITR in this file"
-.ds qrf*name qrf*ref-\\$1
-. if d \\*[qrf*name]-xx \{\
-. ie \\n[.$]>1 .ds \\$2 \\*[\\*[qrf*name]-xx]
-. el \\*[\\*[qrf*name]-xx]\c
-. \}
-.\}
-..
-.\"---------------
-.\" get header-number
-.\" If two arg -> set var. arg to header-number.
-.de GETHN
-.if \\n[.$]<1 .@error "GETHN:reference name missing"
-.if !r qrf*pass .tm "GETHN: No .INITR in this file"
-.ds qrf*name qrf*ref-\\$1
-.if d \\*[qrf*name]-hn \{\
-. ie \\n[.$]>1 .ds \\$2 \\*[\\*[qrf*name]-hn]
-. el \\*[\\*[qrf*name]-hn]\c
-.\}
-..
-.\"---------------
-.\" 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 \{\
-. ie \\n[.$]>1 .ds \\$2 \\*[\\*[qrf*name]-pn]
-. el \\*[\\*[qrf*name]-pn]\c
-.\}
-..
-.\"----------
-.de GETR
-.if \\n[.$]<1 .@error "GETR:reference name missing"
-.ie !r qrf*pass \{\
-. tm "GETR: No .INITR in this file"
-.\}
-.el \{\
-. GETHN \\$1 Qrfh
-. GETPN \\$1 Qrfp
-\\*[Qrf]
-.\}
-..
-.\"########################### module ind ############################
-.\" Support for mgs-style indexing, borrowed from mgs.
-.de IX
-. tm \\$1\t\\$2\t\\$3\t\\$4 ... \\n[%]
-..
-.\"--------------------
-.\" Another type of index system
-.\" INITI type filename [macro]
-.de INITI
-.if \\n[.$]<1 .@error "INITI:type missing"
-.\" ignore if INITI has already been used
-.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 !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]"
-.\"
-.ds ind*line \\$1
-.while \\n[.$]>0 \{\
-. shift
-. as ind*line \t\\$1
-.\}
-.as ind*line \\*[ind*ref]
-.if \\n[Ref] .tm .\\\\" IND \\*[ind*line]
-..
-.\" print index
-.de INDP
-.ie \\n[Ref] .tm .\\\\" Index: \\*[ind*file]
-.el \{\
-. 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
-. \}
-' so \\*[ind*file]
-. ie d TZIND .TZIND
-. el \{\
-. fi
-. 1C
-. \}
-.\}
-.rm ind*file
-..
-.\"########################### module let ############################
-.\" Letter macros
-.\"------------------------
-.\" Formal closing
-.de FC
-.df@print-float 3
-.ie \\n[.$] .ds let*i \\$1
-.el .ds let*i \\*[Letfc]
-.ie d let*type .let@fc_\\*[let*type] "\\*[let*i]" \\$@
-.el .let@mt-closing "\\*[let*i]" \\$@
-..
-.\"-------
-.de let@mt-closing
-.ne 5v
-.in (u;\\n[.l]/2)
-.sp
-\\$1
-.in
-..
-.\"------------------------
-.\" Signature line
-.de SG
-.ie d let*type .let*lt-sign \\$@
-.el .let*mt-sign \\$@
-..
-.\"------------------------
-.de let*lt-sign
-.if !d let@sg_\\*[let*type] .@error "SG: letter type \\*[let*type] undefined"
-.df@print-float 3
-.nr let*i 0 1
-.nr let*j 0
-.while \\n+[let*i]<=\\n[let*wa-n] \{\
-.if \\n[let*i]=\\n[let*wa-n] .nr let*j 1
-.let@sg_\\*[let*type] "\\*[let*wa-name!\\n[let*i]]" "\\*[let*wa-title!\\n[let*i]]" \\n[let*i] \\n[let*j] \\$@
-.\}
-..
-.\"------------------------
-.\" Memorandum signature
-.de let*mt-sign
-.df@print-float 3
-.ne \\n[cov*au]u*4v
-.ie \\n[.$]>1 .nr let*k 1
-.el .nr let*k \\n[cov*au]
-.ds let*tmp \\*[cov*au!\\n[let*k]!3]-\\*[cov*au!\\n[let*k]!4]-
-.nr let*i 0 1
-.while \\n+[let*i]<=\\n[cov*au] \{\
-. if \\n[let*i]>1 .as let*tmp /
-. as let*tmp \\*[cov*au!\\n[let*k]!2]
-.\}
-.if !''\\$1' .as let*tmp -\\$1
-.in (u;\\n[.l]/2)
-.nf
-.nr let*i 0 1
-.while \\n+[let*i]<=\\n[cov*au] \{\
-. SP 3v
-. if \\n[let*i]=\\n[let*k] \{\
-\Z'\h'-(u;\\n[.l]/2)'\\*[let*tmp]'\c
-. \}
-\\*[cov*au!\\n[let*i]!1]
-.\}
-.fi
-.in
-..
-.\"------------------------
-.\" Approval signature
-.de AV
-.ne 6v
-.nf
-.sp
-.ie \\n[.$]<2 \\*[Letapp]
-.el .sp
-.sp 2
-.ie n ______________________________ ______________
-.el \D'l 25m 0'\h'4m'\D'l 12m 0'
-\Z'\\$1'\h'29m'\f[\\*[@sdf_font]]\\*[Letdate]\fP
-.fi
-..
-.\"------------------------
-.\" Letter signature
-.de AVL
-.ne 6v
-.nf
-.sp 3
-.ie n ______________________________
-.el \D'l 25m 0'
-\Z'\\$1'
-.fi
-..
-.\"------------------------
-.\" Letter type
-.\" let@header is called from the header. It is supposed
-.\" to remove the alias itself.
-.de LT
-.rm AF AS AE AT AU CS OK TL MT
-.ds let*type BL
-.nr Pi 5
-.nr Pt 0
-.if !''\\$1' .ds let*type \\$1
-.if !d let@head_\\*[let*type] .@error "LT: unknown letter type \\$1"
-.shift
-.als let@header let@head_\\*[let*type]
-.let@init_\\*[let*type] \\$@
-.if \n[D]>1 .tm Letter type \\*[let*type]
-..
-.\"-----------
-.\" Blocked letter
-.de let@init_BL
-..
-.de let@head_BL
-.rm let@header
-.let@print-head 1
-..
-.de let@sg_BL
-.ne 5v
-.nf
-.in (u;\\n[.l]/2)
-.sp 3v
-\\$1
-\\$2
-.in
-.if \\$4 .sp
-.if \w'\\$5'&\\$4 \\$5
-.fi
-..
-.als let@fc_BL let@mt-closing
-.\"-----------
-.\" Semiblocked letter
-.de let@init_SB
-.nr Pt 1
-..
-.de let@head_SB
-.rm let@header
-.let@print-head 1
-..
-.als let@sg_SB let@sg_BL
-.als let@fc_SB let@mt-closing
-.\"-----------
-.\" Full-blocked letter
-.de let@init_FB
-..
-.de let@head_FB
-.rm let@header
-.let@print-head
-..
-.de let@sg_FB
-.ne 5v
-.nf
-.sp 3v
-\\$1
-\\$2
-.if \\$4 .sp
-.if \w'\\$5'&\\$4 \\$5
-.fi
-..
-.de let@fc_FB
-.ne 5v
-.sp
-\\$1
-..
-.\"-----------
-.\" Simplified letter
-.de let@init_SP
-..
-.de let@head_SP
-.rm let@header
-.let@print-head
-..
-.de let@sg_SP
-.nf
-.if \\$3=1 .sp
-.sp
-.misc@toupper "\\$1, \\$2"
-.if \\$4 .sp
-.if \w'\\$5'&\\$4 \\$5
-.fi
-..
-.de let@fc_SP
-.sp 2
-..
-.\"--------------------------------------
-.\" Print the letter-head
-.de let@print-head
-.nf
-.sp |11
-.if '1'\\$1' .in (u;\\n[.l]/2)
-.\" ---- WA
-.ie d let@wa-div .let@wa-div
-.el .sp 3
-.\" ---- datum
-\\*[cov*new-date]
-.sp
-.if '1'\\$1' .if !d let*lo-CN .if !d let*lo-RN .sp 2
-.\" ---- Confidential
-.if d let*lo-CN \{\
-. ti 0
-. ie !''\\*[let*lo-CN]' \\*[let*lo-CN]
-. el \\*[LetCN]
-. sp
-.\}
-.\" ---- Reference
-.if d let*lo-RN \{\
-\\*[LetRN] \\*[let*lo-RN]
-. sp
-.\}
-.\" ---- IA
-.sp
-.in 0
-.nr let*i 0 1
-.while \\n+[let*i]<=\\n[let*ia-n] \{\
-\\*[let*ia-name!\\n[let*i]]
-\\*[let*ia-title!\\n[let*i]]
-.\}
-.if d let@ia-div .let@ia-div
-.\" ---- Attention
-.if d let*lo-AT \{\
-. sp
-\\*[LetAT] \\*[let*lo-AT]
-.\}
-.\" ---- Salutation
-.if !'\\*[let*type]'SP' .if d let*lo-SA \{\
-. sp
-. ti 0
-. ie !''\\*[let*lo-SA]' \\*[let*lo-SA]
-. el \\*[LetSA]
-.\}
-.\" ---- Subject
-.if d let*lo-SJ \{\
-. ie '\\*[let*type]'SP' \{\
-. sp 2
-. misc@toupper \\*[let*lo-SJ]
-. sp
-. \}
-. el \{\
-. sp
-. if '\\*[let*type]'SB' .ti +5m
-\\*[LetSJ] \f[\\*[@sdf_font]]\\*[let*lo-SJ]\fP
-. \}
-.\}
-..
-.\"-------------------
-.\" .IA [name [title]]
-.nr let*ia-n 0 1
-.de IA
-.if \\n[.$] .ds let*ia-name!\\n+[let*ia-n] \\$1
-.if \\n[.$]>1 .ds let*ia-title!\\n[let*ia-n] \\$2
-.ev let@ev
-.init@reset
-'nf
-.di let@ia-div
-.eo
-..
-.de IE
-.di
-.ec
-.ev
-..
-.\"-------------------
-.\" .WA [name [title]]
-.nr let*wa-n 0 1
-.de WA
-.if \\n[.$] .ds let*wa-name!\\n+[let*wa-n] \\$1
-.if \\n[.$]>1 .ds let*wa-title!\\n[let*wa-n] \\$2
-.ev let@ev
-.init@reset
-'nf
-.di let@wa-div
-.it \\n[Letwam] let@wa-drain
-.eo
-..
-.\"------
-.de let@wa-drain
-.it
-.di
-.di let@wa-junk
-..
-.\"------
-.de WE
-.it
-.ec
-.di
-.ev
-.if d let@wa-junk .rm let@wa-junk
-..
-.\"-------------------
-.\" Copy to
-.de NS
-.sp
-.ie !''\\$2' .ds let*str \\$1
-.el \{\
-. ie \\n[.$]>0 \{\
-. ie !\w'\\$1' .ds let*str \\*[Letns!\\*[Letnsdef]]
-. el \{\
-. ie d Letns!\\$1 .ds let*str \\*[Letns!\\$1]
-. el .ds let*str \\*[Letns!copy](\\$1)\\*[Letns!to]
-. \}
-. \}
-. el .ds let*str \\*[Letns!\\*[Letnsdef]]
-.\}
-.ne 2
-.nf
-\\*[let*str]
-..
-.de NE
-.fi
-..
-.\"-------------------
-.\" Letter options
-.de LO
-.rm AF AS AE AT AU CS OK TL MT
-.if ''\\$1' .@error "LO: missing option"
-.if !d Let\\$1 .@error "LO: unknown option (\\$1)"
-.ds let*lo-\\$1 \\$2
-.if \n[D]>1 .tm Letter option \\$1 \\$2
-..
-.\"--------------------
-.\" Start with a clean slate
-.init@reset
diff --git a/contrib/groff/contrib/mm/mm.tmac b/contrib/groff/contrib/mm/mm.tmac
deleted file mode 100644
index 9ed09b721f98..000000000000
--- a/contrib/groff/contrib/mm/mm.tmac
+++ /dev/null
@@ -1,3 +0,0 @@
-.\" mm.tmac
-.\"
-.do mso m.tmac
diff --git a/contrib/groff/contrib/mm/mm/0.MT b/contrib/groff/contrib/mm/mm/0.MT
deleted file mode 100644
index 61f1a969c06b..000000000000
--- a/contrib/groff/contrib/mm/mm/0.MT
+++ /dev/null
@@ -1,146 +0,0 @@
-.\"------------
-.\" $Id: 0.MT,v 2.0 2000/09/14 03:40:25 jhaegg Exp $
-.\" Cover sheet. Memorandum type 0-3 and "string".
-.\"------------
-.if !r Au .nr Au 1
-.nr cov*mt0-ind 1.1c
-.de cov@print-title
-.MOVE 4.8c 1.5c
-.S 8
-subject:
-.sp -1.1
-.S
-.PGFORM
-.ft \\*[@sdf_font]
-.ll 9c
-.fi
-.cov*title
-.ft
-.ll
-.nf
-.if d cov*title-charge-case \fBCharge Case \\*[cov*title-charge-case]\fP
-.if d cov*title-file-case \fBFile Case \\*[cov*title-file-case]\fP
-.fi
-..
-.\"------------
-.de cov@print-authors
-.MOVE 5.7c 13.3c
-.nf
-.S 8
-\\$1:
-.br
-.S
-.sp -1
-.in 0.8c
-.ft \\*[@sdf_font]
-.nr cov*i 0 1
-.while \\n+[cov*i]<=\\n[cov*au] \{\
-. cov@print-au1 \\n[cov*i] 1
-. if \\n[Au] \{\
-. cov@print-au2 \\n[cov*i] 3 4
-. cov@print-au2 \\n[cov*i] 6 5
-. cov@print-au1 \\n[cov*i] 7
-. cov@print-au1 \\n[cov*i] 8
-. cov@print-au1 \\n[cov*i] 9
-. \}
-. if \\n[cov*i]<\\n[cov*au] .SP 1
-.\}
-.ft
-.if r cov*mt-tm-max \{\
-. SP 1
-. nr cov*i 0 1
-. ft \\*[@sdf_font]
-TM
-. in 1.5c
-. sp -1
-. while \\n+[cov*i]<\\n[cov*mt-tm-max] \\*[cov*mt-tm!\\n[cov*i]]
-. in
-. ft
-.\}
-.fi
-.PGFORM
-..
-.\"------------
-.\" index arg1
-.de cov@print-au1
-.if d cov*au!\\$1!\\$2 \\*[cov*au!\\$1!\\$2]
-..
-.\"------------
-.de cov@print-au2
-.\" index arg1 arg2
-.if d cov*au!\\$1!\\$2 \\*[cov*au!\\$1!\\$2] \c
-.if \\$3=5 .if d cov*au!\\$1!\\$3 x\c
-.if d cov*au!\\$1!\\$3 \\*[cov*au!\\$1!\\$3]\c
-.br
-..
-.\"------------
-.de cov@print-date
-.MOVE 4.8c 13.3c
-.S 8
-.nf
-\\$1:
-.br
-.S
-.sp -1
-.in 0.8c
-\f[\\*[@sdf_font]]\\*[cov*new-date]\fP
-.br
-.fi
-.PGFORM
-..
-.\"------------
-.de cov@print-firm
-.if d cov*firm \{\
-. MOVE 2.8c 0 17.7c
-. S 18
-. rj 1
-\fB\\*[cov*firm]\fP
-. S
-. PGFORM
-.\}
-..
-.\"------------
-.de cov@print-abstract
-.SP 3
-.if d cov*abstract \{\
-. misc@ev-keep cov*ev
-. if \\n[cov*abs-ind]>0 \{\
-. in +\\n[cov*abs-ind]u
-. ll -\\n[cov*abs-ind]u
-. \}
-. ce
-\fI\\$1\fP
-. SP 1.5
-. fi
-. cov*abstract
-. br
-. ev
-.\}
-..
-.\"-----------------
-.ds cov*mt0-txt!1 MEMORANDUM FOR FILE
-.ds cov*mt0-txt!2 PROGRAMMER'S NOTES
-.ds cov*mt0-txt!3 ENGINEER'S NOTES
-.if d cov*default-firm .if !d cov*firm .ds cov*firm \\*[cov*default-firm]
-.\"
-.if !d cov*mt-printed \{\
-. cov@print-firm
-. cov@print-title subject
-. cov@print-date date
-. cov@print-authors from
-. cov@print-abstract \\*[cov*abs-name]
-. SP 3
-. if (\*[cov*mt-type]>=1)&(\*[cov*mt-type]<=3) \{\
-. ce
-\fI\*[cov*mt0-txt!\*[cov*mt-type]]\fP
-. SP 1.5
-. \}
-. if \*[cov*mt-type]=6 \{\
-. ce
-\fI\*[cov*mt-type-text]\fP
-. SP 1.5
-. \}
-. pg@enable-top-trap
-. pg@enable-trap
-. ds cov*mt-printed
-.\}
diff --git a/contrib/groff/contrib/mm/mm/4.MT b/contrib/groff/contrib/mm/mm/4.MT
deleted file mode 100644
index 78c77661d78b..000000000000
--- a/contrib/groff/contrib/mm/mm/4.MT
+++ /dev/null
@@ -1,82 +0,0 @@
-.\"------------
-.\" $Id: 4.MT,v 2.2 2003/04/02 04:06:40 jhaegg Exp $
-.\" Cover sheet. Memorandum type 4
-.\"------------
-.de cov@print-title
-.if !d cov*title .@error title (.TL) not defined!
-.MOVE 2.8c
-.S +2
-.ad c
-.fi
-.B
-.cov*title
-.br
-.S
-.R
-.ad b
-..
-.\"------------
-.de cov@print-authors
-.SP 0.5
-.I
-.S +1
-.nr cov*i 0 1
-.while \\n+[cov*i]<=\\n[cov*au] \{\
-.ce
-\\*[cov*au!\\n[cov*i]!1]
-.br
-.\}
-.S
-.R
-..
-.\"------------
-.de cov@print-firm
-.if d cov*firm \{\
-. SP 0.5
-. ce
-\\*[cov*firm]
-.\}
-..
-.\"------------
-.de cov@print-abstract
-.SP 2
-.if d cov*abstract \{\
-. misc@ev-keep cov*ev
-. init@reset
-. if \\n[cov*abs-ind]>0 \{\
-. in +\\n[cov*abs-ind]u
-. ll -\\n[cov*abs-ind]u
-. \}
-. ce
-\fI\\*[cov*abs-name]\fP
-. SP 2
-. fi
-. cov*abstract
-. br
-. ev
-.\}
-..
-.\"-----------------
-.if d cov*default-firm .if !d cov*firm .ds cov*firm \\*[cov*default-firm]
-.if !d cov*mt-printed \{\
-. cov@print-title
-. cov@print-authors
-. cov@print-firm
-. if d cov*abstract \{\
-. if !\n[cov*abs-arg] .cov@print-abstract
-. \}
-. SP 2
-. nr hd*cur-bline \n[nl]
-. ds cov*mt-printed
-. pg@enable-top-trap
-. pg@enable-trap
-.\}
-.de CS
-.pg@disable-top-trap
-.SK
-.cov@print-title
-.cov@print-authors
-.cov@print-firm
-.cov@print-abstract
-..
-
diff --git a/contrib/groff/contrib/mm/mm/5.MT b/contrib/groff/contrib/mm/mm/5.MT
deleted file mode 100644
index a274d234bd00..000000000000
--- a/contrib/groff/contrib/mm/mm/5.MT
+++ /dev/null
@@ -1,34 +0,0 @@
-.\"------------
-.\" $Id: 5.MT,v 2.0 2000/09/14 03:40:25 jhaegg Exp $
-.\" Cover sheet. Memorandum type 5
-.\"------------
-.nr cov*mt0-ind 1.1c
-.de cov@print-title
-.B
-.ll 9c
-.fi
-.cov*title
-.R
-.ll
-.nf
-.if d cov*title-charge-case \fBCharge Case \\*[cov*title-charge-case]\fP
-.if d cov*title-file-case \fBFile Case \\*[cov*title-file-case]\fP
-.fi
-..
-.\"------------
-.de cov@print-date
-.rj 1
-\f[\\*[@sdf_font]]\\*[cov*new-date]\fP
-.br
-..
-.\"------------
-.if !d cov*mt-printed \{\
-. SP 1.9c
-. cov@print-title
-. SP 1.2c
-. cov@print-date
-. SP 3
-. pg@enable-top-trap
-. pg@enable-trap
-. ds cov*mt-printed
-.\}
diff --git a/contrib/groff/contrib/mm/mm/ms.cov b/contrib/groff/contrib/mm/mm/ms.cov
deleted file mode 100644
index 25d4579e2f7c..000000000000
--- a/contrib/groff/contrib/mm/mm/ms.cov
+++ /dev/null
@@ -1,84 +0,0 @@
-.\"------------
-.\" $Id: ms.cov,v 2.0 2000/09/14 03:40:25 jhaegg Exp $
-.\" Cover sheet. Mostly like ms cover.
-.\"------------
-.de cov@print-title
-.in 0
-.misc@ev-keep cov*ev
-.init@reset
-.ad c
-.hy 0
-.fi
-.B
-.cov*title
-.br
-.ad b
-.R
-.ev
-..
-.\"------------
-.de cov@print-authors
-.SP
-.nr cov*i 0 1
-.while \\n+[cov*i]<=\\n[cov*au] \{\
-. ce
-\fI\\*[cov*au!\\n[cov*i]!1]\fP
-. nr cov*j 0 1
-. while \\n+[cov*j]<=9 \{\
-. if d cov*at!\\n[cov*i]!\\n[cov*j] \{\
-. if \w'\\*[cov*at!\\n[cov*i]!\\n[cov*j]]' \{\
-. ce
-\s-1\\*[cov*at!\\n[cov*i]!\\n[cov*j]]\s0
-. .\}
-. \}
-. \}
-.\}
-..
-.\"------------
-.de cov@print-firm
-.SP .5
-.ce
-\\*[cov*firm]
-..
-.\"------------
-.de cov@print-abstract
-.SP 2
-.if d cov*abstract \{\
-. misc@ev-keep cov*ev
-. init@reset
-. if \\n[cov*abs-ind]>0 \{\
-. in +\\n[cov*abs-ind]u
-. ll -\\n[cov*abs-ind]u
-. \}
-. ce
-\fI\\$1\fP
-. SP 1.5
-. fi
-. cov*abstract
-. br
-. ev
-.\}
-..
-.\"------------
-.de cov@print-date
-.SP 2
-\f[\\*[@sdf_font]]\\*[cov*new-date]\fP
-..
-.\"-----------------
-.de COVEND
-.br
-.if d cov*default-firm .if !d cov*firm .ds cov*firm \\*[cov*default-firm]
-.sp |4.2c
-.cov@print-title
-.cov@print-authors
-.cov@print-firm
-.cov@print-abstract \\*[cov*abs-name]
-.cov@print-date
-.pg@enable-top-trap
-.bp 1
-.pg@enable-trap
-.if d cov*abs-arg .if \\n[cov*abs-arg] \{\
-. cov@print-abstract ABSTRACT
-. SP 2
-.\}
-..
diff --git a/contrib/groff/contrib/mm/mm/se_ms.cov b/contrib/groff/contrib/mm/mm/se_ms.cov
deleted file mode 100644
index 2d16d48e8132..000000000000
--- a/contrib/groff/contrib/mm/mm/se_ms.cov
+++ /dev/null
@@ -1,3 +0,0 @@
-.\" $Id: se_ms.cov,v 2.0 2000/09/14 03:40:25 jhaegg Exp $
-.mso mm/ms.cov
-.nr cur*abstract-ll 11c
diff --git a/contrib/groff/contrib/mm/mmroff.man b/contrib/groff/contrib/mm/mmroff.man
deleted file mode 100644
index a891ff5e82b3..000000000000
--- a/contrib/groff/contrib/mm/mmroff.man
+++ /dev/null
@@ -1,49 +0,0 @@
-.\"
-.\" $Id: mmroff.man,v 2.2 2001/12/09 12:15:09 wlemb Exp $
-.\"
-.TH MMROFF @MAN1EXT@ "@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@)
-.
-.\" Local Variables:
-.\" mode: nroff
-.\" End:
diff --git a/contrib/groff/contrib/mm/mmroff.pl b/contrib/groff/contrib/mm/mmroff.pl
deleted file mode 100755
index d61fae8f9c36..000000000000
--- a/contrib/groff/contrib/mm/mmroff.pl
+++ /dev/null
@@ -1,137 +0,0 @@
-#! /usr/bin/env 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);
-}
-
-# mmroff should always have -mm, but not twice
-@ARGV = grep(!/^-mm$/, @ARGV);
-my $check_macro = "groff -rRef=1 -z -mm @ARGV";
-my $run_macro = "groff -mm @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) {
- 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:$!";
- print OUT '.\" references', "\n";
- 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/contrib/groff/contrib/mm/mmse.tmac b/contrib/groff/contrib/mm/mmse.tmac
deleted file mode 100644
index 8198666336a2..000000000000
--- a/contrib/groff/contrib/mm/mmse.tmac
+++ /dev/null
@@ -1,3 +0,0 @@
-.\" mmse.tmac
-.\"
-.do mso mse.tmac
diff --git a/contrib/groff/contrib/mm/mse.tmac b/contrib/groff/contrib/mm/mse.tmac
deleted file mode 100644
index de78cb84c417..000000000000
--- a/contrib/groff/contrib/mm/mse.tmac
+++ /dev/null
@@ -1,184 +0,0 @@
-.\" $Id: mse.tmac,v 2.1 2000/11/17 04:26:02 jhaegg Exp $
-.\"
-.\" swedish version of mm
-.\" See m.tmac for version-information.
-.ds @language se
-.mso m.tmac
-.ISODATE
-.\"
-.ds App Bilaga
-.ds Lf Figurer
-.ds Lt Tabeller
-.ds Lx Uppställningar
-.ds Le Ekvationer
-.\" Page length
-.if !r L .nr @pl 28.5c
-.\" page width
-.if !r W .nr @ll 13c
-.\" page offset
-.if !r O .nr @po 3.5c
-.\" set the above parameters
-.ll \n[@ll]u
-.po \n[@po]u
-.pl \n[@pl]u
-.ds Lifg Figur
-.ds Litb Tabell
-.ds Liex Uppställning
-.ds Liec Ekvation
-.ds Licon Innehållsförteckning
-.ds Qrf Se kapitel \\*[Qrfh], sidan \\*[Qrfp].
-.ds Rp Referenser
-.ds Letfc Vänliga hälsningar
-.ds Letapp Godkänd av:
-.ds Letdate datum
-.ds Letconf KONFIDENTIELLT
-.ds Letsal Till vederbörande:
-.ds Letatt ATTENTION:
-.ds Letsubj Innehåll:
-.ds Letref Refererande till:
-.\"
-.ds Letns!copy Kopia \" space!
-.ds Letns!to " till
-.ds Letns!0 Kopia till
-.ds Letns!1 Kopia (med att.) till
-.ds Letns!2 Kopia (utan att.) till
-.ds Letns!3 Att.
-.ds Letns!4 Atts.
-.ds Letns!5 Enc.
-.ds Letns!6 Encs.
-.ds Letns!7 Annat försättsblad
-.ds Letns!8 Brev till
-.ds Letns!9 Dokument till
-.ds Letns!10 Kopia (med atts.) till
-.ds Letns!11 Kopia (utan atts.) till
-.ds Letns!12 Endast abstract till
-.ds Letns!13 Hela dokumentet till
-.ds Letns!14 CC:
-.\"
-.ds MO1 januari
-.ds MO2 februari
-.ds MO3 mars
-.ds MO4 april
-.ds MO5 maj
-.ds MO6 juni
-.ds MO7 juli
-.ds MO8 augusti
-.ds MO9 september
-.ds MO10 oktober
-.ds MO11 november
-.ds MO12 december
-.nr pg*footer-size 4\" 1v+footer+even/odd footer+1v
-.\"------------------------------------------------
-.\" Dokumentnamn
-.ds LetDNAMN
-.\" Mottagarens datum
-.ds LetMDAT Ert datum:
-.\" Bilaga
-.ds LetBIL Bilaga \"
-.\" Kompletteringsuppgift
-.ds LetKOMP
-.\" Dokumentbeteckning eller dokumentnummer
-.ds LetDBET
-.\" Beteckning (ärendebeteckning i form av diarienummer e.d.
-.ds LetBET Beteckning:
-.\" Mottagarens beteckning.
-.ds LetMBET Er beteckning:
-.\" Antal sidor
-.ds LetSIDOR
-.\" Svensk standard med högerställd löptext. ---------------------
-.de let@init_SVH
-.in 4.57c
-.ll 17.57c
-..
-.de let@head_SVH
-.rm let@header
-.let@print_SV H
-..
-.de let@sg_SVH
-..
-.de let@fc_SVH
-..
-.\" Svensk standard med vänsterställd löptext. ---------------------
-.de let@init_SVV
-..
-.de let@head_SVV
-.rm let@header
-.let@print_SV V
-..
-.de let@sg_SVV
-..
-.de let@fc_SVV
-..
-.\"--------------------------------
-.de let@print_SV
-.nf
-.\" pos T0 -----------------------------------
-.in 0
-.sp |3
-.if d let@wa-div .let@wa-div
-.\"----- addressat
-.if '\\$1'V' .if d let@ia-div \{\
-. sp |10
-. let@ia-div
-.\}
-.\" pos T4 -----------------------------------
-.in 9.14c
-.\"----- kompletteringsuppgift
-.if d let*lo-KOMP \{\
-. sp |2
-\\*[let*lo-KOMP]
-.\}
-.\"----- dokumentnamn
-.if d let*lo-DNAMN \{\
-. sp |3
-\\*[let*lo-DNAMN]
-.\}
-.\"----- datum
-.if d cov*new-date \{\
-. sp |5
-Datum:
-\\*[cov*new-date]
-.\}
-.\"----- mottagarens datum
-.if d let*lo-MDAT \{\
-. sp |7
-\\*[LetMDAT]
-\\*[let*lo-MDAT]
-.\}
-.\"----- addressat
-.if '\\$1'H' .if d let@ia-div \{\
-. sp |10
-. let@ia-div
-.\}
-.\" pos T6 -----------------------------------
-.in 13.72c
-.\"----- mottagarens beteck.
-.if d let*lo-MBET \{\
-. sp |7
-\\*[LetMBET]
-\\*[let*lo-MBET]
-.\}
-.\"----- dokumentbeteck.
-.if d let*lo-BET \{\
-. sp |3
-\\*[LetBET]
-\\*[let*lo-BET]
-.\}
-.\" pos T7 -----------------------------------
-.in 16c
-.\"----- bilaga
-.if d let*lo-BIL \{\
-. sp |2
-\\*[LetBIL]\\*[let*lo-BIL]
-.\}
-.\"
-.\"----- sidnummer
-.sp |3
-.ie d let*lo-SIDOR \\n[%] (\\*[let*lo-SIDOR])
-.el \\n[%]
-.\"
-.\" Ta hand om special
-.if d TP .TP
-.sp |17
-..
-.\" -----------------------------------