From 7696c3d5f27bb48b74d35dcc420a1210dda72cd8 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Fri, 27 Mar 2009 17:39:22 +0000
Subject: newlfm update (24mar09)

git-svn-id: svn://tug.org/texlive/trunk@12534 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/source/latex/newlfm/newlfm.dtx | 2145 ++++++++++++----------
 1 file changed, 1164 insertions(+), 981 deletions(-)

(limited to 'Master/texmf-dist/source/latex/newlfm/newlfm.dtx')

diff --git a/Master/texmf-dist/source/latex/newlfm/newlfm.dtx b/Master/texmf-dist/source/latex/newlfm/newlfm.dtx
index 434da7d7455..b6f9be3f803 100644
--- a/Master/texmf-dist/source/latex/newlfm/newlfm.dtx
+++ b/Master/texmf-dist/source/latex/newlfm/newlfm.dtx
@@ -1,6 +1,6 @@
-% \iffalse meta-comment
+%% \iffalse meta-comment
 % 
-% Copyright (C) 1999-2004 Paul Thompson
+% Copyright (C) 1999-2009 Paul Thompson
 % This program is free software; you can redistribute it and/or
 % modify it under the terms of the GNU General Public License
 % as published by the Free Software Foundation; either version 2
@@ -71,12 +71,12 @@
 %<*driver>
        \ProvidesFile{newlfm.drv}
 %</driver>
