nmh-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Nmh-commits] [SCM] The nmh Mail Handling System branch, master, updated


From: David Levine
Subject: [Nmh-commits] [SCM] The nmh Mail Handling System branch, master, updated. 15236ba2641efd8ce80eae3b67912139395fe24d
Date: Thu, 01 Mar 2012 18:33:30 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "The nmh Mail Handling System".

The branch, master has been updated
       via  15236ba2641efd8ce80eae3b67912139395fe24d (commit)
       via  9471d78ead2fb67001509f9a7834dca03a0e72a0 (commit)
       via  e3c35feb7ebb4fc0c154017bdedcb60a34437d31 (commit)
       via  73f1ba9ecc732c6eca2db82b40f6353b305a58d7 (commit)
      from  ab719ef6625da100f92aa8c2d6f8ae6ea7bae2cb (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit/nmh.git/commit/?id=15236ba2641efd8ce80eae3b67912139395fe24d


commit 15236ba2641efd8ce80eae3b67912139395fe24d
Author: David Levine <address@hidden>
Date:   Thu Mar 1 12:33:19 2012 -0600

    Added documentation of -snoop.

diff --git a/man/send.man b/man/send.man
index 87a74eb..a25c63b 100644
--- a/man/send.man
+++ b/man/send.man
@@ -38,6 +38,7 @@ send \- send a message
 .IR ssf ]
 .RB [ \-saslmech
 .IR mechanism ]
+.RB [ \-snoop ]
 .RB [ \-user
 .IR username ]
 .RB [ \-tls ]
@@ -330,10 +331,13 @@ If nmh is using the SMTP MTA, the
 and the
 .B \-port
 switches can be used to override the default mail server (defined by the
-.RI servers
-entry in
 .I %etcdir%/mts.conf
-).
+.RI servers
+entry).  The
+.B \-snoop
+switch can be used to view the SMTP transaction.  (Beware that the
+SMTP transaction may contain authentication information either in
+plaintext or easily decoded base64.)
 .PP
 If
 .B nmh
diff --git a/man/whom.man b/man/whom.man
index c054dcf..fc386bb 100644
--- a/man/whom.man
+++ b/man/whom.man
@@ -17,6 +17,7 @@ whom \- report to whom a message would go
 .RB [ \-draftmessage
 .IR msg ]
 .RB [ \-nodraftfolder ]
+.RB [ \-snoop ]
 .RI [ file ]
 .RB [ \-version ]
 .RB [ \-help ]
@@ -43,6 +44,12 @@ useful) feature.  Consult the
 .BR mh-draft (5)
 man page for more information.
 .PP
+The
+.B \-snoop
+switch can be used to view the SMTP transaction.  (Beware that the
+SMTP transaction may contain authentication information either in
+plaintext or easily decoded base64.)
+.PP
 The files specified by the profile entry \*(lqAliasfile:\*(rq and any
 additional alias files given by the
 .B \-alias

http://git.savannah.gnu.org/cgit/nmh.git/commit/?id=9471d78ead2fb67001509f9a7834dca03a0e72a0


commit 9471d78ead2fb67001509f9a7834dca03a0e72a0
Author: David Levine <address@hidden>
Date:   Thu Mar 1 12:32:23 2012 -0600

    Removed RCS sparc object file.

diff --git a/docs/historical/mh-6.8.5/uip/RCS/whatnowsbr.o,v 
b/docs/historical/mh-6.8.5/uip/RCS/whatnowsbr.o,v
deleted file mode 100644
index 77eb2f1..0000000
Binary files a/docs/historical/mh-6.8.5/uip/RCS/whatnowsbr.o,v and /dev/null 
differ

http://git.savannah.gnu.org/cgit/nmh.git/commit/?id=e3c35feb7ebb4fc0c154017bdedcb60a34437d31


commit e3c35feb7ebb4fc0c154017bdedcb60a34437d31
Author: David Levine <address@hidden>
Date:   Thu Mar 1 12:29:33 2012 -0600

    Under docs/historical/mh-6.8.5, mh.rf and mh.me were renamed to
    mh-intro.rf and mh-intro.me, respectively, to avoid name clashes with
    other files on case-insensitive file systems.

diff --git a/docs/historical/README b/docs/historical/README
index afd7a5a..6828e31 100644
--- a/docs/historical/README
+++ b/docs/historical/README
@@ -17,6 +17,9 @@ http://www.dtic.mil/cgi-bin/GetTRDoc?AD=ADA257836
 mh-6.8.5/ contains the entire MH 6.8.5, include source code and
 RCS files, and was downloaded from
 http://iweb.dl.sourceforge.net/project/rand-mh/MH/6.8.5/mh-6.8.5.tgz
+Some obviously unnecessary files were removed.  mh.rf and mh.me
+were renamed to mh-intro.rf and mh-intro.me, respectively, to avoid
+name clashes with other files on case-insensitive file systems.
 
 MH source code, versions 6.3 through 6.8.5, is archived under
 http://sourceforge.net/projects/rand-mh/files/
diff --git a/docs/historical/mh-6.8.5/conf/doc/RCS/mh.rf,v 
b/docs/historical/mh-6.8.5/conf/doc/RCS/mh-intro.rf,v
similarity index 100%
rename from docs/historical/mh-6.8.5/conf/doc/RCS/mh.rf,v
rename to docs/historical/mh-6.8.5/conf/doc/RCS/mh-intro.rf,v
diff --git a/docs/historical/mh-6.8.5/conf/doc/mh.rf 
b/docs/historical/mh-6.8.5/conf/doc/mh-intro.rf
similarity index 100%
rename from docs/historical/mh-6.8.5/conf/doc/mh.rf
rename to docs/historical/mh-6.8.5/conf/doc/mh-intro.rf
diff --git a/docs/historical/mh-6.8.5/doc/mh.me 
b/docs/historical/mh-6.8.5/doc/mh-intro.me
similarity index 100%
rename from docs/historical/mh-6.8.5/doc/mh.me
rename to docs/historical/mh-6.8.5/doc/mh-intro.me

http://git.savannah.gnu.org/cgit/nmh.git/commit/?id=73f1ba9ecc732c6eca2db82b40f6353b305a58d7


commit 73f1ba9ecc732c6eca2db82b40f6353b305a58d7
Author: David Levine <address@hidden>
Date:   Thu Mar 1 12:13:14 2012 -0600

    Removed entire docs/historical/mh-6.8.5/local/ tree.  It had a pair of
    files, Distfile and distfile, with clashing case-insensitive names.
    The rest of it was specific to UCI and LBL.

diff --git a/docs/historical/mh-6.8.5/local/Distfile 
b/docs/historical/mh-6.8.5/local/Distfile
deleted file mode 100644
index 596535a..0000000
--- a/docs/historical/mh-6.8.5/local/Distfile
+++ /dev/null
@@ -1,88 +0,0 @@
-test: /usr/src/bs/mh-6.6 -> ics
-       install -v /usr/src/bs/mh-6.6 ;
-       except_pat \\.o\$ ;
-       except_pat \\.a\$ ;
-       except_pat \\.orig\$ ;
-       except_pat \\.rej\$ ;
-       except_pat /bk_[^/]*\$ ;
-       except_pat /RCS\$ ;
-       except_pat /miscellany\$ ;
-       except_pat \\~\$ ;
-       except_pat papers/[^M].*\$ ;
-       except_pat /x[^/]*\$ ;
-       except_pat /doc/[^.]*.me\$ ;
-       except_pat /doc/z[^.]*.man\$ ;
-       except_pat /uip/z ;
-dist: /usr/src/bs/mh-6.6 -> glacier
-       install -v /usr/src/bs/mh-6.6-dist ;
-       except_pat /RCS\$ ;
-       except_pat \\.out\$ ;
-       except_pat /rdist[^/]*\$ ;
-       except_pat /[Dd]istfile.*\$ ;
-       except_pat /papers/.*\\.aux\$ ;
-       except_pat /papers/.*\\.log\$ ;
-       except_pat /local\$ ;
-       except_pat /tags\$ ;
-       except_pat /version\$ ;
-       except_pat /amstex.tex\$ ;
-       except_pat /article.tex\$ ;
-       except_pat /dcustom.tex\$ ;
-       except_pat /diss.sty\$ ;
-       except_pat /sfwmac.tex\$ ;
-       except_pat /trademark.tex\$ ;
-/usr/src/bs/mh-6.6 -> glacier
-       install -y /usr/src/bs/mh-6.6 ;
-       except_pat \\.o\$ ;
-       except_pat \\.a\$ ;
-       except_pat \\.orig\$ ;
-       except_pat \\.rej\$ ;
-       except_pat /RCS\$ ;
-       except_pat /miscellany\$ ;
-       except_pat \\~\$ ;
-       except_pat papers/[^M].*\$ ;
-       except_pat /x[^/]*\$ ;
-       except_pat /doc/[^.]*.me\$ ;
-       except_pat /doc/z[^.]*.man\$ ;
-       except_pat /uip/z ;
-rome: /usr/src/bs/mh-6.6 -> rome
-       install -y /usr/src/bs/mh-6.6 ;
-       except_pat \\.o\$ ;
-       except_pat \\.a\$ ;
-       except_pat \\.orig\$ ;
-       except_pat \\.rej\$ ;
-       except_pat /RCS\$ ;
-       except_pat /miscellany\$ ;
-       except_pat \\~\$ ;
-       except_pat papers/[^M].*\$ ;
-       except_pat /x[^/]*\$ ;
-       except_pat /doc/[^.]*.me\$ ;
-       except_pat /doc/z[^.]*.man\$ ;
-       except_pat /uip/z ;
-ics: /usr/src/bs/mh-6.6 -> ics
-       install -y /usr/src/bs/mh-6.6 ;
-       except_pat \\.o\$ ;
-       except_pat \\.a\$ ;
-       except_pat \\.orig\$ ;
-       except_pat \\.rej\$ ;
-       except_pat /bk_[^/]*\$ ;
-       except_pat /RCS\$ ;
-       except_pat /miscellany\$ ;
-       except_pat \\~\$ ;
-       except_pat papers/[^M].*\$ ;
-       except_pat /x[^/]*\$ ;
-       except_pat /doc/[^.]*.me\$ ;
-       except_pat /doc/z[^.]*.man\$ ;
-       except_pat /uip/z ;
-#/usr/src/bs/mh-6.6 -> paris
-#      install -y /usr/src/bs/mh-6.6 ;
-#      except_pat \\.o\$ ;
-#      except_pat \\.a\$ ;
-#      except_pat \\.orig\$ ;
-#      except_pat \\.rej\$ ;
-#      except_pat /RCS\$ ;
-#      except_pat /miscellany\$ ;
-#      except_pat \\~\$ ;
-#      except_pat /x[^/]*\$ ;
-#      except_pat /doc/[^.]*.me\$ ;
-#      except_pat /doc/z[^.]*.man\$ ;
-#      except_pat /uip/z ;
diff --git a/docs/historical/mh-6.8.5/local/Distfile.nbbc 
b/docs/historical/mh-6.8.5/local/Distfile.nbbc
deleted file mode 100644
index 757b87b..0000000
--- a/docs/historical/mh-6.8.5/local/Distfile.nbbc
+++ /dev/null
@@ -1,16 +0,0 @@
-FILES  =       ( /usr/local/nbbc /usr/local/nmsh /usr/local/lib/mh/mtstailor )
-
-SUN4   =       ( blanche.ics.uci.edu  crimee.ics.uci.edu  siam.ics.uci.edu  
-               zola.ics.uci.edu  paris.ics.uci.edu  glacier.ics.uci.edu  )
-
-SUN3_40        =       ( elysees.ics.uci.edu  beaver.ics.uci.edu  
cad.ics.uci.edu  
-               wagram.ics.uci.edu  london.ics.uci.edu  beanie.ics.uci.edu  
-               cecil.ics.uci.edu  harlie.ics.uci.edu  commerce.ics.uci.edu  
-               madeleine.ics.uci.edu  cadet.ics.uci.edu  pompe.ics.uci.edu  
-               europe.ics.uci.edu  rome.ics.uci.edu  )
-
-sun4: ${FILES} -> ( ${SUN4} )
-       install ;
-
-sun3-40: ${FILES} -> ( ${SUN3_40} )
-       install ;
diff --git a/docs/historical/mh-6.8.5/local/distfile 
b/docs/historical/mh-6.8.5/local/distfile
deleted file mode 100644
index 8a4e7f1..0000000
--- a/docs/historical/mh-6.8.5/local/distfile
+++ /dev/null
@@ -1,34 +0,0 @@
-FILES=( ali anno fanno bbc bbl burst comp dist folder folders forw
-               inc mark mhmail mhpath msgchk msh packf pick prompter
-               refile repl rmf rmm scan send show next prev sortm
-               vmh whatnow whom )
-
-SUN3_3_0_SYSTEMS_NORMAL=( rome pompe madeleine elysees commerce cad )
-SUN3_3_0_SYSTEMS_LOCAL=( etoile )
-
-SUN3_4_0_SYSTEMS=( london harlie europe cecil cadet beaver beanie )
-
-SUN4_4_0_SYSTEMS=( crimee siam zola paris glacier )
-
-IS_SYSTEMS=( cip1 cip2 cip3 cip4 )
-
-${FILES} -> ${IS_SYSTEMS}
-       install /usr/uci ;
-
-${FILES} -> ${SUN3_3_0_SYSTEMS_NORMAL}
-       install /usr/uci ;
-
-${FILES} -> ${SUN3_3_0_SYSTEMS_LOCAL}
-       install /usr/local ;
-
-${FILES} -> ${SUN3_4_0_SYSTEMS}
-       install /usr/local ;
-
-/usr/local/lib/libmh.so.66.1 -> ${SUN3_4_0_SYSTEMS}
-       install /usr/local/lib/libmh.so.66.1;
-
-${FILES} -> ${SUN4_4_0_SYSTEMS}
-       install /usr/local ;
-
-/usr/local/lib/libmh.so.66.1 -> ${SUN4_4_0_SYSTEMS}
-       install /usr/local/lib/libmh.so.66.1;
diff --git a/docs/historical/mh-6.8.5/local/distfile_lib 
b/docs/historical/mh-6.8.5/local/distfile_lib
deleted file mode 100644
index e299243..0000000
--- a/docs/historical/mh-6.8.5/local/distfile_lib
+++ /dev/null
@@ -1,28 +0,0 @@
-FILES = (tmac.h spost rcvtty rcvstore rcvpack rcvdist post mhl install-mh
-       dp conflict ap popwrd popaka mtstailor scan.timely scan.mailx
-       mhl.body mhl.forward mhl.format mhl.digest replcomps rcvdistcomps
-       forwcomps distcomps digestcomps components scan.size scan.time)
-
-SUN3_3_0_SYSTEMS_NORMAL=( rome pompe madeleine elysees commerce cad )
-SUN3_3_0_SYSTEMS_LOCAL=( etoile )
-
-SUN3_4_0_SYSTEMS_NORMAL=( london harlie europe cecil cadet beaver beanie )
-
-SUN4_4_0_SYSTEMS=( crimee siam zola paris glacier )
-
-IS_SYSTEMS=( cip1 cip2 cip3 cip4 )
-
-${FILES} -> ${IS_SYSTEMS}
-       install /usr/uci/lib/mh ;
-
-${FILES} -> ${SUN3_3_0_SYSTEMS_NORMAL}
-       install /usr/uci/lib/mh ;
-
-${FILES} -> ${SUN3_3_0_SYSTEMS_LOCAL}
-       install /usr/local/lib/mh ;
-
-${FILES} -> ${SUN3_4_0_SYSTEMS_NORMAL}
-       install /usr/local/lib/mh ;
-
-${FILES} -> ${SUN4_4_0_SYSTEMS}
-       install /usr/local/lib/mh ;
diff --git a/docs/historical/mh-6.8.5/local/lbl/diffs 
b/docs/historical/mh-6.8.5/local/lbl/diffs
deleted file mode 100644
index 414fb54..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/diffs
+++ /dev/null
@@ -1,1190 +0,0 @@
-diff -r -w lbl/sbr/formatsbr.c ./sbr/formatsbr.c
-1a2,4
-> #ifndef      lint
-> static char ident[] = "@(#)$Id: formatsbr.c,v 1.16 1992/02/09 07:11:55 
jromine Exp $";
-> #endif       lint
-12a16,18
-> /*  */
-> 
-> 
-17a24
-> #ifdef       LBL
-18a26
-> #endif
-20c28,30
-< int fmt_norm = AD_NAME;
----
-> static normalize();
-> 
-> extern int fmt_norm;         /* defined in sbr/formatdef.c = AD_NAME */
-24,28c34
-< static
-< normalize(cp)
-<      register char *cp;
-< {
-<      register char *dp;
----
-> long time ();
-30,34c36
-<      for (dp = cp; *cp; cp++)
-<              if (*cp != QUOTE)
-<                      *dp++ = *cp;
-<              else
-<                      switch (*++cp) {
----
-> /*  */
-36,50c38
-<                      case 'b':
-<                              *dp++ = '\b';
-<                              break;
-<                      case 'f':
-<                              *dp++ = '\f';
-<                              break;
-<                      case 'n':
-<                              *dp++ = '\n';
-<                              break;
-<                      case 'r':
-<                              *dp++ = '\r';
-<                              break;
-<                      case 't':
-<                              *dp++ = '\t';
-<                              break;
----
-> /* MAJOR HACK:       See MHCHANGES for discussion */
-52,68c40,43
-<                      case '\n':
-<                              break;
-< 
-<                      case NULL:
-<                              cp--;
-<                              /* fall through */
-<                      default:
-<                              *dp++ = *cp;
-<                              break;
-<                      }
-< 
-<      *dp = NULL;
-< }
-< 
-< char *
-< new_fs(form, format, def)
-<      register char *form, *format, *def;
----
-> char  *new_fs (form, format, def)
-> register char  *form,
->                *format,
->                *def;
-89a65
-> 
-91c67,68
-<      } else {
----
->     }
->     else {
-99a77,109
-> /*  */
-> 
-> static  normalize (cp)
-> register char  *cp;
-> {
->     register char  *dp;
-> 
->     for (dp = cp; *cp; cp++)
->      if (*cp != QUOTE)
->          *dp++ = *cp;
->      else
->          switch (*++cp) {
-> #define      grot(y,z) case y: *dp++ = z; break;
->              grot ('b', '\b');
->              grot ('f', '\f');
->              grot ('n', '\n');
->              grot ('r', '\r');
->              grot ('t', '\t');
-> 
->              case '\n':
->                  break;
-> 
->              case 0: 
->                  cp--;       /* fall */
->              default: 
->                  *dp++ = *cp;
->                  break;
->          }
-> 
->     *dp = 0;
-> }
-> 
-> /*  */
-104,106c114,117
-< static int
-< match(str, sub)
-<      register char *str, *sub;
----
-> 
-> static int match (str, sub)
-> register char  *str,
->                *sub;
-118,119c129
-<              s1 = sub + 1;
-<              s2 = str;
----
->      s1 = sub + 1; s2 = str;
-126a137
-> /*  */
-130,135c141,143
-< #define PUTDF(cp, num, wid, fill) {\
-<              if (cp + wid < ep) {\
-<                      if ((i = (num)) < 0)\
-<                              i = -(num);\
-<                      if ((c = (wid)) < 0)\
-<                              c = -c;\
----
-> #define PUTDF(cp, num, wid, fill) if (cp + wid < ep){\
->              if((i = (num))<0) i = -(num);\
->              if((c = (wid))<0) c = -c;\
-148,152c156,158
-<              }}
-< #define PUTD(cp, num) {\
-<              if (cp < ep) {\
-<                      if ((i = (num)) == 0)\
-<                              *cp++ = '0';\
----
->              }
-> #define PUTD(cp, num) if (cp < ep){\
->              if((i = (num))==0) *cp++ = '0';\
-165c171
-<              }}
----
->              }
-167,168c173
-<              char *cp2 = cp;\
-<              rjust = 0;\
----
->              ljust = 0;\
-171c176
-<                      rjust++;\
----
->                      ljust++;\
-174c179
-<                      if (rjust) {\
----
->                      if (ljust) {\
-190,193c195
-<                              else if (c == '\010') {\
-<                                      if (cp > cp2)\
-<                                              --cp;\
-<                              } else {\
----
->                      else {\
-199c201
-<              if (!rjust)\
----
->              if (!ljust)\
-203d204
-< 
-205d205
-<              char *cp2 = cp;\
-212,215c212
-<                              else if (c == '\010') {\
-<                                      if (cp > cp2)\
-<                                              --cp;\
-<                              } else {\
----
->                      else {\
-220c217,218
-<              }}
----
->              }\
->              }
-222,225d219
-< static char *lmonth[] = {
-<     "January", "February", "March", "April", "May", "June",
-<     "July", "August", "September", "October", "November", "December"
-< };
-226a221,223
-> static char *lmonth[] = { "January",  "February","March",   "April",
->                        "May",      "June",    "July",    "August",
->                        "September","October", "November","December" };
-227a225,226
-> 
-> struct format *
-245,246c244
-<      register int j;
-<      int rjust;
----
->     int ljust;
-251c249
-<      for (;;) {
----
->     while (cp < ep) {
-258,259c256
-<                      PUTSF(cp, fmt->f_comp->c_text, fmt->f_width,
-<                          fmt->f_fill);
----
->          PUTSF (cp, fmt->f_comp->c_text, fmt->f_width, fmt->f_fill);
-262,269d258
-<              case FT_LIT_FORCE:
-<                      sp = fmt->f_text;
-<                      i = strlen(sp);
-<                      ep += i;        /* forced lits are `invisible' */
-< 
-<                      while (c = *sp++)
-<                              *cp++ = c;
-<                      break;
-277,280c266,268
-< 
-<                      /* By default we left justify */
-<                      rjust = 0;
-<                      if ((i = fmt->f_width) < 0) {
----
->          ljust = 0;
->          i = fmt->f_width;
->          if (i < 0) {
-282c270
-<                              rjust++;
----
->              ljust++;                /* XXX should do something with this */
-284,294d271
-< 
-<                      if (rjust) {
-<                              j = strlen(sp);
-<                              if (j > i)
-<                                      sp += j - i;
-<                              else while (j < i && cp < ep) {
-<                                      *cp++ = fmt->f_fill;
-<                                      ++j;
-<                              }
-<                      }
-< 
-297d273
-< 
-320a297
-> 
-325c302
-<                      if (str == NULLCP || *str == NULL) {
----
->          if (!(value = (str && *str))) {
-332c309
-<                      if (str != NULLCP && *str != NULL) {
----
->          if (!(value = (str == NULLCP || *str == 0))) {
-360c337
-<                      if (!str || !match(str, fmt->f_text)) {
----
->          if (!(value = (str && match (str, fmt->f_text)))) {
-374c351
-<                      if (!str || !uprf(str, fmt->f_text)) {
----
->          if (!(value = (str && uprf (str, fmt->f_text)))) {
-381d357
-<                      if (str)
-383,384d358
-<                      else
-<                              value = 0;
-388c362
-<                      value = (str != NULLCP && *str != NULL);
----
->          value = (str != NULLCP && *str != 0);
-392c366
-<                      value = (str == NULLCP || *str == NULL);
----
->          value = (str == NULLCP || *str == 0);
-419a394,397
->      case FT_LS_GETENV:
->          if (!(str = getenv (fmt->f_text)))
->              str = "";
->          break;
-424,425c402
-<                              /* Be careful since str can point into buffer */
-<                              bcopy(str, buffer, strlen(str) + 1);
----
->                  (void) strcpy(buffer, str);
-427,428d403
-< 
-<                              /* Eat leading whitespace */
-431,438c406
-< 
-<                              /* Trim trailing whitespace */
-<                              xp = str + strlen(str) - 1;
-<                              while (xp > str && isspace(*xp))
-<                                      *xp-- = '\0';
-< 
-<                              /* By default we left justify */
-<                              rjust = 0;
----
->                  ljust = 0;
-441c409
-<                                      rjust++;
----
->                          ljust++;
-444,446c412
-<                              /* If necessary, limit width and/or justify */
-<                              if (i > 0 && (j = strlen(str)) > i) {
-<                                      if (!rjust)
----
->                  if (!ljust && i > 0 && strlen(str) > i)
-448,449c414,419
-<                                      else
-<                                              str += j - i;
----
->                  xp = str;
->                  xp += strlen(str) - 1;
->                  while (xp > str && isspace(*xp))
->                          *xp-- = '\0';
->                  if (ljust && i > 0 && strlen(str) > i)
->                      str += strlen(str) - i;
-451d420
-<                      }
-458,459c427
-<                      value = (comp = fmt->f_comp)->c_text ?
-<                          atoi(comp->c_text) : 0;
----
->          value = (comp = fmt->f_comp)->c_text ? atoi(comp->c_text) : 0;
-484a453,458
->      case FT_LV_MODULO_L:
->          if (fmt->f_value)
->              value = value % fmt->f_value;
->          else
->              value = 0;
->          break;
-517,518c491
-<                      if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-<                          (TW_SEXP | TW_SIMP)))
----
->          if (!(((tws = fmt->f_comp->c_tws)->tw_flags) & (TW_SEXP|TW_SIMP)))
-523,524c496
-<                      if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-<                          (TW_SEXP | TW_SIMP)))
----
->          if (!(((tws = fmt->f_comp->c_tws)->tw_flags) & (TW_SEXP|TW_SIMP)))
-529,530c501
-<                      if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-<                          (TW_SEXP | TW_SIMP)))
----
->          if (!(((tws = fmt->f_comp->c_tws)->tw_flags) & (TW_SEXP|TW_SIMP)))
-550,551c521
-<                      if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-<                          (TW_SEXP | TW_SIMP)))
----
->          if (!(((tws = fmt->f_comp->c_tws)->tw_flags) & (TW_SEXP|TW_SIMP)))
-555,556c525
-<                              value = 1;
-<                              break;
----
->                  value = 1; break;
-558,559c527
-<                              value = 0;
-<                              break;
----
->                  value = 0; break;
-561,562c529
-<                              value = -1;
-<                              break;
----
->                  value = -1; break;
-565,566c532
-<                      if ((fmt->f_comp->c_tws->tw_flags & TW_SZONE) ==
-<                          TW_SZEXP)
----
->          if ((fmt->f_comp->c_tws->tw_flags & TW_SZONE) == TW_SZEXP)
-610a577
->      case FT_LS_ADDR:
-614,615c581,587
-< #else
-<                      mn = fmt->f_comp->c_mn;
----
-> #else not BERK
->          if ((mn = fmt -> f_comp -> c_mn) == &fmt_mnull) {
->              str = fmt -> f_comp -> c_text;
->              break;
->          }
->          if (fmt -> f_type == FT_LS_ADDR)
->              goto unfriendly;
-616a589,604
->              if ((str = mn -> m_note)) {
->                  (void) strcpy (buffer, str);
->                  str = buffer;
->                  if (*str == '(')
->                      str++;
->                  sp = str + strlen(str) - 1;
->                  if (*sp == ')') {
->                      *sp-- = '\0';
->                      while (sp >= str)
->                          if (*sp == ' ')
->                              *sp-- = '\0';
->                          else
->                              break;
->                  }
->              } else {
->      unfriendly: ;
-618d605
-< 
-632c619,620
-<                                      } else
----
->                      }
->                      else
-635a624
->              }
-661,662c650
-<                              bzero((char *)comp->c_tws,
-<                                  sizeof(*comp->c_tws));
----
->              bzero ((char *) comp -> c_tws, sizeof *comp -> c_tws);
-668c656
-<                      /* custom address list formatting hook */
----
->          /* hook for custom address list formatting (see replsbr.c) */
-673,678c661,665
-<                      /*
-<                       * Output the str register as an address component,
-<                       * splitting it into multiple lines if necessary.
-<                       * The value reg. contains the max line length.  The
-<                       * lit. field may contain a string to prepend to the
-<                       * result (e.g., "To: ")
----
->          /* output the str register as an address component,
->           * splitting it into multiple lines if necessary.  The
->           * value reg. contains the max line length.  The lit.
->           * field may contain a string to prepend to the result
->           * (e.g., "To: ")
-693,696c680,681
-<                                      /*
-<                                       * Try to break at a comma; failing
-<                                       * that, break at a space, failing
-<                                       * that, just split the line.
----
->              /* try to break at a comma; failing that, break at a
->               * space, failing that, just split the line.
-698,699c683
-<                                      lastb = 0;
-<                                      sp = lp + wid;
----
->              lastb = 0; sp = lp + wid;
-729c713,715
-<                      } else
----
->          } else {
->              while (getname(""))             /* XXX */
->                  ;
-730a717
->          }
-735,737c722,724
-<                       * If there's no component, we say true.  Otherwise
-<                       * we say "true" only if we can parse the address and
-<                       * it matches one of our addresses.
----
->           * if there's no component, we say true.  Otherwise we
->           * say "true" only if we can parse the address and it
->           * matches one of our addresses.
-748,749c735
-<                                          (mn = getm(sp, NULLCP, 0,
-<                                          AD_NAME, NULLCP)))
----
->                      (mn = getm (sp, NULLCP, 0, AD_NAME, NULLCP)))
-751a738,739
->              while (getname(""))             /* XXX */
->                  ;
-758,762c746,749
-<                      /*
-<                       * If we're working on a folder (as opposed to a
-<                       * file), add the current msg to sequence given in
-<                       * literal field.  Don't disturb string or value
-<                       * registers.
----
-> #ifdef       LBL
->          /* If we're working on a folder (as opposed to a file), add the
->           * current msg to sequence given in literal field.  Don't
->           * disturb string or value registers.
-765,766c752,753
-<                              (void) m_seqadd(fmt_current_folder,
-<                                  fmt->f_text, dat[0], -1);
----
->                  (void)m_seqadd(fmt_current_folder, fmt->f_text, dat[0], -1);
-> #endif
-771c758,759
-< finished:
----
-> #ifndef JLR
->     finished:;
-774,775c762,774
-<      *cp = NULL;
-<      return (value);
----
->     *cp   = 0;
->     return ((struct format *)0);
-> #else        /* JLR */
->     if (cp[-1] != '\n')
->      *cp++ = '\n';
->     while (fmt->f_type != FT_DONE)
->      fmt++;
-> 
->     finished:;    
->     *cp = '\0';
->     return (fmt -> f_value ? ++fmt : (struct format *)0);
-> 
-> #endif /* JLR */
-diff -r -w lbl/sbr/m_gmsg.c ./sbr/m_gmsg.c
-1a2,4
-> #ifndef      lint
-> static char ident[] = "@(#)$Id: m_gmsg.c,v 2.8 1992/02/11 21:32:04 jromine 
Exp $";
-> #endif       lint
-3a7
-> #include "../h/local.h"
-5,16d8
-< #include <sys/types.h>
-< #include <sys/stat.h>
-< #include <ctype.h>
-< #ifndef      BSD42
-< #ifndef SYS5
-< #include <ndir.h>
-< #else        SYS5
-< #include <dir.h>
-< #endif  SYS5
-< #else        BSD42
-< #include <sys/dir.h>
-< #endif       BSD42
-25,27c17
-< static int m_getatr(), m_setatr();
-< 
-< static int  len;
----
-> static int  len=0;
-29a20,21
-> static               m_getatr();
-> static int   m_setatr();
-32,33c24
-< struct msgs *
-< m_gmsg(name)
----
-> struct msgs *m_gmsg (name)
-48a40,43
-> #ifdef SYS5DIR
->     register struct dirent *dp;
->              DIR * dd;
-> #else  SYS5DIR
-50a46
-> #endif SYS5DIR
-59c55
-<     mp = (struct msgs  *) malloc (MSIZE (mp, 0, 0));
----
->     mp = (struct msgs  *) malloc (MHSIZE (mp, 0, 0));
-183c179
-<              realloc ((char *) mp, MSIZE (mp, mp->lowoff, mp->hghoff));
----
->              realloc ((char *) mp, MHSIZE (mp, mp -> lowoff, mp -> hghoff));
-191c187
-<              calloc ((unsigned) 1, MSIZEX (mp, mp->lowmsg, mp->hghmsg));
----
->              calloc ((unsigned) 1, MHSIZEX (mp, mp -> lowmsg, mp -> hghmsg));
-195c191
-<     if (mp->msgstats < 0)
----
->     if (mp -> msgstats < (int *)0)   /* non portable */
-207,208c203
-< static int
-< m_getatr(mp)
----
-> static m_getatr (mp)
-219c214
-<             field[BUFSIZ];
----
->             field[BUFSIZ * 2];
-225,226c220,221
-<     mp->msgattrs[0] = getcpy (current);
-<     mp->msgattrs[1] = NULL;
----
->     mp -> msgattrs[i = 0] = getcpy (current);
->     mp -> msgattrs[++i] = NULL;
-237,248d231
-<              case FLDPLUS: 
-<                      /*
-<                       * sequence was too big for buffer: back up
-<                       * to a word break.
-<                       */
-<                      for (cp = &field[sizeof(field)-2]; !isspace(*cp); --cp)
-<                              ;
-<                      if (i = cp - &field[sizeof(field)-2]) {
-<                              *cp = 0;
-<                              fseek(fp, i, 1);
-<                      }
-<                      /*FALL THROUGH*/
-250,252d232
-<                  (void) m_setatr (mp, name, field);
-<                  continue;
-< 
-254c234,235
-<                  (void) m_setatr (mp, name, field);
----
->                  (void) m_setatr (mp, getcpy (name), trimcpy (field));
->                  if (state == FLDEOF)
-255a237
->                  continue;
-286c268
-<          if ((i = m_setatr (mp, cp, np->n_field)) != NOTOK)
----
->          if ((i = m_setatr (mp, cp, getcpy (np -> n_field))) != NOTOK)
-288d269
-<          free(cp);
-294,295c275
-< static int
-< m_setatr(mp, name, field)
----
-> static int  m_setatr (mp, name, field)
-297c277,278
-<      register char *name, *field;
----
-> register char   *name,
->              *field;
-299,300c280,286
-<     register int bits, slot, first, last;
-<     register char *cp;
----
->     int     bits,
->             hack;
->     register int    i,
->                  j,
->                  k;
->     register char  *cp,
->                   **ap;
-302,305c288,290
-<     if (strcmp (current, name) == 0) {
-<      mp->curmsg = atoi(field);
-<      return (0);
-<     }
----
->     bits = FFATTRSLOT;
->     hack = strcmp (current, name) == 0;/* hack... */
->     /* if we're going to use UNSEEN, it should be set here! */
-307,308c292,295
-<     for (slot = 0; mp->msgattrs[slot]; slot++)
-<      if (strcmp(mp->msgattrs[slot], name) == 0)
----
->     for (i = 0; mp -> msgattrs[i]; i++)
->      if (strcmp (mp -> msgattrs[i], name) == 0) {
->          for (j = mp -> lowmsg; j <= mp -> hghmsg; j++)
->              mp -> msgstats[j] &= ~(1 << (bits + i));
-310,311c297,300
-< 
-<     if (slot >= NATTRS)
----
->      }
->     if (i >= NATTRS) {
->      free (name);
->      free (field);
-312a302
->     }
-314,316c304,306
-<     if (mp->msgattrs[slot] == NULL) {
-<      mp->msgattrs[slot] = getcpy(name);
-<      mp->msgattrs[slot + 1] = NULL;
----
->     if (mp -> msgattrs[i] == NULL) {
->      mp -> msgattrs[i] = name;
->      mp -> msgattrs[i + 1] = NULL;
-317a308,309
->     else
->      free (name);
-319,338c311,328
-<     bits = 1 << (FFATTRSLOT + slot);
-< 
-<     for (cp = field; *cp; ) {
-<      while (isspace(*cp))
-<              ++cp;
-<      if (! isdigit(*cp))
-<              return (NOTOK);
-<      for (first = 0; isdigit(*cp); ++cp)
-<              first = (first * 10) + (*cp - '0');
-<      if (first == 0)
-<              return (NOTOK);
-<      if (*cp++ == '-') {
-<              /* have a range of msgs */
-<              for (last = 0; isdigit(*cp); ++cp)
-<                      last = (last * 10) + (*cp - '0');
-<              if (last < first) {
-<                      advise(NULLCP,
-<                             "seq %s msg range bad: first (%d) > last (%d)",
-<                             name, first, last);
-<                      continue;
----
->     for (ap = brkstring (field, " ", "\n");
->          *ap;
->          ap++) {
->      if (cp = index (*ap, '-'))
->          *cp++ = NULL;
->      if ((j = m_atoi (*ap)) > 0) {
-> #ifdef       notdef
->          if (hack && j >= mp -> lowmsg && j <= mp -> hghmsg
->                  && (mp -> msgstats[j] & EXISTS))
->              mp -> curmsg = j;
-> #else        not notdef
->          if (hack)
->              mp -> curmsg = j;
-> #endif       not notdef
->          for (k = cp ? m_atoi (cp) : j; j <= k; j++)
->              if (j >= mp -> lowmsg && j <= mp -> hghmsg
->                      && (mp -> msgstats[j] & EXISTS))
->                  mp -> msgstats[j] |= 1 << (bits + i);
-340,349d329
-<              if (last < mp->lowmsg)
-<                      continue;
-<              if (last > mp->hghmsg)
-<                      last = mp->hghmsg;
-<              if (first < mp->lowmsg)
-<                      first = mp->lowmsg;
-<      } else {
-<              if (first < mp->lowmsg)
-<                      continue;
-<              last = first;
-351,355c331,333
-<      for ( ; first <= last; ++first)
-<              if (mp->msgstats[first] & EXISTS)
-<                      mp->msgstats[first] |= bits;
-<     }
-<     return slot;
----
->     free (field);
-> 
->     return i;
-diff -r -w lbl/sbr/m_seq.c ./sbr/m_seq.c
-1a2,4
-> #ifndef      lint
-> static char ident[] = "@(#)$Id: m_seq.c,v 1.7 1991/02/14 14:44:38 mh Exp $";
-> #endif       lint
-6,7c9
-< static char *buffer;
-< static int bufsize = BUFSIZ;
----
-> /* new version from VJ 2/90 - faster? */
-15,16c17,19
-<      register int i, j, linlen;
-<      register char *bp, *ep;
----
->      register int i, j;
->      register char *bp;
->      static char buffer[BUFSIZ*2];   /* for big sequences */
-18,21d20
-<      if (buffer == 0) {
-<              if ((buffer = malloc(bufsize)) == NULL)
-<                      adios (NULLCP, "unable to allocate seq str storage");
-<      }
-22a22,23
->          /* assume this is in sync with msgstats["cur"] */
->          /* see m_seqadd() for details */
-38,39d38
-<      ep = bp + bufsize - 16;
-<      linlen = strlen(cp) + 2;
-41,42d39
-<              register char *oldbp;
-< 
-46,58c43
-<              oldbp = bp;
-<              if (bp > buffer) {
-<                      if (bp >= ep) {
-<                              int oldoff = bp - buffer;
-<                              bufsize <<= 1;
-<                              if ((buffer = realloc(buffer, bufsize)) == NULL)
-<                                      adios (NULLCP, "unable to allocate seq 
str storage");
-<                              oldbp = bp = buffer + oldoff;
-<                              ep = bp + bufsize - 16;
-<                      }
-<                      if (linlen >= 72) {
-<                              linlen = 0;
-<                              *bp++ = '\n';
----
->              if (bp > buffer)
-60,62c45
-<                      }
-<                      *bp++ = ' ';
-<              }
----
-> 
-73d55
-<              linlen += bp - oldbp;
-diff -r -w lbl/zotnet/tws/dtimep.lex ./zotnet/tws/dtimep.lex
-1,11d0
-< %{
-< #ifndef lint
-< static char rcsid[] =
-< #ifdef FLEX_SCANNER
-<     "@(#) $Header: dtimep.lex,v 1.15 90/10/16 14:57:20 leres Exp $ (LBL) 
(flex generated scanner)";
-< #else
-<     "@(#) $Header: dtimep.lex,v 1.15 90/10/16 14:57:20 leres Exp $ (LBL) 
(lex generated scanner)";
-< #endif
-< #endif
-< %}
-< /*
-16,17d4
-<  */
-< 
-48a36,38
-> #ifndef      lint
-> static char ident[] = "@(#)$Id: dtimep.lex,v 2.11 1992/02/10 20:32:29 
jromine Exp jromine $";
-> #endif
-49a40
-> #include "../h/strings.h"
-50a42,45
-> #include <sys/types.h>
-> #ifndef SYS5
-> #include <sys/timeb.h>
-> #endif not SYS5
-51a47,52
-> #ifdef SYS5
-> extern int  daylight;
-> extern long timezone;
-> extern char *tzname[];
-> #endif SYS5
-> 
-55c56,57
-<  * American style: MM/DD/YY.
----
->  * American style: MM/DD/YY.  Of course, these are all non-RFC822
->  * compliant.
-121c123,126
-< #define CVT2 (i=(*cp++ - '0'),isdigit(*cp)? i*10 + (*cp++ - '0') : i)
----
-> #define      CVT1OR2 (i=(*cp++ - '0'), isdigit(*cp)? i*10 + (*cp++ - '0') : 
i)
-> #define      CVT2      ((cp[0] - '0')*10 + (cp[1] - '0'))
-> #define      CVT4    ((((cp[0] - '0')*10 + (cp[1] - '0'))*10 + \
->                                    (cp[2] - '0'))*10 + (cp[3] - '0'))
-128,131c133,138
-< #ifdef FLEX_SCANNER
-< /* We get passed a string and return a pointer to a static tws struct */
-< #undef YY_DECL
-< #define YY_DECL struct tws *dparsetime(str) char *str;
----
-> #ifdef       DSTXXX
-> #ifndef      BSD42
-> #include <time.h>
-> #else        BSD42
-> #include <sys/time.h>
-> #endif       BSD42
-133,148c140,143
-< /* We assume that we're never passed more than max_size characters */
-< #undef YY_INPUT
-< #define YY_INPUT(buf,result,max_size) \
-<      if (gstr) { \
-<              register char *xp; \
-<              xp = gstr; \
-<              while (isspace(*xp)) \
-<                      xp++; \
-<              gstr = xp; \
-<              while (*xp != '\0') \
-<                      ++xp; \
-<              result = xp - gstr; \
-<              bcopy(gstr, buf, result); \
-<              gstr = 0; \
-<      } else \
-<              result = YY_NULL;
----
-> static       zonehack (tw)
-> register struct tws *tw;
-> {
->     register struct tm *tm;
-150,152c145,146
-< /* Date strings aren't usually very long */
-< #undef YY_READ_BUF_SIZE
-< #define YY_READ_BUF_SIZE 128
----
->     if (twclock (tw) == -1L)
->      return;
-154,156c148,168
-< /* Use mh error reporting routine */
-< #undef YY_FATAL_ERROR
-< #define YY_FATAL_ERROR(s) adios("dparsetime()", s);
----
->     tm = localtime (&tw -> tw_clock);
->     if (tm -> tm_isdst) {
->      tw -> tw_flags |= TW_DST;
->      tw -> tw_zone -= 60;
->     }
-> }
-> #endif       DSTXXX
-> %}
-> %%
-> %{
-> struct tws *dparsetime (str)
->      char *str;
-> {
->      register int i;
->      static struct tws tw;
->      register char *cp;
->      register int gotdate = 0;
-> #ifndef SYS5
->      struct timeb    tb;
-> #endif not SYS5
->      long tclock;
-158,160c170
-< /* We need a pointer to the matched text we can modify */
-< #undef YY_USER_ACTION
-< #define YY_USER_ACTION cp = yytext
----
->      start_cond = 0;
-162,163c172,173
-< /* Used to initialize */
-< static struct tws ztw = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
----
->      /* Zero out the struct. */
->      bzero( (char *) &tw, sizeof tw);
-165,167c175,182
-< /* Global for use by YY_INPUT() macro */
-< static char *gstr;
-< #endif
----
->      /* Set default time zone. */
-> #ifndef SYS5
->      ftime( &tb );
->      tw.tw_zone = -tb.timezone;
-> #else SYS5
->      tzset( );
->      tw.tw_zone = -(timezone / 60);
-> #endif SYS5
-169c184,187
-< %}
----
->      while (isspace(*str))
->              str++;
->      while ( 1 )
->              switch (cp = str, *cp ? lex_string( &str, start_cond) : 0) {
-171,175c189,203
-< %%
-<                                      register int i, gotdate;
-<                                      register char *cp;
-<                                      static struct tws tw;
-<                                      static void zonehack();
----
->              case -1:
->                      if (!gotdate || tw.tw_year == 0)
->                              return (struct tws *)0;
->                      /* fall through */
->              case 0:
->                      if ( tw.tw_year == 0 ) {
->                              /* Set default year. */
->                              time (&tclock);
->                              tw.tw_year = localtime(&tclock)->tm_year + 1900;
->                      }
->                      else if (tw.tw_year < 100) {
->                              /* assume no 2-digit years > 1999 */
->                              tw.tw_year += 1900;
->                      }
->                      return &tw;
-177,182c205
-<                                      BEGIN(INITIAL);
-<                                      yy_init = 1;
-<                                      tw = ztw;
-<                                      gstr = str;
-<                                      gotdate = 0;
-< 
----
-> %}
-188,189c211
-< 
-< {D}"/"{D}"/"(19)?[0-9][0-9]{w}               {
----
-> {D}(("-"{D}"-")|("/"{D}"/")){D}?{d}{d}{w}    {
-192c214
-<                                              tw.tw_mday = CVT2;
----
->                                              tw.tw_mday = CVT1OR2;
-194c216
-<                                              tw.tw_mon  = CVT2 - 1;
----
->                                              tw.tw_mon  = CVT1OR2 - 1;
-197c219
-<                                              tw.tw_mon  = CVT2 - 1;
----
->                                              tw.tw_mon  = CVT1OR2 - 1;
-199c221
-<                                              tw.tw_mday = CVT2;
----
->                                              tw.tw_mday = CVT1OR2;
-204c226,236
-<                                      tw.tw_year = i % 100;
----
->                                      tw.tw_year = i;
->                                      gotdate++;      /* XXX */
->                                      }
-> {D}("/"|"-"){D}{w}                   {
->                                      if (europeandate) {
->                                              tw.tw_mday = CVT1OR2; cp++;
->                                              tw.tw_mon  = CVT1OR2 - 1;
->                                      } else {
->                                              tw.tw_mon = CVT1OR2 - 1; cp++;
->                                              tw.tw_mday  = CVT1OR2;
->                                      }
-207,208c239,240
-< {D}{w}(-)?{w}{MONTH}{w}(-)?{w}(19)?{D}{w}(\,{w}|at{W})? {
-<                                      tw.tw_mday = CVT2;
----
-> {D}{w}(-)?{w}{MONTH}{w}(-)?{w}{D}?{d}{d}({W}at)?{w}  {
->                                      tw.tw_mday = CVT1OR2;
-214c246
-<                                      tw.tw_year = i % 100;
----
->                                      tw.tw_year = i;
-216c248,254
-< {MONTH}{W}{D}","{W}(19)?{D}{w}               {
----
-> {D}"-"?{MONTH}({W}at)?{w}               {
->                                         tw.tw_mday = CVT1OR2;
->                                         while ( ! isalpha( *cp++ ) )
->                                                 ;
->                                         SETMONTH;
->                                         }
-> {MONTH}{W}{D}","{W}{D}?{d}{d}{w}     {
-219c257
-<                                      tw.tw_mday = CVT2;
----
->                                      tw.tw_mday = CVT1OR2;
-223c261
-<                                      tw.tw_year = i % 100;
----
->                                      tw.tw_year = i;
-225d262
-< 
-229c266
-<                                      tw.tw_mday = CVT2;
----
->                                      tw.tw_mday = CVT1OR2;
-231a269,275
-> {D}:{D}:{D}{W}19[6-9]{d}             {       /* hack: ctime w/o TZ */
->                                      tw.tw_hour = CVT1OR2; cp++;
->                                      tw.tw_min  = CVT1OR2; cp++;
->                                      tw.tw_sec  = CVT1OR2;
->                                      SKIPD;
->                                      tw.tw_year = CVT4; cp+=4;
->                                      }
-233,235c277,279
-<                                      tw.tw_hour = CVT2; cp++;
-<                                      tw.tw_min  = CVT2; cp++;
-<                                      tw.tw_sec  = CVT2;
----
->                                      tw.tw_hour = CVT1OR2; cp++;
->                                      tw.tw_min  = CVT1OR2; cp++;
->                                      tw.tw_sec  = CVT1OR2;
-239,240c283,284
-<                                      tw.tw_hour = CVT2; cp++;
-<                                      tw.tw_min  = CVT2;
----
->                                      tw.tw_hour = CVT1OR2; cp++;
->                                      tw.tw_min = CVT1OR2;
-244c288
-<                                      tw.tw_hour = CVT2; cp++;
----
->                                      tw.tw_hour = CVT1OR2; cp++;
-247c291
-<                                      tw.tw_min  = CVT2;
----
->                                      tw.tw_min  = CVT1OR2;
-249a294,301
-> {D}:{D}:{D}{w}am{w}                  {
->                                      tw.tw_hour = CVT1OR2; cp++;
->                                      if (tw.tw_hour == 12)
->                                              tw.tw_hour = 0;
->                                      tw.tw_min  = CVT1OR2; cp++;
->                                      tw.tw_sec  = CVT1OR2;
->                                      BEGIN Z;
->                                      }
-251c303
-<                                      tw.tw_hour = CVT2; cp++;
----
->                                      tw.tw_hour = CVT1OR2; cp++;
-254c306
-<                                      tw.tw_min  = CVT2;
----
->                                      tw.tw_min  = CVT1OR2;
-256a309,316
-> {D}:{D}:{D}{w}pm{w}                  {
->                                      tw.tw_hour = CVT1OR2; cp++;
->                                      if (tw.tw_hour != 12)
->                                              tw.tw_hour += 12;
->                                      tw.tw_min  = CVT1OR2; cp++;
->                                      tw.tw_sec  = CVT1OR2;
->                                      BEGIN Z;
->                                      }
-258,260c318,320
-<                                      tw.tw_hour = CVT2;
-<                                      tw.tw_min  = CVT2;
-<                                      tw.tw_sec  = CVT2;
----
->                                      tw.tw_hour = CVT2; cp+=2;
->                                      tw.tw_min  = CVT2; cp+=2;
->                                      tw.tw_sec  = CVT2; cp+=2;
-267,268c327
-<                                       * and minutes. This rule must come
-<                                       * the 4 digit hour and minute rule.
----
->                                       * and minutes.
-270,271c329
-<                                      cp += 2;
-<                                      tw.tw_year = CVT2;
----
->                                      tw.tw_year = CVT4; cp+=4;
-274,275c332,338
-<                                      tw.tw_hour = CVT2;
-<                                      tw.tw_min  = CVT2;
----
->                                      if (tw.tw_hour || tw.tw_min 
->                                                          || tw.tw_sec) {
->                                          tw.tw_year = CVT4; cp+=4;
->                                          tw.tw_zone = 0;
->                                      } else {
->                                          tw.tw_hour = CVT2; cp+=2;
->                                          tw.tw_min  = CVT2; cp+=2;
-277a341
->                                      }
-315a380
->                                      EXPZONE;
-320d384
-<                                      EXPZONE; 
-327a392
->                                      EXPZONE;
-332d396
-<                                      EXPZONE; 
-334c398,401
-< 
----
-> <Z>{W}{d}{d}{d}{d}                   {
->                                      SKIPD;
->                                      tw.tw_year = CVT4; cp+=4;
->                                      }
-337,349d403
-< 
-< <INITIAL,Z><<EOF>>                   return(&tw);
-< 
-< .                                    {
-<                                      /*
-<                                       * We jammed; it's an error if we
-<                                       * didn't parse anything.
-<                                       */
-<                                      if (!gotdate || tw.tw_year == 0)
-<                                              return(0);
-<                                      return(&tw);
-<                                      }
-< 
-351,375d404
-< 
-< #ifdef       DSTXXX
-< #include <sys/types.h>
-< #ifndef      BSD42
-< #include <time.h>
-< #else        BSD42
-< #include <sys/time.h>
-< #endif       BSD42
-< 
-< static void
-< zonehack(tw)
-<     register struct tws *tw;
-< {
-<     register struct tm *tm;
-< 
-<     if (twclock (tw) == -1L)
-<      return;
-< 
-<     tm = localtime (&tw -> tw_clock);
-<     if (tm -> tm_isdst) {
-<      tw -> tw_flags |= TW_DST;
-<      tw -> tw_zone -= 60;
-<     }
-< }
-< #endif       DSTXXX
diff --git a/docs/historical/mh-6.8.5/local/lbl/files 
b/docs/historical/mh-6.8.5/local/lbl/files
deleted file mode 100644
index c53661d..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/files
+++ /dev/null
@@ -1,13 +0,0 @@
-./sbr/formatsbr.c
-./sbr/trmsbr.c
-./sbr/tags
-./sbr/t.c
-./sbr/m_gmsg.c
-./sbr/m_seq.c
-./uip/version.c
-./uip/m_getfld.c
-./zotnet/tws/dtimep.c
-./zotnet/tws/test.input
-./zotnet/tws/dtest
-./zotnet/tws/dtimep.lex
-./zotnet/tws.h
diff --git a/docs/historical/mh-6.8.5/local/lbl/sbr/formatsbr.c 
b/docs/historical/mh-6.8.5/local/lbl/sbr/formatsbr.c
deleted file mode 100644
index 6964a9e..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/sbr/formatsbr.c
+++ /dev/null
@@ -1,776 +0,0 @@
-/* formatsbr.c - format string interpretation */
-
-#include "../h/mh.h"
-#include "../h/addrsbr.h"
-#include "../h/formatsbr.h"
-#include "../zotnet/tws.h"
-#include "../h/fmtcompile.h"
-#include <ctype.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#define        NFMTS   MAXARGS
-#define QUOTE '\\'
-
-static char *formats = 0;
-extern char *formataddr();     /* hook for custom address formatting */
-struct msgs *fmt_current_folder;/* current folder (set by main program) */
-
-int fmt_norm = AD_NAME;
-struct mailname fmt_mnull;
-
-
-static
-normalize(cp)
-       register char *cp;
-{
-       register char *dp;
-
-       for (dp = cp; *cp; cp++)
-               if (*cp != QUOTE)
-                       *dp++ = *cp;
-               else
-                       switch (*++cp) {
-
-                       case 'b':
-                               *dp++ = '\b';
-                               break;
-                       case 'f':
-                               *dp++ = '\f';
-                               break;
-                       case 'n':
-                               *dp++ = '\n';
-                               break;
-                       case 'r':
-                               *dp++ = '\r';
-                               break;
-                       case 't':
-                               *dp++ = '\t';
-                               break;
-
-                       case '\n':
-                               break;
-
-                       case NULL:
-                               cp--;
-                               /* fall through */
-                       default:
-                               *dp++ = *cp;
-                               break;
-                       }
-
-       *dp = NULL;
-}
-
-char *
-new_fs(form, format, def)
-       register char *form, *format, *def;
-{
-       struct stat st;
-       register FILE *fp;
-
-       if (formats)
-               free(formats);
-
-       if (form) {
-               if ((fp = fopen(libpath(form), "r")) == NULL)
-                       adios(form, "unable to open format file");
-
-               if (fstat(fileno(fp), &st) == NOTOK)
-                       adios(form, "unable to stat format file");
-
-               if ((formats = malloc((unsigned) st.st_size + 1)) == NULLCP)
-                       adios(form, "unable to allocate space for format");
-
-               if (read(fileno(fp), formats, st.st_size) != st.st_size)
-                       adios(form, "error reading format file");
-
-               formats[st.st_size] = '\0';
-               (void) fclose(fp);
-       } else {
-               formats = getcpy(format ? format : def);
-       }
-
-       normalize(formats);
-
-       return formats;
-}
-
-/*
- * test if string "sub" appears anywhere in string "str"
- * (case insensitive).
- */
-static int
-match(str, sub)
-       register char *str, *sub;
-{
-       register int c1;
-       register int c2;
-       register char *s1;
-       register char *s2;
-
-       while (c1 = *sub) {
-               while ((c2 = *str++) && (c1 | 040) != (c2 | 040))
-                       ;
-               if (!c2)
-                       return 0;
-               s1 = sub + 1;
-               s2 = str;
-               while ((c1 = *s1++) && (c1 | 040) == (*s2++ | 040))
-                       ;
-               if (!c1)
-                       return 1;
-       }
-       return 1;
-}
-
-/* macros to format data */
-
-#define PUTDF(cp, num, wid, fill) {\
-               if (cp + wid < ep) {\
-                       if ((i = (num)) < 0)\
-                               i = -(num);\
-                       if ((c = (wid)) < 0)\
-                               c = -c;\
-                       sp = cp + c;\
-                       do {\
-                               *--sp = (i % 10) + '0';\
-                               i /= 10;\
-                       } while (i > 0 && sp > cp);\
-                       if (i > 0)\
-                               *sp = '?';\
-                       else if ((num) < 0 && sp > cp)\
-                               *--sp = '-';\
-                       while (sp > cp)\
-                               *--sp = fill;\
-                       cp += c;\
-               }}
-#define PUTD(cp, num) {\
-               if (cp < ep) {\
-                       if ((i = (num)) == 0)\
-                               *cp++ = '0';\
-                       else {\
-                               if ((i = (num)) < 0) \
-                                       *cp++ = '-', i = -(num);\
-                               c = 10;\
-                               while (c <= i) \
-                                       c *= 10;\
-                               while (cp < ep && c > 1) {\
-                                       c /= 10;\
-                                       *cp++ = (i / c) + '0';\
-                                       i %= c;\
-                               }\
-                       }\
-               }}
-#define PUTSF(cp, str, wid, fill) {\
-               char *cp2 = cp;\
-               rjust = 0;\
-               if ((i = (wid)) < 0) {\
-                       i = -i;\
-                       rjust++;\
-               }\
-               if (sp = (str)) {\
-                       if (rjust) {\
-                               c = strlen(sp);\
-                               if (c > i)\
-                                       sp += c - i;\
-                               else {\
-                                       while (--i >= c && cp < ep)\
-                                               *cp++ = fill;\
-                                       i++;\
-                               }\
-                       } else {\
-                               while ((c = *sp) && c <= 32)\
-                                       sp++;\
-                       }\
-                       while ((c = *sp++) && --i >= 0 && cp < ep)\
-                               if (c > 32) \
-                                       *cp++ = c;\
-                               else if (c == '\010') {\
-                                       if (cp > cp2)\
-                                               --cp;\
-                               } else {\
-                                       while ((c = *sp) && c <= 32)\
-                                               sp++;\
-                                       *cp++ = ' ';\
-                               }\
-               }\
-               if (!rjust)\
-                       while (--i >= 0 && cp < ep)\
-                               *cp++ = fill;\
-               }
-
-#define PUTS(cp, str) {\
-               char *cp2 = cp;\
-               if (sp = (str)) {\
-                       while ((c = *sp) && c <= 32)\
-                               sp++;\
-                       while ((c = *sp++) && cp < ep)\
-                               if (c > 32) \
-                                       *cp++ = c;\
-                               else if (c == '\010') {\
-                                       if (cp > cp2)\
-                                               --cp;\
-                               } else {\
-                                       while ((c = *sp) && c <= 32)\
-                                               sp++;\
-                                       *cp++ = ' ';\
-                               }\
-               }}
-
-static char *lmonth[] = {
-    "January", "February", "March", "April", "May", "June",
-    "July", "August", "September", "October", "November", "December"
-};
-
-
-fmtscan(format, scanl, width, dat)
-       struct format *format;
-       char *scanl;
-       int width;
-       int dat[];
-{
-       register char *cp = scanl;
-       register char *ep = scanl + width - 1;
-       register struct format *fmt = format;
-       register char *str = NULLCP;
-       register int value = 0;
-       register char *sp;
-       register int i;
-       register int c;
-       register struct comp *comp;
-       register struct tws *tws;
-       register struct mailname *mn;
-       register int j;
-       int rjust;
-       long l;
-       char *savestr;
-       char buffer[BUFSIZ];
-
-       for (;;) {
-               switch (fmt->f_type) {
-
-               case FT_COMP:
-                       PUTS(cp, fmt->f_comp->c_text);
-                       break;
-               case FT_COMPF:
-                       PUTSF(cp, fmt->f_comp->c_text, fmt->f_width,
-                           fmt->f_fill);
-                       break;
-
-               case FT_LIT_FORCE:
-                       sp = fmt->f_text;
-                       i = strlen(sp);
-                       ep += i;        /* forced lits are `invisible' */
-
-                       while (c = *sp++)
-                               *cp++ = c;
-                       break;
-               case FT_LIT:
-                       sp = fmt->f_text;
-                       while ((c = *sp++) && cp < ep)
-                               *cp++ = c;
-                       break;
-               case FT_LITF:
-                       sp = fmt->f_text;
-
-                       /* By default we left justify */
-                       rjust = 0;
-                       if ((i = fmt->f_width) < 0) {
-                               i = -i;
-                               rjust++;
-                       }
-
-                       if (rjust) {
-                               j = strlen(sp);
-                               if (j > i)
-                                       sp += j - i;
-                               else while (j < i && cp < ep) {
-                                       *cp++ = fmt->f_fill;
-                                       ++j;
-                               }
-                       }
-
-                       while ((c = *sp++) && --i >= 0 && cp < ep)
-                               *cp++ = c;
-
-                       while (--i >= 0 && cp < ep)
-                               *cp++ = fmt->f_fill;
-                       break;
-
-               case FT_STR:
-                       PUTS(cp, str);
-                       break;
-               case FT_STRF:
-                       PUTSF(cp, str, fmt->f_width, fmt->f_fill);
-                       break;
-               case FT_STRFW:
-                       adios(NULLCP, "internal error (FT_STRFW)");
-
-               case FT_NUM:
-                       PUTD(cp, value);
-                       break;
-               case FT_NUMF:
-                       PUTDF(cp, value, fmt->f_width, fmt->f_fill);
-                       break;
-
-               case FT_CHAR:
-                       *cp++ = fmt->f_char;
-                       break;
-               case FT_DONE:
-                       goto finished;
-
-               case FT_IF_S:
-                       if (str == NULLCP || *str == NULL) {
-                               fmt += fmt->f_skip;
-                               continue;
-                       }
-                       break;
-
-               case FT_IF_S_NULL:
-                       if (str != NULLCP && *str != NULL) {
-                               fmt += fmt->f_skip;
-                               continue;
-                       }
-                       break;
-
-               case FT_IF_V_EQ:
-                       if (value != fmt->f_value) {
-                               fmt += fmt->f_skip;
-                               continue;
-                       }
-                       break;
-
-               case FT_IF_V_NE:
-                       if (value == fmt->f_value) {
-                               fmt += fmt->f_skip;
-                               continue;
-                       }
-                       break;
-
-               case FT_IF_V_GT:
-                       if (value <= fmt->f_value) {
-                               fmt += fmt->f_skip;
-                               continue;
-                       }
-                       break;
-
-               case FT_IF_MATCH:
-                       if (!str || !match(str, fmt->f_text)) {
-                               fmt += fmt->f_skip;
-                               continue;
-                       }
-                       break;
-
-               case FT_V_MATCH:
-                       if (str)
-                               value = match(str, fmt->f_text);
-                       else
-                               value = 0;
-                       break;
-
-               case FT_IF_AMATCH:
-                       if (!str || !uprf(str, fmt->f_text)) {
-                               fmt += fmt->f_skip;
-                               continue;
-                       }
-                       break;
-
-               case FT_V_AMATCH:
-                       if (str)
-                               value = uprf(str, fmt->f_text);
-                       else
-                               value = 0;
-                       break;
-
-               case FT_S_NONNULL:
-                       value = (str != NULLCP && *str != NULL);
-                       break;
-
-               case FT_S_NULL:
-                       value = (str == NULLCP || *str == NULL);
-                       break;
-
-               case FT_V_EQ:
-                       value = (fmt->f_value == value);
-                       break;
-
-               case FT_V_NE:
-                       value = (fmt->f_value != value);
-                       break;
-
-               case FT_V_GT:
-                       value = (fmt->f_value > value);
-                       break;
-
-               case FT_GOTO:
-                       fmt += fmt->f_skip;
-                       continue;
-
-               case FT_NOP:
-                       break;
-
-               case FT_LS_COMP:
-                       str = fmt->f_comp->c_text;
-                       break;
-               case FT_LS_LIT:
-                       str = fmt->f_text;
-                       break;
-               case FT_LS_TRIM:
-                       if (str) {
-                               register char *xp;
-
-                               /* Be careful since str can point into buffer */
-                               bcopy(str, buffer, strlen(str) + 1);
-                               str = buffer;
-
-                               /* Eat leading whitespace */
-                               while (isspace(*str))
-                                       str++;
-
-                               /* Trim trailing whitespace */
-                               xp = str + strlen(str) - 1;
-                               while (xp > str && isspace(*xp))
-                                       *xp-- = '\0';
-
-                               /* By default we left justify */
-                               rjust = 0;
-                               if ((i = fmt->f_width) < 0) {
-                                       i = -i;
-                                       rjust++;
-                               }
-
-                               /* If necessary, limit width and/or justify */
-                               if (i > 0 && (j = strlen(str)) > i) {
-                                       if (!rjust)
-                                               str[i] = '\0';
-                                       else
-                                               str += j - i;
-                               }
-                       }
-                       break;
-
-               case FT_LV_COMPFLAG:
-                       value = fmt->f_comp->c_flags;
-                       break;
-               case FT_LV_COMP:
-                       value = (comp = fmt->f_comp)->c_text ?
-                           atoi(comp->c_text) : 0;
-                       break;
-               case FT_LV_LIT:
-                       value = fmt->f_value;
-                       break;
-               case FT_LV_DAT:
-                       value = dat[fmt->f_value];
-                       break;
-               case FT_LV_STRLEN:
-                       value = strlen(str);
-                       break;
-               case FT_LV_CHAR_LEFT:
-                       value = width - (cp - scanl);
-                       break;
-               case FT_LV_PLUS_L:
-                       value += fmt->f_value;
-                       break;
-               case FT_LV_MINUS_L:
-                       value = fmt->f_value - value;
-                       break;
-               case FT_LV_DIVIDE_L:
-                       if (fmt->f_value)
-                               value = value / fmt->f_value;
-                       else
-                               value = 0;
-                       break;
-               case FT_SAVESTR:
-                       savestr = str;
-                       break;
-
-               case FT_LV_SEC:
-                       value = fmt->f_comp->c_tws->tw_sec;
-                       break;
-               case FT_LV_MIN:
-                       value = fmt->f_comp->c_tws->tw_min;
-                       break;
-               case FT_LV_HOUR:
-                       value = fmt->f_comp->c_tws->tw_hour;
-                       break;
-               case FT_LV_MDAY:
-                       value = fmt->f_comp->c_tws->tw_mday;
-                       break;
-               case FT_LV_MON:
-                       value = fmt->f_comp->c_tws->tw_mon + 1;
-                       break;
-               case FT_LS_MONTH:
-                       str = tw_moty[fmt->f_comp->c_tws->tw_mon];
-                       break;
-               case FT_LS_LMONTH:
-                       str = lmonth[fmt->f_comp->c_tws->tw_mon];
-                       break;
-               case FT_LS_ZONE:
-                       str = dtwszone(fmt->f_comp->c_tws);
-                       break;
-               case FT_LV_YEAR:
-                       value = fmt->f_comp->c_tws->tw_year;
-                       break;
-               case FT_LV_WDAY:
-                       if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-                           (TW_SEXP | TW_SIMP)))
-                               set_dotw(tws);
-                       value = tws->tw_wday;
-                       break;
-               case FT_LS_DAY:
-                       if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-                           (TW_SEXP | TW_SIMP)))
-                               set_dotw(tws);
-                       str = tw_dotw[tws->tw_wday];
-                       break;
-               case FT_LS_WEEKDAY:
-                       if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-                           (TW_SEXP | TW_SIMP)))
-                               set_dotw(tws);
-                       str = tw_ldotw[tws->tw_wday];
-                       break;
-               case FT_LV_YDAY:
-                       value = fmt->f_comp->c_tws->tw_yday;
-                       break;
-               case FT_LV_ZONE:
-                       value = fmt->f_comp->c_tws->tw_zone;
-                       break;
-               case FT_LV_CLOCK:
-                       if ((value = fmt->f_comp->c_tws->tw_clock) == 0)
-                               value = twclock(fmt->f_comp->c_tws);
-                       break;
-               case FT_LV_RCLOCK:
-                       if ((value = fmt->f_comp->c_tws->tw_clock) == 0)
-                               value = twclock(fmt->f_comp->c_tws);
-                       value = time((long *) 0) - value;
-                       break;
-               case FT_LV_DAYF:
-                       if (!(((tws = fmt->f_comp->c_tws)->tw_flags) &
-                           (TW_SEXP | TW_SIMP)))
-                               set_dotw(tws);
-                       switch (fmt->f_comp->c_tws->tw_flags & TW_SDAY) {
-                       case TW_SEXP:
-                               value = 1;
-                               break;
-                       case TW_SIMP:
-                               value = 0;
-                               break;
-                       default:
-                               value = -1;
-                               break;
-                       }
-               case FT_LV_ZONEF:
-                       if ((fmt->f_comp->c_tws->tw_flags & TW_SZONE) ==
-                           TW_SZEXP)
-                               value = 1;
-                       else
-                               value = -1;
-                       break;
-               case FT_LV_DST:
-                       value = fmt->f_comp->c_tws->tw_flags & TW_DST;
-                       break;
-               case FT_LS_822DATE:
-                       str = dasctime(fmt->f_comp->c_tws, TW_ZONE);
-                       break;
-               case FT_LS_PRETTY:
-                       str = dasctime(fmt->f_comp->c_tws, TW_NULL);
-                       break;
-
-               case FT_LS_PERS:
-                       str = fmt->f_comp->c_mn->m_pers;
-                       break;
-               case FT_LS_MBOX:
-                       str = fmt->f_comp->c_mn->m_mbox;
-                       break;
-               case FT_LS_HOST:
-                       str = fmt->f_comp->c_mn->m_host;
-                       break;
-               case FT_LS_PATH:
-                       str = fmt->f_comp->c_mn->m_path;
-                       break;
-               case FT_LS_GNAME:
-                       str = fmt->f_comp->c_mn->m_gname;
-                       break;
-               case FT_LS_NOTE:
-                       str = fmt->f_comp->c_mn->m_note;
-                       break;
-               case FT_LS_822ADDR:
-                       str = adrformat(fmt->f_comp->c_mn);
-                       break;
-               case FT_LV_HOSTTYPE:
-                       value = fmt->f_comp->c_mn->m_type;
-                       break;
-               case FT_LV_INGRPF:
-                       value = fmt->f_comp->c_mn->m_ingrp;
-                       break;
-               case FT_LV_NOHOSTF:
-                       value = fmt->f_comp->c_mn->m_nohost;
-                       break;
-               case FT_LS_FRIENDLY:
-#ifdef BERK
-                       str = fmt->f_comp->c_mn->m_mbox;
-#else
-                       mn = fmt->f_comp->c_mn;
-                       if ((str = mn->m_pers) == NULL)
-                               switch (mn->m_type) {
-
-                               case LOCALHOST:
-                                       str = mn->m_mbox;
-                                       break;
-                               case UUCPHOST:
-                                       (void) sprintf(buffer, "%s!%s",
-                                           mn->m_host, mn->m_mbox);
-                                       str = buffer;
-                                       break;
-                               default:
-                                       if (mn->m_mbox) {
-                                               (void) sprintf(buffer, 
"address@hidden",
-                                                   mn->m_mbox, mn->m_host);
-                                               str = buffer;
-                                       } else
-                                               str = mn->m_text;
-                                       break;
-                               }
-#endif BERK
-                       break;
-
-               case FT_LOCALDATE:
-                       comp = fmt->f_comp;
-                       if ((l = comp->c_tws->tw_clock) == 0)
-                               l = twclock(comp->c_tws);
-                       tws = dlocaltime(&l);
-                       *comp->c_tws = *tws;
-                       break;
-
-               case FT_GMTDATE:
-                       comp = fmt->f_comp;
-                       if ((l = comp->c_tws->tw_clock) == 0)
-                               l = twclock(comp->c_tws);
-                       tws = dgmtime(&l);
-                       *comp->c_tws = *tws;
-                       break;
-
-               case FT_PARSEDATE:
-                       comp = fmt->f_comp;
-                       if ((sp = comp->c_text) && (tws = dparsetime(sp))) {
-                               *comp->c_tws = *tws;
-                               comp->c_flags = 0;
-                       } else if (comp->c_flags >= 0) {
-                               bzero((char *)comp->c_tws,
-                                   sizeof(*comp->c_tws));
-                               comp->c_flags = 1;
-                       }
-                       break;
-
-               case FT_FORMATADDR:
-                       /* custom address list formatting hook */
-                       str = formataddr(savestr, str);
-                       break;
-
-               case FT_PUTADDR:
-                       /*
-                        * Output the str register as an address component,
-                        * splitting it into multiple lines if necessary.
-                        * The value reg. contains the max line length.  The
-                        * lit. field may contain a string to prepend to the
-                        * result (e.g., "To: ")
-                        */
-                       {
-                               register char *lp = str;
-                               register int indent;
-                               register int wid = value;
-                               register int len = strlen(str);
-                               register char *lastb;
-
-                               sp = fmt->f_text;
-                               indent = strlen(sp);
-                               wid -= indent;
-                               while ((c = *sp++) && cp < ep)
-                                       *cp++ = c;
-                               while (len > wid) {
-                                       /*
-                                        * Try to break at a comma; failing
-                                        * that, break at a space, failing
-                                        * that, just split the line.
-                                        */
-                                       lastb = 0;
-                                       sp = lp + wid;
-                                       while (sp > lp && (c = *--sp) != ',') {
-                                               if (!lastb && isspace(c))
-                                                       lastb = sp - 1;
-                                       }
-                                       if (sp == lp)
-                                               if (!(sp = lastb))
-                                                       sp = lp + wid - 1;
-                                       len -= sp - lp + 1;
-                                       while (cp < ep && lp <= sp)
-                                               *cp++ = *lp++;
-                                       *cp++ = '\n';
-                                       for (i = indent; cp < ep && i > 0; i--)
-                                               *cp++ = ' ';
-                                       while (isspace(*lp))
-                                               lp++, len--;
-                               }
-                               PUTS(cp, lp);
-                       }
-                       break;
-
-               case FT_PARSEADDR:
-                       comp = fmt->f_comp;
-                       if (comp->c_mn != &fmt_mnull)
-                               mnfree(comp->c_mn);
-                       if ((sp = comp->c_text) && (sp = getname(sp)) &&
-                               (mn = getm(sp, NULLCP, 0, fmt_norm, NULLCP))) {
-                               comp->c_mn = mn;
-                               while (getname(""))
-                                       ;
-                       } else
-                               comp->c_mn = &fmt_mnull;
-                       break;
-
-               case FT_MYMBOX:
-                       /*
-                        * If there's no component, we say true.  Otherwise
-                        * we say "true" only if we can parse the address and
-                        * it matches one of our addresses.
-                        */
-                       comp = fmt->f_comp;
-                       if (comp->c_mn != &fmt_mnull)
-                               mnfree(comp->c_mn);
-                       if ((sp = comp->c_text) && (sp = getname(sp)) &&
-                               (mn = getm(sp, NULLCP, 0, AD_NAME, NULLCP))) {
-                               comp->c_mn = mn;
-                               comp->c_flags = ismymbox(mn);
-                               while (sp = getname(sp))
-                                       if (comp->c_flags == 0 &&
-                                           (mn = getm(sp, NULLCP, 0,
-                                           AD_NAME, NULLCP)))
-                                               comp->c_flags |= ismymbox(mn);
-                       } else {
-                               comp->c_flags = (comp->c_text == 0);
-                               comp->c_mn = &fmt_mnull;
-                       }
-                       break;
-
-               case FT_ADDTOSEQ:
-                       /*
-                        * If we're working on a folder (as opposed to a
-                        * file), add the current msg to sequence given in
-                        * literal field.  Don't disturb string or value
-                        * registers.
-                        */
-                       if (fmt_current_folder)
-                               (void) m_seqadd(fmt_current_folder,
-                                   fmt->f_text, dat[0], -1);
-                       break;
-               }
-               fmt++;
-       }
-finished:
-       if (cp[-1] != '\n')
-               *cp++ = '\n';
-       *cp = NULL;
-       return (value);
-}
diff --git a/docs/historical/mh-6.8.5/local/lbl/sbr/m_gmsg.c 
b/docs/historical/mh-6.8.5/local/lbl/sbr/m_gmsg.c
deleted file mode 100644
index c86203a..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/sbr/m_gmsg.c
+++ /dev/null
@@ -1,356 +0,0 @@
-/* m_gmsg.c - read a folder */
-
-#include "../h/mh.h"
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <ctype.h>
-#ifndef        BSD42
-#ifndef SYS5
-#include <ndir.h>
-#else  SYS5
-#include <dir.h>
-#endif  SYS5
-#else  BSD42
-#include <sys/dir.h>
-#endif BSD42
-
-
-#define        NINFO   (MAXFOLDER / 5) /* PLEASE be non-trivial... */
-struct info {
-    int     msgno;
-    int   stats;
-};
-
-static int m_getatr(), m_setatr();
-
-static int  len;
-static struct info *head;
-
-/*  */
-
-struct msgs *
-m_gmsg(name)
-       register char *name;
-{
-#ifdef COMPAT
-    register int    cur,
-                   fd;
-#endif COMPAT
-    register int    i,
-                   j;
-    register struct info *rover,
-                        *tail;
-#ifdef COMPAT
-    register char  *cp;
-    char    buffer[BUFSIZ];
-#endif COMPAT
-    register struct msgs   *mp;
-    register struct direct *dp;
-    register    DIR * dd;
-    struct stat st;
-
-    if ((dd = opendir (name = m_mailpath (name))) == NULL) {
-       free (name);
-       return NULL;
-    }
-    (void) fstat (dd->dd_fd, &st);
-
-    mp = (struct msgs  *) malloc (MSIZE (mp, 0, 0));
-    if (mp == NULL)
-       adios (NULLCP, "unable to allocate folder storage");
-    mp->lowmsg = mp->hghmsg = mp->nummsg = 0;
-    mp->curmsg = 0;
-    mp->lowsel = mp->hghsel = mp->numsel = 0;
-    mp->foldpath = name;
-    mp->msgflags = NULL;
-    if (st.st_uid != getuid () || access (name, 02) == NOTOK)
-       mp->msgflags |= READONLY;
-#ifdef COMPAT
-    cur = 0;
-#endif COMPAT
-    j = strlen (SBACKUP);
-    if (head == NULL)
-       if ((head = (struct info *)
-               malloc ((unsigned) ((len = NINFO) * sizeof *head))) == NULL)
-           adios (NULLCP, "unable to allocate info storage");
-    tail = (rover = head) + len;
-
-    while (dp = readdir (dd))
-       if (i = m_atoi (dp->d_name)) {
-           if (rover >= tail) {
-               register int curlen = tail - head;
-
-               if ((tail = (struct info *) realloc ((char *) head,
-                            (unsigned) ((len += NINFO) * sizeof *head)))
-                       == NULL)
-                   adios (NULLCP, "unable to allocate info storage");
-               else
-                   rover = tail + curlen, head = tail, tail += len;
-           }
-           if (i > mp->hghmsg)
-               mp->hghmsg = i;
-           mp->nummsg++;
-           if (mp->lowmsg == 0 || i < mp->lowmsg)
-               mp->lowmsg = i;
-           rover->msgno = i;
-           rover->stats = EXISTS;
-#ifdef notdef
-           rover->stats &= ~DELETED;
-#endif notdef
-           rover++;
-       }
-       else
-           switch (dp->d_name[0]) {
-               case '.': 
-                   continue;
-
-               case ',': 
-#ifdef notdef
-                   if ((i = m_atoi (dp->d_name + 1)) {
-                       register struct info *l;
-
-                       for (l = head; l < rover; l++)
-                           if (l->msgno == i) {
-                               if (!(l->stats & EXISTS))
-                                   l->stats |= DELETED;
-                               break;
-                           }
-                   }
-#endif notdef
-                   continue;
-
-#ifdef MHE
-               case '+': 
-                   continue;
-#endif MHE
-
-#ifdef UCI
-               case '_': 
-               case '#': 
-                   continue;
-#endif UCI
-
-               default: 
-#ifdef COMPAT
-                   if (strcmp (dp->d_name, current) == 0) {
-                       cur++;
-                       continue;
-                   }
-#endif COMPAT
-                   if (strcmp (dp->d_name, LINK) == 0
-                           || strncmp (dp->d_name, SBACKUP, j) == 0)
-                       continue;
-                   mp->msgflags |= OTHERS;
-                   continue;
-           }
-
-    closedir (dd);
-
-/*  */
-
-#ifdef COMPAT
-    (void) sprintf (buffer, "%s-%s", current, name);
-    if (cp = m_find (buffer)) {
-       i = m_atoi (cp);
-       (void) m_delete(buffer);
-       if (i > 0)
-           mp->curmsg = i;
-    }
-    if (mp->curmsg == 0 && cur && (fd = open (current, 0)) != NOTOK) {
-           if ((i = read (fd, buffer, sizeof buffer)) > 0) {
-               if (cp = index (buffer, '\n'))
-                   *cp = NULL;
-               if ((i = m_atoi (buffer)) > 0)
-                   mp->curmsg = i;
-           }
-           (void) close (fd);
-       }
-    if (cur && !(mp->msgflags & READONLY)){    /* sneaky... */
-       (void) sprintf (buffer, "%s/%s", name, current);
-       (void) unlink (buffer);
-    }
-#endif COMPAT
-
-#ifndef        MTR
-    mp->lowoff = 1;
-#else  MTR
-    mp->lowoff = mp->lowmsg;
-#endif MTR
-    mp->hghoff = mp->hghmsg + 1;/* for "new" in m_convert */
-
-    mp = (struct msgs  *)
-               realloc ((char *) mp, MSIZE (mp, mp->lowoff, mp->hghoff));
-    if (mp == NULL)
-       adios (NULLCP, "unable to allocate folder storage");
-#ifndef        MTR
-    for (i = mp->lowmsg; i <= mp->hghmsg; i++)
-       mp->msgstats[i] = 0;
-#else  MTR
-    mp->msgstats = (int *)
-               calloc ((unsigned) 1, MSIZEX (mp, mp->lowmsg, mp->hghmsg));
-    if (mp->msgstats == NULL)
-       adios (NULLCP, "unable to allocate messages storage");
-    mp->msgstats = (mp->msgbase = mp->msgstats) - mp->lowoff;
-    if (mp->msgstats < 0)
-       adios (NULLCP, "m_gmsg() botch -- you lose big");
-#endif MTR
-    for (tail = head; tail < rover; tail++)
-       mp->msgstats[tail->msgno] = tail->stats;
-    m_getatr (mp);
-
-    return mp;
-}
-
-/*  */
-
-static int
-m_getatr(mp)
-       register struct msgs *mp;
-{
-    int     alen,
-            bits,
-            i,
-            j,
-            plen,
-            state;
-    register char  *cp;
-    char    name[NAMESZ],
-            field[BUFSIZ];
-    register struct node   *np;
-    register    FILE * fp;
-
-    bits = FFATTRSLOT;
-
-    mp->msgattrs[0] = getcpy (current);
-    mp->msgattrs[1] = NULL;
-    mp->attrstats = 0; /* initially, all public */
-
-    m_getdefs ();
-    if (mh_seq == NULL || *mh_seq == NULL)
-       goto private_only;
-
-    (void) sprintf (field, "%s/%s", mp->foldpath, mh_seq);
-    if (fp = fopen (field, "r")) {
-       for (state = FLD;;) {
-           switch (state = m_getfld (state, name, field, sizeof field, fp)) {
-               case FLDPLUS: 
-                       /*
-                        * sequence was too big for buffer: back up
-                        * to a word break.
-                        */
-                       for (cp = &field[sizeof(field)-2]; !isspace(*cp); --cp)
-                               ;
-                       if (i = cp - &field[sizeof(field)-2]) {
-                               *cp = 0;
-                               fseek(fp, i, 1);
-                       }
-                       /*FALL THROUGH*/
-               case FLD: 
-                   (void) m_setatr (mp, name, field);
-                   continue;
-
-               case FLDEOF: 
-                   (void) m_setatr (mp, name, field);
-                   break;
-
-               case BODY: 
-               case BODYEOF: 
-                   adios (NULLCP,
-                           "no blank lines are permitted in %s/%s",
-                           mp->foldpath, mh_seq);/* fall */
-
-               case FILEEOF:
-                   break;
-
-               default: 
-                   adios (NULLCP, "%s/%s is poorly formatted",
-                           mp->foldpath, mh_seq);
-           }
-           break;
-       }
-       (void) fclose (fp);
-    }
-
-private_only: ;
-    alen = strlen ("atr-");
-    plen = strlen (mp->foldpath) + 1;
-
-    for (np = m_defs; np; np = np->n_next)
-       if (ssequal ("atr-", np->n_name)
-               && (j = strlen (np->n_name) - plen) > alen
-               && *(np->n_name + j) == '-'
-               && strcmp (mp->foldpath, np->n_name + j + 1) == 0) {
-           cp = getcpy (np->n_name + alen);
-           *(cp + j - alen) = NULL;
-           if ((i = m_setatr (mp, cp, np->n_field)) != NOTOK)
-               mp->attrstats |= 1 << (bits + i);/* private */
-           free(cp);
-       }
-}
-
-/*  */
-
-static int
-m_setatr(mp, name, field)
-       register struct msgs *mp;
-       register char *name, *field;
-{
-    register int bits, slot, first, last;
-    register char *cp;
-
-    if (strcmp (current, name) == 0) {
-       mp->curmsg = atoi(field);
-       return (0);
-    }
-
-    for (slot = 0; mp->msgattrs[slot]; slot++)
-       if (strcmp(mp->msgattrs[slot], name) == 0)
-           break;
-
-    if (slot >= NATTRS)
-       return NOTOK;
-
-    if (mp->msgattrs[slot] == NULL) {
-       mp->msgattrs[slot] = getcpy(name);
-       mp->msgattrs[slot + 1] = NULL;
-    }
-
-    bits = 1 << (FFATTRSLOT + slot);
-
-    for (cp = field; *cp; ) {
-       while (isspace(*cp))
-               ++cp;
-       if (! isdigit(*cp))
-               return (NOTOK);
-       for (first = 0; isdigit(*cp); ++cp)
-               first = (first * 10) + (*cp - '0');
-       if (first == 0)
-               return (NOTOK);
-       if (*cp++ == '-') {
-               /* have a range of msgs */
-               for (last = 0; isdigit(*cp); ++cp)
-                       last = (last * 10) + (*cp - '0');
-               if (last < first) {
-                       advise(NULLCP,
-                              "seq %s msg range bad: first (%d) > last (%d)",
-                              name, first, last);
-                       continue;
-               }
-               if (last < mp->lowmsg)
-                       continue;
-               if (last > mp->hghmsg)
-                       last = mp->hghmsg;
-               if (first < mp->lowmsg)
-                       first = mp->lowmsg;
-       } else {
-               if (first < mp->lowmsg)
-                       continue;
-               last = first;
-       }
-       for ( ; first <= last; ++first)
-               if (mp->msgstats[first] & EXISTS)
-                       mp->msgstats[first] |= bits;
-    }
-    return slot;
-}
diff --git a/docs/historical/mh-6.8.5/local/lbl/sbr/m_seq.c 
b/docs/historical/mh-6.8.5/local/lbl/sbr/m_seq.c
deleted file mode 100644
index 50748fa..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/sbr/m_seq.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/* m_seq.c - print out a message sequence */
-
-#include "../h/mh.h"
-#include <stdio.h>
-
-static char *buffer;
-static int bufsize = BUFSIZ;
-
-char *
-m_seq(mp, cp)
-       struct msgs *mp;
-       char *cp;
-{
-       int mask;
-       register int i, j, linlen;
-       register char *bp, *ep;
-
-       if (buffer == 0) {
-               if ((buffer = malloc(bufsize)) == NULL)
-                       adios (NULLCP, "unable to allocate seq str storage");
-       }
-       if (strcmp(current, cp) == 0) {
-               if (mp->curmsg) {
-                       (void) sprintf(buffer, "%s", m_name(mp->curmsg));
-                       return (buffer);
-               } else
-                       return (NULL);
-       }
-       for (i = 0; mp->msgattrs[i]; i++)
-               if (strcmp(mp->msgattrs[i], cp) == 0)
-                       break;
-       
-       if (! mp->msgattrs[i])
-               return (NULL);
-
-       mask = EXISTS | (1 << (FFATTRSLOT + i));
-       bp = buffer;
-       ep = bp + bufsize - 16;
-       linlen = strlen(cp) + 2;
-       for (i = mp->lowmsg; i <= mp->hghmsg; ++i) {
-               register char *oldbp;
-
-               if ((mp->msgstats[i] & mask) != mask)
-                       continue;
-
-               oldbp = bp;
-               if (bp > buffer) {
-                       if (bp >= ep) {
-                               int oldoff = bp - buffer;
-                               bufsize <<= 1;
-                               if ((buffer = realloc(buffer, bufsize)) == NULL)
-                                       adios (NULLCP, "unable to allocate seq 
str storage");
-                               oldbp = bp = buffer + oldoff;
-                               ep = bp + bufsize - 16;
-                       }
-                       if (linlen >= 72) {
-                               linlen = 0;
-                               *bp++ = '\n';
-                               *bp++ = ' ';
-                       }
-                       *bp++ = ' ';
-               }
-               (void) sprintf(bp, "%s", m_name(i));
-               bp += strlen(bp);
-               j = i;
-               for (++i; i <= mp->hghmsg && (mp->msgstats[i] & mask) == mask;
-                    ++i)
-                       ;
-               if (i - j > 1) {
-                       (void) sprintf(bp, "-%s", m_name(i - 1));
-                       bp += strlen(bp);
-               }
-               linlen += bp - oldbp;
-       }
-       return (bp > buffer? buffer : NULL);
-}
diff --git a/docs/historical/mh-6.8.5/local/lbl/sbr/t.c 
b/docs/historical/mh-6.8.5/local/lbl/sbr/t.c
deleted file mode 100644
index 352a443..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/sbr/t.c
+++ /dev/null
@@ -1,337 +0,0 @@
-/* m_gmsg.c - read a folder */
-
-#include "../h/mh.h"
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#ifndef        BSD42
-#ifndef SYS5
-#include <ndir.h>
-#else  SYS5
-#include <dir.h>
-#endif  SYS5
-#else  BSD42
-#include <sys/dir.h>
-#endif BSD42
-
-
-#define        NINFO   (MAXFOLDER / 5) /* PLEASE be non-trivial... */
-struct info {
-    int     msgno;
-    int   stats;
-};
-
-static int m_getatr(), m_setatr();
-
-static int  len;
-static struct info *head;
-
-/*  */
-
-struct msgs *
-m_gmsg(name)
-       register char *name;
-{
-#ifdef COMPAT
-    register int    cur,
-                   fd;
-#endif COMPAT
-    register int    i,
-                   j;
-    register struct info *rover,
-                        *tail;
-#ifdef COMPAT
-    register char  *cp;
-    char    buffer[BUFSIZ];
-#endif COMPAT
-    register struct msgs   *mp;
-    register struct direct *dp;
-    register    DIR * dd;
-    struct stat st;
-
-    if ((dd = opendir (name = m_mailpath (name))) == NULL) {
-       free (name);
-       return NULL;
-    }
-    (void) fstat (dd -> dd_fd, &st);
-
-    mp = (struct msgs  *) malloc (MSIZE (mp, 0, 0));
-    if (mp == NULL)
-       adios (NULLCP, "unable to allocate folder storage");
-    mp -> lowmsg = mp -> hghmsg = mp -> nummsg = 0;
-    mp -> curmsg = 0;
-    mp -> lowsel = mp -> hghsel = mp -> numsel = 0;
-    mp -> foldpath = name;
-    mp -> msgflags = NULL;
-    if (st.st_uid != getuid () || access (name, 02) == NOTOK)
-       mp -> msgflags |= READONLY;
-#ifdef COMPAT
-    cur = 0;
-#endif COMPAT
-    j = strlen (SBACKUP);
-    if (head == NULL)
-       if ((head = (struct info *)
-               malloc ((unsigned) ((len = NINFO) * sizeof *head))) == NULL)
-           adios (NULLCP, "unable to allocate info storage");
-    tail = (rover = head) + len;
-
-    while (dp = readdir (dd))
-       if (i = m_atoi (dp -> d_name)) {
-           if (rover >= tail) {
-               register int curlen = tail - head;
-
-               if ((tail = (struct info *) realloc ((char *) head,
-                            (unsigned) ((len += NINFO) * sizeof *head)))
-                       == NULL)
-                   adios (NULLCP, "unable to allocate info storage");
-               else
-                   rover = tail + curlen, head = tail, tail += len;
-           }
-           if (i > mp -> hghmsg)
-               mp -> hghmsg = i;
-           mp -> nummsg++;
-           if (mp -> lowmsg == 0 || i < mp -> lowmsg)
-               mp -> lowmsg = i;
-           rover -> msgno = i;
-           rover -> stats = EXISTS;
-#ifdef notdef
-           rover -> stats &= ~DELETED;
-#endif notdef
-           rover++;
-       }
-       else
-           switch (dp -> d_name[0]) {
-               case '.': 
-                   continue;
-
-               case ',': 
-#ifdef notdef
-                   if ((i = m_atoi (dp -> d_name + 1)) {
-                       register struct info *l;
-
-                       for (l = head; l < rover; l++)
-                           if (l -> msgno == i) {
-                               if (!(l -> stats & EXISTS))
-                                   l -> stats |= DELETED;
-                               break;
-                           }
-                   }
-#endif notdef
-                   continue;
-
-#ifdef MHE
-               case '+': 
-                   continue;
-#endif MHE
-
-#ifdef UCI
-               case '_': 
-               case '#': 
-                   continue;
-#endif UCI
-
-               default: 
-#ifdef COMPAT
-                   if (strcmp (dp -> d_name, current) == 0) {
-                       cur++;
-                       continue;
-                   }
-#endif COMPAT
-                   if (strcmp (dp -> d_name, LINK) == 0
-                           || strncmp (dp -> d_name, SBACKUP, j) == 0)
-                       continue;
-                   mp -> msgflags |= OTHERS;
-                   continue;
-           }
-
-    closedir (dd);
-
-/*  */
-
-#ifdef COMPAT
-    (void) sprintf (buffer, "%s-%s", current, name);
-    if (cp = m_find (buffer)) {
-       i = m_atoi (cp);
-       (void) m_delete(buffer);
-       if (i > 0)
-           mp -> curmsg = i;
-    }
-    if (mp -> curmsg == 0 && cur && (fd = open (current, 0)) != NOTOK) {
-           if ((i = read (fd, buffer, sizeof buffer)) > 0) {
-               if (cp = index (buffer, '\n'))
-                   *cp = NULL;
-               if ((i = m_atoi (buffer)) > 0)
-                   mp -> curmsg = i;
-           }
-           (void) close (fd);
-       }
-    if (cur && !(mp -> msgflags & READONLY)){  /* sneaky... */
-       (void) sprintf (buffer, "%s/%s", name, current);
-       (void) unlink (buffer);
-    }
-#endif COMPAT
-
-#ifndef        MTR
-    mp -> lowoff = 1;
-#else  MTR
-    mp -> lowoff = mp -> lowmsg;
-#endif MTR
-    mp -> hghoff = mp -> hghmsg + 1;/* for "new" in m_convert */
-
-    mp = (struct msgs  *)
-               realloc ((char *) mp, MSIZE (mp, mp -> lowoff, mp -> hghoff));
-    if (mp == NULL)
-       adios (NULLCP, "unable to allocate folder storage");
-#ifndef        MTR
-    for (i = mp -> lowmsg; i <= mp -> hghmsg; i++)
-       mp -> msgstats[i] = 0;
-#else  MTR
-    mp -> msgstats = (int *)
-               calloc ((unsigned) 1, MSIZEX (mp, mp -> lowmsg, mp -> hghmsg));
-    if (mp -> msgstats == NULL)
-       adios (NULLCP, "unable to allocate messages storage");
-    mp -> msgstats = (mp -> msgbase = mp -> msgstats) - mp -> lowoff;
-    if (mp -> msgstats < 0)
-       adios (NULLCP, "m_gmsg() botch -- you lose big");
-#endif MTR
-    for (tail = head; tail < rover; tail++)
-       mp -> msgstats[tail -> msgno] = tail -> stats;
-    m_getatr (mp);
-
-    return mp;
-}
-
-/*  */
-
-static int
-m_getatr(mp)
-       register struct msgs *mp;
-{
-    int     alen,
-            bits,
-            i,
-            j,
-            plen,
-            state;
-    register char  *cp;
-    char    name[NAMESZ],
-            field[BUFSIZ];
-    register struct node   *np;
-    register    FILE * fp;
-
-    bits = FFATTRSLOT;
-
-    mp -> msgattrs[i = 0] = getcpy (current);
-    mp -> msgattrs[++i] = NULL;
-    mp -> attrstats = 0;       /* initially, all public */
-
-    m_getdefs ();
-    if (mh_seq == NULL || *mh_seq == NULL)
-       goto private_only;
-
-    (void) sprintf (field, "%s/%s", mp -> foldpath, mh_seq);
-    if (fp = fopen (field, "r")) {
-       for (state = FLD;;) {
-           switch (state = m_getfld (state, name, field, sizeof field, fp)) {
-               case FLD: 
-               case FLDEOF: 
-                   (void) m_setatr (mp, getcpy (name), trimcpy (field));
-                   if (state == FLDEOF)
-                       break;
-                   continue;
-
-               case BODY: 
-               case BODYEOF: 
-                   adios (NULLCP,
-                           "no blank lines are permitted in %s/%s",
-                           mp -> foldpath, mh_seq);/* fall */
-
-               case FILEEOF:
-                   break;
-
-               default: 
-                   adios (NULLCP, "%s/%s is poorly formatted",
-                           mp -> foldpath, mh_seq);
-           }
-           break;
-       }
-       (void) fclose (fp);
-    }
-
-private_only: ;
-    alen = strlen ("atr-");
-    plen = strlen (mp -> foldpath) + 1;
-
-    for (np = m_defs; np; np = np -> n_next)
-       if (ssequal ("atr-", np -> n_name)
-               && (j = strlen (np -> n_name) - plen) > alen
-               && *(np -> n_name + j) == '-'
-               && strcmp (mp -> foldpath, np -> n_name + j + 1) == 0) {
-           cp = getcpy (np -> n_name + alen);
-           *(cp + j - alen) = NULL;
-           if ((i = m_setatr (mp, cp, getcpy (np -> n_field))) != NOTOK)
-               mp -> attrstats |= 1 << (bits + i);/* private */
-       }
-}
-
-/*  */
-
-static int
-m_setatr(mp, name, field)
-       register struct msgs *mp;
-       register char *name, *field;
-{
-    int     bits,
-            hack;
-    register int    i,
-                   j,
-                   k;
-    register char  *cp,
-                  **ap;
-
-    bits = FFATTRSLOT;
-    hack = strcmp (current, name) == 0;/* hack... */
-
-    for (i = 0; mp -> msgattrs[i]; i++)
-       if (strcmp (mp -> msgattrs[i], name) == 0) {
-           for (j = mp -> lowmsg; j <= mp -> hghmsg; j++)
-               mp -> msgstats[j] &= ~(1 << (bits + i));
-           break;
-       }
-    if (i >= NATTRS) {
-       free (name);
-       free (field);
-       return NOTOK;
-    }
-
-    if (mp -> msgattrs[i] == NULL) {
-       mp -> msgattrs[i] = name;
-       mp -> msgattrs[i + 1] = NULL;
-    }
-    else
-       free (name);
-
-    for (ap = brkstring (field, " ", "\n");
-           *ap;
-           ap++) {
-       if (cp = index (*ap, '-'))
-           *cp++ = NULL;
-       if ((j = m_atoi (*ap)) > 0) {
-#ifdef notdef
-           if (hack && j >= mp -> lowmsg && j <= mp -> hghmsg
-                   && (mp -> msgstats[j] & EXISTS))
-               mp -> curmsg = j;
-#else  not notdef
-           if (hack)
-               mp -> curmsg = j;
-#endif not notdef
-           for (k = cp ? m_atoi (cp) : j; j <= k; j++)
-               if (j >= mp -> lowmsg && j <= mp -> hghmsg
-                       && (mp -> msgstats[j] & EXISTS))
-                   mp -> msgstats[j] |= 1 << (bits + i);
-       }
-    }
-    free (field);
-
-    return i;
-}
diff --git a/docs/historical/mh-6.8.5/local/lbl/sbr/tags 
b/docs/historical/mh-6.8.5/local/lbl/sbr/tags
deleted file mode 120000
index 305be39..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/sbr/tags
+++ /dev/null
@@ -1 +0,0 @@
-../uip/tags
\ No newline at end of file
diff --git a/docs/historical/mh-6.8.5/local/lbl/sbr/trmsbr.c 
b/docs/historical/mh-6.8.5/local/lbl/sbr/trmsbr.c
deleted file mode 100644
index bd8b959..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/sbr/trmsbr.c
+++ /dev/null
@@ -1,236 +0,0 @@
-/* trmsbr.c - minor termcap support (load with -ltermlib) */
-
-#include "../h/mh.h"
-#include <stdio.h>
-#ifndef        SYS5
-#include <sgtty.h>
-#else  SYS5
-#include <sys/types.h>
-#include <termio.h>
-#include <sys/ioctl.h>
-#endif SYS5
-#include <ctype.h>
-
-
-#if    BUFSIZ<2048
-#define        TXTSIZ  2048
-#else
-#define        TXTSIZ  BUFSIZ
-#endif
-
-char   PC;
-short  ospeed;
-
-int     tgetent (), tgetnum ();
-char   *tgetstr ();
-
-/*  */
-
-static int  TCinited = 0;
-static int  TCavailable = 0;
-static int  initLI = 0;
-static int  LI = 24;
-static int  initCO = 0;
-static int  CO = 80;
-static char *CL = NULL;
-static char *SE = NULL;
-static char *SO = NULL;
-
-static char termcap[TXTSIZ];
-static char area[TXTSIZ];
-
-/*  */
-
-static void
-read_termcap()
-{
-    register char  *bp,
-                   *term;
-    register int i;
-    char   *cp;
-#ifndef        SYS5
-    struct sgttyb   sg;
-#else  SYS5
-    struct termio   sg;
-#endif SYS5
-
-    if (TCinited)
-       return;
-
-    ++TCinited;
-
-    if (!isatty(fileno(stdout)))
-       return;
-
-    if ((term = getenv ("TERM")) == NULL || tgetent (termcap, term) <= OK)
-       return;
-
-    ++TCavailable;
-
-#ifndef        SYS5
-    ospeed = ioctl(fileno (stdout), TIOCGETP, (char *) &sg) != NOTOK
-               ? sg.sg_ospeed : 0;
-#else  SYS5
-    ospeed = ioctl(fileno (stdout), TCGETA, &sg) != NOTOK
-               ? sg.c_cflag & CBAUD : 0;
-#endif SYS5
-
-    if (!initCO && (i = tgetnum ("co")) > 0)
-       CO = i;
-    if (!initLI && (i = tgetnum ("li")) > 0)
-       LI = i;
-
-    cp = area;
-    CL = tgetstr ("cl", &cp);
-    if (bp = tgetstr ("pc", &cp))
-       PC = *bp;
-    if (tgetnum ("sg") <= 0) {
-       SE = tgetstr ("se", &cp);
-       SO = tgetstr ("so", &cp);
-    }
-}
-
-/*  */
-
-int
-sc_width()
-{
-#ifdef TIOCGWINSZ
-    struct winsize win;
-
-    if (ioctl(fileno (stderr), TIOCGWINSZ, &win) != NOTOK && win.ws_col > 0) {
-       CO = win.ws_col;
-       initCO++;
-    } else
-#endif TIOCGWINSZ
-       read_termcap();
-
-    return CO;
-}
-
-
-int
-sc_length()
-{
-#ifdef TIOCGWINSZ
-    struct winsize win;
-
-    if (ioctl(fileno (stderr), TIOCGWINSZ, &win) != NOTOK && win.ws_row > 0) {
-       LI = win.ws_row;
-       initLI++;
-    } else
-#endif TIOCGWINSZ
-       read_termcap();
-
-    return LI;
-}
-
-/*  */
-
-static int
-outc(c)
-register char    c;
-{
-    (void) putchar (c);
-}
-
-
-void
-clear_screen()
-{
-    read_termcap();
-
-    if (CL && ospeed)
-       tputs (CL, LI, outc);
-    else {
-       printf ("\f");
-       if (ospeed)
-           printf ("\200");
-    }
-
-    (void) fflush (stdout);
-}
-
-/*  */
-
-/* VARARGS1 */
-
-SOprintf(fmt, a, b, c, d, e, f)
-char   *fmt,
-       *a,
-       *b,
-       *c,
-       *d,
-       *e,
-       *f;
-{
-    read_termcap();
-    if (SO == NULL || SE == NULL)
-       return NOTOK;
-
-    tputs (SO, 1, outc);
-    printf (fmt, a, b, c, d, e, f);
-    tputs (SE, 1, outc);
-
-    return OK;
-}
-
-#define MAXTCENT 32
-static int nTCent;
-static char *TCid[MAXTCENT];
-static char *TCent[MAXTCENT];
-
-char *
-get_termcap(id)
-       char *id;
-{
-       register int i;
-       char *cp;
-       static char tcbuf[1024];
-       static char *tcptr = tcbuf;
-
-       for (i = 0; i < nTCent; ++i)
-               if (strcmp(TCid[i], id) == 0)
-                       return (TCent[i]);
-
-       if (nTCent >= MAXTCENT)
-               return ("");
-
-       TCid[nTCent] = getcpy(id);
-
-       if (TCinited == 0)
-               read_termcap();
-
-       if (!TCavailable)
-               return ("");
-
-       cp = tgetstr(id, &tcptr);
-       if (cp == 0) {
-               /* check for some alternates for the entry */
-               if (strcmp(id, "mb") == 0 ||
-                   strcmp(id, "md") == 0 ||
-                   strcmp(id, "mh") == 0 ||
-                   strcmp(id, "mr") == 0 ||
-                   strcmp(id, "us") == 0)
-                       id = "so";
-               else if (strcmp(id, "me") == 0 ||
-                        strcmp(id, "ue") == 0)
-                       id = "se";
-               cp = tgetstr(id, &tcptr);
-               if (cp == 0)
-                       cp = "";
-       }
-
-       /* skip leading delay spec */
-       while (isdigit(*cp))
-               ++cp;
-       if (*cp == '.')
-               if (isdigit(*++cp))
-                       ++cp;
-       if (*cp == '*')
-               ++cp;
-
-       TCent[nTCent] = cp;
-       ++nTCent;
-       return (cp);
-}
diff --git a/docs/historical/mh-6.8.5/local/lbl/uip/m_getfld.c 
b/docs/historical/mh-6.8.5/local/lbl/uip/m_getfld.c
deleted file mode 120000
index 6feb0bf..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/uip/m_getfld.c
+++ /dev/null
@@ -1 +0,0 @@
-../sbr/m_getfld.c
\ No newline at end of file
diff --git a/docs/historical/mh-6.8.5/local/lbl/uip/version.c 
b/docs/historical/mh-6.8.5/local/lbl/uip/version.c
deleted file mode 100644
index 86ef53f..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/uip/version.c
+++ /dev/null
@@ -1 +0,0 @@
-char *version = "LBL MH 6.5.1 (ace.ee.lbl.gov) of Wed Sep 18 13:06:31 PDT 
1991";
diff --git a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws.h 
b/docs/historical/mh-6.8.5/local/lbl/zotnet/tws.h
deleted file mode 120000
index d2dba12..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws.h
+++ /dev/null
@@ -1 +0,0 @@
-tws/tws.h
\ No newline at end of file
diff --git a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtest 
b/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtest
deleted file mode 100755
index 675b1d6..0000000
Binary files a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtest and 
/dev/null differ
diff --git a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.c 
b/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.c
deleted file mode 100644
index d47d5a2..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.c
+++ /dev/null
@@ -1,1643 +0,0 @@
-/* A lexical scanner generated by flex */
-
-/* scanner skeleton version:
- * $Header: flex.skel,v 1.2 90/06/27 22:56:49 leres Exp $
- */
-
-#define FLEX_SCANNER
-
-#include <stdio.h>
-
-#ifdef __STDC__
-
-#ifndef DONT_HAVE_STDLIB_H
-#include <stdlib.h>
-#else
-void *malloc( unsigned );
-void free( void* );
-#endif
-
-#define YY_USE_PROTOS
-#define YY_USE_CONST
-#endif
-
-
-/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
-#ifdef c_plusplus
-#ifndef __cplusplus
-#define __cplusplus
-#endif
-#endif
-
-
-#ifdef __cplusplus
-
-#ifndef __STDC__
-#include <stdlib.h>
-#endif
-
-#include <osfcn.h>
-
-/* use prototypes in function declarations */
-#define YY_USE_PROTOS
-
-/* the "const" storage-class-modifier is valid */
-#define YY_USE_CONST
-
-#endif
-
-
-#ifdef __TURBOC__
-#define YY_USE_CONST
-#endif
-
-
-#ifndef YY_USE_CONST
-#define const
-#endif
-
-
-#ifdef YY_USE_PROTOS
-#define YY_PROTO(proto) proto
-#else
-#define YY_PROTO(proto) ()
-/* there's no standard place to get these definitions */
-char *malloc();
-int free();
-int read();
-#endif
-
-
-/* amount of stuff to slurp up with each read */
-#ifndef YY_READ_BUF_SIZE
-#define YY_READ_BUF_SIZE 8192
-#endif
-
-/* returned upon end-of-file */
-#define YY_END_TOK 0
-
-/* copy whatever the last rule matched to the standard output */
-
-/* cast to (char *) is because for 8-bit chars, yytext is (unsigned char *) */
-/* this used to be an fputs(), but since the string might contain NUL's,
- * we now use fwrite()
- */
-#define ECHO (void) fwrite( (char *) yytext, yyleng, 1, yyout )
-
-/* gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
- * is returned in "result".
- */
-#define YY_INPUT(buf,result,max_size) \
-       if ( (result = read( fileno(yyin), (char *) buf, max_size )) < 0 ) \
-           YY_FATAL_ERROR( "read() in flex scanner failed" );
-#define YY_NULL 0
-
-/* no semi-colon after return; correct usage is to write "yyterminate();" -
- * we don't want an extra ';' after the "return" because that will cause
- * some compilers to complain about unreachable statements.
- */
-#define yyterminate() return ( YY_NULL )
-
-/* report a fatal error */
-
-/* The funky do-while is used to turn this macro definition into
- * a single C statement (which needs a semi-colon terminator).
- * This avoids problems with code like:
- *
- *     if ( something_happens )
- *             YY_FATAL_ERROR( "oops, the something happened" );
- *     else
- *             everything_okay();
- *
- * Prior to using the do-while the compiler would get upset at the
- * "else" because it interpreted the "if" statement as being all
- * done when it reached the ';' after the YY_FATAL_ERROR() call.
- */
-
-#define YY_FATAL_ERROR(msg) \
-       do \
-               { \
-               (void) fputs( msg, stderr ); \
-               (void) putc( '\n', stderr ); \
-               exit( 1 ); \
-               } \
-       while ( 0 )
-
-/* default yywrap function - always treat EOF as an EOF */
-#define yywrap() 1
-
-/* enter a start condition.  This macro really ought to take a parameter,
- * but we do it the disgusting crufty way forced on us by the ()-less
- * definition of BEGIN
- */
-#define BEGIN yy_start = 1 + 2 *
-
-/* action number for EOF rule of a given start state */
-#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
-
-/* special action meaning "start processing a new file" */
-#define YY_NEW_FILE \
-       do \
-               { \
-               yy_init_buffer( yy_current_buffer, yyin ); \
-               yy_load_buffer_state(); \
-               } \
-       while ( 0 )
-
-/* default declaration of generated scanner - a define so the user can
- * easily add parameters
- */
-#define YY_DECL int yylex YY_PROTO(( void )) 
-
-/* code executed at the end of each rule */
-#define YY_BREAK break;
-
-#define YY_END_OF_BUFFER_CHAR 0
-
-#ifndef YY_BUF_SIZE
-#define YY_BUF_SIZE (YY_READ_BUF_SIZE * 2) /* size of default input buffer */
-#endif
-
-typedef struct yy_buffer_state *YY_BUFFER_STATE;
-
-#define YY_CHAR char
-#define INITIAL 0
-#ifndef lint
-static char rcsid[] =
-#ifdef FLEX_SCANNER
-    "@(#) $Header: dtimep.lex,v 1.15 90/10/16 14:57:20 leres Locked $ (LBL) 
(flex generated scanner)";
-#else
-    "@(#) $Header: dtimep.lex,v 1.15 90/10/16 14:57:20 leres Locked $ (LBL) 
(lex generated scanner)";
-#endif
-#endif
-/*
-%e 2000
-%p 5000
-%n 1000
-%a 4000
- */
-#define Z 1
-#include "tws.h"
-#include <ctype.h>
-
-/*
- * Patchable flag that says how to interpret NN/NN/NN dates. When
- * true, we do it European style: DD/MM/YY. When false, we do it
- * American style: MM/DD/YY.
- */
-int europeandate = 0;
-
-/*
- * Table to convert month names to numeric month.  We use the
- * fact that the low order 5 bits of the sum of the 2nd & 3rd
- * characters of the name is a hash with no collisions for the 12
- * valid month names.  (The mask to 5 bits maps any combination of
- * upper and lower case into the same hash value).
- */
-static int month_map[] = {
-       0,
-       6,      /* 1 - Jul */
-       3,      /* 2 - Apr */
-       5,      /* 3 - Jun */
-       0,
-       10,     /* 5 - Nov */
-       0,
-       1,      /* 7 - Feb */
-       11,     /* 8 - Dec */
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,      /*15 - Jan */
-       0,
-       0,
-       0,
-       2,      /*19 - Mar */
-       0,
-       8,      /*21 - Sep */
-       0,
-       9,      /*23 - Oct */
-       0,
-       0,
-       4,      /*26 - May */
-       0,
-       7       /*28 - Aug */
-};
-/*
- * Same trick for day-of-week using the hash function
- *  (c1 & 7) + (c2 & 4)
- */
-static int day_map[] = {
-       0,
-       0,
-       0,
-       6,      /* 3 - Sat */
-       4,      /* 4 - Thu */
-       0,
-       5,      /* 6 - Fri */
-       0,      /* 7 - Sun */
-       2,      /* 8 - Tue */
-       1       /* 9 - Mon */,
-       0,
-       3       /*11 - Wed */
-};
-#define SETDAY { tw.tw_wday= day_map[(cp[0] & 7) + (cp[1] & 4)];\
-               tw.tw_flags &= ~TW_SDAY; tw.tw_flags |= TW_SEXP;\
-               cp += 2; }
-#define SETMONTH { tw.tw_mon = month_map[(cp[0] + cp[1]) & 0x1f]; gotdate++;\
-                cp += 2;\
-                SKIPD;}
-#define CVT2   (i=(*cp++ - '0'),isdigit(*cp)? i*10 + (*cp++ - '0') : i)
-#define SKIPD  { while ( !isdigit(*cp++) ) ;  --cp; }
-#define EXPZONE        { tw.tw_flags &= ~TW_SZONE; tw.tw_flags |= TW_SZEXP; }
-#define ZONE(x)        { tw.tw_zone=(x); EXPZONE; }
-#define ZONED(x) { ZONE(x); tw.tw_flags |= TW_DST; }
-#define        LC(c)   (isupper(c) ? tolower(c) : (c))
-
-#ifdef FLEX_SCANNER
-/* We get passed a string and return a pointer to a static tws struct */
-#undef YY_DECL
-#define YY_DECL struct tws *dparsetime(str) char *str;
-
-/* We assume that we're never passed more than max_size characters */
-#undef YY_INPUT
-#define YY_INPUT(buf,result,max_size) \
-       if (gstr) { \
-               register char *xp; \
-               xp = gstr; \
-               while (isspace(*xp)) \
-                       xp++; \
-               gstr = xp; \
-               while (*xp != '\0') \
-                       ++xp; \
-               result = xp - gstr; \
-               bcopy(gstr, buf, result); \
-               gstr = 0; \
-       } else \
-               result = YY_NULL;
-
-/* Date strings aren't usually very long */
-#undef YY_READ_BUF_SIZE
-#define YY_READ_BUF_SIZE 128
-
-/* Use mh error reporting routine */
-#undef YY_FATAL_ERROR
-#define YY_FATAL_ERROR(s) adios("dparsetime()", s);
-
-/* We need a pointer to the matched text we can modify */
-#undef YY_USER_ACTION
-#define YY_USER_ACTION cp = yytext
-
-/* Used to initialize */
-static struct tws ztw = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
-
-/* Global for use by YY_INPUT() macro */
-static char *gstr;
-#endif
-
-
-/* done after the current pattern has been matched and before the
- * corresponding action - sets up yytext
- */
-#define YY_DO_BEFORE_ACTION \
-       yytext = yy_bp; \
-       yyleng = yy_cp - yy_bp; \
-       yy_hold_char = *yy_cp; \
-       *yy_cp = '\0'; \
-       yy_c_buf_p = yy_cp;
-
-#define EOB_ACT_CONTINUE_SCAN 0
-#define EOB_ACT_END_OF_FILE 1
-#define EOB_ACT_LAST_MATCH 2
-
-/* return all but the first 'n' matched characters back to the input stream */
-#define yyless(n) \
-       do \
-               { \
-               /* undo effects of setting up yytext */ \
-               *yy_cp = yy_hold_char; \
-               yy_c_buf_p = yy_cp = yy_bp + n; \
-               YY_DO_BEFORE_ACTION; /* set up yytext again */ \
-               } \
-       while ( 0 )
-
-#define unput(c) yyunput( c, yytext )
-
-
-struct yy_buffer_state
-    {
-    FILE *yy_input_file;
-
-    YY_CHAR *yy_ch_buf;                /* input buffer */
-    YY_CHAR *yy_buf_pos;       /* current position in input buffer */
-
-    /* size of input buffer in bytes, not including room for EOB characters*/
-    int yy_buf_size;   
-
-    /* number of characters read into yy_ch_buf, not including EOB characters 
*/
-    int yy_n_chars;
-
-    int yy_eof_status;         /* whether we've seen an EOF on this buffer */
-#define EOF_NOT_SEEN 0
-    /* "pending" happens when the EOF has been seen but there's still
-     * some text process
-     */
-#define EOF_PENDING 1
-#define EOF_DONE 2
-    };
-
-static YY_BUFFER_STATE yy_current_buffer;
-
-/* we provide macros for accessing buffer states in case in the
- * future we want to put the buffer states in a more general
- * "scanner state"
- */
-#define YY_CURRENT_BUFFER yy_current_buffer
-
-
-/* yy_hold_char holds the character lost when yytext is formed */
-static YY_CHAR yy_hold_char;
-
-static int yy_n_chars;         /* number of characters read into yy_ch_buf */
-
-
-
-#ifndef YY_USER_ACTION
-#define YY_USER_ACTION
-#endif
-
-#ifndef YY_USER_INIT
-#define YY_USER_INIT
-#endif
-
-extern YY_CHAR *yytext;
-extern int yyleng;
-extern FILE *yyin, *yyout;
-
-YY_CHAR *yytext;
-int yyleng;
-
-FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
-
-#define YY_END_OF_BUFFER 44
-typedef int yy_state_type;
-static const short int yy_accept[390] =
-    {   0,
-        0,    0,    0,    0,   44,   42,   40,   39,   42,   42,
-       42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
-       42,   42,   42,   42,   34,   34,   34,   34,   34,   34,
-       34,   34,   34,   42,   35,   35,   36,   36,   36,   36,
-       36,   36,   36,   36,   36,   40,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,   14,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    8,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    1,    0,    0,    0,    0,    0,    1,
-        0,    0,    1,    0,    1,    1,    1,    1,    0,    0,
-       28,   27,   33,   21,   20,   19,   18,   15,   32,   31,
-       17,   16,   23,   22,   26,   25,   24,   30,   29,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,   13,    8,
-        8,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-
-        0,    0,    0,    0,    0,    0,   12,    0,    0,    0,
-        0,    0,    1,    1,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        2,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-       13,    0,    7,    9,   10,    0,    0,    4,    4,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-       12,    6,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,   37,   38,
-        2,    0,    0,    0,    0,    0,    0,    0,    3,    3,
-       11,    7,    7,    9,   10,    0,    4,    4,    4,    0,
-
-        4,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        6,    0,    6,    0,    0,    0,    1,    0,    1,    0,
-        0,    0,    0,    1,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    3,   11,    4,    0,    0,    0,
-        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    1,    0,    0,    0,    0,    0,    4,
-        0,    0,    0,    0,    0,    5,    5,    0,    0,    0,
-        1,    0,    1,    0,    0,    0,    0,    0,    0,    0,
-        0,    5,    5,    5,    0,    1,    0,    0,    0
-    } ;
-
-static const YY_CHAR yy_ec[128] =
-    {   0,
-        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    2,    1,    1,    1,    1,    1,    1,    1,    4,
-        5,    1,    6,    7,    8,    1,    9,   10,   11,   12,
-       13,   13,   13,   14,   14,   14,   15,   16,    1,    1,
-        1,    1,    1,    1,   17,   18,   19,   20,   21,   22,
-       23,   24,   25,   26,   27,   28,   29,   30,   31,   32,
-       33,   34,   35,   36,   37,   38,   39,   33,   40,    1,
-        1,    1,    1,    1,    1,    1,   17,   18,   19,   20,
-
-       21,   22,   23,   24,   25,   26,   27,   28,   29,   30,
-       31,   32,   33,   34,   35,   36,   37,   38,   39,   33,
-       40,    1,    1,    1,    1,    1,    1
-    } ;
-
-static const YY_CHAR yy_meta[41] =
-    {   0,
-        1,    2,    1,    1,    1,    1,    3,    1,    4,    5,
-        5,    5,    5,    5,    5,    6,    7,    1,    1,    1,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    6,    1,    1,    1,    1,    1,    1,    1,    1
-    } ;
-
-static const short int yy_base[413] =
-    {   0,
-        0,    0,   40,    0,  637,  638,  634,  638,   59,   97,
-      620,   72,   59,  613,   68,   83,   73,  602,  613,  101,
-       79,  610,   82,  129,  125,  595,   95,  608,  101,  103,
-      599,  109,  638,  114,  638,  147,   66,  608,  121,  638,
-      151,  139,  590,  604,  145,  622,  589,  591,  137,  146,
-      600,  187,  169,    0,  186,    0,  147,  599,  598,  156,
-      601,  586,  597,  594,  128,  176,  580,  590,  593,  593,
-      585,  579,  105,  141,  578,  569,  570,  569,  572,  573,
-      565,  580,  580,    0,    0,  167,  564,  170,  171,  569,
-      188,  190,  191,  562,  192,  560,  194,  559,  558,  557,
-
-      556,  555,  554,  553,  552,  551,  550,  549,  548,  547,
-      546,  545,  544,  543,  638,  542,  541,  551,  545,  538,
-      543,  535,  550,  550,    0,  560,    0,  217,  534,  544,
-      547,  547,  534,  200,  181,  525,  526,  529,    0,  218,
-      201,  229,  222,  233,  230,  234,  237,  235,  558,  239,
-      240,  242,  245,  243,  255,  253,  261,  262,    0,    0,
-      638,  638,  638,  638,  638,  638,  638,  638,  638,  638,
-      638,  638,  638,  638,  638,  638,  638,  638,  638,  246,
-      260,  265,  266,  243,  271,  267,  548,  549,  555,  276,
-      282,    0,  527,  526,  313,  258,  260,  266,  517,  264,
-
-      532,  269,  531,  530,  282,  273,  548,  547,  520,  512,
-      517,  508,  542,  541,  525,  524,  538,  537,  514,  520,
-      507,  517,  500,  512,  515,  496,  510,  508,    0,    0,
-      521,  510,  509,  491,  507,  488,  502,  500,    0,  505,
-      517,    0,  516,  515,  514,  494,  308,  305,  328,  486,
-      478,  483,  474,  493,  488,  487,  483,  477,  487,  483,
-      501,  329,  500,  465,  482,  482,  458,  463,  494,  455,
-      476,  472,  472,  462,  450,  469,  471,  452,  638,  638,
-      638,  446,  445,  464,  443,  462,  464,  445,  477,  476,
-      475,  474,  473,  472,  471,    0,  330,  470,  332,  435,
-
-      339,  449,  433,  450,  450,  432,  444,  446,  442,  433,
-      459,  458,  346,  457,  437,  423,  350,  416,  352,  434,
-      420,  436,  434,  353,  434,  410,  429,  443,  442,  429,
-      440,  427,  403,  422,  439,  438,  437,  436,  416,  415,
-      401,  394,  412,  398,  413,  309,  396,  389,  394,  425,
-      386,  404,  384,  356,  406,  382,  381,  415,  402,  416,
-      383,  376,  381,  393,  392,  410,  303,  409,  408,  407,
-      359,  374,  360,  366,  400,  397,  361,  377,  373,  371,
-      354,  385,  382,  381,  378,  362,  374,  353,  638,  368,
-      363,  360,  346,  366,  339,  370,  337,  335,  328,  314,
-
-      376,  312,  380,  284,  189,  181,  120,  384,  388,  394,
-      398,  402
-    } ;
-
-static const short int yy_def[413] =
-    {   0,
-      389,    1,  389,    3,  389,  389,  389,  389,  389,  389,
-       10,   10,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,   52,  390,   10,  391,  389,  389,  389,  389,
-      389,  389,  389,  389,   55,   52,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  392,  393,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,   53,  394,  395,  396,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  397,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  398,  399,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  400,  389,  401,  389,
-      389,  402,  389,  389,  389,  195,  195,  195,  196,  196,
-
-      197,  197,  197,  197,  197,  197,  401,  403,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  404,  405,
-      389,  389,  389,  389,  389,  389,  389,  389,  406,  406,
-      389,  407,  408,  389,  389,  197,  197,  409,  409,  389,
-      389,  389,  389,  389,  197,  197,  389,  389,  389,  389,
-      389,  410,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  400,
-      389,  389,  389,  389,  389,  247,  389,  389,  389,  389,
-
-      247,  197,  389,  389,  389,  389,  197,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  197,  389,
-      389,  389,  389,  389,  389,  411,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  197,  389,  412,  412,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  197,  197,  197,
-      389,  389,  389,  411,  389,  389,  389,  197,    0,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389
-    } ;
-
-static const short int yy_nxt[679] =
-    {   0,
-        6,    7,    8,    9,    6,    6,    6,    6,    6,   10,
-       11,   10,   12,   12,   12,    6,   13,    6,    6,   14,
-        6,   15,    6,    6,    6,   16,    6,    6,   17,   18,
-       19,    6,    6,    6,   20,   21,    6,    6,   22,    6,
-        6,    7,    8,    9,    6,   23,    6,   24,    6,   10,
-       11,   10,   12,   12,   12,    6,   25,   26,   27,   28,
-       29,   30,   31,   32,   33,   34,   35,   35,   36,   37,
-       38,   39,   40,   40,   41,   42,   43,   40,   44,   45,
-       47,   66,   66,   66,   66,   66,   66,   48,   70,   74,
-       67,   84,   84,   49,   50,   68,   76,   51,   52,   72,
-
-      112,   71,   81,   75,   53,   54,   55,   55,   55,   55,
-       55,   55,   56,   57,  101,   82,   58,   78,   59,   73,
-      103,   79,   60,   70,  291,   61,   62,   63,  106,  102,
-       72,   64,  146,  108,  147,  104,   71,   80,   85,   85,
-      113,  139,  139,  107,   98,   86,   87,   88,  109,   89,
-       73,   90,   91,  120,   92,  114,   67,   93,   94,   99,
-       95,   68,   81,   74,  116,   96,  110,   78,   97,  122,
-      125,   79,  133,  121,  148,   82,  389,   75,  129,  117,
-      149,  111,  123,  130,   54,  289,   98,   80,   52,  101,
-      103,   56,  134,  280,   53,  127,  127,  127,  127,  127,
-
-      127,   99,  208,   57,  102,  104,   58,  106,   59,  108,
-      110,  113,   60,  116,  202,   61,   62,   63,  190,  208,
-      203,   64,  107,  208,  109,  111,  114,  200,  117,  201,
-      208,  208,  192,  193,  213,  208,  208,  210,  208,  214,
-      213,  208,  209,  208,  208,  214,  213,  231,  194,  211,
-      231,  214,  215,  219,  213,  212,  213,  218,  220,  214,
-      221,  214,  213,  213,  231,  232,  216,  214,  214,  231,
-      231,  231,  222,  217,  225,  231,  236,  190,  224,  233,
-      252,  223,  389,  190,  389,  235,  226,  257,  279,  389,
-      389,  228,  193,  389,  251,  227,  238,  192,  193,  253,
-
-      389,  234,  389,  255,  382,  237,  297,  194,  260,  296,
-      346,  298,  259,  194,  246,  389,  243,  384,  239,  367,
-      247,  300,  248,  249,  248,  248,  248,  248,  389,  297,
-      311,  297,  230,  297,  298,  312,  298,  250,  298,  229,
-      297,  207,  301,  189,  300,  298,  300,  311,  300,  248,
-      160,  213,  312,  213,  213,  300,  214,  213,  214,  214,
-      213,  213,  214,  213,  159,  214,  214,  128,  214,  188,
-      188,  191,  126,  389,  191,  191,  191,  242,  231,  208,
-      242,  262,  382,  382,  262,  293,  382,  388,  293,  299,
-      299,  389,  299,  389,  299,  313,  313,  389,  313,  366,
-
-      387,  231,  366,  383,  231,  386,  383,  385,  208,  208,
-      208,  382,  381,  389,  380,  379,  378,  360,  377,  231,
-      376,  375,  374,  373,  372,  371,  208,  370,  369,  368,
-      365,  364,  363,  203,  362,  361,  389,  360,  337,  336,
-      335,  359,  358,  357,  231,  356,  231,  231,  355,  354,
-      353,  352,  351,  350,  349,  149,  348,  347,  208,  346,
-      311,  345,  344,  343,  389,  342,  341,  340,  339,  389,
-      338,  337,  295,  294,  292,  292,  336,  335,  335,  334,
-      333,  332,  331,  330,  329,  328,  327,  326,  325,  324,
-      323,  322,  321,  320,  319,  208,  318,  317,  316,  315,
-
-      314,  208,  261,  310,  309,  308,  307,  389,  389,  306,
-      305,  304,  303,  302,  389,  295,  294,  292,  241,  290,
-      288,  287,  286,  285,  284,  283,  282,  281,  278,  277,
-      276,  275,  274,  273,  272,  271,  270,  269,  208,  208,
-      268,  267,  213,  213,  266,  265,  264,  263,  208,  261,
-      258,  389,  256,  254,  245,  244,  241,  187,  240,  208,
-      206,  205,  204,  199,  198,  197,  196,  195,  187,  186,
-      185,  184,  183,  182,  181,  180,  179,  178,  177,  176,
-      175,  174,  173,  172,  171,  170,  169,  168,  167,  166,
-      165,  164,  163,  162,  161,  115,  112,  105,  100,  158,
-
-      157,  156,  155,  154,  153,  152,  151,  150,  145,  144,
-      143,  142,  141,  140,  138,  137,  136,  135,  132,  131,
-      124,  119,  118,   46,   83,  115,   77,  105,   69,  100,
-       83,   77,   76,   69,   65,   46,  389,    5,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389
-    } ;
-
-static const short int yy_chk[679] =
-    {   0,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
-        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
-        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
-        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
-        9,   12,   12,   12,   12,   12,   12,    9,   15,   17,
-       13,   23,   23,    9,    9,   13,   37,    9,   10,   16,
-
-       37,   15,   21,   17,   10,   10,   10,   10,   10,   10,
-       10,   10,   10,   10,   27,   21,   10,   20,   10,   16,
-       29,   20,   10,   30,  407,   10,   10,   10,   32,   27,
-       34,   10,   73,   34,   73,   29,   30,   20,   24,   24,
-       39,   65,   65,   32,   25,   24,   24,   24,   34,   24,
-       34,   24,   24,   49,   24,   39,   25,   24,   24,   25,
-       24,   25,   42,   36,   45,   24,   36,   41,   24,   50,
-       53,   41,   60,   49,   74,   42,   53,   36,   57,   45,
-       74,   36,   50,   57,   66,  406,   86,   41,   52,   88,
-       89,   66,   60,  405,   52,   55,   55,   55,   55,   55,
-
-       55,   86,  141,   52,   88,   89,   52,   91,   52,   92,
-       93,   95,   52,   97,  135,   52,   52,   52,  128,  140,
-      135,   52,   91,  143,   92,   93,   95,  134,   97,  134,
-      142,  145,  128,  128,  144,  146,  148,  141,  147,  144,
-      150,  151,  140,  152,  154,  150,  153,  184,  128,  142,
-      180,  153,  144,  148,  156,  143,  155,  147,  150,  156,
-      151,  155,  157,  158,  181,  180,  145,  157,  158,  182,
-      183,  186,  152,  146,  155,  185,  184,  190,  154,  181,
-      197,  153,  196,  191,  197,  183,  156,  202,  404,  202,
-      198,  158,  190,  206,  196,  157,  186,  191,  191,  198,
-
-      200,  182,  205,  200,  367,  185,  248,  190,  206,  247,
-      346,  248,  205,  191,  195,  247,  402,  367,  400,  346,
-      195,  248,  195,  195,  195,  195,  195,  195,  247,  249,
-      262,  297,  399,  299,  249,  262,  297,  195,  299,  398,
-      301,  397,  249,  395,  249,  301,  297,  313,  299,  301,
-      393,  317,  313,  319,  324,  301,  317,  354,  319,  324,
-      371,  373,  354,  386,  392,  371,  373,  391,  386,  394,
-      394,  396,  390,  388,  396,  396,  396,  401,  387,  385,
-      401,  403,  384,  383,  403,  408,  382,  381,  408,  409,
-      409,  380,  409,  379,  409,  410,  410,  378,  410,  411,
-
-      377,  376,  411,  412,  375,  374,  412,  372,  370,  369,
-      368,  366,  365,  364,  363,  362,  361,  360,  359,  358,
-      357,  356,  355,  353,  352,  351,  350,  349,  348,  347,
-      345,  344,  343,  342,  341,  340,  339,  338,  337,  336,
-      335,  334,  333,  332,  331,  330,  329,  328,  327,  326,
-      325,  323,  322,  321,  320,  318,  316,  315,  314,  312,
-      311,  310,  309,  308,  307,  306,  305,  304,  303,  302,
-      300,  298,  295,  294,  293,  292,  291,  290,  289,  288,
-      287,  286,  285,  284,  283,  282,  278,  277,  276,  275,
-      274,  273,  272,  271,  270,  269,  268,  267,  266,  265,
-
-      264,  263,  261,  260,  259,  258,  257,  256,  255,  254,
-      253,  252,  251,  250,  246,  245,  244,  243,  241,  240,
-      238,  237,  236,  235,  234,  233,  232,  231,  228,  227,
-      226,  225,  224,  223,  222,  221,  220,  219,  218,  217,
-      216,  215,  214,  213,  212,  211,  210,  209,  208,  207,
-      204,  203,  201,  199,  194,  193,  189,  188,  187,  149,
-      138,  137,  136,  133,  132,  131,  130,  129,  126,  124,
-      123,  122,  121,  120,  119,  118,  117,  116,  114,  113,
-      112,  111,  110,  109,  108,  107,  106,  105,  104,  103,
-      102,  101,  100,   99,   98,   96,   94,   90,   87,   83,
-
-       82,   81,   80,   79,   78,   77,   76,   75,   72,   71,
-       70,   69,   68,   67,   64,   63,   62,   61,   59,   58,
-       51,   48,   47,   46,   44,   43,   38,   31,   28,   26,
-       22,   19,   18,   14,   11,    7,    5,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
-      389,  389,  389,  389,  389,  389,  389,  389
-    } ;
-
-static yy_state_type yy_last_accepting_state;
-static YY_CHAR *yy_last_accepting_cpos;
-
-/* the intent behind this definition is that it'll catch
- * any uses of REJECT which flex missed
- */
-#define REJECT reject_used_but_not_detected
-#define yymore() yymore_used_but_not_detected
-#define YY_MORE_ADJ 0
-
-/* these variables are all declared out here so that section 3 code can
- * manipulate them
- */
-/* points to current character in buffer */
-static YY_CHAR *yy_c_buf_p = (YY_CHAR *) 0;
-static int yy_init = 1;                /* whether we need to initialize */
-static int yy_start = 0;       /* start state number */
-
-/* flag which is used to allow yywrap()'s to do buffer switches
- * instead of setting up a fresh yyin.  A bit of a hack ...
- */
-static int yy_did_buffer_switch_on_eof;
-
-static yy_state_type yy_get_previous_state YY_PROTO(( void ));
-static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state 
));
-static int yy_get_next_buffer YY_PROTO(( void ));
-static void yyunput YY_PROTO(( YY_CHAR c, YY_CHAR *buf_ptr ));
-void yyrestart YY_PROTO(( FILE *input_file ));
-void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
-void yy_load_buffer_state YY_PROTO(( void ));
-YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
-void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
-void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
-
-#define yy_new_buffer yy_create_buffer
-
-#ifdef __cplusplus
-static int yyinput YY_PROTO(( void ));
-#else
-static int input YY_PROTO(( void ));
-#endif
-
-YY_DECL
-    {
-    register yy_state_type yy_current_state;
-    register YY_CHAR *yy_cp, *yy_bp;
-    register int yy_act;
-
-
-                                       register int i, gotdate;
-                                       register char *cp;
-                                       static struct tws tw;
-                                       static void zonehack();
-
-                                       BEGIN(INITIAL);
-                                       yy_init = 1;
-                                       tw = ztw;
-                                       gstr = str;
-                                       gotdate = 0;
-
-
-    if ( yy_init )
-       {
-       YY_USER_INIT;
-
-       if ( ! yy_start )
-           yy_start = 1;       /* first start state */
-
-       if ( ! yyin )
-           yyin = stdin;
-
-       if ( ! yyout )
-           yyout = stdout;
-
-       if ( yy_current_buffer )
-           yy_init_buffer( yy_current_buffer, yyin );
-       else
-           yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
-
-       yy_load_buffer_state();
-
-       yy_init = 0;
-       }
-
-    while ( 1 )                /* loops until end-of-file is reached */
-       {
-       yy_cp = yy_c_buf_p;
-
-       /* support of yytext */
-       *yy_cp = yy_hold_char;
-
-       /* yy_bp points to the position in yy_ch_buf of the start of the
-        * current run.
-        */
-       yy_bp = yy_cp;
-
-       yy_current_state = yy_start;
-yy_match:
-       do
-           {
-           register YY_CHAR yy_c = yy_ec[*yy_cp];
-           if ( yy_accept[yy_current_state] )
-               {
-               yy_last_accepting_state = yy_current_state;
-               yy_last_accepting_cpos = yy_cp;
-               }
-           while ( yy_chk[yy_base[yy_current_state] + yy_c] != 
yy_current_state )
-               {
-               yy_current_state = yy_def[yy_current_state];
-               if ( yy_current_state >= 390 )
-                   yy_c = yy_meta[yy_c];
-               }
-           yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
-           ++yy_cp;
-           }
-       while ( yy_current_state != 389 );
-       yy_cp = yy_last_accepting_cpos;
-       yy_current_state = yy_last_accepting_state;
-
-yy_find_action:
-       yy_act = yy_accept[yy_current_state];
-
-       YY_DO_BEFORE_ACTION;
-       YY_USER_ACTION;
-
-do_action:     /* this label is used only to access EOF actions */
-
-
-       switch ( yy_act )
-           {
-           case 0: /* must backtrack */
-           /* undo the effects of YY_DO_BEFORE_ACTION */
-           *yy_cp = yy_hold_char;
-           yy_cp = yy_last_accepting_cpos;
-           yy_current_state = yy_last_accepting_state;
-           goto yy_find_action;
-
-case 1:
-SETDAY;
-       YY_BREAK
-case 2:
-{
-                                       cp++;
-                                       SETDAY;
-                                       }
-       YY_BREAK
-case 3:
-{
-                                       if (europeandate) {
-                                               /* European: DD/MM/YY */
-                                               tw.tw_mday = CVT2;
-                                               cp++;
-                                               tw.tw_mon  = CVT2 - 1;
-                                       } else {
-                                               /* American: MM/DD/YY */
-                                               tw.tw_mon  = CVT2 - 1;
-                                               cp++;
-                                               tw.tw_mday = CVT2;
-                                       }
-                                       cp++;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i % 100;
-                                       gotdate++;
-                                       }
-       YY_BREAK
-case 4:
-{
-                                       tw.tw_mday = CVT2;
-                                       while (!isalpha(*cp++))
-                                               ;
-                                       SETMONTH;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i % 100;
-                                       }
-       YY_BREAK
-case 5:
-{
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT2;
-                                       SKIPD;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i % 100;
-                                       }
-       YY_BREAK
-case 6:
-{
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT2;
-                                       }
-       YY_BREAK
-case 7:
-{
-                                       tw.tw_hour = CVT2; cp++;
-                                       tw.tw_min  = CVT2; cp++;
-                                       tw.tw_sec  = CVT2;
-                                       BEGIN Z;
-                                       }
-       YY_BREAK
-case 8:
-{
-                                       tw.tw_hour = CVT2; cp++;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-       YY_BREAK
-case 9:
-{
-                                       tw.tw_hour = CVT2; cp++;
-                                       if (tw.tw_hour == 12)
-                                               tw.tw_hour = 0;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-       YY_BREAK
-case 10:
-{
-                                       tw.tw_hour = CVT2; cp++;
-                                       if (tw.tw_hour != 12)
-                                               tw.tw_hour += 12;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-       YY_BREAK
-case 11:
-{
-                                       tw.tw_hour = CVT2;
-                                       tw.tw_min  = CVT2;
-                                       tw.tw_sec  = CVT2;
-                                       BEGIN Z;
-                                       }
-       YY_BREAK
-case 12:
-{
-                                       /*
-                                        * Luckly, 4 digit times in the range
-                                        * 1960-1999 aren't legal as hour
-                                        * and minutes. This rule must come
-                                        * the 4 digit hour and minute rule.
-                                        */
-                                       cp += 2;
-                                       tw.tw_year = CVT2;
-                                       }
-       YY_BREAK
-case 13:
-{
-                                       tw.tw_hour = CVT2;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-       YY_BREAK
-case 14:
-ZONE(0 * 60);
-       YY_BREAK
-case 15:
-ZONE(0 * 60);
-       YY_BREAK
-case 16:
-ZONE(2 * 60);
-       YY_BREAK
-case 17:
-ZONED(2 * 60);
-       YY_BREAK
-case 18:
-ZONE(-5 * 60);
-       YY_BREAK
-case 19:
-ZONED(-5 * 60);
-       YY_BREAK
-case 20:
-ZONE(-6 * 60);
-       YY_BREAK
-case 21:
-ZONED(-6 * 60);
-       YY_BREAK
-case 22:
-ZONE(-7 * 60);
-       YY_BREAK
-case 23:
-ZONED(-7 * 60);
-       YY_BREAK
-case 24:
-ZONE(-8 * 60);
-       YY_BREAK
-case 25:
-ZONED(-8 * 60);
-       YY_BREAK
-case 26:
-ZONE(-(3 * 60 + 30));
-       YY_BREAK
-case 27:
-ZONE(-4 * 60);
-       YY_BREAK
-case 28:
-ZONED(-4 * 60);
-       YY_BREAK
-case 29:
-ZONE(-9 * 60);
-       YY_BREAK
-case 30:
-ZONED(-9 * 60);
-       YY_BREAK
-case 31:
-ZONE(-10 * 60);
-       YY_BREAK
-case 32:
-ZONED(-10 * 60);
-       YY_BREAK
-case 33:
-ZONED(-1 * 60);
-       YY_BREAK
-case 34:
-{
-                                       tw.tw_zone = 60 * (('a'-1) - LC(*cp));
-                                       EXPZONE; 
-                                       }
-       YY_BREAK
-case 35:
-{
-                                       tw.tw_zone = 60 * ('a' - LC(*cp));
-                                       EXPZONE; 
-                                       }
-       YY_BREAK
-case 36:
-{
-                                       tw.tw_zone = 60 * (LC(*cp) - 'm');
-                                       EXPZONE; 
-                                       }
-       YY_BREAK
-case 37:
-{
-                                       cp++;
-                                       tw.tw_zone = ((cp[0] * 10 + cp[1])
-                                                    -('0' * 10   + '0'))*60
-                                                   +((cp[2] * 10 + cp[3])
-                                                    -('0' * 10   + '0'));
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif DSTXXX
-                                       cp += 4;
-                                       EXPZONE; 
-                                       }
-       YY_BREAK
-case 38:
-{
-                                       cp++;
-                                       tw.tw_zone = (('0' * 10   + '0')
-                                                    -(cp[0] * 10 + cp[1]))*60
-                                                   +(('0' * 10   + '0')
-                                                    -(cp[2] * 10 + cp[3]));
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif DSTXXX
-                                       cp += 4;
-                                       EXPZONE; 
-                                       }
-       YY_BREAK
-case 39:
-case 40:
-;
-       YY_BREAK
-case YY_STATE_EOF(INITIAL):
-case YY_STATE_EOF(Z):
-return(&tw);
-       YY_BREAK
-case 42:
-{
-                                       /*
-                                        * We jammed; it's an error if we
-                                        * didn't parse anything.
-                                        */
-                                       if (!gotdate || tw.tw_year == 0)
-                                               return(0);
-                                       return(&tw);
-                                       }
-       YY_BREAK
-case 43:
-YY_FATAL_ERROR( "flex scanner jammed" );
-       YY_BREAK
-
-           case YY_END_OF_BUFFER:
-               {
-               /* amount of text matched not including the EOB char */
-               int yy_amount_of_matched_text = yy_cp - yytext - 1;
-
-               /* undo the effects of YY_DO_BEFORE_ACTION */
-               *yy_cp = yy_hold_char;
-
-               /* note that here we test for yy_c_buf_p "<=" to the position
-                * of the first EOB in the buffer, since yy_c_buf_p will
-                * already have been incremented past the NUL character
-                * (since all states make transitions on EOB to the end-
-                * of-buffer state).  Contrast this with the test in yyinput().
-                */
-               if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
-                   /* this was really a NUL */
-                   {
-                   yy_state_type yy_next_state;
-
-                   yy_c_buf_p = yytext + yy_amount_of_matched_text;
-
-                   yy_current_state = yy_get_previous_state();
-
-                   /* okay, we're now positioned to make the
-                    * NUL transition.  We couldn't have
-                    * yy_get_previous_state() go ahead and do it
-                    * for us because it doesn't know how to deal
-                    * with the possibility of jamming (and we
-                    * don't want to build jamming into it because
-                    * then it will run more slowly)
-                    */
-
-                   yy_next_state = yy_try_NUL_trans( yy_current_state );
-
-                   yy_bp = yytext + YY_MORE_ADJ;
-
-                   if ( yy_next_state )
-                       {
-                       /* consume the NUL */
-                       yy_cp = ++yy_c_buf_p;
-                       yy_current_state = yy_next_state;
-                       goto yy_match;
-                       }
-
-                   else
-                       {
-                           yy_cp = yy_last_accepting_cpos;
-                           yy_current_state = yy_last_accepting_state;
-                       goto yy_find_action;
-                       }
-                   }
-
-               else switch ( yy_get_next_buffer() )
-                   {
-                   case EOB_ACT_END_OF_FILE:
-                       {
-                       yy_did_buffer_switch_on_eof = 0;
-
-                       if ( yywrap() )
-                           {
-                           /* note: because we've taken care in
-                            * yy_get_next_buffer() to have set up yytext,
-                            * we can now set up yy_c_buf_p so that if some
-                            * total hoser (like flex itself) wants
-                            * to call the scanner after we return the
-                            * YY_NULL, it'll still work - another YY_NULL
-                            * will get returned.
-                            */
-                           yy_c_buf_p = yytext + YY_MORE_ADJ;
-
-                           yy_act = YY_STATE_EOF((yy_start - 1) / 2);
-                           goto do_action;
-                           }
-
-                       else
-                           {
-                           if ( ! yy_did_buffer_switch_on_eof )
-                               YY_NEW_FILE;
-                           }
-                       }
-                       break;
-
-                   case EOB_ACT_CONTINUE_SCAN:
-                       yy_c_buf_p = yytext + yy_amount_of_matched_text;
-
-                       yy_current_state = yy_get_previous_state();
-
-                       yy_cp = yy_c_buf_p;
-                       yy_bp = yytext + YY_MORE_ADJ;
-                       goto yy_match;
-
-                   case EOB_ACT_LAST_MATCH:
-                       yy_c_buf_p =
-                           &yy_current_buffer->yy_ch_buf[yy_n_chars];
-
-                       yy_current_state = yy_get_previous_state();
-
-                       yy_cp = yy_c_buf_p;
-                       yy_bp = yytext + YY_MORE_ADJ;
-                       goto yy_find_action;
-                   }
-               break;
-               }
-
-           default:
-#ifdef FLEX_DEBUG
-               printf( "action # %d\n", yy_act );
-#endif
-               YY_FATAL_ERROR(
-                       "fatal flex scanner internal error--no action found" );
-           }
-       }
-    }
-
-
-/* yy_get_next_buffer - try to read in a new buffer
- *
- * synopsis
- *     int yy_get_next_buffer();
- *     
- * returns a code representing an action
- *     EOB_ACT_LAST_MATCH - 
- *     EOB_ACT_CONTINUE_SCAN - continue scanning from current position
- *     EOB_ACT_END_OF_FILE - end of file
- */
-
-static int yy_get_next_buffer()
-
-    {
-    register YY_CHAR *dest = yy_current_buffer->yy_ch_buf;
-    register YY_CHAR *source = yytext - 1; /* copy prev. char, too */
-    register int number_to_move, i;
-    int ret_val;
-
-    if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
-       YY_FATAL_ERROR(
-               "fatal flex scanner internal error--end of buffer missed" );
-
-    /* try to read more data */
-
-    /* first move last chars to start of buffer */
-    number_to_move = yy_c_buf_p - yytext;
-
-    for ( i = 0; i < number_to_move; ++i )
-       *(dest++) = *(source++);
-
-    if ( yy_current_buffer->yy_eof_status != EOF_NOT_SEEN )
-       /* don't do the read, it's not guaranteed to return an EOF,
-        * just force an EOF
-        */
-       yy_n_chars = 0;
-
-    else
-       {
-       int num_to_read = yy_current_buffer->yy_buf_size - number_to_move - 1;
-
-       if ( num_to_read > YY_READ_BUF_SIZE )
-           num_to_read = YY_READ_BUF_SIZE;
-
-       else if ( num_to_read <= 0 )
-           YY_FATAL_ERROR( "fatal error - scanner input buffer overflow" );
-
-       /* read in more data */
-       YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
-                 yy_n_chars, num_to_read );
-       }
-
-    if ( yy_n_chars == 0 )
-       {
-       if ( number_to_move == 1 )
-           {
-           ret_val = EOB_ACT_END_OF_FILE;
-           yy_current_buffer->yy_eof_status = EOF_DONE;
-           }
-
-       else
-           {
-           ret_val = EOB_ACT_LAST_MATCH;
-           yy_current_buffer->yy_eof_status = EOF_PENDING;
-           }
-       }
-
-    else
-       ret_val = EOB_ACT_CONTINUE_SCAN;
-
-    yy_n_chars += number_to_move;
-    yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
-    yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
-
-    /* yytext begins at the second character in yy_ch_buf; the first
-     * character is the one which preceded it before reading in the latest
-     * buffer; it needs to be kept around in case it's a newline, so
-     * yy_get_previous_state() will have with '^' rules active
-     */
-
-    yytext = &yy_current_buffer->yy_ch_buf[1];
-
-    return ( ret_val );
-    }
-
-
-/* yy_get_previous_state - get the state just before the EOB char was reached
- *
- * synopsis
- *     yy_state_type yy_get_previous_state();
- */
-
-static yy_state_type yy_get_previous_state()
-
-    {
-    register yy_state_type yy_current_state;
-    register YY_CHAR *yy_cp;
-
-    yy_current_state = yy_start;
-
-    for ( yy_cp = yytext + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
-       {
-       register YY_CHAR yy_c = (*yy_cp ? yy_ec[*yy_cp] : 1);
-       if ( yy_accept[yy_current_state] )
-           {
-           yy_last_accepting_state = yy_current_state;
-           yy_last_accepting_cpos = yy_cp;
-           }
-       while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
-           {
-           yy_current_state = yy_def[yy_current_state];
-           if ( yy_current_state >= 390 )
-               yy_c = yy_meta[yy_c];
-           }
-       yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
-       }
-
-    return ( yy_current_state );
-    }
-
-
-/* yy_try_NUL_trans - try to make a transition on the NUL character
- *
- * synopsis
- *     next_state = yy_try_NUL_trans( current_state );
- */
-
-#ifdef YY_USE_PROTOS
-static yy_state_type yy_try_NUL_trans( register yy_state_type yy_current_state 
)
-#else
-static yy_state_type yy_try_NUL_trans( yy_current_state )
-register yy_state_type yy_current_state;
-#endif
-
-    {
-    register int yy_is_jam;
-    register YY_CHAR *yy_cp = yy_c_buf_p;
-
-    register YY_CHAR yy_c = 1;
-    if ( yy_accept[yy_current_state] )
-       {
-       yy_last_accepting_state = yy_current_state;
-       yy_last_accepting_cpos = yy_cp;
-       }
-    while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
-       {
-       yy_current_state = yy_def[yy_current_state];
-       if ( yy_current_state >= 390 )
-           yy_c = yy_meta[yy_c];
-       }
-    yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
-    yy_is_jam = (yy_current_state == 389);
-
-    return ( yy_is_jam ? 0 : yy_current_state );
-    }
-
-
-#ifdef YY_USE_PROTOS
-static void yyunput( YY_CHAR c, register YY_CHAR *yy_bp )
-#else
-static void yyunput( c, yy_bp )
-YY_CHAR c;
-register YY_CHAR *yy_bp;
-#endif
-
-    {
-    register YY_CHAR *yy_cp = yy_c_buf_p;
-
-    /* undo effects of setting up yytext */
-    *yy_cp = yy_hold_char;
-
-    if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
-       { /* need to shift things up to make room */
-       register int number_to_move = yy_n_chars + 2; /* +2 for EOB chars */
-       register YY_CHAR *dest =
-           &yy_current_buffer->yy_ch_buf[yy_current_buffer->yy_buf_size + 2];
-       register YY_CHAR *source =
-           &yy_current_buffer->yy_ch_buf[number_to_move];
-
-       while ( source > yy_current_buffer->yy_ch_buf )
-           *--dest = *--source;
-
-       yy_cp += dest - source;
-       yy_bp += dest - source;
-       yy_n_chars = yy_current_buffer->yy_buf_size;
-
-       if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
-           YY_FATAL_ERROR( "flex scanner push-back overflow" );
-       }
-
-    if ( yy_cp > yy_bp && yy_cp[-1] == '\n' )
-       yy_cp[-2] = '\n';
-
-    *--yy_cp = c;
-
-    /* note: the formal parameter *must* be called "yy_bp" for this
-     *       macro to now work correctly
-     */
-    YY_DO_BEFORE_ACTION; /* set up yytext again */
-    }
-
-
-#ifdef __cplusplus
-static int yyinput()
-#else
-static int input()
-#endif
-
-    {
-    int c;
-    YY_CHAR *yy_cp = yy_c_buf_p;
-
-    *yy_cp = yy_hold_char;
-
-    if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
-       {
-       /* yy_c_buf_p now points to the character we want to return.
-        * If this occurs *before* the EOB characters, then it's a
-        * valid NUL; if not, then we've hit the end of the buffer.
-        */
-       if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
-           /* this was really a NUL */
-           *yy_c_buf_p = '\0';
-
-       else
-           { /* need more input */
-           yytext = yy_c_buf_p;
-           ++yy_c_buf_p;
-
-           switch ( yy_get_next_buffer() )
-               {
-               case EOB_ACT_END_OF_FILE:
-                   {
-                   if ( yywrap() )
-                       {
-                       yy_c_buf_p = yytext + YY_MORE_ADJ;
-                       return ( EOF );
-                       }
-
-                   YY_NEW_FILE;
-
-#ifdef __cplusplus
-                   return ( yyinput() );
-#else
-                   return ( input() );
-#endif
-                   }
-                   break;
-
-               case EOB_ACT_CONTINUE_SCAN:
-                   yy_c_buf_p = yytext + YY_MORE_ADJ;
-                   break;
-
-               case EOB_ACT_LAST_MATCH:
-#ifdef __cplusplus
-                   YY_FATAL_ERROR( "unexpected last match in yyinput()" );
-#else
-                   YY_FATAL_ERROR( "unexpected last match in input()" );
-#endif
-               }
-           }
-       }
-
-    c = *yy_c_buf_p;
-    yy_hold_char = *++yy_c_buf_p;
-
-    return ( c );
-    }
-
-
-#ifdef YY_USE_PROTOS
-void yyrestart( FILE *input_file )
-#else
-void yyrestart( input_file )
-FILE *input_file;
-#endif
-
-    {
-    yy_init_buffer( yy_current_buffer, input_file );
-    yy_load_buffer_state();
-    }
-
-
-#ifdef YY_USE_PROTOS
-void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
-#else
-void yy_switch_to_buffer( new_buffer )
-YY_BUFFER_STATE new_buffer;
-#endif
-
-    {
-    if ( yy_current_buffer == new_buffer )
-       return;
-
-    if ( yy_current_buffer )
-       {
-       /* flush out information for old buffer */
-       *yy_c_buf_p = yy_hold_char;
-       yy_current_buffer->yy_buf_pos = yy_c_buf_p;
-       yy_current_buffer->yy_n_chars = yy_n_chars;
-       }
-
-    yy_current_buffer = new_buffer;
-    yy_load_buffer_state();
-
-    /* we don't actually know whether we did this switch during
-     * EOF (yywrap()) processing, but the only time this flag
-     * is looked at is after yywrap() is called, so it's safe
-     * to go ahead and always set it.
-     */
-    yy_did_buffer_switch_on_eof = 1;
-    }
-
-
-#ifdef YY_USE_PROTOS
-void yy_load_buffer_state( void )
-#else
-void yy_load_buffer_state()
-#endif
-
-    {
-    yy_n_chars = yy_current_buffer->yy_n_chars;
-    yytext = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
-    yyin = yy_current_buffer->yy_input_file;
-    yy_hold_char = *yy_c_buf_p;
-    }
-
-
-#ifdef YY_USE_PROTOS
-YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
-#else
-YY_BUFFER_STATE yy_create_buffer( file, size )
-FILE *file;
-int size;
-#endif
-
-    {
-    YY_BUFFER_STATE b;
-
-    b = (YY_BUFFER_STATE) malloc( sizeof( struct yy_buffer_state ) );
-
-    if ( ! b )
-       YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
-
-    b->yy_buf_size = size;
-
-    /* yy_ch_buf has to be 2 characters longer than the size given because
-     * we need to put in 2 end-of-buffer characters.
-     */
-    b->yy_ch_buf = (YY_CHAR *) malloc( (unsigned) (b->yy_buf_size + 2) );
-
-    if ( ! b->yy_ch_buf )
-       YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
-
-    yy_init_buffer( b, file );
-
-    return ( b );
-    }
-
-
-#ifdef YY_USE_PROTOS
-void yy_delete_buffer( YY_BUFFER_STATE b )
-#else
-void yy_delete_buffer( b )
-YY_BUFFER_STATE b;
-#endif
-
-    {
-    if ( b == yy_current_buffer )
-       yy_current_buffer = (YY_BUFFER_STATE) 0;
-
-    free( (char *) b->yy_ch_buf );
-    free( (char *) b );
-    }
-
-
-#ifdef YY_USE_PROTOS
-void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
-#else
-void yy_init_buffer( b, file )
-YY_BUFFER_STATE b;
-FILE *file;
-#endif
-
-    {
-    b->yy_input_file = file;
-
-    /* we put in the '\n' and start reading from [1] so that an
-     * initial match-at-newline will be true.
-     */
-
-    b->yy_ch_buf[0] = '\n';
-    b->yy_n_chars = 1;
-
-    /* we always need two end-of-buffer characters.  The first causes
-     * a transition to the end-of-buffer state.  The second causes
-     * a jam in that state.
-     */
-    b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
-    b->yy_ch_buf[2] = YY_END_OF_BUFFER_CHAR;
-
-    b->yy_buf_pos = &b->yy_ch_buf[1];
-
-    b->yy_eof_status = EOF_NOT_SEEN;
-    }
-
-
-#ifdef DSTXXX
-#include <sys/types.h>
-#ifndef        BSD42
-#include <time.h>
-#else  BSD42
-#include <sys/time.h>
-#endif BSD42
-
-static void
-zonehack(tw)
-    register struct tws *tw;
-{
-    register struct tm *tm;
-
-    if (twclock (tw) == -1L)
-       return;
-
-    tm = localtime (&tw -> tw_clock);
-    if (tm -> tm_isdst) {
-       tw -> tw_flags |= TW_DST;
-       tw -> tw_zone -= 60;
-    }
-}
-#endif DSTXXX
diff --git a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.lex 
b/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.lex
deleted file mode 100644
index 035793e..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.lex
+++ /dev/null
@@ -1,375 +0,0 @@
-%{
-#ifndef lint
-static char rcsid[] =
-#ifdef FLEX_SCANNER
-    "@(#) $Header: dtimep.lex,v 1.15 90/10/16 14:57:20 leres Exp $ (LBL) (flex 
generated scanner)";
-#else
-    "@(#) $Header: dtimep.lex,v 1.15 90/10/16 14:57:20 leres Exp $ (LBL) (lex 
generated scanner)";
-#endif
-#endif
-%}
-/*
-%e 2000
-%p 5000
-%n 1000
-%a 4000
- */
-
-%START Z
-sun    (sun(day)?)
-mon    (mon(day)?)
-tue    (tue(sday)?)
-wed    (wed(nesday)?)
-thu    (thu(rsday)?)
-fri    (fri(day)?)
-sat    (sat(urday)?)
-
-DAY    ({sun}|{mon}|{tue}|{wed}|{thu}|{fri}|{sat})
-
-jan    (jan(uary)?)
-feb    (feb(ruary)?)
-mar    (mar(ch)?)
-apr    (apr(il)?)
-may    (may)
-jun    (jun(e)?)
-jul    (jul(y)?)
-aug    (aug(ust)?)
-sep    (sep(tember)?)
-oct    (oct(ober)?)
-nov    (nov(ember)?)
-dec    (dec(ember)?)
-
-MONTH  
({jan}|{feb}|{mar}|{apr}|{may}|{jun}|{jul}|{aug}|{sep}|{oct}|{nov}|{dec})
-
-w      ([ \t]*)
-W      ([ \t]+)
-D      ([0-9]?[0-9])
-d      [0-9]
-%{
-#include "tws.h"
-#include <ctype.h>
-
-/*
- * Patchable flag that says how to interpret NN/NN/NN dates. When
- * true, we do it European style: DD/MM/YY. When false, we do it
- * American style: MM/DD/YY.
- */
-int europeandate = 0;
-
-/*
- * Table to convert month names to numeric month.  We use the
- * fact that the low order 5 bits of the sum of the 2nd & 3rd
- * characters of the name is a hash with no collisions for the 12
- * valid month names.  (The mask to 5 bits maps any combination of
- * upper and lower case into the same hash value).
- */
-static int month_map[] = {
-       0,
-       6,      /* 1 - Jul */
-       3,      /* 2 - Apr */
-       5,      /* 3 - Jun */
-       0,
-       10,     /* 5 - Nov */
-       0,
-       1,      /* 7 - Feb */
-       11,     /* 8 - Dec */
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,      /*15 - Jan */
-       0,
-       0,
-       0,
-       2,      /*19 - Mar */
-       0,
-       8,      /*21 - Sep */
-       0,
-       9,      /*23 - Oct */
-       0,
-       0,
-       4,      /*26 - May */
-       0,
-       7       /*28 - Aug */
-};
-/*
- * Same trick for day-of-week using the hash function
- *  (c1 & 7) + (c2 & 4)
- */
-static int day_map[] = {
-       0,
-       0,
-       0,
-       6,      /* 3 - Sat */
-       4,      /* 4 - Thu */
-       0,
-       5,      /* 6 - Fri */
-       0,      /* 7 - Sun */
-       2,      /* 8 - Tue */
-       1       /* 9 - Mon */,
-       0,
-       3       /*11 - Wed */
-};
-#define SETDAY { tw.tw_wday= day_map[(cp[0] & 7) + (cp[1] & 4)];\
-               tw.tw_flags &= ~TW_SDAY; tw.tw_flags |= TW_SEXP;\
-               cp += 2; }
-#define SETMONTH { tw.tw_mon = month_map[(cp[0] + cp[1]) & 0x1f]; gotdate++;\
-                cp += 2;\
-                SKIPD;}
-#define CVT2   (i=(*cp++ - '0'),isdigit(*cp)? i*10 + (*cp++ - '0') : i)
-#define SKIPD  { while ( !isdigit(*cp++) ) ;  --cp; }
-#define EXPZONE        { tw.tw_flags &= ~TW_SZONE; tw.tw_flags |= TW_SZEXP; }
-#define ZONE(x)        { tw.tw_zone=(x); EXPZONE; }
-#define ZONED(x) { ZONE(x); tw.tw_flags |= TW_DST; }
-#define        LC(c)   (isupper(c) ? tolower(c) : (c))
-
-#ifdef FLEX_SCANNER
-/* We get passed a string and return a pointer to a static tws struct */
-#undef YY_DECL
-#define YY_DECL struct tws *dparsetime(str) char *str;
-
-/* We assume that we're never passed more than max_size characters */
-#undef YY_INPUT
-#define YY_INPUT(buf,result,max_size) \
-       if (gstr) { \
-               register char *xp; \
-               xp = gstr; \
-               while (isspace(*xp)) \
-                       xp++; \
-               gstr = xp; \
-               while (*xp != '\0') \
-                       ++xp; \
-               result = xp - gstr; \
-               bcopy(gstr, buf, result); \
-               gstr = 0; \
-       } else \
-               result = YY_NULL;
-
-/* Date strings aren't usually very long */
-#undef YY_READ_BUF_SIZE
-#define YY_READ_BUF_SIZE 128
-
-/* Use mh error reporting routine */
-#undef YY_FATAL_ERROR
-#define YY_FATAL_ERROR(s) adios("dparsetime()", s);
-
-/* We need a pointer to the matched text we can modify */
-#undef YY_USER_ACTION
-#define YY_USER_ACTION cp = yytext
-
-/* Used to initialize */
-static struct tws ztw = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
-
-/* Global for use by YY_INPUT() macro */
-static char *gstr;
-#endif
-
-%}
-
-%%
-                                       register int i, gotdate;
-                                       register char *cp;
-                                       static struct tws tw;
-                                       static void zonehack();
-
-                                       BEGIN(INITIAL);
-                                       yy_init = 1;
-                                       tw = ztw;
-                                       gstr = str;
-                                       gotdate = 0;
-
-{DAY}","?{w}                           SETDAY;
-"("{DAY}")"(","?)                      {
-                                       cp++;
-                                       SETDAY;
-                                       }
-
-{D}"/"{D}"/"(19)?[0-9][0-9]{w}         {
-                                       if (europeandate) {
-                                               /* European: DD/MM/YY */
-                                               tw.tw_mday = CVT2;
-                                               cp++;
-                                               tw.tw_mon  = CVT2 - 1;
-                                       } else {
-                                               /* American: MM/DD/YY */
-                                               tw.tw_mon  = CVT2 - 1;
-                                               cp++;
-                                               tw.tw_mday = CVT2;
-                                       }
-                                       cp++;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i % 100;
-                                       gotdate++;
-                                       }
-{D}{w}(-)?{w}{MONTH}{w}(-)?{w}(19)?{D}{w}(\,{w}|at{W})? {
-                                       tw.tw_mday = CVT2;
-                                       while (!isalpha(*cp++))
-                                               ;
-                                       SETMONTH;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i % 100;
-                                       }
-{MONTH}{W}{D}","{W}(19)?{D}{w}         {
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT2;
-                                       SKIPD;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i % 100;
-                                       }
-
-{MONTH}{W}{D}{w}                       {
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT2;
-                                       }
-
-{D}:{D}:{D}{w}                         {
-                                       tw.tw_hour = CVT2; cp++;
-                                       tw.tw_min  = CVT2; cp++;
-                                       tw.tw_sec  = CVT2;
-                                       BEGIN Z;
-                                       }
-{D}:{D}{w}                             {
-                                       tw.tw_hour = CVT2; cp++;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-{D}:{D}{w}am{w}                                {
-                                       tw.tw_hour = CVT2; cp++;
-                                       if (tw.tw_hour == 12)
-                                               tw.tw_hour = 0;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-{D}:{D}{w}pm{w}                                {
-                                       tw.tw_hour = CVT2; cp++;
-                                       if (tw.tw_hour != 12)
-                                               tw.tw_hour += 12;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-[0-2]{d}{d}{d}{d}{d}{w}                        {
-                                       tw.tw_hour = CVT2;
-                                       tw.tw_min  = CVT2;
-                                       tw.tw_sec  = CVT2;
-                                       BEGIN Z;
-                                       }
-19[6-9]{d}{w}                          {
-                                       /*
-                                        * Luckly, 4 digit times in the range
-                                        * 1960-1999 aren't legal as hour
-                                        * and minutes. This rule must come
-                                        * the 4 digit hour and minute rule.
-                                        */
-                                       cp += 2;
-                                       tw.tw_year = CVT2;
-                                       }
-[0-2]{d}{d}{d}{w}                      {
-                                       tw.tw_hour = CVT2;
-                                       tw.tw_min  = CVT2;
-                                       BEGIN Z;
-                                       }
-<Z>"-"?ut                              ZONE(0 * 60);
-<Z>"-"?gmt                             ZONE(0 * 60);
-<Z>"-"?jst                             ZONE(2 * 60);
-<Z>"-"?jdt                             ZONED(2 * 60);
-<Z>"-"?est                             ZONE(-5 * 60);
-<Z>"-"?edt                             ZONED(-5 * 60);
-<Z>"-"?cst                             ZONE(-6 * 60);
-<Z>"-"?cdt                             ZONED(-6 * 60);
-<Z>"-"?mst                             ZONE(-7 * 60);
-<Z>"-"?mdt                             ZONED(-7 * 60);
-<Z>"-"?pst                             ZONE(-8 * 60);
-<Z>"-"?pdt                             ZONED(-8 * 60);
-<Z>"-"?nst                             ZONE(-(3 * 60 + 30));
-<Z>"-"?ast                             ZONE(-4 * 60);
-<Z>"-"?adt                             ZONED(-4 * 60);
-<Z>"-"?yst                             ZONE(-9 * 60);
-<Z>"-"?ydt                             ZONED(-9 * 60);
-<Z>"-"?hst                             ZONE(-10 * 60);
-<Z>"-"?hdt                             ZONED(-10 * 60);
-<Z>"-"?bst                             ZONED(-1 * 60);
-<Z>[a-i]                               {
-                                       tw.tw_zone = 60 * (('a'-1) - LC(*cp));
-                                       EXPZONE; 
-                                       }
-<Z>[k-m]                               {
-                                       tw.tw_zone = 60 * ('a' - LC(*cp));
-                                       EXPZONE; 
-                                       }
-<Z>[n-y]                               {
-                                       tw.tw_zone = 60 * (LC(*cp) - 'm');
-                                       EXPZONE; 
-                                       }
-<Z>"+"[0-1]{d}{d}{d}                   {
-                                       cp++;
-                                       tw.tw_zone = ((cp[0] * 10 + cp[1])
-                                                    -('0' * 10   + '0'))*60
-                                                   +((cp[2] * 10 + cp[3])
-                                                    -('0' * 10   + '0'));
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif DSTXXX
-                                       cp += 4;
-                                       EXPZONE; 
-                                       }
-<Z>"-"[0-1]{d}{d}{d}                   {
-                                       cp++;
-                                       tw.tw_zone = (('0' * 10   + '0')
-                                                    -(cp[0] * 10 + cp[1]))*60
-                                                   +(('0' * 10   + '0')
-                                                    -(cp[2] * 10 + cp[3]));
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif DSTXXX
-                                       cp += 4;
-                                       EXPZONE; 
-                                       }
-
-\n                                     |
-{W}                                    ;
-
-<INITIAL,Z><<EOF>>                     return(&tw);
-
-.                                      {
-                                       /*
-                                        * We jammed; it's an error if we
-                                        * didn't parse anything.
-                                        */
-                                       if (!gotdate || tw.tw_year == 0)
-                                               return(0);
-                                       return(&tw);
-                                       }
-
-%%
-
-#ifdef DSTXXX
-#include <sys/types.h>
-#ifndef        BSD42
-#include <time.h>
-#else  BSD42
-#include <sys/time.h>
-#endif BSD42
-
-static void
-zonehack(tw)
-    register struct tws *tw;
-{
-    register struct tm *tm;
-
-    if (twclock (tw) == -1L)
-       return;
-
-    tm = localtime (&tw -> tw_clock);
-    if (tm -> tm_isdst) {
-       tw -> tw_flags |= TW_DST;
-       tw -> tw_zone -= 60;
-    }
-}
-#endif DSTXXX
diff --git a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/test.input 
b/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/test.input
deleted file mode 100644
index d1edb1f..0000000
--- a/docs/historical/mh-6.8.5/local/lbl/zotnet/tws/test.input
+++ /dev/null
@@ -1,23 +0,0 @@
-11 MAR 1980 1559-PST
-12 March 1980 11:41-EST
-10 Feb 1982 11:22:30-PST
-85/10/29 14:44:13
-2 Dec 1986 1103-PST (Tuesday)
-27-Dec-1986 2323
-06-Oct-88 00:57
-12/02/88 12:36:12 EST
-Mon, 05 Dec 88 22:17:19 PST
-Fri, 16 Dec 88 18:49:09 PST
-5  Jan 89 11:45 +0100
-Fri Jan  6 12:46:18 PST 1989
-Tue Jan 24 07:41:26 1989 CST
-2/3/89 6:33 AM
-13 February 1989, 10:02:09 EST
-Tue Feb 14 13:05:06 PST 1989
-14 Feb 89 17:17:23 GMT
-01 Apr 89 00:00:01 GMT
-10 Jul 89 15:24
-Tue Nov 28 16:31:28 1989
-Wed Nov 29 14:54:37 -0800 1989
-Wed, 22 Nov 89 22:29:04 JST
-Tue, 16 Oct 90 14:41:52 -0800
diff --git a/docs/historical/mh-6.8.5/local/linux/DIFFS.linux 
b/docs/historical/mh-6.8.5/local/linux/DIFFS.linux
deleted file mode 100644
index 7b1501a..0000000
--- a/docs/historical/mh-6.8.5/local/linux/DIFFS.linux
+++ /dev/null
@@ -1,950 +0,0 @@
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/conf/makefiles/support/pop ./conf/makefiles/support/pop
---- ../mh-6.8-dist/conf/makefiles/support/pop  Sat Dec 25 16:57:49 1993
-+++ ./conf/makefiles/support/pop       Sat Jul 16 18:05:55 1994
-@@ -110,7 +110,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--popd:         xpopd
-+popd:         xpopd;
- 
- xpopd:                popd.o popser.o syslog.o \
-                       ../../uip/dropsbr.o \
-@@ -146,7 +146,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--popaka:               xpopaka
-+popaka:               xpopaka;
- 
- xpopaka:      popaka.o $(LIBES1)
-               $(LD) $(LDFLAGS) -o $@ popaka.o $(LDLIBS1)
-@@ -169,7 +169,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--popauth:      xpopauth
-+popauth:      xpopauth;
- 
- xpopauth:     popauth.o $(LIBES1)
-               $(LD) $(LDFLAGS) -o $@ popauth.o $(LDLIBS2)
-@@ -193,7 +193,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--popwrd:               xpopwrd
-+popwrd:               xpopwrd;
- 
- xpopwrd:      popwrd.o $(LIBES1)
-               $(LD) $(LDFLAGS) -o $@ popwrd.o $(LDLIBS1)
-@@ -214,7 +214,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--smtpd:                xsmtpd
-+smtpd:                xsmtpd;
- 
- xsmtpd:               smtpd.o syslog.o
-               $(LD) $(LDFLAGS) -o $@ smtpd.o syslog.o
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/conf/makefiles/uip ./conf/makefiles/uip
---- ../mh-6.8-dist/conf/makefiles/uip  Sat Dec 25 16:57:50 1993
-+++ ./conf/makefiles/uip       Sat Jul 16 18:05:55 1994
-@@ -267,7 +267,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--ali:          xali
-+ali:          xali;
- 
- xali:         ali.o aliasbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ ali.o aliasbr.o $(LDLIBS)
-@@ -284,7 +284,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--anno:         xanno
-+anno:         xanno;
- 
- xanno:                anno.o annosbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ anno.o annosbr.o $(LDLIBS)
-@@ -301,7 +301,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--ap:           xap
-+ap:           xap;
- 
- xap:          ap.o trmsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ ap.o trmsbr.o $(LDLIBS) $(LDCURSES)
-@@ -325,7 +325,7 @@
-               address@hidden -l $(BINDIR)/bbc
-               address@hidden ""
- 
--bbc:          xbbc
-+bbc:          xbbc;
- 
- xbbc:         bbc.o $(PSHLIB) $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ bbc.o $(PSHLIB) $(LDLIBS)
-@@ -352,7 +352,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--bbl:          xbbl
-+bbl:          xbbl;
- 
- xbbl:         bbl.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ bbl.o $(LDLIBS)
-@@ -369,7 +369,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--burst:                xburst
-+burst:                xburst;
- 
- xburst:               burst.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ burst.o $(LDLIBS)
-@@ -386,7 +386,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--cipher:               xcipher
-+cipher:               xcipher;
- 
- xcipher:      cipher.o $(TMALIB) $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ cipher.o $(TMALIB) $(LDLIBS)
-@@ -403,7 +403,7 @@
-               address@hidden -l $(BINDIR)/comp
-               address@hidden ""
- 
--comp:         xcomp
-+comp:         xcomp;
- 
- xcomp:                comp.o whatnowproc.o \
-                       whatnowsbr.o sendsbr.o annosbr.o distsbr.o $(LIBES) 
-@@ -423,7 +423,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--conflict:     xconflict
-+conflict:     xconflict;
- 
- xconflict:    conflict.o aliasbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ conflict.o aliasbr.o $(LDLIBS)
-@@ -440,7 +440,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--decipher:             xdecipher
-+decipher:             xdecipher;
- 
- xdecipher:    decipher.o $(TMALIB) $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ decipher.o $(TMALIB) $(LDLIBS)
-@@ -457,7 +457,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--dist:         xdist
-+dist:         xdist;
- 
- xdist:                dist.o whatnowproc.o \
-                       whatnowsbr.o sendsbr.o annosbr.o distsbr.o $(LIBES) 
-@@ -477,7 +477,7 @@
-               address@hidden -l $(ETCDIR)/dp
-               address@hidden ""
- 
--dp:           xdp
-+dp:           xdp;
- 
- xdp:          dp.o trmsbr.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ dp.o trmsbr.o $(LDLIBS) $(LDCURSES)
-@@ -494,7 +494,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--fmtdump:              xfmtdump
-+fmtdump:              xfmtdump;
- 
- xfmtdump:             fmtdump.o trmsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ fmtdump.o $(LDLIBS)
-@@ -514,8 +514,8 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--folders:      folder
--folder:               xfolder
-+folders:      folder;
-+folder:               xfolder;
- 
- xfolder:      folder.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ folder.o $(LDLIBS) 
-@@ -532,7 +532,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--forw:         xforw
-+forw:         xforw;
- 
- xforw:                forw.o whatnowproc.o \
-                       whatnowsbr.o sendsbr.o annosbr.o distsbr.o $(LIBES) 
-@@ -563,7 +563,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--inc:          xinc
-+inc:          xinc;
- 
- xinc:         inc.o scansbr.o dropsbr.o trmsbr.o \
-                       $(POPLIB) $(TMALIB) $(LIBES)
-@@ -584,7 +584,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--install-mh:   xinstall-mh
-+install-mh:   xinstall-mh;
- 
- xinstall-mh:  install-mh.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ install-mh.o $(LDLIBS) 
-@@ -601,7 +601,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--kdsc:         xkdsc
-+kdsc:         xkdsc;
- 
- xkdsc:                kdsc.o $(KDSLIB) $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ kdsc.o $(KDSLIB) $(LDLIBS)
-@@ -618,7 +618,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--mark:         xmark
-+mark:         xmark;
- 
- xmark:                mark.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ mark.o $(LDLIBS) 
-@@ -635,7 +635,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--mhl:          xmhl
-+mhl:          xmhl;
- 
- xmhl:         mhl.o \
-                       mhlsbr.o trmsbr.o $(LIBES) 
-@@ -655,7 +655,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--mhmail:               xmhmail
-+mhmail:               xmhmail;
- 
- xmhmail:      mhmail.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ mhmail.o $(LDLIBS)
-@@ -672,7 +672,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--mhn:          xmhn
-+mhn:          xmhn;
- 
- xmhn:                 mhn.o ftpsbr.o trmsbr.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ mhn.o ftpsbr.o trmsbr.o \
-@@ -690,7 +690,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--mhparam:      xmhparam
-+mhparam:      xmhparam;
- 
- xmhparam:     mhparam.o trmsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ mhparam.o $(LDLIBS) $(LDCURSES)
-@@ -707,7 +707,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--mhpath:               xmhpath
-+mhpath:               xmhpath;
- 
- xmhpath:      mhpath.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ mhpath.o $(LDLIBS)
-@@ -731,7 +731,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--msgchk:               xmsgchk
-+msgchk:               xmsgchk;
- 
- xmsgchk:      msgchk.o $(POPLIB) $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ msgchk.o $(POPLIB) \
-@@ -749,7 +749,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--msh:          xmsh
-+msh:          xmsh;
- 
- xmsh:         msh.o mshcmds.o vmhsbr.o \
-                       picksbr.o scansbr.o dropsbr.o mhlsbr.o trmsbr.o \
-@@ -772,7 +772,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--packf:                xpackf
-+packf:                xpackf;
- 
- xpackf:               packf.o dropsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ packf.o dropsbr.o $(LDLIBS)
-@@ -789,7 +789,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--pick:         xpick
-+pick:         xpick;
- 
- xpick:        pick.o picksbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ pick.o picksbr.o $(LDLIBS)
-@@ -806,7 +806,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--popi:         xpopi
-+popi:         xpopi;
- 
- xpopi:                popi.o $(POPLIB) trmsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ popi.o $(POPLIB) trmsbr.o $(LDLIBS) \
-@@ -831,7 +831,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--post:         xpost
-+post:         xpost;
- 
- xpost:        post.o \
-                       aliasbr.o $(MTSBRS) $(TMALIB) $(LIBES)
-@@ -851,7 +851,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--prompter:     xprompter
-+prompter:     xprompter;
- 
- xprompter:    prompter.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ prompter.o $(LDLIBS)
-@@ -868,7 +868,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--rcvdist:      xrcvdist
-+rcvdist:      xrcvdist;
- 
- xrcvdist:     rcvdist.o distsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ rcvdist.o distsbr.o $(LDLIBS)
-@@ -885,7 +885,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--rcvpack:      xrcvpack
-+rcvpack:      xrcvpack;
- 
- xrcvpack:     rcvpack.o dropsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ rcvpack.o dropsbr.o $(LDLIBS)
-@@ -902,7 +902,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--rcvstore:     xrcvstore
-+rcvstore:     xrcvstore;
- 
- xrcvstore:    rcvstore.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ rcvstore.o $(LDLIBS)
-@@ -923,7 +923,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--rcvtty:               xrcvtty
-+rcvtty:               xrcvtty;
- 
- xrcvtty:      rcvtty.o scansbr.o trmsbr.o \
- @BEGIN: TTYD
-@@ -952,7 +952,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--refile:               xrefile
-+refile:               xrefile;
- 
- xrefile:      refile.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ refile.o $(LDLIBS) 
-@@ -969,7 +969,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--repl:         xrepl
-+repl:         xrepl;
- 
- xrepl:                repl.o replsbr.o whatnowproc.o \
-                       whatnowsbr.o sendsbr.o annosbr.o distsbr.o $(LIBES)
-@@ -992,7 +992,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--rmail:                xrmail
-+rmail:                xrmail;
- 
- xrmail:       rmail.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ rmail.o $(LDLIBS)
-@@ -1009,7 +1009,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--rmf:          xrmf
-+rmf:          xrmf;
- 
- xrmf:         rmf.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ rmf.o $(LDLIBS)
-@@ -1026,7 +1026,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--rmm:          xrmm
-+rmm:          xrmm;
- 
- xrmm:         rmm.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ rmm.o $(LDLIBS)
-@@ -1043,7 +1043,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--scan:         xscan
-+scan:         xscan;
- 
- xscan:        scan.o \
-                       scansbr.o trmsbr.o $(LIBES)
-@@ -1063,7 +1063,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--send:         xsend
-+send:         xsend;
- 
- xsend:        send.o \
-                       sendsbr.o annosbr.o distsbr.o $(LIBES) 
-@@ -1089,9 +1089,9 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--next:         show
--prev:         show
--show:         xshow
-+next:         show;
-+prev:         show;
-+show:         xshow;
- 
- xshow:                show.o \
-                       mhlsbr.o trmsbr.o $(LIBES) 
-@@ -1118,7 +1118,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--sbboards:     xsbboards
-+sbboards:     xsbboards;
- 
- xsbboards:    sbboards.o dropsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ sbboards.o dropsbr.o $(LDLIBS)
-@@ -1135,7 +1135,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--slocal:               xslocal
-+slocal:               xslocal;
- 
- xslocal:      slocal.o aliasbr.o dropsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ slocal.o aliasbr.o dropsbr.o $(LDLIBS)
-@@ -1152,7 +1152,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--sortm:                xsortm
-+sortm:                xsortm;
- 
- xsortm:       sortm.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ sortm.o $(LDLIBS)
-@@ -1172,7 +1172,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--spop:         xspop
-+spop:         xspop;
- 
- xspop:                spop.o dropsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ spop.o dropsbr.o $(LDLIBS)
-@@ -1193,7 +1193,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--spost:                xspost
-+spost:                xspost;
- 
- xspost:       spost.o aliasbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ spost.o aliasbr.o $(LDLIBS)
-@@ -1213,7 +1213,7 @@
-               address@hidden "Don't forget to: ln -s /usr/lib/sendmail $@"
-               address@hidden ""
-               
--sendmail:             xsendmail
-+sendmail:             xsendmail;
- 
- xsendmail:            sendmail.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ sendmail.o $(LDLIBS)
-@@ -1230,7 +1230,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--tma:          xtma
-+tma:          xtma;
- 
- xtma:         tma.o $(TMALIB) $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ tma.o $(TMALIB) $(LDLIBS)
-@@ -1247,7 +1247,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--umhook:               xumhook
-+umhook:               xumhook;
- 
- xumhook:      umhook.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ umhook.o  $(LDLIBS) $(LDCURSES)
-@@ -1264,7 +1264,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--vmh:          xvmh
-+vmh:          xvmh;
- 
- xvmh:         vmh.o vmhsbr.o $(LIBES) 
-               $(LD) $(LDFLAGS) -o $@ vmh.o vmhsbr.o $(LDCURSES) $(LDLIBS)
-@@ -1285,7 +1285,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--whatnow:      xwhatnow
-+whatnow:      xwhatnow;
- 
- xwhatnow:     whatnow.o \
-                       whatnowsbr.o sendsbr.o annosbr.o distsbr.o $(LIBES)
-@@ -1305,7 +1305,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--whom:         xwhom
-+whom:         xwhom;
- 
- xwhom:                whom.o distsbr.o $(LIBES)
-               $(LD) $(LDFLAGS) -o $@ whom.o distsbr.o $(LDLIBS)
-@@ -1322,7 +1322,7 @@
-               address@hidden -l $@
-               address@hidden ""
- 
--wmh:          xwmh
-+wmh:          xwmh;
- 
- xwmh:         wmh.o vmhsbr.o $(LIBES) 
-               ${CC} $(LDFLAGS) -o $@ wmh.o vmhsbr.o $(LDLIBS) \
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/h/strings.h ./h/strings.h
---- ../mh-6.8-dist/h/strings.h Sat Dec 25 16:57:50 1993
-+++ ./h/strings.h      Sat Jul 16 18:05:55 1994
-@@ -63,7 +63,9 @@
- #ifdef        SYS5
- #include <memory.h>
- #define bcmp(b1,b2,length)    memcmp(b1, b2, length)
-+#if __GNUC__ != 2
- #define       bcopy(b1,b2,length)     (void) memcpy (b2, b1, length)
-+#endif
- #define       bcpy(b1,b2,length)      memcmp (b1, b2, length)
- #define       bzero(b,length)         (void) memset (b, 0, length)
- #endif /* SYS5 */
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/sbr/discard.c ./sbr/discard.c
---- ../mh-6.8-dist/sbr/discard.c       Sat Dec 25 16:57:51 1993
-+++ ./sbr/discard.c    Sat Jul 16 18:11:18 1994
-@@ -49,7 +49,11 @@
- #ifdef _FSTDIO
-     fpurge (io);
- #else
-+#ifdef _STDIO_USES_IOSTREAM
-+    io -> _IO_write_ptr = io -> _IO_write_base;
-+#else
-     if (io -> _ptr = io -> _base)
-       io -> _cnt = 0;
- #endif
-+#endif /* _STDIO_USES_IOSTREAM */
- }
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/sbr/m_getfld.c ./sbr/m_getfld.c
---- ../mh-6.8-dist/sbr/m_getfld.c      Sat Dec 25 16:57:51 1993
-+++ ./sbr/m_getfld.c   Sat Jul 16 18:10:23 1994
-@@ -244,22 +244,40 @@
-            */
-           cp = name; i = NAMESZ - 1;
-           for (;;) {
-+#ifdef _STDIO_USES_IOSTREAM
-+              bp = sp = (unsigned char *) iob->_IO_read_ptr - 1;
-+              j = (cnt = ((long) iob->_IO_read_end - (long) 
iob->_IO_read_ptr) + 1) < i?
-+                  cnt: i;
-+#else
-               bp = sp = (unsigned char *) iob->_ptr - 1;
-               j = (cnt = iob->_cnt+1) < i ? cnt : i;
-+#endif
-               while ((c = *bp++) != ':' && c != '\n' && --j >= 0)
-                   *cp++ = c;
- 
-               j = bp - sp;
-               if ((cnt -= j) <= 0) {
-+#ifdef _STDIO_USES_IOSTREAM
-+                  iob->_IO_read_ptr = iob->_IO_read_end;
-+                  if (__underflow(iob) == EOF) {
-+#else
-                   if (_filbuf(iob) == EOF) {
-+#endif
-                       *cp = *buf = 0;
-                       advise (NULLCP, "eof encountered in field \"%s\"",
-                               name);
-                       return FMTERR;
-                   }
-+#ifdef _STDIO_USES_IOSTREAM
-+                  iob->_IO_read_ptr++; /* NOT automatic in __underflow()! */
-+#endif
-               } else {
-+#ifdef _STDIO_USES_IOSTREAM
-+                  iob->_IO_read_ptr = bp + 1;
-+#else
-                   iob->_ptr = bp + 1;
-                   iob->_cnt = cnt - 1;
-+#endif
-               }
-               if (c == ':')
-                   break;
-@@ -298,16 +316,27 @@
-            */
-           cp = buf; i = bufsz-1;
-           for (;;) {
-+#ifdef _STDIO_USES_IOSTREAM
-+              cnt = (long) iob->_IO_read_end - (long) iob->_IO_read_ptr;
-+              bp = (unsigned char *) --iob->_IO_read_ptr;
-+#else
-               cnt = iob->_cnt++; bp = (unsigned char *) --iob->_ptr;
-+#endif
-               c = cnt < i ? cnt : i;
-               while (ep = locc( c, bp, '\n' )) {
-                   /*
-                    * if we hit the end of this field, return.
-                    */
-                   if ((j = *++ep) != ' ' && j != '\t') {
-+#ifdef _STDIO_USES_IOSTREAM
-+                      j = ep - (unsigned char *) iob->_IO_read_ptr;
-+                      (void) bcopy( iob->_IO_read_ptr, cp, j);
-+                      iob->_IO_read_ptr = ep;
-+#else
-                       j = ep - (unsigned char *) iob->_ptr;
-                       (void) bcopy( iob->_ptr, cp, j);
-                       iob->_ptr = ep; iob->_cnt -= j;
-+#endif
-                       cp += j;
-                       state = FLD;
-                       goto finish;
-@@ -317,12 +346,21 @@
-               /*
-                * end of input or dest buffer - copy what we've found.
-                */
-+#ifdef _STDIO_USES_IOSTREAM
-+              c += bp - (unsigned char *) iob->_IO_read_ptr;
-+              (void) bcopy( iob->_IO_read_ptr, cp, c);
-+#else
-               c += bp - (unsigned char *) iob->_ptr;
-               (void) bcopy( iob->_ptr, cp, c);
-+#endif
-               i -= c; cp += c;
-               if (i <= 0) {
-                   /* the dest buffer is full */
-+#ifdef _STDIO_USES_IOSTREAM
-+                  iob->_IO_read_ptr += c;
-+#else
-                   iob->_cnt -= c; iob->_ptr += c;
-+#endif
-                   state = FLDPLUS;
-                   break;
-               }
-@@ -333,11 +371,22 @@
-                * this is the end of the field.  Otherwise loop.
-                */
-               --i;
-+#ifdef _STDIO_USES_IOSTREAM
-+              *cp++ = j = *(iob->_IO_read_ptr + c);
-+              iob->_IO_read_ptr = iob->_IO_read_end;
-+              c = __underflow(iob);
-+              iob->_IO_read_ptr++;    /* NOT automatic! */
-+#else
-               *cp++ = j = *(iob->_ptr + c);
-               c = _filbuf(iob);
-+#endif
-               if ((j == '\0' || j == '\n') && c != ' ' && c != '\t') {
-                   if (c != EOF)
-+#ifdef _STDIO_USES_IOSTREAM
-+                      --iob->_IO_read_ptr;
-+#else
-                       --iob->_ptr, ++iob->_cnt;
-+#endif
-                   state = FLD;
-                   break;
-               }
-@@ -353,7 +402,12 @@
-            * the output buffer and we don't add an eos.
-            */
-           i = (bufsz < 0) ? -bufsz : bufsz-1;
-+#ifdef _STDIO_USES_IOSTREAM
-+          bp = (unsigned char *) --iob->_IO_read_ptr;
-+          cnt = (long) iob->_IO_read_end - (long) iob->_IO_read_ptr;
-+#else
-           bp = (unsigned char *) --iob->_ptr; cnt = ++iob->_cnt;
-+#endif
-           c = (cnt < i ? cnt : i);
-           if (msg_style != MS_DEFAULT && c > 1) {
-               /*
-@@ -410,8 +464,12 @@
-               }
-           }
-           (void) bcopy( bp, buf, c );
-+#ifdef _STDIO_USES_IOSTREAM
-+          iob->_IO_read_ptr += c;
-+#else
-           iob->_cnt -= c;
-           iob->_ptr += c;
-+#endif
-           if (bufsz < 0) {
-               msg_count = c;
-               return (state);
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/support/pop/popd.c ./support/pop/popd.c
---- ../mh-6.8-dist/support/pop/popd.c  Sat Dec 25 16:57:51 1993
-+++ ./support/pop/popd.c       Sat Jul 16 18:05:56 1994
-@@ -61,8 +61,10 @@
- #ifndef       BSD44
- extern int  sys_nerr;
- extern char *sys_errlist[];
-+#ifndef linux
- extern char *sys_siglist[];
- #endif
-+#endif
- 
- 
- int  debug = 0;
-@@ -193,6 +195,10 @@
- #ifdef        SIGCHLD
-     (void) signal (SIGCHLD, chldser);
- #endif        /* SIGCHLD */
-+#ifdef linux
-+/* No limit on the number of connections? this seems wrong... */
-+#define SOMAXCONN 5
-+#endif
-     (void) listen (sd, SOMAXCONN);
- #endif /* KPOP */
- #ifdef        FAST
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/uip/inc.c ./uip/inc.c
---- ../mh-6.8-dist/uip/inc.c   Sat Dec 25 16:57:51 1993
-+++ ./uip/inc.c        Sat Jul 16 18:05:56 1994
-@@ -384,17 +384,23 @@
- 
- /*  */
- 
--#ifdef MAILGROUP
--    return_gid = getegid();   /* Save effective gid, assuming we'll use it */
--    setgid(getgid());         /* Turn off extraordinary privileges */
--#endif        /* MAILGROUP */
--
- #ifdef        POP
-     if (host && !*host)
-       host = NULL;
-     if (from || !host || rpop <= 0)
-       (void) setuid (getuid ());
- #endif /* POP */
-+
-+/*
-+ * 93/12/17 address@hidden relocated: with MAILGROUP and POP both defined
-+ * the setgid() call ran as root, and saved gid would be lost.  If the 
setuid()
-+ * call above then ran, inc would be unable to reestablish its setgid state.
-+ */
-+#ifdef MAILGROUP
-+    return_gid = getegid();   /* Save effective gid, assuming we'll use it */
-+    setgid(getgid());         /* Turn off extraordinary privileges */
-+#endif        /* MAILGROUP */
-+
-     if (from) {
-       newmail = from;
- #ifdef        POP
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/uip/popi.c ./uip/popi.c
---- ../mh-6.8-dist/uip/popi.c  Sat Dec 25 16:57:51 1993
-+++ ./uip/popi.c       Sat Jul 16 18:05:57 1994
-@@ -558,7 +558,11 @@
- 
- 
- static int  dselect (d)
-+#ifdef SYS5DIR
-+register struct dirent *d;
-+#else
- register struct direct *d;
-+#endif
- {
-     int           i;
- 
-@@ -571,8 +575,13 @@
- 
- 
- static int  dcompar (d1, d2)
-+#ifdef SYS5DIR
-+struct dirent **d1,
-+            **d2;
-+#else
- struct direct **d1,
-             **d2;
-+#endif
- {
-     struct stat s1,
-               s2;
-@@ -592,7 +601,11 @@
-     int           n,
-           retval,
-           sm;
-+#ifdef SYS5DIR
-+    struct dirent **namelist;
-+#else
-     struct direct **namelist;
-+#endif
- 
-     if (chdir (bulksw) == NOTOK)
-       adios (bulksw, "unable to change directory to");
-@@ -602,7 +615,11 @@
- 
-     sm = NOTOK;
-     for (i = 0; i < n; i++) {
-+#ifdef SYS5DIR
-+      register struct dirent *d = namelist[i];
-+#else
-       register struct direct *d = namelist[i];
-+#endif
- 
-       if (sm == NOTOK) {
-           if (rp_isbad (retval = sm_init (NULLCP, host, 1, 1, snoop)))
-@@ -630,13 +647,21 @@
-       register int j;
-       int     l,
-               m;
-+#ifdef SYS5DIR
-+      struct dirent **newlist;
-+#else
-       struct direct **newlist;
-+#endif
- 
-       while ((l = scandir (".", &newlist, dselect, dcompar)) > OK) {
-           m = 0;
- 
-           for (j = 0; j < l; j++) {
-+#ifdef SYS5DIR
-+              register struct dirent *d = newlist[j];
-+#else
-               register struct direct *d = newlist[j];
-+#endif
- 
-               for (i = 0; i < n; i++)
-                   if (strcmp (d -> d_name, namelist[i] -> d_name) == 0)
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/uip/sbboards.c ./uip/sbboards.c
---- ../mh-6.8-dist/uip/sbboards.c      Sat Dec 25 16:57:51 1993
-+++ ./uip/sbboards.c   Sat Jul 16 18:05:57 1994
-@@ -66,7 +66,10 @@
- #ifdef LOCALE
- #include      <locale.h>
- #endif
--
-+#ifdef linux
-+/* FIXME - who should be doing this?  With what option? */
-+#include <sys/types.h>
-+#endif
- 
- #define       NBB     100
- 
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/uip/scansbr.c ./uip/scansbr.c
---- ../mh-6.8-dist/uip/scansbr.c       Sat Dec 25 16:57:51 1993
-+++ ./uip/scansbr.c    Sat Jul 16 18:10:56 1994
-@@ -238,14 +238,25 @@
-                */
-       body:   ;
-               while (state == BODY) {
-+#ifdef _STDIO_USES_IOSTREAM
-+                  if (scnout->_IO_write_ptr == scnout->_IO_write_end) {
-+#else
-                   if (scnout->_cnt <= 0) {
-+#endif
-                       if (fflush(scnout) == EOF)
-                           adios (scnmsg, "write error on");
-                   }
-+#ifdef _STDIO_USES_IOSTREAM
-+                  state = m_getfld(state, name, scnout->_IO_write_ptr,
-+                                   
(long)scnout->_IO_write_ptr-(long)scnout->_IO_write_end,
-+                                   inb);
-+                  scnout->_IO_write_ptr += msg_count;
-+#else
-                   state = m_getfld( state, name, scnout->_ptr,
-                                     -(scnout->_cnt), inb );
-                   scnout->_cnt -= msg_count;
-                   scnout->_ptr += msg_count;
-+#endif
-               }
-               goto finished;
- 
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/uip/spop.c ./uip/spop.c
---- ../mh-6.8-dist/uip/spop.c  Sat Dec 25 16:57:51 1993
-+++ ./uip/spop.c       Sat Jul 16 18:05:57 1994
-@@ -66,6 +66,10 @@
- #ifdef LOCALE
- #include      <locale.h>
- #endif
-+#ifdef linux
-+/* FIXME - who should be doing this?  With what option? */
-+#include <sys/types.h>
-+#endif
- 
- 
- #define       NBB     100
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/uip/vmh.c ./uip/vmh.c
---- ../mh-6.8-dist/uip/vmh.c   Sat Dec 25 16:57:52 1993
-+++ ./uip/vmh.c        Sat Jul 16 18:05:57 1994
-@@ -11,8 +11,10 @@
-  * means "AT&T line discipline" (termio, not sgttyb), whereas terminfo
-  * is quite a separate issue.
-  */
-+#ifndef linux
- #define       TERMINFO        1
- #endif
-+#endif
- 
- /* TODO:
-       Pass signals to client during execution
-@@ -175,6 +177,9 @@
- #if !defined(SYS5) && !defined(BSD44)
- int   _putchar ();
- #endif        /* not SYS5 */
-+#ifdef linux
-+static int _putchar (c) int c; { putchar (c); }
-+#endif
- #ifdef        SIGTSTP
- char   *tgoto ();
- #endif        /* SIGTSTP */
-diff --unified --recursive --minimal --unidirectional-new-file 
../mh-6.8-dist/zotnet/mts/lock.c ./zotnet/mts/lock.c
---- ../mh-6.8-dist/zotnet/mts/lock.c   Sat Dec 25 16:57:52 1993
-+++ ./zotnet/mts/lock.c        Sat Jul 16 18:05:57 1994
-@@ -29,7 +29,9 @@
- #include <sys/types.h>
- #include <sys/stat.h>
- #ifdef SVR4
-+#ifndef linux
- #define LOCKF
-+#endif
- #include <unistd.h>
- #endif
- #ifdef        LOCKF
diff --git a/docs/historical/mh-6.8.5/local/linux/DIFFS.shlib 
b/docs/historical/mh-6.8.5/local/linux/DIFFS.shlib
deleted file mode 100644
index 59f02e4..0000000
--- a/docs/historical/mh-6.8.5/local/linux/DIFFS.shlib
+++ /dev/null
@@ -1,462 +0,0 @@
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/Makefile ./Makefile
-*** ../mh-6.8.3-dist/Makefile  Sat Dec 25 14:19:03 1993
---- ./Makefile Sat Dec 25 14:19:19 1993
-***************
-*** 48,52 ****
-  
##############################################################################
-  
-! ALL  =       config sbr mts zotnet uip support doc
-  
-  all:;                for d in $(ALL); do (cd $$d; $(MAKE) all); done
---- 48,52 ----
-  
##############################################################################
-  
-! ALL  =       config sbr mts zotnet jump uip support doc
-  
-  all:;                for d in $(ALL); do (cd $$d; $(MAKE) all); done
-***************
-*** 61,65 ****
-  
-  
-! INSTALL      =       zotnet support uip doc
-  BINDIR       =       $(DESTDIR)/usr/bin/mh
-  ETCDIR       =       $(DESTDIR)/usr/lib/mh
---- 61,65 ----
-  
-  
-! INSTALL      =       zotnet support jump uip doc
-  BINDIR       =       $(DESTDIR)/usr/bin/mh
-  ETCDIR       =       $(DESTDIR)/usr/lib/mh
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/config/Makefile ./config/Makefile
-*** ../mh-6.8.3-dist/config/Makefile   Sat Dec 25 12:21:17 1993
---- ./config/Makefile  Sat Dec 25 12:43:50 1993
-***************
-*** 9,12 ****
---- 9,17 ----
-  LDOPTIONS=   
-  
-+ # Linux shared libraries
-+ JUMP_DIR=../jump/
-+ JUMP_LIB=libconfig
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC   =       cc
-  CFLAGS       =       $(OPTIONS)
-***************
-*** 17,20 ****
---- 22,29 ----
-  LLIBS        =
-  
-+ # Linux: create $*.j from $*.c, contains DLL version
-+ .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-+              mv $*.o $*.j
-+              $(CC) $(CFLAGS) -c $*.c
-  
-  
##############################################################################
-***************
-*** 45,49 ****
-  
-  clean:               unclean
-!              -rm -f *.o
-  
-  unclean:;    -rm -f _* :* core eddep makedep
---- 54,58 ----
-  
-  clean:               unclean
-!              -rm -f *.o *.j
-  
-  unclean:;    -rm -f _* :* core eddep makedep
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/mts/mh/Makefile ./mts/mh/Makefile
-*** ../mh-6.8.3-dist/mts/mh/Makefile   Sat Dec 25 12:21:26 1993
---- ./mts/mh/Makefile  Sat Dec 25 12:43:18 1993
-***************
-*** 9,12 ****
---- 9,17 ----
-  OPTIONS=     -DSYS5 -DSHADOW -DMORE='"/usr/bin/more"' -DRENAME -DSYS5DIR 
-DUNISTD -DSVR4 -DMIME -DVSPRINTF -DMHE -DOVERHEAD -DRPATHS -DDUMB -DATHENA 
-DBIND -DSOCKETS -DNTOHLSWAP -DDPOP -DPOP2 -DRPOP -DMPOP 
-DAPOP='"/etc/pop.auth"' -DMAILGROUP -DSENDMTS -DSMTP -DPOP -DBPOP 
-DSPRINTFTYPE=int -DTYPESIG=void -traditional -D_NFILE='getdtablesize()' 
-DSIGEMT=SIGUSR1 -O2 -I..
-  
-+ # Linux shared library
-+ JUMP_DIR=../../jump/
-+ JUMP_LIB=libmts
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC   =       cc
-  CFLAGS       =       $(OPTIONS)
-***************
-*** 26,30 ****
-  #    Generation Rules
-  
##############################################################################
-! .c.o:;               $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
-               mv a.out $@
---- 31,40 ----
-  #    Generation Rules
-  
##############################################################################
-! 
-! # Linux: create $*.j from $*.c, contains DLL version
-! .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-!              -ld -x -r $@
-!              mv a.out $*.j
-!              $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
-               mv a.out $@
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/mts/mmdf/Makefile ./mts/mmdf/Makefile
-*** ../mh-6.8.3-dist/mts/mmdf/Makefile Sat Dec 25 12:21:28 1993
---- ./mts/mmdf/Makefile        Sat Dec 25 12:42:57 1993
-***************
-*** 9,12 ****
---- 9,17 ----
-  OPTIONS      =       -DSYS5 -DSHADOW -DMORE='"/usr/bin/more"' -DRENAME 
-DSYS5DIR -DUNISTD -DSVR4 -DMIME -DVSPRINTF -DMHE -DOVERHEAD -DRPATHS -DDUMB 
-DATHENA -DBIND -DSOCKETS -DNTOHLSWAP -DDPOP -DPOP2 -DRPOP -DMPOP 
-DAPOP='"/etc/pop.auth"' -DMAILGROUP -DSENDMTS -DSMTP -DPOP -DBPOP 
-DSPRINTFTYPE=int -DTYPESIG=void -traditional -D_NFILE='getdtablesize()' 
-DSIGEMT=SIGUSR1 -O2 -I..
-  
-+ # Linux shared library
-+ JUMP_DIR=../../jump/
-+ JUMP_LIB=libmts
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC   =       (MHCOMPILER)
-  CFLAGS       =       $(OPTIONS)
-***************
-*** 27,31 ****
-  
##############################################################################
-  
-! .c.o:;               $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
-               mv a.out $@
---- 32,40 ----
-  
##############################################################################
-  
-! # Linux: create $*.j from $*.c, contains DLL version
-! .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-!              -ld -x -r $@
-!              mv a.out $*.j
-!              $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
-               mv a.out $@
-diff --recursive --minimal --context=1 --unidirectional-new-file 
../mh-6.8.3-dist/mts/sendmail/Makefile ./mts/sendmail/Makefile
-*** ../mh-6.8.3-dist/mts/sendmail/Makefile     Sat Dec 25 12:21:29 1993
---- ./mts/sendmail/Makefile    Sat Dec 25 12:42:35 1993
-***************
-*** 10,11 ****
---- 10,16 ----
-  
-+ # Linux shared library
-+ JUMP_DIR=../../jump/
-+ JUMP_LIB=libmts
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC   =       cc
-***************
-*** 26,28 ****
-  
-! .c.o:;               $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
---- 31,37 ----
-  
-! # Linux: create $*.j from $*.c, contains DLL version
-! .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-!              -ld -x -r $@
-!              mv a.out $*.j
-!              $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
-***************
-*** 66,68 ****
-  clean:               unclean
-!              -rm -f *.o $(LIB) z$(LIB)
-  
---- 75,77 ----
-  clean:               unclean
-!              -rm -f *.o *.j $(LIB) z$(LIB)
-  
-diff --recursive --minimal --context=1 --unidirectional-new-file 
../mh-6.8.3-dist/sbr/Makefile ./sbr/Makefile
-*** ../mh-6.8.3-dist/sbr/Makefile      Sat Dec 25 12:21:33 1993
---- ./sbr/Makefile     Sat Dec 25 12:41:42 1993
-***************
-*** 9,10 ****
---- 9,15 ----
-  
-+ # Linux shared library
-+ JUMP_DIR=../jump/
-+ JUMP_LIB=libmh
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC   =       cc
-***************
-*** 56,58 ****
---- 61,67 ----
-  
-+ # Linux: create $*.j from $*.c, contains DLL version
-  .c.o:
-+              $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-+              -ld -x -r $@
-+              mv a.out $*.j
-               $(CC) $(CFLAGS) -c $*.c
-***************
-*** 90,92 ****
-  clean:               unclean
-!              -rm -f *.o libmh.*
-  
---- 99,101 ----
-  clean:               unclean
-!              -rm -f *.o *.j libmh.*
-  
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/support/bboards/Makefile ./support/bboards/Makefile
-*** ../mh-6.8.3-dist/support/bboards/Makefile  Sat Dec 25 12:21:35 1993
---- ./support/bboards/Makefile Sat Dec 25 13:55:52 1993
-***************
-*** 22,28 ****
-  CFLAGS  =    $(OPTIONS)
-  LDFLAGS      =       $(LDOPTIONS)
-! LIBES1       =       ../../zotnet/libzot.a ../../mts/libmts.a
-! LIBES2       =       ../../config/config.o ../../config/version.o \
-!              ../../sbr/libmh.a $(LIBES1)
-  LDLIBS1      =       $(LIBES1) $(LDOPTLIB)
-  LDLIBS2      =       $(LIBES2) $(LDOPTLIB)
---- 22,33 ----
-  CFLAGS  =    $(OPTIONS)
-  LDFLAGS      =       $(LDOPTIONS)
-! #LIBES1      =       ../../zotnet/libzot.a ../../mts/libmts.a
-! #LIBES2      =       ../../config/config.o ../../config/version.o \
-! #            ../../sbr/libmh.a $(LIBES1)
-! #LDLIBS1     =       $(LIBES1) $(LDOPTLIB)
-! #LDLIBS2     =       $(LIBES2) $(LDOPTLIB)
-! # Linux shared libraries
-! LIBES1       =       ../../jump/libzot.sa ../../jump/libmts.sa
-! LIBES2       =       ../../jump/libconfig.sa ../../jump/libmh.sa $(LIBES1)
-  LDLIBS1      =       $(LIBES1) $(LDOPTLIB)
-  LDLIBS2      =       $(LIBES2) $(LDOPTLIB)
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/support/pop/Makefile ./support/pop/Makefile
-*** ../mh-6.8.3-dist/support/pop/Makefile      Sat Dec 25 14:46:20 1993
---- ./support/pop/Makefile     Sat Dec 25 13:56:48 1993
-***************
-*** 32,39 ****
-  CFLAGS  =    $(OPTIONS)
-  LDFLAGS      =       $(LDOPTIONS)
-! LIBES1       =       ../../zotnet/libzot.a ../../mts/libmts.a
-! LIBES2       =       ../../config/config.o ../../sbr/libmh.a $(LIBES1)
-  LDLIBS1      =       $(LIBES1) $(LDOPTLIB)
-! LDLIBS2      =       $(LIBES2) ../../config/version.o $(LDOPTLIB)
-  
-  LINT =       lint
---- 32,44 ----
-  CFLAGS  =    $(OPTIONS)
-  LDFLAGS      =       $(LDOPTIONS)
-! #LIBES1      =       ../../zotnet/libzot.a ../../mts/libmts.a
-! #LIBES2      =       ../../config/config.o ../../sbr/libmh.a $(LIBES1)
-! #LDLIBS1     =       $(LIBES1) $(LDOPTLIB)
-! #LDLIBS2     =       $(LIBES2) ../../config/version.o $(LDOPTLIB)
-! # Linux shared libraries
-! LIBES1       =       ../../jump/libzot.sa ../../jump/libmts.sa
-! LIBES2       =       ../../jump/libconfig.sa ../../jump/libmh.sa $(LIBES1)
-  LDLIBS1      =       $(LIBES1) $(LDOPTLIB)
-! LDLIBS2      =       $(LIBES2) $(LDOPTLIB)
-  
-  LINT =       lint
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/uip/Makefile ./uip/Makefile
-*** ../mh-6.8.3-dist/uip/Makefile      Sat Dec 25 14:40:03 1993
---- ./uip/Makefile     Sat Dec 25 13:57:46 1993
-***************
-*** 56,62 ****
-  CFLAGS       =       $(OPTIONS)
-  LDFLAGS      =       $(LDOPTIONS)
-! LIBES        =       ../config/config.o ../sbr/libmh.a ../mts/libmts.a \
-!              ../zotnet/libzot.a
-! LDLIBS       =       $(LIBES) ../config/version.o $(LDOPTLIB)
-  LINT =       lint
-  LFLAGS       =       -bhu $(OPTIONS) $(TMAOPTS)
---- 56,66 ----
-  CFLAGS       =       $(OPTIONS)
-  LDFLAGS      =       $(LDOPTIONS)
-! #LIBES       =       ../config/config.o ../sbr/libmh.a ../mts/libmts.a \
-! #            ../zotnet/libzot.a
-! #LDLIBS      =       $(LIBES) ../config/version.o $(LDOPTLIB)
-! # Linux shared libraries
-! LIBES        =       ../jump/libconfig.sa ../jump/libmh.sa ../jump/libmts.sa 
\
-!              ../jump/libzot.sa
-! LDLIBS       =       $(LIBES) $(LDOPTLIB)
-  LINT =       lint
-  LFLAGS       =       -bhu $(OPTIONS) $(TMAOPTS)
-diff --recursive --minimal --context=1 --unidirectional-new-file 
../mh-6.8.3-dist/zotnet/Makefile ./zotnet/Makefile
-*** ../mh-6.8.3-dist/zotnet/Makefile   Sat Dec 25 12:21:46 1993
---- ./zotnet/Makefile  Sat Dec 25 14:02:53 1993
-***************
-*** 10,11 ****
---- 10,16 ----
-  
-+ # Linux shared library
-+ JUMP_DIR=../jump/
-+ JUMP_LIB=libzot
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC   =       cc
-***************
-*** 31,33 ****
-  
-! .c.o:;               $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
---- 36,42 ----
-  
-! # Linux: create $*.j from $*.c, contains DLL version
-! .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-!              -ld -x -r $@
-!              mv a.out $*.j
-!              $(CC) $(CFLAGS) -c $*.c
-               -ld -x -r $@
-***************
-*** 83,85 ****
-  
-! clean:;              -rm -f $(LIB) z$(LIB) _* :* *.o core
-               for d in $(DIRS); do (cd $$d; $(MAKE) clean); done
---- 92,94 ----
-  
-! clean:;              -rm -f $(LIB) z$(LIB) _* :* *.o *.j core
-               for d in $(DIRS); do (cd $$d; $(MAKE) clean); done
-diff --recursive --minimal --context=1 --unidirectional-new-file 
../mh-6.8.3-dist/zotnet/bboards/Makefile ./zotnet/bboards/Makefile
-*** ../mh-6.8.3-dist/zotnet/bboards/Makefile   Sat Dec 25 12:21:47 1993
---- ./zotnet/bboards/Makefile  Sat Dec 25 12:40:58 1993
-***************
-*** 10,11 ****
---- 10,16 ----
-  
-+ # Linux shared library
-+ JUMP_DIR=../../jump/
-+ JUMP_LIB=libzot
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC      =    cc
-***************
-*** 18,19 ****
---- 23,29 ----
-  
-+ # Linux: create $*.j from $*.c, contains DLL version
-+ .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-+              mv $*.o $*.j
-+              $(CC) $(CFLAGS) -c $*.c
-+ 
-  ######################################################################
-***************
-*** 54,56 ****
-  clean:               unclean
-!              -rm -f *.o
-  
---- 64,66 ----
-  clean:               unclean
-!              -rm -f *.o *.j
-  
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/zotnet/mf/Makefile ./zotnet/mf/Makefile
-*** ../mh-6.8.3-dist/zotnet/mf/Makefile        Sat Dec 25 12:21:49 1993
---- ./zotnet/mf/Makefile       Sat Dec 25 14:03:33 1993
-***************
-*** 13,16 ****
---- 13,21 ----
-  REMOVE       =       mv -f
-  
-+ # Linux shared library
-+ JUMP_DIR=../../jump/
-+ JUMP_LIB=libzot
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC      =    cc
-  CFLAGS  =    $(OPTIONS)
-***************
-*** 24,27 ****
---- 29,37 ----
-  .c:;            echo $@
-  
-+ # Linux: create $*.j from $*.c, contains DLL version
-+ .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-+              mv $*.o $*.j
-+              $(CC) $(CFLAGS) -c $*.c
-+ 
-  ######################################################################
-  #    Here it is...
-***************
-*** 146,150 ****
-  
-  clean:               unclean
-!              -rm -f x* *.o
-  
-  unclean:;    -rm -f z* _* :* core eddep makedep MAKEMF
---- 156,160 ----
-  
-  clean:               unclean
-!              -rm -f x* *.o *.j
-  
-  unclean:;    -rm -f z* _* :* core eddep makedep MAKEMF
-diff --recursive --minimal --context=2 --unidirectional-new-file 
../mh-6.8.3-dist/zotnet/mts/Makefile ./zotnet/mts/Makefile
-*** ../mh-6.8.3-dist/zotnet/mts/Makefile       Sat Dec 25 12:21:50 1993
---- ./zotnet/mts/Makefile      Sat Dec 25 14:03:47 1993
-***************
-*** 15,18 ****
---- 15,23 ----
-  REMOVE       =       mv -f
-  
-+ # Linux shared library
-+ JUMP_DIR=../../jump/
-+ JUMP_LIB=libzot
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC      =    cc
-  CFLAGS  =    $(OPTIONS)
-***************
-*** 32,35 ****
---- 37,45 ----
-  .c:;            echo $@
-  
-+ # Linux: create $*.j from $*.c, contains DLL version
-+ .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-+              mv $*.o $*.j
-+              $(CC) $(CFLAGS) -c $*.c
-+ 
-  ######################################################################
-  #    Here it is...
-***************
-*** 110,114 ****
-  
-  clean:               unclean
-!              -rm -f x* *.o
-  
-  unclean:;    -rm -f z* _* :* core eddep makedep MAKEMTS
---- 120,124 ----
-  
-  clean:               unclean
-!              -rm -f x* *.o *.j
-  
-  unclean:;    -rm -f z* _* :* core eddep makedep MAKEMTS
-diff --recursive --minimal --context=1 --unidirectional-new-file 
../mh-6.8.3-dist/zotnet/tws/Makefile ./zotnet/tws/Makefile
-*** ../mh-6.8.3-dist/zotnet/tws/Makefile       Sat Dec 25 12:21:52 1993
---- ./zotnet/tws/Makefile      Sat Dec 25 14:12:29 1993
-***************
-*** 14,15 ****
---- 14,20 ----
-  
-+ # Linux shared library
-+ JUMP_DIR=../../jump/
-+ JUMP_LIB=libzot
-+ export JUMP_DIR JUMP_LIB
-+ 
-  CC      =    cc
-***************
-*** 30,31 ****
---- 35,41 ----
-  
-+ # Linux: create $*.j from $*.c, contains DLL version
-+ .c.o:;               $(CC) -B/usr/dll/jump/ $(CFLAGS) -c $*.c
-+              mv $*.o $*.j
-+              $(CC) $(CFLAGS) -c $*.c
-+ 
-  ######################################################################
-***************
-*** 76,77 ****
---- 86,89 ----
-  lexstring.o: lexstring.c
-+              $(CC) -B/usr/dll/jump/ $(patsubst -O2,,$(CFLAGS)) -c -DONECASE 
lexstring.c
-+              mv $*.o $*.j
-               $(CC) $(CFLAGS) -c -DONECASE lexstring.c
-***************
-*** 104,106 ****
-  clean:               unclean
-!              -rm -f dtimep.c *.o date
-  
---- 116,118 ----
-  clean:               unclean
-!              -rm -f dtimep.c *.o *.j date
-  
diff --git a/docs/historical/mh-6.8.5/local/linux/README.linux 
b/docs/historical/mh-6.8.5/local/linux/README.linux
deleted file mode 100644
index 3837480..0000000
--- a/docs/historical/mh-6.8.5/local/linux/README.linux
+++ /dev/null
@@ -1,118 +0,0 @@
-This is the patch distribution for MH 6.8.3 for Linux.  You will need the UCI
-source distribution of MH 6.8.3.
-
-If you wish to build shared libraries, you must also have tools-2.10 or later.
-(I used tools-2.15.)
-
-
-
-WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
-
-This distribution WILL NOT WORK with libc-4.4.  Use the old distribution if
-you need libc-4.4; or, better yet, upgrade to libc-4.5.  You'll eventually
-need to anyway...
-
-Do NOT attempt to use a particular version of libmh with binaries compiled
-for a different version.  libmh is not a "normal" shared library; there are
-many interdependencies with respect to both function parameters and to side
-effects.  Using a mismatched libmh *will* fail; if you're lucky, all you'll
-get is a core dump.  (If you're not, I hope you backed up your Mail
-directory recently...)
-
-If you have been using the original MH 6.8.3 release for Linux, be aware that
-some configuration details have changed:
-
-  * BBoards are no longer compiled in
-  * The APOP and MPOP options are no longer supported
-  * The MHRC option has been added
-  * Manpages now have the "mh" extension added, as per the MH standard
-
-If you want to re-enable BBoards, I strongly suggest that you get a recent
-version of sendmail (NOT smail; sendmail support is provided, but you're on
-your own if you want to configure smail for BBoards.  Yes, it turns my
-stomach, too...) and read conf/mh-gen.8 and doc/ADMIN.me.  The same goes for
-configuring the POP server, which is enabled but not tested and probably not
-functional.  I don't support either of the above.
-
-If you change configuration options, you may need to regenerate the shared
-library tables.  See the file doc/README.tr in the tools-2.10 (or later)
-distribution for details.  In particular, I have made no provision for the
-length of the mhbinpath and mhetcpath to be increased.
-
-WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
-
-
-
-Instructions:
-
-(1) Unpack the UCI MH distribution into a directory somewhere.  Keep in mind
-that MH is *huge*.
-
-(2) Unpack this distriburtion into the same directory.  It will create several
-files in the current directory, as well as a "jump" directory containing the
-control files for the shared libmh.
-
-(3) Type "patch -p0 -N < DIFFS.linux".  This will apply the basic
-compatibility patches to MH.
-
-(4) Examine the file "zotnet/tws/dtimep.c-lexed".  Some early copies of the
-UCI MH distribution have an empty file here; others have the correct file.  If
-yours is empty, copy linux-dtimep.c-lexed to zotnet/tws/dtimep.c-lexed.  If
-you plan to build the shared library, you may want to copy this file anyway;
-if you use the distribution one, you may need to regenerate the shared
-library tables because my copy of the MH distribution came with an empty
-dtimep.c-lexed and I had to create this one to build MH.
-
-(5) Examine the file "linux-conf.MH".  This is an MH configuration file
-consistent with the Linux FSSTND and with my best understanding of Debian
-Linux.  (It is *not* the one I use, by the way.)  You may wish to read
-conf/mh-gen.8 and change some of the options; if you do so, PLEASE change the
-version numbers in jump/jump.params and jump/Makefile to avoid disaster.  See
-the WARNING above.  Copy linux-conf.MH to conf/MH and edit it to match your
-choice of options.
-
-(6) Likewise, "linux-conf.config.mtstailor" is a Linux-specific copy of
-conf/config/mtstailor.  You may want to modify it as per conf/mh-gen.8.  (This
-is much less likely, IMHO.)  Copy it to conf/config/mtstailor and edit as
-above.
-
-(7) Configure MH:  "cd conf; make mhconfig; mhconfig MH; cd ..; make clean".
-
-(8) If you want to build the static MH, skip to step 10.
-
-(9) If you want to build the MH shared library, type the command "patch -p0 -N
-< DIFFS.shlib".  I don't know whether to try to fix this or to wait for
-libc-5.0 with ELF shared libraries; those are already supported by MH.  But
-making the MH configuration facility support Linux DLL shared libraries is
-going to be a real b*tch of a job.
-
-(10) Type "make".  Watch for errors; they won't stop the build (not my
-idea...).  On my 486DX2/66 24MB it takes 10-15 minutes to build MH from
-scratch.  (Don't knock it; it used to take an hour and a half back when I was
-building MH 6.5 under System III on a 68000 box...)
-
-(11) If something went wrong, make sure you didn't change the wrong options.
-(Well-meaning fools who try to substitute BSD options for the SVR4 options in
-my conf/MH will probably never get thjings working reliably.  You have been
-warned.)  Make sure you're using libc-4.5.x.  If all else fails, capture the
-output of the "make" above in a file and send it to me.
-
-(12) Type "make install" to install the binaries and manpages.  WARNING!  If
-you had the old Linux MH distribution installed, you may want to remove the
-old manpages by hand; they will *not* be overwritten, because the extensions
-have been returned to the MH standard.  (I decline to argue this with the
-FSSTND or Debian folks; if they want to impose maintenance problems on
-developers, they should be prepared to take over said development themselves.)
-
-(13) That's it!  Make sure /usr/bin/mh is on your path before trying to use
-MH.
-
-
-
-Instructions on how to *use* MH are beyond the scope of this document.  See
-doc/MH.me, papers/beginners/beginners.tex, and the MH Nutshell Handbook from
-O'Reilly and Associates.
-
-++Brandon
address@hidden
-August 1, 1994
diff --git a/docs/historical/mh-6.8.5/local/linux/jump/Makefile 
b/docs/historical/mh-6.8.5/local/linux/jump/Makefile
deleted file mode 100644
index febdb16..0000000
--- a/docs/historical/mh-6.8.5/local/linux/jump/Makefile
+++ /dev/null
@@ -1,55 +0,0 @@
-SHELL = /bin/sh
-VERSION = 3.0
-LIBDEFS = -a 0x63f00000 -g 4096 -j 0x1000
-
-LIBCONFIG = ../config/config.j ../config/version.j
-LIBMH = ../sbr/add.j ../sbr/addrsbr.j ../sbr/adios.j ../sbr/admonish.j \
-       ../sbr/advertise.j ../sbr/advise.j ../sbr/ambigsw.j ../sbr/atooi.j \
-       ../sbr/brkstring.j ../sbr/closefds.j ../sbr/concat.j ../sbr/copy.j \
-       ../sbr/copyip.j ../sbr/cpydata.j ../sbr/cpydgst.j ../sbr/discard.j \
-       ../sbr/done.j ../sbr/fdcompare.j ../sbr/fmtcompile.j \
-       ../sbr/formataddr.j ../sbr/formatdef.j ../sbr/formatsbr.j \
-       ../sbr/gans.j ../sbr/getans.j ../sbr/getanswer.j ../sbr/getcpy.j \
-       ../sbr/help.j ../sbr/m_atoi.j ../sbr/m_backup.j ../sbr/m_convert.j \
-       ../sbr/m_delete.j ../sbr/m_draft.j ../sbr/m_find.j ../sbr/m_fmsg.j \
-       ../sbr/m_foil.j ../sbr/m_getdefs.j ../sbr/m_getfld.j \
-       ../sbr/m_getfolder.j ../sbr/m_gmprot.j ../sbr/m_gmsg.j \
-       ../sbr/m_maildir.j ../sbr/m_msgdef.j ../sbr/m_name.j \
-       ../sbr/m_readefs.j ../sbr/m_remsg.j ../sbr/m_replace.j \
-       ../sbr/m_scratch.j ../sbr/m_seq.j ../sbr/m_seqbits.j \
-       ../sbr/m_seqflag.j ../sbr/m_seqnew.j ../sbr/m_setcur.j \
-       ../sbr/m_setseq.j ../sbr/m_setvis.j ../sbr/m_sync.j ../sbr/m_tmpfil.j \
-       ../sbr/m_update.j ../sbr/makedir.j ../sbr/path.j ../sbr/peekc.j \
-       ../sbr/pidstatus.j ../sbr/pidwait.j ../sbr/printsw.j ../sbr/push.j \
-       ../sbr/putenv.j ../sbr/pwd.j ../sbr/r1bindex.j ../sbr/refile.j \
-       ../sbr/remdir.j ../sbr/showfile.j ../sbr/smatch.j ../sbr/sprintb.j \
-       ../sbr/ssequal.j ../sbr/strindex.j ../sbr/trimcpy.j ../sbr/uleq.j \
-       ../sbr/uprf.j ../sbr/vfgets.j
-LIBMTS = ../mts/sendmail/hosts.j ../mts/sendmail/smail.j
-LIBZOT = ../zotnet/bboards/getbbent.j ../zotnet/mf/mf.j \
-    ../zotnet/tws/dtime.j ../zotnet/tws/dtimep.j ../zotnet/tws/lexstring.j \
-    ../zotnet/mts/client.j ../zotnet/mts/lock.j ../zotnet/mts/mts.j
-
-all: libmh.so.$(VERSION) libconfig.sa libmh.sa libmts.sa libzot.sa
-       /usr/dll/bin/verify-shlib -l libmh.so.$(VERSION) \
-           libconfig.sa libmh.sa libmts.sa libzot.sa
-
-libmh.so.$(VERSION): jump.params $(LIBCONFIG) $(LIBMH) $(LIBMTS) $(LIBZOT)
-       ar rc libconfig.a $(LIBCONFIG)
-       ar rc libmh.a $(LIBMH)
-       ar rc libmts.a $(LIBMTS)
-       ar rc libzot.a $(LIBZOT)
-       /usr/dll/bin/mkimage -l /lib/libmh -v $(VERSION) $(LIBDEFS) -- \
-           libconfig.a libmh.a libmts.a libzot.a `cc --print` -lc
-       rm -f libconfig.a libmh.a libmts.a libzot.a
-
-libconfig.sa libmh.sa libmts.sa libzot.sa: libmh.so.$(VERSION)
-       /usr/dll/bin/mkstubs -l /lib/libmh -v $(VERSION) $(LIBDEFS) -- \
-           libconfig libmh libmts libzot
-
-inst-all:
-       cp libmh.so.$(VERSION) /lib
-       /etc/ldconfig /lib
-
-clean:
-       -rm *.[csoa] *.so.*.* *.sa verify.out
diff --git a/docs/historical/mh-6.8.5/local/linux/jump/jump.funcs 
b/docs/historical/mh-6.8.5/local/linux/jump/jump.funcs
deleted file mode 100644
index 11de876..0000000
--- a/docs/historical/mh-6.8.5/local/linux/jump/jump.funcs
+++ /dev/null
@@ -1,150 +0,0 @@
-00000000 T _libpath             libconfig      config
-00000000 T _add                 libmh          add
-00000000 T _adios               libmh          adios
-00000000 T _admonish            libmh          admonish
-00000000 T _getname             libmh          addrsbr
-00000000 T _getm                libmh          addrsbr
-00000000 T _mnfree              libmh          addrsbr
-00000000 T _auxformat           libmh          addrsbr
-00000000 T _adrsprintf          libmh          addrsbr
-00000000 T _ismymbox            libmh          addrsbr
-00000000 T _advertise           libmh          advertise
-00000000 T _advise              libmh          advise
-00000000 T _ambigsw             libmh          ambigsw
-00000000 T _atooi               libmh          atooi
-00000000 T _brkstring           libmh          brkstring
-00000000 T _closefds            libmh          closefds
-00000000 T _concat              libmh          concat
-00000000 T _copy                libmh          copy
-00000000 T _copyip              libmh          copyip
-00000000 T _cpydata             libmh          cpydata
-00000000 T _cpydgst             libmh          cpydgst
-00000000 T _discard             libmh          discard
-00000000 T _done                libmh          done
-00000000 T _fdcompare           libmh          fdcompare
-00000000 T _gans                libmh          gans
-00000000 T _getans              libmh          getans
-00000000 T _getanswer           libmh          getanswer
-00000000 T _getcpy              libmh          getcpy
-00000000 T _help                libmh          help
-00000000 T _fmt_compile         libmh          fmtcompile
-00000000 T _formataddr          libmh          formataddr
-00000000 T _new_fs              libmh          formatsbr
-00000000 T _fmtscan             libmh          formatsbr
-00000000 T _m_atoi              libmh          m_atoi
-00000000 T _m_backup            libmh          m_backup
-00000000 T _m_convert           libmh          m_convert
-00000000 T _m_delete            libmh          m_delete
-00000000 T _m_draft             libmh          m_draft
-00000000 T _m_find              libmh          m_find
-00000000 T _m_fmsg              libmh          m_fmsg
-00000000 T _m_foil              libmh          m_foil
-00000000 T _m_getdefs           libmh          m_getdefs
-00000000 T _m_getfld            libmh          m_getfld
-00000000 T _m_unknown           libmh          m_getfld
-00000000 T _m_eomsbr            libmh          m_getfld
-00000000 T _m_Eom               libmh          m_getfld
-00000000 T _unixline            libmh          m_getfld
-00000000 T _m_getfolder         libmh          m_getfolder
-00000000 T _m_gmprot            libmh          m_gmprot
-00000000 T _m_gmsg              libmh          m_gmsg
-00000000 T _m_maildir           libmh          m_maildir
-00000000 T _m_mailpath          libmh          m_maildir
-00000000 T _m_name              libmh          m_name
-00000000 T _m_readefs           libmh          m_readefs
-00000000 T _m_remsg             libmh          m_remsg
-00000000 T _m_replace           libmh          m_replace
-00000000 T _m_scratch           libmh          m_scratch
-00000000 T _m_seq               libmh          m_seq
-00000000 T _m_seqbits           libmh          m_seqbits
-00000000 T _m_seqflag           libmh          m_seqflag
-00000000 T _m_seqnew            libmh          m_seqnew
-00000000 T _m_seqadd            libmh          m_seqnew
-00000000 T _m_seqdel            libmh          m_seqnew
-00000000 T _m_setcur            libmh          m_setcur
-00000000 T _m_setseq            libmh          m_setseq
-00000000 T _m_setvis            libmh          m_setvis
-00000000 T _m_sync              libmh          m_sync
-00000000 T _m_tmpfil            libmh          m_tmpfil
-00000000 T _m_update            libmh          m_update
-00000000 T _makedir             libmh          makedir
-00000000 T _path                libmh          path
-00000000 T _peekc               libmh          peekc
-00000000 T _pidwait             libmh          pidwait
-00000000 T _pidstatus           libmh          pidstatus
-00000000 T _printsw             libmh          printsw
-00000000 T _push                libmh          push
-00000000 T _m_putenv            libmh          putenv
-00000000 T _unputenv            libmh          putenv
-00000000 T _pwd                 libmh          pwd
-00000000 T _refile              libmh          refile
-00000000 T _remdir              libmh          remdir
-00000000 T _r1bindex            libmh          r1bindex
-00000000 T _showfile            libmh          showfile
-00000000 T _smatch              libmh          smatch
-00000000 T _sprintb             libmh          sprintb
-00000000 T _ssequal             libmh          ssequal
-00000000 T _stringdex           libmh          strindex
-00000000 T _trimcpy             libmh          trimcpy
-00000000 T _uleq                libmh          uleq
-00000000 T _uprf                libmh          uprf
-00000000 T _vfgets              libmh          vfgets
-00000000 T _OfficialName        libmts         hosts
-00000000 T _sm_init             libmts         smail
-00000000 T _sm_winit            libmts         smail
-00000000 T _sm_wadr             libmts         smail
-00000000 T _sm_waend            libmts         smail
-00000000 T _sm_wtxt             libmts         smail
-00000000 T _sm_wtend            libmts         smail
-00000000 T _sm_end              libmts         smail
-00000000 T __DUMMY__            libmts         smail
-00000000 T _rp_string           libmts         smail
-00000000 T _EHLOset             libmts         smail
-00000000 T _mts_init            libzot         mts
-00000000 T _LocalName           libzot         mts
-00000000 T _SystemName          libzot         mts
-00000000 T _UucpChan            libzot         mts
-00000000 T _getusr              libzot         mts
-00000000 T _getfullname         libzot         mts
-00000000 T _dup2                libzot         mts
-00000000 T _lkopen              libzot         lock
-00000000 T _lkclose             libzot         lock
-00000000 T _lkfopen             libzot         lock
-00000000 T _lkfclose            libzot         lock
-00000000 T _client              libzot         client
-00000000 T _gethostbystring     libzot         client
-00000000 T _setbbfile           libzot         getbbent
-00000000 T _setbbinfo           libzot         getbbent
-00000000 T _setpwinfo           libzot         getbbent
-00000000 T _setbbent            libzot         getbbent
-00000000 T _endbbent            libzot         getbbent
-00000000 T _getbbtime           libzot         getbbent
-00000000 T _getbbent            libzot         getbbent
-00000000 T _getbbnam            libzot         getbbent
-00000000 T _getbbaka            libzot         getbbent
-00000000 T _ldrbb               libzot         getbbent
-00000000 T _ldrchk              libzot         getbbent
-00000000 T _getbbcpy            libzot         getbbent
-00000000 T _getbbdist           libzot         getbbent
-00000000 T _getbberr            libzot         getbbent
-00000000 T _make_lower          libzot         getbbent
-00000000 T _dparsetime          libzot         dtimep
-00000000 T _lex_string          libzot         lexstring
-00000000 T _dtimenow            libzot         dtime
-00000000 T _dctime              libzot         dtime
-00000000 T _dtwstime            libzot         dtime
-00000000 T _dlocaltime          libzot         dtime
-00000000 T _dgmtime             libzot         dtime
-00000000 T _dasctime            libzot         dtime
-00000000 T _dtimezone           libzot         dtime
-00000000 T _twscopy             libzot         dtime
-00000000 T _twsort              libzot         dtime
-00000000 T _twclock             libzot         dtime
-00000000 T _set_dotw            libzot         dtime
-00000000 T _isfrom              libzot         mf
-00000000 T _lequal              libzot         mf
-00000000 T _seekadrx            libzot         mf
-00000000 T _uucpadrx            libzot         mf
-00000000 T _getadrx             libzot         mf
-00000000 T _legal_person        libzot         mf
-00000000 T _mfgets              libzot         mf
diff --git a/docs/historical/mh-6.8.5/local/linux/jump/jump.ignore 
b/docs/historical/mh-6.8.5/local/linux/jump/jump.ignore
deleted file mode 100644
index 807cce1..0000000
--- a/docs/historical/mh-6.8.5/local/linux/jump/jump.ignore
+++ /dev/null
@@ -1 +0,0 @@
-00000000 T _main                libzot         date
diff --git a/docs/historical/mh-6.8.5/local/linux/jump/jump.import 
b/docs/historical/mh-6.8.5/local/linux/jump/jump.import
deleted file mode 100644
index 51b1fd8..0000000
--- a/docs/historical/mh-6.8.5/local/linux/jump/jump.import
+++ /dev/null
@@ -1,164 +0,0 @@
-/usr/lib/libc.sa(__libc.o):00001000 a __GOT_SIZE
-/usr/lib/libc.sa(__libc.o):6008f0b0 A _AL
-/usr/lib/libc.sa(__libc.o):6008f198 A _AL_PARM
-/usr/lib/libc.sa(__libc.o):6008f060 A _AM
-/usr/lib/libc.sa(__libc.o):6008f0b4 A _BC
-/usr/lib/libc.sa(__libc.o):6008f064 A _BS
-/usr/lib/libc.sa(__libc.o):6008f0bc A _BT
-/usr/lib/libc.sa(__libc.o):6008f068 A _CA
-/usr/lib/libc.sa(__libc.o):6008f0c0 A _CD
-/usr/lib/libc.sa(__libc.o):6008f0c4 A _CE
-/usr/lib/libc.sa(__libc.o):6008f0c8 A _CL
-/usr/lib/libc.sa(__libc.o):6008f0cc A _CM
-/usr/lib/libc.sa(__libc.o):6008f048 A _COLS
-/usr/lib/libc.sa(__libc.o):6008f0d0 A _CR
-/usr/lib/libc.sa(__libc.o):6008f0d4 A _CS
-/usr/lib/libc.sa(__libc.o):6008f06c A _DA
-/usr/lib/libc.sa(__libc.o):6008f070 A _DB
-/usr/lib/libc.sa(__libc.o):6008f0d8 A _DC
-/usr/lib/libc.sa(__libc.o):6008f0dc A _DL
-/usr/lib/libc.sa(__libc.o):6008f19c A _DL_PARM
-/usr/lib/libc.sa(__libc.o):6008f0e0 A _DM
-/usr/lib/libc.sa(__libc.o):6008f0e4 A _DO
-/usr/lib/libc.sa(__libc.o):6008f1a4 A _DOWN_PARM
-/usr/lib/libc.sa(__libc.o):6008f03c A _Def_term
-/usr/lib/libc.sa(__libc.o):6008f0e8 A _ED
-/usr/lib/libc.sa(__libc.o):6008f0ec A _EI
-/usr/lib/libc.sa(__libc.o):6008f074 A _EO
-/usr/lib/libc.sa(__libc.o):6008f1b8 A _GT
-/usr/lib/libc.sa(__libc.o):6008f078 A _HC
-/usr/lib/libc.sa(__libc.o):6008f118 A _HO
-/usr/lib/libc.sa(__libc.o):6008f07c A _HZ
-/usr/lib/libc.sa(__libc.o):6008f11c A _IC
-/usr/lib/libc.sa(__libc.o):6008f120 A _IM
-/usr/lib/libc.sa(__libc.o):6008f080 A _IN
-/usr/lib/libc.sa(__libc.o):6008f124 A _IP
-/usr/lib/libc.sa(__libc.o):6008f0f0 A _K0
-/usr/lib/libc.sa(__libc.o):6008f0f4 A _K1
-/usr/lib/libc.sa(__libc.o):6008f0f8 A _K2
-/usr/lib/libc.sa(__libc.o):6008f0fc A _K3
-/usr/lib/libc.sa(__libc.o):6008f100 A _K4
-/usr/lib/libc.sa(__libc.o):6008f104 A _K5
-/usr/lib/libc.sa(__libc.o):6008f108 A _K6
-/usr/lib/libc.sa(__libc.o):6008f10c A _K7
-/usr/lib/libc.sa(__libc.o):6008f110 A _K8
-/usr/lib/libc.sa(__libc.o):6008f114 A _K9
-/usr/lib/libc.sa(__libc.o):6008f128 A _KD
-/usr/lib/libc.sa(__libc.o):6008f12c A _KE
-/usr/lib/libc.sa(__libc.o):6008f130 A _KH
-/usr/lib/libc.sa(__libc.o):6008f134 A _KL
-/usr/lib/libc.sa(__libc.o):6008f138 A _KR
-/usr/lib/libc.sa(__libc.o):6008f13c A _KS
-/usr/lib/libc.sa(__libc.o):6008f140 A _KU
-/usr/lib/libc.sa(__libc.o):6008f1a8 A _LEFT_PARM
-/usr/lib/libc.sa(__libc.o):6008f044 A _LINES
-/usr/lib/libc.sa(__libc.o):6008f144 A _LL
-/usr/lib/libc.sa(__libc.o):6008f148 A _MA
-/usr/lib/libc.sa(__libc.o):6008f300 A _MCAppPath
-/usr/lib/libc.sa(__libc.o):6008f084 A _MI
-/usr/lib/libc.sa(__libc.o):6008f088 A _MS
-/usr/lib/libc.sa(__libc.o):6008f030 A _My_term
-/usr/lib/libc.sa(__libc.o):6008f08c A _NC
-/usr/lib/libc.sa(__libc.o):6008f14c A _ND
-/usr/lib/libc.sa(__libc.o):6008f150 A _NL
-/usr/lib/libc.sa(__libc.o):6008f1bc A _NONL
-/usr/lib/libc.sa(__libc.o):6008f090 A _NS
-/usr/lib/libc.sa(__libc.o):6008f094 A _OS
-/usr/lib/libc.sa(__libc.o):6008f1b0 A _PC
-/usr/lib/libc.sa(__libc.o):6008f154 A _RC
-/usr/lib/libc.sa(__libc.o):6008f1ac A _RIGHT_PARM
-/usr/lib/libc.sa(__libc.o):6008f158 A _SC
-/usr/lib/libc.sa(__libc.o):6008f15c A _SE
-/usr/lib/libc.sa(__libc.o):6008f160 A _SF
-/usr/lib/libc.sa(__libc.o):6008f164 A _SO
-/usr/lib/libc.sa(__libc.o):6008f168 A _SR
-/usr/lib/libc.sa(__libc.o):6008f16c A _TA
-/usr/lib/libc.sa(__libc.o):6008f170 A _TE
-/usr/lib/libc.sa(__libc.o):6008f174 A _TI
-/usr/lib/libc.sa(__libc.o):6008f178 A _UC
-/usr/lib/libc.sa(__libc.o):6008f17c A _UE
-/usr/lib/libc.sa(__libc.o):6008f098 A _UL
-/usr/lib/libc.sa(__libc.o):6008f180 A _UP
-/usr/lib/libc.sa(__libc.o):6008f1c0 A _UPPERCASE
-/usr/lib/libc.sa(__libc.o):6008f1a0 A _UP_PARM
-/usr/lib/libc.sa(__libc.o):6008f188 A _US
-/usr/lib/libc.sa(__libc.o):6008f18c A _VB
-/usr/lib/libc.sa(__libc.o):6008f194 A _VE
-/usr/lib/libc.sa(__libc.o):6008f190 A _VS
-/usr/lib/libc.sa(__libc.o):6008f09c A _XB
-/usr/lib/libc.sa(__libc.o):6008f0a0 A _XN
-/usr/lib/libc.sa(__libc.o):6008f0a8 A _XS
-/usr/lib/libc.sa(__libc.o):6008f0a4 A _XT
-/usr/lib/libc.sa(__libc.o):6008f0ac A _XX
-/usr/lib/libc.sa(__libc.o):6008f2a4 A __IO_file_jumps
-/usr/lib/libc.sa(__libc.o):6008f1f4 A __IO_list_all
-/usr/lib/libc.sa(__libc.o):6008f2a8 A __IO_proc_jumps
-/usr/lib/libc.sa(__libc.o):6008f1ec A __IO_stderr_
-/usr/lib/libc.sa(__libc.o):6008f1e4 A __IO_stdin_
-/usr/lib/libc.sa(__libc.o):6008f1e8 A __IO_stdout_
-/usr/lib/libc.sa(__libc.o):6008f2ac A __IO_str_jumps
-/usr/lib/libc.sa(__libc.o):6008f214 A ____brk_addr
-/usr/lib/libc.sa(__libc.o):6008f01c A ___ctype_b
-/usr/lib/libc.sa(__libc.o):6008f020 A ___ctype_tolower
-/usr/lib/libc.sa(__libc.o):6008f024 A ___ctype_toupper
-/usr/lib/libc.sa(__libc.o):6008f1fc A ___environ
-/usr/lib/libc.sa(__libc.o):6008f250 A ___exit_funcs
-/usr/lib/libc.sa(__libc.o):6008f2f0 A ___glob_closedir_hook
-/usr/lib/libc.sa(__libc.o):6008f2f4 A ___glob_opendir_hook
-/usr/lib/libc.sa(__libc.o):6008f2f8 A ___glob_readdir_hook
-/usr/lib/libc.sa(__libc.o):6008f278 A ___ttyname
-/usr/lib/libc.sa(__libc.o):6008f238 A __collate_info
-/usr/lib/libc.sa(__libc.o):6008f23c A __ctype_info
-/usr/lib/libc.sa(__libc.o):6008f028 A __echoit
-/usr/lib/libc.sa(__libc.o):6008f034 A __endwin
-/usr/lib/libc.sa(__libc.o):6008f288 A __gdbm_fetch_val
-/usr/lib/libc.sa(__libc.o):6008f280 A __gdbm_file
-/usr/lib/libc.sa(__libc.o):6008f284 A __gdbm_memory
-/usr/lib/libc.sa(__libc.o):6008f240 A __monetary_info
-/usr/lib/libc.sa(__libc.o):6008f234 A __null_auth
-/usr/lib/libc.sa(__libc.o):6008f244 A __numeric_info
-/usr/lib/libc.sa(__libc.o):6008f2ec A __obstack
-/usr/lib/libc.sa(__libc.o):6008f1c8 A __pfast
-/usr/lib/libc.sa(__libc.o):6008f02c A __rawmode
-/usr/lib/libc.sa(__libc.o):6008f1dc A __res
-/usr/lib/libc.sa(__libc.o):6008f04c A __res_iflg
-/usr/lib/libc.sa(__libc.o):6008f050 A __res_lflg
-/usr/lib/libc.sa(__libc.o):6008f270 A __res_opcodes
-/usr/lib/libc.sa(__libc.o):6008f274 A __res_resultcodes
-/usr/lib/libc.sa(__libc.o):6008f248 A __response_info
-/usr/lib/libc.sa(__libc.o):6008f2fc A __sigintr
-/usr/lib/libc.sa(__libc.o):6008f00c A __sys_errlist
-/usr/lib/libc.sa(__libc.o):6008f010 A __sys_nerr
-/usr/lib/libc.sa(__libc.o):6008f014 A __sys_siglist
-/usr/lib/libc.sa(__libc.o):6008f24c A __time_info
-/usr/lib/libc.sa(__libc.o):6008f05c A __tty
-/usr/lib/libc.sa(__libc.o):6008f040 A __tty_ch
-/usr/lib/libc.sa(__libc.o):6008f1cc A __unctrl
-/usr/lib/libc.sa(__libc.o):6008f27c A __win
-/usr/lib/libc.sa(__libc.o):6008f058 A _curscr
-/usr/lib/libc.sa(__libc.o):6008f228 A _daylight
-/usr/lib/libc.sa(__libc.o):6008f200 A _errno
-/usr/lib/libc.sa(__libc.o):6008f1d0 A _gdbm_errno
-/usr/lib/libc.sa(__libc.o):6008f28c A _gdbm_version
-/usr/lib/libc.sa(__libc.o):6008f008 A _h_errlist
-/usr/lib/libc.sa(__libc.o):6008f1d8 A _h_errno
-/usr/lib/libc.sa(__libc.o):6008f2a0 A _h_nerr
-/usr/lib/libc.sa(__libc.o):6008f1c4 A _normtty
-/usr/lib/libc.sa(__libc.o):6008f204 A _optarg
-/usr/lib/libc.sa(__libc.o):6008f20c A _opterr
-/usr/lib/libc.sa(__libc.o):6008f208 A _optind
-/usr/lib/libc.sa(__libc.o):6008f2e4 A _optopt
-/usr/lib/libc.sa(__libc.o):6008f218 A _ospeed
-/usr/lib/libc.sa(__libc.o):6008f26c A _re_max_failures
-/usr/lib/libc.sa(__libc.o):6008f210 A _re_syntax_options
-/usr/lib/libc.sa(__libc.o):6008f1e0 A _rexecoptions
-/usr/lib/libc.sa(__libc.o):6008f230 A _rpc_createerr
-/usr/lib/libc.sa(__libc.o):6008f25c A _stderr
-/usr/lib/libc.sa(__libc.o):6008f254 A _stdin
-/usr/lib/libc.sa(__libc.o):6008f258 A _stdout
-/usr/lib/libc.sa(__libc.o):6008f054 A _stdscr
-/usr/lib/libc.sa(__libc.o):6008f2e8 A _svc_fdset
-/usr/lib/libc.sa(__libc.o):6008f224 A _timezone
-/usr/lib/libc.sa(__libc.o):6008f21c A _tputs_baud_rate
-/usr/lib/libc.sa(__libc.o):6008f038 A _ttytype
-/usr/lib/libc.sa(__libc.o):6008f220 A _tzname
diff --git a/docs/historical/mh-6.8.5/local/linux/jump/jump.params 
b/docs/historical/mh-6.8.5/local/linux/jump/jump.params
deleted file mode 100644
index 062985d..0000000
--- a/docs/historical/mh-6.8.5/local/linux/jump/jump.params
+++ /dev/null
@@ -1,6 +0,0 @@
-Name=/lib/libmh
-Text=0x63f00000
-Data=0x00000000
-Jump=0x00001000
-GOT=0x00001000
-Version=3.0
diff --git a/docs/historical/mh-6.8.5/local/linux/jump/jump.undefs 
b/docs/historical/mh-6.8.5/local/linux/jump/jump.undefs
deleted file mode 100644
index 89a7e0b..0000000
--- a/docs/historical/mh-6.8.5/local/linux/jump/jump.undefs
+++ /dev/null
@@ -1 +0,0 @@
-63f1f1f8 D __NEEDS_SHRLIB_libc_4
diff --git a/docs/historical/mh-6.8.5/local/linux/jump/jump.vars 
b/docs/historical/mh-6.8.5/local/linux/jump/jump.vars
deleted file mode 100644
index 6a5812a..0000000
--- a/docs/historical/mh-6.8.5/local/linux/jump/jump.vars
+++ /dev/null
@@ -1,95 +0,0 @@
-00000078 D _options             libconfig      config
-00000018 D _anoyes              libconfig      config
-00000004 D _components          libconfig      config
-00000004 D _current             libconfig      config
-00000004 D _defalt              libconfig      config
-00000004 D _digestcomps         libconfig      config
-00000004 D _distcomps           libconfig      config
-00000004 D _draft               libconfig      config
-00000004 D _forwcomps           libconfig      config
-00000004 D _inbox               libconfig      config
-00000004 D _mh_defaults         libconfig      config
-00000004 D _mh_profile          libconfig      config
-00000004 D _mhlformat           libconfig      config
-00000004 D _mhlforward          libconfig      config
-00000004 D _nsequence           libconfig      config
-00000004 D _pfolder             libconfig      config
-00000004 D _psequence           libconfig      config
-00000004 D _rcvdistcomps        libconfig      config
-00000004 D _replcomps           libconfig      config
-00000004 D _usequence           libconfig      config
-00000004 D _mhlibdir            libconfig      config
-00000004 D _context             libconfig      config
-00000004 D _mh_seq              libconfig      config
-00000004 D _faceproc            libconfig      config
-00000004 D _fileproc            libconfig      config
-00000004 D _incproc             libconfig      config
-00000004 D _installproc         libconfig      config
-00000004 D _lproc               libconfig      config
-00000004 D _mailproc            libconfig      config
-00000004 D _moreproc            libconfig      config
-00000004 D _mhlproc             libconfig      config
-00000004 D _mshproc             libconfig      config
-00000004 D _packproc            libconfig      config
-00000004 D _postproc            libconfig      config
-00000004 D _rmfproc             libconfig      config
-00000004 D _rmmproc             libconfig      config
-00000004 D _sendproc            libconfig      config
-00000004 D _showproc            libconfig      config
-00000004 D _slocalproc          libconfig      config
-00000004 D _vmhproc             libconfig      config
-00000004 D _whatnowproc         libconfig      config
-00000004 D _whomproc            libconfig      config
-00000004 D _sysed               libconfig      config
-00000004 D _AliasFile           libconfig      config
-00000004 D _foldprot            libconfig      config
-00000004 D _msgprot             libconfig      config
-00000004 C _ctxflags            libconfig      config
-00000004 C _invo_name           libconfig      config
-00000004 C _mypath              libconfig      config
-00000004 C _defpath             libconfig      config
-00000004 C _ctxpath             libconfig      config
-00000004 C _m_defs              libconfig      config
-00000004 D _version             libconfig      version
-00000200 C _wantcomp            libmh          fmtcompile
-0000002c C _fmt_mnull           libmh          formatsbr
-00000004 D _fd_def              libmh          m_getdefs
-00000004 D _fd_ctx              libmh          m_getdefs
-00000004 D _fmt_norm            libmh          formatdef
-00000004 D _msg_count           libmh          m_msgdef
-00000004 D _msg_style           libmh          m_msgdef
-00000004 D _msg_delim           libmh          m_msgdef
-00000408 C _sm_reply            libmts         smail
-0000002c C _EHLOkeys            libmts         smail
-00000004 D _mmdfldir            libzot         mts
-00000004 D _mmdflfil            libzot         mts
-00000004 D _uucpldir            libzot         mts
-00000004 D _uucplfil            libzot         mts
-00000004 D _mmdlm1              libzot         mts
-00000004 D _mmdlm2              libzot         mts
-00000004 D _umincproc           libzot         mts
-00000004 D _lockstyle           libzot         mts
-00000004 D _lockldir            libzot         mts
-00000004 D _hostable            libzot         mts
-00000004 D _sendmail            libzot         mts
-00000004 D _clientname          libzot         mts
-00000004 D _servers             libzot         mts
-00000004 D _pophost             libzot         mts
-00000004 D _bb_domain           libzot         mts
-00000004 D __DUMMY__            libzot         mts
-00000004 D __DUMMY__            libzot         mts
-00000004 D __DUMMY__            libzot         mts
-00000004 D _maildelivery        libzot         mts
-00000004 D _Everyone            libzot         mts
-00000004 D _NoShell             libzot         mts
-00000004 D _europeandate        libzot         dtimep
-00000360 D _yyvstop             libzot         dtimep
-00002488 D _yycrank             libzot         dtimep
-000013b0 D _yysvec              libzot         dtimep
-00000004 D _yytop               libzot         dtimep
-00000004 D _yybgin              libzot         dtimep
-00000104 D _yymatch             libzot         dtimep
-00000034 D _yyextra             libzot         dtimep
-00000034 D _tw_moty             libzot         dtime
-00000020 D _tw_dotw             libzot         dtime
-00000020 D _tw_ldotw            libzot         dtime
diff --git a/docs/historical/mh-6.8.5/local/linux/linux-conf.MH 
b/docs/historical/mh-6.8.5/local/linux/linux-conf.MH
deleted file mode 100644
index e824fba..0000000
--- a/docs/historical/mh-6.8.5/local/linux/linux-conf.MH
+++ /dev/null
@@ -1,30 +0,0 @@
-# @(#)$Id: MH,v 1.7 90/04/06 09:44:31 sources Exp $
-# Linux i386
-bin    /usr/bin/mh
-bboards        off
-etc    /usr/lib/mh
-mail   /usr/spool/mail
-mandir /usr/man
-manuals        standard
-chown  /bin/chown
-cc     cc
-ccoptions      -traditional -D_NFILE='getdtablesize()' -DSIGEMT=SIGUSR1 -O2
-ldoptions      
-ldoptlibs      -ldbm
-lex    flex
-ranlib on
-mts    sendmail/smtp
-bbdelivery     off
-bbhome /usr/spool/bboards
-pop    on
-popdir /usr/sbin
-signal void
-sprintf        int
-mailgroup      mail
-# MH has never worked properly with terminfo, to my knowledge.  It looks
-# like vmh still tries to play the internals game, which is bound to fail.
-curses -lcurses -ltermcap
-# This is POSIX.  Building Linux software for BSD is almost always a mistake.
-options        SYS5 MORE='"/usr/bin/more"' RENAME SYS5DIR UNISTD SVR4 MIME
-options        VSPRINTF MHE OVERHEAD RPATHS DUMB ATHENA BIND SOCKETS NTOHLSWAP
-options DPOP POP2 RPOP MHRC
\ No newline at end of file
diff --git a/docs/historical/mh-6.8.5/local/linux/linux-conf.config.mtstailor 
b/docs/historical/mh-6.8.5/local/linux/linux-conf.config.mtstailor
deleted file mode 100644
index c5dd52a..0000000
--- a/docs/historical/mh-6.8.5/local/linux/linux-conf.config.mtstailor
+++ /dev/null
@@ -1,12 +0,0 @@
-mmdfldir:      @(MHDROPATH)
-mmdflfil:      @(MHDROPFIL)
-uucpldir:      /usr/spool/mail
-uucplfil:      
-mmdelim1:      \001\001\001\001\n
-mmdelim2:      \001\001\001\001\n
-mmailid:       0
-umincproc:
-lockldir:
-
-hostable:      @(MHETCPATH)/hosts
-sendmail:      /usr/lib/sendmail
diff --git a/docs/historical/mh-6.8.5/local/linux/linux-dtimep.c-lexed 
b/docs/historical/mh-6.8.5/local/linux/linux-dtimep.c-lexed
deleted file mode 100644
index e3fddcf..0000000
--- a/docs/historical/mh-6.8.5/local/linux/linux-dtimep.c-lexed
+++ /dev/null
@@ -1,1672 +0,0 @@
-# include <stdio.h>
-static int start_cond = 0;
-#define BEGIN start_cond =
-struct yysvf { 
-       struct yywork *yystoff;
-       struct yysvf *yyother;
-       int *yystops;};
-# define Z 2
-#ifndef        lint
-static char ident[] = "@(#)$Id: dtimep.lex,v 2.15 1993/02/26 22:07:40 jromine 
Exp $";
-#endif
-#include "tws.h"
-#include "../h/strings.h"
-#include <ctype.h>
-#include <sys/types.h>
-#if !defined(SYS5) && !defined(ZONEINFO)
-#include <sys/timeb.h>
-#endif /* !defined(SYS5) && !defined(ZONEINFO) */
-
-#ifdef SYS5
-extern int  daylight;
-extern long timezone;
-extern char *tzname[];
-#endif /* SYS5 */
-
-
-# line 54 "dtimep.lex"
-/*
- * Patchable flag that says how to interpret NN/NN/NN dates. When
- * true, we do it European style: DD/MM/YY. When false, we do it
- * American style: MM/DD/YY.  Of course, these are all non-RFC822
- * compliant.
- */
-int europeandate = 0;
-
-
-# line 62 "dtimep.lex"
-/*
- * Table to convert month names to numeric month.  We use the
- * fact that the low order 5 bits of the sum of the 2nd & 3rd
- * characters of the name is a hash with no collisions for the 12
- * valid month names.  (The mask to 5 bits maps any combination of
- * upper and lower case into the same hash value).
- */
-static int month_map[] = {
-       0,
-       6,      /* 1 - Jul */
-       3,      /* 2 - Apr */
-       5,      /* 3 - Jun */
-       0,
-       10,     /* 5 - Nov */
-       0,
-       1,      /* 7 - Feb */
-       11,     /* 8 - Dec */
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,      /*15 - Jan */
-       0,
-       0,
-       0,
-       2,      /*19 - Mar */
-       0,
-       8,      /*21 - Sep */
-       0,
-       9,      /*23 - Oct */
-       0,
-       0,
-       4,      /*26 - May */
-       0,
-       7       /*28 - Aug */
-};
-
-# line 100 "dtimep.lex"
-/*
- * Same trick for day-of-week using the hash function
- *  (c1 & 7) + (c2 & 4)
- */
-static int day_map[] = {
-       0,
-       0,
-       0,
-       6,      /* 3 - Sat */
-       4,      /* 4 - Thu */
-       0,
-       5,      /* 6 - Fri */
-       0,      /* 7 - Sun */
-       2,      /* 8 - Tue */
-       1       /* 9 - Mon */,
-       0,
-       3       /*11 - Wed */
-};
-#define SETDAY { tw.tw_wday= day_map[(cp[0] & 7) + (cp[1] & 4)];\
-               tw.tw_flags &= ~TW_SDAY; tw.tw_flags |= TW_SEXP;\
-               cp += 2; }
-#define SETMONTH { tw.tw_mon = month_map[(cp[0] + cp[1]) & 0x1f]; gotdate++;\
-                cp += 2;\
-                SKIPD;}
-#define        CVT1OR2 (i=(*cp++ - '0'), isdigit(*cp)? i*10 + (*cp++ - '0') : 
i)
-#define        CVT2      ((cp[0] - '0')*10 + (cp[1] - '0'))
-#define        CVT4    ((((cp[0] - '0')*10 + (cp[1] - '0'))*10 + \
-                                     (cp[2] - '0'))*10 + (cp[3] - '0'))
-#define SKIPD  { while ( !isdigit(*cp++) ) ;  --cp; }
-#define EXPZONE        { tw.tw_flags &= ~TW_SZONE; tw.tw_flags |= TW_SZEXP; }
-#define ZONE(x)        { tw.tw_zone=(x); EXPZONE; }
-#define ZONED(x) { ZONE(x); tw.tw_flags |= TW_DST; }
-#define        LC(c)   (isupper (c) ? tolower (c) : (c))
-
-#ifdef DSTXXX
-#ifdef _AIX
-#include <sys/time.h>
-#include <time.h>
-#else
-#ifndef        BSD42
-#include <time.h>
-#else  /* BSD42 */
-#include <sys/time.h>
-#endif /* BSD42 */
-#endif
-
-static zonehack (tw)
-register struct tws *tw;
-{
-    register struct tm *tm;
-
-    if (twclock (tw) == -1L)
-       return;
-
-    tm = localtime (&tw -> tw_clock);
-    if (tm -> tm_isdst) {
-       tw -> tw_flags |= TW_DST;
-       tw -> tw_zone -= 60;
-    }
-}
-#endif /* DSTXXX */
-struct tws *dparsetime (str)
-       char *str;
-{
-       register int i;
-       static struct tws tw;
-       register char *cp;
-       register int gotdate = 0;
-#ifndef SYS5
-#ifdef ZONEINFO
-       struct tm      *tm;
-       time_t          clock;
-#else
-       struct timeb    tb;
-#endif /* ZONEINFO */
-#endif /* not SYS5 */
-       long tclock;
-
-       start_cond = 0;
-
-       /* Zero out the struct. */
-       bzero( (char *) &tw, sizeof tw);
-
-       /* Set default time zone. */
-#ifdef SYS5
-       tzset( );
-       tw.tw_zone = -(timezone / 60);
-#else
-#ifdef ZONEINFO
-       time (&clock);
-       tm = localtime(&clock);
-       tw.tw_zone = tm->tm_gmtoff / 60;
-       if (tm -> tm_isdst)                     /* if DST is in effect */
-               tw.tw_zone -= 60;               /* reset to normal offset */
-#else
-       ftime( &tb );
-       tw.tw_zone = -tb.timezone;
-#endif /* ZONEINFO */
-#endif /* SYS5 */
-
-       while (isspace(*str))
-               str++;
-       while ( 1 )
-               switch (cp = str, *cp ? lex_string( &str, start_cond) : 0) {
-
-               case -1:
-                       if (!gotdate || tw.tw_year == 0)
-                               return (struct tws *)0;
-                       /* fall through */
-               case 0:
-                       if ( tw.tw_year == 0 ) {
-                               /* Set default year. */
-                               time (&tclock);
-                               tw.tw_year = localtime(&tclock)->tm_year + 1900;
-                       }
-                       else if (tw.tw_year < 100) {
-                               /* assume no 2-digit years > 1999 */
-                               tw.tw_year += 1900;
-                       }
-                       return &tw;
-
-case 1:
-
-# line 224 "dtimep.lex"
-                       SETDAY;
-break;
-case 2:
-
-# line 225 "dtimep.lex"
-               {
-                                       cp++;
-                                       SETDAY;
-                                       }
-break;
-case 3:
-
-# line 229 "dtimep.lex"
-{
-                                       if (europeandate) {
-                                               /* European: DD/MM/YY */
-                                               tw.tw_mday = CVT1OR2;
-                                               cp++;
-                                               tw.tw_mon  = CVT1OR2 - 1;
-                                       } else {
-                                               /* American: MM/DD/YY */
-                                               tw.tw_mon  = CVT1OR2 - 1;
-                                               cp++;
-                                               tw.tw_mday = CVT1OR2;
-                                       }
-                                       cp++;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i;
-                                       gotdate++;      /* XXX */
-                                       }
-break;
-case 4:
-
-# line 247 "dtimep.lex"
-               {
-                                       if (europeandate) {
-                                               tw.tw_mday = CVT1OR2; cp++;
-                                               tw.tw_mon  = CVT1OR2 - 1;
-                                       } else {
-                                               tw.tw_mon = CVT1OR2 - 1; cp++;
-                                               tw.tw_mday  = CVT1OR2;
-                                       }
-                                       gotdate++;
-                                       }
-break;
-case 5:
-
-# line 257 "dtimep.lex"
-{
-                                       tw.tw_mday = CVT1OR2;
-                                       while ( !isalpha(*cp++) )
-                                               ;
-                                       SETMONTH;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i;
-                                       }
-break;
-case 6:
-
-# line 266 "dtimep.lex"
-              {
-                                        tw.tw_mday = CVT1OR2;
-                                        while ( ! isalpha( *cp++ ) )
-                                                ;
-                                        SETMONTH;
-                                        }
-break;
-case 7:
-
-# line 272 "dtimep.lex"
-{
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT1OR2;
-                                       SKIPD;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i;
-                                       }
-break;
-case 8:
-
-# line 281 "dtimep.lex"
-               {
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT1OR2;
-                                       }
-break;
-case 9:
-
-# line 287 "dtimep.lex"
-       {       /* hack: ctime w/o TZ */
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       SKIPD;
-                                       tw.tw_year = CVT4; cp+=4;
-                                       }
-break;
-case 10:
-
-# line 294 "dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 11:
-
-# line 300 "dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       tw.tw_min = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 12:
-
-# line 305 "dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour == 12)
-                                               tw.tw_hour = 0;
-                                       tw.tw_min  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 13:
-
-# line 312 "dtimep.lex"
-               {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour == 12)
-                                               tw.tw_hour = 0;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 14:
-
-# line 320 "dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour != 12)
-                                               tw.tw_hour += 12;
-                                       tw.tw_min  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 15:
-
-# line 327 "dtimep.lex"
-               {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour != 12)
-                                               tw.tw_hour += 12;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 16:
-
-# line 335 "dtimep.lex"
-               {
-                                       tw.tw_hour = CVT2; cp+=2;
-                                       tw.tw_min  = CVT2; cp+=2;
-                                       tw.tw_sec  = CVT2; cp+=2;
-                                       BEGIN Z;
-                                       }
-break;
-case 17:
-
-# line 341 "dtimep.lex"
-                       {
-                                       /*
-                                        * Luckly, 4 digit times in the range
-                                        * 1960-1999 aren't legal as hour
-                                        * and minutes.
-                                        */
-                                       tw.tw_year = CVT4; cp+=4;
-                                       }
-break;
-case 18:
-
-# line 349 "dtimep.lex"
-               {
-                                       if (tw.tw_hour || tw.tw_min 
-                                                           || tw.tw_sec) {
-                                           tw.tw_year = CVT4; cp+=4;
-                                           tw.tw_zone = 0;
-                                       } else {
-                                           tw.tw_hour = CVT2; cp+=2;
-                                           tw.tw_min  = CVT2; cp+=2;
-                                           BEGIN Z;
-                                       }
-                                       }
-break;
-case 19:
-
-# line 360 "dtimep.lex"
-                       ZONE(0 * 60);
-break;
-case 20:
-
-# line 361 "dtimep.lex"
-                       ZONE(0 * 60);
-break;
-case 21:
-
-# line 362 "dtimep.lex"
-                       ZONE(2 * 60);
-break;
-case 22:
-
-# line 363 "dtimep.lex"
-                       ZONED(2 * 60);
-break;
-case 23:
-
-# line 364 "dtimep.lex"
-                       ZONE(-5 * 60);
-break;
-case 24:
-
-# line 365 "dtimep.lex"
-                       ZONED(-5 * 60);
-break;
-case 25:
-
-# line 366 "dtimep.lex"
-                       ZONE(-6 * 60);
-break;
-case 26:
-
-# line 367 "dtimep.lex"
-                       ZONED(-6 * 60);
-break;
-case 27:
-
-# line 368 "dtimep.lex"
-                       ZONE(-7 * 60);
-break;
-case 28:
-
-# line 369 "dtimep.lex"
-                       ZONED(-7 * 60);
-break;
-case 29:
-
-# line 370 "dtimep.lex"
-                       ZONE(-8 * 60);
-break;
-case 30:
-
-# line 371 "dtimep.lex"
-                       ZONED(-8 * 60);
-break;
-case 31:
-
-# line 372 "dtimep.lex"
-                       ZONE(-(3 * 60 + 30));
-break;
-case 32:
-
-# line 373 "dtimep.lex"
-                       ZONE(-4 * 60);
-break;
-case 33:
-
-# line 374 "dtimep.lex"
-                       ZONED(-4 * 60);
-break;
-case 34:
-
-# line 375 "dtimep.lex"
-                       ZONE(-9 * 60);
-break;
-case 35:
-
-# line 376 "dtimep.lex"
-                       ZONED(-9 * 60);
-break;
-case 36:
-
-# line 377 "dtimep.lex"
-                       ZONE(-10 * 60);
-break;
-case 37:
-
-# line 378 "dtimep.lex"
-                       ZONED(-10 * 60);
-break;
-case 38:
-
-# line 379 "dtimep.lex"
-                       ZONED(-1 * 60);
-break;
-case 39:
-
-# line 380 "dtimep.lex"
-                       {
-                                       tw.tw_zone = 60 * (('a'-1) - LC(*cp));
-                                       EXPZONE; 
-                                       }
-break;
-case 40:
-
-# line 384 "dtimep.lex"
-                       {
-                                       tw.tw_zone = 60 * ('a' - LC(*cp));
-                                       EXPZONE; 
-                                       }
-break;
-case 41:
-
-# line 388 "dtimep.lex"
-                       {
-                                       tw.tw_zone = 60 * (LC(*cp) - 'm');
-                                       EXPZONE; 
-                                       }
-break;
-case 42:
-
-# line 392 "dtimep.lex"
-               {
-                                       cp++;
-                                       tw.tw_zone = ((cp[0] * 10 + cp[1])
-                                                    -('0' * 10   + '0'))*60
-                                                   +((cp[2] * 10 + cp[3])
-                                                    -('0' * 10   + '0'));
-                                       EXPZONE;
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif /* DSTXXX */
-                                       cp += 4;
-                                       }
-break;
-case 43:
-
-# line 404 "dtimep.lex"
-               {
-                                       cp++;
-                                       tw.tw_zone = (('0' * 10   + '0')
-                                                    -(cp[0] * 10 + cp[1]))*60
-                                                   +(('0' * 10   + '0')
-                                                    -(cp[2] * 10 + cp[3]));
-                                       EXPZONE;
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif /* DSTXXX */
-                                       cp += 4;
-                                       }
-break;
-case 44:
-
-# line 416 "dtimep.lex"
-               {
-                                       SKIPD;
-                                       tw.tw_year = CVT4; cp+=4;
-                                       }
-break;
-case 45:
-
-# line 420 "dtimep.lex"
-case 46:
-
-# line 421 "dtimep.lex"
-;
-break;
-       default: return(0);
-} }
-/* end of yylex */
-int yyvstop[] = {
-0,
-
-46,
-0,
-
-45,
-0,
-
-46,
-0,
-
-39,
-0,
-
-39,
-0,
-
-39,
-0,
-
-39,
-0,
-
-39,
-0,
-
-39,
-0,
-
-39,
-0,
-
-39,
-0,
-
-39,
-0,
-
-40,
-0,
-
-40,
-0,
-
-41,
-0,
-
-41,
-0,
-
-41,
-0,
-
-41,
-0,
-
-41,
-0,
-
-41,
-0,
-
-41,
-0,
-
-41,
-0,
-
-41,
-0,
-
-19,
-0,
-
-4,
-0,
-
-4,
-0,
-
-11,
-0,
-
-1,
-0,
-
-1,
-0,
-
-1,
-0,
-
-1,
-0,
-
-1,
-0,
-
-1,
-0,
-
-1,
-0,
-
-33,
-0,
-
-32,
-0,
-
-38,
-0,
-
-26,
-0,
-
-25,
-0,
-
-24,
-0,
-
-23,
-0,
-
-20,
-0,
-
-37,
-0,
-
-36,
-0,
-
-22,
-0,
-
-21,
-0,
-
-28,
-0,
-
-27,
-0,
-
-31,
-0,
-
-30,
-0,
-
-29,
-0,
-
-35,
-0,
-
-34,
-0,
-
-4,
-0,
-
-4,
-0,
-
-4,
-0,
-
-18,
-0,
-
-11,
-0,
-
-11,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-6,
-0,
-
-17,
-18,
-0,
-
-1,
-0,
-
-2,
-0,
-
-18,
-0,
-
-10,
-0,
-
-12,
-0,
-
-14,
-0,
-
-6,
-0,
-
-17,
-18,
-0,
-
-8,
-0,
-
-44,
-0,
-
-42,
-0,
-
-43,
-0,
-
-2,
-0,
-
-3,
-0,
-
-16,
-0,
-
-10,
-0,
-
-10,
-0,
-
-5,
-0,
-
-8,
-0,
-
-8,
-0,
-
-1,
-0,
-
-3,
-0,
-
-3,
-0,
-
-13,
-0,
-
-15,
-0,
-
-6,
-0,
-
-5,
-0,
-
-5,
-0,
-
-5,
-0,
-
-5,
-0,
-
-7,
-0,
-
-9,
-0,
-
-7,
-0,
-
-7,
-0,
-0};
-# define YYTYPE int
-struct yywork { YYTYPE verify, advance; } yycrank[] = {
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    1,5,    1,6,    
-5,5,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   1,5,    0,0,    5,5,    
-3,21,  3,6,    0,0,    0,0,    
-0,0,   1,7,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   1,8,    1,9,    1,8,    
-1,10,  1,10,   1,10,   1,10,   
-1,10,  1,10,   1,10,   3,21,   
-9,63,  22,83,  22,83,  0,0,    
-0,0,   0,0,    0,0,    3,7,    
-0,0,   0,0,    3,22,   0,0,    
-3,23,  0,0,    0,0,    3,8,    
-3,9,   3,8,    3,10,   3,10,   
-3,10,  3,10,   3,10,   3,10,   
-3,10,  10,64,  10,64,  10,64,  
-10,64, 10,64,  10,64,  10,64,  
-10,64, 10,64,  10,64,  0,0,    
-0,0,   0,0,    1,11,   15,72,  
-59,143,        1,12,   14,70,  1,13,   
-12,67, 13,68,  17,75,  1,14,   
-19,79, 20,81,  1,15,   1,16,   
-1,17,  15,73,  11,65,  16,74,  
-1,18,  1,19,   13,69,  11,66,  
-1,20,  19,80,  14,71,  25,99,  
-3,24,  3,25,   3,26,   3,27,   
-3,28,  3,29,   3,30,   3,31,   
-3,32,  3,33,   3,34,   3,34,   
-3,35,  3,36,   3,37,   3,38,   
-3,39,  3,39,   3,40,   3,41,   
-3,42,  3,39,   3,43,   3,39,   
-3,44,  7,45,   8,50,   18,76,  
-26,100,        28,102, 30,104, 18,77,  
-7,46,  24,97,  42,114, 45,117, 
-31,105,        21,21,  7,47,   7,48,   
-23,84, 23,84,  7,49,   26,101, 
-28,103,        24,65,  38,112, 18,78,  
-24,98, 8,50,   24,66,  31,106, 
-36,74, 46,118, 49,123, 56,139, 
-36,111,        57,140, 55,137, 60,144, 
-21,21, 38,113, 8,51,   55,138, 
-8,52,  8,53,   8,53,   8,53,   
-8,53,  8,53,   8,53,   8,53,   
-8,53,  8,53,   8,53,   8,54,   
-21,82, 21,82,  21,82,  21,82,  
-21,82, 21,82,  21,82,  21,82,  
-21,82, 21,82,  47,119, 61,145, 
-62,146,        23,85,  23,86,  23,87,  
-44,115,        23,88,  35,72,  23,89,  
-23,90, 35,109, 23,91,  50,50,  
-33,70, 23,92,  23,93,  33,107, 
-23,94, 58,141, 47,120, 44,116, 
-35,73, 23,95,  65,148, 48,121, 
-35,110,        23,96,  8,55,   51,124, 
-66,149,        8,56,   33,108, 8,57,   
-33,71, 67,150, 50,50,  8,58,   
-48,122,        58,142, 8,59,   8,60,   
-8,61,  68,151, 69,152, 70,153, 
-8,62,  73,158, 71,154, 50,124, 
-71,155,        74,159, 51,124, 52,134, 
-52,134,        52,134, 52,134, 52,134, 
-52,134,        52,134, 52,134, 52,134, 
-52,134,        75,160, 76,161, 77,162, 
-78,163,        79,164, 51,133, 51,133, 
-51,133,        51,133, 51,133, 51,133, 
-51,133,        51,133, 51,133, 51,133, 
-53,135,        53,135, 53,135, 53,135, 
-53,135,        53,135, 53,135, 53,135, 
-53,135,        53,135, 54,136, 54,136, 
-54,136,        54,136, 54,136, 54,136, 
-54,136,        54,136, 54,136, 54,136, 
-72,156,        80,165, 81,166, 50,125, 
-93,111,        85,97,  50,126, 72,157, 
-50,127,        97,170, 91,107, 92,109, 
-50,128,        64,50,  98,171, 50,129, 
-50,130,        50,131, 99,172, 51,55,  
-85,98, 50,132, 51,56,  100,173,        
-51,57, 91,108, 92,110, 101,174,        
-51,58, 102,175,        103,176,        51,59,  
-51,60, 51,61,  104,177,        105,178,        
-64,50, 51,62,  63,135, 63,135, 
-63,135,        63,135, 63,135, 63,135, 
-63,147,        63,147, 63,147, 63,147, 
-106,179,       64,51,  107,180,        64,52,  
-82,167,        82,167, 82,167, 82,167, 
-82,167,        82,167, 82,167, 82,167, 
-82,167,        82,167, 64,54,  83,168, 
-83,168,        83,168, 83,168, 83,168, 
-83,168,        83,168, 83,168, 83,168, 
-83,168,        84,169, 84,169, 84,169, 
-84,169,        84,169, 84,169, 84,169, 
-84,169,        84,169, 84,169, 108,181,        
-109,182,       110,183,        111,184,        112,185,        
-113,186,       115,187,        116,188,        117,189,        
-118,190,       119,191,        120,192,        121,193,        
-122,194,       123,195,        124,124,        126,198,        
-125,196,       64,55,  127,199,        128,200,        
-64,56, 125,197,        64,57,  129,202,        
-130,203,       131,204,        64,58,  132,205,        
-133,206,       64,59,  64,60,  64,61,  
-137,216,       138,217,        139,218,        64,62,  
-140,219,       124,124,        141,220,        128,201,        
-134,206,       135,210,        135,210,        135,210,        
-135,210,       135,210,        135,210,        135,210,        
-135,210,       135,210,        135,210,        133,206,        
-142,221,       143,223,        142,222,        144,225,        
-145,226,       146,227,        153,236,        155,157,        
-143,224,       158,238,        159,239,        134,206,        
-133,207,       160,240,        162,242,        133,208,        
-133,208,       133,208,        133,208,        133,208,        
-133,208,       133,208,        133,208,        133,208,        
-133,208,       148,229,        134,207,        134,209,        
-134,209,       134,209,        134,209,        134,209,        
-134,209,       134,209,        134,209,        134,209,        
-134,209,       136,211,        147,228,        147,228,        
-147,228,       147,228,        147,228,        147,228,        
-147,228,       147,228,        147,228,        147,228,        
-148,229,       149,229,        124,125,        150,229,        
-154,229,       124,126,        163,243,        124,127,        
-190,252,       192,254,        196,258,        124,128,        
-136,211,       191,250,        124,129,        124,130,        
-124,131,       151,229,        156,229,        152,234,        
-124,132,       157,229,        161,234,        164,234,        
-149,229,       165,234,        150,229,        154,229,        
-136,212,       136,212,        136,212,        136,212,        
-136,212,       136,212,        136,212,        136,212,        
-136,212,       136,212,        136,213,        166,234,        
-151,229,       156,229,        152,234,        194,250,        
-157,229,       161,234,        164,234,        189,250,        
-165,234,       195,250,        193,250,        197,259,        
-198,260,       199,261,        152,234,        200,262,        
-203,267,       161,234,        164,234,        201,263,        
-165,234,       201,264,        166,234,        167,247,        
-167,247,       167,247,        167,247,        167,247,        
-167,247,       167,247,        167,247,        167,247,        
-167,247,       148,230,        166,234,        204,268,        
-205,269,       136,214,        168,248,        168,248,        
-168,248,       168,248,        168,248,        168,248,        
-168,248,       168,248,        168,248,        168,248,        
-206,206,       191,253,        208,207,        209,207,        
-136,215,       212,213,        214,274,        150,232,        
-169,249,       169,249,        169,249,        169,249,        
-169,249,       169,249,        169,249,        169,249,        
-169,249,       169,249,        189,251,        202,265,        
-156,237,       149,231,        152,235,        206,206,        
-210,271,       211,211,        202,266,        215,275,        
-154,157,       194,256,        195,257,        220,283,        
-222,224,       225,285,        151,233,        193,255,        
-226,286,       227,287,        230,157,        231,290,        
-164,244,       232,291,        161,241,        165,245,        
-233,292,       235,293,        236,294,        210,271,        
-211,211,       237,157,        238,295,        239,296,        
-166,246,       207,270,        207,270,        207,270,        
-207,270,       207,270,        207,270,        207,270,        
-207,270,       207,270,        207,270,        210,272,        
-210,272,       210,272,        210,272,        210,272,        
-210,272,       210,272,        210,272,        210,272,        
-210,272,       213,273,        213,273,        213,273,        
-213,273,       213,273,        213,273,        213,273,        
-213,273,       213,273,        213,273,        240,297,        
-228,288,       234,234,        241,298,        242,299,        
-243,300,       244,301,        245,302,        216,276,        
-246,303,       247,304,        247,304,        247,304,        
-247,304,       247,304,        247,304,        247,304,        
-247,304,       247,304,        247,304,        250,307,        
-251,308,       252,309,        217,276,        228,288,        
-234,234,       253,310,        254,311,        255,312,        
-256,313,       211,214,        216,276,        257,314,        
-276,330,       258,266,        260,266,        279,224,        
-218,276,       265,266,        280,332,        281,333,        
-282,334,       283,335,        284,224,        216,277,        
-211,215,       217,276,        216,278,        216,278,        
-216,278,       216,278,        216,278,        216,278,        
-216,278,       216,278,        216,278,        216,278,        
-258,266,       260,266,        217,277,        218,276,        
-265,266,       217,278,        217,278,        217,278,        
-217,278,       217,278,        217,278,        217,278,        
-217,278,       217,278,        217,278,        219,276,        
-218,277,       259,266,        285,336,        218,278,        
-218,278,       218,278,        218,278,        218,278,        
-218,278,       218,278,        218,278,        218,278,        
-218,278,       264,266,        263,266,        286,337,        
-287,338,       290,157,        291,342,        292,343,        
-293,344,       294,345,        219,276,        296,346,        
-259,266,       221,276,        266,266,        271,271,        
-297,347,       274,274,        262,266,        216,279,        
-298,348,       299,349,        301,350,        219,277,        
-264,266,       263,266,        219,278,        219,278,        
-219,278,       219,278,        219,278,        219,278,        
-219,278,       219,278,        219,278,        219,278,        
-221,276,       266,266,        271,271,        223,276,        
-274,274,       262,266,        260,317,        265,320,        
-218,281,       258,315,        217,280,        261,266,        
-268,266,       221,277,        269,266,        275,275,        
-221,278,       221,278,        221,278,        221,278,        
-221,278,       221,278,        221,278,        221,278,        
-221,278,       221,278,        223,276,        302,351,        
-303,352,       224,276,        267,266,        288,288,        
-308,353,       310,354,        261,266,        268,266,        
-312,355,       269,266,        275,275,        223,277,        
-229,229,       313,356,        223,278,        223,278,        
-223,278,       223,278,        223,278,        223,278,        
-223,278,       223,278,        223,278,        223,278,        
-224,276,       267,266,        288,288,        314,357,        
-219,282,       264,266,        315,266,        316,358,        
-317,359,       259,316,        318,360,        229,229,        
-319,361,       224,277,        320,266,        321,362,        
-224,278,       224,278,        224,278,        224,278,        
-224,278,       224,278,        224,278,        224,278,        
-224,278,       224,278,        263,266,        229,289,        
-229,289,       229,289,        229,289,        229,289,        
-229,289,       229,289,        229,289,        229,289,        
-229,289,       221,224,        262,319,        322,363,        
-323,364,       223,284,        248,305,        248,305,        
-248,305,       248,305,        248,305,        248,305,        
-248,305,       248,305,        248,305,        248,305,        
-249,306,       249,306,        249,306,        249,306,        
-249,306,       249,306,        249,306,        249,306,        
-249,306,       249,306,        268,322,        328,368,        
-261,318,       329,369,        330,370,        332,224,        
-273,326,       269,323,        267,321,        270,324,        
-270,324,       270,324,        270,324,        270,324,        
-270,324,       270,324,        270,324,        270,324,        
-270,324,       272,325,        272,325,        272,325,        
-272,325,       272,325,        272,325,        272,325,        
-272,325,       272,325,        272,325,        273,326,        
-333,373,       334,374,        277,277,        278,331,        
-278,331,       278,331,        278,331,        278,331,        
-278,331,       278,331,        278,331,        278,331,        
-278,331,       324,365,        325,325,        273,327,        
-273,327,       273,327,        273,327,        273,327,        
-273,327,       273,327,        273,327,        273,327,        
-273,327,       277,277,        335,375,        336,376,        
-289,339,       337,377,        338,378,        341,340,        
-342,380,       343,381,        344,234,        345,157,        
-324,365,       325,325,        346,382,        347,157,        
-348,383,       277,278,        277,278,        277,278,        
-277,278,       277,278,        277,278,        277,278,        
-277,278,       277,278,        277,278,        289,339,        
-324,366,       324,366,        324,366,        324,366,        
-324,366,       324,366,        324,366,        324,366,        
-324,366,       324,366,        326,326,        289,340,        
-273,328,       327,326,        331,371,        289,341,        
-289,341,       289,341,        289,341,        289,341,        
-289,341,       289,341,        289,341,        289,341,        
-289,341,       339,339,        340,379,        273,329,        
-349,384,       350,385,        352,386,        353,250,        
-354,387,       326,326,        355,388,        357,389,        
-327,326,       331,371,        358,266,        359,390,        
-360,391,       361,392,        362,393,        363,394,        
-364,395,       365,365,        367,396,        373,399,        
-339,339,       340,379,        326,367,        374,400,        
-375,224,       331,372,        331,372,        331,372,        
-331,372,       331,372,        331,372,        331,372,        
-331,372,       331,372,        331,372,        368,368,        
-369,369,       370,370,        371,371,        376,401,        
-365,365,       366,365,        366,365,        366,365,        
-366,365,       366,365,        366,365,        366,365,        
-366,365,       366,365,        366,365,        377,224,        
-378,402,       384,404,        386,405,        389,406,        
-390,407,       391,408,        368,368,        369,369,        
-370,370,       371,371,        392,266,        379,379,        
-393,409,       394,266,        395,410,        397,412,        
-402,413,       410,415,        326,328,        398,371,        
-412,412,       327,328,        372,398,        372,398,        
-372,398,       372,398,        372,398,        372,398,        
-372,398,       372,398,        372,398,        372,398,        
-0,0,   326,329,        379,379,        0,0,    
-327,329,       396,411,        396,411,        396,411,        
-396,411,       0,0,    398,371,        412,412,        
-0,0,   0,0,    0,0,    414,417,        
-417,417,       0,0,    379,403,        379,403,        
-379,403,       379,403,        379,403,        379,403,        
-379,403,       379,403,        379,403,        379,403,        
-403,414,       403,414,        403,414,        403,414,        
-403,414,       403,414,        403,414,        403,414,        
-403,414,       403,414,        414,417,        417,417,        
-0,0,   0,0,    371,397,        411,416,        
-411,416,       411,416,        411,416,        411,416,        
-411,416,       411,416,        411,416,        411,416,        
-411,416,       0,0,    414,418,        414,418,        
-414,418,       414,418,        414,418,        414,418,        
-414,418,       414,418,        414,418,        414,418,        
-418,417,       418,417,        418,417,        418,417,        
-418,417,       418,417,        418,417,        418,417,        
-418,417,       418,417,        0,0,    0,0,    
-0,0};
-struct yysvf yysvec[] = {
-0,     0,      0,
-yycrank+1,     0,              0,      
-yycrank+0,     yysvec+1,       0,      
-yycrank+27,    0,              0,      
-yycrank+0,     yysvec+3,       0,      
-yycrank+3,     0,              yyvstop+1,
-yycrank+0,     0,              yyvstop+3,
-yycrank+47,    0,              0,      
-yycrank+141,   0,              0,      
-yycrank+3,     yysvec+8,       0,      
-yycrank+37,    yysvec+8,       0,      
-yycrank+2,     0,              0,      
-yycrank+3,     0,              0,      
-yycrank+4,     0,              0,      
-yycrank+5,     0,              0,      
-yycrank+2,     0,              0,      
-yycrank+4,     0,              0,      
-yycrank+7,     0,              0,      
-yycrank+54,    0,              0,      
-yycrank+4,     0,              0,      
-yycrank+8,     0,              0,      
-yycrank+152,   0,              yyvstop+5,
-yycrank+13,    0,              0,      
-yycrank+116,   0,              0,      
-yycrank+57,    0,              yyvstop+7,
-yycrank+8,     0,              yyvstop+9,
-yycrank+52,    0,              yyvstop+11,
-yycrank+0,     yysvec+12,      yyvstop+13,
-yycrank+53,    0,              yyvstop+15,
-yycrank+0,     yysvec+13,      yyvstop+17,
-yycrank+45,    0,              yyvstop+19,
-yycrank+60,    0,              yyvstop+21,
-yycrank+0,     0,              yyvstop+23,
-yycrank+127,   0,              0,      
-yycrank+0,     0,              yyvstop+25,
-yycrank+121,   0,              yyvstop+27,
-yycrank+65,    0,              yyvstop+29,
-yycrank+0,     yysvec+17,      yyvstop+31,
-yycrank+70,    0,              yyvstop+33,
-yycrank+0,     0,              yyvstop+35,
-yycrank+0,     yysvec+18,      yyvstop+37,
-yycrank+0,     yysvec+19,      yyvstop+39,
-yycrank+42,    0,              yyvstop+41,
-yycrank+0,     yysvec+20,      yyvstop+43,
-yycrank+116,   0,              yyvstop+45,
-yycrank+45,    0,              0,      
-yycrank+66,    0,              0,      
-yycrank+113,   0,              0,      
-yycrank+131,   0,              0,      
-yycrank+77,    0,              0,      
-yycrank+214,   0,              0,      
-yycrank+230,   0,              0,      
-yycrank+215,   0,              0,      
-yycrank+240,   yysvec+8,       0,      
-yycrank+250,   0,              0,      
-yycrank+70,    0,              0,      
-yycrank+78,    0,              0,      
-yycrank+80,    0,              0,      
-yycrank+132,   0,              0,      
-yycrank+3,     0,              0,      
-yycrank+72,    0,              0,      
-yycrank+112,   0,              0,      
-yycrank+111,   0,              0,      
-yycrank+298,   yysvec+8,       0,      
-yycrank+312,   0,              0,      
-yycrank+120,   0,              0,      
-yycrank+137,   0,              0,      
-yycrank+146,   0,              0,      
-yycrank+155,   0,              0,      
-yycrank+149,   0,              0,      
-yycrank+145,   0,              0,      
-yycrank+150,   0,              0,      
-yycrank+194,   0,              0,      
-yycrank+147,   0,              0,      
-yycrank+143,   0,              0,      
-yycrank+157,   0,              0,      
-yycrank+158,   0,              0,      
-yycrank+163,   0,              0,      
-yycrank+166,   0,              0,      
-yycrank+160,   0,              0,      
-yycrank+208,   0,              0,      
-yycrank+210,   0,              0,      
-yycrank+312,   0,              0,      
-yycrank+323,   0,              0,      
-yycrank+333,   0,              0,      
-yycrank+213,   0,              0,      
-yycrank+0,     yysvec+25,      0,      
-yycrank+0,     yysvec+26,      0,      
-yycrank+0,     yysvec+28,      0,      
-yycrank+0,     yysvec+30,      0,      
-yycrank+0,     yysvec+31,      0,      
-yycrank+218,   0,              0,      
-yycrank+219,   0,              0,      
-yycrank+197,   0,              0,      
-yycrank+0,     yysvec+38,      0,      
-yycrank+0,     yysvec+42,      0,      
-yycrank+0,     yysvec+44,      0,      
-yycrank+201,   0,              0,      
-yycrank+206,   0,              0,      
-yycrank+210,   0,              0,      
-yycrank+215,   0,              0,      
-yycrank+219,   0,              0,      
-yycrank+221,   0,              0,      
-yycrank+222,   0,              0,      
-yycrank+226,   0,              0,      
-yycrank+227,   0,              0,      
-yycrank+240,   0,              0,      
-yycrank+242,   0,              0,      
-yycrank+275,   0,              0,      
-yycrank+276,   0,              0,      
-yycrank+277,   0,              0,      
-yycrank+278,   0,              0,      
-yycrank+279,   0,              0,      
-yycrank+280,   0,              0,      
-yycrank+0,     0,              yyvstop+47,
-yycrank+281,   0,              0,      
-yycrank+282,   0,              0,      
-yycrank+294,   0,              0,      
-yycrank+290,   0,              0,      
-yycrank+285,   0,              0,      
-yycrank+292,   0,              0,      
-yycrank+286,   0,              0,      
-yycrank+303,   0,              0,      
-yycrank+305,   0,              0,      
-yycrank+397,   0,              0,      
-yycrank+296,   0,              0,      
-yycrank+306,   0,              0,      
-yycrank+309,   0,              0,      
-yycrank+314,   0,              0,      
-yycrank+318,   0,              0,      
-yycrank+305,   0,              0,      
-yycrank+318,   0,              0,      
-yycrank+318,   0,              0,      
-yycrank+411,   0,              yyvstop+49,
-yycrank+423,   0,              yyvstop+51,
-yycrank+385,   0,              0,      
-yycrank+472,   0,              yyvstop+53,
-yycrank+310,   0,              0,      
-yycrank+322,   0,              0,      
-yycrank+327,   0,              0,      
-yycrank+330,   0,              0,      
-yycrank+320,   0,              0,      
-yycrank+336,   0,              0,      
-yycrank+331,   0,              0,      
-yycrank+329,   0,              0,      
-yycrank+332,   0,              0,      
-yycrank+337,   0,              0,      
-yycrank+434,   0,              0,      
-yycrank+460,   0,              0,      
-yycrank+484,   0,              0,      
-yycrank+486,   0,              0,      
-yycrank+500,   0,              0,      
-yycrank+502,   0,              yyvstop+55,
-yycrank+333,   yysvec+149,     0,      
-yycrank+487,   0,              0,      
-yycrank+350,   yysvec+150,     0,      
-yycrank+501,   0,              0,      
-yycrank+504,   0,              0,      
-yycrank+353,   yysvec+152,     yyvstop+57,
-yycrank+353,   yysvec+150,     0,      
-yycrank+346,   yysvec+157,     0,      
-yycrank+505,   0,              yyvstop+59,
-yycrank+342,   yysvec+157,     0,      
-yycrank+398,   yysvec+152,     yyvstop+61,
-yycrank+506,   0,              yyvstop+63,
-yycrank+508,   0,              yyvstop+65,
-yycrank+522,   0,              yyvstop+67,
-yycrank+507,   0,              0,      
-yycrank+522,   0,              0,      
-yycrank+540,   0,              0,      
-yycrank+0,     0,              yyvstop+69,
-yycrank+0,     0,              yyvstop+71,
-yycrank+0,     0,              yyvstop+73,
-yycrank+0,     0,              yyvstop+75,
-yycrank+0,     0,              yyvstop+77,
-yycrank+0,     0,              yyvstop+79,
-yycrank+0,     0,              yyvstop+81,
-yycrank+0,     0,              yyvstop+83,
-yycrank+0,     0,              yyvstop+85,
-yycrank+0,     0,              yyvstop+87,
-yycrank+0,     0,              yyvstop+89,
-yycrank+0,     0,              yyvstop+91,
-yycrank+0,     0,              yyvstop+93,
-yycrank+0,     0,              yyvstop+95,
-yycrank+0,     0,              yyvstop+97,
-yycrank+0,     0,              yyvstop+99,
-yycrank+0,     0,              yyvstop+101,
-yycrank+0,     0,              yyvstop+103,
-yycrank+0,     0,              yyvstop+105,
-yycrank+498,   0,              0,      
-yycrank+400,   yysvec+189,     0,      
-yycrank+464,   0,              0,      
-yycrank+401,   yysvec+189,     0,      
-yycrank+501,   0,              0,      
-yycrank+494,   0,              0,      
-yycrank+500,   0,              0,      
-yycrank+388,   0,              0,      
-yycrank+440,   0,              0,      
-yycrank+445,   0,              0,      
-yycrank+447,   0,              0,      
-yycrank+437,   0,              0,      
-yycrank+443,   0,              0,      
-yycrank+485,   0,              0,      
-yycrank+430,   0,              0,      
-yycrank+451,   0,              0,      
-yycrank+456,   0,              0,      
-yycrank+571,   0,              yyvstop+107,
-yycrank+585,   0,              0,      
-yycrank+537,   yysvec+206,     yyvstop+109,
-yycrank+536,   yysvec+206,     yyvstop+111,
-yycrank+595,   0,              yyvstop+113,
-yycrank+596,   0,              yyvstop+115,
-yycrank+527,   yysvec+211,     yyvstop+117,
-yycrank+605,   0,              0,      
-yycrank+477,   0,              0,      
-yycrank+498,   0,              0,      
-yycrank+662,   0,              yyvstop+119,
-yycrank+677,   0,              yyvstop+121,
-yycrank+691,   0,              yyvstop+123,
-yycrank+726,   0,              yyvstop+125,
-yycrank+494,   yysvec+217,     yyvstop+127,
-yycrank+752,   0,              yyvstop+129,
-yycrank+511,   yysvec+218,     yyvstop+131,
-yycrank+778,   0,              yyvstop+133,
-yycrank+804,   0,              yyvstop+135,
-yycrank+512,   yysvec+218,     yyvstop+137,
-yycrank+505,   yysvec+224,     yyvstop+139,
-yycrank+501,   yysvec+224,     yyvstop+141,
-yycrank+655,   yysvec+210,     yyvstop+143,
-yycrank+815,   0,              0,      
-yycrank+510,   0,              0,      
-yycrank+504,   0,              0,      
-yycrank+512,   0,              0,      
-yycrank+507,   0,              0,      
-yycrank+656,   0,              yyvstop+146,
-yycrank+528,   0,              0,      
-yycrank+529,   0,              0,      
-yycrank+525,   0,              0,      
-yycrank+533,   0,              0,      
-yycrank+522,   0,              0,      
-yycrank+565,   0,              0,      
-yycrank+552,   0,              0,      
-yycrank+566,   0,              0,      
-yycrank+571,   0,              0,      
-yycrank+554,   0,              0,      
-yycrank+570,   0,              0,      
-yycrank+571,   0,              0,      
-yycrank+625,   0,              0,      
-yycrank+830,   0,              0,      
-yycrank+840,   0,              0,      
-yycrank+639,   0,              yyvstop+148,
-yycrank+587,   0,              0,      
-yycrank+588,   0,              0,      
-yycrank+575,   0,              0,      
-yycrank+593,   0,              0,      
-yycrank+576,   0,              0,      
-yycrank+592,   0,              0,      
-yycrank+594,   0,              0,      
-yycrank+688,   yysvec+216,     0,      
-yycrank+728,   yysvec+217,     0,      
-yycrank+689,   yysvec+218,     0,      
-yycrank+786,   yysvec+219,     0,      
-yycrank+757,   yysvec+217,     0,      
-yycrank+741,   yysvec+221,     0,      
-yycrank+740,   yysvec+218,     0,      
-yycrank+692,   yysvec+223,     0,      
-yycrank+753,   yysvec+224,     0,      
-yycrank+805,   yysvec+218,     0,      
-yycrank+787,   yysvec+224,     0,      
-yycrank+789,   yysvec+224,     0,      
-yycrank+859,   0,              0,      
-yycrank+754,   0,              yyvstop+150,
-yycrank+869,   0,              0,      
-yycrank+895,   0,              yyvstop+152,
-yycrank+756,   0,              yyvstop+154,
-yycrank+790,   0,              yyvstop+156,
-yycrank+599,   yysvec+224,     yyvstop+158,
-yycrank+921,   0,              0,      
-yycrank+883,   0,              0,      
-yycrank+591,   0,              0,      
-yycrank+587,   0,              0,      
-yycrank+594,   0,              0,      
-yycrank+587,   0,              0,      
-yycrank+608,   0,              0,      
-yycrank+602,   0,              0,      
-yycrank+629,   0,              0,      
-yycrank+653,   0,              0,      
-yycrank+651,   0,              0,      
-yycrank+806,   0,              yyvstop+160,
-yycrank+947,   0,              yyvstop+163,
-yycrank+637,   0,              0,      
-yycrank+656,   0,              0,      
-yycrank+658,   0,              0,      
-yycrank+635,   0,              0,      
-yycrank+643,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+661,   0,              0,      
-yycrank+663,   0,              0,      
-yycrank+668,   0,              0,      
-yycrank+660,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+670,   0,              0,      
-yycrank+714,   0,              0,      
-yycrank+697,   0,              0,      
-yycrank+0,     0,              yyvstop+165,
-yycrank+0,     0,              yyvstop+167,
-yycrank+0,     0,              yyvstop+169,
-yycrank+0,     0,              yyvstop+171,
-yycrank+695,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+717,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+720,   0,              0,      
-yycrank+728,   0,              0,      
-yycrank+724,   0,              0,      
-yycrank+734,   0,              0,      
-yycrank+728,   0,              0,      
-yycrank+735,   0,              0,      
-yycrank+729,   0,              0,      
-yycrank+751,   0,              0,      
-yycrank+746,   0,              0,      
-yycrank+742,   0,              0,      
-yycrank+777,   0,              0,      
-yycrank+775,   0,              0,      
-yycrank+932,   0,              yyvstop+173,
-yycrank+933,   0,              yyvstop+175,
-yycrank+981,   0,              yyvstop+177,
-yycrank+984,   0,              yyvstop+179,
-yycrank+790,   0,              0,      
-yycrank+792,   0,              0,      
-yycrank+786,   0,              0,      
-yycrank+985,   0,              yyvstop+181,
-yycrank+787,   0,              0,      
-yycrank+830,   0,              0,      
-yycrank+832,   0,              0,      
-yycrank+840,   0,              0,      
-yycrank+857,   0,              0,      
-yycrank+856,   0,              0,      
-yycrank+849,   0,              0,      
-yycrank+996,   0,              yyvstop+183,
-yycrank+997,   0,              0,      
-yycrank+915,   yysvec+339,     yyvstop+185,
-yycrank+859,   0,              0,      
-yycrank+847,   0,              0,      
-yycrank+918,   yysvec+234,     yyvstop+187,
-yycrank+842,   0,              0,      
-yycrank+865,   0,              0,      
-yycrank+853,   0,              0,      
-yycrank+871,   0,              0,      
-yycrank+910,   0,              0,      
-yycrank+912,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+910,   0,              0,      
-yycrank+970,   0,              0,      
-yycrank+915,   0,              0,      
-yycrank+917,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+915,   0,              0,      
-yycrank+902,   0,              0,      
-yycrank+921,   0,              0,      
-yycrank+923,   0,              0,      
-yycrank+907,   0,              0,      
-yycrank+924,   0,              0,      
-yycrank+922,   0,              0,      
-yycrank+915,   0,              0,      
-yycrank+1016,  0,              yyvstop+189,
-yycrank+1001,  yysvec+324,     yyvstop+191,
-yycrank+969,   0,              0,      
-yycrank+1034,  0,              yyvstop+193,
-yycrank+1035,  0,              yyvstop+195,
-yycrank+1036,  0,              yyvstop+197,
-yycrank+1037,  0,              yyvstop+199,
-yycrank+1034,  yysvec+331,     yyvstop+201,
-yycrank+926,   0,              0,      
-yycrank+917,   0,              0,      
-yycrank+911,   0,              0,      
-yycrank+946,   0,              0,      
-yycrank+945,   0,              0,      
-yycrank+962,   0,              0,      
-yycrank+1062,  0,              0,      
-yycrank+0,     yysvec+347,     0,      
-yycrank+0,     yysvec+345,     0,      
-yycrank+0,     yysvec+347,     0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+960,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+965,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+966,   0,              0,      
-yycrank+963,   0,              0,      
-yycrank+951,   0,              0,      
-yycrank+949,   0,              0,      
-yycrank+971,   0,              0,      
-yycrank+959,   0,              0,      
-yycrank+976,   0,              0,      
-yycrank+1043,  0,              0,      
-yycrank+959,   0,              0,      
-yycrank+1070,  0,              yyvstop+203,
-yycrank+0,     yysvec+377,     0,      
-yycrank+0,     yysvec+375,     0,      
-yycrank+0,     yysvec+377,     0,      
-yycrank+975,   0,              0,      
-yycrank+1072,  0,              0,      
-yycrank+0,     yysvec+347,     0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+0,     yysvec+394,     0,      
-yycrank+0,     yysvec+392,     0,      
-yycrank+0,     yysvec+394,     0,      
-yycrank+976,   0,              0,      
-yycrank+1087,  0,              0,      
-yycrank+1071,  0,              yyvstop+205,
-yycrank+0,     yysvec+377,     0,      
-yycrank+1098,  0,              yyvstop+207,
-yycrank+0,     yysvec+394,     0,      
-yycrank+0,     0,              yyvstop+209,
-yycrank+1099,  0,              yyvstop+211,
-yycrank+1108,  yysvec+414,     yyvstop+213,
-0,     0,      0};
-struct yywork *yytop = yycrank+1165;
-struct yysvf *yybgin = yysvec+1;
-char yymatch[] = {
-00  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,011 ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-011 ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-'0' ,'0' ,'2' ,'3' ,'3' ,'3' ,'6' ,'6' ,
-'6' ,'6' ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,'a' ,'a' ,'a' ,'a' ,'a' ,'a' ,'a' ,
-'a' ,'a' ,01  ,'k' ,'k' ,'k' ,'n' ,'n' ,
-'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,
-'n' ,'n' ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-0};
-char yyextra[] = {
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0};
-/*     Copyright (c) 1989 AT&T */
-/*       All Rights Reserved   */
-
-/*     THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T     */
-/*     The copyright notice above does not evidence any        */
-/*     actual or intended publication of such source code.     */
-
-#ident "@(#)ncform 6.4 92/06/19 SMI"
-
diff --git a/docs/historical/mh-6.8.5/local/linux/mh-6.8.3-diffs.tgz 
b/docs/historical/mh-6.8.5/local/linux/mh-6.8.3-diffs.tgz
deleted file mode 100644
index 4052be6..0000000
Binary files a/docs/historical/mh-6.8.5/local/linux/mh-6.8.3-diffs.tgz and 
/dev/null differ
diff --git a/docs/historical/mh-6.8.5/local/linux/mh-6.8.3.README 
b/docs/historical/mh-6.8.5/local/linux/mh-6.8.3.README
deleted file mode 100644
index 5cd0a18..0000000
--- a/docs/historical/mh-6.8.5/local/linux/mh-6.8.3.README
+++ /dev/null
@@ -1,68 +0,0 @@
-MH 6.8.3 for Linux
-==================
-
-This distribution consists of two packages:  mh-6.8.3-bin.tar.gz contains
-shared binaries, and mh-6.8.3-patch.tar.gz contains patches to the UCI MH
-6.8.3 distribution.  The patches will allow the building of shared or static
-binaries, although the implementation is still a bit of a hack.  You may
-download either or both packages, depending on whether you want sources,
-binaries, or both.
-
-You will need to add a user for POP, and another for BBoards.  I used:
-
-pop:x:13:13:POP administrator:/usr/lib/mh:/bin/sh
-bboards:x:14:14:BBoards administrator:/usr/spool/bboards:/bin/sh
-
-Do this before unpacking the binary distribution to avoid problems with buggy
-versions of GNU tar, or before installing binaries built from the source
-patch distribution.  (Note that the BBoards spool area is not included in the
-binary distribution.)
-
-mh-6.8.3-bin.tar.gz should be unpacked from the root directory.  It places
-files in /usr/bin/mh, /usr/lib/mh, and /usr/sbin (popd), installs manpages in
-/usr.man/man?/*.?mh, and installs the MH shared library libmh.so.2.0 in /lib.
-(WARNING!!!  The internals of MH have changed; you can not use the older
-shared library with the new binaries, or vice versa.)  Add /usr/bin/mh to your
-PATH and you're set.  (Ed. note:  I don't want to hear about the choice of
-directories.  Complain to the FSSTND folks if you don't like it, or grab the
-source package and recompile it with different paths.)
-
-mh-6.8.3-patch.tar.gz can be unpacked anywhere, although it's convenient to
-unpack it into the top directory of the UCI MH distribution.  After unpacking,
-issue the commands:
-
-patch -p0 -N < DIFFS-pre
-cp -f MH conf/MH
-(cd conf/mh; make; mhconfig MH)
-make clean
-
-(If you want to change the configuration, edit conf/MH after the cp -f.)
-
-If you want to build shared binaries, you must issue the command:
-
-patch -p0 -N < DIFFS-post
-
-after the "make clean" step.  Depending on what changes you may have made to
-conf/MH, you may see several failures; you will need to patch those files
-manually.  Eventually, I will get this into the distribution makefiles and the
-post-patch won't be necessary.
-
-!!! If you do not patch the binaries, you may want to edit doc/Makefile and
-!!! change the definitions of MAN1EXT, MAN5EXT, and MAN8EXT to add the "mh"
-!!! suffix to the manpages when they are installed.  This can not easily be
-!!! done automatically; fixing it will require some changes to mhconfig.
-
-Everything is now ready:  "make" will build the distribution.  (You will see
-various warnings because NULL is defined as "(void *) 0" instead of simply
-"0", and for shared binaries the DLL tools will complain about relative
-JUMP_DIR settings.  The alternative having been to hardcode the full pathname,
-forcing everyone to unpack MH in /varopt, I chose to accept the warnings.)
-
-"make install" will place the binaries and configuration files in the
-appropriate locations, and will install libmh.so.2.0 in /lib and run ldconfig.
-
-If you need help building MH beyond this, I suggest reading the file READ-ME
-in the top level of the UCI MH distribution.
-
-Brandon S. Allbery
address@hidden
diff --git a/docs/historical/mh-6.8.5/local/linux/mh-6.8.3.lsm 
b/docs/historical/mh-6.8.5/local/linux/mh-6.8.3.lsm
deleted file mode 100644
index 8a89d9b..0000000
--- a/docs/historical/mh-6.8.5/local/linux/mh-6.8.3.lsm
+++ /dev/null
@@ -1,25 +0,0 @@
-Begin3
-Title:          mh (The RAND MH Message Handling System)
-Version:        6.8.3
-Entered-date:   1DEC95
-Description:    MH is a flexible mail management system which uses individual
-                shell-level commands to manage various aspects of mail
-                maintenance. These commands can be used as is or combined via
-                shell scripts to allow arbitrary mail manipulation.  User
-                interfaces such as xmh and exmh and mh-e can easily be
-                implemented on top of its commands.
-Keywords:       RAND Mail Handler MH UCI POP BBoards
-Author:         address@hidden <John L. Romine>
-Maintained-by:  address@hidden <Brandon S. Allbery> for the Linux Port
-Primary-site:   louie.udel.edu /pub/portal
-                1269485 mh-6.8.tar.gz
-Alternate-site: sunsite.unc.edu /pub/Linux/games/x11/networked
-                1306309 mh-6.8.3-src.tgz
-                 649682 mh-6.8.3-bin.tar.gz
-                  22812 mh-6.8.3-diffs.tar.gz
-                   3147 mh-6.8.3.README
-Original-site:  ftp.ics.uci.edu /pub/mh/tar
-                1961283 mh-6.8.3.tar.Z
-Platform:       Many *nix
-Copying-policy: public domain
-End
diff --git a/docs/historical/mh-6.8.5/local/rdist_script 
b/docs/historical/mh-6.8.5/local/rdist_script
deleted file mode 100755
index be259ee..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_script
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/csh -f
-#
-# Script to run rdist in order to update the Sun-3 filesservers
-#
-if (`hostname` == 'ics.uci.edu') then
-  cd /usr/local/bin
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_usrlocal.sequent
-  cd /usr/local/lib/mh
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_lib.sequent
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_others.sequent
-else if (`hostname` == 'f.ics.uci.edu') then
-  cd /usr/local
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_usrlocal.is68k
-  cd /usr/local/lib/mh
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_lib.is68k
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_others.is68k
-else
-  cd /usr/local
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_usrlocal.`arch`
-  cd /usr/local/lib/mh
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_lib.`arch`
-  rdist -f /usr/src/bs/mh-6.6/rdist_update_others.`arch`
-endif
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_lib.is68k 
b/docs/historical/mh-6.8.5/local/rdist_update_lib.is68k
deleted file mode 100644
index ecc2304..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_lib.is68k
+++ /dev/null
@@ -1,7 +0,0 @@
-FILES = (tmac.h spost rcvtty rcvstore rcvpack rcvdist post mhl install-mh
-       dp conflict ap popwrd popaka mtstailor scan.timely scan.mailx
-       mhl.body mhl.forward mhl.format mhl.digest replcomps rcvdistcomps
-       forwcomps distcomps digestcomps components scan.size scan.time)
-
-${FILES} -> (cip1 cip4)
-       install /usr/uci/lib/mh ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_lib.sequent 
b/docs/historical/mh-6.8.5/local/rdist_update_lib.sequent
deleted file mode 100644
index f482ab8..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_lib.sequent
+++ /dev/null
@@ -1,7 +0,0 @@
-FILES = (tmac.h spost rcvtty rcvstore rcvpack rcvdist post mhl install-mh
-       dp conflict ap popwrd popaka mtstailor scan.timely scan.mailx
-       mhl.body mhl.forward mhl.format mhl.digest replcomps rcvdistcomps
-       forwcomps distcomps digestcomps components scan.size scan.time)
-
-${FILES} -> (bonnie)
-       install /usr/local/lib/mh ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_lib.sun3 
b/docs/historical/mh-6.8.5/local/rdist_update_lib.sun3
deleted file mode 100644
index b8b9a41..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_lib.sun3
+++ /dev/null
@@ -1,11 +0,0 @@
-FILES = (tmac.h spost rcvtty rcvstore rcvpack rcvdist post mhl install-mh
-       dp conflict ap popwrd popaka mtstailor scan.timely scan.mailx
-       mhl.body mhl.forward mhl.format mhl.digest replcomps rcvdistcomps
-       forwcomps distcomps digestcomps components scan.size scan.time)
-
-${FILES} -> (rome europe pompe cadet madeleine cad harlie
-               cecil beanie london)
-       install /usr.MC68020/uci/lib/mh ;
-
-${FILES} -> (etoile commerce)
-       install /usr/uci/lib/mh ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_others.is68k 
b/docs/historical/mh-6.8.5/local/rdist_update_others.is68k
deleted file mode 100644
index 8a1a015..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_others.is68k
+++ /dev/null
@@ -1,2 +0,0 @@
-/usr/etc/popd -> (icsf cip1 cip4)
-       install /usr/etc/popd ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_others.sequent 
b/docs/historical/mh-6.8.5/local/rdist_update_others.sequent
deleted file mode 100644
index 262b982..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_others.sequent
+++ /dev/null
@@ -1,2 +0,0 @@
-/usr/etc/popd -> (ics bonnie)
-       install /usr/etc/popd ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_others.sun3 
b/docs/historical/mh-6.8.5/local/rdist_update_others.sun3
deleted file mode 100644
index d0b2497..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_others.sun3
+++ /dev/null
@@ -1,3 +0,0 @@
-/usr/etc/popd -> (rome europe pompe cadet madeleine cad harlie cecil beanie
-                       london etoile commerce)
-       install /usr/etc/popd ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.is68k 
b/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.is68k
deleted file mode 100644
index 29f6100..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.is68k
+++ /dev/null
@@ -1,6 +0,0 @@
-FILES = (ali anno bbc bbl burst comp dist folder folders forw inc mark mhmail
-       mhpath msgchk msh packf pick prompter refile repl rmf rmm scan send
-       show next prev sortm vmh whatnow whom)
-
-${FILES} -> (cip1 cip4)
-       install /usr/uci ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sequent 
b/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sequent
deleted file mode 100644
index cf5d17e..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sequent
+++ /dev/null
@@ -1,6 +0,0 @@
-FILES = (ali anno bbc bbl burst comp dist folder folders forw inc mark mhmail
-       mhpath msgchk msh packf pick prompter refile repl rmf rmm scan send
-       show next prev sortm vmh whatnow whom)
-
-${FILES} -> (bonnie)
-       install /usr/local/bin ;
diff --git a/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sun3 
b/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sun3
deleted file mode 100644
index 8026885..0000000
--- a/docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sun3
+++ /dev/null
@@ -1,10 +0,0 @@
-FILES = (ali anno bbc bbl burst comp dist folder folders forw inc mark mhmail
-       mhpath msgchk msh packf pick prompter refile repl rmf rmm scan send
-       show next prev sortm vmh whatnow whom)
-
-${FILES} -> (rome europe etoile pompe commerce cadet madeleine cad harlie
-               cecil beanie london)
-       install /usr.MC68020/uci ;
-
-${FILES} -> (etoile commerce)
-       install /usr/uci ;
diff --git a/docs/historical/mh-6.8.5/local/tmp/mh-6.8-bsdi.patch 
b/docs/historical/mh-6.8.5/local/tmp/mh-6.8-bsdi.patch
deleted file mode 100644
index 10481e9..0000000
--- a/docs/historical/mh-6.8.5/local/tmp/mh-6.8-bsdi.patch
+++ /dev/null
@@ -1,2148 +0,0 @@
-From address@hidden  Mon Mar  1 11:50:20 1993
-Received: by IEDVB.acd.com (5.57/Ultrix2.3-C)
-       id AA10693; Mon, 1 Mar 93 11:50:20 -0500
-Received: by acd4.acd.com (5.57/Ultrix2.4-C)
-       id AA15842; Mon, 1 Mar 93 11:51:42 EST
-Received: from banjo.concert.net by relay1.UU.NET with SMTP 
-       (5.61/UUNET-internet-primary) id AA01965; Sun, 28 Feb 93 03:24:30 -0500
-Received: by banjo.concert.net (5.59/tas-concert/6-19-91)
-       id AA28168; Sun, 28 Feb 93 02:07:16 -0500
-Message-Id: <address@hidden>
-To: address@hidden (Stephen Diercouff)
-Cc: address@hidden
-Subject: Re: BSDI MH patches 
-In-Reply-To: <address@hidden> 
-Mime-Version: 1.0
-Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0"
-Date: Sun, 28 Feb 1993 00:05:40 -0700
-From: Brad Huntting <address@hidden>
-Errors-To: address@hidden
-Sender: address@hidden
-Precedence: bulk
-X-Loop: address@hidden
-Status: RO
-
-
-
-------- =_aaaaaaaaaa0
-Content-Type: text/plain; charset="us-ascii"
-
-I seemed to have jumped the gun with respect to the mh patches...
-This batch has been tested (really!).
-
-
-brad
-
-------- =_aaaaaaaaaa0
-Content-Type: text/plain; charset="us-ascii"
-Content-Description: mh-6.8-patch
-
-diff -c /dev/null mh/conf/MH.bsd386:1.2
-*** /dev/null  Tue Feb  9 07:41:52 1993
---- mh/conf/MH.bsd386  Tue Feb  9 07:41:54 1993
-***************
-*** 0 ****
---- 1,26 ----
-+ # a BSD386 system running SendMail
-+ cc   cc
-+ bin  /usr/contrib/mh/bin
-+ etc  /usr/contrib/mh/lib
-+ mandir       /usr/contrib/man
-+ mail /var/mail
-+ chown        /usr/sbin/chown
-+ manuals      gen
-+ mts  sendmail/smtp
-+ 
-+ sprintf      int
-+ signal       void
-+ options      BIND BSD42 BSD43 DBMPWD MORE='"/usr/bin/more"'
-+ options SYS5DIR NTOHLSWAP OVERHEAD VSPRINTF WHATNOW ZONEINFO 
-+ options MHE MHRC MIME FLOCK
-+ options POSIX
-+ 
-+ #
-+ # POP
-+ #
-+ pop  on
-+ popdir       /usr/local/lib/mh
-+ #options APOP='"/etc/pop.auth"'
-+ #options DPOP
-+ #options MPOP
-+ options RPOP
-diff -c mh/conf/config/mtstailor:1.1.1.1 mh/conf/config/mtstailor:1.2
-*** mh/conf/config/mtstailor:1.1.1.1   Tue Feb  9 07:41:56 1993
---- mh/conf/config/mtstailor   Tue Feb  9 07:41:56 1993
-***************
-*** 2,4 ****
---- 2,6 ----
-  mmdflfil:    @(MHDROPFIL)
-  hostable:    @(MHETCPATH)/hosts
-  servers:     localhost \01localnet
-+ sendmail:    /usr/sbin/sendmail
-+ lockstyle:   0
-diff -c mh/conf/makefiles/sbr:1.1.1.1 mh/conf/makefiles/sbr:1.2
-*** mh/conf/makefiles/sbr:1.1.1.1      Tue Feb  9 07:42:05 1993
---- mh/conf/makefiles/sbr      Tue Feb  9 07:42:06 1993
-***************
-*** 2,8 ****
-  #    Instructions to Make, for compilation of MH modules
-  #
-  #    @(MHWARNING)
-! # @(#)$Id: sbr,v 2.19 1992/11/12 22:47:24 jromine Exp $
-  
##############################################################################
-  
-  OPTIONS      =       @(MHOPTIONS)
---- 2,8 ----
-  #    Instructions to Make, for compilation of MH modules
-  #
-  #    @(MHWARNING)
-! # @(#)$Id: sbr,v 1.1.1.1 1993/01/30 04:40:16 jtc Exp $
-  
##############################################################################
-  
-  OPTIONS      =       @(MHOPTIONS)
-***************
-*** 47,53 ****
-               makedir.c path.c peekc.c pidwait.c pidstatus.c \
-               printsw.c push.c putenv.c pwd.c refile.c remdir.c r1bindex.c \
-               showfile.c smatch.c sprintb.c ssequal.c strindex.c trimcpy.c \
-!              uleq.c uprf.c vfgets.c formatdef.c m_msgdef.c
-  
-  
-  OFILES       =       add.o adios.o admonish.o addrsbr.o advertise.o advise.o 
\
---- 47,53 ----
-               makedir.c path.c peekc.c pidwait.c pidstatus.c \
-               printsw.c push.c putenv.c pwd.c refile.c remdir.c r1bindex.c \
-               showfile.c smatch.c sprintb.c ssequal.c strindex.c trimcpy.c \
-!              uleq.c uprf.c vfgets.c formatdef.c m_msgdef.c ruserpass.c
-  
-  
-  OFILES       =       add.o adios.o admonish.o addrsbr.o advertise.o advise.o 
\
-***************
-*** 63,69 ****
-               makedir.o path.o peekc.o pidwait.o pidstatus.o \
-               printsw.o push.o putenv.o pwd.o refile.o remdir.o r1bindex.o \
-               showfile.o smatch.o sprintb.o ssequal.o strindex.o trimcpy.o \
-!              uleq.o uprf.o vfgets.o formatdef.o m_msgdef.o
-  
-  @BEGIN: SHAREDLIB
-  ODEFS        =       formatdef.o m_msgdef.o
---- 63,69 ----
-               makedir.o path.o peekc.o pidwait.o pidstatus.o \
-               printsw.o push.o putenv.o pwd.o refile.o remdir.o r1bindex.o \
-               showfile.o smatch.o sprintb.o ssequal.o strindex.o trimcpy.o \
-!              uleq.o uprf.o vfgets.o formatdef.o m_msgdef.o ruserpass.o
-  
-  @BEGIN: SHAREDLIB
-  ODEFS        =       formatdef.o m_msgdef.o
-diff -c mh/conf/makefiles/zotnet/tws:1.1.1.1 mh/conf/makefiles/zotnet/tws:1.2
-*** mh/conf/makefiles/zotnet/tws:1.1.1.1       Tue Feb  9 07:42:11 1993
---- mh/conf/makefiles/zotnet/tws       Tue Feb  9 07:42:11 1993
-***************
-*** 2,8 ****
-  #    Instructions to Make, for compilation of ZOT UIP/utility processes
-  #
-  #    @(MHWARNING)
-! # @(#)$Id: tws,v 1.15 1992/11/18 16:54:16 jromine Exp $
-  
##############################################################################
-  
-  # The following entries were inserted during MH configuration
---- 2,8 ----
-  #    Instructions to Make, for compilation of ZOT UIP/utility processes
-  #
-  #    @(MHWARNING)
-! # @(#)$Id: tws,v 1.1.1.1 1993/01/30 04:40:19 jtc Exp $
-  
##############################################################################
-  
-  # The following entries were inserted during MH configuration
-***************
-*** 71,76 ****
---- 71,78 ----
-  
-  dtimep.c:    dtimep.lex
-               $(LEX) dtimep.lex | sed -f lexedit.sed > dtimep.c
-+              len=`wc -l dtimep.c | awk ' { print $$1 } '`; \
-+                  if [ $$len -eq 1 ]; then cp dtimep.c-lexed dtimep.c; fi
-  
-  lexstring.o: lexstring.c
-               $(CC) $(CFLAGS) -c -DONECASE lexstring.c
-diff -c mh/dist/Makefile:1.1.1.1 mh/dist/Makefile:1.2
-*** mh/dist/Makefile:1.1.1.1   Tue Feb  9 07:42:15 1993
---- mh/dist/Makefile   Tue Feb  9 07:42:15 1993
-***************
-*** 2,8 ****
-  #    Instructions to Make, for generation of MH documentation sets
-  #
-  #    This file is automatically generated.  Do not edit!
-! # @(#)$Id: dist,v 2.7 1992/12/02 22:21:43 jromine Exp $
-  
##############################################################################
-  
-  MAKE =       make DESTDIR=$(DESTDIR) $(MFLAGS) -k
---- 2,8 ----
-  #    Instructions to Make, for generation of MH documentation sets
-  #
-  #    This file is automatically generated.  Do not edit!
-! # @(#)$Id: dist,v 1.1.1.1 1993/01/30 04:40:16 jtc Exp $
-  
##############################################################################
-  
-  MAKE =       make DESTDIR=$(DESTDIR) $(MFLAGS) -k
-diff -c mh/h/mh.h:1.1.1.1 mh/h/mh.h:1.2
-*** mh/h/mh.h:1.1.1.1  Tue Feb  9 07:42:20 1993
---- mh/h/mh.h  Tue Feb  9 07:42:20 1993
-***************
-*** 1,5 ****
-  /* mh.h - main header file for all of MH */
-! /* @(#)$Id: mh.h,v 2.18 1992/12/14 17:10:43 jromine Exp $ */
-  
-  
-  /* Well-used constants */
---- 1,5 ----
-  /* mh.h - main header file for all of MH */
-! /* @(#)$Id: mh.h,v 1.1.1.1 1993/01/30 04:40:24 jtc Exp $ */
-  
-  
-  /* Well-used constants */
-***************
-*** 332,338 ****
-  
-  /* should be in <stdio.h> */
-  
-! #if  !defined(SYS5) && !defined(ncr) && !defined(_AIX) && !defined(OSF1) && 
!defined(__convex__)
-  typedef struct _iobuf  *FP;
-  FP   popen ();
-  #else /* SYS5 */
---- 332,338 ----
-  
-  /* should be in <stdio.h> */
-  
-! #if  !defined(SYS5) && !defined(ncr) && !defined(_AIX) && !defined(OSF1) && 
!defined(__convex__) && !defined(__386BSD__) && !defined(__bsdi__)
-  typedef struct _iobuf  *FP;
-  FP   popen ();
-  #else /* SYS5 */
-diff -c mh/h/strings.h:1.1.1.1 mh/h/strings.h:1.2
-*** mh/h/strings.h:1.1.1.1     Tue Feb  9 07:42:21 1993
---- mh/h/strings.h     Tue Feb  9 07:42:21 1993
-***************
-*** 1,5 ****
-  /* strings.h - define standard string functions */
-! /* @(#)$Id: strings.h,v 1.18 1992/11/12 19:34:05 jromine Exp $ */
-  
-  #ifndef      _STRINGS                /* once-only... */
-  #define      _STRINGS
---- 1,5 ----
-  /* strings.h - define standard string functions */
-! /* @(#)$Id: strings.h,v 1.1.1.1 1993/01/30 04:40:24 jtc Exp $ */
-  
-  #ifndef      _STRINGS                /* once-only... */
-  #define      _STRINGS
-***************
-*** 25,31 ****
-  #endif /* SYS5 */
-  
-  #if  defined(BSD42) || defined(SVR4)
-! #ifndef      SVR4
-  #include <strings.h>
-  #else
-  #include <string.h>
---- 25,31 ----
-  #endif /* SYS5 */
-  
-  #if  defined(BSD42) || defined(SVR4)
-! #if !defined(SVR4) && !defined(__386BSD__) && !defined(__bsdi__)
-  #include <strings.h>
-  #else
-  #include <string.h>
-***************
-*** 51,57 ****
-  char   *strncpy ();
-  #endif
-  
-! #ifndef      SVR4
-  char   *getenv ();
-  char   *calloc (), *malloc (), *realloc ();
-  #endif       /* SVR4 */
---- 51,57 ----
-  char   *strncpy ();
-  #endif
-  
-! #if !defined(SVR4) && !defined(__386BSD__) && !defined(__bsdi__)
-  char   *getenv ();
-  char   *calloc (), *malloc (), *realloc ();
-  #endif       /* SVR4 */
-diff -c mh/sbr/discard.c:1.1.1.1 mh/sbr/discard.c:1.2
-*** mh/sbr/discard.c:1.1.1.1   Tue Feb  9 07:43:22 1993
---- mh/sbr/discard.c   Tue Feb  9 07:43:22 1993
-***************
-*** 1,13 ****
-  /* discard.c - discard output on a file pointer */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: discard.c,v 1.6 1992/12/15 00:20:22 jromine 
Exp $";
-  #endif       /* lint */
-  
-  #include "../h/mh.h"
-  #include <stdio.h>
-  #ifndef      SYS5
-  #include <sgtty.h>
-! #else        /* SYS5 */
-  #include <sys/types.h>
-  #include <termio.h>
-  #ifndef      NOIOCTLH
---- 1,16 ----
-  /* discard.c - discard output on a file pointer */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: discard.c,v 1.1.1.1 1993/01/30 04:41:24 jtc 
Exp $";
-  #endif       /* lint */
-  
-  #include "../h/mh.h"
-  #include <stdio.h>
-+ #ifdef POSIX
-+ #include <termios.h>
-+ #else
-  #ifndef      SYS5
-  #include <sgtty.h>
-! #else
-  #include <sys/types.h>
-  #include <termio.h>
-  #ifndef      NOIOCTLH
-***************
-*** 14,33 ****
-  #include <sys/ioctl.h>
-  #endif       /* NOIOCTLH */
-  #endif       /* SYS5 */
-! 
-  
-  void discard (io)
-  FILE   *io;
-  {
-  #ifndef      SYS5
-      struct sgttyb   sg;
-  #else        /* SYS5 */
-      struct termio   sg;
-  #endif       /* SYS5 */
-  
-      if (io == NULL)
-       return;
-  
-  #ifndef      SYS5
-      if (ioctl (fileno (io), TIOCGETP, (char *) &sg) != NOTOK)
-       (void) ioctl (fileno (io), TIOCSETP, (char *) &sg);
---- 17,41 ----
-  #include <sys/ioctl.h>
-  #endif       /* NOIOCTLH */
-  #endif       /* SYS5 */
-! #endif       /* POSIX */
-  
-  void discard (io)
-  FILE   *io;
-  {
-+ #ifndef POSIX
-  #ifndef      SYS5
-      struct sgttyb   sg;
-  #else        /* SYS5 */
-      struct termio   sg;
-  #endif       /* SYS5 */
-+ #endif       /* POSIX */
-  
-      if (io == NULL)
-       return;
-  
-+ #ifdef POSIX
-+     tcflush (fileno (io), TCOFLUSH);
-+ #else
-  #ifndef      SYS5
-      if (ioctl (fileno (io), TIOCGETP, (char *) &sg) != NOTOK)
-       (void) ioctl (fileno (io), TIOCSETP, (char *) &sg);
-***************
-*** 35,41 ****
---- 43,54 ----
-      if (ioctl (fileno (io), TCGETA, &sg) != NOTOK)
-       (void) ioctl (fileno (io), TCSETA, &sg);
-  #endif       /* SYS5 */
-+ #endif       /* POSIX */
-  
-+ #ifdef _FSTDIO
-+     fpurge (io);
-+ #else
-      if (io -> _ptr = io -> _base)
-       io -> _cnt = 0;
-+ #endif
-  }
-diff -c mh/sbr/m_getfld.c:1.1.1.1 mh/sbr/m_getfld.c:1.2
-*** mh/sbr/m_getfld.c:1.1.1.1  Tue Feb  9 07:43:25 1993
---- mh/sbr/m_getfld.c  Tue Feb  9 07:43:25 1993
-***************
-*** 1,6 ****
-  /* m_getfld.c - read/parse a message */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: m_getfld.c,v 1.14 1992/10/31 07:44:56 
jromine Exp $";
-  #endif /* lint */
-  
-  #include "../h/mh.h"
---- 1,6 ----
-  /* m_getfld.c - read/parse a message */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: m_getfld.c,v 1.1.1.1 1993/01/30 04:41:26 jtc 
Exp $";
-  #endif /* lint */
-  
-  #include "../h/mh.h"
-***************
-*** 170,175 ****
---- 170,181 ----
-  static int  edelimlen;
-  
-  static int  (*eom_action) () = NULL;
-+ 
-+ #ifdef _FSTDIO
-+ #define      _ptr    _p              /* Gag */
-+ #define      _cnt    _r              /* Retch */
-+ #define      _filbuf __srget         /* Puke */
-+ #endif
-  
-  /*  */
-  
-diff -c /dev/null mh/sbr/ruserpass.c:1.1
-*** /dev/null  Tue Feb  9 07:43:26 1993
---- mh/sbr/ruserpass.c Tue Feb  9 07:43:27 1993
-***************
-*** 0 ****
---- 1,216 ----
-+ /*
-+  * Copyright (c) 1985 Regents of the University of California.
-+  * All rights reserved.
-+  *
-+  * Redistribution and use in source and binary forms are permitted
-+  * provided that the above copyright notice and this paragraph are
-+  * duplicated in all such forms and that any documentation,
-+  * advertising materials, and other materials related to such
-+  * distribution and use acknowledge that the software was developed
-+  * by the University of California, Berkeley.  The name of the
-+  * University may not be used to endorse or promote products derived
-+  * from this software without specific prior written permission.
-+  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
-+  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-+  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-+  */
-+ 
-+ #ifndef lint
-+ static char sccsid[] = "@(#)ruserpass.c      5.1 (Berkeley) 3/1/89";
-+ #endif /* not lint */
-+ 
-+ #include <sys/types.h>
-+ #include <sys/stat.h>
-+ #include <stdio.h>
-+ #include <ctype.h>
-+ #include <pwd.h>
-+ #include <errno.h>
-+ 
-+ char *malloc(), *index(), *getenv(), *getpass(), *getlogin();
-+ char *strcpy();
-+ static       FILE *cfile;
-+ 
-+ #ifndef MAXHOSTNAMELEN
-+ #define MAXHOSTNAMELEN 64
-+ #endif
-+ 
-+ #define      DEFAULT 1
-+ #define      LOGIN   2
-+ #define      PASSWD  3
-+ #define      ACCOUNT 4
-+ #define MACDEF  5
-+ #define      ID      10
-+ #define      MACH    11
-+ 
-+ static int token();
-+ static char tokval[100];
-+ 
-+ static struct toktab {
-+      char *tokstr;
-+      int tval;
-+ } toktab[]= {
-+      "default",      DEFAULT,
-+      "login",        LOGIN,
-+      "password",     PASSWD,
-+      "passwd",       PASSWD,
-+      "account",      ACCOUNT,
-+      "machine",      MACH,
-+      "macdef",       MACDEF,
-+      0,              0
-+ };
-+ 
-+ ruserpass(host, aname, apass)
-+      char *host, **aname, **apass;
-+ {
-+      char *hdir, buf[BUFSIZ], *tmp;
-+      char myname[MAXHOSTNAMELEN], *mydomain;
-+      int t, i, c, usedefault = 0;
-+      struct stat stb;
-+      extern int errno;
-+ 
-+      hdir = getenv("HOME");
-+      if (hdir == NULL)
-+              hdir = ".";
-+      (void) sprintf(buf, "%s/.netrc", hdir);
-+      cfile = fopen(buf, "r");
-+      if (cfile == NULL) {
-+              if (errno != ENOENT)
-+                      perror(buf);
-+              goto done;
-+      }
-+ 
-+      while ((t = token())) switch(t) {
-+      case DEFAULT:
-+              usedefault = 1;
-+              /* FALL THROUGH */
-+ 
-+      case MACH:
-+              if (!usedefault) {
-+                      if (token() != ID)
-+                              continue;
-+                      /*
-+                       * Allow match either for user's host name.
-+                       */
-+                      if (strcasecmp(host, tokval) == 0)
-+                              goto match;
-+                      continue;
-+              }
-+      match:
-+              while ((t = token()) && t != MACH && t != DEFAULT) switch(t) {
-+ 
-+              case LOGIN:
-+                      if (token() && *aname == 0) {
-+                              *aname = malloc((unsigned) strlen(tokval) + 1);
-+                              (void) strcpy(*aname, tokval);
-+                      }
-+                      break;
-+              case PASSWD:
-+                      if (fstat(fileno(cfile), &stb) >= 0 &&
-+                          (stb.st_mode & 077) != 0) {
-+      fprintf(stderr, "Error - .netrc file not correct mode.\n");
-+      fprintf(stderr, "Remove password or correct mode.\n");
-+                              goto bad;
-+                      }
-+                      if (token() && *apass == 0) {
-+                              *apass = malloc((unsigned) strlen(tokval) + 1);
-+                              (void) strcpy(*apass, tokval);
-+                      }
-+                      break;
-+              case ACCOUNT:
-+                      break;
-+ 
-+              case MACDEF:
-+                      goto done_close;
-+                      break;
-+              default:
-+      fprintf(stderr, "Unknown .netrc keyword %s\n", tokval);
-+                      break;
-+              }
-+              goto done;
-+      }
-+ 
-+ done_close:
-+      (void) fclose(cfile);
-+ 
-+ done:
-+      if (!*aname) {
-+              char tmp[80];
-+              char *myname;
-+ 
-+              if ((myname = getlogin()) == NULL) {
-+                      struct passwd *pp;
-+ 
-+                      if ((pp = getpwuid (getuid())) != NULL)
-+                              myname = pp->pw_name;
-+              }
-+              printf("Name (%s:%s): ", host, myname);
-+ 
-+              (void) fgets(tmp, sizeof(tmp) - 1, stdin);
-+              tmp[strlen(tmp) - 1] = '\0';
-+              if (*tmp != '\0') {
-+                      myname = tmp;
-+              }
-+ 
-+              *aname = malloc((unsigned) strlen(myname) + 1);
-+              strcpy (*aname, myname);
-+      }
-+ 
-+      if (!*apass) {
-+              char prompt[256];
-+              char *mypass;
-+ 
-+              sprintf(prompt, "Password (%s:%s): ", host, *aname);
-+              mypass = getpass (prompt);
-+      
-+              if (*mypass == '\0') {
-+                      mypass = *aname;
-+              }
-+ 
-+              *apass = malloc((unsigned) strlen(mypass) + 1);
-+              strcpy (*apass, mypass);
-+      }
-+ 
-+      return(0);
-+ bad:
-+      (void) fclose(cfile);
-+      return(-1);
-+ }
-+ 
-+ static int
-+ token()
-+ {
-+      char *cp;
-+      int c;
-+      struct toktab *t;
-+ 
-+      if (feof(cfile))
-+              return (0);
-+      while ((c = getc(cfile)) != EOF &&
-+          (c == '\n' || c == '\t' || c == ' ' || c == ','))
-+              continue;
-+      if (c == EOF)
-+              return (0);
-+      cp = tokval;
-+      if (c == '"') {
-+              while ((c = getc(cfile)) != EOF && c != '"') {
-+                      if (c == '\\')
-+                              c = getc(cfile);
-+                      *cp++ = c;
-+              }
-+      } else {
-+              *cp++ = c;
-+              while ((c = getc(cfile)) != EOF
-+                  && c != '\n' && c != '\t' && c != ' ' && c != ',') {
-+                      if (c == '\\')
-+                              c = getc(cfile);
-+                      *cp++ = c;
-+              }
-+      }
-+      *cp = 0;
-+      if (tokval[0] == 0)
-+              return (0);
-+      for (t = toktab; t->tokstr; t++)
-+              if (!strcmp(t->tokstr, tokval))
-+                      return (t->tval);
-+      return (ID);
-+ }
-diff -c mh/uip/replsbr.c:1.1.1.1 mh/uip/replsbr.c:1.2
-*** mh/uip/replsbr.c:1.1.1.1   Tue Feb  9 07:43:44 1993
---- mh/uip/replsbr.c   Tue Feb  9 07:43:45 1993
-***************
-*** 1,6 ****
-  /* replsbr.c - routines to help repl along... */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: replsbr.c,v 1.13 1992/12/15 00:20:22 jromine 
Exp $";
-  #endif       /* lint */
-  
-  #include "../h/mh.h"
---- 1,6 ----
-  /* replsbr.c - routines to help repl along... */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: replsbr.c,v 1.1.1.1 1993/01/30 04:41:38 jtc 
Exp $";
-  #endif       /* lint */
-  
-  #include "../h/mh.h"
-***************
-*** 422,427 ****
---- 422,431 ----
-           (void) dup2 (fileno (out), fileno (stdout));
-           closefds (3);
-  
-+ #ifdef _FSTDIO
-+          /* <sigh> the code assumed that rewind does this. */
-+          lseek (fileno(stdin), 0, SEEK_SET);
-+ #endif
-           execlp (mhlproc, mhl, "-form", filter, "-noclear", NULLCP);
-           fprintf (stderr, "unable to exec ");
-           perror (mhlproc);
-diff -c mh/uip/scansbr.c:1.1.1.1 mh/uip/scansbr.c:1.2
-*** mh/uip/scansbr.c:1.1.1.1   Tue Feb  9 07:43:46 1993
---- mh/uip/scansbr.c   Tue Feb  9 07:43:46 1993
-***************
-*** 1,6 ****
-  /* scansbr.c - routines to help scan along... */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: scansbr.c,v 1.13 1992/12/15 00:20:22 jromine 
Exp $";
-  #endif       /* lint */
-  
-  #include "../h/mh.h"
---- 1,6 ----
-  /* scansbr.c - routines to help scan along... */
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: scansbr.c,v 1.1.1.1 1993/01/30 04:41:39 jtc 
Exp $";
-  #endif       /* lint */
-  
-  #include "../h/mh.h"
-***************
-*** 13,18 ****
---- 13,22 ----
-  #include <sys/types.h>
-  #include <sys/stat.h>
-  
-+ #ifdef _FSTDIO
-+ #define       _ptr    _p              /* Gag */
-+ #define       _cnt    _w              /* Wretch */
-+ #endif
-  
-  #define MAXSCANL 256         /* longest possible scan line */
-  #define SBUFSIZ 512          /* buffer size for content part of header
-diff -c /dev/null mh/zotnet/tws/dtimep.c-lexed:1.1
-*** /dev/null  Tue Feb  9 07:43:58 1993
---- mh/zotnet/tws/dtimep.c-lexed       Tue Feb  9 07:43:58 1993
-***************
-*** 0 ****
---- 1,1346 ----
-+ # include "stdio.h"
-+ static int start_cond = 0;
-+ #define BEGIN start_cond =
-+ struct yysvf { 
-+      struct yywork *yystoff;
-+      struct yysvf *yyother;
-+      int *yystops;};
-+ # define Z 2
-+ #ifndef      lint
-+ static char ident[] = "@(#)$Id: dtimep.lex,v 1.1 1991/04/26 21:51:10 sww Exp 
$";
-+ #endif
-+ #include "tws.h"
-+ #include "../h/strings.h"
-+ #include <ctype.h>
-+ #include <sys/types.h>
-+ #if !defined(SYS5) && !defined(ZONEINFO)
-+ #include <sys/timeb.h>
-+ #endif /* !defined(SYS5) && !defined(ZONEINFO) */
-+ 
-+ #ifdef SYS5
-+ extern long timezone;
-+ #endif SYS5
-+ 
-+ /*
-+  * Patchable flag that says how to interpret NN/NN/NN dates. When
-+  * true, we do it European style: DD/MM/YY. When false, we do it
-+  * American style: MM/DD/YY.  Of course, these are all non-RFC822
-+  * compliant.
-+  */
-+ int europeandate = 0;
-+ 
-+ /*
-+  * Table to convert month names to numeric month.  We use the
-+  * fact that the low order 5 bits of the sum of the 2nd & 3rd
-+  * characters of the name is a hash with no collisions for the 12
-+  * valid month names.  (The mask to 5 bits maps any combination of
-+  * upper and lower case into the same hash value).
-+  */
-+ static       int month_map[] = {
-+      0,
-+      6,      /* 1 - Jul */
-+      3,      /* 2 - Apr */
-+      5,      /* 3 - Jun */
-+      0,
-+      10,     /* 5 - Nov */
-+      0,
-+      1,      /* 7 - Feb */
-+      11,     /* 8 - Dec */
-+      0,
-+      0,
-+      0,
-+      0,
-+      0,
-+      0,
-+      0,      /*15 - Jan */
-+      0,
-+      0,
-+      0,
-+      2,      /*19 - Mar */
-+      0,
-+      8,      /*21 - Sep */
-+      0,
-+      9,      /*23 - Oct */
-+      0,
-+      0,
-+      4,      /*26 - May */
-+      0,
-+      7       /*28 - Aug */
-+ };
-+ /*
-+  * Same trick for day-of-week using the hash function
-+  *  (c1 & 7) + (c2 & 4)
-+  */
-+ static       int day_map[] = {
-+      0,
-+      0,
-+      0,
-+      6,      /* 3 - Sat */
-+      4,      /* 4 - Thu */
-+      0,
-+      5,      /* 6 - Fri */
-+      0,      /* 7 - Sun */
-+      2,      /* 8 - Tue */
-+      1       /* 9 - Mon */,
-+      0,
-+      3       /*11 - Wed */
-+ };
-+ #define SETDAY       { tw.tw_wday= day_map[(cp[0] & 7) + (cp[1] & 4)];\
-+              tw.tw_flags &= ~TW_SDAY; tw.tw_flags |= TW_SEXP;\
-+              cp += 2; }
-+ #define SETMONTH { tw.tw_mon = month_map[(cp[0] + cp[1]) & 0x1f]; gotdate++;\
-+               cp += 2;\
-+               SKIPD;}
-+ #define CVT2 (i=(*cp++ - '0'),isdigit(*cp)? i*10 + (*cp++ - '0') : i)
-+ #define SKIPD        { while ( !isdigit(*cp++) ) ;  --cp; }
-+ #define EXPZONE      { tw.tw_flags &= ~TW_SZONE; tw.tw_flags |= TW_SZEXP; }
-+ #define ZONE(x)      { tw.tw_zone=(x); EXPZONE; }
-+ #define ZONED(x) { ZONE(x); tw.tw_flags |= TW_DST; }
-+ #define      LC(c)   (isupper (c) ? tolower (c) : (c))
-+ 
-+ #ifdef       DSTXXX
-+ #ifndef      BSD42
-+ #include <time.h>
-+ #else        BSD42
-+ #include <sys/time.h>
-+ #endif       BSD42
-+ 
-+ static       zonehack (tw)
-+ register struct tws *tw;
-+ {
-+     register struct tm *tm;
-+ 
-+     if (twclock (tw) == -1L)
-+      return;
-+ 
-+     tm = localtime (&tw -> tw_clock);
-+     if (tm -> tm_isdst) {
-+      tw -> tw_flags |= TW_DST;
-+      tw -> tw_zone -= 60;
-+     }
-+ }
-+ #endif       DSTXXX
-+ struct tws *dparsetime (str)
-+      char *str;
-+ {
-+      register int i;
-+      static struct tws tw;
-+      register char *cp;
-+      register int gotdate = 0;
-+ #ifndef SYS5
-+ #ifdef ZONEINFO
-+      struct tm      *tm;
-+      time_t          clock;
-+ #else
-+      struct timeb    tb;
-+ #endif       /* ZONEINFO */
-+ #endif       /* not SYS5 */
-+ 
-+      start_cond = 0;
-+ 
-+      /* Zero out the struct. */
-+      bzero( (char *) &tw, sizeof tw);
-+ 
-+      /* Set default time zone. */
-+ #ifdef SYS5
-+      tzset( );
-+      tw.tw_zone = -(timezone / 60);
-+ #else
-+ #ifdef ZONEINFO
-+      time (&clock);
-+      tm = localtime(&clock);
-+      tw.tw_zone = tm->tm_gmtoff / 60;
-+      if (tm -> tm_isdst)                     /* if DST is in effect */
-+              tw.tw_zone -= 60;               /* reset to normal offset */
-+ #else
-+      ftime( &tb );
-+      tw.tw_zone = -tb.timezone;
-+ #endif       /* ZONEINFO */
-+ #endif       /* SYS5 */
-+ 
-+      while (isspace(*str))
-+              str++;
-+      while ( 1 )
-+              switch (cp = str, *cp ? lex_string( &str, start_cond) : 0) {
-+ 
-+              case -1:
-+                      if (!gotdate || tw.tw_year == 0)
-+                              return 0;
-+                      /* fall through */
-+              case 0:
-+                      return &tw;
-+ 
-+ case 1:
-+                      SETDAY;
-+ break;
-+ case 2:
-+              {
-+                                      cp++;
-+                                      SETDAY;
-+                                      }
-+ break;
-+ case 3:
-+      {
-+                                      if (europeandate) {
-+                                              /* European: DD/MM/YY */
-+                                              tw.tw_mday = CVT2;
-+                                              cp++;
-+                                              tw.tw_mon  = CVT2 - 1;
-+                                      } else {
-+                                              /* American: MM/DD/YY */
-+                                              tw.tw_mon  = CVT2 - 1;
-+                                              cp++;
-+                                              tw.tw_mday = CVT2;
-+                                      }
-+                                      cp++;
-+                                      for (i = 0; isdigit(*cp); )
-+                                              i = i*10 + (*cp++ - '0');
-+                                      tw.tw_year = i % 100;
-+                                      }
-+ break;
-+ case 4:
-+ {
-+                                      tw.tw_mday = CVT2;
-+                                      while ( !isalpha(*cp++) )
-+                                              ;
-+                                      SETMONTH;
-+                                      for (i = 0; isdigit(*cp); )
-+                                              i = i*10 + (*cp++ - '0');
-+                                      tw.tw_year = i % 100;
-+                                      }
-+ break;
-+ case 5:
-+      {
-+                                      cp++;
-+                                      SETMONTH;
-+                                      tw.tw_mday = CVT2;
-+                                      SKIPD;
-+                                      for (i = 0; isdigit(*cp); )
-+                                              i = i*10 + (*cp++ - '0');
-+                                      tw.tw_year = i % 100;
-+                                      }
-+ break;
-+ case 6:
-+              {
-+                                      cp++;
-+                                      SETMONTH;
-+                                      tw.tw_mday = CVT2;
-+                                      }
-+ break;
-+ case 7:
-+      {       /* hack: ctime w/o TZ */
-+                                      tw.tw_hour = CVT2; cp++;
-+                                      tw.tw_min  = CVT2; cp++;
-+                                      tw.tw_sec  = CVT2;
-+                                      while( !isdigit(*cp++) )
-+                                              ;
-+                                      cp++;
-+                                      tw.tw_year = CVT2;
-+                                      }
-+ break;
-+ case 8:
-+                      {
-+                                      tw.tw_hour = CVT2; cp++;
-+                                      tw.tw_min  = CVT2; cp++;
-+                                      tw.tw_sec  = CVT2;
-+                                      BEGIN Z;
-+                                      }
-+ break;
-+ case 9:
-+                      {
-+                                      tw.tw_hour = CVT2; cp++;
-+                                      tw.tw_min = CVT2;
-+                                      BEGIN Z;
-+                                      }
-+ break;
-+ case 10:
-+                      {
-+                                      tw.tw_hour = CVT2; cp++;
-+                                      if (tw.tw_hour == 12)
-+                                              tw.tw_hour = 0;
-+                                      tw.tw_min  = CVT2;
-+                                      BEGIN Z;
-+                                      }
-+ break;
-+ case 11:
-+                      {
-+                                      tw.tw_hour = CVT2; cp++;
-+                                      if (tw.tw_hour != 12)
-+                                              tw.tw_hour += 12;
-+                                      tw.tw_min  = CVT2;
-+                                      BEGIN Z;
-+                                      }
-+ break;
-+ case 12:
-+              {
-+                                      tw.tw_hour = CVT2;
-+                                      tw.tw_min  = CVT2;
-+                                      tw.tw_sec  = CVT2;
-+                                      BEGIN Z;
-+                                      }
-+ break;
-+ case 13:
-+                      {
-+                                      /*
-+                                       * Luckly, 4 digit times in the range
-+                                       * 1960-1999 aren't legal as hour
-+                                       * and minutes.
-+                                       */
-+                                      cp += 2;
-+                                      tw.tw_year = CVT2;
-+                                      }
-+ break;
-+ case 14:
-+              {
-+                                      if (tw.tw_hour) {
-+                                          cp += 2;
-+                                          tw.tw_year = CVT2;
-+                                          tw.tw_zone = 0;
-+                                      } else {
-+                                          tw.tw_hour = CVT2;
-+                                          tw.tw_min  = CVT2;
-+                                          BEGIN Z;
-+                                      }
-+                                      }
-+ break;
-+ case 15:
-+                      ZONE(0 * 60);
-+ break;
-+ case 16:
-+                      ZONE(0 * 60);
-+ break;
-+ case 17:
-+                      ZONE(2 * 60);
-+ break;
-+ case 18:
-+                      ZONED(2 * 60);
-+ break;
-+ case 19:
-+                      ZONE(-5 * 60);
-+ break;
-+ case 20:
-+                      ZONED(-5 * 60);
-+ break;
-+ case 21:
-+                      ZONE(-6 * 60);
-+ break;
-+ case 22:
-+                      ZONED(-6 * 60);
-+ break;
-+ case 23:
-+                      ZONE(-7 * 60);
-+ break;
-+ case 24:
-+                      ZONED(-7 * 60);
-+ break;
-+ case 25:
-+                      ZONE(-8 * 60);
-+ break;
-+ case 26:
-+                      ZONED(-8 * 60);
-+ break;
-+ case 27:
-+                      ZONE(-(3 * 60 + 30));
-+ break;
-+ case 28:
-+                      ZONE(-4 * 60);
-+ break;
-+ case 29:
-+                      ZONED(-4 * 60);
-+ break;
-+ case 30:
-+                      ZONE(-9 * 60);
-+ break;
-+ case 31:
-+                      ZONED(-9 * 60);
-+ break;
-+ case 32:
-+                      ZONE(-10 * 60);
-+ break;
-+ case 33:
-+                      ZONED(-10 * 60);
-+ break;
-+ case 34:
-+                      ZONED(0 * 60);
-+ break;
-+ case 35:
-+                      {
-+                                      tw.tw_zone = 60 * (('a'-1) - LC(*cp));
-+                                      EXPZONE; 
-+                                      }
-+ break;
-+ case 36:
-+                      {
-+                                      tw.tw_zone = 60 * ('a' - LC(*cp));
-+                                      EXPZONE; 
-+                                      }
-+ break;
-+ case 37:
-+                      {
-+                                      tw.tw_zone = 60 * (LC(*cp) - 'm');
-+                                      EXPZONE; 
-+                                      }
-+ break;
-+ case 38:
-+              {
-+                                      cp++;
-+                                      tw.tw_zone = ((cp[0] * 10 + cp[1])
-+                                                   -('0' * 10   + '0'))*60
-+                                                  +((cp[2] * 10 + cp[3])
-+                                                   -('0' * 10   + '0'));
-+                                      EXPZONE;
-+ #ifdef       DSTXXX
-+                                      zonehack (&tw);
-+ #endif       DSTXXX
-+                                      cp += 4;
-+                                      }
-+ break;
-+ case 39:
-+              {
-+                                      cp++;
-+                                      tw.tw_zone = (('0' * 10   + '0')
-+                                                   -(cp[0] * 10 + cp[1]))*60
-+                                                  +(('0' * 10   + '0')
-+                                                   -(cp[2] * 10 + cp[3]));
-+                                      EXPZONE;
-+ #ifdef       DSTXXX
-+                                      zonehack (&tw);
-+ #endif       DSTXXX
-+                                      cp += 4;
-+                                      }
-+ break;
-+ case 40:
-+              {
-+                                      while( !isdigit(*cp++) )
-+                                              ;
-+                                      cp++;
-+                                      tw.tw_year = CVT2;
-+                                      }
-+ break;
-+ case 41:
-+ case 42:
-+ ;
-+ break;
-+ default: return(0);
-+ } }
-+ /* end of yylex */
-+ int yyvstop[] ={
-+ 0,
-+ 
-+ 42,
-+ 0,
-+ 
-+ 41,
-+ 0,
-+ 
-+ 42,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 35,
-+ 0,
-+ 
-+ 36,
-+ 0,
-+ 
-+ 36,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 37,
-+ 0,
-+ 
-+ 15,
-+ 0,
-+ 
-+ 9,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 29,
-+ 0,
-+ 
-+ 28,
-+ 0,
-+ 
-+ 34,
-+ 0,
-+ 
-+ 22,
-+ 0,
-+ 
-+ 21,
-+ 0,
-+ 
-+ 20,
-+ 0,
-+ 
-+ 19,
-+ 0,
-+ 
-+ 16,
-+ 0,
-+ 
-+ 33,
-+ 0,
-+ 
-+ 32,
-+ 0,
-+ 
-+ 18,
-+ 0,
-+ 
-+ 17,
-+ 0,
-+ 
-+ 24,
-+ 0,
-+ 
-+ 23,
-+ 0,
-+ 
-+ 27,
-+ 0,
-+ 
-+ 26,
-+ 0,
-+ 
-+ 25,
-+ 0,
-+ 
-+ 31,
-+ 0,
-+ 
-+ 30,
-+ 0,
-+ 
-+ 14,
-+ 0,
-+ 
-+ 9,
-+ 0,
-+ 
-+ 9,
-+ 0,
-+ 
-+ 13,
-+ 14,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 2,
-+ 0,
-+ 
-+ 14,
-+ 0,
-+ 
-+ 8,
-+ 0,
-+ 
-+ 10,
-+ 0,
-+ 
-+ 11,
-+ 0,
-+ 
-+ 4,
-+ 0,
-+ 
-+ 4,
-+ 0,
-+ 
-+ 13,
-+ 14,
-+ 0,
-+ 
-+ 6,
-+ 0,
-+ 
-+ 40,
-+ 0,
-+ 
-+ 38,
-+ 0,
-+ 
-+ 39,
-+ 0,
-+ 
-+ 2,
-+ 0,
-+ 
-+ 3,
-+ 0,
-+ 
-+ 3,
-+ 0,
-+ 
-+ 12,
-+ 0,
-+ 
-+ 8,
-+ 0,
-+ 
-+ 8,
-+ 0,
-+ 
-+ 4,
-+ 0,
-+ 
-+ 4,
-+ 0,
-+ 
-+ 4,
-+ 0,
-+ 
-+ 6,
-+ 0,
-+ 
-+ 6,
-+ 0,
-+ 
-+ 1,
-+ 0,
-+ 
-+ 4,
-+ 0,
-+ 
-+ 5,
-+ 0,
-+ 
-+ 5,
-+ 0,
-+ 
-+ 5,
-+ 0,
-+ 
-+ 5,
-+ 0,
-+ 
-+ 7,
-+ 0,
-+ 0};
-+ # define YYTYPE int
-+ struct yywork { YYTYPE verify, advance; } yycrank[] ={
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    1,5,    1,6,    
-+ 5,5, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 21,21,  0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 1,5,    0,0,    5,5,    
-+ 3,21,        3,6,    0,0,    0,0,    
-+ 0,0, 1,7,    0,0,    0,0,    
-+ 21,21,       0,0,    0,0,    0,0,    
-+ 0,0, 1,8,    1,9,    1,8,    
-+ 1,10,        1,10,   1,10,   1,10,   
-+ 1,10,        1,10,   1,10,   3,21,   
-+ 9,63,        21,82,  22,83,  22,83,  
-+ 0,0, 0,0,    0,0,    3,7,    
-+ 0,0, 0,0,    3,22,   0,0,    
-+ 3,23,        0,0,    0,0,    3,8,    
-+ 3,9, 3,8,    3,10,   3,10,   
-+ 3,10,        3,10,   3,10,   3,10,   
-+ 3,10,        10,64,  10,64,  10,64,  
-+ 10,64,       10,64,  10,64,  10,64,  
-+ 10,64,       10,64,  10,64,  0,0,    
-+ 0,0, 0,0,    1,11,   15,72,  
-+ 0,0, 1,12,   14,70,  1,13,   
-+ 12,67,       13,68,  17,75,  1,14,   
-+ 19,79,       20,81,  1,15,   1,16,   
-+ 1,17,        15,73,  11,65,  16,74,  
-+ 1,18,        1,19,   13,69,  11,66,  
-+ 1,20,        19,80,  14,71,  25,99,  
-+ 3,24,        3,25,   3,26,   3,27,   
-+ 3,28,        3,29,   3,30,   3,31,   
-+ 3,32,        3,33,   3,34,   3,34,   
-+ 3,35,        3,36,   3,37,   3,38,   
-+ 3,39,        3,39,   3,40,   3,41,   
-+ 3,42,        3,39,   3,43,   3,39,   
-+ 3,44,        7,45,   8,50,   18,76,  
-+ 23,84,       23,84,  30,104, 18,77,  
-+ 7,46,        24,97,  42,114, 45,117, 
-+ 26,100,      28,102, 7,47,   7,48,   
-+ 31,105,      33,70,  7,49,   38,112, 
-+ 33,107,      24,65,  46,118, 18,78,  
-+ 24,98,       8,50,   24,66,  26,101, 
-+ 28,103,      36,74,  49,123, 31,106, 
-+ 56,129,      36,111, 38,113, 33,108, 
-+ 47,119,      33,71,  8,51,   57,130, 
-+ 8,52,        8,53,   8,53,   8,53,   
-+ 8,53,        8,53,   8,53,   8,53,   
-+ 8,53,        8,53,   8,53,   8,54,   
-+ 44,115,      23,85,  23,86,  23,87,  
-+ 47,120,      23,88,  35,72,  23,89,  
-+ 23,90,       35,109, 23,91,  59,133, 
-+ 50,50,       23,92,  23,93,  44,116, 
-+ 23,94,       48,121, 55,127, 58,131, 
-+ 35,73,       23,95,  60,134, 55,128, 
-+ 35,110,      23,96,  61,135, 62,136, 
-+ 65,138,      64,52,  48,122, 51,51,  
-+ 66,139,      67,140, 68,141, 50,50,  
-+ 69,142,      70,143, 8,55,   58,132, 
-+ 64,54,       8,56,   71,144, 8,57,   
-+ 71,145,      73,148, 72,146, 8,58,   
-+ 50,51,       74,149, 8,59,   8,60,   
-+ 8,61,        72,147, 51,51,  75,150, 
-+ 8,62,        52,124, 52,124, 52,124, 
-+ 52,124,      52,124, 52,124, 52,124, 
-+ 52,124,      52,124, 52,124, 53,125, 
-+ 53,125,      53,125, 53,125, 53,125, 
-+ 53,125,      53,125, 53,125, 53,125, 
-+ 53,125,      54,126, 54,126, 54,126, 
-+ 54,126,      54,126, 54,126, 54,126, 
-+ 54,126,      54,126, 54,126, 63,125, 
-+ 63,125,      63,125, 63,125, 63,125, 
-+ 63,125,      63,137, 63,137, 63,137, 
-+ 63,137,      76,151, 77,152, 78,153, 
-+ 50,55,       79,154, 80,155, 50,56,  
-+ 81,156,      50,57,  82,157, 93,111, 
-+ 85,97,       50,58,  91,107, 92,109, 
-+ 50,59,       50,60,  50,61,  97,160, 
-+ 98,161,      99,162, 50,62,  51,55,  
-+ 100,163,     101,164,        51,56,  85,98,  
-+ 51,57,       91,108, 92,110, 102,165,        
-+ 51,58,       103,166,        104,167,        51,59,  
-+ 51,60,       51,61,  105,168,        106,169,        
-+ 107,170,     51,62,  83,158, 83,158, 
-+ 83,158,      83,158, 83,158, 83,158, 
-+ 83,158,      83,158, 83,158, 83,158, 
-+ 84,159,      84,159, 84,159, 84,159, 
-+ 84,159,      84,159, 84,159, 84,159, 
-+ 84,159,      84,159, 108,171,        109,172,        
-+ 110,173,     111,174,        112,175,        113,176,        
-+ 115,177,     116,178,        117,179,        118,180,        
-+ 119,181,     120,182,        121,183,        122,184,        
-+ 123,185,     124,186,        124,187,        124,187,        
-+ 124,187,     124,187,        124,187,        124,187,        
-+ 124,187,     124,187,        124,187,        124,187,        
-+ 125,188,     125,188,        125,188,        125,188,        
-+ 125,188,     125,188,        125,188,        125,188,        
-+ 125,188,     125,188,        126,189,        127,194,        
-+ 128,195,     129,196,        130,197,        131,198,        
-+ 132,199,     133,201,        132,200,        134,203,        
-+ 135,204,     136,205,        138,207,        139,207,        
-+ 133,202,     140,207,        143,214,        145,147,        
-+ 148,216,     149,217,        150,218,        152,220,        
-+ 153,221,     126,189,        137,206,        137,206,        
-+ 137,206,     137,206,        137,206,        137,206,        
-+ 137,206,     137,206,        137,206,        137,206,        
-+ 141,207,     138,207,        139,207,        142,212,        
-+ 140,207,     126,190,        126,190,        126,190,        
-+ 126,190,     126,190,        126,190,        126,190,        
-+ 126,190,     126,190,        126,190,        126,191,        
-+ 144,207,     146,207,        147,207,        180,230,        
-+ 154,212,     151,212,        156,212,        141,207,        
-+ 155,212,     182,232,        142,212,        157,225,        
-+ 157,225,     157,225,        157,225,        179,228,        
-+ 181,228,     183,228,        187,186,        184,228,        
-+ 190,191,     192,241,        142,212,        144,207,        
-+ 146,207,     147,207,        185,228,        154,212,        
-+ 151,212,     156,212,        193,242,        155,212,        
-+ 198,250,     200,202,        203,252,        204,253,        
-+ 205,254,     208,147,        126,192,        154,212,        
-+ 151,212,     156,212,        209,257,        155,212,        
-+ 210,258,     211,259,        206,255,        212,212,        
-+ 213,260,     214,261,        215,147,        216,262,        
-+ 217,263,     126,193,        218,264,        219,265,        
-+ 220,266,     140,210,        138,208,        158,226,        
-+ 158,226,     158,226,        158,226,        158,226,        
-+ 158,226,     158,226,        158,226,        158,226,        
-+ 158,226,     206,255,        212,212,        139,209,        
-+ 221,267,     222,268,        179,229,        223,269,        
-+ 224,270,     228,274,        142,213,        159,227,        
-+ 159,227,     159,227,        159,227,        159,227,        
-+ 159,227,     159,227,        159,227,        159,227,        
-+ 159,227,     141,211,        183,233,        146,215,        
-+ 181,231,     184,234,        188,238,        185,235,        
-+ 186,236,     186,237,        186,236,        186,236,        
-+ 186,236,     186,236,        186,236,        186,236,        
-+ 186,236,     186,236,        189,189,        156,224,        
-+ 194,202,     154,222,        229,275,        230,276,        
-+ 144,147,     151,219,        155,223,        231,277,        
-+ 232,278,     188,238,        191,240,        191,240,        
-+ 191,240,     191,240,        191,240,        191,240,        
-+ 191,240,     191,240,        191,240,        191,240,        
-+ 233,279,     189,189,        234,280,        194,202,        
-+ 235,281,     188,239,        188,239,        188,239,        
-+ 188,239,     188,239,        188,239,        188,239,        
-+ 188,239,     188,239,        188,239,        195,202,        
-+ 194,243,     237,283,        238,238,        194,244,        
-+ 194,245,     194,244,        194,244,        194,244,        
-+ 194,244,     194,244,        194,244,        194,244,        
-+ 194,244,     241,241,        242,242,        245,290,        
-+ 246,202,     247,291,        248,292,        249,293,        
-+ 250,294,     251,202,        195,202,        252,295,        
-+ 253,296,     238,238,        254,297,        257,147,        
-+ 196,202,     255,255,        258,301,        259,302,        
-+ 260,303,     261,304,        263,305,        195,243,        
-+ 241,241,     242,242,        195,244,        195,245,        
-+ 195,244,     195,244,        195,244,        195,244,        
-+ 195,244,     195,244,        195,244,        195,244,        
-+ 264,306,     265,307,        189,192,        196,202,        
-+ 255,255,     266,308,        197,202,        268,309,        
-+ 269,310,     270,311,        275,312,        277,313,        
-+ 194,246,     279,314,        280,315,        281,316,        
-+ 196,243,     189,193,        282,282,        196,244,        
-+ 196,245,     196,244,        196,244,        196,244,        
-+ 196,244,     196,244,        196,244,        196,244,        
-+ 196,244,     197,202,        289,318,        291,202,        
-+ 284,284,     286,285,        199,202,        288,288,        
-+ 292,319,     293,320,        294,321,        295,322,        
-+ 296,323,     282,282,        197,243,        297,324,        
-+ 283,282,     197,244,        197,245,        197,244,        
-+ 197,244,     197,244,        197,244,        197,244,        
-+ 197,244,     197,244,        197,244,        284,284,        
-+ 286,285,     199,202,        288,288,        195,247,        
-+ 201,202,     300,299,        298,298,        301,326,        
-+ 299,325,     302,327,        303,212,        283,282,        
-+ 304,147,     305,328,        199,243,        306,147,        
-+ 196,248,     199,244,        199,245,        199,244,        
-+ 199,244,     199,244,        199,244,        199,244,        
-+ 199,244,     199,244,        199,244,        201,202,        
-+ 283,236,     298,298,        202,202,        299,325,        
-+ 307,329,     308,330,        309,331,        311,332,        
-+ 312,228,     313,333,        314,334,        285,285,        
-+ 201,243,     207,207,        316,335,        201,244,        
-+ 201,245,     201,244,        201,244,        201,244,        
-+ 201,244,     201,244,        201,244,        201,244,        
-+ 201,244,     202,202,        317,336,        197,249,        
-+ 319,338,     320,339,        321,202,        322,340,        
-+ 323,202,     324,341,        285,285,        330,344,        
-+ 207,207,     332,345,        202,243,        335,346,        
-+ 318,337,     202,244,        202,245,        202,244,        
-+ 202,244,     202,244,        202,244,        202,244,        
-+ 202,244,     202,244,        202,244,        285,317,        
-+ 207,256,     207,256,        207,256,        207,256,        
-+ 207,256,     207,256,        207,256,        207,256,        
-+ 207,256,     207,256,        199,202,        318,337,        
-+ 341,348,     343,350,        201,251,        225,271,        
-+ 225,271,     225,271,        225,271,        225,271,        
-+ 225,271,     225,271,        225,271,        225,271,        
-+ 225,271,     226,272,        226,272,        226,272,        
-+ 226,272,     226,272,        226,272,        226,272,        
-+ 226,272,     226,272,        226,272,        227,273,        
-+ 227,273,     227,273,        227,273,        227,273,        
-+ 227,273,     227,273,        227,273,        227,273,        
-+ 227,273,     236,282,        236,282,        236,282,        
-+ 236,282,     236,282,        236,282,        236,282,        
-+ 236,282,     236,282,        236,282,        239,284,        
-+ 239,284,     239,284,        239,284,        239,284,        
-+ 239,284,     239,284,        239,284,        239,284,        
-+ 239,284,     240,285,        349,349,        287,287,        
-+ 336,347,     336,347,        336,347,        336,347,        
-+ 0,0, 0,0,    0,0,    243,243,        
-+ 347,351,     347,351,        347,351,        347,351,        
-+ 347,351,     347,351,        347,351,        347,351,        
-+ 347,351,     347,351,        0,0,    0,0,    
-+ 240,285,     349,349,        287,287,        0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    243,243,        0,0,    
-+ 0,0, 244,287,        287,288,        0,0,    
-+ 240,286,     240,286,        240,286,        240,286,        
-+ 240,286,     240,286,        240,286,        240,286,        
-+ 240,286,     240,286,        243,244,        243,245,        
-+ 243,244,     243,244,        243,244,        243,244,        
-+ 243,244,     243,244,        243,244,        243,244,        
-+ 244,287,     0,0,    0,0,    256,298,        
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 244,288,     0,0,    325,325,        0,0,    
-+ 244,287,     244,287,        244,287,        244,287,        
-+ 244,287,     244,287,        244,287,        244,287,        
-+ 244,287,     244,287,        256,298,        0,0,    
-+ 0,0, 290,287,        0,0,    287,289,        
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 325,325,        256,299,        0,0,    
-+ 342,349,     0,0,    256,300,        256,300,        
-+ 256,300,     256,300,        256,300,        256,300,        
-+ 256,300,     256,300,        256,300,        256,300,        
-+ 290,287,     325,342,        325,343,        325,342,        
-+ 325,342,     325,342,        325,342,        325,342,        
-+ 325,342,     325,342,        325,342,        342,349,        
-+ 290,288,     244,289,        350,349,        0,0,    
-+ 0,0, 290,244,        0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    342,349,        
-+ 342,349,     342,349,        342,349,        342,349,        
-+ 342,349,     342,349,        342,349,        342,349,        
-+ 342,349,     350,349,        0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    350,342,        0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 0,0,    0,0,    0,0,    
-+ 0,0, 290,289,        0,0,    0,0,    
-+ 0,0};
-+ struct yysvf yysvec[] ={
-+ 0,   0,      0,
-+ yycrank+1,   0,              0,      
-+ yycrank+0,   yysvec+1,       0,      
-+ yycrank+27,  0,              0,      
-+ yycrank+0,   yysvec+3,       0,      
-+ yycrank+3,   0,              yyvstop+1,
-+ yycrank+0,   0,              yyvstop+3,
-+ yycrank+47,  0,              0,      
-+ yycrank+141, 0,              0,      
-+ yycrank+3,   yysvec+8,       0,      
-+ yycrank+37,  yysvec+8,       0,      
-+ yycrank+2,   0,              0,      
-+ yycrank+3,   0,              0,      
-+ yycrank+4,   0,              0,      
-+ yycrank+5,   0,              0,      
-+ yycrank+2,   0,              0,      
-+ yycrank+4,   0,              0,      
-+ yycrank+7,   0,              0,      
-+ yycrank+54,  0,              0,      
-+ yycrank+4,   0,              0,      
-+ yycrank+8,   0,              0,      
-+ yycrank+12,  0,              yyvstop+5,
-+ yycrank+14,  0,              0,      
-+ yycrank+104, 0,              0,      
-+ yycrank+57,  0,              yyvstop+7,
-+ yycrank+8,   0,              yyvstop+9,
-+ yycrank+60,  0,              yyvstop+11,
-+ yycrank+0,   yysvec+12,      yyvstop+13,
-+ yycrank+61,  0,              yyvstop+15,
-+ yycrank+0,   yysvec+13,      yyvstop+17,
-+ yycrank+45,  0,              yyvstop+19,
-+ yycrank+64,  0,              yyvstop+21,
-+ yycrank+0,   0,              yyvstop+23,
-+ yycrank+68,  0,              0,      
-+ yycrank+0,   0,              yyvstop+25,
-+ yycrank+109, 0,              yyvstop+27,
-+ yycrank+66,  0,              yyvstop+29,
-+ yycrank+0,   yysvec+17,      yyvstop+31,
-+ yycrank+67,  0,              yyvstop+33,
-+ yycrank+0,   0,              yyvstop+35,
-+ yycrank+0,   yysvec+18,      yyvstop+37,
-+ yycrank+0,   yysvec+19,      yyvstop+39,
-+ yycrank+42,  0,              yyvstop+41,
-+ yycrank+0,   yysvec+20,      yyvstop+43,
-+ yycrank+100, 0,              yyvstop+45,
-+ yycrank+45,  0,              0,      
-+ yycrank+59,  0,              0,      
-+ yycrank+87,  0,              0,      
-+ yycrank+113, 0,              0,      
-+ yycrank+77,  0,              0,      
-+ yycrank+203, 0,              0,      
-+ yycrank+222, 0,              0,      
-+ yycrank+209, 0,              0,      
-+ yycrank+219, yysvec+8,       0,      
-+ yycrank+229, 0,              0,      
-+ yycrank+106, 0,              0,      
-+ yycrank+79,  0,              0,      
-+ yycrank+86,  0,              0,      
-+ yycrank+122, 0,              0,      
-+ yycrank+114, 0,              0,      
-+ yycrank+111, 0,              0,      
-+ yycrank+127, 0,              0,      
-+ yycrank+126, 0,              0,      
-+ yycrank+239, yysvec+8,       0,      
-+ yycrank+182, yysvec+50,      0,      
-+ yycrank+114, 0,              0,      
-+ yycrank+129, 0,              0,      
-+ yycrank+134, 0,              0,      
-+ yycrank+136, 0,              0,      
-+ yycrank+131, 0,              0,      
-+ yycrank+127, 0,              0,      
-+ yycrank+134, 0,              0,      
-+ yycrank+132, 0,              0,      
-+ yycrank+135, 0,              0,      
-+ yycrank+131, 0,              0,      
-+ yycrank+139, 0,              0,      
-+ yycrank+181, 0,              0,      
-+ yycrank+186, 0,              0,      
-+ yycrank+189, 0,              0,      
-+ yycrank+184, 0,              0,      
-+ yycrank+201, 0,              0,      
-+ yycrank+204, 0,              0,      
-+ yycrank+249, 0,              0,      
-+ yycrank+290, 0,              0,      
-+ yycrank+300, 0,              0,      
-+ yycrank+208, 0,              0,      
-+ yycrank+0,   yysvec+25,      0,      
-+ yycrank+0,   yysvec+26,      0,      
-+ yycrank+0,   yysvec+28,      0,      
-+ yycrank+0,   yysvec+30,      0,      
-+ yycrank+0,   yysvec+31,      0,      
-+ yycrank+210, 0,              0,      
-+ yycrank+211, 0,              0,      
-+ yycrank+192, 0,              0,      
-+ yycrank+0,   yysvec+38,      0,      
-+ yycrank+0,   yysvec+42,      0,      
-+ yycrank+0,   yysvec+44,      0,      
-+ yycrank+199, 0,              0,      
-+ yycrank+200, 0,              0,      
-+ yycrank+201, 0,              0,      
-+ yycrank+204, 0,              0,      
-+ yycrank+205, 0,              0,      
-+ yycrank+211, 0,              0,      
-+ yycrank+213, 0,              0,      
-+ yycrank+214, 0,              0,      
-+ yycrank+218, 0,              0,      
-+ yycrank+219, 0,              0,      
-+ yycrank+220, 0,              0,      
-+ yycrank+242, 0,              0,      
-+ yycrank+243, 0,              0,      
-+ yycrank+244, 0,              0,      
-+ yycrank+245, 0,              0,      
-+ yycrank+246, 0,              0,      
-+ yycrank+247, 0,              0,      
-+ yycrank+0,   0,              yyvstop+47,
-+ yycrank+248, 0,              0,      
-+ yycrank+249, 0,              0,      
-+ yycrank+261, 0,              0,      
-+ yycrank+257, 0,              0,      
-+ yycrank+252, 0,              0,      
-+ yycrank+259, 0,              0,      
-+ yycrank+253, 0,              0,      
-+ yycrank+270, 0,              0,      
-+ yycrank+272, 0,              0,      
-+ yycrank+326, 0,              0,      
-+ yycrank+336, 0,              0,      
-+ yycrank+385, 0,              yyvstop+49,
-+ yycrank+281, 0,              0,      
-+ yycrank+293, 0,              0,      
-+ yycrank+298, 0,              0,      
-+ yycrank+300, 0,              0,      
-+ yycrank+289, 0,              0,      
-+ yycrank+292, 0,              0,      
-+ yycrank+287, 0,              0,      
-+ yycrank+285, 0,              0,      
-+ yycrank+288, 0,              0,      
-+ yycrank+293, 0,              0,      
-+ yycrank+370, 0,              0,      
-+ yycrank+397, 0,              0,      
-+ yycrank+398, 0,              0,      
-+ yycrank+400, 0,              0,      
-+ yycrank+419, 0,              0,      
-+ yycrank+422, 0,              yyvstop+51,
-+ yycrank+293, yysvec+139,     0,      
-+ yycrank+435, 0,              0,      
-+ yycrank+310, yysvec+140,     0,      
-+ yycrank+436, 0,              0,      
-+ yycrank+437, 0,              0,      
-+ yycrank+312, yysvec+142,     yyvstop+53,
-+ yycrank+312, yysvec+140,     0,      
-+ yycrank+303, yysvec+147,     0,      
-+ yycrank+440, 0,              yyvstop+55,
-+ yycrank+299, yysvec+147,     0,      
-+ yycrank+316, yysvec+142,     yyvstop+57,
-+ yycrank+439, 0,              yyvstop+59,
-+ yycrank+443, 0,              yyvstop+61,
-+ yycrank+441, 0,              yyvstop+63,
-+ yycrank+401, 0,              0,      
-+ yycrank+455, 0,              0,      
-+ yycrank+475, 0,              0,      
-+ yycrank+0,   0,              yyvstop+65,
-+ yycrank+0,   0,              yyvstop+67,
-+ yycrank+0,   0,              yyvstop+69,
-+ yycrank+0,   0,              yyvstop+71,
-+ yycrank+0,   0,              yyvstop+73,
-+ yycrank+0,   0,              yyvstop+75,
-+ yycrank+0,   0,              yyvstop+77,
-+ yycrank+0,   0,              yyvstop+79,
-+ yycrank+0,   0,              yyvstop+81,
-+ yycrank+0,   0,              yyvstop+83,
-+ yycrank+0,   0,              yyvstop+85,
-+ yycrank+0,   0,              yyvstop+87,
-+ yycrank+0,   0,              yyvstop+89,
-+ yycrank+0,   0,              yyvstop+91,
-+ yycrank+0,   0,              yyvstop+93,
-+ yycrank+0,   0,              yyvstop+95,
-+ yycrank+0,   0,              yyvstop+97,
-+ yycrank+0,   0,              yyvstop+99,
-+ yycrank+0,   0,              yyvstop+101,
-+ yycrank+418, 0,              0,      
-+ yycrank+347, yysvec+179,     0,      
-+ yycrank+419, 0,              0,      
-+ yycrank+353, yysvec+179,     0,      
-+ yycrank+420, 0,              0,      
-+ yycrank+422, 0,              0,      
-+ yycrank+429, 0,              0,      
-+ yycrank+492, 0,              0,      
-+ yycrank+415, 0,              0,      
-+ yycrank+529, 0,              yyvstop+103,
-+ yycrank+541, 0,              yyvstop+105,
-+ yycrank+406, yysvec+189,     yyvstop+107,
-+ yycrank+514, 0,              0,      
-+ yycrank+356, 0,              0,      
-+ yycrank+365, 0,              0,      
-+ yycrank+543, 0,              0,      
-+ yycrank+578, 0,              0,      
-+ yycrank+607, 0,              0,      
-+ yycrank+633, 0,              0,      
-+ yycrank+359, yysvec+195,     0,      
-+ yycrank+661, 0,              0,      
-+ yycrank+376, yysvec+196,     0,      
-+ yycrank+687, 0,              0,      
-+ yycrank+713, 0,              0,      
-+ yycrank+377, yysvec+196,     0,      
-+ yycrank+368, yysvec+202,     0,      
-+ yycrank+364, yysvec+202,     0,      
-+ yycrank+481, yysvec+188,     yyvstop+109,
-+ yycrank+724, 0,              0,      
-+ yycrank+373, 0,              0,      
-+ yycrank+371, 0,              0,      
-+ yycrank+379, 0,              0,      
-+ yycrank+372, 0,              0,      
-+ yycrank+482, 0,              yyvstop+112,
-+ yycrank+395, 0,              0,      
-+ yycrank+396, 0,              0,      
-+ yycrank+390, 0,              0,      
-+ yycrank+398, 0,              0,      
-+ yycrank+387, 0,              0,      
-+ yycrank+400, 0,              0,      
-+ yycrank+385, 0,              0,      
-+ yycrank+399, 0,              0,      
-+ yycrank+419, 0,              0,      
-+ yycrank+402, 0,              0,      
-+ yycrank+419, 0,              0,      
-+ yycrank+419, 0,              0,      
-+ yycrank+739, 0,              0,      
-+ yycrank+749, 0,              0,      
-+ yycrank+759, 0,              0,      
-+ yycrank+477, 0,              yyvstop+114,
-+ yycrank+457, 0,              0,      
-+ yycrank+458, 0,              0,      
-+ yycrank+445, 0,              0,      
-+ yycrank+463, 0,              0,      
-+ yycrank+457, 0,              0,      
-+ yycrank+474, 0,              0,      
-+ yycrank+475, 0,              0,      
-+ yycrank+769, 0,              0,      
-+ yycrank+532, yysvec+236,     0,      
-+ yycrank+581, 0,              yyvstop+116,
-+ yycrank+779, 0,              0,      
-+ yycrank+828, 0,              yyvstop+118,
-+ yycrank+592, 0,              yyvstop+120,
-+ yycrank+593, 0,              yyvstop+122,
-+ yycrank+838, 0,              0,      
-+ yycrank+864, 0,              yyvstop+124,
-+ yycrank+546, yysvec+244,     yyvstop+126,
-+ yycrank+496, 0,              0,      
-+ yycrank+490, 0,              0,      
-+ yycrank+497, 0,              0,      
-+ yycrank+490, 0,              0,      
-+ yycrank+511, 0,              0,      
-+ yycrank+505, 0,              0,      
-+ yycrank+502, 0,              0,      
-+ yycrank+514, 0,              0,      
-+ yycrank+513, 0,              0,      
-+ yycrank+608, 0,              yyvstop+128,
-+ yycrank+890, 0,              yyvstop+131,
-+ yycrank+499, 0,              0,      
-+ yycrank+520, 0,              0,      
-+ yycrank+522, 0,              0,      
-+ yycrank+499, 0,              0,      
-+ yycrank+507, 0,              0,      
-+ yycrank+0,   yysvec+260,     0,      
-+ yycrank+524, 0,              0,      
-+ yycrank+535, 0,              0,      
-+ yycrank+537, 0,              0,      
-+ yycrank+532, 0,              0,      
-+ yycrank+0,   yysvec+260,     0,      
-+ yycrank+543, 0,              0,      
-+ yycrank+547, 0,              0,      
-+ yycrank+530, 0,              0,      
-+ yycrank+0,   0,              yyvstop+133,
-+ yycrank+0,   0,              yyvstop+135,
-+ yycrank+0,   0,              yyvstop+137,
-+ yycrank+0,   0,              yyvstop+139,
-+ yycrank+525, 0,              0,      
-+ yycrank+0,   yysvec+275,     0,      
-+ yycrank+547, 0,              0,      
-+ yycrank+0,   yysvec+275,     0,      
-+ yycrank+549, 0,              0,      
-+ yycrank+553, 0,              0,      
-+ yycrank+536, 0,              0,      
-+ yycrank+645, 0,              yyvstop+141,
-+ yycrank+671, yysvec+186,     yyvstop+143,
-+ yycrank+659, 0,              yyvstop+145,
-+ yycrank+722, 0,              yyvstop+147,
-+ yycrank+660, 0,              yyvstop+149,
-+ yycrank+830, 0,              yyvstop+151,
-+ yycrank+662, 0,              yyvstop+153,
-+ yycrank+550, 0,              0,      
-+ yycrank+916, yysvec+243,     yyvstop+155,
-+ yycrank+551, 0,              0,      
-+ yycrank+574, 0,              0,      
-+ yycrank+576, 0,              0,      
-+ yycrank+560, 0,              0,      
-+ yycrank+577, 0,              0,      
-+ yycrank+575, 0,              0,      
-+ yycrank+570, 0,              0,      
-+ yycrank+689, 0,              yyvstop+157,
-+ yycrank+691, 0,              0,      
-+ yycrank+653, yysvec+298,     yyvstop+159,
-+ yycrank+598, 0,              0,      
-+ yycrank+587, 0,              0,      
-+ yycrank+658, yysvec+212,     yyvstop+161,
-+ yycrank+583, 0,              0,      
-+ yycrank+604, 0,              0,      
-+ yycrank+593, 0,              0,      
-+ yycrank+627, 0,              0,      
-+ yycrank+627, 0,              0,      
-+ yycrank+629, 0,              0,      
-+ yycrank+0,   yysvec+260,     0,      
-+ yycrank+627, 0,              0,      
-+ yycrank+687, 0,              0,      
-+ yycrank+632, 0,              0,      
-+ yycrank+633, 0,              0,      
-+ yycrank+0,   yysvec+275,     0,      
-+ yycrank+634, 0,              0,      
-+ yycrank+689, 0,              0,      
-+ yycrank+751, 0,              0,      
-+ yycrank+647, 0,              0,      
-+ yycrank+635, 0,              0,      
-+ yycrank+629, 0,              0,      
-+ yycrank+650, 0,              0,      
-+ yycrank+638, 0,              0,      
-+ yycrank+655, 0,              0,      
-+ yycrank+901, 0,              0,      
-+ yycrank+0,   yysvec+306,     0,      
-+ yycrank+0,   yysvec+304,     0,      
-+ yycrank+0,   yysvec+306,     0,      
-+ yycrank+0,   yysvec+260,     0,      
-+ yycrank+654, 0,              0,      
-+ yycrank+0,   yysvec+260,     0,      
-+ yycrank+660, 0,              0,      
-+ yycrank+0,   yysvec+275,     0,      
-+ yycrank+0,   yysvec+275,     0,      
-+ yycrank+662, 0,              0,      
-+ yycrank+786, 0,              0,      
-+ yycrank+0,   yysvec+318,     yyvstop+163,
-+ yycrank+0,   yysvec+323,     0,      
-+ yycrank+0,   yysvec+321,     0,      
-+ yycrank+0,   yysvec+323,     0,      
-+ yycrank+683, 0,              0,      
-+ yycrank+927, 0,              yyvstop+165,
-+ yycrank+728, yysvec+342,     yyvstop+167,
-+ yycrank+0,   yysvec+306,     0,      
-+ yycrank+0,   yysvec+260,     0,      
-+ yycrank+0,   yysvec+275,     0,      
-+ yycrank+800, 0,              0,      
-+ yycrank+0,   yysvec+323,     0,      
-+ yycrank+829, 0,              yyvstop+169,
-+ yycrank+953, yysvec+325,     yyvstop+171,
-+ yycrank+0,   0,              yyvstop+173,
-+ 0,   0,      0};
-+ struct yywork *yytop = yycrank+1013;
-+ struct yysvf *yybgin = yysvec+1;
-+ char yymatch[] ={
-+ 00  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,011 ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 011 ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ '0' ,'0' ,'2' ,'3' ,'3' ,'3' ,'6' ,'6' ,
-+ '6' ,'6' ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,'a' ,'a' ,'a' ,'a' ,'a' ,'a' ,'a' ,
-+ 'a' ,'a' ,01  ,'k' ,'k' ,'k' ,'n' ,'n' ,
-+ 'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,
-+ 'n' ,'n' ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
-+ 0};
-+ char yyextra[] ={
-+ 0,0,0,0,0,0,0,0,
-+ 0,0,0,0,0,0,0,0,
-+ 0,0,0,0,0,0,0,0,
-+ 0,0,0,0,0,0,0,0,
-+ 0,0,0,0,0,0,0,0,
-+ 0,0,0,0,0,0,0,0,
-+ 0};
-+ /*   ncform  4.1     83/08/11        */
-+ 
-diff -c mh/zotnet/tws/dtimep.lex:1.1.1.1 mh/zotnet/tws/dtimep.lex:1.2
-*** mh/zotnet/tws/dtimep.lex:1.1.1.1   Tue Feb  9 07:44:02 1993
---- mh/zotnet/tws/dtimep.lex   Tue Feb  9 07:44:02 1993
-***************
-*** 34,53 ****
-  d    [0-9]
-  %{
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: dtimep.lex,v 2.14 1992/12/15 00:20:22 
jromine Exp $";
-  #endif
-  #include "tws.h"
-  #include "../h/strings.h"
-  #include <ctype.h>
-  #include <sys/types.h>
-! #ifndef SYS5
-  #include <sys/timeb.h>
-! #endif /* not SYS5 */
-  
-  #ifdef SYS5
-- extern int  daylight;
-  extern long timezone;
-- extern char *tzname[];
-  #endif /* SYS5 */
-  
-  /*
---- 34,51 ----
-  d    [0-9]
-  %{
-  #ifndef      lint
-! static char ident[] = "@(#)$Id: dtimep.lex,v 1.1.1.1 1993/01/30 04:41:48 jtc 
Exp $";
-  #endif
-  #include "tws.h"
-  #include "../h/strings.h"
-  #include <ctype.h>
-  #include <sys/types.h>
-! #if !defined(SYS5) && !defined(ZONEINFO)
-  #include <sys/timeb.h>
-! #endif /* !defined(SYS5) && !defined(ZONEINFO) */
-  
-  #ifdef SYS5
-  extern long timezone;
-  #endif /* SYS5 */
-  
-  /*
-***************
-*** 168,175 ****
-       register char *cp;
-       register int gotdate = 0;
-  #ifndef SYS5
-       struct timeb    tb;
-! #endif /* not SYS5 */
-       long tclock;
-  
-       start_cond = 0;
---- 166,178 ----
-       register char *cp;
-       register int gotdate = 0;
-  #ifndef SYS5
-+ #ifdef ZONEINFO
-+      struct tm      *tm;
-+      time_t          clock;
-+ #else
-       struct timeb    tb;
-! #endif       /* ZONEINFO */
-! #endif       /* not SYS5 */
-       long tclock;
-  
-       start_cond = 0;
-***************
-*** 178,190 ****
-       bzero( (char *) &tw, sizeof tw);
-  
-       /* Set default time zone. */
-! #ifndef SYS5
-!      ftime( &tb );
-!      tw.tw_zone = -tb.timezone;
-! #else /* SYS5 */
-       tzset( );
-       tw.tw_zone = -(timezone / 60);
-! #endif /* SYS5 */
-  
-       while (isspace(*str))
-               str++;
---- 181,202 ----
-       bzero( (char *) &tw, sizeof tw);
-  
-       /* Set default time zone. */
-! #ifdef SYS5
-       tzset( );
-       tw.tw_zone = -(timezone / 60);
-! #else
-! #ifdef ZONEINFO
-!      time (&clock);
-!      tm = localtime(&clock);
-!      tw.tw_zone = tm->tm_gmtoff / 60;
-!      if (tm -> tm_isdst)                     /* if DST is in effect */
-!              tw.tw_zone -= 60;               /* reset to normal offset */
-! #else
-!      ftime( &tb );
-!      tw.tw_zone = -tb.timezone;
-! #endif       /* ZONEINFO */
-! #endif       /* SYS5 */
-! 
-  
-       while (isspace(*str))
-               str++;
-
-------- =_aaaaaaaaaa0--
-
-
-

-----------------------------------------------------------------------

Summary of changes:
 docs/historical/README                             |    3 +
 .../conf/doc/RCS/{mh.rf,v => mh-intro.rf,v}        |    0
 .../mh-6.8.5/conf/doc/{mh.rf => mh-intro.rf}       |    0
 .../historical/mh-6.8.5/doc/{mh.me => mh-intro.me} |    0
 docs/historical/mh-6.8.5/local/Distfile            |   88 -
 docs/historical/mh-6.8.5/local/Distfile.nbbc       |   16 -
 docs/historical/mh-6.8.5/local/distfile            |   34 -
 docs/historical/mh-6.8.5/local/distfile_lib        |   28 -
 docs/historical/mh-6.8.5/local/lbl/diffs           | 1190 -----------
 docs/historical/mh-6.8.5/local/lbl/files           |   13 -
 docs/historical/mh-6.8.5/local/lbl/sbr/formatsbr.c |  776 -------
 docs/historical/mh-6.8.5/local/lbl/sbr/m_gmsg.c    |  356 ----
 docs/historical/mh-6.8.5/local/lbl/sbr/m_seq.c     |   76 -
 docs/historical/mh-6.8.5/local/lbl/sbr/t.c         |  337 ---
 docs/historical/mh-6.8.5/local/lbl/sbr/tags        |    1 -
 docs/historical/mh-6.8.5/local/lbl/sbr/trmsbr.c    |  236 ---
 docs/historical/mh-6.8.5/local/lbl/uip/m_getfld.c  |    1 -
 docs/historical/mh-6.8.5/local/lbl/uip/version.c   |    1 -
 docs/historical/mh-6.8.5/local/lbl/zotnet/tws.h    |    1 -
 .../historical/mh-6.8.5/local/lbl/zotnet/tws/dtest |  Bin 46603 -> 0 bytes
 .../mh-6.8.5/local/lbl/zotnet/tws/dtimep.c         | 1643 ---------------
 .../mh-6.8.5/local/lbl/zotnet/tws/dtimep.lex       |  375 ----
 .../mh-6.8.5/local/lbl/zotnet/tws/test.input       |   23 -
 docs/historical/mh-6.8.5/local/linux/DIFFS.linux   |  950 ---------
 docs/historical/mh-6.8.5/local/linux/DIFFS.shlib   |  462 -----
 docs/historical/mh-6.8.5/local/linux/README.linux  |  118 --
 docs/historical/mh-6.8.5/local/linux/jump/Makefile |   55 -
 .../mh-6.8.5/local/linux/jump/jump.funcs           |  150 --
 .../mh-6.8.5/local/linux/jump/jump.ignore          |    1 -
 .../mh-6.8.5/local/linux/jump/jump.import          |  164 --
 .../mh-6.8.5/local/linux/jump/jump.params          |    6 -
 .../mh-6.8.5/local/linux/jump/jump.undefs          |    1 -
 .../historical/mh-6.8.5/local/linux/jump/jump.vars |   95 -
 docs/historical/mh-6.8.5/local/linux/linux-conf.MH |   30 -
 .../local/linux/linux-conf.config.mtstailor        |   12 -
 .../mh-6.8.5/local/linux/linux-dtimep.c-lexed      | 1672 ---------------
 .../mh-6.8.5/local/linux/mh-6.8.3-diffs.tgz        |  Bin 22812 -> 0 bytes
 .../mh-6.8.5/local/linux/mh-6.8.3.README           |   68 -
 docs/historical/mh-6.8.5/local/linux/mh-6.8.3.lsm  |   25 -
 docs/historical/mh-6.8.5/local/rdist_script        |   23 -
 .../mh-6.8.5/local/rdist_update_lib.is68k          |    7 -
 .../mh-6.8.5/local/rdist_update_lib.sequent        |    7 -
 .../mh-6.8.5/local/rdist_update_lib.sun3           |   11 -
 .../mh-6.8.5/local/rdist_update_others.is68k       |    2 -
 .../mh-6.8.5/local/rdist_update_others.sequent     |    2 -
 .../mh-6.8.5/local/rdist_update_others.sun3        |    3 -
 .../mh-6.8.5/local/rdist_update_usrlocal.is68k     |    6 -
 .../mh-6.8.5/local/rdist_update_usrlocal.sequent   |    6 -
 .../mh-6.8.5/local/rdist_update_usrlocal.sun3      |   10 -
 .../mh-6.8.5/local/tmp/mh-6.8-bsdi.patch           | 2148 --------------------
 docs/historical/mh-6.8.5/uip/RCS/whatnowsbr.o,v    |  Bin 18546 -> 0 bytes
 man/send.man                                       |   10 +-
 man/whom.man                                       |    7 +
 53 files changed, 17 insertions(+), 11232 deletions(-)
 rename docs/historical/mh-6.8.5/conf/doc/RCS/{mh.rf,v => mh-intro.rf,v} (100%)
 rename docs/historical/mh-6.8.5/conf/doc/{mh.rf => mh-intro.rf} (100%)
 rename docs/historical/mh-6.8.5/doc/{mh.me => mh-intro.me} (100%)
 delete mode 100644 docs/historical/mh-6.8.5/local/Distfile
 delete mode 100644 docs/historical/mh-6.8.5/local/Distfile.nbbc
 delete mode 100644 docs/historical/mh-6.8.5/local/distfile
 delete mode 100644 docs/historical/mh-6.8.5/local/distfile_lib
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/diffs
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/files
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/sbr/formatsbr.c
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/sbr/m_gmsg.c
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/sbr/m_seq.c
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/sbr/t.c
 delete mode 120000 docs/historical/mh-6.8.5/local/lbl/sbr/tags
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/sbr/trmsbr.c
 delete mode 120000 docs/historical/mh-6.8.5/local/lbl/uip/m_getfld.c
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/uip/version.c
 delete mode 120000 docs/historical/mh-6.8.5/local/lbl/zotnet/tws.h
 delete mode 100755 docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtest
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.c
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/zotnet/tws/dtimep.lex
 delete mode 100644 docs/historical/mh-6.8.5/local/lbl/zotnet/tws/test.input
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/DIFFS.linux
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/DIFFS.shlib
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/README.linux
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/jump/Makefile
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/jump/jump.funcs
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/jump/jump.ignore
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/jump/jump.import
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/jump/jump.params
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/jump/jump.undefs
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/jump/jump.vars
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/linux-conf.MH
 delete mode 100644 
docs/historical/mh-6.8.5/local/linux/linux-conf.config.mtstailor
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/linux-dtimep.c-lexed
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/mh-6.8.3-diffs.tgz
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/mh-6.8.3.README
 delete mode 100644 docs/historical/mh-6.8.5/local/linux/mh-6.8.3.lsm
 delete mode 100755 docs/historical/mh-6.8.5/local/rdist_script
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_lib.is68k
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_lib.sequent
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_lib.sun3
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_others.is68k
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_others.sequent
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_others.sun3
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_usrlocal.is68k
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sequent
 delete mode 100644 docs/historical/mh-6.8.5/local/rdist_update_usrlocal.sun3
 delete mode 100644 docs/historical/mh-6.8.5/local/tmp/mh-6.8-bsdi.patch
 delete mode 100644 docs/historical/mh-6.8.5/uip/RCS/whatnowsbr.o,v


hooks/post-receive
-- 
The nmh Mail Handling System



reply via email to

[Prev in Thread] Current Thread [Next in Thread]