-%<+package>              [2009/1/09 v9.1
+%<+package>              [2009/03/24 v9.3
 %<+package>               Letter-Fax-Memo LaTeX Document Class]
-%<+addrset>              [2009/1/09 v9.1
+%<+addrset>              [2009/03/24 v9.3
 %<+addrset>               Address macros]%
-%<+setdim>               [2009/1/09 v9.1
-%<+setdim>                Dimension Setting macros]
+%<+setdim>               [2009/03/24 v9.3
+%<+setdim>                Address macros]
 %   \end{macrocode}
 %
 % \section{The documentation driver file}
@@ -92,8 +92,7 @@
 % \changes{v1.3}{1999/03/25}{Removed the streamlist and here packages from
 %   the list of required packages.  These were not actually used.}
 % \changes{v1.4}{1999/03/25}{Fixed the timestamp macro, using a fix from 
-%   Michael Dritschel, Purdue University.  Posted 5/5/99.  Viva Las
-%   Revolution!!  Viva Mexico!!! Viva Las Cinco de Mayo!!!} 
+%   Michael Dritschel, Purdue University.  Posted 5/5/99.} 
 % \changes{v1.5}{1999/07/25}{Fixed the Blank macros, enabling the header and
 %   footer information to be properly blanked.  Added two macros to print form
 %   letters.} 
@@ -153,7 +152,17 @@
 % \changes{v8.3}{2004/11/02}{Election special.  Cello-window option added.}
 % \changes{v8.4}{2004/11/06}{Fixed a number of other errors, including
 %   multiple repeated envelope labels.}
-% \changes{v1.1}{2009/1/09}{Added ability to add letterhead paper as 'watermark' .eps file}
+% \changes{v9.1}{2009/1/09}{Added ability to add letterhead paper as a background to
+%   the normal processing.  Add restlettera, restletterb, restletterc, restletterd, restlettere
+%   designation for information to be printed on a page(s) after the signature.}
+% \changes{v9.2}{2009/1/14}{Redid the box-up process to more fully and correctly
+%   handle text material in the header and footer sections.  Approach now uses lrbox
+%   and minipage rather than sbox.  lrbox/minipage can handle multi-line sections, and
+%   sizes them correctly.}
+% \changes{v9.3}{2009/3/24}{Added facility to include extra pages after the signature, for
+%   letter material to be structured in a normal and simple manner.  Defaults for several
+%   important commands have now been added; prior to this, omitting some commands has led
+%   to crucial errors.}
 %
 % \iffalse
 %    \begin{macrocode}
@@ -1063,6 +1072,16 @@
 %    comment character, to ensure that end-of-line characters are not
 %    translated into hard-to-detect space characters.
 %
+%    \subsection{Including a pre-set sheet as background}
+%    In some cases, the letterhead or pre-set form is to be included as a full sheet of
+%    letterhead information.  In this case, the pre-set form may be designated
+%    using the command |Background| (for letterhead form for the first page), and |background|
+%    (for pre-set form for subsequent pages after the first page).  The form to be
+%    included should be set up as a valid graphical object.  In the case of the use of
+%    the |pdflatex| process, it should be set up as a |.pdf| form, and in the case of
+%    |latex| processing, it should be set up as a valid |.ps| form, using the
+%    encapsulated PostScript approach with a valid bounding box.
+%
 %    \subsection{Blank block printing commands}
 %    In some cases, the user wishes to use the included graphical objects to
 %    size the header and footer areas (covered in Section \ref{sect:lhead}
@@ -1479,9 +1498,10 @@
 %    \section{Miscellaneous topics}
 %    \subsection{Lines}
 %    By default, |newlfm| demarcates the header and footer sections with
-%    lines.  These may be eliminated using the commands |noheadline|,
-%    |nofootline|, or |nolines|.  These commands eliminate lines in both
-%    letterhead page and non-letterhead page.  Line widths may be set as
+%    lines.  These may be eliminated using the commands |noHeadline|, |noFootline|,
+%    |noLines|  (for the letterhead page), and |noheadline|, |nofootline|, 
+%    |nolines| (for subsequent pages).  These commands eliminate lines in either the 
+%    letterhead page or the non-letterhead page.  Line widths may be set as
 %    well, using the commands |Headlinewd| (sets head linewidth for
 %    letterhead page), |headlinewd| (sets head linewidth for
 %    non-letterhead page), |Footlinewd| (sets foot linewidth for
@@ -1492,6 +1512,20 @@
 %    \newlfmP{Headlinewd=.5pt,footlinewd=.75pt}
 %    \end{verbatim}
 %    If a line width is set to 0pt, the line is not printed.
+%    \subsection{Printing information on additional pages}
+%    In many letters, the letterhead page is to be followed by additional information
+%    on additional, non-letterhead pages.  This may be done using the
+%    |\restlettera{text}|,  |\restletterb{text}|,  |\restletterc{text}|,
+%    |\restletterd{text}|, and  |\restlettere{text}| 
+%    commands.  Following the issuance of the signature, a |\newpage| command is
+%    issued, and the information contained in the 
+%    |\restlettera{text}|,  |\restletterb{text}|,  |\restletterc{text}|,
+%    |\restletterd{text}|, and  |\restlettere{text}|  blocks are printed.  These 
+%    need not be used sequentially.
+%    These blocks must not have spaces.  If paragraphs are to be used, use |\paragraph|
+%    to force the new paragraph without an actual blank line.  In addition, extra material
+%    in each section is limited to a single page.  The letterhead rules for the extra
+%    pages follow the rules for the non-first page.
 %    \subsection{Setting the date}
 %    The date for the letter is set to be the date upon which the letter is
 %    typeset.  To change the date, use |\dateset{May 20, 1974}| (feel free
@@ -1721,7 +1755,7 @@
 %      either in the document-header option block or in the
 %      |\newlfmP| command)
 %    \item \textbf{Letter date information:} |\dateset|
-%    \item \textbf{Water-mark page:} |\waterpage|
+%    \item \textbf{Back-ground information:} |\Background|, |\background|
 %    \item \textbf{Memo styles:} |stdmemo|, |fullmemo| (\tabpagr{memoopt})
 %    \item \textbf{Memo options:} |memoaddrto|, |memoemailto|, |memophoneto|,
 %      |memofaxto|, |memoaddrfrom|, |memoemailfrom|, |memophonefrom|,
@@ -1797,6 +1831,9 @@
 %      |blankrmargin|, |blanklmargin|, |Blankheader|, |Blankfooter|,
 %      |Blankrmargin|, |Blanklmargin|, |blankall|, |Blankall|,
 %      |Blank|                    (\tabpagr{blankopt})
+%    \item Extended letters: |\restlettera{text}|,  |\restletterb{text}|,
+%      |\restletterc{text}|, |\restletterd{text}|, and  |\restlettere{text}| prints
+%      additional pages after the signature with additional information.  
 %    \item {\textbf{Printing commands:}} |\printnameto|, |\printaddrto|,
 %      |\printphoneto|, |\printphoneato|, |\printphonebto|, |\printphonecto|,
 %      |\printphonedto|, |\printphoneoto|, |\printphonehto|, |\printpagerto|,
@@ -1854,101 +1891,162 @@
 \RequirePackage{setspace}%
 \RequirePackage{lastpage}%
 \@ifundefined{ps@@empty}{%
-  \ClassError{newlfm}{Version of fancyhdr.sty is not current. \MessageBreak
-    Please obtain a recent copy of fancyhdr.sty (Version 1.99d or later)
-    from CTAN.}  {Go to CTAN and download the current version of
-    fancyhdr.sty}}{}
+  \ClassError{newlfm}{Version of fancyhdr.sty is not current. \MessageBreak Please obtain
+    a recent copy of fancyhdr.sty (Version 1.99d or later) from CTAN.}  {Go to CTAN and
+    download the current version of fancyhdr.sty}}{}
 \RequirePackage{calc}[1997/11/11]%
 \RequirePackage{graphicx}[1997/06/09]%
 \RequirePackage{rotating}[1997/06/09]%
 %    \end{macrocode}
 %    \paragraph{\texttt{newlength} definitions:}  
-%    Begin by defining all newlength commands here:
-%    \begin{macrocode}
-\newlength{\@addr@fr@sk@b}  \newlength{\@addr@fr@sk@a}      \newlength{\@addr@to@sk@b}% 
-\newlength{\@addr@to@sk@a}  \newlength{\@blka@b}            \newlength{\@blka@a}%
-\newlength{\@blkb@b}        \newlength{\@blkb@a}            \newlength{\@blkc@b}%
-\newlength{\@blkc@a}        \newlength{\@caption@skip@above}\newlength{\@caption@skip@below}%
-\newlength{\@cello@h}       \newlength{\@cello@w}           \newlength{\@cello@d}%
-\newlength{\@cello@l}       \newlength{\@dt@sk@b}           \newlength{\@dt@sk@a}%
-\newlength{\@Dth@H@L}       \newlength{\@Dth@H@C}           \newlength{\@Dth@H@R}%
-\newlength{\@Dth@F@L}       \newlength{\@Dth@F@C}           \newlength{\@Dth@F@R}%
-\newlength{\@Dth@h@l}       \newlength{\@Dth@h@c}           \newlength{\@Dth@h@r}%
-\newlength{\@Dth@f@l}       \newlength{\@Dth@f@c}           \newlength{\@Dth@f@r}%
-\newlength{\@greet@to@sk@b} \newlength{\@greet@to@sk@a}     \newlength{\@Hgt@Head}%
-\newlength{\@Hrw}           \newlength{\@hrw}               \newlength{\@extr@hor}%
-\newlength{\@Frw}           \newlength{\@frw}%
-\newlength{\@Hgt@Foot}      \newlength{\@Hgt@head}          \newlength{\@Hgt@foot}%
-\newlength{\@Hgt@H@L}       \newlength{\@Hgt@H@C}           \newlength{\@Hgt@H@R}%
-\newlength{\@Hgt@F@L}       \newlength{\@Hgt@F@C}           \newlength{\@Hgt@F@R}%
-\newlength{\@Hgt@h@l}       \newlength{\@Hgt@h@c}           \newlength{\@Hgt@h@r}%
-\newlength{\@Hgt@f@l}       \newlength{\@Hgt@f@c}           \newlength{\@Hgt@f@r}%
-\newlength{\@lab@bl}        \newlength{\@lab@pl}            \newlength{\@lab@pw}%
-\newlength{\@lab@bh}        \newlength{\@lab@bw}            \newlength{\@lab@th}%
-\newlength{\@lab@lm}        \newlength{\@marg@lt}           \newlength{\@marg@rt}%
-\newlength{\@marg@tp}       \newlength{\@marg@bt}           \newlength{\@marg@tp@a}%
-\newlength{\@marg@bt@a}     \newlength{\@marg@tp@b}         \newlength{\@marg@tp@s}%
-\newlength{\@marg@bt@b}     \newlength{\@marg@lt@r}         \newlength{\@marg@lt@l}%
-\newlength{\@marg@rt@r}     \newlength{\@marg@rt@l}         \newlength{\@marg@lt@tp@d}%
-\newlength{\@marg@rt@tp@d}  \newlength{\@Min@Hgt@Head}      \newlength{\@Min@Hgt@head}%
-\newlength{\@Min@Hgt@Foot}  \newlength{\@Min@Hgt@foot}      \newlength{\@Min@Hgt@Right}%
-\newlength{\@Min@Hgt@right} \newlength{\@Min@Hgt@Left}      \newlength{\@Min@Hgt@left}%
-\newlength{\@Plg}           \newlength{\@Pwd}               \newlength{\@plg}%
-\newlength{\@pwd}           \newlength{\@post@sig@sp@a}     \newlength{\@post@sig@sp@b}%
-\newlength{\@pre@memo@sp}   \newlength{\@post@memo@sp}      \newlength{\@sig@sk@b}%
-\newlength{\@sig@sk@a}      \newlength{\@sig@sp}            \newlength{\@text@width}%
-\newlength{\@sig@sk@c}      \newlength{\@sig@sk@r}%
-\newlength{\@cls@sk@a}      \newlength{\@cls@sk@b}%
-\newlength{\@text@height}   \newlength{\@unpr@tp}           \newlength{\@unpr@bm}%
-\newlength{\@unpr@rt}       \newlength{\@unpr@lt}           \newlength{\@util}%
-\newlength{\@utila}         \newlength{\@utilb}             \newlength{\@utilc}%
-\newlength{\@utild}         \newlength{\@utile}% 
-\newlength{\@xda}           \newlength{\@xdb}               \newlength{\@xdc}%
-\newlength{\@xdd}           \newlength{\@xde}               \newlength{\@xdf}%
-\newlength{\@xdg}           \newlength{\@xdh}               \newlength{\@xdi}%
-%    \end{macrocode}
-%    \paragraph{\texttt{newlength} default values:}  
-%    Begin by defining all newlength commands here:
+%    Begin by defining all newlength commands here, and then additionally set the
+%    lengths for all those which need initialization:
 %    \begin{macrocode}
-\setlength{\@cello@h}{1in}   \setlength{\@cello@w}{3in}%
-\setlength{\@cello@d}{2.5in} \setlength{\@cello@l}{1in}%
-\setlength{\@marg@tp@s}{0in} \setlength{\@marg@bt@b}{0in}%
-\setlength{\@unpr@tp}{0in}   \setlength{\@unpr@bm}{0in}%
-\setlength{\@unpr@rt}{0in}   \setlength{\@unpr@lt}{0in}%
-\setlength{\@marg@lt@r}{0in} \setlength{\@marg@lt@l}{0in}%
-\setlength{\@marg@rt@r}{0in} \setlength{\@marg@lt}{1in}%
-\setlength{\@marg@rt}{1in}   \setlength{\@marg@tp}{1in}%
-\setlength{\@marg@bt}{1in}   \setlength{\@marg@tp@a}{0in}%
-\setlength{\@marg@bt@a}{0in} \setlength{\@marg@tp@b}{0in}%
-\setlength{\@marg@rt@l}{0in} \setlength{\@marg@lt@tp@d}{0pt}%
-\setlength{\@marg@rt@tp@d}{0pt}%
-\setlength{\@Hrw}{1pt}       \setlength{\@hrw}{1pt}%
-\setlength{\@Frw}{1pt}       \setlength{\@frw}{1pt}%
-\setlength{\@sig@sk@a}{5pt}  \setlength{\@sig@sk@b}{5pt}
-\setlength{\@cls@sk@a}{0pt}  \setlength{\@cls@sk@b}{1em}
-\setlength{\@sig@sk@c}{5pt}  \setlength{\@sig@sk@r}{5pt}%
-\setlength{\@extr@hor}{0pt}
+\newlength{\@addr@fr@sk@b}\setlength{\@addr@fr@sk@b}{0in}%
+\newlength{\@addr@fr@sk@a}\setlength{\@addr@fr@sk@a}{0in}%
+\newlength{\@addr@to@sk@b}\setlength{\@addr@to@sk@b}{0in}%
+\newlength{\@addr@to@sk@a}\setlength{\@addr@to@sk@a}{0in}%
+\newlength{\@blka@b}\setlength{\@blka@b}{0in}%
+\newlength{\@blka@a}\setlength{\@blka@a}{0in}%
+\newlength{\@blkb@b}\setlength{\@blkb@b}{0in}%
+\newlength{\@blkb@a}\setlength{\@blkb@a}{0in}%
+\newlength{\@blkc@b}\setlength{\@blkc@b}{0in}%
+\newlength{\@blkc@a}\setlength{\@blkc@a}{0in}%
+\newlength{\@caption@skip@above}\setlength{\@caption@skip@above}{0in}%
+\newlength{\@caption@skip@below}\setlength{\@caption@skip@below}{0in}%
+\newlength{\@cello@h}\setlength{\@cello@h}{1in}%
+\newlength{\@cello@w}\setlength{\@cello@w}{3in}%
+\newlength{\@cello@d}\setlength{\@cello@d}{2.5in}%
+\newlength{\@cello@l}\setlength{\@cello@l}{1in}%
+\newlength{\@dt@sk@b}\setlength{\@dt@sk@b}{0in}%           
+\newlength{\@dt@sk@a}\setlength{\@dt@sk@a}{0in}%
+\newlength{\@Dth@H@L}\setlength{\@Dth@H@L}{0in}%
+\newlength{\@Dth@H@C}\setlength{\@Dth@H@C}{0in}%
+\newlength{\@Dth@H@R}\setlength{\@Dth@H@R}{0in}%
+\newlength{\@Dth@F@L}\setlength{\@Dth@F@L}{0in}%
+\newlength{\@Dth@F@C}\setlength{\@Dth@F@C}{0in}%
+\newlength{\@Dth@F@R}\setlength{\@Dth@F@R}{0in}%
+\newlength{\@Dth@h@l}\setlength{\@Dth@h@l}{0in}%
+\newlength{\@Dth@h@c}\setlength{\@Dth@h@c}{0in}%
+\newlength{\@Dth@h@r}\setlength{\@Dth@h@r}{0in}%
+\newlength{\@Dth@f@l}\setlength{\@Dth@f@l}{0in}%
+\newlength{\@Dth@f@c}\setlength{\@Dth@f@c}{0in}%
+\newlength{\@Dth@f@r}\setlength{\@Dth@f@r}{0in}%
+\newlength{\@greet@to@sk@b}\setlength{\@greet@to@sk@b}{0in}%
+\newlength{\@greet@to@sk@a}\setlength{\@greet@to@sk@a}{0in}%
+\newlength{\@Hgt@Head}\setlength{\@Hgt@Head}{0in}%
+\newlength{\@Hrw}\setlength{\@Hrw}{1pt}%
+\newlength{\@hrw}\setlength{\@hrw}{1pt}%
+\newlength{\@extr@hor}\setlength{\@extr@hor}{0pt}%
+\newlength{\@Frw}\setlength{\@Frw}{1pt}%
+\newlength{\@frw}\setlength{\@frw}{1pt}%
+\newlength{\@Hgt@Foot}\setlength{\@Hgt@Foot}{0in}%      
+\newlength{\@Hgt@head}\setlength{\@Hgt@head}{0in}%
+\newlength{\@Hgt@foot}\setlength{\@Hgt@foot}{0in}%
+\newlength{\@Hgt@H@L}\setlength{\@Hgt@H@L}{0in}%
+\newlength{\@Hgt@H@C}\setlength{\@Hgt@H@C}{0in}%
+\newlength{\@Hgt@H@R}\setlength{\@Hgt@H@R}{0in}%
+\newlength{\@Hgt@F@L}\setlength{\@Hgt@F@L}{0in}%
+\newlength{\@Hgt@F@C}\setlength{\@Hgt@F@C}{0in}%
+\newlength{\@Hgt@F@R}\setlength{\@Hgt@F@R}{0in}%
+\newlength{\@Hgt@h@l}\setlength{\@Hgt@h@l}{0in}%
+\newlength{\@Hgt@h@c}\setlength{\@Hgt@h@c}{0in}%
+\newlength{\@Hgt@h@r}\setlength{\@Hgt@h@r}{0in}%
+\newlength{\@Hgt@f@l}\setlength{\@Hgt@f@l}{0in}%
+\newlength{\@Hgt@f@c}\setlength{\@Hgt@f@c}{0in}%
+\newlength{\@Hgt@f@r}\setlength{\@Hgt@f@r}{0in}%
+\newlength{\@lab@bl}\setlength{\@lab@bl}{0in}%
+\newlength{\@lab@pl}\setlength{\@lab@pl}{0in}%
+\newlength{\@lab@pw}\setlength{\@lab@pw}{0in}%
+\newlength{\@lab@bh}\setlength{\@lab@bh}{0in}%
+\newlength{\@lab@bw}\setlength{\@lab@bw}{0in}%
+\newlength{\@lab@th}\setlength{\@lab@th}{0in}%
+\newlength{\@lab@lm}\setlength{\@lab@lm}{0in}%
+\newlength{\@marg@lt}\setlength{\@marg@lt}{1in}%
+\newlength{\@marg@rt}\setlength{\@marg@rt}{1in}%
+\newlength{\@marg@tp}\setlength{\@marg@tp}{1in}%
+\newlength{\@marg@bt}\setlength{\@marg@bt}{1in}%
+\newlength{\@marg@tp@a}\setlength{\@marg@tp@a}{0in}%
+\newlength{\@marg@bt@a}\setlength{\@marg@bt@a}{0in}%
+\newlength{\@marg@bt@b}\setlength{\@marg@bt@b}{0in}%
+\newlength{\@marg@tp@b}\setlength{\@marg@tp@b}{0in}%
+\newlength{\@marg@tp@s}\setlength{\@marg@tp@s}{0in}%
+\newlength{\@marg@lt@r}\setlength{\@marg@lt@r}{0in}%
+\newlength{\@marg@lt@l}\setlength{\@marg@lt@l}{0in}%
+\newlength{\@marg@rt@r}\setlength{\@marg@rt@r}{0in}%
+\newlength{\@marg@rt@l}\setlength{\@marg@rt@l}{0in}%
+\newlength{\@marg@lt@tp@d}\setlength{\@marg@lt@tp@d}{0pt}%
+\newlength{\@marg@rt@tp@d}\setlength{\@marg@rt@tp@d}{0pt}%
+\newlength{\@Min@Hgt@Head}\setlength{\@Min@Hgt@Head}{0in}%
+\newlength{\@Min@Hgt@head}\setlength{\@Min@Hgt@head}{0in}%
+\newlength{\@Min@Hgt@Foot}\setlength{\@Min@Hgt@Foot}{0in}%
+\newlength{\@Min@Hgt@foot}\setlength{\@Min@Hgt@foot}{0in}%
+\newlength{\@Min@Hgt@Right}\setlength{\@Min@Hgt@Right}{0in}%
+\newlength{\@Min@Hgt@right}\setlength{\@Min@Hgt@right}{0in}%
+\newlength{\@Min@Hgt@Left}\setlength{\@Min@Hgt@Left}{0in}%
+\newlength{\@Min@Hgt@left}\setlength{\@Min@Hgt@left}{0in}%
+\newlength{\@Plg}\setlength{\@Plg}{0in}%
+\newlength{\@Pwd}\setlength{\@Pwd}{0in}%
+\newlength{\@plg}\setlength{\@plg}{0in}%
+\newlength{\@pwd}\setlength{\@pwd}{0in}%
+\newlength{\@post@sig@sp@a}\setlength{\@post@sig@sp@a}{0in}%
+\newlength{\@post@sig@sp@b}\setlength{\@post@sig@sp@b}{0in}%
+\newlength{\@pre@memo@sp}\setlength{\@pre@memo@sp}{0in}%
+\newlength{\@post@memo@sp}\setlength{\@post@memo@sp}{0in}%
+\newlength{\@sig@sp}\setlength{\@sig@sp}{0in}%            
+\newlength{\@text@width}\setlength{\@text@width}{0in}%
+\newlength{\@sig@sk@a}\setlength{\@sig@sk@a}{5pt}%
+\newlength{\@sig@sk@b}\setlength{\@sig@sk@b}{5pt}%
+\newlength{\@sig@sk@c}\setlength{\@sig@sk@c}{5pt}%
+\newlength{\@sig@sk@r}\setlength{\@sig@sk@r}{5pt}%
+\newlength{\@cls@sk@a}\setlength{\@cls@sk@a}{1em}%
+\newlength{\@cls@sk@b}\setlength{\@cls@sk@b}{1em}%
+\newlength{\@text@height}\setlength{\@text@height}{0in}%
+\newlength{\@unpr@tp}\setlength{\@unpr@tp}{0in}%
+\newlength{\@unpr@bm}\setlength{\@unpr@bm}{0in}%
+\newlength{\@unpr@rt}\setlength{\@unpr@rt}{0in}%
+\newlength{\@unpr@lt}\setlength{\@unpr@lt}{0in}%
+\newlength{\@util}\setlength{\@util}{0in}%
+\newlength{\@utila}\setlength{\@utila}{0in}%
+\newlength{\@utilb}\setlength{\@utilb}{0in}%
+\newlength{\@utilc}\setlength{\@utilc}{0in}%
+\newlength{\@utild}\setlength{\@utild}{0in}%
+\newlength{\@utile}\setlength{\@utile}{0in}%
+\newlength{\@xda}\setlength{\@xda}{0in}%
+\newlength{\@xdb}\setlength{\@xdb}{0in}%
+\newlength{\@xdc}\setlength{\@xdc}{0in}%
+\newlength{\@xdd}\setlength{\@xdd}{0in}%
+\newlength{\@xde}\setlength{\@xde}{0in}%
+\newlength{\@xdf}\setlength{\@xdf}{0in}%
+\newlength{\@xdg}\setlength{\@xdg}{0in}%
+\newlength{\@xdh}\setlength{\@xdh}{0in}%
+\newlength{\@xdi}\setlength{\@xdi}{0in}%
+\txa{newlength done}%
 %    \end{macrocode}
 %    \paragraph{\texttt{newsavebox} definitions:}  
 %    Define all newsavebox commands here:
 %    \begin{macrocode}
 \newsavebox{\@sig@box@a}\newsavebox{\b@addr@fr}\newsavebox{\b@addr@to}%
-\newsavebox{\@x@c} \newsavebox{\@x@l}  \newsavebox{\@x@r}%
-\newsavebox{\fba}  \newsavebox{\adrfr} \newsavebox{\adrto}%
-\newsavebox{\@sig@box@b}\newsavebox{\@sig@box@c}\newsavebox{\@sig@box@d}
-\newsavebox{\@sig@box@e}\newsavebox{\@sig@box@f}\newsavebox{\@sig@box@g}
-\newsavebox{\@sig@box@h}\newsavebox{\@sig@box@i}\newsavebox{\@sig@box@j}
+\newsavebox{\@x@c}\newsavebox{\@x@l}\newsavebox{\@x@r}%
+\newsavebox{\fba}\newsavebox{\adrfr}\newsavebox{\adrto}%
+\newsavebox{\@sig@box@b}\newsavebox{\@sig@box@c}\newsavebox{\@sig@box@d}%
+\newsavebox{\@sig@box@e}\newsavebox{\@sig@box@f}\newsavebox{\@sig@box@g}%
+\newsavebox{\@sig@box@h}\newsavebox{\@sig@box@i}\newsavebox{\@sig@box@j}%
+\newsavebox{\@rest@ltr}\newsavebox{\@resta@ltr}\newsavebox{\@restb@ltr}%
+\newsavebox{\@restc@ltr}\newsavebox{\@restd@ltr}\newsavebox{\@reste@ltr}%
+\txa{newsavebox done}%
 %    \end{macrocode}
 %    \paragraph{\texttt{newcounter} definitions:}  
 %    Define all newcounter commands here:
 %    \begin{macrocode}
-\newcounter{@c@pos}    \newcounter{figure} \newcounter{table}%
-\newcounter{@sig@tot}  \newcounter{@lab@tot@row}%
-\newcounter{@lab@tot@col} \newcounter{@lab@cnt@row} \newcounter{@lab@cnt@col}%
+\newcounter{@c@pos}\newcounter{figure}\newcounter{table}%
+\newcounter{@sig@tot}\newcounter{@lab@tot@row}%
+\newcounter{@lab@tot@col}\newcounter{@lab@cnt@row}\newcounter{@lab@cnt@col}%
 \newcount\@nlfm@addr%
 \newcount\@nlfm@util%
 \newcount\@nlfm@uta%
 \newcount\@nlfm@utb%
+\txa{newcount done}%
 %    \end{macrocode}
 %    \paragraph{\texttt{newboolean} definitions:}  
 %    Boolean variables are defined here.  Package |ifthen| defines
@@ -1957,118 +2055,128 @@
 %    \begin{macrocode}
 \newboolean{@addr@fr@l}%
 \newboolean{@addr@fr@p}%
-\newboolean{@addr@fr@e}    \setboolean{@addr@fr@e}{false}%
-\newboolean{@addr@fr@f}    \setboolean{@addr@fr@f}{false}%
-\newboolean{@addr@fr@t}    \setboolean{@addr@fr@t}{false}%
-\newboolean{@addr@swtch}   \setboolean{@addr@swtch}{true}%
+\newboolean{@addr@fr@e}\setboolean{@addr@fr@e}{false}%
+\newboolean{@addr@fr@f}\setboolean{@addr@fr@f}{false}%
+\newboolean{@addr@fr@t}\setboolean{@addr@fr@t}{false}%
+\newboolean{@addr@swtch}\setboolean{@addr@swtch}{true}%
 \newboolean{@addr@to@l}%
 \newboolean{@addr@to@p}%
-\newboolean{@addr@to@f}    \setboolean{@addr@to@f}{false}%
-\newboolean{@addr@to@e}    \setboolean{@addr@to@e}{false}%
-\newboolean{@addr@to@t}    \setboolean{@addr@to@t}{false}%
-\newboolean{@b@h}          \setboolean{@b@h}{false}%
-\newboolean{@b@f}          \setboolean{@b@f}{false}%
-\newboolean{@b@r}          \setboolean{@b@r}{false}%
-\newboolean{@b@l}          \setboolean{@b@l}{false}%
-\newboolean{@B@h}          \setboolean{@B@h}{false}%
-\newboolean{@B@f}          \setboolean{@B@f}{false}%
-\newboolean{@B@r}          \setboolean{@B@r}{false}%
-\newboolean{@B@l}          \setboolean{@B@l}{false}%
-\newboolean{@bg@use}       \setboolean{@bg@use}{false}%
-\newboolean{@Bg@use}       \setboolean{@Bg@use}{false}%
-\newboolean{@cello@win}    \setboolean{@cello@win}{false}%
-\newboolean{@cf@use}       \setboolean{@cf@use}{false}%
-\newboolean{@Ch@use}       \setboolean{@Ch@use}{false}%
-\newboolean{@Cf@use}       \setboolean{@Cf@use}{false}%
-\newboolean{@COf@use}      \setboolean{@COf@use}{false}%
-\newboolean{@CUh@use}      \setboolean{@CUh@use}{false}%
-\newboolean{@ch@use}       \setboolean{@ch@use}{false}%
+\newboolean{@addr@to@f}\setboolean{@addr@to@f}{false}%
+\newboolean{@addr@to@e}\setboolean{@addr@to@e}{false}%
+\newboolean{@addr@to@t}\setboolean{@addr@to@t}{false}%
+\newboolean{@b@h}\setboolean{@b@h}{false}%
+\newboolean{@b@f}\setboolean{@b@f}{false}%
+\newboolean{@b@r}\setboolean{@b@r}{false}%
+\newboolean{@b@l}\setboolean{@b@l}{false}%
+\newboolean{@B@h}\setboolean{@B@h}{false}%
+\newboolean{@B@f}\setboolean{@B@f}{false}%
+\newboolean{@B@r}\setboolean{@B@r}{false}%
+\newboolean{@B@l}\setboolean{@B@l}{false}%
+\newboolean{@bg@use}\setboolean{@bg@use}{false}%
+\newboolean{@Bg@use}\setboolean{@Bg@use}{false}%
+\newboolean{@cello@win}\setboolean{@cello@win}{false}%
+\newboolean{@cf@use}\setboolean{@cf@use}{false}%
+\newboolean{@Ch@use}\setboolean{@Ch@use}{false}%
+\newboolean{@Cf@use}\setboolean{@Cf@use}{false}%
+\newboolean{@COf@use}\setboolean{@COf@use}{false}%
+\newboolean{@CUh@use}\setboolean{@CUh@use}{false}%
+\newboolean{@ch@use}\setboolean{@ch@use}{false}%
 \newboolean{@do@any}%
-\newboolean{@dt@l}         \setboolean{@dt@l}{true}%
-\newboolean{@dt@c}         \setboolean{@dt@c}{false}%
+\newboolean{@dt@l}\setboolean{@dt@l}{true}%
+\newboolean{@dt@c}\setboolean{@dt@c}{false}%
 \newboolean{@dt@p}%
-\newboolean{@env@open}     \setboolean{@env@open}{false}%
-\newboolean{@env@close}    \setboolean{@env@close}{false}%
-\newboolean{@fax@m@run}    \setboolean{@fax@m@run}{false}%
+\newboolean{@env@open}\setboolean{@env@open}{false}%
+\newboolean{@env@close}\setboolean{@env@close}{false}%
+\newboolean{@fax@m@run}\setboolean{@fax@m@run}{false}%
 \newboolean{@fax@hdr@pg}%
 \newboolean{@fax@RA}%
 \newboolean{@fax@RU}%
-\newboolean{@fax@bla}      \setboolean{@fax@bla}{true}%
-\newboolean{@fax@blb}      \setboolean{@fax@blb}{false}%
-\newboolean{@fl}           \setboolean{@fl}{true}%
+\newboolean{@fax@bla}\setboolean{@fax@bla}{true}%
+\newboolean{@fax@blb}\setboolean{@fax@blb}{false}%
+\newboolean{@fl}\setboolean{@fl}{true}%
+\newboolean{@Fl}\setboolean{@Fl}{true}%
 \newboolean{@greet@p}%
 \newboolean{@greet@l}%
-\newboolean{@hl}           \setboolean{@hl}{true}%
+\newboolean{@hl}\setboolean{@hl}{true}%
+\newboolean{@Hl}\setboolean{@Hl}{true}%
 \newboolean{@in@tab}%
-\newboolean{@in@makeenv}   \setboolean{@in@makeenv}{false}%
-\newboolean{@l@am}         \setboolean{@l@am}{true}%
-\newboolean{@l@en}         \setboolean{@l@en}{false}%
-\newboolean{@l@ge}         \setboolean{@l@ge}{false}%
-\newboolean{@l@fr}         \setboolean{@l@fr}{false}%
-\newboolean{@l@ot}         \setboolean{@l@ot}{false}%
-\newboolean{@l@pi}         \setboolean{@l@pi}{false}%
-\newboolean{@lab@t}        \setboolean{@lab@t}{true}%
-\newboolean{@lab@cft}      \setboolean{@lab@cft}{false}%
-\newboolean{@lab@rft}      \setboolean{@lab@rft}{false}%
-\newboolean{@Lf@use}       \setboolean{@Lf@use}{false}%
-\newboolean{@lf@use}       \setboolean{@lf@use}{false}%
-\newboolean{@Lh@use}       \setboolean{@Lh@use}{false}%
-\newboolean{@lh@use}       \setboolean{@lh@use}{false}%
-\newboolean{@LOf@use}      \setboolean{@LOf@use}{false}%
-\newboolean{@LUh@use}      \setboolean{@LUh@use}{false}%
+\newboolean{@in@makeenv}\setboolean{@in@makeenv}{false}%
+\newboolean{@l@am}\setboolean{@l@am}{true}%
+\newboolean{@l@en}\setboolean{@l@en}{false}%
+\newboolean{@l@ge}\setboolean{@l@ge}{false}%
+\newboolean{@l@fr}\setboolean{@l@fr}{false}%
+\newboolean{@l@ot}\setboolean{@l@ot}{false}%
+\newboolean{@l@pi}\setboolean{@l@pi}{false}%
+\newboolean{@lab@t}\setboolean{@lab@t}{true}%
+\newboolean{@lab@cft}\setboolean{@lab@cft}{false}%
+\newboolean{@lab@rft}\setboolean{@lab@rft}{false}%
+\newboolean{@Lf@use}\setboolean{@Lf@use}{false}%
+\newboolean{@lf@use}\setboolean{@lf@use}{false}%
+\newboolean{@Lh@use}\setboolean{@Lh@use}{false}%
+\newboolean{@lh@use}\setboolean{@lh@use}{false}%
+\newboolean{@LOf@use}\setboolean{@LOf@use}{false}%
+\newboolean{@LUh@use}\setboolean{@LUh@use}{false}%
 \newboolean{@marg@lt@fl@tp}\setboolean{@marg@lt@fl@tp}{false}%
 \newboolean{@marg@rt@fl@tp}\setboolean{@marg@rt@fl@tp}{false}%
-\newboolean{@marg@luse}    \setboolean{@marg@luse}{false}%
-\newboolean{@marg@ruse}    \setboolean{@marg@ruse}{false}%
-\newboolean{@marg@Luse}    \setboolean{@marg@Luse}{false}%
-\newboolean{@marg@Ruse}    \setboolean{@marg@Ruse}{false}%
+\newboolean{@marg@luse}\setboolean{@marg@luse}{false}%
+\newboolean{@marg@ruse}\setboolean{@marg@ruse}{false}%
+\newboolean{@marg@Luse}\setboolean{@marg@Luse}{false}%
+\newboolean{@marg@Ruse}\setboolean{@marg@Ruse}{false}%
 \newboolean{@memo@bl}%
 \newboolean{@memo@a}%
-\newboolean{@memo@b}       \setboolean{@memo@b}{false}%
-\newboolean{@memo@c}       \setboolean{@memo@c}{false}%
-\newboolean{@memo@d}       \setboolean{@memo@d}{false}%
-\newboolean{@memo@e}       \setboolean{@memo@e}{true}%
-\newboolean{@memo@f}       \setboolean{@memo@f}{true}%
-\newboolean{@memo@g}       \setboolean{@memo@g}{true}%
-\newboolean{@memo@h}       \setboolean{@memo@h}{false}%
-\newboolean{@memo@i}       \setboolean{@memo@i}{false}%
-\newboolean{@memo@j}       \setboolean{@memo@j}{false}%
-\newboolean{@memo@k}       \setboolean{@memo@k}{false}%
-\newboolean{@memo@l}       \setboolean{@memo@l}{false}%
-\newboolean{@memo@m}       \setboolean{@memo@m}{false}%
-\newboolean{@memo@n}       \setboolean{@memo@n}{false}%
-\newboolean{@no@cen}       \setboolean{@no@cen}{false}%
-\newboolean{@no@spc}       \setboolean{@no@spc}{false}%
-\newboolean{@ROf@use}      \setboolean{@ROf@use}{false}%
-\newboolean{@Rf@use}       \setboolean{@Rf@use}{false}%
-\newboolean{@rf@use}       \setboolean{@rf@use}{false}%
-\newboolean{@Rh@use}       \setboolean{@Rh@use}{false}%
-\newboolean{@RUh@use}      \setboolean{@RUh@use}{false}%
-\newboolean{@rh@use}       \setboolean{@rh@use}{false}%
-\newboolean{@over@all}     \setboolean{@over@all}{true}%
-\newboolean{@over@setto}   \setboolean{@over@setto}{false}%
-\newboolean{@over@setfr}   \setboolean{@over@setfr}{false}%
-\newboolean{@over@sigbl}   \setboolean{@over@sigbl}{false}%
-\newboolean{@pt@regard}    \setboolean{@pt@regard}{false}%
-\newboolean{@s@b@s}        \setboolean{@s@b@s}{false}%
-\newboolean{@set@env}      \setboolean{@set@env}{false}%
+\newboolean{@memo@b}\setboolean{@memo@b}{false}%
+\newboolean{@memo@c}\setboolean{@memo@c}{false}%
+\newboolean{@memo@d}\setboolean{@memo@d}{false}%
+\newboolean{@memo@e}\setboolean{@memo@e}{true}%
+\newboolean{@memo@f}\setboolean{@memo@f}{true}%
+\newboolean{@memo@g}\setboolean{@memo@g}{true}%
+\newboolean{@memo@h}\setboolean{@memo@h}{false}%
+\newboolean{@memo@i}\setboolean{@memo@i}{false}%
+\newboolean{@memo@j}\setboolean{@memo@j}{false}%
+\newboolean{@memo@k}\setboolean{@memo@k}{false}%
+\newboolean{@memo@l}\setboolean{@memo@l}{false}%
+\newboolean{@memo@m}\setboolean{@memo@m}{false}%
+\newboolean{@memo@n}\setboolean{@memo@n}{false}%
+\newboolean{@no@cen}\setboolean{@no@cen}{false}%
+\newboolean{@no@spc}\setboolean{@no@spc}{false}%
+\newboolean{@rest@l}\setboolean{@rest@l}{false}%
+\newboolean{@resta@l}\setboolean{@resta@l}{false}%
+\newboolean{@restb@l}\setboolean{@restb@l}{false}%
+\newboolean{@restc@l}\setboolean{@restc@l}{false}%
+\newboolean{@restd@l}\setboolean{@restd@l}{false}%
+\newboolean{@reste@l}\setboolean{@reste@l}{false}%
+\newboolean{@ROf@use}\setboolean{@ROf@use}{false}%
+\newboolean{@Rf@use}\setboolean{@Rf@use}{false}%
+\newboolean{@rf@use}\setboolean{@rf@use}{false}%
+\newboolean{@Rh@use}\setboolean{@Rh@use}{false}%
+\newboolean{@RUh@use}\setboolean{@RUh@use}{false}%
+\newboolean{@rh@use}\setboolean{@rh@use}{false}%
+\newboolean{@ov@a}\setboolean{@ov@a}{true}%
+\newboolean{@ov@t}\setboolean{@ov@t}{false}%
+\newboolean{@ov@l}\setboolean{@ov@l}{false}%
+\newboolean{@ov@f}\setboolean{@ov@f}{false}%
+\newboolean{@ov@s}\setboolean{@ov@s}{false}%
+\newboolean{@pt@regard}\setboolean{@pt@regard}{false}%
+\newboolean{@s@b@s}\setboolean{@s@b@s}{false}%
+\newboolean{@set@env}\setboolean{@set@env}{false}%
 \newboolean{@sig@p}%
 \newboolean{@sig@mp}%
-\newboolean{@sig@l}        \setboolean{@sig@l}{true}%
-\newboolean{@sig@c}        \setboolean{@sig@l}{false}%
-\newboolean{@space@d}      \setboolean{@space@d}{true}
-\newboolean{@space@s}      \setboolean{@space@s}{false}
-\newboolean{@mult@sig}     \setboolean{@mult@sig}{false}%
+\newboolean{@sig@l}\setboolean{@sig@l}{true}%
+\newboolean{@sig@c}\setboolean{@sig@l}{false}%
+\newboolean{@space@d}\setboolean{@space@d}{true}%
+\newboolean{@space@s}\setboolean{@space@s}{false}%
+\newboolean{@mult@sig}\setboolean{@mult@sig}{false}%
 \newboolean{@use@sig}%
 \newboolean{@use@close}%
 \newboolean{@use@sig@nm}%
 \newboolean{@use@all@fr}%
 \newboolean{@use@all@to}%
-\newboolean{@use@envlab}   \setboolean{@use@envlab}{false}%
-\newboolean{@use@water}    \setboolean{@use@water}{false}%
-\newboolean{@ztila}        \newboolean{@ztilb}%
-\newboolean{@pr@p}         \setboolean{@pr@p}{false}%
-\newboolean{@pr@by}
+\newboolean{@use@envlab}\setboolean{@use@envlab}{false}%
+\newboolean{@use@water}\setboolean{@use@water}{false}%
+\newboolean{@ztila}\newboolean{@ztilb}%
+\newboolean{@pr@p}\setboolean{@pr@p}{false}%
+\newboolean{@pr@by}%
+\txa{newboolean done}%
 %    \end{macrocode}
 %
 %    \subsection{newlfm commands}
@@ -2076,9 +2184,9 @@
 %    \paragraph{Ordering of date, from-address and to-address:}
 %    These commands allow the ordering of date, to-block and from-block:
 %    \begin{macrocode}
-\def\@d@pos#1{\def\@intd@pos{#1}}
-\def\@t@pos#1{\def\@intt@pos{#1}}
-\def\@f@pos#1{\def\@intf@pos{#1}}
+\def\@d@pos#1{\def\@intd@pos{#1}}%
+\def\@t@pos#1{\def\@intt@pos{#1}}%
+\def\@f@pos#1{\def\@intf@pos{#1}}%
 %    \end{macrocode}
 %
 %    \paragraph{\texttt{keyval} processing:}  When using the |keyval|
@@ -2086,33 +2194,34 @@
 %    must be used.  At this point, this is not 100 \% correct, and so it
 %    will be altered as soon as I can figger it out.
 %    \begin{macrocode}
-\def\newlfmParam{\@ifnextchar[%]
-\newlx@i{\newlx@i[]}}
-\def\newlx@i[#1]{{\setkeys{ov}{#1}}}
-\def\Dimens{\@ifnextchar[%]
-\Dimens@i{\Dimens@i[]}}
-\def\Dimens@i[#1]{{\setkeys{ov}{#1}}}
-\def\Language{\@ifnextchar[%]
-\Lang@i{\Lang@i[]}}
-\def\Lang@i[#1]{{\setkeys{ov}{#1}}}
-\def\MemoParam{\@ifnextchar[%]
-\MemoP@i{\MemoP@i[]}}
-\def\MemoP@i[#1]{{\setkeys{ov}{#1}}}
-\def\LetterParam{\@ifnextchar[%]
-\LetrP@i{\LetrP@i[]}}
-\def\LetrP@i[#1]{{\setkeys{ov}{#1}}}
-\def\FAZParam{\@ifnextchar[%]
-\FAXP@i{\FAXP@i[]}}
-\def\FAXP@i[#1]{{\setkeys{ov}{#1}}}
-\def\LetterP#1{\setkeys{ov}{#1}}
-\def\newlfmP#1{\setkeys{ov}{#1}}
-\def\LanguageP#1{\setkeys{ov}{#1}}
-\def\FAXP#1{\setkeys{ov}{#1}}
-\def\DimensP#1{\setkeys{ov}{#1}}
-\def\MemoP#1{\setkeys{ov}{#1}}
-\def\iffixt#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{true}}{}}
-\def\iffixf#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{false}}{}}
-\def\iffixq#1#2{\ifthenelse{\equal{#1}{true}}{#2}{}}
+\def\newlfmParam{\@ifnextchar[%]%
+\newlx@i{\newlx@i[]}}%
+\def\newlx@i[#1]{{\setkeys{ov}{#1}}}%
+\def\Dimens{\@ifnextchar[%]%
+\Dimens@i{\Dimens@i[]}}%
+\def\Dimens@i[#1]{{\setkeys{ov}{#1}}}%
+\def\Language{\@ifnextchar[%]%
+\Lang@i{\Lang@i[]}}%
+\def\Lang@i[#1]{{\setkeys{ov}{#1}}}%
+\def\MemoParam{\@ifnextchar[%]%
+\MemoP@i{\MemoP@i[]}}%
+\def\MemoP@i[#1]{{\setkeys{ov}{#1}}}%
+\def\LetterParam{\@ifnextchar[%]%
+\LetrP@i{\LetrP@i[]}}%
+\def\LetrP@i[#1]{{\setkeys{ov}{#1}}}%
+\def\FAZParam{\@ifnextchar[%]%
+\FAXP@i{\FAXP@i[]}}%
+\def\FAXP@i[#1]{{\setkeys{ov}{#1}}}%
+\def\LetterP#1{\setkeys{ov}{#1}}%
+\def\newlfmP#1{\setkeys{ov}{#1}}%
+\def\LanguageP#1{\setkeys{ov}{#1}}%
+\def\FAXP#1{\setkeys{ov}{#1}}%
+\def\DimensP#1{\setkeys{ov}{#1}}%
+\def\MemoP#1{\setkeys{ov}{#1}}%
+\def\iffixt#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{true}}{}}%
+\def\iffixf#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{false}}{}}%
+\def\iffixq#1#2{\ifthenelse{\equal{#1}{true}}{#2}{}}%
+\txa{Done with key definitions sections}%
 %    \end{macrocode}
 %
 %    \paragraph{Language option definitions:}  
@@ -2148,17 +2257,24 @@
 \def\PhrMore#1{\def\@more@phr{#1}}%
 \def\PhrPRend#1{\def\@PRend@phr{#1}}%
 \def\lth{}\def\sig{}\def\adr{}%
-\def\letrh#1{\def\@ltr@head{#1}}%       
+\def\letrh#1{\def\@ltr@h{#1}\setboolean{@ov@l}{true}}%       
+\define@key{ov}{letrh}{\def\@ltr@h{#1}\setboolean{@ov@l}{true}}%       
+\txa{Done with phr defs}%
 \def\waterpage#1{\def\@water@page{#1}\setboolean{@use@water}{true}}%
-\define@key{ov}{letrh}{\def\@ltr@head{#1}}%       
 \define@key{ov}{waterpage}{\def\@water@page{#1}\setboolean{@use@water}{true}}%
-\def\@adr@to{}\def\@adr@fr{}\def\@ltr@head{}\def\@sig@blok{}\def\@water@page{}%
-\def\addrt#1{\def\@adr@to{#1}\setboolean{@over@setto}{true}}%         
-\define@key{ov}{addrt}{\def\@adr@to{#1}\setboolean{@over@setto}{true}}%
-\def\addrf#1{\def\@adr@fr{#1}\setboolean{@over@setfr}{true}}%
-\define@key{ov}{addrf}{\def\@adr@fr{#1}\setboolean{@over@setfr}{true}}%       
-\def\sigtr#1{\def\@sig@blok{#1}\setboolean{@over@sigbl}{true}}%%       
-\define@key{ov}{sigtr}{\def\@sig@blok{#1}\setboolean{@over@sigbl}{true}}%       
+\txa{Waterpage}%
+\def\Background#1{\def\@Backgrnd{#1}\setboolean{@Bg@use}{true}}%
+\txa{Z}%
+\define@key{ov}{Background}{\def\@Backgrnd{#1}\setboolean{@Bg@use}{true}}%
+\def\background#1{\setboolean{@bg@use}{true}\def\@backgrnd{#1}}%
+\define@key{ov}{background}{\setboolean{@bg@use}{true}\def\@backgrnd{#1}}%
+\def\@adr@t{}\def\@adr@f{}\def\@ltr@h{}\def\@sig@b{}%
+\def\addrt#1{\def\@adr@t{#1}\setboolean{@ov@t}{true}}%         
+\define@key{ov}{addrt}{\def\@adr@t{#1}\setboolean{@ov@t}{true}}%
+\def\addrf#1{\def\@adr@f{#1}\setboolean{@ov@f}{true}}%
+\define@key{ov}{addrf}{\def\@adr@f{#1}\setboolean{@ov@f}{true}}%       
+\def\sigtr#1{\def\@sig@b{#1}\setboolean{@ov@s}{true}}%%       
+\define@key{ov}{sigtr}{\def\@sig@b{#1}\setboolean{@ov@s}{true}}%       
 \def\MinHead#1{\setlength{\@Min@Hgt@Head}{#1}}
 \define@key{ov}{MinHead}{\setlength{\@Min@Hgt@Head}{#1}}%       
 \def\minhead#1{\setlength{\@Min@Hgt@head}{#1}}
@@ -2177,34 +2293,34 @@
 \define@key{ov}{minright}{\setlength{\@Min@Hgt@right}{#1}}%       
 \def\@def@l{american}%
 \def\@am@phr{%
-  \DatePhrase{Date}%
-  \PhrFAXcovp{FAX Cover Page}%
-  \PhrFAXpgcnt{FAX Page Count}%
-  \PhrFax{FAX}%
-  \PhrPager{Pager}%
-  \PhrEmail{E-mail}%
-  \PhrDocument{Document}%
-  \PhrPhone{Telephone}%
-  \PhrRe{Re}%
-  \PhrSubre{\ensuremath{\mathrm{Re}_2}}%
-  \PhrCc{cc}%
-  \PhrPs{Ps}%
-  \PhrMessage{Message}%
-  \PhrPps{Pps}%
-  \PhrPpps{Ppps}%
-  \PhrEncl{Encl}%
-  \PhrPager{Page}%
-  \PhrTo{To}%
-  \PhrFrom{From}%
-  \PhrRegard{Regarding}%
-  \PhrContact{Contact}%
-  \PhrRelease{For Immediate Release}%
-  \PhrMore{--- more ---}%
-  \PhrPRend{\# \# \#}%
+\DatePhrase{Date}%
+\PhrFAXcovp{FAX Cover Page}%
+\PhrFAXpgcnt{FAX Page Count}%
+\PhrFax{FAX}%
+\PhrPager{Pager}%
+\PhrEmail{E-mail}%
+\PhrDocument{Document}%
+\PhrPhone{Telephone}%
+\PhrRe{Re}%
+\PhrSubre{\ensuremath{\mathrm{Re}_2}}%
+\PhrCc{cc}%
+\PhrPs{Ps}%
+\PhrMessage{Message}%
+\PhrPps{Pps}%
+\PhrPpps{Ppps}%
+\PhrEncl{Encl}%
+\PhrPager{Page}%
+\PhrTo{To}%
+\PhrFrom{From}%
+\PhrRegard{Regarding}%
+\PhrContact{Contact}%
+\PhrRelease{For Immediate Release}%
+\PhrMore{--- more ---}%
+\PhrPRend{\# \# \#}%
 }
 \InputIfFileExists{extracd.tex}%
-  {\typeout{Reading alternative macro definitions from extracd.tex}}%
-  {\typeout{All language information must be in newlfm.cls}}%
+{\typeout{Reading alternative macro definitions from extracd.tex}}%
+{\typeout{All language information must be in newlfm.cls}}%
 \DeclareOption{french}%
 {\def\@def@l{french}\setboolean{@l@fr}{true} \@fr@phr}%
 \define@key{ov}{french}[true]%
@@ -2312,6 +2428,18 @@
 \define@key{ov}{memoskipafter}{\setlength{\@post@memo@sp}{#1}}%
 \def\memoskipbefore#1{\setlength{\@pre@memo@sp}{#1}}%
 \define@key{ov}{memoskipbefore}{\setlength{\@pre@memo@sp}{#1}}%
+\def\restletter#1{\setboolean{@resta@l}{true}%
+\begin{lrbox}{\@resta@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}}
+\def\restlettera#1{\setboolean{@resta@l}{true}%
+\begin{lrbox}{\@resta@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}}
+\def\restletterb#1{\setboolean{@restb@l}{true}%
+\begin{lrbox}{\@restb@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}}
+\def\restletterc#1{\setboolean{@restc@l}{true}%
+\begin{lrbox}{\@restc@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}}
+\def\restletterd#1{\setboolean{@restd@l}{true}%
+\begin{lrbox}{\@restd@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}}
+\def\restlettere#1{\setboolean{@reste@l}{true}%
+\begin{lrbox}{\@reste@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}}
 \def\unprtop#1{\setlength{\@unpr@tp}{#1}}
 \define@key{ov}{unprtop}{\setlength{\@unpr@tp}{#1}}%
 \def\unprbottom#1{\setlength{\@unpr@bm}{#1}}
@@ -2399,11 +2527,11 @@
 \define@key{ov}{memofaxfrom}[true]{\iffixt{#1}{@memo@j}}%
 \DeclareOption{memodate}{\setboolean{@dt@p}{true}}%          
 \define@key{ov}{memodate}[true]{\iffixt{#1}{@dt@p}}%
-\DeclareOption{memonofrom}   {\setboolean{@memo@e}{true}}%   
+\DeclareOption{memonofrom}{\setboolean{@memo@e}{true}}%   
 \define@key{ov}{memonofrom}[true]{\iffixt{#1}{@memo@e}}%
-\DeclareOption{memonoto}     {\setboolean{@memo@g}{true}}%   
+\DeclareOption{memonoto}{\setboolean{@memo@g}{true}}%   
 \define@key{ov}{memonoto}[true]{\iffixt{#1}{@memo@g}}%
-\DeclareOption{memonore}     {\setboolean{@memo@f}{true}}%   
+\DeclareOption{memonore}{\setboolean{@memo@f}{true}}%   
 \define@key{ov}{memonore}[true]{\iffixt{#1}{@memo@f}}%
 \DeclareOption{fullmemo}{\@opt@flm}%                         
 \define@key{ov}{fullmemo}[true]{\iffixq{#1}{\@opt@flm}}%
@@ -2450,21 +2578,21 @@
 \define@key{ov}{faxheaderpage}[true]%
 {\iffixq{#1}{\setboolean{@fax@hdr@pg}{true}\setboolean{@fax@RA}{false}}}%
 \DeclareOption{faxhba}%   Print fax header block on leader in right top-margin.
-  {\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}%
+{\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}%
 \define@key{ov}{faxhba}[true]%   Print fax header block on leader in right top-margin.
-  {\iffixq{#1}{\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}}%
+{\iffixq{#1}{\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}}%
 \DeclareOption{faxhbb}%   Print fax header block - leader - upper right quad letter 
-  {\setboolean{@fax@RU}{true}\setboolean{@fax@hdr@pg}{false}}%   
+{\setboolean{@fax@RU}{true}\setboolean{@fax@hdr@pg}{false}}%   
 \DeclareOption{faxbla}%   Print FAX block in \Rheader
-  {\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}%
+{\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}%
 \DeclareOption{faxblb}%
-  {\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}%
+{\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}%
 \DeclareOption{faxblocka}%Print FAX block in \Rheader
-  {\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}%
+{\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}%
 \define@key{ov}{faxblocka}[true]%
 {\iffixq{#1}{\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}}%
 \DeclareOption{faxblockb}%
-  {\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}%
+{\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}%
 \define@key{ov}{faxblockb}[true]%
 {\iffixq{#1}{\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}}%
 %    \end{macrocode}
@@ -2861,12 +2989,12 @@ unprleft=-1pt}%
 }%
 \renewcommand{\theequation}{\@arabic\c@equation}%
 \renewcommand{\footnoterule}{%
-  \kern-\p@%
-  \hrule \@width .4\columnwidth%
-  \kern .6\p@}%
-  \long\def\@makefntext#1{%
-    \noindent \hangindent 5\p@%
-    \hb@xt@5\p@{\hss\@makefnmark}#1}%
+\kern-\p@%
+\hrule \@width .4\columnwidth%
+\kern .6\p@}%
+\long\def\@makefntext#1{%
+\noindent \hangindent 5\p@%
+\hb@xt@5\p@{\hss\@makefnmark}#1}%
 %    \end{macrocode}%
 %
 %    \begin{macro}{table,figure}
@@ -2888,12 +3016,12 @@ unprleft=-1pt}%
 \newenvironment{table*}{\@dblfloat{table}}{\end@dblfloat}%
 \setlength\@caption@skip@above{10\p@}\setlength\@caption@skip@below{0\p@}%
 \long\def\@makecaption#1#2{%
-  \vskip\@caption@skip@above\sbox\@tempboxa{#1: #2}%
-  \ifdim \wd\@tempboxa >\hsize%
-    #1: #2\par%
-  \else\global \@minipagefalse%
-    \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
-  \fi\vskip\@caption@skip@below}%
+\vskip\@caption@skip@above\sbox\@tempboxa{#1: #2}%
+\ifdim \wd\@tempboxa >\hsize%
+#1: #2\par%
+\else\global \@minipagefalse%
+\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+\fi\vskip\@caption@skip@below}%
 \newcommand{\section}[1]{{\Large {\bfseries #1}}}%
 %    \end{macrocode}%
 % \end{macro}%
@@ -2904,24 +3032,24 @@ unprleft=-1pt}%
 %
 %    \begin{macrocode}
 \def\monthname{% timestamp function
-  \ifcase\month%
-    \or January\or February\or March\or April \or May\or June%
-    \or July\or August\or September\or October \or November\or December%
-  \fi%
+\ifcase\month%
+\or January\or February\or March\or April \or May\or June%
+\or July\or August\or September\or October \or November\or December%
+\fi%
 }%
 \def\timestring{%
-  \begingroup%
-    \count0 = \time \divide\count0 by 60%
-    \count2 = \count0 % the hour%
-    \count4 = \time \multiply\count0 by 60%
-    \advance\count4 by -\count0 % the minute%
-    \ifnum\count4<10 \toks1 = {0}    \else \toks1 = {}\fi%
-    \ifnum\count2<12 \toks0 = {A.M.} %
-      \else \toks0 = {P.M.}\advance\count2 by -12\fi%
-    \ifnum\count2=0 \count2 = 12 \fi % make midnight 12%
-    {\number\count2:\the\toks1 \number\count4%
-    \thinspace \the\toks0}%
-  \endgroup%
+\begingroup%
+\count0 = \time \divide\count0 by 60%
+\count2 = \count0 % the hour%
+\count4 = \time \multiply\count0 by 60%
+\advance\count4 by -\count0 % the minute%
+\ifnum\count4<10 \toks1 = {0}    \else \toks1 = {}\fi%
+\ifnum\count2<12 \toks0 = {A.M.} %
+\else \toks0 = {P.M.}\advance\count2 by -12\fi%
+\ifnum\count2=0 \count2 = 12 \fi % make midnight 12%
+{\number\count2:\the\toks1 \number\count4%
+\thinspace \the\toks0}%
+\endgroup%
 }%
 \def\timestamp{\number\day\space\monthname\space\number\year,\space\timestring}%
 \def\datestamp{\monthname\space\number\day,\space\number\year}%
@@ -2937,6 +3065,12 @@ unprleft=-1pt}%
 \define@key{ov}{nofootline}[true]{\iffixq{#1}{\setboolean{@fl}{false}}}%
 \def\nolines{\setboolean{@fl}{false}\setboolean{@hl}{false}}%
 \define@key{ov}{nolines}[true]{\iffixq{#1}{\setboolean{@fl}{false}\setboolean{@hl}{false}}}%
+\def\noHeadline{\setboolean{@Hl}{false}}%
+\define@key{ov}{noHeadline}[true]{\iffixq{#1}{\setboolean{@Hl}{false}}}%
+\def\noFootline{\setboolean{@Fl}{false}}%
+\define@key{ov}{noFootline}[true]{\iffixq{#1}{\setboolean{@Fl}{false}}}%
+\def\noLines{\setboolean{@Fl}{false}\setboolean{@hl}{false}}%
+\define@key{ov}{noLines}[true]{\iffixq{#1}{\setboolean{@Fl}{false}\setboolean{@Hl}{false}}}%
 \def\@plhl{1}\def\nopheadline{\def\@plhl{0}}%
 \def\@plfl{1}\def\nopfootline{\def\@plfl{0}}%
 \def\Headlinewd#1{\setlength{\@Hrw}{#1}}%
@@ -2960,20 +3094,20 @@ unprleft=-1pt}%
 % \begin{macro}{ltrhead}%
 %    \begin{macrocode}%
 \fancypagestyle{ltrhead}{%
-  \def\ifta{0}%
-  \txa{Before setting up letterhead}%
-  \showdim{Letterhead}%
-  \fancyhf{}%
-  \txa{Current stored info: \string\@ltr@head:\@ltr@head}%
-  \fancyfoot[L]{\@Lfooter}%
-  \fancyfoot[C]{\@Cfooter}%
-  \fancyfoot[R]{\@Rfooter}%
-  \fancyhead[L]{\@Lheader \vspace*{\the\@marg@tp@a}}%
-  \fancyhead[C]{\@Cheader \vspace*{\the\@marg@tp@a}}%
-  \fancyhead[R]{\@Rheader \vspace*{\the\@marg@tp@a}}%
-  \showdim{Letterhead}%
-  \def\@lodd{\relax}%
-  \def\@rodd{\relax}%
+\def\ifta{0}%
+\txa{Before setting up letterhead}%
+\showdim{Letterhead}%
+\fancyhf{}%
+\txa{Current stored info: \string\@ltr@h:\@ltr@h}%
+\fancyfoot[L]{\@Lfooter}%
+\fancyfoot[C]{\@Cfooter}%
+\fancyfoot[R]{\@Rfooter}%
+\fancyhead[L]{\@Lheader \vspace*{\the\@marg@tp@a}}%
+\fancyhead[C]{\@Cheader \vspace*{\the\@marg@tp@a}}%
+\fancyhead[R]{\@Rheader \vspace*{\the\@marg@tp@a}}%
+\showdim{Letterhead}%
+\def\@lodd{\relax}%
+\def\@rodd{\relax}%
 %   \ifempty{\@LUheader}{}{\vspace*{-.5in}\@LUheader \vspace*{.5in}}%
 %  }%   % section 2 goes here if we go to plan b%
 %   \ifempty{\@RUheader}{}{}%
@@ -2985,24 +3119,24 @@ unprleft=-1pt}%
 % \txa{Left: \the\@utila}%
 % \settoheight{\@utila}{\@Cheader}\settodepth{\@utilb}{\@Cheader}\addtolength{\@utila}{\@utilb}%
 % \txa{Center: \the\@utila}%
-  \txa{After setting up letterhead}%
-  \def\ifta{0}%
+\txa{After setting up letterhead}%
+\def\ifta{0}%
 }%
 %    \end{macrocode}%
 % \end{macro}%
 % \begin{macro}{othhead}%
 %    \begin{macrocode}%
 \fancypagestyle{othhead}{%
-  \def\ifta{0}%
-  \fancyhf{}%
-  \fancyfoot[L]{\@lfooter}%
-  \fancyfoot[C]{\@cfooter}%
-  \fancyfoot[R]{\@rfooter}%
-  \fancyhead[L]{\@lheader \vspace*{\the\@marg@tp@a}}%
-  \fancyhead[R]{\@rheader \vspace*{\the\@marg@tp@a}}%
-  \fancyhead[C]{\@cheader \vspace*{\the\@marg@tp@a}}%
-  \def\@lodd{\relax}%
-  \def\@rodd{\relax}%
+\def\ifta{0}%
+\fancyhf{}%
+\fancyfoot[L]{\@lfooter}%
+\fancyfoot[C]{\@cfooter}%
+\fancyfoot[R]{\@rfooter}%
+\fancyhead[L]{\@lheader \vspace*{\the\@marg@tp@a}}%
+\fancyhead[R]{\@rheader \vspace*{\the\@marg@tp@a}}%
+\fancyhead[C]{\@cheader \vspace*{\the\@marg@tp@a}}%
+\def\@lodd{\relax}%
+\def\@rodd{\relax}%
 }%
 %    \end{macrocode}
 % \end{macro}%
@@ -3038,115 +3172,115 @@ unprleft=-1pt}%
 %</package>
 %<*setdim>
 \def\ifta{0}\def\iftb{0}%
-\def\txa#1{\ifthenelse{\equal{\ifta}{1}}{\typeout{#1}}{}}%%
+\def\txa#1{\ifthenelse{\equal{\ifta}{1}}{\typeout{#1}}{}}%
 \def\settext#1#2#3#4#5{%
-  \txa{\string\textheight: #1}\txa{\string\textwidth: #2}%
-  \global\setlength{\textheight}{#1}%
-  \global\setlength{\textwidth}{#2}%
-  \global\setlength{\evensidemargin}{#3}%
-  \global\setlength{\oddsidemargin}{#4}%
-  \global\setlength{\columnsep}{#5}%
-  \@change@text%
-}
+\txa{\string\textheight: #1}\txa{\string\textwidth: #2}%
+\global\setlength{\textheight}{#1}%
+\global\setlength{\textwidth}{#2}%
+\global\setlength{\evensidemargin}{#3}%
+\global\setlength{\oddsidemargin}{#4}%
+\global\setlength{\columnsep}{#5}%
+\@change@text%
+}%
 \def\lsettext#1#2#3#4#5{%
-  \txa{\string\textheight: #1}\txa{\string\textwidth: #2}%
-  \setlength{\textheight}{#1}%
-  \setlength{\textwidth}{#2}%
-  \setlength{\evensidemargin}{#3}%
-  \setlength{\oddsidemargin}{#4}%
-  \setlength{\columnsep}{#5}%
-  \@lchange@text%
-}
+\txa{\string\textheight: #1}\txa{\string\textwidth: #2}%
+\setlength{\textheight}{#1}%
+\setlength{\textwidth}{#2}%
+\setlength{\evensidemargin}{#3}%
+\setlength{\oddsidemargin}{#4}%
+\setlength{\columnsep}{#5}%
+\@lchange@text%
+}%
 \def\@change@text{%
-  \global\setlength{\@colht}{\textheight}%
-  \txa{\string\@colht:\the\@colht}%
-  \global\setlength{\@colroom}{\textheight}%
-  \global\setlength{\vsize}{\textheight}%
-  \global\setlength{\columnwidth}{\textwidth}%
-  \if@twocolumn%
-    \advance\columnwidth-\columnsep \divide\columnwidth\tw@%
-    \@firstcolumntrue%
-  \fi%
-  \global\setlength{\hsize}{\columnwidth}%
-  \global\setlength{\linewidth}{\hsize}%
+\global\setlength{\@colht}{\textheight}%
+\txa{\string\@colht:\the\@colht}%
+\global\setlength{\@colroom}{\textheight}%
+\global\setlength{\vsize}{\textheight}%
+\global\setlength{\columnwidth}{\textwidth}%
+\if@twocolumn%
+\advance\columnwidth-\columnsep \divide\columnwidth\tw@%
+\@firstcolumntrue%
+\fi%
+\global\setlength{\hsize}{\columnwidth}%
+\global\setlength{\linewidth}{\hsize}%
 }%
 \def\@lchange@text{%
-  \setlength{\@colht}{\textheight}%
-  \txa{\string\@colht:\the\@colht}%
-  \setlength{\@colroom}{\textheight}%
-  \setlength{\vsize}{\textheight}%
-  \setlength{\columnwidth}{\textwidth}%
-  \if@twocolumn%
-    \advance\columnwidth-\columnsep \divide\columnwidth\tw@%
-    \@firstcolumntrue%
-  \fi%
-  \setlength{\hsize}{\columnwidth}%
-  \setlength{\linewidth}{\hsize}%
+\setlength{\@colht}{\textheight}%
+\txa{\string\@colht:\the\@colht}%
+\setlength{\@colroom}{\textheight}%
+\setlength{\vsize}{\textheight}%
+\setlength{\columnwidth}{\textwidth}%
+\if@twocolumn%
+\advance\columnwidth-\columnsep \divide\columnwidth\tw@%
+\@firstcolumntrue%
+\fi%
+\setlength{\hsize}{\columnwidth}%
+\setlength{\linewidth}{\hsize}%
 }%
 \def\retdims{%
-  \showdim{Setpage A}%
-  \txa{In setpage: \npind}%
-  \global\setlength{\@xda}{\textheight}%
-  \global\setlength{\@xdb}{\textwidth}%
-  \global\setlength{\@xdc}{\evensidemargin}%
-  \global\setlength{\@xdd}{\oddsidemargin}%
-  \global\setlength{\@xde}{\columnsep}%
-  \global\setlength{\@xdf}{\topmargin}%
-  \global\setlength{\@xdg}{\headheight}%
-  \global\setlength{\@xdh}{\headsep}%
-  \global\setlength{\@xdi}{\footskip}%
-}
+\showdim{Setpage A}%
+\txa{In setpage: \npind}%
+\global\setlength{\@xda}{\textheight}%
+\global\setlength{\@xdb}{\textwidth}%
+\global\setlength{\@xdc}{\evensidemargin}%
+\global\setlength{\@xdd}{\oddsidemargin}%
+\global\setlength{\@xde}{\columnsep}%
+\global\setlength{\@xdf}{\topmargin}%
+\global\setlength{\@xdg}{\headheight}%
+\global\setlength{\@xdh}{\headsep}%
+\global\setlength{\@xdi}{\footskip}%
+}%
 \def\rstdims{%
-  \showdim{Setpage A}%
-  \txa{In setpage: \npind}%
-  \global\setlength{\textheight}{\@xda}%
-  \global\setlength{\textwidth}{\@xdb}%
-  \global\setlength{\evensidemargin}{\@xdc}%
-  \global\setlength{\oddsidemargin}{\@xdd}%
-  \global\setlength{\columnsep}{\@xde}%
-  \global\setlength{\topmargin}{\@xdf}%
-  \global\setlength{\headheight}{\@xdg}%
-  \global\setlength{\headsep}{\@xdh}%
-  \global\setlength{\footskip}{\@xdi}%
-  \@change@text%
-}
+\showdim{Setpage A}%
+\txa{In setpage: \npind}%
+\global\setlength{\textheight}{\@xda}%
+\global\setlength{\textwidth}{\@xdb}%
+\global\setlength{\evensidemargin}{\@xdc}%
+\global\setlength{\oddsidemargin}{\@xdd}%
+\global\setlength{\columnsep}{\@xde}%
+\global\setlength{\topmargin}{\@xdf}%
+\global\setlength{\headheight}{\@xdg}%
+\global\setlength{\headsep}{\@xdh}%
+\global\setlength{\footskip}{\@xdi}%
+\@change@text%
+}%
 \def\setpage#1#2#3#4#5#6#7#8#9{%
-  \showdim{Setpage A}%
-  \txa{In setpage: \npind}%
-  \settext{#1}{#2}{#3}{#4}{#5}%
-  \global\setlength{\topmargin}{#6}%
-  \global\setlength{\headheight}{#7}%
-  \global\setlength{\headsep}{#8}%
-  \global\setlength{\footskip}{#9}%
-  \@change@text%
-  \showdim{Setpage B}%
-}
+\showdim{Setpage A}%
+\txa{In setpage: \npind}%
+\settext{#1}{#2}{#3}{#4}{#5}%
+\global\setlength{\topmargin}{#6}%
+\global\setlength{\headheight}{#7}%
+\global\setlength{\headsep}{#8}%
+\global\setlength{\footskip}{#9}%
+\@change@text%
+\showdim{Setpage B}%
+}%
 \def\lsetpage#1#2#3#4#5#6#7#8#9{%
-  \showdim{Setpage A}%
-  \txa{In setpage: \npind}%
-  \lsettext{#1}{#2}{#3}{#4}{#5}%
-  \setlength{\topmargin}{#6}%
-  \setlength{\headheight}{#7}%
-  \setlength{\headsep}{#8}%
-  \setlength{\footskip}{#9}%
-  \@lchange@text%
-  \showdim{Setpage B}%
-}
+\showdim{Setpage A}%
+\txa{In setpage: \npind}%
+\lsettext{#1}{#2}{#3}{#4}{#5}%
+\setlength{\topmargin}{#6}%
+\setlength{\headheight}{#7}%
+\setlength{\headsep}{#8}%
+\setlength{\footskip}{#9}%
+\@lchange@text%
+\showdim{Setpage B}%
+}%
 \def\changetext#1#2#3#4#5{%
-  \addtolength{\textheight}{#1}%
-  \addtolength{\textwidth}{#2}%
-  \addtolength{\evensidemargin}{#3}%
-  \addtolength{\oddsidemargin}{#4}%
-  \addtolength{\columnsep}{#5}%
-  \@change@text%
+\addtolength{\textheight}{#1}%
+\addtolength{\textwidth}{#2}%
+\addtolength{\evensidemargin}{#3}%
+\addtolength{\oddsidemargin}{#4}%
+\addtolength{\columnsep}{#5}%
+\@change@text%
 }%
 \def\changepage#1#2#3#4#5#6#7#8#9{%
-  \changetext{#1}{#2}{#3}{#4}{#5}%
-  \addtolength{\topmargin}{#6}%
-  \addtolength{\headheight}{#7}%
-  \addtolength{\headsep}{#8}%
-  \addtolength{\footskip}{#9}%
-  \@change@text%
+\changetext{#1}{#2}{#3}{#4}{#5}%
+\addtolength{\topmargin}{#6}%
+\addtolength{\headheight}{#7}%
+\addtolength{\headsep}{#8}%
+\addtolength{\footskip}{#9}%
+\@change@text%
 }%
 %</setdim>
 %<*addrset>
@@ -3154,26 +3288,8 @@ unprleft=-1pt}%
 %    \begin{macrocode}
 \def\makeletterhead#1#2{\expandafter\newcommand\csname lth#1\endcsname{#2}}%
 \def\makelth#1#2{\expandafter\newcommand\csname lth#1\endcsname{#2}}%
-%    \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\makesig}
-%    In this wrapper macro, signature \info{} is associated with a name,
-%    just as described above in the makelth macro. 
-%
-%    \begin{macrocode}
 \def\makesignature#1#2{\expandafter\newcommand\csname sig#1\endcsname{#2}}%
 \def\makesig#1#2{\expandafter\newcommand\csname sig#1\endcsname{#2}}%
-%    \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\makeadr}
-%    In this wrapper macro, address \info{} is associated with a name,
-%    just as described above in the makelth macro.  This includes macros
-%    such as nameto, phoneto, faxto and other \info{} associated with a
-%    particular addressee.
-%
-%    \begin{macrocode}
 \def\makeadr#1#2{\expandafter\newcommand\csname adr#1\endcsname{#2}}%
 \def\makeaddress#1#2{\expandafter\newcommand\csname adr#1\endcsname{#2}}%
 %    \end{macrocode}
@@ -3205,20 +3321,28 @@ unprleft=-1pt}%
 %    ({\bfseries NOTE:} Although this is under development, these commands are
 %    not yet functional.
 %    \begin{macrocode}
-\providecommand{\@Backgrd}{}    \providecommand{\@backgrd}{}%
-\providecommand{\@Lfooter}{}    \providecommand{\@Cfooter}{}%
-\providecommand{\@Rfooter}{}    \providecommand{\@lfooter}{}%
-\providecommand{\@cfooter}{}    \providecommand{\@rfooter}{}%
-\providecommand{\@LOfooter}{}   \providecommand{\@COfooter}{}%
-\providecommand{\@ROfooter}{}   \providecommand{\@Lheader}{}%
-\providecommand{\@Cheader}{}    \providecommand{\@Rheader}{}%
-\providecommand{\@lheader}{}    \providecommand{\@cheader}{}%
-\providecommand{\@rheader}{}    \providecommand{\@LUheader}{}%
-\providecommand{\@CUheader}{}   \providecommand{\@RUheader}{}%
-\providecommand{\@Rmarg}{}      \providecommand{\@Lmarg}{}%
-\providecommand{\@rmarg}{}      \providecommand{\@lmarg}{}%
-\def\Backgrd#1{\setboolean{@Bg@use}{true}\def\@Backgrd{#1}}%
-\def\backgrd#1{\setboolean{@bg@use}{true}\def\@backgrd{#1}}%
+\providecommand{\@Lfooter}{}%    
+\providecommand{\@Cfooter}{}%
+\providecommand{\@Rfooter}{}%    
+\providecommand{\@lfooter}{}%
+\providecommand{\@cfooter}{}%    
+\providecommand{\@rfooter}{}%
+\providecommand{\@LOfooter}{}%   
+\providecommand{\@COfooter}{}%
+\providecommand{\@ROfooter}{}%   
+\providecommand{\@Lheader}{}%
+\providecommand{\@Cheader}{}%    
+\providecommand{\@Rheader}{}%
+\providecommand{\@lheader}{}%    
+\providecommand{\@cheader}{}%
+\providecommand{\@rheader}{}%    
+\providecommand{\@LUheader}{}%
+\providecommand{\@CUheader}{}%   
+\providecommand{\@RUheader}{}%
+\providecommand{\@Rmarg}{}%      
+\providecommand{\@Lmarg}{}%
+\providecommand{\@rmarg}{}%      
+\providecommand{\@lmarg}{}%
 \def\Lfooter#1{\setboolean{@Lf@use}{true}\def\@Lfooter{#1}}%
 \def\Cfooter#1{\setboolean{@Cf@use}{true}\def\@Cfooter{#1}}%
 \def\Rfooter#1{\setboolean{@Rf@use}{true}\def\@Rfooter{#1}}%
@@ -3349,7 +3473,7 @@ unprleft=-1pt}%
 %
 %    |\nolines| seemingly should disable header and footer lines, but
 %    it only takes effect via |\@set@em@up|, which is only used if
-%    |@over@all| is true.  It's not in this case.  That might be a
+%    |@ov@a| is true.  It's not in this case.  That might be a
 %    problem with the implementation of |\nolines|.  It would be good
 %    if the redefinition of the line width only persisted within a
 %    give lfmp environment.  It's not clear that is the case.
@@ -3374,6 +3498,10 @@ unprleft=-1pt}%
 \def\ifta{0}%
 \txa{Setup beginning of press release}%
 \renewcommand{\headrulewidth}{0pt}\renewcommand{\footrulewidth}{0pt}%
+\setboolean{@Hl}{false}\setlength{\@Hrw}{0pt}%
+\setboolean{@hl}{false}\setlength{\@hrw}{0pt}%
+\setboolean{@Fl}{false}\setlength{\@Frw}{0pt}%
+\setboolean{@fl}{false}\setlength{\@frw}{0pt}%
 \begin{flushleft}%
 \rule{\textwidth}{1pt} \par \noindent%
 \centerline{\LARGE \@pr@release \strut} \par\noindent%
@@ -3496,17 +3624,17 @@ unprleft=-1pt}%
 %    FAX Block A is boxed in a frame.
 %    \begin{macrocode}
 \newcommand{\faxblocka}{%
-  \sbox{\fba}{%
-    \framebox[3.0in]{\parbox[b]{3.0in}{\setlength{\tabcolsep}{0pt}
-    \begin{tabular}{p{1.0in}p{2in}}
-    \multicolumn{2}{l}{\Large \hspace*{.25in} 
-      \@fax@phr{} \@doc@phr} \\ \hline
-      \@hnfr@phr:\space & \@name@fr \\
-      \@fax@phr:\space & \@fax@fr \\ \hline
-      \@hnto@phr:\space & \@name@to \\
-      \@fax@phr:\space & \@fax@to \\ \hline
-      \@re@phr: & \@re@line
-    \end{tabular}}}}}
+\sbox{\fba}{%
+\framebox[3.0in]{\parbox[b]{3.0in}{\setlength{\tabcolsep}{0pt}%
+\begin{tabular}{p{1.0in}p{2in}}%
+\multicolumn{2}{l}{\Large \hspace*{.25in}%
+\@fax@phr{} \@doc@phr} \\ \hline%
+\@hnfr@phr:\space & \@name@fr \\%
+\@fax@phr:\space & \@fax@fr \\ \hline%
+\@hnto@phr:\space & \@name@to \\%
+\@fax@phr:\space & \@fax@to \\ \hline%
+\@re@phr: & \@re@line%
+\end{tabular}}}}}%
 %    \end{macrocode}
 % \end{macro}
 % \begin{macro}{faxblockb}
@@ -3518,13 +3646,13 @@ unprleft=-1pt}%
 %    FAX Block B is boxed in a frame.
 %    \begin{macrocode}
 \newcommand{\faxblockb}{%
-  {\parbox[t]{\textwidth}{\fbox{%
-    \begin{tabular}{llll}%
-    \@hnfr@phr:\space & \@name@fr & \@hnto@phr:\space & \@name@to \\%
-    \@fax@phr:\space & \@fax@fr & \@fax@phr:\space & \@fax@to \\%
-    \@phn@phr:\space & \@phn@fr & \@phn@phr:\space & \@phn@to \\%
-    \@re@phr: & \multicolumn{3}{l}{\parbox[t]{2in}{\@re@line}} \\%
-    \end{tabular}%
+{\parbox[t]{\textwidth}{\fbox{%
+\begin{tabular}{llll}%
+\@hnfr@phr:\space & \@name@fr & \@hnto@phr:\space & \@name@to \\%
+\@fax@phr:\space & \@fax@fr & \@fax@phr:\space & \@fax@to \\%
+\@phn@phr:\space & \@phn@fr & \@phn@phr:\space & \@phn@to \\%
+\@re@phr: & \multicolumn{3}{l}{\parbox[t]{2in}{\@re@line}} \\%
+\end{tabular}%
 }}}}%
 %    \end{macrocode}
 % \end{macro}
@@ -3553,11 +3681,11 @@ unprleft=-1pt}%
 %    This is the actual section for openlfm.
 %    \begin{macrocode}
 \newcommand*{\openlfm}{%
-\ifthenelse{\boolean{@use@water}}
-{\ClearShipoutPicture
-\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@water@page}}
-}{}
 \def\ifta{0}%
+\ifthenelse{\boolean{@use@water}}%
+{\ClearShipoutPicture%
+\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@water@page}}%
+}{}%
 \ifthenelse{\boolean{@marg@Ruse}}%             Here we set up right-side marginal notes
 {\setlength{\@utile}{-\@Hgt@Head+\@marg@rt@tp@d}% Adjust column top to leftmargintopdist
 \normalmarginpar%
@@ -3643,6 +3771,8 @@ unprleft=-1pt}%
 \def\@fix@one@box{%
 \settowidth{\@utila}{\setlength{\tabcolsep}{0pt}%
 \begin{tabular}{l}%
+\hspace*{1pt}
+\vspace*{\@cls@sk@b} \\%
 \ifthenelse{\boolean{@use@close}}{{\@closeline}\\}{}%
 \vspace*{\@cls@sk@a} \\%
 \ifthenelse{\boolean{@use@sig}}%
@@ -3650,17 +3780,14 @@ unprleft=-1pt}%
 \ifthenelse{\boolean{@use@sig@nm}}{\@sig@nm\\}{\@name@fr\\}%
 \end{tabular}%
 }%
-\sbox{\@sig@box@b} {%
-\setlength{\tabcolsep}{0pt}\noindent%
-\begin{tabular}{p{\the\@utila}}%
+\sbox{\@sig@box@b} {\begin{tabular}{p{\the\@utila}}%
+\hspace*{1pt}\vspace*{\@cls@sk@b} \\%
 \ifthenelse{\boolean{@use@close}}{{\@closeline}\\}{}%
 \vspace*{\@cls@sk@a} \\%
 \ifthenelse{\boolean{@use@sig}}%
 {{\@sig@fr}\\}{\parbox[t][\the\@sig@sp][t]{.1pt}{\vspace*{\@sig@sp}}\\}%
 \ifthenelse{\boolean{@use@sig@nm}}{\@sig@nm\\}{\@name@fr\\}%
-\end{tabular}%
-}%
-}%
+\end{tabular}}}%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \def\closlfm{\def\ifta{0}\txa{In closlfm}%
 \setlength{\@utila}{\@sig@sk@b}\addtolength{\@utila}{-1.5\baselineskip}%
@@ -3672,7 +3799,7 @@ unprleft=-1pt}%
 {}% note require {} to finish ifthenelse
 %%%%%
 \ifthenelse{\boolean{@mult@sig}}%
-{%
+{%\begin{flushleft}%
 \ifthenelse{\equal{\the@sig@tot}{1}}{\def\@sig@tab{l}}{}% Set multiple columns
 \ifthenelse{\equal{\the@sig@tot}{2}}{\def\@sig@tab{ll}}{}%
 \ifthenelse{\equal{\the@sig@tot}{3}}{\def\@sig@tab{lll}}{}%
@@ -3717,13 +3844,17 @@ unprleft=-1pt}%
 \ifthenelse{\equal{\the@lab@cnt@col}{\the@sig@tot}}%
 {\txa{else condition}%
 \setcounter{@lab@cnt@col}{0}\setlength{\@utile}{\@sig@sk@r}}{\hspace*{\the\@sig@sk@c}}}%
-\vspace*{\the\@sig@sk@a}%
+\vspace*{\the\@sig@sk@a}%\end{flushleft}
 }%
 {% Print normal signature
-\@fix@one@box%
+\@fix@one@box\settowidth{\@utila}{\usebox{\@sig@box@b}}% Set up box, measure
 \Prnt@Chk{@sig@p}{@sig@l}{@sig@c}%
-{\parbox{\@utila}{\usebox{\@sig@box@b}}}{}{\@cls@sk@b}{\@sig@sk@a}%
-}%
+{\parbox{\@utila}{\usebox{\@sig@box@b}}}{}{\@cls@sk@b}{\@sig@sk@a}}%
+\ifthenelse{\boolean{@resta@l}}{\newpage\usebox{\@resta@ltr}}{}%
+\ifthenelse{\boolean{@restb@l}}{\newpage\usebox{\@restb@ltr}}{}%
+\ifthenelse{\boolean{@restc@l}}{\newpage\usebox{\@restc@ltr}}{}%
+\ifthenelse{\boolean{@restd@l}}{\newpage\usebox{\@restd@ltr}}{}%
+\ifthenelse{\boolean{@reste@l}}{\newpage\usebox{\@reste@ltr}}{}%
 }%
 %    \end{macrocode}
 % \end{macro}
@@ -3754,111 +3885,111 @@ unprleft=-1pt}%
 %    not begin with \verb|@|).  User-optional commands are defined in the text
 %    above. 
 %    \begin{macrocode}
-\def\addr#1{\protect\def\@addrxx{#1}}           \addr{}%
-\def\addrfr#1{\protect\def\@addr@fr{#1}}        \addrfr{}%
-\def\addrfrom#1{\protect\def\@addr@fr{#1}}      \addrfrom{}%
-\def\addrto#1{\protect\def\@addr@to{#1}}        \addrto{}%
-\def\cclist#1{\protect\def\@cc@item{#1}}        \cclist{---BLANK---}%  cc list
-\def\city#1{\protect\def\@city{#1}}             \city{}%
+\def\addr#1{\protect\def\@addrxx{#1}}\addr{}%
+\def\addrfr#1{\protect\def\@addr@fr{#1}}\addrfr{}%
+\def\addrfrom#1{\protect\def\@addr@fr{#1}}\addrfrom{}%
+\def\addrto#1{\protect\def\@addr@to{#1}}\addrto{}%
+\def\cclist#1{\protect\def\@cc@item{#1}}\cclist{---BLANK---}%  cc list
+\def\city#1{\protect\def\@city{#1}}\city{}%
 \def\closeln#1{\protect\def\@closeline{#1}\setboolean{@use@close}{true}}%   Letter closing line
 \def\closeline#1{\protect\def\@closeline{#1}\setboolean{@use@close}{true}}%
-\def\dateset#1{\protect\def\@xdate{#1}}         \dateset{\today}% Letter date
-\def\dept#1{\protect\def\@dept{#1}}             \dept{}%
-\def\degree#1{\protect\def\@degree{#1}}         \degree{}%
-\def\email#1{\protect\def\@email{#1}}           \email{}%
-\def\emailb#1{\protect\def\@emailb{#1}}         \emailb{}%
-\def\emailc#1{\protect\def\@emailc{#1}}         \emailc{}%
-\def\emailbto#1{\protect\def\@emailb@to{#1}}    \emailbto{}%
-\def\emailcto#1{\protect\def\@emailc@to{#1}}    \emailcto{}%
-\def\emailbfr#1{\protect\def\@emailb@fr{#1}}    \emailbfr{}%
-\def\emailcfr#1{\protect\def\@emailc@fr{#1}}    \emailcfr{}%
-\def\emailfr#1{\protect\def\@email@fr{#1}}      \emailfr{}%
-\def\emailfrom#1{\protect\def\@email@fr{#1}}    \emailfrom{}%
-\def\emailto#1{\protect\def\@email@to{#1}}      \emailto{}%
-\def\encllist#1{\protect\def\@encl@item{#1}}    \encllist{---BLANK---}%
-\def\fax#1{\protect\def\@fax{#1}}               \fax{}%
-\def\faxto#1{\protect\def\@fax@to{#1}}          \faxto{}%
-\def\faxfr#1{\protect\def\@fax@fr{#1}}          \faxfr{}%
-\def\faxfrom#1{\protect\def\@fax@fr{#1}}        \faxfrom{}%
-\def\faxmssg#1{\protect\def\@fax@mssg{#1}}      \faxmssg{}% 
-\def\fname#1{\protect\def\@f@name{#1}}          \fname{}%    
-\def\fnameto#1{\protect\def\@f@name@to{#1}}     \fnameto{}%
-\def\fnamefr#1{\protect\def\@f@name@fr{#1}}     \fnamefr{}%
-\def\greet#1{\protect\def\@greet{#1}}           \greet{}%
-\def\greetto#1{\protect\def\@greet@to{#1}}      \greetto{}%
-\def\greetfr#1{\protect\def\@greet@fr{#1}}      \greetfr{}%
-\def\initials#1{\protect\def\@init@item{#1}}    \initials{}%
-\def\institute#1{\protect\def\@institute{#1}}   \institute{}%
-\def\jtitle#1{\protect\def\@jtitle{#1}}         \jtitle{}%
-\def\lname#1{\protect\def\@l@name{#1}}          \lname{}%
-\def\lnameto#1{\protect\def\@l@name@to{#1}}     \lnameto{}%
-\def\lnamefr#1{\protect\def\@l@name@fr{#1}}     \lnamefr{}%
-\def\mname#1{\protect\def\@m@name{#1}}          \mname{}%
-\def\mnameto#1{\protect\def\@m@name@to{#1}}     \mnameto{}%
-\def\mnamefr#1{\protect\def\@m@name@fr{#1}}     \mnamefr{}%
-\def\name#1{\protect\def\@namev{#1}}            \name{}%
-\def\namefr#1{\protect\def\@name@fr{#1}}        \namefr{}%
-\def\namefrom#1{\protect\def\@name@fr{#1}}      \namefrom{}%
-\def\nameto#1{\protect\def\@name@to{#1}}        \nameto{}%
-\def\organization#1{\protect\def\@org{#1}}      \organization{}%
-\def\pager#1{\protect\def\@pager{#1}}           \pager{}% 
-\def\pagerto#1{\protect\def\@pager@to{#1}}      \pagerto{}%  
-\def\pagerfrom#1{\protect\def\@pager@fr{#1}}    \pagerfrom{}%
-\def\pagerfr#1{\protect\def\@pager@fr{#1}}      \pagerfr{}% 
-\def\phone#1{\protect\def\@phn{#1}}             \phone{}%               Phone
-\def\phonea#1{\protect\def\@phna{#1}}           \phonea{}%              Phone
-\def\phoneb#1{\protect\def\@phnb{#1}}           \phoneb{}%              Phone
-\def\phonec#1{\protect\def\@phnc{#1}}           \phonec{}%              Phone
-\def\phoned#1{\protect\def\@phnd{#1}}           \phoned{}%              Phone
-\def\phoneo#1{\protect\def\@phno{#1}}           \phoneo{}%              Phone
-\def\phoneh#1{\protect\def\@phnh{#1}}           \phoneh{}%              Phone
-\def\phonefr#1{\protect\def\@phn@fr{#1}}        \phonefr{}%            Phone from
-\def\phonefrom#1{\protect\def\@phn@fr{#1}}      \phonefrom{}%          Phone from
-\def\phoneafrom#1{\protect\def\@phn@fr{#1}}     \phoneafrom{}%         Phone from
-\def\phoneafr#1{\protect\def\@phn@fr{#1}}       \phoneafrom{}%         Phone from
-\def\phonebfrom#1{\protect\def\@phnb@fr{#1}}    \phonebfrom{}%         Phone from
-\def\phonecfrom#1{\protect\def\@phnc@fr{#1}}    \phonecfrom{}%         Phone from
-\def\phonedfrom#1{\protect\def\@phnd@fr{#1}}    \phonedfrom{}%         Phone from
-\def\phonebfr#1{\protect\def\@phnb@fr{#1}}      \phonebfrom{}%         Phone from
-\def\phonecfr#1{\protect\def\@phnc@fr{#1}}      \phonecfrom{}%         Phone from
-\def\phonedfr#1{\protect\def\@phnd@fr{#1}}      \phonedfrom{}%         Phone from
-\def\phoneto#1{\protect\def\@phn@to{#1}}        \phoneto{}%            Phone to
-\def\phoneoto#1{\protect\def\@phno@to{#1}}      \phoneoto{}%            Phone to
-\def\phonehfr#1{\protect\def\@phnh@fr{#1}}      \phonehfr{}%            Phone to
-\def\phoneofr#1{\protect\def\@phno@fr{#1}}      \phoneofr{}%            Phone to
-\def\phonehto#1{\protect\def\@phnh@to{#1}}      \phonehto{}%            Phone to
-\def\phoneato#1{\protect\def\@phn@to{#1}}       \phoneto{}%           Phone to
-\def\phonebto#1{\protect\def\@phnb@to{#1}}      \phonebto{}%           Phone to
-\def\phonecto#1{\protect\def\@phnc@to{#1}}      \phonecto{}%           Phone to
-\def\phonedto#1{\protect\def\@phnd@to{#1}}      \phonedto{}%           Phone to
-\def\plngadj#1{\protect\def\@f@f{#1}}           \plngadj{0in}%
-\def\position#1{\protect\def\@position{#1}}     \position{}%
-\def\ppsitem#1{\protect\def\@pps@item{#1}}      \ppsitem{---BLANK---}%
-\def\pppsitem#1{\protect\def\@ppps@item{#1}}    \pppsitem{---BLANK---}%
-\def\psitem#1{\protect\def\@ps@item{#1}}        \psitem{---BLANK---}%
-\def\re#1{\protect\def\@re@line{#1}}            \re{---BLANK---}%
+\def\dateset#1{\protect\def\@xdate{#1}}\dateset{\today}% Letter date
+\def\dept#1{\protect\def\@dept{#1}}\dept{}%
+\def\degree#1{\protect\def\@degree{#1}}\degree{}%
+\def\email#1{\protect\def\@email{#1}}\email{}%
+\def\emailb#1{\protect\def\@emailb{#1}}\emailb{}%
+\def\emailc#1{\protect\def\@emailc{#1}}\emailc{}%
+\def\emailbto#1{\protect\def\@emailb@to{#1}}\emailbto{}%
+\def\emailcto#1{\protect\def\@emailc@to{#1}}\emailcto{}%
+\def\emailbfr#1{\protect\def\@emailb@fr{#1}}\emailbfr{}%
+\def\emailcfr#1{\protect\def\@emailc@fr{#1}}\emailcfr{}%
+\def\emailfr#1{\protect\def\@email@fr{#1}}\emailfr{}%
+\def\emailfrom#1{\protect\def\@email@fr{#1}}\emailfrom{}%
+\def\emailto#1{\protect\def\@email@to{#1}}\emailto{}%
+\def\encllist#1{\protect\def\@encl@item{#1}}\encllist{---BLANK---}%
+\def\fax#1{\protect\def\@fax{#1}}\fax{}%
+\def\faxto#1{\protect\def\@fax@to{#1}}\faxto{}%
+\def\faxfr#1{\protect\def\@fax@fr{#1}}\faxfr{}%
+\def\faxfrom#1{\protect\def\@fax@fr{#1}}\faxfrom{}%
+\def\faxmssg#1{\protect\def\@fax@mssg{#1}}\faxmssg{}% 
+\def\fname#1{\protect\def\@f@name{#1}}\fname{}%    
+\def\fnameto#1{\protect\def\@f@name@to{#1}}\fnameto{}%
+\def\fnamefr#1{\protect\def\@f@name@fr{#1}}\fnamefr{}%
+\def\greet#1{\protect\def\@greet{#1}}\greet{}%
+\def\greetto#1{\protect\def\@greet@to{#1}}\greetto{}%
+\def\greetfr#1{\protect\def\@greet@fr{#1}}\greetfr{}%
+\def\initials#1{\protect\def\@init@item{#1}}\initials{}%
+\def\institute#1{\protect\def\@institute{#1}}\institute{}%
+\def\jtitle#1{\protect\def\@jtitle{#1}}\jtitle{}%
+\def\lname#1{\protect\def\@l@name{#1}}\lname{}%
+\def\lnameto#1{\protect\def\@l@name@to{#1}}\lnameto{}%
+\def\lnamefr#1{\protect\def\@l@name@fr{#1}}\lnamefr{}%
+\def\mname#1{\protect\def\@m@name{#1}}\mname{}%
+\def\mnameto#1{\protect\def\@m@name@to{#1}}\mnameto{}%
+\def\mnamefr#1{\protect\def\@m@name@fr{#1}}\mnamefr{}%
+\def\name#1{\protect\def\@namev{#1}}\name{}%
+\def\namefr#1{\protect\def\@name@fr{#1}}\namefr{}%
+\def\namefrom#1{\protect\def\@name@fr{#1}}\namefrom{}%
+\def\nameto#1{\protect\def\@name@to{#1}}\nameto{}%
+\def\organization#1{\protect\def\@org{#1}}\organization{}%
+\def\pager#1{\protect\def\@pager{#1}}\pager{}% 
+\def\pagerto#1{\protect\def\@pager@to{#1}}\pagerto{}%  
+\def\pagerfrom#1{\protect\def\@pager@fr{#1}}\pagerfrom{}%
+\def\pagerfr#1{\protect\def\@pager@fr{#1}}\pagerfr{}% 
+\def\phone#1{\protect\def\@phn{#1}}\phone{}%               Phone
+\def\phonea#1{\protect\def\@phna{#1}}\phonea{}%              Phone
+\def\phoneb#1{\protect\def\@phnb{#1}}\phoneb{}%              Phone
+\def\phonec#1{\protect\def\@phnc{#1}}\phonec{}%              Phone
+\def\phoned#1{\protect\def\@phnd{#1}}\phoned{}%              Phone
+\def\phoneo#1{\protect\def\@phno{#1}}\phoneo{}%              Phone
+\def\phoneh#1{\protect\def\@phnh{#1}}\phoneh{}%              Phone
+\def\phonefr#1{\protect\def\@phn@fr{#1}}\phonefr{}%            Phone from
+\def\phonefrom#1{\protect\def\@phn@fr{#1}}\phonefrom{}%          Phone from
+\def\phoneafrom#1{\protect\def\@phn@fr{#1}}\phoneafrom{}%         Phone from
+\def\phoneafr#1{\protect\def\@phn@fr{#1}}\phoneafrom{}%         Phone from
+\def\phonebfrom#1{\protect\def\@phnb@fr{#1}}\phonebfrom{}%         Phone from
+\def\phonecfrom#1{\protect\def\@phnc@fr{#1}}\phonecfrom{}%         Phone from
+\def\phonedfrom#1{\protect\def\@phnd@fr{#1}}\phonedfrom{}%         Phone from
+\def\phonebfr#1{\protect\def\@phnb@fr{#1}}\phonebfrom{}%         Phone from
+\def\phonecfr#1{\protect\def\@phnc@fr{#1}}\phonecfrom{}%         Phone from
+\def\phonedfr#1{\protect\def\@phnd@fr{#1}}\phonedfrom{}%         Phone from
+\def\phoneto#1{\protect\def\@phn@to{#1}}\phoneto{}%            Phone to
+\def\phoneoto#1{\protect\def\@phno@to{#1}}\phoneoto{}%            Phone to
+\def\phonehfr#1{\protect\def\@phnh@fr{#1}}\phonehfr{}%            Phone to
+\def\phoneofr#1{\protect\def\@phno@fr{#1}}\phoneofr{}%            Phone to
+\def\phonehto#1{\protect\def\@phnh@to{#1}}\phonehto{}%            Phone to
+\def\phoneato#1{\protect\def\@phn@to{#1}}\phoneto{}%           Phone to
+\def\phonebto#1{\protect\def\@phnb@to{#1}}\phonebto{}%           Phone to
+\def\phonecto#1{\protect\def\@phnc@to{#1}}\phonecto{}%           Phone to
+\def\phonedto#1{\protect\def\@phnd@to{#1}}\phonedto{}%           Phone to
+\def\plngadj#1{\protect\def\@f@f{#1}}\plngadj{0in}%
+\def\position#1{\protect\def\@position{#1}}\position{}%
+\def\ppsitem#1{\protect\def\@pps@item{#1}}\ppsitem{---BLANK---}%
+\def\pppsitem#1{\protect\def\@ppps@item{#1}}\pppsitem{---BLANK---}%
+\def\psitem#1{\protect\def\@ps@item{#1}}\psitem{---BLANK---}%
+\def\re#1{\protect\def\@re@line{#1}}\re{---BLANK---}%
 \def\regarding#1{\setboolean{@pt@regard}{true}\protect\def\@regard@line{#1}}%
-\def\role#1{\protect\def\@role{#1}}             \role{}%
-\def\sender#1{\protect\def\@sender{#1}}         \sender{}%
+\def\role#1{\protect\def\@role{#1}}\role{}%
+\def\sender#1{\protect\def\@sender{#1}}\sender{}%
 \def\signature#1{\protect\def\@sig@fr{#1}\setboolean{@use@sig}{true}}%
 \def\sigacross#1{\setcounter{@sig@tot}{#1}}%
 \def\siglist#1{\protect\def\@sig@list{#1}\setboolean{@mult@sig}{true}%
 \setboolean{@sig@l}{true}\setboolean{@sig@c}{false}}%
 \def\signame#1{\protect\def\@sig@nm{#1}\setboolean{@use@sig@nm}{true}}% 
-\def\socsec#1{\protect\def\@socsec{#1}}         \socsec{}%
-\def\SSnumto#1{\protect\def\@SS@num@to{#1}}     \SSnumto{}%
-\def\state#1{\protect\def\@state{#1}}           \state{}%
-\def\staddr#1{\protect\def\@staddr{#1}}         \staddr{}%
-\def\subre#1{\protect\def\@sub@re@line{#1}}     \subre{}% 
-\def\subdept#1{\protect\def\@subdept{#1}}       \subdept{}%
-\def\zip#1{\protect\def\@zip{#1}}               \zip{}%
+\def\socsec#1{\protect\def\@socsec{#1}}\socsec{}%
+\def\SSnumto#1{\protect\def\@SS@num@to{#1}}\SSnumto{}%
+\def\state#1{\protect\def\@state{#1}}\state{}%
+\def\staddr#1{\protect\def\@staddr{#1}}\staddr{}%
+\def\subre#1{\protect\def\@sub@re@line{#1}}\subre{}% 
+\def\subdept#1{\protect\def\@subdept{#1}}\subdept{}%
+\def\zip#1{\protect\def\@zip{#1}}\zip{}%
 \def\byline#1{\setboolean{@pr@by}{true}\protect\def\@pr@byline{#1}}%
 \byline{}\setboolean{@pr@by}{false}%
 \def\headline#1{\protect\def\@pr@headline{#1}%
-                \protect\def\@pr@shorthead{#1}}  \headline{---BLANK---}%
-\def\release#1{\protect\def\@pr@release{#1}}     \release{\@release@phr}%
-\def\shorthead#1{\protect\def\@pr@shorthead{#1}}  % set by headline
-\regarding{---BLANK---} \setboolean{@pt@regard}{false}%
+\protect\def\@pr@shorthead{#1}}\headline{---BLANK---}%
+\def\release#1{\protect\def\@pr@release{#1}}\release{\@release@phr}%
+\def\shorthead#1{\protect\def\@pr@shorthead{#1}}\regarding{---BLANK---}% 
+\setboolean{@pt@regard}{false}%
 \siglist{}%
 \signature{}%            
 \sigacross{1}%
@@ -3877,52 +4008,86 @@ unprleft=-1pt}%
 %    above. 
 %    \begin{macrocode}
 \def\fixadr#1{\expandafter\csname adr#1\endcsname}%
-\def\setadrto#1{\global\protect\let\@addrxx\@empty%
-\global\protect\let\@namev\@empty      \global\protect\let\@phn\@empty%
-\global\protect\let\@phna\@empty       \global\protect\let\@phnb\@empty%
-\global\protect\let\@phnc\@empty       \global\protect\let\@phnd\@empty%
-\global\protect\let\@phno\@empty       \global\protect\let\@phnh\@empty%
-\global\protect\let\@pager\@empty      \global\protect\let\@fax\@empty%
-\global\protect\let\@greet\@empty      \global\protect\let\@email\@empty%
-\global\protect\let\@emailb\@empty     \global\protect\let\@emailc\@empty%
-\global\protect\let\@l@name\@empty     \global\protect\let\@f@name\@empty%
-#1\txa{In setadrto - }\txa{Second}
-\txa{\@addrxx}
-\global\protect\let\@addr@to\@addrxx \txa{Z}  \global\protect\let\@name@to\@namev%
-\txa{A1}
-\global\protect\let\@phn@to\@phn       \global\protect\let\@phna@to\@phna%
-\global\protect\let\@phnb@to\@phnb     \global\protect\let\@phnc@to\@phnc%
-\txa{A2}
-\global\protect\let\@phnd@to\@phnd     \global\protect\let\@phno@to\@phno%
-\global\protect\let\@phnh@to\@phnh     \global\protect\let\@pager@to\@pager%
-\txa{A3}
-\global\protect\let\@fax@to\@fax       \global\protect\let\@greet@to\@greet%
-\global\protect\let\@email@to\@email   \global\protect\let\@emailb@to\@emailb%
-\txa{A4}
-\global\protect\let\@emailc@to\@emailc \global\protect\let\@l@name@to\@l@name%
+\def\setadrto#1{%
+\global\protect\let\@addrxx\@empty%
+\global\protect\let\@namev\@empty%
+\global\protect\let\@phn\@empty%
+\global\protect\let\@phna\@empty%
+\global\protect\let\@phnb\@empty%
+\global\protect\let\@phnc\@empty%
+\global\protect\let\@phnd\@empty%
+\global\protect\let\@phno\@empty%
+\global\protect\let\@phnh\@empty%
+\global\protect\let\@pager\@empty%
+\global\protect\let\@fax\@empty%
+\global\protect\let\@greet\@empty%
+\global\protect\let\@email\@empty%
+\global\protect\let\@emailb\@empty%
+\global\protect\let\@emailc\@empty%
+\global\protect\let\@l@name\@empty%
+\global\protect\let\@f@name\@empty%
+#1\txa{In setadrto - }\txa{Second}\txa{\@addrxx}%
+\global\protect\let\@addr@to\@addrxx% 
+\txa{Z}%
+\global\protect\let\@name@to\@namev%
+\txa{A1}%
+\global\protect\let\@phn@to\@phn%       
+\global\protect\let\@phna@to\@phna%
+\global\protect\let\@phnb@to\@phnb%     
+\global\protect\let\@phnc@to\@phnc%
+\txa{A2}%
+\global\protect\let\@phnd@to\@phnd%     
+\global\protect\let\@phno@to\@phno%
+\global\protect\let\@phnh@to\@phnh%     
+\global\protect\let\@pager@to\@pager%
+\txa{A3}%
+\global\protect\let\@fax@to\@fax%       
+\global\protect\let\@greet@to\@greet%
+\global\protect\let\@email@to\@email%   
+\global\protect\let\@emailb@to\@emailb%
+\txa{A4}%
+\global\protect\let\@emailc@to\@emailc% 
+\global\protect\let\@l@name@to\@l@name%
 \global\protect\let\@f@name@to\@f@name%
-\txa{End of setadrto}
+\txa{End of setadrto}%
 }%
-\def\setadrfr#1{\global\protect\let\@addrxx\@empty%
-\global\protect\let\@namev\@empty      \global\protect\let\@phn\@empty%
-\global\protect\let\@phna\@empty       \global\protect\let\@phnb\@empty%
-\global\protect\let\@phnc\@empty       \global\protect\let\@phnd\@empty%
-\global\protect\let\@phno\@empty       \global\protect\let\@phnh\@empty%
-\global\protect\let\@pager\@empty      \global\protect\let\@fax\@empty%
-\global\protect\let\@greet\@empty      \global\protect\let\@email\@empty%
-\global\protect\let\@emailb\@empty     \global\protect\let\@emailc\@empty%
-\global\protect\let\@l@name\@empty     \global\protect\let\@f@name\@empty%
+\def\setadrfr#1{%
+\global\protect\let\@addrxx\@empty%
+\global\protect\let\@namev\@empty%
+\global\protect\let\@phn\@empty%
+\global\protect\let\@phna\@empty%
+\global\protect\let\@phnb\@empty%
+\global\protect\let\@phnc\@empty%
+\global\protect\let\@phnd\@empty%
+\global\protect\let\@phno\@empty%
+\global\protect\let\@phnh\@empty%
+\global\protect\let\@pager\@empty%
+\global\protect\let\@fax\@empty%
+\global\protect\let\@greet\@empty%
+\global\protect\let\@email\@empty%
+\global\protect\let\@emailb\@empty%
+\global\protect\let\@emailc\@empty%
+\global\protect\let\@l@name\@empty%
+\global\protect\let\@f@name\@empty%
 #1\txa{In setadrfr}%
-\global\protect\let\@addr@fr\@addrxx   \global\protect\let\@name@fr\@namev%
-\global\protect\let\@phn@fr\@phn       \global\protect\let\@phna@fr\@phna%
-\global\protect\let\@phnb@fr\@phnb     \global\protect\let\@phnc@fr\@phnc%
-\global\protect\let\@phnd@fr\@phnd     \global\protect\let\@phno@fr\@phno%
-\global\protect\let\@phnh@fr\@phnh     \global\protect\let\@pager@fr\@pager%
-\global\protect\let\@fax@fr\@fax       \global\protect\let\@greet@fr\@greet%
-\global\protect\let\@email@fr\@email   \global\protect\let\@emailb@fr\@emailb%
-\global\protect\let\@emailc@fr\@emailc \global\protect\let\@l@name@fr\@l@name%
+\global\protect\let\@addr@fr\@addrxx%   
+\global\protect\let\@name@fr\@namev%
+\global\protect\let\@phn@fr\@phn%       
+\global\protect\let\@phna@fr\@phna%
+\global\protect\let\@phnb@fr\@phnb%     
+\global\protect\let\@phnc@fr\@phnc%
+\global\protect\let\@phnd@fr\@phnd%     
+\global\protect\let\@phno@fr\@phno%
+\global\protect\let\@phnh@fr\@phnh%     
+\global\protect\let\@pager@fr\@pager%
+\global\protect\let\@fax@fr\@fax%       
+\global\protect\let\@greet@fr\@greet%
+\global\protect\let\@email@fr\@email%   
+\global\protect\let\@emailb@fr\@emailb%
+\global\protect\let\@emailc@fr\@emailc% 
+\global\protect\let\@l@name@fr\@l@name%
 \global\protect\let\@f@name@fr\@f@name%
-\txa{End of setadrfr}
+\txa{End of setadrfr}%
 }%
 \DeclareRobustCommand*{\printnameto}{\@name@to}%
 \DeclareRobustCommand*{\printaddrto}{\@addr@to}%
@@ -3994,10 +4159,10 @@ unprleft=-1pt}%
 %    each different letter.
 %
 %    \begin{macrocode}
-\newif \if@read@one \@read@onetrue
-\def\@ltr@info@name{letrinfo.tex}
-%\DeclareOption{InfoFileName}[1]{\renewcommand{\@ltr@info@name}{#1}}
-\define@key{ov}{InfoFileName}{\def\@ltr@info@name{#1}}
+\newif \if@read@one \@read@onetrue%
+\def\@ltr@info@name{letrinfo.tex}%
+%\DeclareOption{InfoFileName}[1]{\renewcommand{\@ltr@info@name}{#1}}%
+\define@key{ov}{InfoFileName}{\def\@ltr@info@name{#1}}%
 \InputIfFileExists{\@ltr@info@name}%
 {\typeout{Reading default letter definitions from \@ltr@info@name}}%
 {\typeout{\@ltr@info@name\ not found.  All letter definitions must be in newlfm.cls}}%
@@ -4023,7 +4188,7 @@ unprleft=-1pt}%
 %      commands, but are no longer supported.
 %    \end{enumerate}
 %    \begin{macrocode}
-\gdef\npind{0}
+\gdef\npind{0}%
 \def\ltrbody#1{\protect\def\@ltr@body{#1}}%
 \DeclareRobustCommand{\letterbody}[1]{\def\@ltr@body{#1}}%
 \DeclareRobustCommand*{\doltr}[1]%
@@ -4032,20 +4197,20 @@ unprleft=-1pt}%
 \DeclareRobustCommand*{\@env@label}[1]{#1\parbox[t][\@lab@bh][t]{\@lab@bw}%
 {{\@name@to \\ \@addr@to} \hfill}}%
 \DeclareRobustCommand*{\@env@oth}[2]{%
-\txa{box height:\the\@lab@bh, box width:\the\@lab@bw, between: \the\tabcolsep}
+\txa{box height:\the\@lab@bh, box width:\the\@lab@bw, between: \the\tabcolsep}%
 \parbox[t][\@lab@bh][t]{\@lab@bw}{\@lab@size \strut #1 \\ #2 \strut}}%
-\DeclareRobustCommand*{\@env@row}[4]{\settowidth{\@utila}{\@hnfr@phr:}
-\setlength{\tabcolsep}{0pt} 
-\fbox{\parbox[t][\@lab@bh][t]{\@lab@bw}{
-\@lab@size \begin{tabular}{ll}{\Large\@hnfr@phr:}&{\Large\@hnto@phr:}\\
-\parbox[t]{2.0in}{#3\\#4}&\parbox[t]{2.0in}{#1\\#2}
+\DeclareRobustCommand*{\@env@row}[4]{\settowidth{\@utila}{\@hnfr@phr:}%
+\setlength{\tabcolsep}{0pt}%
+\fbox{\parbox[t][\@lab@bh][t]{\@lab@bw}{%
+\@lab@size \begin{tabular}{ll}{\Large\@hnfr@phr:}&{\Large\@hnto@phr:}\\%
+\parbox[t]{2.0in}{#3\\#4}&\parbox[t]{2.0in}{#1\\#2}%
 \end{tabular}\hfill}}}%
 \DeclareRobustCommand*{\@env@col}[4]{\parbox[t][\@lab@bh][t]{\@lab@bw}{%
 {\@lab@size{\Large\@hnfr@phr:}\\#3\\#4\\{\Large\@hnto@phr:}\\#1\\#2}}}%
 \DeclareRobustCommand*{\x@env@col}[4]{\parbox[t][\@lab@bh][t]{\@lab@bw}{%
-{\@lab@size\begin{tabular}{p{.5in}p{3.25in}}{\Large\@hnfr@phr:}&#3\\&\parbox[t]{3.25in}{#4}
+{\@lab@size\begin{tabular}{p{.5in}p{3.25in}}{\Large\@hnfr@phr:}&#3\\&\parbox[t]{3.25in}{#4}%
 \vspace*{10pt}\\{\Large\@hnto@phr:}&#1\\&\parbox[t]{3.25in}{#2}\\\end{tabular}}}}%
-\def\multletter#1{\@for\@addr@x:=#1\do{{\oneletter{\@addr@x}}}}
+\def\multletter#1{\@for\@addr@x:=#1\do{{\oneletter{\@addr@x}}}}%
 \def\doletter#1{\setadrto{#1}\txa{ZA}%
 \begin{newlfm}\@ltr@body\end{newlfm}\gdef\npind{D}\newpage}%
 \def\oneletter#1{\txa{In oneletter}\setadrto{\csname adr#1\endcsname}\txa{ZB}\addrt{#1}%
@@ -4053,130 +4218,138 @@ unprleft=-1pt}%
 \DeclareRobustCommand*{\@env@ext}[1]{\txa{#1:1}%
 \setadrto{\csname adr#1\endcsname}\txa{ZC}\txa{#1:2}%    
 \@env@oth{\@name@to}{\@addr@to}\txa{#1:3}}%
-\def\clearall{\def\@ltr@head{}\def\@adr@to{}\def\@adr@fr{}\def\@sig@blok{}%
-\setboolean{@over@setto}{false}\setboolean{@over@setfr}{false}}%
+\def\clearall{\def\@ltr@h{}\def\@adr@t{}\def\@adr@f{}\def\@sig@b{}%
+\setboolean{@ov@t}{false}\setboolean{@ov@f}{false}
+\setboolean{@ov@s}{false}\setboolean{@ov@l}{false}}%
 \def\makeenvst{}%
 \def\makeenvfn{%
-  \def\ifta{0}%
-  \nolines\dateset{}\clearall\noheadline\@dim@resetfalse\def\headrulewidth{0pt}%
-  \@clear@box\def\footrulewidth{0pt}%
-  \setboolean{@over@all}{false}\setboolean{@fax@RA}{false}%  
-  \setboolean{@fax@RU}{false}\setboolean{@fax@hdr@pg}{false}% 
-  \setboolean{@no@spc}{true}\setboolean{@B@f}{false}%
-  \setboolean{@B@h}{false}\setboolean{@B@l}{false}%     
-  \setboolean{@B@r}{false}\setboolean{@b@f}{false}%        
-  \setboolean{@b@h}{false}\setboolean{@b@l}{false}%
-  \setboolean{@b@r}{false}\setboolean{@sig@p}{false}%   
-  \setboolean{@sig@mp}{false}\setboolean{@env@open}{false}%
-  \ifthenelse{\lengthtest{\@lab@th<12pt}}{\setlength{\@lab@th}{12.1pt}}{}%
-  \ifthenelse{\boolean{@use@envlab}}{%
-    \def\ifta{0}%
-    \setpage{11in}{8.5in}{-1in}{72pt}{0in}{-1in}{120pt}{0in}{20pt}%
-    \txa{use@envlab true}%
-    }%
-    {%
-    \gdef\npind{A3}%
-    \setpage{\@lab@pl}{8.5in}{-1in}{\@lab@lm}{0in}{-1in}{\@lab@th}{0in}{20pt}%
-    \txa{use@envlab false}%
-    \txa{headheight:\the\@lab@th}%
-  }%
-  \setboolean{@in@makeenv}{true}%
-  \begin{newlfm}\pagestyle{empty}\thispagestyle{empty}%
-  \def\ifta{0}%
-  \showdim{Start of makeenvfn}%
-  \@nlfm@util=0%
-  \setcounter{@lab@cnt@col}{0} \setcounter{@lab@cnt@row}{0}%
-  \setboolean{@env@open}{true} \setboolean{@env@close}{true}%
-  \setboolean{@ztila}{false}%
-  \def\ifta{0}%
-  \txa{Count:\number\@nlfm@addr,Test:\number\@nlfm@util}%
-  \setboolean{@do@any}{false}%
-  \loop \ifnum\number\@nlfm@util<\number\@nlfm@addr% 
-    \global\advance\@nlfm@util by1%
-    \txa{Loop S Count: \number\@nlfm@util}%
-    \setboolean{@do@any}{true}%
-    \def\@onet{\csname @aadr@t\number\@nlfm@util\endcsname}%
-    \def\@onef{\csname @aadr@f\number\@nlfm@util\endcsname}%
-    \txa{\string\@onet:\@onet -- \string\@onef:\@onef}
-    \protect\setadrto{\csname adr\@onet\endcsname}\txa{ZD}%
-    \protect\setadrfr{\csname adr\@onef\endcsname}%
-    \def\ifta{0}%
-    \txa{To: adr\@onet,\@name@to --- From: \@name@fr,adr\@onef --- Just:\@tab@just}%
-    \txa{@aadr@t\number\@nlfm@util: \csname @aadr@t\number\@nlfm@util\endcsname}%
-    \ifthenelse{\boolean{@env@open}}%
-      {\setcounter{@lab@cnt@row}{0}\txa{New page}%
-       \setboolean{@env@open}{false} \setboolean{@env@close}{true}%
-       \def\ifta{0}%
-       \showdim{Checking values before newpage}%
-       \gdef\npind{C}%
-       \ifthenelse{\boolean{@ztila}}{\newpage}{}%
-       \setboolean{@ztila}{true}%
-       \showdim{Checking values after newpage}%
-       \def\ifta{0}%
-       \setlength{\tabcolsep}{\@lab@bl} \begin{table}[t] \begin{tabular}{\@tab@just}%
-       \txa{Starting table}%
-      }%
-      {}%
-    \ifthenelse{\boolean{@lab@t}}%
-      {\txa{Label to only}\@env@oth{\@name@to}{\@addr@to}}{}%
-    \ifthenelse{\boolean{@lab@rft}}%
-      {\txa{Label row from to}\@env@row{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}%
-    \ifthenelse{\boolean{@lab@cft}}%
-      {\txa{Label col from to}\@env@col{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}%
-    \addtocounter{@lab@cnt@col}{1}%
-    \ifthenelse{\equal{\the@lab@cnt@col}{\the@lab@tot@col}}%
-      {\addtocounter{@lab@cnt@row}{1}\setcounter{@lab@cnt@col}{0}%
-       \txa{Ending row}\\}%
-      {\txa{Ending column}&}%
-    \ifthenelse{\equal{\the@lab@cnt@row}{\the@lab@tot@row}}%
-      {\setcounter{@lab@cnt@row}{0}\setcounter{@lab@cnt@col}{0}%
-       \txa{Ending table}\\ \end{tabular}\end{table}%
-       \setboolean{@env@close}{false} \setboolean{@env@open}{true}%
-      }%
-      {}%
-    \def\ifta{0}%
-    \txa{Loop E Count: \number\@nlfm@util}%
-  \repeat%
-  \txa{Ending table}%
-  \txa{Out of big loop: \arabic{@lab@cnt@col}}%
-  \def\ifta{0}%
-  \global\@nlfm@uta=\value{@lab@cnt@row}%
-  \sbox{\@x@l}{\phantom{A}}
-  \ifthenelse{\boolean{@env@close} \and \boolean{@do@any}}
-    {\txa{\the@lab@cnt@col, \the@lab@cnt@row, \the@lab@tot@row}
+\def\ifta{0}%
+\ClearShipoutPicture%
+\nolines\dateset{}\clearall\noheadline\noHeadline\@dim@resetfalse
+\setboolean{@Hl}{false}\setlength{\@Hrw}{0pt}%
+\setboolean{@hl}{false}\setlength{\@hrw}{0pt}%
+\setboolean{@Fl}{false}\setlength{\@Frw}{0pt}%
+\setboolean{@fl}{false}\setlength{\@frw}{0pt}%
+\@clear@box%
+\def\headrulewidth{0pt}%
+\def\footrulewidth{0pt}%
+\setboolean{@ov@a}{false}\setboolean{@fax@RA}{false}%  
+\setboolean{@fax@RU}{false}\setboolean{@fax@hdr@pg}{false}% 
+\setboolean{@no@spc}{true}\setboolean{@B@f}{false}%
+\setboolean{@B@h}{false}\setboolean{@B@l}{false}%     
+\setboolean{@B@r}{false}\setboolean{@b@f}{false}%        
+\setboolean{@b@h}{false}\setboolean{@b@l}{false}%
+\setboolean{@b@r}{false}\setboolean{@sig@p}{false}%   
+\setboolean{@sig@mp}{false}\setboolean{@env@open}{false}%
+\ifthenelse{\lengthtest{\@lab@th<12pt}}{\setlength{\@lab@th}{12.1pt}}{}%
+\ifthenelse{\boolean{@use@envlab}}{%
+\def\ifta{0}%
+\setpage{11in}{8.5in}{-1in}{72pt}{0in}{-1in}{120pt}{0in}{20pt}%
+\txa{use@envlab true}%
+}%
+{%
+\gdef\npind{A3}%
+\setpage{\@lab@pl}{8.5in}{-1in}{\@lab@lm}{0in}{-1in}{\@lab@th}{0in}{20pt}%
+\txa{use@envlab false}%
+\txa{headheight:\the\@lab@th}%
+}%
+\setboolean{@in@makeenv}{true}%
+\begin{newlfm}\pagestyle{empty}\thispagestyle{empty}%
+\def\ifta{0}%
+\showdim{Start of makeenvfn}%
+\@nlfm@util=0%
+\setcounter{@lab@cnt@col}{0} \setcounter{@lab@cnt@row}{0}%
+\setboolean{@env@open}{true} \setboolean{@env@close}{true}%
+\setboolean{@ztila}{false}%
+\def\ifta{0}%
+\txa{Count:\number\@nlfm@addr,Test:\number\@nlfm@util}%
+\setboolean{@do@any}{false}%
+\loop \ifnum\number\@nlfm@util<\number\@nlfm@addr% 
+\global\advance\@nlfm@util by1%
+\txa{Loop S Count: \number\@nlfm@util}%
+\setboolean{@do@any}{true}%
+\def\@onet{\csname @aadr@t\number\@nlfm@util\endcsname}%
+\def\@onef{\csname @aadr@f\number\@nlfm@util\endcsname}%
+\txa{\string\@onet:\@onet -- \string\@onef:\@onef}
+\protect\setadrto{\csname adr\@onet\endcsname}\txa{ZD}%
+\protect\setadrfr{\csname adr\@onef\endcsname}%
+\def\ifta{0}%
+\txa{To: adr\@onet,\@name@to --- From: \@name@fr,adr\@onef --- Just:\@tab@just}%
+\txa{@aadr@t\number\@nlfm@util: \csname @aadr@t\number\@nlfm@util\endcsname}%
+\ifthenelse{\boolean{@env@open}}%
+{\setcounter{@lab@cnt@row}{0}\txa{New page}%
+\setboolean{@env@open}{false} \setboolean{@env@close}{true}%
+\def\ifta{0}%
+\showdim{Checking values before newpage}%
+\gdef\npind{C}%
+\ifthenelse{\boolean{@ztila}}{\newpage}{}%
+\setboolean{@ztila}{true}%
+\showdim{Checking values after newpage}%
+\def\ifta{0}%
+\setlength{\tabcolsep}{\@lab@bl} \begin{table}[t] \begin{tabular}{\@tab@just}%
+\txa{Starting table}%
+}%
+{}%
+\ifthenelse{\boolean{@lab@t}}%
+{\txa{Label to only}\@env@oth{\@name@to}{\@addr@to}}{}%
+\ifthenelse{\boolean{@lab@rft}}%
+{\txa{Label row from to}\@env@row{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}%
+\ifthenelse{\boolean{@lab@cft}}%
+{\txa{Label col from to}\@env@col{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}%
+\addtocounter{@lab@cnt@col}{1}%
+\ifthenelse{\equal{\the@lab@cnt@col}{\the@lab@tot@col}}%
+{\addtocounter{@lab@cnt@row}{1}\setcounter{@lab@cnt@col}{0}%
+\txa{Ending row}\\}%
+{\txa{Ending column}&}%
+\ifthenelse{\equal{\the@lab@cnt@row}{\the@lab@tot@row}}%
+{\setcounter{@lab@cnt@row}{0}\setcounter{@lab@cnt@col}{0}%
+\txa{Ending table}\\ \end{tabular}\end{table}%
+\setboolean{@env@close}{false} \setboolean{@env@open}{true}%
+}%
+{}%
+\def\ifta{0}%
+\txa{Loop E Count: \number\@nlfm@util}%
+\repeat%
+\txa{Ending table}%
+\txa{Out of big loop: \arabic{@lab@cnt@col}}%
+\def\ifta{0}%
+\global\@nlfm@uta=\value{@lab@cnt@row}%
+\sbox{\@x@l}{\phantom{A}}
+\ifthenelse{\boolean{@env@close} \and \boolean{@do@any}}
+{\txa{\the@lab@cnt@col, \the@lab@cnt@row, \the@lab@tot@row}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Finish off current row first 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-      \ifthenelse{\equal{\arabic{@lab@cnt@col}}{0}}{}%
-        {\whiledo{\the@lab@cnt@col<\the@lab@tot@col}%
-          {\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}%
-           \addtocounter{@lab@cnt@col}{1}%
-           \ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{}} \\% 
-         \addtocounter{@lab@cnt@row}{1}
-        }%
+\ifthenelse{\equal{\arabic{@lab@cnt@col}}{0}}{}%
+{\whiledo{\the@lab@cnt@col<\the@lab@tot@col}%
+{\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}%
+\addtocounter{@lab@cnt@col}{1}%
+\ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{}} \\% 
+\addtocounter{@lab@cnt@row}{1}
+}%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Add remaining rows, each with all columns
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-      \whiledo{\the@lab@cnt@row<\the@lab@tot@row}%
-        {\setcounter{@lab@cnt@col}{0}
-         \whiledo{\the@lab@cnt@col<\the@lab@tot@col}%
-          {\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}% 
-           \addtocounter{@lab@cnt@col}{1}%
-           \ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{\\}
-          }
-         \addtocounter{@lab@cnt@row}{1}%
-         \ifthenelse{\the@lab@cnt@row<\the@lab@tot@row}
-           {}
-           {\\ \end{tabular}\end{table} \newpage 
-      \showdim{At the end of the table}}
-      \setboolean{@env@close}{false}%
-      \setboolean{@env@open}{true}
-      }%
-    }%
-    {}%
-  \setboolean{@use@envlab}{false}
-  \end{newlfm}%
-  \def\ifta{0}%
+\whiledo{\the@lab@cnt@row<\the@lab@tot@row}%
+{\setcounter{@lab@cnt@col}{0}
+\whiledo{\the@lab@cnt@col<\the@lab@tot@col}%
+{\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}% 
+\addtocounter{@lab@cnt@col}{1}%
+\ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{\\}
+}
+\addtocounter{@lab@cnt@row}{1}%
+\ifthenelse{\the@lab@cnt@row<\the@lab@tot@row}
+{}
+{\\ \end{tabular}\end{table} \newpage 
+\showdim{At the end of the table}}
+\setboolean{@env@close}{false}%
+\setboolean{@env@open}{true}
+}%
+}%
+{}%
+\setboolean{@use@envlab}{false}
+\end{newlfm}%
+\def\ifta{0}%
 }%
 %    \end{macrocode}
 % \end{macro}
@@ -4200,107 +4373,107 @@ unprleft=-1pt}%
 %    \end{enumerate}
 %    \begin{macrocode}
 \newenvironment{newlfm}{% Start of fax environment, in fax class%
-  \if@read@one \global\@read@onefalse \fi%
-  \def\ifta{0}\txa{Start of newlfm startup}
-  \txa{nameto: \@name@to}
-  \ifthenelse{\boolean{@over@all}}{\txa{overall: true}}{\txa{overall: false}}
-  \ifthenelse{\boolean{@over@setto}}{\txa{oversetto: true}}{\txa{oversetto: false}}
-  \txa{namefrom: \@name@fr}
-  \ifthenelse{\boolean{@over@setfr}}{\txa{oversetfr: true}}{\txa{oversetfr: false}}
-  \ifthenelse{\boolean{@over@all}}{%
-    \faxblocka%
-  }{}
-  \ifthenelse{\boolean{@fax@RA}}%
-    {\ifthenelse{\boolean{@fax@bla}}{\Rheader{\usebox{\fba}}}{}%
-     \ifthenelse{\boolean{@fax@blb}}{\Rheader{\faxblockb}}{}}{}%
-  \ifthenelse{\boolean{@fax@RU}}%
-    {\txa{setting up ruh}%
-     \ifthenelse{\boolean{@fax@bla}}{\RUheader{\faxblocka}}{}%
-     \ifthenelse{\boolean{@fax@blb}}{\RUheader{\faxblockb}}{}}{}%
-  \ifthenelse{\boolean{@over@all}}{%
-    \expandafter\csname lth\@ltr@head \endcsname%
-    \ifthenelse{\boolean{@over@setto}}{%
-      \setadrto{\expandafter\csname adr\@adr@to \endcsname}}{}%
-    \ifthenelse{\boolean{@over@setfr}}{\txa{True}%
-      \setadrfr{\expandafter\csname adr\@adr@fr \endcsname}}{\txa{false}}%
-    \ifthenelse{\boolean{@over@sigbl}}{\txa{True}%
-      \expandafter\csname sig\@sig@blok \endcsname}{\txa{false}}%
-    \@set@em@up
-  }{}
-  \txa{setting up ruh}%
-  \def\ifta{0}%
+\if@read@one \global\@read@onefalse \fi%
+\def\ifta{0}\txa{Start of newlfm startup}
+\ifthenelse{\boolean{@ov@a}}{\txa{oa: t}}{\txa{oa: f}}
+\ifthenelse{\boolean{@ov@t}}{\txa{ot: t}}{\txa{ot: f}}
+\ifthenelse{\boolean{@ov@f}}{\txa{of: t}}{\txa{of: f}}
+\ifthenelse{\boolean{@ov@l}}{\txa{ol: t}}{\txa{ol: f}}
+\ifthenelse{\boolean{@ov@s}}{\txa{os: t}}{\txa{os: f}}
+\txa{nameto: \@name@to}
+\txa{namefrom: \@name@fr}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%% Begin with fax cover page
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifthenelse{\boolean{@ov@a}}{\faxblocka}{}
+\ifthenelse{\boolean{@fax@RA}}%
+{\ifthenelse{\boolean{@fax@bla}}{\Rheader{\usebox{\fba}}}{}%
+\ifthenelse{\boolean{@fax@blb}}{\Rheader{\faxblockb}}{}}{}%
+\ifthenelse{\boolean{@fax@RU}}%
+{\txa{setting up ruh}%
+\ifthenelse{\boolean{@fax@bla}}{\RUheader{\faxblocka}}{}%
+\ifthenelse{\boolean{@fax@blb}}{\RUheader{\faxblockb}}{}}{}%
+\ifthenelse{\boolean{@ov@a}}{%
+\ifthenelse{\boolean{@ov@l}}{\expandafter\csname lth\@ltr@h \endcsname}{}%
+\ifthenelse{\boolean{@ov@t}}{\setadrto{\expandafter\csname adr\@adr@t \endcsname}}{}%
+\ifthenelse{\boolean{@ov@f}}{\setadrfr{\expandafter\csname adr\@adr@f \endcsname}}{}%
+\ifthenelse{\boolean{@ov@s}}{\expandafter\csname sig\@sig@b \endcsname}{}%
+\@set@em@up
+}{}
+\txa{setting up ruh}%
+\def\ifta{0}%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
-  \txa{name@to:\@name@to}
-  \ifthenelse{\boolean{@over@setto}}{\txa{oversetto:true}}{\txa{oversetto:false}}
-  \txa{name@fr:\@name@fr}
-  \ifthenelse{\boolean{@over@setfr}}{\txa{oversetfr:true}}{\txa{oversetfr:false}}
-  \retdims%
-  \ifthenelse{\boolean{@fax@hdr@pg}}%
-    {{\txa{FAX Page Setup}%
-    \def\ifta{0}%
-    \showdim{Before resetting dimensions for fax}%
-    \faxpage%
-    \def\ifta{0}%
-    \showdim{After resetting dimensions for fax}%
-    \showdim{After restoring dimensions for fax}%
-    \txa{Before newpage issued}%
-    \txa{After newpage issued}%
-    \showdim{After fax page setup}%
-  }}{}%
-  \rstdims%
+\txa{name@to:\@name@to}
+\ifthenelse{\boolean{@ov@t}}{\txa{oversetto:true}}{\txa{oversetto:false}}
+\txa{name@fr:\@name@fr}
+\ifthenelse{\boolean{@ov@f}}{\txa{oversetfr:true}}{\txa{oversetfr:false}}
+\retdims%
+\ifthenelse{\boolean{@fax@hdr@pg}}%
+{{\txa{FAX Page Setup}%
+\def\ifta{0}%
+\showdim{Before resetting dimensions for fax}%
+\faxpage%
+\def\ifta{0}%
+\showdim{After resetting dimensions for fax}%
+\showdim{After restoring dimensions for fax}%
+\txa{Before newpage issued}%
+\txa{After newpage issued}%
+\showdim{After fax page setup}%
+}}{}%
+\rstdims%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
-  \def\ifta{0}\showdim{After fax page section closes}\gdef\npind{G}
-  \if@twoside \ifodd\c@page%
-  \else\thispagestyle{empty}\null\newpage\fi  \fi%
-  \c@page\@ne%
-  \interlinepenalty=200 % smaller than the TeXbook value%
-  \setlength{\headwidth}{\textwidth}%
-  \txa{Before Rfooter}\ifthenelse{\boolean{@B@f}}%
-    {\Cfooter{\phantom{\Cfooter}} \Rfooter{\phantom{\Rfooter}} \Lfooter{\phantom{\Lfooter}}} {}%
-  \txa{Before Rheader}\ifthenelse{\boolean{@B@h}}%
-    {\Rheader{\phantom{\Rheader}} \Lheader{\phantom{\Lheader}} \Cheader{\phantom{\Cheader}}} {}%
-  \txa{Before Lmargin}\ifthenelse{\boolean{@B@l}}%
-    {\ifempty{\@Lmarg}{}{\Lmargin{\phantom{\Lmargin}}}}{}%
-  \txa{Before Rmargin}\ifthenelse{\boolean{@B@r}}% 
-    {\ifempty{\@Rmarg}{}{\Rmargin{\phantom{\Rmargin}}}}{}%
-  \txa{Before rfooter}\ifthenelse{\boolean{@b@f}}%  
-    {\rfooter{\phantom{\rfooter}} \lfooter{\phantom{\lfooter}} \cfooter{\phantom{\cfooter}}} {}%
-  \txa{Before rheader}\ifthenelse{\boolean{@b@h}}%  
-    {\rheader{\phantom{\rheader}} \lheader{\phantom{\lheader}} \cheader{\phantom{\cheader}}} {}%
-  \txa{Before lmargin}\ifthenelse{\boolean{@b@l}}%
-    {\lmargin{\phantom{\lmargin}}} {}%
-  \txa{Before rmargin}\ifthenelse{\boolean{@b@r}}%
-    {\rmargin{\phantom{\rmargin}}} {}%
-  \setlength{\textwidth}{\paperwidth-\@marg@rt-\@marg@lt-1pt}%
-  \txa{Before opening}%
-  \txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}%
-  \txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}%
-%  \ifthenelse{\boolean{@over@all}}{%
-  \openlfm%
+\def\ifta{0}\showdim{After fax page section closes}\gdef\npind{G}
+\if@twoside \ifodd\c@page%
+\else\thispagestyle{empty}\null\newpage\fi  \fi%
+\c@page\@ne%
+\interlinepenalty=200 % smaller than the TeXbook value%
+\setlength{\headwidth}{\textwidth}%
+\txa{Before Rfooter}\ifthenelse{\boolean{@B@f}}%
+{\Cfooter{\phantom{\Cfooter}} \Rfooter{\phantom{\Rfooter}} \Lfooter{\phantom{\Lfooter}}} {}%
+\txa{Before Rheader}\ifthenelse{\boolean{@B@h}}%
+{\Rheader{\phantom{\Rheader}} \Lheader{\phantom{\Lheader}} \Cheader{\phantom{\Cheader}}} {}%
+\txa{Before Lmargin}\ifthenelse{\boolean{@B@l}}%
+{\ifempty{\@Lmarg}{}{\Lmargin{\phantom{\Lmargin}}}}{}%
+\txa{Before Rmargin}\ifthenelse{\boolean{@B@r}}% 
+{\ifempty{\@Rmarg}{}{\Rmargin{\phantom{\Rmargin}}}}{}%
+\txa{Before rfooter}\ifthenelse{\boolean{@b@f}}%  
+{\rfooter{\phantom{\rfooter}} \lfooter{\phantom{\lfooter}} \cfooter{\phantom{\cfooter}}} {}%
+\txa{Before rheader}\ifthenelse{\boolean{@b@h}}%  
+{\rheader{\phantom{\rheader}} \lheader{\phantom{\lheader}} \cheader{\phantom{\cheader}}} {}%
+\txa{Before lmargin}\ifthenelse{\boolean{@b@l}}%
+{\lmargin{\phantom{\lmargin}}} {}%
+\txa{Before rmargin}\ifthenelse{\boolean{@b@r}}%
+{\rmargin{\phantom{\rmargin}}} {}%
+\setlength{\textwidth}{\paperwidth-\@marg@rt-\@marg@lt-1pt}%
+\txa{Before opening}%
+\txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}%
+\txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}%
+%  \ifthenelse{\boolean{@ov@a}}{%
+\openlfm%
 %  }{}
-  \def\ifta{0}%
-  \txa{nameto:\@name@to}
-  \txa{namefr:\@name@fr}
-  \txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}%
-  \txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}%
-  \txa{After opening}%
-  \def\ifta{0}%
-  \txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}%
-  \txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}%
-  \txa{Before pagestyle}%
-  \pagestyle{othhead}\thispagestyle{ltrhead}%
-  \def\ifta{0}%
-  \txa{After pagestyle}%
-  \ifthenelse{\boolean{@in@makeenv}}{\txa{makeenv true}}{\txa{makeenv false}%
-    \global\advance \@nlfm@addr by1%
-    \txa{Count: \number\@nlfm@addr -- To: \@adr@to -- From: \@adr@fr}
-    \expandafter\xdef\csname @aadr@t\number\@nlfm@addr\endcsname{\@adr@to}%
-    \expandafter\xdef\csname @aadr@f\number\@nlfm@addr\endcsname{\@adr@fr}%
-    \txa{Count: \number\@nlfm@addr -- To: \@adr@to -- From: \@adr@fr}
-    \txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}%
-    \txa{To:  \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@to}%
-  }%
-  \showdim{Dimensions at end of newlfm startup section}\def\ifta{0}%
+\def\ifta{0}%
+\txa{nameto:\@name@to}
+\txa{namefr:\@name@fr}
+\txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}%
+\txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}%
+\txa{After opening}%
+\def\ifta{0}%
+\txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}%
+\txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}%
+\txa{Before pagestyle}%
+\pagestyle{othhead}\thispagestyle{ltrhead}%
+\def\ifta{0}%
+\txa{After pagestyle}%
+\ifthenelse{\boolean{@in@makeenv}}{\txa{makeenv true}}{\txa{makeenv false}%
+\global\advance \@nlfm@addr by1%
+\txa{Count: \number\@nlfm@addr -- To: \@adr@t -- From: \@adr@f}
+\expandafter\xdef\csname @aadr@t\number\@nlfm@addr\endcsname{\@adr@t}%
+\expandafter\xdef\csname @aadr@f\number\@nlfm@addr\endcsname{\@adr@f}%
+\txa{Count: \number\@nlfm@addr -- To: \@adr@t -- From: \@adr@f}
+\txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}%
+\txa{To:  \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@t}%
+}%
+\showdim{Dimensions at end of newlfm startup section}\def\ifta{0}%
 }%
 %    \end{macrocode}
 %    The next block of code defines the operation at the close of the
@@ -4318,33 +4491,33 @@ unprleft=-1pt}%
 %
 %    \begin{macrocode}
 {% Here we are at the processing of the close of the newlfm env  
-  \def\ifta{0}\txa{At the start of the close of newlfm env}%
-  \ifthenelse{\boolean{@pr@p}}{\closlfm}{}%
-  \ifthenelse{\boolean{@sig@p}}%
-   {\txa{Before closing}%
-    \ifthenelse{\boolean{@pr@p}}{}{\closlfm}%
-    \txa{After closing}%
-    \showdim{Current Dimensions}%
-    \@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}%
-    \@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}%
-    \@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}%
-    \@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}%
-    \@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}%
-  \ifthenelse{\boolean{@sig@mp}}{
-    \@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}%
-    \@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}%
-    \@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}%
-    \@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}%
-    \@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}%
-  \ifthenelse{\boolean{@env@open}}{}{}%
+\def\ifta{0}\txa{At the start of the close of newlfm env}%
+\ifthenelse{\boolean{@pr@p}}{\closlfm}{}%
+\ifthenelse{\boolean{@sig@p}}%
+{\txa{Before closing}%
+\ifthenelse{\boolean{@pr@p}}{}{\closlfm}%
+\txa{After closing}%
+\showdim{Current Dimensions}%
+\@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}%
+\@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}%
+\@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}%
+\@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}%
+\@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}%
+\ifthenelse{\boolean{@sig@mp}}{
+\@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}%
+\@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}%
+\@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}%
+\@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}%
+\@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}%
+\ifthenelse{\boolean{@env@open}}{}{}%
 % \ifthenelse{\boolean{@use@envlab}}{\@make@big@env}{}%
-  \txa{Before the pagebreak}%
-  \gdef\npind{J}%
-  \stopletter\@@par\pagebreak\@@par%
-  \immediate\write\@auxout{\string\newlabel{totpage}{{\thepage}{0}}}%
-  \@clear@box%
-  \global\@read@onetrue%
-  \setboolean{@s@b@s}{false}%
+\txa{Before the pagebreak}%
+\gdef\npind{J}%
+\stopletter\@@par\pagebreak\@@par%
+\immediate\write\@auxout{\string\newlabel{totpage}{{\thepage}{0}}}%
+\@clear@box%
+\global\@read@onetrue%
+\setboolean{@s@b@s}{false}%
 %    \end{macrocode}
 % The end of the |doublespace| environment also destroys the 
 % settings for the page headers (except for the the first page, which,
@@ -4359,42 +4532,42 @@ unprleft=-1pt}%
 }{}%
 }%
 \def\@make@big@env{
-  \@nlfm@util=0%
-  \def\ifta{0}%
-  \txa{In @make@big@env}%
-  \txa{Count: \number\@nlfm@addr}%
-  \txa{ZI}%
-  \txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}%
-  \txa{To:  \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@to}%
-  \loop \ifnum\@nlfm@util < \@nlfm@addr%
-  \advance\@nlfm@util by1%
-  \def\@onet{\expandafter\csname @aadr@t\number\@nlfm@util\endcsname}%
-  \def\@onef{\expandafter\csname @aadr@f\number\@nlfm@util\endcsname}%
-  \setadrto{\expandafter\csname adr\@onet\endcsname}\txa{ZF}%
-  \setadrfr{\expandafter\csname adr\@onef\endcsname}%
-  \gdef\npind{I}%
-  \newpage%
-  \def\ifta{0}%
-  \gdef\npind{A4}%
-  \setpage{11in}{8.5in}{1in}{1in}{0pt}{0in}{120in}{0in}{0in}%
-  \txa{Actually using the makeenvelope...}%
-  \startlabels%
-  \@capitalizeaddressfalse%
-  \txa{From: \@name@fr}%
-  \txa{To: \@name@to}%
-  \mlabel{\@name@fr \hspace*{.1pt} \\ \@addr@fr \hspace*{.1pt}}%
-         {\@name@to \hspace*{.1pt} \\ \@addr@to \hspace*{.1pt}}%
-  \txa{From: \@name@fr}%
-  \txa{To: \@name@to}%
-  \repeat%
-  \global\@nlfm@addr=0%
-  \txa{Count at end: \number\@nlfm@addr}%
+\@nlfm@util=0%
+\def\ifta{0}%
+\txa{In @make@big@env}%
+\txa{Count: \number\@nlfm@addr}%
+\txa{ZI}%
+\txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}%
+\txa{To:  \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@t}%
+\loop \ifnum\@nlfm@util < \@nlfm@addr%
+\advance\@nlfm@util by1%
+\def\@onet{\expandafter\csname @aadr@t\number\@nlfm@util\endcsname}%
+\def\@onef{\expandafter\csname @aadr@f\number\@nlfm@util\endcsname}%
+\setadrto{\expandafter\csname adr\@onet\endcsname}\txa{ZF}%
+\setadrfr{\expandafter\csname adr\@onef\endcsname}%
+\gdef\npind{I}%
+\newpage%
+\def\ifta{0}%
+\gdef\npind{A4}%
+\setpage{11in}{8.5in}{1in}{1in}{0pt}{0in}{120in}{0in}{0in}%
+\txa{Actually using the makeenvelope...}%
+\startlabels%
+\@capitalizeaddressfalse%
+\txa{From: \@name@fr}%
+\txa{To: \@name@to}%
+\mlabel{\@name@fr \hspace*{.1pt} \\ \@addr@fr \hspace*{.1pt}}%
+{\@name@to \hspace*{.1pt} \\ \@addr@to \hspace*{.1pt}}%
+\txa{From: \@name@fr}%
+\txa{To: \@name@to}%
+\repeat%
+\global\@nlfm@addr=0%
+\txa{Count at end: \number\@nlfm@addr}%
 }
 \def\@clear@box{
-\Backgrd{} \backgrd{} \Lfooter{} \Cfooter{} \Rfooter{} \LOfooter{}%
-\COfooter{}\ROfooter{}\lfooter{} \cfooter{} \rfooter{} \Lheader{}%
-\Cheader{} \Rheader{} \LUheader{}\CUheader{}\RUheader{}\lheader{}%
-\cheader{} \rheader{} \Rmargin{} \Lmargin{} \rmargin{} \lmargin{}%
+\Background{}\background{}\Lfooter{}\Cfooter{}\Rfooter{}\LOfooter{}%
+\COfooter{}\ROfooter{}\lfooter{}\cfooter{}\rfooter{}\Lheader{}%
+\Cheader{}\Rheader{}\LUheader{}\CUheader{}\RUheader{}\lheader{}%
+\cheader{}\rheader{}\Rmargin{}\Lmargin{}\rmargin{}\lmargin{}%
 }%
 %    \end{macrocode}
 % \end{macro}
@@ -4406,7 +4579,7 @@ unprleft=-1pt}%
 \raggedbottom%
 \providecommand{\@texttop}{}%
 \DeclareRobustCommand*{\@texttop}
-  {\ifnum\c@page=1\vskip \z@ plus.00006fil\relax\fi}%
+{\ifnum\c@page=1\vskip \z@ plus.00006fil\relax\fi}%
 \onecolumn%
 \def\@set@em@up{%
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -4427,10 +4600,12 @@ unprleft=-1pt}%
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % First, set the header and footer widths
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ifthenelse{\boolean{@hl}}{\def\headrulewidth{\the\@Hrw}}
-  {\setlength{\@Hrw}{0pt}\def\headrulewidth{0pt}}% 
-\ifthenelse{\boolean{@fl}}{\def\footrulewidth{\the\@Frw}}
-  {\setlength{\@Frw}{0pt}\def\footrulewidth{0pt}}% 
+\ifthenelse{\boolean{@Hl}}%
+{\def\headrulewidth{\the\@Hrw}}%
+{\setlength{\@Hrw}{0pt}\def\headrulewidth{0pt}}%
+\ifthenelse{\boolean{@Fl}}%
+{\def\footrulewidth{\the\@Frw}}%
+{\setlength{\@Frw}{0pt}\def\footrulewidth{0pt}}%
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Now, set the contents of the header and footer sections into boxes
 % Boxes can be measured
@@ -4440,69 +4615,67 @@ unprleft=-1pt}%
 % Check the heights and depths of boxes
 % Letterhead header section
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\sbox{\@x@c}{\@Cheader}\sbox{\@x@l}{\@Lheader}\sbox{\@x@r}{\@Rheader}%
+\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@Cheader\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@Lheader\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@Rheader\end{minipage}\end{lrbox}%
 \ifthenelse{\boolean{@Ch@use}}%
-{\settoheight{\@Hgt@H@C}{\strut\usebox{\@x@c}\strut}%
-\settodepth{\@Dth@H@C}{\strut\usebox{\@x@c}\strut}%
+{\settoheight{\@Hgt@H@C}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@H@C}{\strut\usebox{\@x@c}\strut}%
 \addtolength{\@Hgt@H@C}{\@Dth@H@C}}{\setlength{\@Hgt@H@C}{0pt}}%
 \ifthenelse{\boolean{@Rh@use}}%
-{\settoheight{\@Hgt@H@R}{\strut\usebox{\@x@r}\strut}%
-\settodepth{\@Dth@H@R}{\strut\usebox{\@x@r}\strut}%
+{\settoheight{\@Hgt@H@R}{\strut\usebox{\@x@r}\strut}\settodepth{\@Dth@H@R}{\strut\usebox{\@x@r}\strut}%
 \addtolength{\@Hgt@H@R}{\@Dth@H@R}}{\setlength{\@Hgt@H@R}{0pt}}%
 \ifthenelse{\boolean{@Lh@use}}%
-{\settoheight{\@Hgt@H@L}{\strut\usebox{\@x@l}\strut}%
-\settodepth{\@Dth@H@L}{\strut\usebox{\@x@l}\strut}%
+{\settoheight{\@Hgt@H@L}{\strut\usebox{\@x@l}\strut}\settodepth{\@Dth@H@L}{\strut\usebox{\@x@l}\strut}%
 \addtolength{\@Hgt@H@L}{\@Dth@H@L}}{\setlength{\@Hgt@H@L}{0pt}}%
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Check the heights and depths of boxes
 % Non-letterhead header section
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\sbox{\@x@c}{\@cheader}\sbox{\@x@l}{\@lheader}\sbox{\@x@r}{\@rheader}%
+\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@cheader\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@lheader\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@rheader\end{minipage}\end{lrbox}%
+\txa{\@lheader}%
+\txa{\@rheader}%
 \ifthenelse{\boolean{@ch@use}}%
-{\settoheight{\@Hgt@h@c}{\strut\usebox{\@x@c}\strut}%
-\settodepth{\@Dth@h@c}{\strut\usebox{\@x@c}\strut}%
+{\settoheight{\@Hgt@h@c}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@h@c}{\strut\usebox{\@x@c}\strut}%
 \addtolength{\@Hgt@h@c}{\@Dth@h@c}}{\setlength{\@Hgt@h@c}{0pt}}%
 \ifthenelse{\boolean{@rh@use}}%
-{\settoheight{\@Hgt@h@r}{\strut\usebox{\@x@r}\strut}%
-\settodepth{\@Dth@h@r}{\strut\usebox{\@x@r}\strut}%
-\addtolength{\@Hgt@h@r}{\@Dth@h@r}}{\setlength{\@Hgt@h@r}{0pt}}%
+{\settoheight\@Hgt@h@r{\strut\usebox{\@x@r}\strut}\settodepth\@Dth@h@r{\strut\usebox{\@x@r}\strut}%
+\addtolength\@Hgt@h@r{\@Dth@h@r}}{\setlength\@Hgt@h@r{0pt}}%
 \ifthenelse{\boolean{@lh@use}}%
-{\settoheight{\@Hgt@h@l}{\strut\usebox{\@x@l}\strut}%
-\settodepth{\@Dth@h@l}{\strut\usebox{\@x@l}\strut}%
-\addtolength{\@Hgt@h@l}{\@Dth@h@l}}{\setlength{\@Hgt@h@l}{0pt}}%
+{\settoheight\@Hgt@h@l{\strut\usebox{\@x@l}\strut}\settodepth\@Dth@h@l{\strut\usebox{\@x@l}\strut}%
+\addtolength\@Hgt@h@l{\@Dth@h@l}}{\setlength\@Hgt@h@l{0pt}}%
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Check the heights and depths of boxes
 % Letterhead footer section
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\sbox{\@x@c}{\@Cfooter}\sbox{\@x@l}{\@Lfooter}\sbox{\@x@r}{\@Rfooter}%
+\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@Cfooter\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@Lfooter\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@Rfooter\end{minipage}\end{lrbox}%
 \ifthenelse{\boolean{@Cf@use}}%
-{\settoheight{\@Hgt@F@C}{\strut\usebox{\@x@c}\strut}%
-\settodepth{\@Dth@F@C}{\strut\usebox{\@x@c}\strut}%
+{\settoheight{\@Hgt@F@C}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@F@C}{\strut\usebox{\@x@c}\strut}%
 \addtolength{\@Hgt@F@C}{\@Dth@F@C}}{\setlength{\@Hgt@F@C}{0pt}}%
 \ifthenelse{\boolean{@Rf@use}}%
-{\settoheight{\@Hgt@F@R}{\strut\usebox{\@x@r}\strut}%
-\settodepth{\@Dth@F@R}{\strut\usebox{\@x@r}\strut}%
+{\settoheight{\@Hgt@F@R}{\strut\usebox{\@x@r}\strut}\settodepth{\@Dth@F@R}{\strut\usebox{\@x@r}\strut}%
 \addtolength{\@Hgt@F@R}{\@Dth@F@R}}{\setlength{\@Hgt@F@R}{0pt}}%
 \ifthenelse{\boolean{@Lf@use}}%
-{\settoheight{\@Hgt@F@L}{\strut\usebox{\@x@l}\strut}%
-\settodepth{\@Dth@F@L}{\strut\usebox{\@x@l}\strut}%
+{\settoheight{\@Hgt@F@L}{\strut\usebox{\@x@l}\strut}\settodepth{\@Dth@F@L}{\strut\usebox{\@x@l}\strut}%
 \addtolength{\@Hgt@F@L}{\@Dth@F@L}}{\setlength{\@Hgt@F@L}{0pt}}%
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Check the heights and depths of boxes
 % Non-letterhead footer section
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\sbox{\@x@c}{\@cfooter}\sbox{\@x@l}{\@lfooter}\sbox{\@x@r}{\@rfooter}%
+\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@cfooter\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@lfooter\end{minipage}\end{lrbox}%
+\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@rfooter\end{minipage}\end{lrbox}%
 \ifthenelse{\boolean{@ch@use}}%
-{\settoheight{\@Hgt@f@c}{\strut\usebox{\@x@c}\strut}%
-\settodepth{\@Dth@f@c}{\strut\usebox{\@x@c}\strut}%
+{\settoheight{\@Hgt@f@c}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@f@c}{\strut\usebox{\@x@c}\strut}%
 \addtolength{\@Hgt@f@c}{\@Dth@f@c}}{\setlength{\@Hgt@f@c}{0pt}}%
 \ifthenelse{\boolean{@rh@use}}%
-{\settoheight{\@Hgt@f@r}{\strut\usebox{\@x@r}\strut}%
-\settodepth{\@Dth@f@r}{\strut\usebox{\@x@r}\strut}%
+{\settoheight{\@Hgt@f@r}{\strut\usebox{\@x@r}\strut}\settodepth{\@Dth@f@r}{\strut\usebox{\@x@r}\strut}%
 \addtolength{\@Hgt@f@r}{\@Dth@f@r}}{\setlength{\@Hgt@f@r}{0pt}}%
 \ifthenelse{\boolean{@lh@use}}%
-{\settoheight{\@Hgt@f@l}{\strut\usebox{\@x@l}\strut}%
-\settodepth{\@Dth@f@l}{\strut\usebox{\@x@l}\strut}%
+{\settoheight{\@Hgt@f@l}{\strut\usebox{\@x@l}\strut}\settodepth{\@Dth@f@l}{\strut\usebox{\@x@l}\strut}%
 \addtolength{\@Hgt@f@l}{\@Dth@f@l}}{\setlength{\@Hgt@f@l}{0pt}}%
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Determine the height of the letterhead header
@@ -4527,7 +4700,9 @@ unprleft=-1pt}%
 \txa{6) @Hgt@Head: \the\@Hgt@Head}%
 \addtolength{\@Hgt@Head}{\@marg@tp@a}%
 \txa{7) @Hgt@Head: \the\@Hgt@Head}%
-\addtolength{\@Hgt@Head}{\the\@Hrw+2.60005pt}%
+\addtolength{\@Hgt@Head}{\@Hrw}%
+\addtolength{\@Hgt@Head}{2.60005pt}%
+\addtolength{\@Hgt@Head}{\@unpr@tp}%
 \ifthenelse{\lengthtest{\@Hrw<2pt}}{\addtolength{\@Hgt@Head}{2.0pt}}{}%
 \txa{8) @Hgt@Head: \the\@Hgt@Head,\the\@Hrw,\headrulewidth}%
 }%
@@ -4545,13 +4720,16 @@ unprleft=-1pt}%
 {\setlength{\@Hgt@head}{\@Hgt@h@r}}{}%
 \ifthenelse{\lengthtest{\@Hgt@head<\@Min@Hgt@head}}%
 {\setlength{\@Hgt@head}{\@Min@Hgt@head}}{}%
-%  \addtolength{\@Hgt@head}{8pt}
+%  \addtolength{\@Hgt@head}{8pt}%
 \ifthenelse{\lengthtest{\@Hgt@head<1pt}}%
 {\setlength{\@Hgt@head}{\@marg@tp}}%
 {%\ifthenelse{\lengthtest{\@marg@tp@a<\@unpr@tp}}%
 %{\setlength{\@marg@tp@a}{\@unpr@tp}}{}%
 \addtolength{\@Hgt@head}{\@marg@tp@a}%
-\addtolength{\@Hgt@head}{\the\@hrw+2.60005pt}%
+\addtolength{\@Hgt@head}{\@hrw}%
+\addtolength{\@Hgt@head}{2.60005pt}%
+\txa{unprtop: \the\@unpr@tp}%
+\addtolength{\@Hgt@head}{\@unpr@tp}%
 \ifthenelse{\lengthtest{\@hrw<2pt}}{\addtolength{\@Hgt@head}{2.0pt}}{}%
 }%
 \txa{Left: \the\@Hgt@h@l, Center: \the\@Hgt@h@c, Right: \the\@Hgt@h@r}%
@@ -4590,11 +4768,17 @@ unprleft=-1pt}%
 %\addtolength{\@Hgt@Head}{1pt}%
 %\addtolength{\@Hgt@head}{1pt}%
 \setlength{\@Plg}{\paperheight-\@Hgt@Head-\@Hgt@Foot-\@marg@tp@b-\@marg@tp@a-%
-\@marg@bt@a-\@marg@bt@b-\@f@f-\footrulewidth-\headrulewidth}%
+\@marg@bt@a-\@marg@bt@b-\@f@f-\@Hrw-\@Frw}%
 \setlength{\@plg}{\paperheight-\@Hgt@head-\@Hgt@foot-\@marg@tp@b-\@marg@tp@a-%
-\@marg@bt@a-\@marg@bt@b-\@f@f-\footrulewidth-\headrulewidth}%
+\@marg@bt@a-\@marg@bt@b-\@f@f-\@hrw-\@frw}%
 \ifthenelse{\lengthtest{\@text@height>.1pt}}{\setlength{\@Plg}{\@text@height}}{}%
-\ifthenelse{\boolean{@Bg@use}}{\AddToShipoutPicture*{\@Backgrd}}{}%
+\ifthenelse{\boolean{@Bg@use}}
+{\ClearShipoutPicture
+\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@Backgrnd}}}
+{\ifthenelse{\boolean{@bg@use}}
+{\ClearShipoutPicture
+\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@backgrnd}}
+}{}}
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % Print feedback if requested
 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -4753,18 +4937,18 @@ unprleft=-1pt}%
 \txa{13. \the\@utilb}
 \ifthenelse{\lengthtest{\@utila > 0pt}}{\setboolean{@ztila}{true}}
 {\typeout{Cello window requested, but cannot be used.}
- \typeout{'To-address' cannot be placed vertically.  Suggestions:}
- \typeout{1. Make letterhead components smaller.}
- \typeout{2. Eliminate date or 'from-address' from letter.}
- \typeout{3. Move date or 'from-address' below 'to-address'.}
- \setboolean{@ztila}{false}%
+\typeout{'To-address' cannot be placed vertically.  Suggestions:}
+\typeout{1. Make letterhead components smaller.}
+\typeout{2. Eliminate date or 'from-address' from letter.}
+\typeout{3. Move date or 'from-address' below 'to-address'.}
+\setboolean{@ztila}{false}%
 }
 \ifthenelse{\lengthtest{\@utilb > 0pt}}{\setboolean{@ztilb}{true}}
 {\typeout{Cello window requested, but cannot be used.}
- \typeout{'To-address' cannot be placed horizontally.  Suggestions:}
- \typeout{1. Make left-margin width smaller.}
- \typeout{2. Eliminate margin components.}
- \setboolean{@ztilb}{false}%
+\typeout{'To-address' cannot be placed horizontally.  Suggestions:}
+\typeout{1. Make left-margin width smaller.}
+\typeout{2. Eliminate margin components.}
+\setboolean{@ztilb}{false}%
 }
 \ifthenelse{\boolean{@ztila} \and \boolean{@ztilb}}{
 \setlength{\@addr@to@sk@b}{\@utila}
@@ -4867,32 +5051,31 @@ unprleft=-1pt}%
       \color@endbox
       }%
     }%
-\txa{After shipout}
-\global\let\if@newlist\@@if@newlist
-\showdim{New page - before reset}
-\if@dim@reset 
-\if@repth \global\textheight \@rep@th \global\@repthfalse \fi
-\fi
-\global \@colht \textheight
+\txa{After shipout}%
+\global\let\if@newlist\@@if@newlist%
+\showdim{New page - before reset}%
+\if@dim@reset% 
+\if@repth \global\textheight \@rep@th \global\@repthfalse \fi%
+\fi%
+\global \@colht \textheight%
 \stepcounter{page}%
-\let\firstmark\botmark
-\if@dim@reset 
-\if@repth \global\textheight \@rep@th     \global\@repthfalse \fi
-\if@reptw \global\textwidth \@rep@tw      \global\@reptwfalse \fi
-\if@repom \global\oddsidemargin \@rep@om  \global\@repomfalse \fi
-\if@repem \global\evensidemargin \@rep@em \global\@repemfalse \fi
-\if@repcs \global\columnsep \@rep@cs      \global\@repcsfalse \fi
-\if@reptm \global\topmargin \@rep@tm      \global\@reptmfalse   
-\txa{Fixing tm} \fi
-\if@rephh \global\headheight \@rep@hh     \global\@rephhfalse \fi
-\if@rephs \global\headsep \@rep@hs        \global\@rephsfalse \fi
-\if@repfs \global\footskip \@rep@fs       \global\@repfsfalse \fi
-\fi
-\showdim{New page - after reset}
+\let\firstmark\botmark%
+\if@dim@reset% 
+\if@repth \global\textheight \@rep@th     \global\@repthfalse \fi%
+\if@reptw \global\textwidth \@rep@tw      \global\@reptwfalse \fi%
+\if@repom \global\oddsidemargin \@rep@om  \global\@repomfalse \fi%
+\if@repem \global\evensidemargin \@rep@em \global\@repemfalse \fi%
+\if@repcs \global\columnsep \@rep@cs      \global\@repcsfalse \fi%
+\if@reptm \global\topmargin \@rep@tm      \global\@reptmfalse \txa{Fixing tm} \fi%
+\if@rephh \global\headheight \@rep@hh     \global\@rephhfalse \fi%
+\if@rephs \global\headsep \@rep@hs        \global\@rephsfalse \fi%
+\if@repfs \global\footskip \@rep@fs       \global\@repfsfalse \fi%
+\fi%
+\showdim{New page - after reset}%
 \def\ifta{0}%
-\renewcommand{\headrulewidth}{\the\@Hrw}
-\renewcommand{\footrulewidth}{\the\@Frw}
-}
+\renewcommand{\headrulewidth}{\the\@hrw}%
+\renewcommand{\footrulewidth}{\the\@frw}%
+}%
 \AtEndDocument{%
 \ifthenelse{\boolean{@set@env}}%
 {\@clear@box%
@@ -4907,20 +5090,20 @@ unprleft=-1pt}%
 }{}%
 \ifthenelse{\boolean{@use@envlab}}{\@make@big@env}{}%
 }%
-\AtBeginDocument{
+\AtBeginDocument{%
 \def\ifta{0}%
-\txa{AtBeginDocument...}
-\@nlfm@addr=0
-\ifthenelse{\boolean{@use@envlab}}
-{
-\IfFileExists{envlab.sty}
-{\makelabels}
-{\typeout{The option <useenvlab> was issued.  File <envlab.sty> cannot be found.}
-\typeout{Option <useenvlab> is disabled.  Please install envlab system.}
-\setboolean{@use@envlab}{false}}}{}
-{}
-\txa{At the very very end...}
-}
+\txa{AtBeginDocument...}%
+\@nlfm@addr=0%
+\ifthenelse{\boolean{@use@envlab}}%
+{%
+\IfFileExists{envlab.sty}%
+{\makelabels}%
+{\typeout{The option <useenvlab> was issued.  File <envlab.sty> cannot be found.}%
+\typeout{Option <useenvlab> is disabled.  Please install envlab system.}%
+\setboolean{@use@envlab}{false}}}{}%
+{}%
+\txa{At the very very end...}%
+}%
 \endinput%
 %    \end{macrocode}
 %
-- 
cgit v1.2.3

