texlive[74780] Master/texmf-dist: asmeconf (28mar25)

commits+karl at tug.org commits+karl at tug.org
Fri Mar 28 22:33:34 CET 2025


Revision: 74780
          https://tug.org/svn/texlive?view=revision&revision=74780
Author:   karl
Date:     2025-03-28 22:33:34 +0100 (Fri, 28 Mar 2025)
Log Message:
-----------
asmeconf (28mar25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/asmeconf/README.md
    trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-sample.bib
    trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-template.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-template.tex
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-authorgrid-example.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-authorgrid-example.tex
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-fontspec.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-fontspec.tex
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-lualatex-ode-example.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-lualatex-ode-example.tex
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/tesseral-harmonic.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/zonal-harmonic2.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/sample-figure-2a.pdf
    trunk/Master/texmf-dist/doc/latex/asmeconf/sample-figure-2b.pdf
    trunk/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/asmeconf/README.md	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/doc/latex/asmeconf/README.md	2025-03-28 21:33:34 UTC (rev 74780)
@@ -1,7 +1,7 @@
  
   #asmeconf: A latex template for ASME conference papers#
  
-  Version 1.40 dated 2025/01/29.
+  Version 1.41 dated 2025/03/27.
 
   ####Overview####
   This class provides a LaTeX template for ASME Conference papers formatted according to
@@ -11,7 +11,7 @@
   
   A up-to-date BibTeX style for reference and citation formatting is also included.
   
-  The asmeconf class provides access to many features not available in older LaTeX templates for ASME papers. It is designed to approach the following aims:
+  The asmeconf class is designed to approach the following aims:
 
 - match ASME's font current specifications and layout
 
@@ -31,7 +31,7 @@
 
 - support copyright footer for federal employees and contractors
 
-- enable various math and text features from the newtx package
+- enable various math and text font features
 
 - support bold face, sans serif math in section headings
 
@@ -79,7 +79,32 @@
  ---
  
  ####Change log####
- 
+
+ v1.41 (2025/03/27)
+ - \LuaLaTeX now loads unicode-math by default unless the class option \[nofontspec\] is used.
+ - PDFA/UA-2 compliance is now possible using \LuaLaTeX by: omitting subfigures and most language options, using compliant figures, and loading the option \[captionpatch\], while using appropriate options to \\DocumentMetadata.
+ - Unicode-math will load Termes, Heros, Inconsolata, and Lete Sans Math fonts, with a few symbols drawn from STIX 2 fonts. Fira Math loads as a fallback to Lete Sans Math. These fonts are in TeX Live.
+ - Eliminated legacy options \[pdfa, pdfaopt, pdfaconformance\]. PDF/A compliance is enabled by \\DocumentMetadata{..}
+ - Eliminated \[mathalfa\] option. Instead, load mathalpha package in preamble or use unicode-math with range option.
+ - Eliminated \[largesc\] option (now selected by default for pdftex).
+ - Revised code for conference headers; added class option \[nohead\] to drop headers if desired.
+ - Switch to \LaTeX's native key value mechanism, with the kvoptions package as a fallback.
+ - Eliminated these packages: iftex, ifthen, hyphensubst. Eliminate these fallback packages: inputenc, hyperxmp, bookmark.
+ - Load hologo package in the .tex file rather than the .cls file.
+ - Fixed hanging indent of appendix section headings when tagging is active.
+ - Fixed spurious vertical space after full line in abstract\* under lualatex.
+ - Addressed color-related conflicts between luatexja and other fonts (removed \\Noto at color )
+ - Rescaled Inconsolata font from 1.05 to 1.03 to better math lower case roman text
+ - Ensured that english-language font is used for footer text under lualatex when including other scripts.
+ - Replaced \\int\_if\_zero:nTF by \\int\_compare:nTF for backward compatibility, and addressed related Expl3 compatibility issues.
+ - Converted various code sections to Expl3 from Latex2e, and removed legacy code here and there.
+ - Removed legacy commands \\MakeTitlePage and \\PaperTitle (use \\maketitle and \\title)
+ - Documented nomenclature options.
+ - Fixed description list in Appendix B.
+ - Made sample figures PDF/A-3u compliant.
+ - Updated sample .bib file.
+ - Update example files.
+  
  v1.40 (2025/01/29)
  - Drop titlesec package to avoid degrading tag structure
  - Rework tagging of coffins in author/affiliation block

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-sample.bib
===================================================================
--- trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-sample.bib	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-sample.bib	2025-03-28 21:33:34 UTC (rev 74780)
@@ -1,6 +1,6 @@
 %% Sample bibliography file for asmeconf.bst and asmeconf.cls
 %%
-%% Revised 09 August 2024
+%% Revised: 16 March 2025
 %% Copyright John H. Lienhard, MIT
 %% Offered under the MIT license: https://ctan.org/license/mit 
 
@@ -178,14 +178,14 @@
 }
 %% note use of: eid in place of pages, and use of jhmt macro for the journal name
 
- at online{bezos2020,
-  author 	= {Johannes L. Braams and Javier Bezos},
+ at online{bezos2025,
+  author 	= {Javier Bezos and Johannes L. Braams},
   title 	= {{\texttt{babel}}: Localization and internationalization},
   organization = {Comprehensive \TeX\ Archive Network},
-  version	= {3.52},
-  year 		= {2020},
+  version	= {25.25},
+  year 		= {2025},
   url 		= {https://ctan.org/pkg/babel},
-  urldate 	= {January 3, 2021},
+  urldate 	= {March 14, 2025},
 }      
 %% online supports these fields: author OR editor, year, title, version, versiontype, organization, address, 
 %%                               note, url OR eprint with archive, urldate, urltype
@@ -192,24 +192,24 @@
 %% You can change "Accessed" with "urltype", e.g., urltype = {retrieved},
 %% You can change "Version" with "versiontype, e.g., versiontype = {Release},
 
- at online{lienhard2024,
+ at online{lienhard2025,
   author 	= {Lienhard, John H.},
   title 	= {Example of {\hologo{LuaLaTeX}} with {\texttt{asmeconf.cls}} for {ODE} integration},
-  version	= {1.01},
+  version	= {1.02},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2024},
+  year 		= {2025},
   url		= {https://www.ctan.org/pkg/asmeconf},
-  urldate 	= {January 23, 2024},
+  urldate 	= {March 16, 2025},
 }    
 
 @online{lienhard2021,
   author 	= {Lienhard, John H.},
   title 	= {Language Support in {\texttt{asmeconf}}: non-latin alphabets, {\hologo{LuaLaTeX}}, and {\texttt{fontspec}}},
-  version	= {1.0},
+  version	= {1.2},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2021},
+  year 		= {2025},
   url		= {https://www.ctan.org/pkg/asmeconf},
-  urldate 	= {January 18, 2021},
+  urldate 	= {March 16, 2025},
 }    
 
 @article{pohlhausen1921,
@@ -293,11 +293,11 @@
 	and Michael Booth
 	and Fabrice Rossi
 	and Rhys Ulerich},
-	version = {2.4},
+	version = {2.7},
 	versiontype = {Release},
   organization = {Free Software Foundation},
   address 	= {Boston, MA},
-  year 		= 2017,
+  year 		= 2021,
   url 		= {https://www.gnu.org/software/gsl/},
 }
 %% manual supports these fields: 	author, year, title, edition, organization, address, 
@@ -309,21 +309,21 @@
 @online{amsmath,
   author 	= {{American Mathematical Society} and {LATEX3 Project}},
   title 	= {User's Guide for the \textsf{amsmath} Package},
-  version	= {2.1},
+  version	= {2.17t},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2018},
+  year 		= {2024},
   url 		= {https://ctan.org/tex-archive/macros/latex/required/amsmath/amsldoc.pdf},
-  urldate 	= {July 5, 2019},
+  urldate 	= {March 14, 2025},
 }
 
 @online{lienhard2022,
   author 	= {Lienhard, John H.},
   title 	= {Wide Equations in {\texttt{asmeconf.cls}}},
-  version	= {1.0},
+  version	= {1.11},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2022},
+  year 		= {2025},
   url		= {https://www.ctan.org/pkg/asmeconf},
-  urldate 	= {January 10, 2022},
+  urldate 	= {March 16, 2025},
 }    
 
 @online{sharpe1,
@@ -338,42 +338,52 @@
 
 @online{sharpe2,
   author 	= {Michael Sharpe},
-  title 	= {The \textsf{mathalfa} Package},
-  version	= {1.10},
+  title 	= {The \textsf{mathalpha}, {AKA} \textsf{mathalfa} Package},
+  version	= {1.145},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2018},
-  url 		= {https://ctan.org/pkg/mathalfa},
-  urldate 	= {April 27, 2019},
+  year 		= {2025},
+  url 		= {https://ctan.org/pkg/mathalpha},
+  urldate 	= {March 9, 2025},
 }
 
+ at online{robertson2023,
+  author 	= {Will Robertson},
+  title 	= {Experimental Unicode mathematical typesetting: The \textsf{unicode-math} package},
+  version	= {0.8r},
+  organization = {Comprehensive \TeX\ Archive Network},
+  year 		= {2023},
+  url 		= {https://ctan.org/pkg/unicode-math},
+  urldate 	= {March 9, 2025},
+}
+
 @online{tolusis,
   author 	= {Sigitas Tolu{\v{s}}is},
   title 	= {The \textsf{flushend} Package},
-  version	= {3.3},
+  version	= {4.0},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2017},
+  year 		= {2021},
   url		= {https://www.ctan.org/pkg/flushend},
-  urldate 	= {October 1, 2019},
+  urldate 	= {March 14, 2025},
 }
 
 @online{bottcher,
-  author 	= {Stephan I. B{\"o}ttcher and Uwe L{\"u}ck},
+  author 	= {Stephan I. B{\"o}ttcher and Uwe L{\"u}ck and Karl Wette},
   title 	= {\textsf{lineno.sty}: A {\LaTeX} Package to Attach Line Numbers to Paragraphs},
-  version	= {4.41},
+  version	= {5.4},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2005},
+  year 		= {2025},
   url 		= {https://www.ctan.org/pkg/lineno},
-  urldate 	= {August 17, 2019},
+  urldate 	= {March 14, 2025},
 }
 
 @online{oostrum,
   author 	= {Piet van Oostrum},
   title 	= {The \textsf{fancyhdr} and \textsf{extramarks} Packages},
-  version	= {3.10},
+  version	= {5.2},
   organization = {Comprehensive \TeX\ Archive Network},
-  year 		= {2019},
+  year 		= {2025},
   url 		= {https://www.ctan.org/pkg/fancyhdr},
-  urldate 	= {August 17, 2019},
+  urldate 	= {March 14, 2025},
 }                           
 
 @online{fairbairns,

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-template.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-template.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-template.tex	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/doc/latex/asmeconf/asmeconf-template.tex	2025-03-28 21:33:34 UTC (rev 74780)
@@ -4,14 +4,14 @@
 %%  This file is asmeconf-template.tex, a LaTeX template to format ASME Conference papers according to
 %%  the requirements on ASME's conference web pages, and including hypertext support for the pdf.
 %%
-%%  This file is version 1.40 dated 2025/01/29
+%%  This file is version 1.41 dated 2025/03/27
 %%  
 %%  As of version 1.11, this template defaults to ASME's newer conference guidelines first posted July 2019.
-%% 			Those guidelines changed the requested author block formatting to be inline. 
-%%			This LaTeX template continues to support the traditional grid format as a package option, [grid].
-%%			Nomenclature now follows the abstract. Abstract text is set in italics.
+%% 			Those guidelines changed the author block formatting to be inline. 
+%%			If you need the traditional grid format, use the class option [grid].
+%%			Nomenclature now follows the abstract, and abstract text is set in italics.
 %%
-%%  Author: John H. Lienhard V
+%%  Author: John H. Lienhard, V
 %%          Department of Mechanical Engineering
 %%          Massachusetts Institute of Technology
 %%          Cambridge, MA 02139-4307 USA
@@ -18,67 +18,56 @@
 %%
 %%  Class options include:
 %%
-%%          * An option to use the traditional grid arrangement of author names [grid].  
+%%          * An option to use the traditional grid arrangement of author names, [grid].  
 %%			*	 With this option, line breaks (\\) may be inserted into the address as needed. 
 %%			*	 Author names that include commas should be enclosed in braces, e.g., {Joseph L. Smith, Jr.}.  
 %%			*	 Authors may be grouped above a single affiliation using braces, e.g., {Henry Tudor, Catherine Parr}.
 %%
 %%          * An option to balance the heights of columns on the last page [balance]. 
-%%          *    This option is NOT compatible with the [lineno] option.
 %%
-%%          * An option to include line numbers [lineno]. You must *run twice* for proper placement of the line numbers. 
+%%          * An option to include line numbers, [lineno]. You must *run twice* for proper placement of the line numbers. 
 %%			*	 The lineno package does not number titles, footnotes, captions, or tables.
 %%          *    This option will disable balancing column height on final page if that option has been invoked.
 %%          *    The lineno package won't always number the lines preceding displayed math in a paragraph because
 %%          *    paragraph has not ended.  See that package's documentation for macros to address this problem, or
 %%          *    just leave a blank line above the displayed equation while you are editing and then remove the 
-%%          *    blank line and [lineno] option when you move to your final version.
+%%          *    blank line with [lineno] option when you move to your final version.
 %%
-%%			* An option not to use boldface font for caption text [unboldcaption]
+%%			* An option not to use a boldface font for caption text, [unboldcaption]
 %%
-%%          * Options to: 	omit the ASME copyright footer [nofoot]; 
-%%			*				use government employee copyright notice [govt];
-%%			*				use government contractor copyright notice [contractor]
-%%			*				use copyright notice for some gov't employees [somegovt]
+%%          * Options to: 	omit the ASME copyright footer, [nofoot]; 
+%%			*				use government employee copyright notice, [govt];
+%%			*				use government contractor copyright notice, [contractor];
+%%			*				use copyright notice for some gov't employees, [somegovt];
+%%			*				omit the conference headers on the titlepage, [nohead]
 %%
-%%          * Many options for calligraphic, script, and fraktur fonts from the mathalfa package; the
-%%          *    example shown here is: [mathalfa=cal=boondoxo] to use the Boondox font for \mathcal.
-%%          *    Some other options for cal are: dutchcal, zapfc, cm (default), euler,...
-%%          *    frak (fraktur), bb (blackboard bold), scr (script) may also be chosen this way.
-%%			*	 For details, refer to mathalfa documentation (at CTAN: https://www.ctan.org/pkg/mathalpha).
+%%			* Option to use LuaLaTeX **without** unicode-math and fontspec, [nofontspec]
 %%
 %%          * Math options from M. Sharpe's newtxmath package: upright integrals [upint]; 
 %%          *    [varvw] for a v and w that are better distinguished from Greek nu; and also 
 %%          *    [subscriptcorrection, smallerops, varg, frenchmath, varbb, cmbraces, slantedGreek,...] 
 %%			* 	 See newtx documentation for descriptions (at CTAN: https://www.ctan.org/pkg/newtx, v1.6 or higher is best).
+%%			*	 newtx is not loaded with lualatex unless the [nofontspec] option is used.
 %%
-%%          * Option to for slightly larger small capitals, [largesc], from newtxtext package.
-%%
-%%          * An option to allow hyphenation of the typewriter font [hyphenate], from inconsolata package.
+%%          * An option to allow hyphenation of the typewriter font [hyphenate], from the inconsolata package.
 %%          *    Hyphenation is normally suppressed for typewriter mode because it is often used for code.
 %%			*	 To replace the default variable word spacing by monospacing, use the option [mono].
 %%			*	 To get a zero without a slash, use [var0]
 %%
+%%			* PDF/A compliance:  Since 2022, LaTeX has included integrated support for pdf-a, through the \DocumentMetadata{..}
+%%			*    command. This approach works with both pdfTeX and LuaLaTeX.
+%%
 %%          * Options (used by the babel package) to include passages in languages other than English (e.g., a translation 
-%%			*    of the abstract). Languages are called as options, e.g. [french], [spanish], [greek], [russian], etc. 
-%%			*    See Appendix B for details. 
+%%			*    of the abstract). Languages may be called as options, e.g. [spanish], [greek], [russian], etc., but 
+%%			*    see Appendix C for details. 
 %%			*    Language support is most extensive when running LuaLaTeX, which automatically loads fontspec, but
-%%			*	 be aware that you may to install additional fonts on your system to use fontspec.
+%%			*	 be aware that you might to install additional fonts on your system for some languages.
 %%			 
-%%			* Option to use LuaLaTeX **without** bothering about extra fonts, [nofontspec]
-%%
-%%			* Legacy options for PDF/A compliance under pdftex: [pdf-a] will produce PDF/A-3u compliance with sRGB OutputIntent.
-%%			*	 [pdfapart= 1 or 2 or 3] and [pdfaconformance= b or u] can enable levels 1b, 2b, 2u, and 3b.
-%%			*
-%%			*    Since 2022, LaTeX has included integrated support for pdf-a, through the \DocumentMetadata{..}
-%%			*    command.  This preferred approach works with both pdfTeX and luaLaTeX. The asmeconf class supports this feature, 
-%%			*	 which obviates the aforementioned class options. (An up-to-date LaTeX installation is required.)
-%%
 %%  The use of commands defined or modified by the asmeconf class is illustrated throughout this file. In particular, 
-%%  ASME requires capitalized, sans-serif section headings, and as a result some care is needed when using macros 
-%%  in section headings, as also illustrated below.
+%%  ASME requires capitalized section headings, and as a result some care is needed when using macros in section headings,
+%%  as also illustrated below.
 %%
-%%  Use an up-to-date and complete installation of LaTeX, such as TeX Live 2020 or later. Errors may occur with old set-ups.
+%%  Be sure to use **up-to-date and complete** installation of LaTeX, such as TeX Live 2023 or later. Errors often occur with old set-ups.
 %%
  %=========================================================
 %% 
@@ -90,14 +79,14 @@
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
 
-%% RECOMMENDED new pdf management code.
-%% This addition the LaTeX kernel was made by the LaTeX Project team in June 2022.
-%% 		see https://www.latex-project.org/news/latex2e-news/ltnews35.pdf
-%% If you have problems with these lines, your LaTeX format may be out of date. You can comment them out.
+%%  RECOMMENDED pdf management code.
+%%  This code was added to the LaTeX kernel in June 2022.
+%% 		See https://www.latex-project.org/news/latex2e-news/ltnews35.pdf
+%%  If you have problems with these lines, your LaTeX format may be out of date. You can comment them out.
 
 \DocumentMetadata{%
-	pdfstandard=A-3u,% A-2b, A-2u, A-3b, or A-3u. Don't use u option (unicode) with LuaLaTeX.
-	pdfversion=1.7,
+	pdfstandard=A-3u,% A-2b, A-2u, A-3b, A-3u. Check that your figures also meet the standard you choose.
+	pdfversion=1.7,% 2.0 (Version 2.0 supports pdfstandard=A-4f with pdftex or UA-2 with LuaLaTeX)
 	lang=en-US,
 }
 
@@ -104,12 +93,16 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %% Class options are described above. Change these options as desired. 
-%%		If you are not using the language options, remove them (together with Appendices B and C)
 %%	 	Remove the [colorlinks] option before *final* submission to ASME, to get black text for printing,
-%%		but keep that option for other uses.
- 
-\documentclass[balance,colorlinks,upint,subscriptcorrection,varvw,mathalfa=cal=boondoxo,spanish,german,vietnamese,russian,greek]{asmeconf}
+%%		but keep that option for electronic use.
+%%
+%%		If you are not using the language options, remove them (together with Appendices C and D)
+%%		Vietnamese, greek, and cyrillic languages, if used, must be named in \documentclass under pdftex, but not under lualatex.
+%%		Spanish, german, and many others, if used, do not need to be named when babel package is 2024 or later.
 
+\documentclass[colorlinks,upint,subscriptcorrection,varvw,hyphenate,vietnamese,greek,russian,german,spanish]{asmeconf}
+
+
 %%%%%  pdf metadata  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \hypersetup{%
@@ -118,36 +111,41 @@
 	pdfkeywords={ASME conference paper, LaTeX template, BibTeX style},% <=== change to YOUR pdf keywords
 	pdfsubject = {Describes the asmeconf LaTeX template},			  % <=== change to YOUR subject
 %	pdfurl={https://ctan.org/pkg/asmeconf},% may delete
-	pdflicenseurl={https://ctan.org/pkg/asmeconf},% may delete
+%	pdflicenseurl={https://ctan.org/pkg/asmeconf},% may delete
 }
 
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
+\allowdisplaybreaks % from amsmath package, allows multiline equations to break across pages (delete if not wanted)
+
+\usepackage{hologo} % Package to access various LaTeX logos, if needed (delete if not)
+
 \begin{document}
 
 % Change these fields to the right content for your conference.
 % You can comment these out if for some reason you don't want a header.
-% Use title case (first letters capitalized), not all capitals
+% Use title case for the conference name (first letters capitalized), not all capitals
 
 \ConfName{Proceedings of the ASME 2025\linebreak International Mechanical Engineering Congress and Exposition}
 \ConfAcronym{IMECE2025}
-\ConfDate{November 16--20, 2025} % update 
-\ConfCity{Memphis, TN} % update 
+\ConfDate{November 16--20, 2025} 
+\ConfCity{Memphis, TN}
 \PaperNo{IMECE2025-XXXX}
 
 % Units of measure (e.g., cm) and other specialty lowercase terms in the title should be 
-%   enclosed in \NoCaseChange{...} to maintain lower case type
-%   LaTeX will automatically set the rest of the title in all capital letters.
+%   enclosed in \NoCaseChange{...} to maintain lower case type.
+%   The rest of the title will automatically be set in all capital letters.
+%
+%	\title{Place Title Here: Place Subtitle After Colon} 
 
 \title{A LATEX Template for ASME Conference Papers: \NoCaseChange{\texttt{asmeconf.cls}}} % <=== replace with YOUR title
-%\title{Place Title Here: Place Subtitle After Colon} 
  
 %   Put author names into the order you want. Use the same order for affiliations.
 %   \affil{#} tags the author's affiliation to the address in \SetAffiliation{#}.
 %   No space between last name and \affil{#}, separate names with commas.
 %
-%	For a sole author or a single affiliation for all authors, {#} may be left empty, as \affil{} and \SetAffiliation{} (but not with [grid] option!)
+%	For a sole author or a single affiliation for all authors, {#} may be left empty, i.e. \affil{} and \SetAffiliation{} (but not with [grid] option!)
 %
 %   \CorrespondingAuthor{email} follows that author's affiliation, no spaces before or after 
 %   If multiple corresponding authors, put both email addresses in the same command and place after both authors.
@@ -161,12 +159,12 @@
 	Henry Tudor\affil{4},  
 	Catherine~Parr\affil{4}\CorrespondingAuthor{lienhard at mit.edu, kate at thepalace.gov}
 	}
+%	Note: Luis and Maria are not real people.  Henry and Catherine have been dead for >450 years.
 
 \SetAffiliation{1}{Massachusetts Institute of Technology, Cambridge, MA}
 \SetAffiliation{2}{Institution or Company Name, City, State}
 \SetAffiliation{3}{Institution or Company Name, City, Province, Canada}
 \SetAffiliation{4}{Hampton Court Palace, Richmond, England}
-%	Note: Luis and Maria are not real people.  Henry and Catherine have been dead for >450 years.
 %   Note: You can force a line break in the address using \\ 
 
 %	To switch from inline author names to gridded names, use the [grid] option.
@@ -177,7 +175,7 @@
 %%% \date{..} calls the same command. 
 \versionfootnote{Documentation for \texttt{asmeconf.cls}: Version~\versionno, \today.}% <=== Delete before final submission.
 
-%%% Change these to your keywords.  Keywords are automatically printed at the end of the abstract.
+%%% Change the following to your keywords.  Keywords are automatically printed at the end of the abstract.
 %%% This command MUST COME BEFORE the end of the abstract.
 %%% If you don't want keywords, leave the argument of \keywords{} empty (or use the abstract* environment)
 
@@ -185,12 +183,12 @@
 
 %%%%%  End of fields to be completed. Now write your paper. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
+
 %%%%%  ABSTRACT  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%
 %% Abstract should be 200 words or less
 \begin{abstract}
-
-This paper is an example of and a  {\upshape\LaTeX} template for typesetting ASME conference papers using the {\upshape\texttt{asmeconf}} class. This  {\upshape\LaTeX} template follows ASME guidelines for margins, fonts, headings, captions, and reference formats as of 2025. The class is intended to be used with the {\upshape\texttt{asmeconf.bst} \hologo{BibTeX}} style for reference formatting, which is part of this distribution. The template produces pdfs that contain hyperlinks, bookmarks, and metadata; and references can include the DOI and URL fields. Links may be colored, for online use, or black, for publication. The class enables inline author names, following ASME's current style, but can also produce the traditional grid style. Options include line numbering, final column balancing, various math options, government copyright, and archivability (PDF/A). In addition, section headers may contain mathematics, references, citations, and footnotes. The class is compatible with {\upshape\hologo{pdfLaTeX}} or {\upshape\hologo{LuaLaTeX}}.
+This paper is an example of and a {\upshape\LaTeX} template for typesetting ASME conference papers using the {\upshape\texttt{asmeconf}} class. This  {\upshape\LaTeX} template follows ASME guidelines for margins, fonts, headings, captions, and reference formats as of 2025. The class should be used with the {\upshape\texttt{asmeconf.bst} \hologo{BibTeX}} style for reference formatting, which is part of this distribution. The template produces pdfs that contain hyperlinks, bookmarks, and metadata; and references can include the DOI and URL fields. Links may be colored, for online use, or black, for publication. The class enables inline author names, following ASME's current style, but can also produce the traditional grid style. Options include line numbering, final column balancing, various math options, government copyright, and archivability (PDF/A). In addition, section headers may contain mathematics, references, citations, and footnotes. The class is compatible with {\upshape\hologo{pdfLaTeX}} or {\upshape\hologo{LuaLaTeX}}.
 \end{abstract}
 
 %%%%%%%%%  NOMENCLATURE (OPTIONAL) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -198,6 +196,7 @@
 %% To change space between the symbols and  definitions, use \begin{nomenclature}[Xcm] where X is a number 
 %% The unit cm can be replaced by any LaTeX unit of dimension: pt, in, ex, em, pc, etc.
 %% Default is 2em.
+%%
 %% \EntryHeading{..} produces an italicized subheading in the nomenclature list, e.g., \EntryHeading{Greek letters}
 
 \begin{nomenclature}
@@ -221,13 +220,13 @@
 %%%%%%%%%  BODY OF PAPER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \section{Introduction}
-The \texttt{\hrefurl{https://ctan.org/pkg/asmeconf}{asmeconf}} class typesets papers with margins, fonts, headings, captions, and reference formats that follow the specifications for conference papers of the American Society of Mechanical Engineers (ASME). In contrast to older ASME \LaTeX\ templates, \texttt{asmeconf} will set internal and external hyperlinks, and the pdf file will contain bookmarks and metadata. Many other useful features have been incorporated. This class is not a publication of ASME, but the author has published in ASME conferences since 1983. 
+The \texttt{\hrefurl{https://ctan.org/pkg/asmeconf}{asmeconf}} class typesets papers with margins, fonts, headings, captions, and reference formats that follow the specifications for conference papers of the American Society of Mechanical Engineers (ASME). The \texttt{asmeconf} class will set internal and external hyperlinks, and the pdf file will contain bookmarks and metadata. Many other useful features have been incorporated. This class is not a publication of ASME, but the author has published in ASME conferences since 1983. 
 
-The \texttt{.tex} file may be written using standard \LaTeX\ commands, although some specific initial commands are needed to format the blocks containing the author[s], title, and abstract.  This class loads a number of other packages, all of which are contained in up-to-date versions of \hrefurl{https://www.tug.org/texlive/}{\TeX\ Live}, \hrefurl{http://www.tug.org/mactex/}{Mac\TeX}, and similar platforms. If you get an error message about a missing package, you may download it at no cost from CTAN (\hrefurl{https://ctan.org}{ctan.org}). 
+The \texttt{.tex} file may be written using standard \LaTeX\ commands, although some class-specific initial commands are needed to format the blocks containing the author[s], title, and abstract.  This class loads a number of other packages, all of which are contained in up-to-date versions of \hrefurl{https://www.tug.org/texlive/}{\TeX\ Live}, \hrefurl{http://www.tug.org/mactex/}{Mac\TeX}, and similar platforms. If you get an error message about a missing package, you can download that package at no cost from CTAN (\hrefurl{https://ctan.org}{ctan.org}). 
 
 \subsection{Essential Initial Commands}
 
-To begin, fill in the fields to be completed at top of the \texttt{asmeconf-template.tex} file. These fields include the headers for your conference and your paper number. Specified metadata will be placed into the pdf file itself. 
+To begin, fill in the fields to be completed at top of the \texttt{asmeconf-template.tex} file. These fields include the headers for your conference and your paper number. The metadata you provide will be placed into the pdf file itself. 
 The title should be placed into \verb|\title{..}|. 
 
 Put author names into the \verb|\SetAuthors{name, name,...}| command in the desired order; follow the syntax illustrated \texttt{asmeconf-template.tex} file. Put each distinct address sequentially into a separate \verb|\SetAffiliation{n}{address}|, where $n = 1,2,\ldots$ Tag each author with an affiliation by putting \verb|\affil{n}| after that author's name inside the \verb|\SetAuthors{..| command. 
@@ -250,7 +249,7 @@
 
 For ASME conference papers, the labels Equation and Figure should be abbreviated when they do not start a sentence, as in  Eq.~\eqref{eqn:dw} and Fig.~\ref{fig:1}. Figure~\ref{fig:1} is spelled out when it starts a sentence. Equation~\eqref{eqn:dw} is spelled out when it starts a sentence. 
 
-Equations are typeset in the usual way and will be automatically numbered.  The class file loads the \texttt{amsmath} and \texttt{mathtools} packages. Further, the \texttt{newtxmath} package used for the math fonts includes many additional features (see Sect.~\ref{sec:moremath}).
+Equations are typeset in the usual way and will be automatically numbered.  The class file loads the \texttt{amsmath} and \texttt{mathtools} packages. Further, the \texttt{newtxmath} package used for the math fonts includes many additional math features (see Sect.~\ref{sec:moremath}).
 \begin{equation}\label{eqn:fourier}
 \vec{q} = -k\nabla T
 \end{equation}
@@ -284,7 +283,7 @@
 
 Simple mathematical expressions can be used in either captions or section headings. For a section heading that includes more complicated math (and macros), you may use the optional argument of \verb|\section[..]{..}| to create a pdf bookmark without losing characters or producing warnings or errors. See the \texttt{asmeconf-template.tex} source file for examples of this procedure. These bookmarks should usually be text expressions, although some math is supported.  
 
-To eliminate boldface type in caption text and math, use the class option \texttt{[unboldcaption]}.  To avoid \texttt{sans} math in captions, put \verb|\NoCaseChange{\mathversion{normal}}| in the caption.
+To eliminate boldface type in caption text and math, use the class option \texttt{[unboldcaption]}.  To prevent sans-serif math, put \verb|\NoCaseChange{\mathversion{normal}}| in the caption.
 
 \subsection{Subsection and Sub-subsection Headings}
 
@@ -295,7 +294,7 @@
 
 %% Captions go above tables
 %%
-%% Note that placement of figures and tables can managed with the [!tbhp] options. See: https://latexref.xyz/dev/latex2e.html#Floats
+%% Note that placement of figures and tables can managed with the [!tbhp] options. See: https://latexref.xyz/Floats.html
 
 \begin{table}[t]
 \caption[Table]{A simple table}\label{tab:1}
@@ -315,7 +314,7 @@
 
 %%%%%%%%%%%%%%% begin more complicated table %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-% note column set as a 3 cm wide paragraph with 1em hanging indentation. See array package documentation.
+% note column set as a 3 cm wide paragraph with 1 em hanging indentation. See array package documentation.
 % note numbers centered on "." (with d{3.3}) and on "," (with ,{3.3}).  See dcolumn package documentation.
 \begin{table}[t]
 \caption{Table with more complicated columns}\label{tab:2}%
@@ -380,7 +379,7 @@
 
 \section{Reference Formatting with \NoCaseChange{\texttt{asmeconf.bst}}\footnote{To prevent capitalization of text in a section heading or caption, such as an SI unit, enclose it in a \texttt{\textbackslash NoCaseChange} command. As of the July 2022 release of \LaTeX, commands used in a heading or caption may be protected globally by putting this in the preamble: \texttt{\textbackslash AddToNoCaseChangeList\{\textbackslash MyCommand\}}.}}\label{sec:references}
 
-The {\upshape\texttt{asmeconf.bst}} \hologo{BibTeX}  style follows the reference styles shown on ASME's conference web site in  2022.\footnote{\texttt{asmeconf.bst} is intended as a replacement for the old \texttt{asmems4.bst}, which does not follow ASME's current reference formats or support DOI and URL.}
+The {\upshape\texttt{asmeconf.bst}} \hologo{BibTeX}  style follows the reference styles shown on ASME's conference web site in  2025.\footnote{\texttt{asmeconf.bst} is intended as a replacement for the old \texttt{asmems4.bst}, which does not follow ASME's current reference formats or support DOI and URL.}
 Examples for these and many other cases are given in the \texttt{asmeconf-sample.bib} file, which is part of this distribution. Citations and references are managed by the standard \texttt{natbib} package.  Nevertheless, a few comments are necessary. 
 
 %% sub-subsections should *not* be numbered according to ASME's style
@@ -393,7 +392,7 @@
 
 \subsubsection*{Date Accessed} The \verb|urldate={..}| field may be used to provide the date on which a given url was accessed. By default, the text printed will be \texttt{Accessed `date',}. The word ``Accessed'' may be changed using the \verb|urltype={..}| field.
 
-\subsubsection*{Conference Location and Date.} To specify the city and date of a conference, you can use \verb|venue={..}| and \verb|eventdate={..}| with the entries \verb|@inproceeedings{..| and \verb|@proceeedings{..|.
+\subsubsection*{Conference Location and Date} To specify the city and date of a conference, you can use \verb|venue={..}| and \verb|eventdate={..}| with the entries \verb|@inproceeedings{..| and \verb|@proceeedings{..|
 
 \subsubsection*{Capitalization of Titles} ASME's bibliography style requires that document titles be in title case. The first letters of principal words are capitalized. Do this in the \texttt{.bib} file.
 
@@ -422,11 +421,12 @@
 %%%%%%%%%%%%%%%%%%%  end two column figure  %%%%%%%%%%%%%%%%%%%%%%%%%%
 
 
+
 %%%%%%%%%%%%%%%  MORE ON MATH   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %% Here is an example of managing complicated math in a section or subsection heading: 
 %%    the optional argument to \section will provide the pdf bookmark
-%%    without losing characters or producing warnings/errors.
+%%    without losing most characters or producing warnings/errors.
 %%
 %% In this heading, letter u is forced to be upright with \mathrm{u}
 %%
@@ -441,29 +441,53 @@
 \end{multline}
 An example using \texttt{align} appears in Appendix~\ref{appendix:a}.
 
-An alternative solution may be to set large equations into two-column-wide tables or figures. An experimental package for setting equations that span two columns, \texttt{asmewide.sty}, can be loaded as well, but that code may require hand-fitting around figures, tables, and page breaks. See the examples in~\cite{lienhard2022}.
+An experimental package for setting equations that span two columns, \texttt{asmewide.sty}, can be loaded as well, but that code may require hand-fitting around figures, tables, and page breaks. See the examples in~\cite{lienhard2022}. An alternative solution may be to set large equations into two-column-wide tables or figures. 
 
 Math italics are used for Roman and Greek letters by default.  If you want an upright letter in math, you can use the relevant math alphabet, e.g., \verb|\mathrm, \mathbf, \mathsf|:
 \begin{equation}\label{eqn:dw}
 \vec{F} = m \vec{a} \quad\textrm{or}\quad \vec{\mathrm{F}} = m \vec{\mathrm{a}} \quad\textrm{or}\quad \mathbf{F} = m \mathbf{a} \quad\textrm{or}\quad \vec{\mathsf{F}} = m \vec{\mathsf{a}}
 \end{equation}
-To get additional symbols in bold math, use the \verb|\bm{..}| macro from the \texttt{bm} package (which is loaded by the class) or, for longer passages, use \verb|{\mathversion{bold}..|\texttt{\}}.
 
-The class file also provides upright sans-serif Greek letters with \verb|\sfalpha| and similar expressions (e.g., $\sfalpha, \sfbeta, \sfgamma, \sfdelta$ \ldots $\bm{\sfalpha, \sfbeta, \sfgamma, \sfdelta \ldots}$), in case they are needed (but note that the \verb|newtxmath| options \verb|frenchmath| and \verb|slantedGreek| also affect how Greek letters are presented).
-
-\subsection{The \texttt{newtxmath} and \texttt{mathalpha} Packages~\cite{sharpe1,sharpe2}} The \texttt{newtxmath} package~\cite{sharpe1}, loaded by default, includes many options for mathematics, most of which can be called as options to \verb|\documentclass|. For example, the \texttt{upint} option selects upright integral signs (rather than slanted integral signs):
+\subsection{The \texttt{newtxmath} and \texttt{unicode-math} Packages~\cite{sharpe1,robertson2023}} The \texttt{newtxmath} package, loaded by default with \hologo{pdfLaTeX}, includes many options for mathematics, most of which can be called as options to \verb|\documentclass|. For example, the \texttt{upint} option selects upright integral signs (rather than slanted integral signs):
 \begin{quote}
 \verb|\documentclass[upint]{asmeconf}|. 
 \end{quote}  
-The option \verb|subscriptcorrection| improves the spacing of math subscripts. These math options are discussed further in the \texttt{asmeconf-template.tex} file. 
+The option \verb|subscriptcorrection| improves the spacing of math subscripts. Math options are discussed further in the \texttt{asmeconf-template.tex} file.  The \texttt{newtxmath} package is also loaded with the \texttt{[nofontspec]} option.
 
-In addition, many options for calligraphic, fraktur, and script fonts are available as options to the \texttt{mathalfa} package, which is also loaded. These may be invoked, for example, as 
+To get additional symbols in bold math with \hologo{pdfLaTeX}, use \verb|\bm{..}| from the \texttt{bm} package, which is loaded by the class. 
+
+If using \hologo{LuaLaTeX}, the math features of \texttt{unicode-math} are available.  These include commands to select a boldface, upright symbol, \verb|\symbfup{..}| or \verb|\mathbfup{..}|, to select boldface fraktur 
+symbol, \verb|\symbffrak{..}| or \verb|\mathbffrak{..}|, and so on.  See the documentation of \texttt{unicode-math} for details~\cite{robertson2023}.
+
+The \texttt{[upint]} option also works under \hologo{LuaLaTeX}.
+
+For longer passages of bold math, you can use \verb|{\mathversion{bold}..}| with either \hologo{pdfLaTeX} or \hologo{LuaLaTeX}: 
+\verb|{\mathversion{bold} $A\otimes\mathfrak{F}$ }| gives {\mathversion{bold} $A\otimes\mathfrak{F}$}. Note that the math version must be changed \textit{before} starting math mode.
+
+
+\subsection{Sans-Serif Greek Letters}
+The class file also provides upright sans-serif Greek letters with \verb|\sfalpha| and similar expressions (e.g., $\sfalpha, \sfbeta, \sfgamma, \sfdelta$ \ldots ), in case they are needed. 
+
+Under \hologo{pdfLaTeX} boldface, upright, sans-serif Greek letters can be obtained with \verb|\bm{\sfalpha}|, etc.  The \texttt{newtx} package also includes options that affect whether Greek letters are upright or slanted (see that package's documentation for details).
+
+Under \hologo{LuaLaTeX}, boldface, sans-serif, upright Greek can be obtained with \verb|\sfbfalpha|, etc., or by using \verb|\symbfsfup{\alpha}|.  In the first case, the glyphs are drawn from the Lete Sans Math font, while in the second case, the glyphs are from the TeX Gyre Termes Math font.   Why are two different fonts being used? Unicode does not include medium-weight upright Greek as a component of a serif font (like Termes), although it does include both upright and italic boldface Greek. However, in a sans-serif font (like Lete), Greek letters are sans-serif by default, including medium weight. (You can also invoke \verb|\symbfsfit{\alpha}| for  boldface, sans-serif, slanted type.) 
+
+\subsubsection*{Sans-serif Math Versions} Two additional math versions, \texttt{sansbold} and \texttt{sans} are available in \texttt{asmeconf}.  The former is used by default in captions and section headings.  The latter is available in case you find a use for it. In \hologo{LuaLaTeX}, both versions use the Lete Sans Math fonts. In \hologo{pdfLaTeX}, the glyphs are from the \texttt{newtxsf} package.
+  
+  
+\subsection{Controlling Calligraphic, Script, Fraktur, or BB Fonts}
+With \hologo{pdfLaTeX}, the  package may be loaded in the preamble~\cite{sharpe2}.\footnote{As of v1.41, the \texttt{[mathalfa]} class option has been dropped.} This package supports variety of font for calligraphic, fraktur, script, and blackboard bold fonts. For example,
 \begin{center}
-\verb|\documentclass[mathalfa=cal=boondoxo]{asmeconf}| 
+\verb|\usepackage[cal=euler,frak=boondox]{mathalpha}| 
 \end{center}
-which selects a Boondox font for \verb|\mathcal|, as in $A \in \mathcal{P}(A)$. To find all the font options, refer to the \texttt{mathalfa} package documentation \cite{sharpe2}.
+selects the Euler font for \verb|\mathcal| and the Boondox font for \verb|\mathfrak|. Refer to the \texttt{mathalpha} documentation for details~\cite{sharpe2}.  The \texttt{[nofontspec]} option also supports \texttt{mathalpha}.
 
-The \texttt{asmeconf} class is designed to be used with \texttt{newtxmath} and does not support the \texttt{unicode-math} package.
+Under \hologo{LuaLaTeX}, the \texttt{unicode-math} \texttt{range} function can be used to select such fonts~\cite{robertson2023}. For example, the following code in the preamble would select the Euler Math font for calligraphic, script, fraktur, and blackboard bold fonts:
+\begin{quote}\raggedright
+\verb|\setmathfont{Euler-Math}[|
+\verb| range={cal,scr,frak,bb},|
+\verb| Extension=.otf,Scale=MatchUppercase]|
+\end{quote}
 
 
 %%%%%%%%%%%%%%%  ADDITIONAL PACKAGE OPTIONS  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -478,14 +502,14 @@
 \subsection{Final Column Balancing} The option \texttt{[balance]} invokes the the \texttt{flushend} package~\cite{tolusis}.
 This package will attempt to give equal height to the two columns on the last page. The performance of this package is sometimes inconsistent (with odd page layout or, very rarely, errors), so use this option with caution.
 
+\subsection{Grid-Style Author Block} The option \texttt{[grid]} invokes ASME's grid-style arrangement of author names. In the \verb|\SetAuthors{..}| command, individual author's names are recognized by the commas that separate them. (To include a comma \textit{in} a name, enclose the name in braces.) Line breaks (\verb|\\|) may be inserted into the address of \verb|\SetAffiliation{n}{address}| as needed. 
+
+Note that ASME interprets the author order in the grid style by reading names from left-to-right in the top row, then left-to-right in each subsequent row.
+
 \subsection{Line Numbers} The option \texttt{[lineno]} invokes the the \texttt{lineno} package~\cite{bottcher}. This option will produce line numbers in the margins. You must run \LaTeX\ \textit{twice} for proper placement of the numbers. Tables, captions, and footnotes will not be numbered.  Line numbers can be helpful for review and editing, but should not be used in your final manuscript. See the documentation of the \texttt{lineno} package for further commands to control line numbering. 
 
 The \texttt{lineno} package is not compatible with the \texttt{flushend} package that makes final short columns the same height. Balancing is automatically disabled when this option is called. 
 
-\subsection{Grid-Style Author Block} The option \texttt{[grid]} invokes ASME's grid-style arrangement of author names. Author names are recognized by the commas that separate them. (To include a comma in a name, enclose the name in braces.) Line breaks (\verb|\\|) may be inserted into the address of \verb|\SetAffiliation{n}{address}| as needed. 
-
-Note that ASME interprets the author order in the grid style by reading names from left-to-right in the top row, then left-to-right in each subsequent row.
-
 \subsection{Changing the Copyright Footer} The option \texttt{[nofoot]} will omit the ASME copyright from the page footer. The option \texttt{[govt]} will produce a copyright notice for authors who are employees of the U.\ S.\ Government.  
 The option \texttt{[contractor]} will produce a copyright
 notice for authors who are employed by a U.\ S.\ Government contractor.
@@ -493,16 +517,27 @@
 
 The footers are generated with the \texttt{fancyhdr} package~\cite{oostrum} and can be changed using the commands of that package. Only the default arrangement matches ASME's style, however.
 
-\subsection{Archivability:~PDF/A} In June 2022, the \LaTeX 3 team added support for PDF/A to the \LaTeX\ kernel, using the command \verb|\DocumentMetadata{..}|. This approach works with \textit{both} \hologo{pdfLaTeX} and \hologo{LuaLaTeX}. Note that accessible  conformance~(\texttt{a}) is still under development by the  \LaTeX3 team.
+In addition, the conference header on the title page can be omitted using the option \texttt{[nohead]}.
 
-For out-of-date \LaTeX\ formats, compliance with PDF/A standards can be enabled using the legacy option \texttt{[pdf-a]} when running with \hologo{pdfLaTeX}. The default setting is PDF/A-3u with sRGB OutputIntent (\texttt{sRGB.icc}). If levels 1b, 2b, 2u, or 3b are desired, use the
-options \texttt{[pdfapart=1 or 2 or 3]} and  \texttt{[pdfaconformance=b or u]}. Accessible  conformance~(\texttt{a}) is not possible with this method. 
+\subsection{Archivability:~PDF/A} In June 2022, the \LaTeX{}3 team added support for PDF/A to the \LaTeX\ kernel through the command \verb|\DocumentMetadata{..}|. This approach works with \textit{both} \hologo{pdfLaTeX} and \hologo{LuaLaTeX}. Note that accessible  conformance~(\texttt{a} or \texttt{UA-2} level, a.k.a.\ ``well-tagged PDF'') is still under development by the  \LaTeX3 team.
 
-\subsection{Typewriter Font Options} This font is the sans-serif \texttt{inconsolata}. By default, the word spacing is variable, but option \texttt{[mono]} ends this behavior. A slashed zero is the default; option \texttt{[var0]} removes the slash. Option \texttt{[hyphenate]} enables hyphenation. (The hyphenation option is not available under \hologo{LuaLaTeX} with \texttt{fontspec}.)
+As of \texttt{asmeconf} v1.41, the legacy options \texttt{[pdf-a]}, \texttt{[pdfapart=]}, and \texttt{[pdfaconformance=]} have been dropped.
 
+\subsection{Typewriter Font Options} This font is the sans-serif \texttt{inconsolata}. By default, the word spacing is variable, but option \texttt{[mono]} switches to monospacing. A slashed zero is the default; option \texttt{[var0]} removes the slash. Option \texttt{[hyphenate]} enables hyphenation. (The hyphenation option is not available under \hologo{LuaLaTeX} with \texttt{fontspec}.)
+
 \subsection{Support for Other Languages}  This package can be adapted to incorporate (or entirely use) languages other than English. See Appendix \ref{appendix:c} for details.
 
 
+%%%%%%%%%%%%%%%  Nomenclature Environment  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Nomenclature Environment}
+A nomenclature environment is included, as illustrated just after the abstract.  Each item in the nomenclature list is entered as \verb|\entry{symbol}{meaning}|.  Optional subheadings can be included as well: \verb|\EntryHeading{Roman letters}|.  The environment includes an optional argument for changing the space between symbols and definitions, 
+\verb|\begin{nomenclature}[Xcm]|, where X is a number and cm can be replaced by any LaTeX dimensional unit: pt, in, ex, em, pc, etc. The default value is~2~em.
+
+The title of the nomenclature can be also changed, e.g.\ \verb|\renewcommand*{\nomname}{List of Symbols}|
+
+
+
 %%%%% Conclusions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \section{Conclusion}
@@ -522,10 +557,10 @@
 %%		venue = {Location of Conference}, 
 %%		eventdate = {Month, days},
 
-\nocite{*}%% <=== Delete this line unless you want to typeset the entire contents of your .bib file!
+\nocite{*}%% <=== Delete this line unless you want to typeset the entire contents of your .bib file !!
 
 \bibliographystyle{asmeconf}  %% .bst file following ASME conference format. Do not change.
-\bibliography{asmeconf-sample}%% <=== change this to name of your bib file
+\bibliography{asmeconf-sample}%% <=== change this to the name of your bib file
 
 
 %%%  APPENDICES  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -534,7 +569,7 @@
 %% Note that appendices will be "numbered" A, B, C, ... etc. Use \section, not \section*
 %% Equations will be numbered sequentially following those in the paper. Do not reset the equation counter.
 
-%% Here we use the optional argument to control the pdf bookmark and prevent errors.
+%% Here we use the optional argument of section to control the pdf bookmark and prevent errors.
 \section[The Vector Product A\times B]{The vector product $\vec{A}\times\vec{B}$}\label{appendix:a}
 
 This brief illustration of an appendix shows the numbering of the appendix and equations. Equations are numbered
@@ -547,23 +582,23 @@
 \end{align}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section[Use with LuaLaTeX]{Use with \NoCaseChange{\hologo{LuaLaTeX}}}\label{appendix:b}
+\section[Use with LuaLaTeX]{Use with \NoCaseChange{LuaLaTeX} }\label{appendix:b}
 
-The \hologo{LuaLaTeX} engine is useful with \texttt{asmeconf} in two situations:
+The \hologo{LuaLaTeX} engine is useful with \texttt{asmeconf} in at least three situations:
 
 \begin{description}
 
-\item \textbf{Executing lua code directly in your \LaTeX\ file.} With lua code, complicated functions can be plotted or numerical integration can be executed. An example file in the distribution demonstrates this capability~\cite{lienhard2024}. In this situation, \textit{be sure to use the class option} \texttt{[nofontspec]}, so that you won't need to install additional fonts on your computer. 
+\item[Executing lua code directly in your \LaTeX\ file.] With lua code, complicated functions can be plotted or numerical integration can be executed. An example file in the distribution demonstrates this capability~\cite{lienhard2025}. In this situation, you can use the class option \texttt{[nofontspec]} to stay with the \texttt{newtx} fonts. 
 
-\item \textbf{Using complex alphabets.} With \hologo{pdfLaTeX}, the \texttt{asmeconf} package supports Latin alphabets, as well as Cyrillic, Greek, and Vietnamese. If you need scripts such as Arabic, Chinese, or Japanese, \hologo{LuaLaTeX} with the \texttt{fontspec} package can use fonts installed in your computer operating system.\footnote{For English, you \textit{must} have these fonts installed:\par \parbox{\columnwidth}{\setlength{\parindent}{12pt}TeX Gyre Termes (\hrefurl{https://ctan.org/tex-archive/fonts/newtx/opentype}{ctan.org/tex-archive/fonts/newtx/opentype}),\par TeX~Gyre~Heros (\hrefurl{https://ctan.org/tex-archive/fonts/tex-gyre/opentype}{ctan.org/tex-archive/fonts/tex-gyre/opentype}),\par 
-Inconsolatazi4 (\hrefurl{https://ctan.org/tex-archive/fonts/inconsolata/opentype}{ctan.org/tex-archive/fonts/inconsolata/opentype}).}} See the example file in this distribution for more details~\cite{lienhard2021}.
+\item[Using complex alphabets.] With \hologo{pdfLaTeX}, \texttt{asmeconf} supports Latin alphabets, as well as Cyrillic, Greek, and Vietnamese. If you need scripts such as Arabic, Chinese, or Devanagari, \hologo{LuaLaTeX} with the \texttt{fontspec} package can use fonts available on your computer.\footnote{For English, you \textit{must} have these OpenType fonts (\texttt{.otf}) installed (all are in TeX Live and will be present if your installation is complete and up-to-date): TeX Gyre Termes X, TeX Gyre Termes Math, TeX Gyre Heros, Inconsolatazi4, LeteSansMath, STIX Two Math. For Greek and Russian, the Noto Serif, Sans, and Mono TrueType fonts (\texttt{.ttf}) are used, and those are also in TeX Live. For south and east Asian scripts, the relevant Noto fonts are \textbf{not} currently in TeX Live (go here: \hrefurl{https://github.com/googlefonts/noto-fonts}{github.com/googlefonts/noto-fonts}).}  See the example file in this distribution for more details~\cite{lienhard2021}.
 
+\item[Producing tagged PDF.] Under \hologo{LuaLaTeX} with \texttt{unicode-math} (which loads by default), \texttt{asmeconf} PDF files can meet the PDF 2.0/UA-2 standard using appropriate arguments to \verb|\DocumentMetadata{..}| provided that: a) subcaptions are not used; b) any figure files meet the standard; c) captions do not contain cross-references; d) the option \texttt{[captionpatch]} is called; and e) language options are used cautiously (some languages are compatible with tagging, but others, such as Japanese and Spanish, currently are not). Tagged pdf is still under development by the \LaTeX{}3 team as of \the\month/\the\year. 
 
 \end{description}
 
-For clarity, \texttt{fontspec} is automatically loaded when \texttt{asmeconf} is run under \hologo{LuaLaTeX}. Fontspec requires that the necessary system fonts are already installed in your operating system.  If you wish to use \hologo{LuaLaTeX} without bothering about system fonts, use the class option \texttt{[nofontspec]}. 
+For clarity, \texttt{fontspec} and \texttt{unicode-math} are automatically loaded when \texttt{asmeconf} is run under \hologo{LuaLaTeX}. Those packages require that the necessary fonts are available on your computer.  If you wish to use \hologo{LuaLaTeX} without the features of \texttt{unicode-math} and \texttt{fontspec}, use the class option \texttt{[nofontspec]}. 
 
-Access to \hologo{LuaLaTeX} is different in each \LaTeX\ platform.  Check the documentation for your specific platform to see how to access various typesetting engines.
+Over the long-term, \hologo{LuaLaTeX} will become the preferred engine for using \LaTeX\ (see \href{https://www.latex-project.org/news/latex2e-news/ltnews40.pdf}{\textit{LaTeX\ News}, Issue~40}). Access to \hologo{LuaLaTeX} is different in each \LaTeX\ platform. Check the documentation for your platform to load \hologo{LuaLaTeX}.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{Multilingual Support}\label{appendix:c}
@@ -575,9 +610,9 @@
 When more than one language option is included in \verb|\documentclass[..]{asmeconf}|, English will be 
 set as the document's main language. (To choose a different main language, set \texttt{[main=..]}).
 If no language options are given, the package defaults to English.  As examples, a passage in German is 
-shown in  \selectlanguage{german}\appendixname~\ref{app:pohlhausen}\selectlanguage{german},
+shown in  \selectlanguage{german}\appendixname~\ref{app:pohlhausen}\selectlanguage{english},
 %\selectlanguage{french}\appendixname~\ref{app:fourier}\selectlanguage{english}, 
-followed by \ifpdftex abstracts in Spanish, Greek, Russian, and Vietnamese.\else abstracts in other languages.\fi
+followed by abstracts in other languages.
 
 The input encoding can be utf-8, as for these glyphs:
 %% If you have trouble with the next line, your file may not be saved in utf-8 format. You can delete that line to resolve the issue.
@@ -584,10 +619,9 @@
 \typeout{If you have trouble with the next line, your file may not be saved in utf-8 format. You can delete that line to resolve the issue. Under LuaLaTeX, you can load the fontspec will support these characters if you have the relevant systems fonts installed}%
 àáâäæãåā  èéęëêēė  îïíīįì ôöòóœøōõ ûüùúū çćč ł ñń ßśš ÿ žźż.
 
-Fonts similar to Times/Helvetica are used when Greek, Vietnamese, or selected cyrillic-alphabet languages are called as options under {\upshape\hologo{pdfLaTeX}}. Using {\upshape\hologo{LuaLaTeX}}, which loads the fontspec package, many additional scripts are available; see the supplemental notes for such usage~\cite{lienhard2021}. Possibilities include Arabic, Bengali, Chinese, Devanagari (e.g., for Hindi), Hangul (for Korean), Kana (for Japanese), and Tamil. (Note: some fonts are not PDF/A compliant.) \textit{These options require a \LaTeX\ installation dated October 2020 or later.}
+Fonts similar to Times/Helvetica are used when Greek, Vietnamese, or selected cyrillic-alphabet languages are called as options under {\upshape\hologo{pdfLaTeX}}. Using {\upshape\hologo{LuaLaTeX}}, which loads the fontspec package, many additional scripts are available; see the supplemental notes for such usage~\cite{lienhard2021}. Possibilities include Arabic, Bengali, Chinese, Devanagari (e.g., for Hindi), Hangul (for Korean), Kana (for Japanese), and Tamil. \textit{These options require an up-to-date \LaTeX\ installation.}
 
 The bibliography style, \texttt{asmeconf.bst}, is designed in English and aimed at \hologo{BibTeX}.  
-% Multilingual bibliographies can be supported using \texttt{BibLaTeX}.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
@@ -597,6 +631,7 @@
 zwischen dem Wärmeaustanch und dem Reibungswiderstand schließen, die eine strömende Flüssigkeit an einem festen Körper hervorrufen. Dies ist zuerst von Prandtl ausgesprochen und durchgeführt worden, und zwar für turbulente Vorgänge, unter der vereinfachenden Annahme von Wärmequellen und -senken im Innern der Flüssigkeit~\cite{pohlhausen1921}. 
 \end{selectlanguage}%
 
+
 %\begin{selectlanguage}{french}%
 %\section{Discours Préliminaire de Fourier}\label{app:fourier}
 %Les causes primordiales ne nous sont point con­nues; mais elles sont assujetties à des lois simples et constantes, que l'on peut découvrir par l'obser­vation, et dont l'étude est l'objet de la philosophie naturelle. 
@@ -611,7 +646,7 @@
 \end{selectlanguage}% edited by Aarón Montoya-Moraga
 
 %% If you have trouble with the following passages, delete them and remove the associated language option from \documentclass[..].
-\typeout{If you have trouble with the following passages, your file may not be saved in utf-8 format, or your LaTeX format may be old, or you may not have the assumed font installed. You can delete those lines to resolve the issue.}
+\typeout{If you have trouble with the language passages in non-Latin scripts, your file may not be saved in utf-8 format, or your LaTeX format may be old, or you may not have the assumed font installed. You can delete those lines to resolve the issue.}
 
 %% Examples of abstracts in other languages. The first three are intended for pdflatex, not lualatex.
 \ifpdftex
@@ -619,7 +654,7 @@
     \begin{abstract*}
     Αυτή είναι η περίληψη του άρθρου. Χρησιμοποιούμε την ελληνική γλώσσα. Περιγράφεται το πρόβλημα, οι μέθοδοι και τα αποτελέσματα. Περιλαμβάνονται επίσης αναφορές.
     \end{abstract*}
-    \end{selectlanguage}% Edited by George Barbastathis   
+    \end{selectlanguage}% edited by George Barbastathis   
     
     \begin{selectlanguage}{russian}
     \begin{abstract*}
@@ -634,21 +669,21 @@
     \end{selectlanguage}% Checked and edited by Nguyen Le and Thao Nguyen
 \fi
    
-\iffontspecloaded %%% These passages require using lualatex AND installing the mentioned fonts as system fonts on your computer.
+\iffontspecloaded %%% These passages require using lualatex AND having the mentioned fonts installed on your computer.
 %
-	\IfFontExistsTF{NotoSans}{
-    	\IfFontExistsTF{NotoSerif}{
+	\IfFontExistsTF{NotoSans}{%
+    	\IfFontExistsTF{NotoSerif}{%
     	%
-        	\begin{selectlanguage}{greek}%
+        	\begin{selectlanguage}{greek}
             \begin{abstract*}
             Αυτή είναι η περίληψη του άρθρου. Χρησιμοποιούμε την ελληνική γλώσσα. Περιγράφεται το πρόβλημα, οι μέθοδοι και τα αποτελέσματα. Περιλαμβάνονται επίσης αναφορές.
             \end{abstract*}
-            \end{selectlanguage}% Edited by George Barbastathis
+            \end{selectlanguage}% edited by George Barbastathis
         %  
             \begin{selectlanguage}{russian}
             \begin{abstract*}
-            Это резюме статьи. Пишем по русски. Описаны проблема, методы и результаты. Библиография также включена.%
-            \end{abstract*}
+            Это резюме статьи. Пишем по русски. Описаны проблема, методы и результаты. Библиография также включена.
+            \end{abstract*}%
             \end{selectlanguage}% edited by Steven Gerasimoff
         %
         }{\ClassWarning{\ClassName}{I can't find NotoSerif.ttf, which is needed for Greek and Russian language text. Please install that font.}}
@@ -661,9 +696,9 @@
     \end{selectlanguage}% Checked and edited by Nguyen Le and Thao Nguyen
 %
 %
-%% Use class option [japanese] if you uncomment this passage.
-%    \IfFontExistsTF{NotoSerifCJKjp}{%
-%    	\IfFontExistsTF{NotoSansCJKjp}{%
+% Use class option [japanese] if you uncomment this passage. (Note, japanese has problems if pdf tagging is active.)
+%    \IfFontExistsTF{NotoSerifCJKjp-Regular.otf}{%
+%    	\IfFontExistsTF{NotoSansCJK-Regular.ttc}{%
 %	    %
 %            \begin{selectlanguage}{japanese}
 %            \begin{abstract*}
@@ -675,18 +710,18 @@
 %        }{\ClassWarning{\ClassName}{I can't find NotoSerifCJKjp, which is needed for Japanese language text. Please install that font.}}
 %    }{\ClassWarning{\ClassName}{I can't find NotoSansCJKjp, which is needed for Japanese language text. Please install that font.}}
 %
-	\IfFontExistsTF{NotoSansCJKkr}{%
-    	\IfFontExistsTF{NotoSerifCJKkr}{%
+	\IfFontExistsTF{NotoSansCJK-Regular.ttc}{%
+    	\IfFontExistsTF{NotoSerifCJKkr-Regular.otf}{%
 	    %
             \begin{selectlanguage}{korean}
             \begin{abstract*}
             이것은 한국어로 쓰인 논문의 초록입니다. 문제, 방법 및 결과가 설명되어 있습니다. 참조도 포함됩니다.
             \end{abstract*}
-            \end{selectlanguage}% Edited by Hyung Won Chung.
+            \end{selectlanguage}% edited by Hyung Won Chung.
         %
-        }{\ClassWarning{\ClassName}{I can't find NotoSerifCJKkr.otf, which is needed for Korean language text. Please install that font.}}
+        }{\ClassWarning{\ClassName}{I can't find NotoSerifCJKkr-Regular.otf, which is needed for Korean language text. Please install that font and its bold version. Check that you also have NotoSansCJK and NotoSansMonoCJKkr.}}
     %
-    	\IfFontExistsTF{NotoSerifCJKsc}{%
+    	\IfFontExistsTF{NotoSerifCJKsc-Regular.otf}{%
             \begin{selectlanguage}{chinese-simplified}
             \begin{abstract*}
             这是文章的摘要。我们用中文书写,描述了问题,方法和结果,还包括了参考文献。
@@ -693,9 +728,9 @@
             \end{abstract*}
             \end{selectlanguage}% edited by Zi Hao Foo
         %
-        }{\ClassWarning{\ClassName}{I can't find NotoSerifCJKsc.otf, which is needed for Korean language text. Please install that font.}}
-    }{\ClassWarning{\ClassName}{I can't find NotoSansCJK.ttf, which is needed for Korean and simplified Chinese text. Please install that font.}} 
-%
+        }{\ClassWarning{\ClassName}{I can't find NotoSerifCJKsc-Regular.otf, which is needed for Chinese language text. Please install that font and its bold version. Check that you also have NotoSansCJK and NotoSansMonoCJKsc.}}
+    }{\ClassWarning{\ClassName}{I can't find NotoSansCJK-Regular.ttc, which is needed for Korean and simplified Chinese text. Please install that font and its bold version.}} 
+
 \fi
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-authorgrid-example.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-authorgrid-example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-authorgrid-example.tex	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-authorgrid-example.tex	2025-03-28 21:33:34 UTC (rev 74780)
@@ -4,14 +4,14 @@
 %%  This file is asmeconf-template.tex, a LaTeX template to format ASME Conference papers according to
 %%  the requirements on ASME's conference web pages, and including hypertext support for the pdf.
 %%
-%%  This file is version 1.39 dated 2025/01/26
+%%  This file is version 1.41 dated 2025/03/27
 %%  
 %%  As of version 1.11, this template defaults to ASME's newer conference guidelines first posted July 2019.
-%% 			Those guidelines changed the requested author block formatting to be inline. 
-%%			This LaTeX template continues to support the traditional grid format as a package option, [grid].
-%%			Nomenclature now follows the abstract. Abstract text is set in italics.
+%% 			Those guidelines changed the author block formatting to be inline. 
+%%			If you need the traditional grid format, use the class option [grid].
+%%			Nomenclature now follows the abstract, and abstract text is set in italics.
 %%
-%%  Author: John H. Lienhard V
+%%  Author: John H. Lienhard, V
 %%          Department of Mechanical Engineering
 %%          Massachusetts Institute of Technology
 %%          Cambridge, MA 02139-4307 USA
@@ -18,67 +18,56 @@
 %%
 %%  Class options include:
 %%
-%%          * An option to use the traditional grid arrangement of author names [grid].  
+%%          * An option to use the traditional grid arrangement of author names, [grid].  
 %%			*	 With this option, line breaks (\\) may be inserted into the address as needed. 
 %%			*	 Author names that include commas should be enclosed in braces, e.g., {Joseph L. Smith, Jr.}.  
 %%			*	 Authors may be grouped above a single affiliation using braces, e.g., {Henry Tudor, Catherine Parr}.
 %%
 %%          * An option to balance the heights of columns on the last page [balance]. 
-%%          *    This option is NOT compatible with the [lineno] option.
 %%
-%%          * An option to include line numbers [lineno]. You must *run twice* for proper placement of the line numbers. 
+%%          * An option to include line numbers, [lineno]. You must *run twice* for proper placement of the line numbers. 
 %%			*	 The lineno package does not number titles, footnotes, captions, or tables.
 %%          *    This option will disable balancing column height on final page if that option has been invoked.
 %%          *    The lineno package won't always number the lines preceding displayed math in a paragraph because
 %%          *    paragraph has not ended.  See that package's documentation for macros to address this problem, or
 %%          *    just leave a blank line above the displayed equation while you are editing and then remove the 
-%%          *    blank line and [lineno] option when you move to your final version.
+%%          *    blank line with [lineno] option when you move to your final version.
 %%
-%%			* An option not to use boldface font for caption text [unboldcaption]
+%%			* An option not to use a boldface font for caption text, [unboldcaption]
 %%
-%%          * Options to: 	omit the ASME copyright footer [nofoot]; 
-%%			*				use government employee copyright notice [govt];
-%%			*				use government contractor copyright notice [contractor]
-%%			*				use copyright notice for some gov't employees [somegovt]
+%%          * Options to: 	omit the ASME copyright footer, [nofoot]; 
+%%			*				use government employee copyright notice, [govt];
+%%			*				use government contractor copyright notice, [contractor];
+%%			*				use copyright notice for some gov't employees, [somegovt];
+%%			*				omit the conference headers on the titlepage, [nohead]
 %%
-%%          * Many options for calligraphic, script, and fraktur fonts from the mathalfa package; the
-%%          *    example shown here is: [mathalfa=cal=boondoxo] to use the Boondox font for \mathcal.
-%%          *    Some other options for cal are: dutchcal, zapfc, cm (default), euler,...
-%%          *    frak (fraktur), bb (blackboard bold), scr (script) may also be chosen this way.
-%%			*	 For details, refer to mathalfa documentation (at CTAN: https://www.ctan.org/pkg/mathalpha).
+%%			* Option to use LuaLaTeX **without** unicode-math and fontspec, [nofontspec]
 %%
 %%          * Math options from M. Sharpe's newtxmath package: upright integrals [upint]; 
 %%          *    [varvw] for a v and w that are better distinguished from Greek nu; and also 
 %%          *    [subscriptcorrection, smallerops, varg, frenchmath, varbb, cmbraces, slantedGreek,...] 
 %%			* 	 See newtx documentation for descriptions (at CTAN: https://www.ctan.org/pkg/newtx, v1.6 or higher is best).
+%%			*	 newtx is not loaded with lualatex unless the [nofontspec] option is used.
 %%
-%%          * Option to for slightly larger small capitals, [largesc], from newtxtext package.
-%%
-%%          * An option to allow hyphenation of the typewriter font [hyphenate], from inconsolata package.
+%%          * An option to allow hyphenation of the typewriter font [hyphenate], from the inconsolata package.
 %%          *    Hyphenation is normally suppressed for typewriter mode because it is often used for code.
 %%			*	 To replace the default variable word spacing by monospacing, use the option [mono].
 %%			*	 To get a zero without a slash, use [var0]
 %%
+%%			* PDF/A compliance:  Since 2022, LaTeX has included integrated support for pdf-a, through the \DocumentMetadata{..}
+%%			*    command. This approach works with both pdfTeX and LuaLaTeX.
+%%
 %%          * Options (used by the babel package) to include passages in languages other than English (e.g., a translation 
-%%			*    of the abstract). Languages are called as options, e.g. [french], [spanish], [greek], [russian], etc. 
-%%			*    See Appendix B for details. 
+%%			*    of the abstract). Languages may be called as options, e.g. [spanish], [greek], [russian], etc., but 
+%%			*    see Appendix C for details. 
 %%			*    Language support is most extensive when running LuaLaTeX, which automatically loads fontspec, but
-%%			*	 be aware that you may to install additional fonts on your system to use fontspec.
+%%			*	 be aware that you might to install additional fonts on your system for some languages.
 %%			 
-%%			* Option to use LuaLaTeX **without** bothering about extra fonts, [nofontspec]
-%%
-%%			* Legacy options for PDF/A compliance under pdftex: [pdf-a] will produce PDF/A-3u compliance with sRGB OutputIntent.
-%%			*	 [pdfapart= 1 or 2 or 3] and [pdfaconformance= b or u] can enable levels 1b, 2b, 2u, and 3b.
-%%			*
-%%			*    Since 2022, LaTeX has included integrated support for pdf-a, through the \DocumentMetadata{..}
-%%			*    command.  This preferred approach works with both pdfTeX and luaLaTeX. The asmeconf class supports this feature, 
-%%			*	 which obviates the aforementioned class options. (An up-to-date LaTeX installation is required.)
-%%
 %%  The use of commands defined or modified by the asmeconf class is illustrated throughout this file. In particular, 
-%%  ASME requires capitalized, sans-serif section headings, and as a result some care is needed when using macros 
-%%  in section headings, as also illustrated below.
+%%  ASME requires capitalized section headings, and as a result some care is needed when using macros in section headings,
+%%  as also illustrated below.
 %%
-%%  Use an up-to-date and complete installation of LaTeX, such as TeX Live 2020 or later. Errors may occur with old set-ups.
+%%  Be sure to use **up-to-date and complete** installation of LaTeX, such as TeX Live 2023 or later. Errors often occur with old set-ups.
 %%
  %=========================================================
 %% 
@@ -90,14 +79,17 @@
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
 
-%% RECOMMENDED new pdf management code.
-%% This addition the LaTeX kernel was made by the LaTeX Project team in June 2022.
+%%  RECOMMENDED pdf management code.
+%%  This code was added to the LaTeX kernel in June 2022.
 %% 		see https://www.latex-project.org/news/latex2e-news/ltnews35.pdf
-%% If you have problems with these lines, your LaTeX format may be out of date. You can comment them out.
+%%  If you have problems with these lines, your LaTeX format may be out of date. You can comment them out.
 
 \DocumentMetadata{%
-	pdfstandard=A-3u,% A-2b, A-2u, A-3b, or A-3u. Don't use u option (unicode) with LuaLaTeX.
-	pdfversion=1.7,
+%	testphase={phase-III,math,table,firstaid,title},% testphase for producing tagged pdf.
+%	pdfstandard = ua-2,
+%	pdfversion  = 2.0,
+	pdfstandard=A-3u,% A-2b, A-2u, A-3b, A-3u. Check that your figures also meet the standard you choose.
+	pdfversion=1.7,% 2.0 (Version 2.0 supports pdfstandard=A-4f with pdftex or UA-2 with LuaLaTeX)
 	lang=en-US,
 }
 
@@ -104,12 +96,16 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %% Class options are described above. Change these options as desired. 
-%%		If you are not using the language options, remove them (together with Appendices B and C)
 %%	 	Remove the [colorlinks] option before *final* submission to ASME, to get black text for printing,
-%%		but keep that option for other uses.
- 
-\documentclass[grid,balance,colorlinks,upint,subscriptcorrection,varvw,mathalfa=cal=boondoxo,german,spanish,vietnamese,russian,greek]{asmeconf}
+%%		but keep that option for electronic use.
+%%
+%%		If you are not using the language options, remove them (together with Appendices C and D)
+%%		Vietnamese, greek, and cyrillic languages, if used, must be named in \documentclass under pdftex, but not under lualatex.
+%%		Spanish, german, and many others, if used, do not need to be named when babel package is 2024 or later.
 
+\documentclass[grid,balance,colorlinks,upint,subscriptcorrection,varvw,hyphenate,vietnamese,greek,russian,german,spanish]{asmeconf}
+
+
 %%%%%  pdf metadata  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \hypersetup{%
@@ -118,44 +114,48 @@
 	pdfkeywords={ASME conference paper, LaTeX template, BibTeX style},% <=== change to YOUR pdf keywords
 	pdfsubject = {Describes the asmeconf LaTeX template},			  % <=== change to YOUR subject
 %	pdfurl={https://ctan.org/pkg/asmeconf},% may delete
-	pdflicenseurl={https://ctan.org/pkg/asmeconf},% may delete
+%	pdflicenseurl={https://ctan.org/pkg/asmeconf},% may delete
 }
 
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
+\allowdisplaybreaks % from amsmath package, allows multiline equations to break across pages (delete if not wanted)
+
+\usepackage{hologo} % Package to access various LaTeX logos, if needed (delete if not)
+
 \begin{document}
 
 % Change these fields to the right content for your conference.
 % You can comment these out if for some reason you don't want a header.
-% Use title case (first letters capitalized), not all capitals
+% Use title case for the conference name (first letters capitalized), not all capitals
 
 \ConfName{Proceedings of the ASME 2025\linebreak International Mechanical Engineering Congress and Exposition}
 \ConfAcronym{IMECE2025}
-\ConfDate{November 16--20, 2025} % update 
-\ConfCity{Memphis, TN} % update 
+\ConfDate{November 16--20, 2025} 
+\ConfCity{Memphis, TN}
 \PaperNo{IMECE2025-XXXX}
 
 % Units of measure (e.g., cm) and other specialty lowercase terms in the title should be 
-%   enclosed in \NoCaseChange{...} to maintain lower case type
-%   LaTeX will automatically set the rest of the title in all capital letters.
+%   enclosed in \NoCaseChange{...} to maintain lower case type.
+%   The rest of the title will automatically be set in all capital letters.
+%
+%	\title{Place Title Here: Place Subtitle After Colon} 
 
 \title{A LATEX Template for ASME Conference Papers: \NoCaseChange{\texttt{asmeconf.cls}}} % <=== replace with YOUR title
-%\title{Place Title Here: Place Subtitle After Colon} 
  
 %   Put author names into the order you want. Use the same order for affiliations.
 %   \affil{#} tags the author's affiliation to the address in \SetAffiliation{#}.
 %   No space between last name and \affil{#}, separate names with commas.
 %
-%	For a sole author or a single affiliation for all authors, {#} may be left empty, as \affil{} and \SetAffiliation{} (but not with [grid] option!)
+%	For a sole author or a single affiliation for all authors, {#} may be left empty, i.e. \affil{} and \SetAffiliation{} (but not with [grid] option!)
 %
-%   \CorrespondingAuthor{email} follows that author's affiliation, no spaces.  
+%   \CorrespondingAuthor{email} follows that author's affiliation, no spaces before or after 
 %   If multiple corresponding authors, put both email addresses in the same command and place after both authors.
 %
 %   \JointFirstAuthor, if applicable, follows the affiliation of the relevant authors, no spaces.
 
-%    (Most of the names below are not real people, just very common names.)
-
+%    Most of the names below are not real people, just very common names.
 \SetAuthors{%
 	Luis Hern\'{a}ndez\affil{1}\JointFirstAuthor, 
 	Maria Silva\affil{2}\JointFirstAuthor, 
@@ -181,7 +181,7 @@
 %%% \date{..} calls the same command. 
 \versionfootnote{Documentation for \texttt{asmeconf.cls}: Version~\versionno, \today.}% <=== Delete before final submission.
 
-%%% Change these to your keywords.  Keywords are automatically printed at the end of the abstract.
+%%% Change the following to your keywords.  Keywords are automatically printed at the end of the abstract.
 %%% This command MUST COME BEFORE the end of the abstract.
 %%% If you don't want keywords, leave the argument of \keywords{} empty (or use the abstract* environment)
 
@@ -189,12 +189,12 @@
 
 %%%%%  End of fields to be completed. Now write your paper. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
+
 %%%%%  ABSTRACT  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%
 %% Abstract should be 200 words or less
 \begin{abstract}
-
-This paper is an example of and a  {\upshape\LaTeX} template for typesetting ASME conference papers using the {\upshape\texttt{asmeconf}} class. This  {\upshape\LaTeX} template follows ASME guidelines for margins, fonts, headings, captions, and reference formats as of 2025. The class is intended to be used with the {\upshape\texttt{asmeconf.bst} \hologo{BibTeX}} style for reference formatting, which is part of this distribution. The template produces pdfs that contain hyperlinks, bookmarks, and metadata; and references can include the DOI and URL fields. Links may be colored, for online use, or black, for publication. The class enables inline author names, following ASME's current style, but can also produce the traditional grid style. Options include line numbering, final column balancing, various math options, government copyright, and archivability (PDF/A). In addition, section headers may contain mathematics, references, citations, and footnotes. The class is compatible with {\upshape\hologo{pdfLaTeX}} or {\upshape\hologo{LuaLaTeX}}.
+This paper is an example of and a {\upshape\LaTeX} template for typesetting ASME conference papers using the {\upshape\texttt{asmeconf}} class. This  {\upshape\LaTeX} template follows ASME guidelines for margins, fonts, headings, captions, and reference formats as of 2025. The class should be used with the {\upshape\texttt{asmeconf.bst} \hologo{BibTeX}} style for reference formatting, which is part of this distribution. The template produces pdfs that contain hyperlinks, bookmarks, and metadata; and references can include the DOI and URL fields. Links may be colored, for online use, or black, for publication. The class enables inline author names, following ASME's current style, but can also produce the traditional grid style. Options include line numbering, final column balancing, various math options, government copyright, and archivability (PDF/A). In addition, section headers may contain mathematics, references, citations, and footnotes. The class is compatible with {\upshape\hologo{pdfLaTeX}} or {\upshape\hologo{LuaLaTeX}}.
 \end{abstract}
 
 %%%%%%%%%  NOMENCLATURE (OPTIONAL) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -202,6 +202,7 @@
 %% To change space between the symbols and  definitions, use \begin{nomenclature}[Xcm] where X is a number 
 %% The unit cm can be replaced by any LaTeX unit of dimension: pt, in, ex, em, pc, etc.
 %% Default is 2em.
+%%
 %% \EntryHeading{..} produces an italicized subheading in the nomenclature list, e.g., \EntryHeading{Greek letters}
 
 \begin{nomenclature}
@@ -225,13 +226,13 @@
 %%%%%%%%%  BODY OF PAPER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \section{Introduction}
-The \texttt{\hrefurl{https://ctan.org/pkg/asmeconf}{asmeconf}} class typesets papers with margins, fonts, headings, captions, and reference formats that follow the specifications for conference papers of the American Society of Mechanical Engineers (ASME). In contrast to older ASME \LaTeX\ templates, \texttt{asmeconf} will set internal and external hyperlinks, and the pdf file will contain bookmarks and metadata. Many other useful features have been incorporated. This class is not a publication of ASME, but the author has published in ASME conferences since 1983. 
+The \texttt{\hrefurl{https://ctan.org/pkg/asmeconf}{asmeconf}} class typesets papers with margins, fonts, headings, captions, and reference formats that follow the specifications for conference papers of the American Society of Mechanical Engineers (ASME). The \texttt{asmeconf} class will set internal and external hyperlinks, and the pdf file will contain bookmarks and metadata. Many other useful features have been incorporated. This class is not a publication of ASME, but the author has published in ASME conferences since 1983. 
 
-The \texttt{.tex} file may be written using standard \LaTeX\ commands, although some specific initial commands are needed to format the blocks containing the author[s], title, and abstract.  This class loads a number of other packages, all of which are contained in up-to-date versions of \hrefurl{https://www.tug.org/texlive/}{\TeX\ Live}, \hrefurl{http://www.tug.org/mactex/}{Mac\TeX}, and similar platforms. If you get an error message about a missing package, you may download it at no cost from CTAN (\hrefurl{https://ctan.org}{ctan.org}). 
+The \texttt{.tex} file may be written using standard \LaTeX\ commands, although some class-specific initial commands are needed to format the blocks containing the author[s], title, and abstract.  This class loads a number of other packages, all of which are contained in up-to-date versions of \hrefurl{https://www.tug.org/texlive/}{\TeX\ Live}, \hrefurl{http://www.tug.org/mactex/}{Mac\TeX}, and similar platforms. If you get an error message about a missing package, you can download that package at no cost from CTAN (\hrefurl{https://ctan.org}{ctan.org}). 
 
 \subsection{Essential Initial Commands}
 
-To begin, fill in the fields to be completed at top of the \texttt{asmeconf-template.tex} file. These fields include the headers for your conference and your paper number. Specified metadata will be placed into the pdf file itself. 
+To begin, fill in the fields to be completed at top of the \texttt{asmeconf-template.tex} file. These fields include the headers for your conference and your paper number. The metadata you provide will be placed into the pdf file itself. 
 The title should be placed into \verb|\title{..}|. 
 
 Put author names into the \verb|\SetAuthors{name, name,...}| command in the desired order; follow the syntax illustrated \texttt{asmeconf-template.tex} file. Put each distinct address sequentially into a separate \verb|\SetAffiliation{n}{address}|, where $n = 1,2,\ldots$ Tag each author with an affiliation by putting \verb|\affil{n}| after that author's name inside the \verb|\SetAuthors{..| command. 
@@ -254,7 +255,7 @@
 
 For ASME conference papers, the labels Equation and Figure should be abbreviated when they do not start a sentence, as in  Eq.~\eqref{eqn:dw} and Fig.~\ref{fig:1}. Figure~\ref{fig:1} is spelled out when it starts a sentence. Equation~\eqref{eqn:dw} is spelled out when it starts a sentence. 
 
-Equations are typeset in the usual way and will be automatically numbered.  The class file loads the \texttt{amsmath} and \texttt{mathtools} packages. Further, the \texttt{newtxmath} package used for the math fonts includes many additional features (see Sect.~\ref{sec:moremath}).
+Equations are typeset in the usual way and will be automatically numbered.  The class file loads the \texttt{amsmath} and \texttt{mathtools} packages. Further, the \texttt{newtxmath} package used for the math fonts includes many additional math features (see Sect.~\ref{sec:moremath}).
 \begin{equation}\label{eqn:fourier}
 \vec{q} = -k\nabla T
 \end{equation}
@@ -288,7 +289,7 @@
 
 Simple mathematical expressions can be used in either captions or section headings. For a section heading that includes more complicated math (and macros), you may use the optional argument of \verb|\section[..]{..}| to create a pdf bookmark without losing characters or producing warnings or errors. See the \texttt{asmeconf-template.tex} source file for examples of this procedure. These bookmarks should usually be text expressions, although some math is supported.  
 
-To eliminate boldface type in caption text and math, use the class option \texttt{[unboldcaption]}.  To avoid \texttt{sans} math in captions, put \verb|\NoCaseChange{\mathversion{normal}}| in the caption.
+To eliminate boldface type in caption text and math, use the class option \texttt{[unboldcaption]}.  To prevent sans-serif math, put \verb|\NoCaseChange{\mathversion{normal}}| in the caption.
 
 \subsection{Subsection and Sub-subsection Headings}
 
@@ -299,7 +300,7 @@
 
 %% Captions go above tables
 %%
-%% Note that placement of figures and tables can managed with the [!tbhp] options. See: https://latexref.xyz/dev/latex2e.html#Floats
+%% Note that placement of figures and tables can managed with the [!tbhp] options. See: https://latexref.xyz/Floats.html
 
 \begin{table}[t]
 \caption[Table]{A simple table}\label{tab:1}
@@ -319,7 +320,7 @@
 
 %%%%%%%%%%%%%%% begin more complicated table %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-% note column set as a 3 cm wide paragraph with 1em hanging indentation. See array package documentation.
+% note column set as a 3 cm wide paragraph with 1 em hanging indentation. See array package documentation.
 % note numbers centered on "." (with d{3.3}) and on "," (with ,{3.3}).  See dcolumn package documentation.
 \begin{table}[t]
 \caption{Table with more complicated columns}\label{tab:2}%
@@ -384,7 +385,7 @@
 
 \section{Reference Formatting with \NoCaseChange{\texttt{asmeconf.bst}}\footnote{To prevent capitalization of text in a section heading or caption, such as an SI unit, enclose it in a \texttt{\textbackslash NoCaseChange} command. As of the July 2022 release of \LaTeX, commands used in a heading or caption may be protected globally by putting this in the preamble: \texttt{\textbackslash AddToNoCaseChangeList\{\textbackslash MyCommand\}}.}}\label{sec:references}
 
-The {\upshape\texttt{asmeconf.bst}} \hologo{BibTeX}  style follows the reference styles shown on ASME's conference web site in  2022.\footnote{\texttt{asmeconf.bst} is intended as a replacement for the old \texttt{asmems4.bst}, which does not follow ASME's current reference formats or support DOI and URL.}
+The {\upshape\texttt{asmeconf.bst}} \hologo{BibTeX}  style follows the reference styles shown on ASME's conference web site in  2025.\footnote{\texttt{asmeconf.bst} is intended as a replacement for the old \texttt{asmems4.bst}, which does not follow ASME's current reference formats or support DOI and URL.}
 Examples for these and many other cases are given in the \texttt{asmeconf-sample.bib} file, which is part of this distribution. Citations and references are managed by the standard \texttt{natbib} package.  Nevertheless, a few comments are necessary. 
 
 %% sub-subsections should *not* be numbered according to ASME's style
@@ -397,7 +398,7 @@
 
 \subsubsection*{Date Accessed} The \verb|urldate={..}| field may be used to provide the date on which a given url was accessed. By default, the text printed will be \texttt{Accessed `date',}. The word ``Accessed'' may be changed using the \verb|urltype={..}| field.
 
-\subsubsection*{Conference Location and Date} To specify the city and date of a conference, you can use \verb|venue={..}| and \verb|eventdate={..}| with the entries \verb|@inproceeedings{..| and \verb|@proceeedings{..|.
+\subsubsection*{Conference Location and Date} To specify the city and date of a conference, you can use \verb|venue={..}| and \verb|eventdate={..}| with the entries \verb|@inproceeedings{..| and \verb|@proceeedings{..|
 
 \subsubsection*{Capitalization of Titles} ASME's bibliography style requires that document titles be in title case. The first letters of principal words are capitalized. Do this in the \texttt{.bib} file.
 
@@ -410,15 +411,15 @@
 \centering{
   \includegraphics[width=0.9\linewidth, alt={Nusselt number data for isothermal wall}]{sample-figure-2a.pdf}%
 }
-\subcaption{Uniform temperature wall\label{fig:interior-region}}
+\subcaption{Uniform temperature wall\label{fig:isothermal}}
 \end{subfigure}%
 \hspace*{\columnsep}% with this space added, puts each figure at column center
 %%%%%%%%%%%%% no line break between these two subfigures
 \begin{subfigure}[b]{\columnwidth}
 \centering{%
-\includegraphics[width=0.927\linewidth, alt={Nusselt number data for constant heat flux wall}]{sample-figure-2b.pdf}%
+\includegraphics[width=0.927\linewidth, alt={Nusselt number data for uniform heat flux wall}]{sample-figure-2b.pdf}%
 }%
-\subcaption{Uniform heat flux wall with unheated starting length\label{fig:exterior-region}}
+\subcaption{Uniform heat flux wall with unheated starting length\label{fig:uniform-flux}}
 \end{subfigure}
 \caption{A figure with two subfigures~\cite{lienhard2020}\label{fig:2}}
 \end{figure*}
@@ -426,11 +427,12 @@
 %%%%%%%%%%%%%%%%%%%  end two column figure  %%%%%%%%%%%%%%%%%%%%%%%%%%
 
 
+
 %%%%%%%%%%%%%%%  MORE ON MATH   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %% Here is an example of managing complicated math in a section or subsection heading: 
 %%    the optional argument to \section will provide the pdf bookmark
-%%    without losing characters or producing warnings/errors.
+%%    without losing most characters or producing warnings/errors.
 %%
 %% In this heading, letter u is forced to be upright with \mathrm{u}
 %%
@@ -445,29 +447,53 @@
 \end{multline}
 An example using \texttt{align} appears in Appendix~\ref{appendix:a}.
 
-An alternative solution may be to set large equations into two-column-wide tables or figures. An experimental package for setting equations that span two columns, \texttt{asmewide.sty}, can be loaded as well, but that code may require hand-fitting around figures, tables, and page breaks. See the examples in~\cite{lienhard2022}.
+An experimental package for setting equations that span two columns, \texttt{asmewide.sty}, can be loaded as well, but that code may require hand-fitting around figures, tables, and page breaks. See the examples in~\cite{lienhard2022}. An alternative solution may be to set large equations into two-column-wide tables or figures. 
 
 Math italics are used for Roman and Greek letters by default.  If you want an upright letter in math, you can use the relevant math alphabet, e.g., \verb|\mathrm, \mathbf, \mathsf|:
 \begin{equation}\label{eqn:dw}
 \vec{F} = m \vec{a} \quad\textrm{or}\quad \vec{\mathrm{F}} = m \vec{\mathrm{a}} \quad\textrm{or}\quad \mathbf{F} = m \mathbf{a} \quad\textrm{or}\quad \vec{\mathsf{F}} = m \vec{\mathsf{a}}
 \end{equation}
-To get additional symbols in bold math, use the \verb|\bm{..}| macro from the \texttt{bm} package (which is loaded by the class) or, for longer passages, use \verb|{\mathversion{bold}..|\texttt{\}}.
 
-The class file also provides upright sans-serif Greek letters with \verb|\sfalpha| and similar expressions (e.g., $\sfalpha, \sfbeta, \sfgamma, \sfdelta$ \ldots $\bm{\sfalpha, \sfbeta, \sfgamma, \sfdelta \ldots}$), in case they are needed (but note that the \verb|newtxmath| options \verb|frenchmath| and \verb|slantedGreek| also affect how Greek letters are presented).
-
-\subsection{The \texttt{newtxmath} and \texttt{mathalpha} Packages~\cite{sharpe1,sharpe2}} The \texttt{newtxmath} package~\cite{sharpe1}, loaded by default, includes many options for mathematics, most of which can be called as options to \verb|\documentclass|. For example, the \texttt{upint} option selects upright integral signs (rather than slanted integral signs):
+\subsection{The \texttt{newtxmath} and \texttt{unicode-math} Packages~\cite{sharpe1,robertson2023}} The \texttt{newtxmath} package, loaded by default with \hologo{pdfLaTeX}, includes many options for mathematics, most of which can be called as options to \verb|\documentclass|. For example, the \texttt{upint} option selects upright integral signs (rather than slanted integral signs):
 \begin{quote}
 \verb|\documentclass[upint]{asmeconf}|. 
 \end{quote}  
-The option \verb|subscriptcorrection| improves the spacing of math subscripts. These math options are discussed further in the \texttt{asmeconf-template.tex} file. 
+The option \verb|subscriptcorrection| improves the spacing of math subscripts. Math options are discussed further in the \texttt{asmeconf-template.tex} file.  The \texttt{newtxmath} package is also loaded with the \texttt{[nofontspec]} option.
 
-In addition, many options for calligraphic, fraktur, and script fonts are available as options to the \texttt{mathalfa} package, which is also loaded. These may be invoked, for example, as 
+To get additional symbols in bold math with \hologo{pdfLaTeX}, use \verb|\bm{..}| from the \texttt{bm} package, which is loaded by the class. 
+
+If using \hologo{LuaLaTeX}, the math features of \texttt{unicode-math} are available.  These include commands to select a boldface, upright symbol, \verb|\symbfup{..}| or \verb|\mathbfup{..}|, to select boldface fraktur 
+symbol, \verb|\symbffrak{..}| or \verb|\mathbffrak{..}|, and so on.  See the documentation of \texttt{unicode-math} for details~\cite{robertson2023}.
+
+The \texttt{[upint]} option also works under \hologo{LuaLaTeX}.
+
+For longer passages of bold math, you can use \verb|{\mathversion{bold}..}| with either \hologo{pdfLaTeX} or \hologo{LuaLaTeX}: 
+\verb|{\mathversion{bold} $A\otimes\mathfrak{F}$ }| gives {\mathversion{bold} $A\otimes\mathfrak{F}$}. Note that the math version must be changed \textit{before} starting math mode.
+
+
+\subsection{Sans-Serif Greek Letters}
+The class file also provides upright sans-serif Greek letters with \verb|\sfalpha| and similar expressions (e.g., $\sfalpha, \sfbeta, \sfgamma, \sfdelta$ \ldots ), in case they are needed. 
+
+Under \hologo{pdfLaTeX} boldface, upright, sans-serif Greek letters can be obtained with \verb|\bm{\sfalpha}|, etc.  The \texttt{newtx} package also includes options that affect whether Greek letters are upright or slanted (see that package's documentation for details).
+
+Under \hologo{LuaLaTeX}, boldface, sans-serif, upright Greek can be obtained with \verb|\sfbfalpha|, etc., or by using \verb|\symbfsfup{\alpha}|.  In the first case, the glyphs are drawn from the Lete Sans Math font, while in the second case, the glyphs are from the TeX Gyre Termes Math font.   Why are two different fonts being used? Unicode does not include medium-weight upright Greek as a component of a serif font (like Termes), although it does include both upright and italic boldface Greek. However, in a sans-serif font (like Lete), Greek letters are sans-serif by default, including medium weight. (You can also invoke \verb|\symbfsfit{\alpha}| for  boldface, sans-serif, slanted type.) 
+
+\subsubsection*{Sans-serif Math Versions} Two additional math versions, \texttt{sansbold} and \texttt{sans} are available in \texttt{asmeconf}.  The former is used by default in captions and section headings.  The latter is available in case you find a use for it. In \hologo{LuaLaTeX}, both versions use the Lete Sans Math fonts. In \hologo{pdfLaTeX}, the glyphs are from the \texttt{newtxsf} package.
+  
+  
+\subsection{Controlling Calligraphic, Script, Fraktur, or BB Fonts}
+With \hologo{pdfLaTeX}, the  package may be loaded in the preamble~\cite{sharpe2}.\footnote{As of v1.41, the \texttt{[mathalfa]} class option has been dropped.} This package supports variety of font for calligraphic, fraktur, script, and blackboard bold fonts. For example,
 \begin{center}
-\verb|\documentclass[mathalfa=cal=boondoxo]{asmeconf}| 
+\verb|\usepackage[cal=euler,frak=boondox]{mathalpha}| 
 \end{center}
-which selects a Boondox font for \verb|\mathcal|, as in $A \in \mathcal{P}(A)$. To find all the font options, refer to the \texttt{mathalfa} package documentation \cite{sharpe2}.
+selects the Euler font for \verb|\mathcal| and the Boondox font for \verb|\mathfrak|. Refer to the \texttt{mathalpha} documentation for details~\cite{sharpe2}.  The \texttt{[nofontspec]} option also supports \texttt{mathalpha}.
 
-The \texttt{asmeconf} class is designed to be used with \texttt{newtxmath} and does not support the \texttt{unicode-math} package.
+Under \hologo{LuaLaTeX}, the \texttt{unicode-math} \texttt{range} function can be used to select such fonts~\cite{robertson2023}. For example, the following code in the preamble would select the Euler Math font for calligraphic, script, fraktur, and blackboard bold fonts:
+\begin{quote}\raggedright
+\verb|\setmathfont{Euler-Math}[|
+\verb| range={cal,scr,frak,bb},|
+\verb| Extension=.otf,Scale=MatchUppercase]|
+\end{quote}
 
 
 %%%%%%%%%%%%%%%  ADDITIONAL PACKAGE OPTIONS  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -482,14 +508,14 @@
 \subsection{Final Column Balancing} The option \texttt{[balance]} invokes the the \texttt{flushend} package~\cite{tolusis}.
 This package will attempt to give equal height to the two columns on the last page. The performance of this package is sometimes inconsistent (with odd page layout or, very rarely, errors), so use this option with caution.
 
+\subsection{Grid-Style Author Block} The option \texttt{[grid]} invokes ASME's grid-style arrangement of author names. In the \verb|\SetAuthors{..}| command, individual author's names are recognized by the commas that separate them. (To include a comma \textit{in} a name, enclose the name in braces.) Line breaks (\verb|\\|) may be inserted into the address of \verb|\SetAffiliation{n}{address}| as needed. 
+
+Note that ASME interprets the author order in the grid style by reading names from left-to-right in the top row, then left-to-right in each subsequent row.
+
 \subsection{Line Numbers} The option \texttt{[lineno]} invokes the the \texttt{lineno} package~\cite{bottcher}. This option will produce line numbers in the margins. You must run \LaTeX\ \textit{twice} for proper placement of the numbers. Tables, captions, and footnotes will not be numbered.  Line numbers can be helpful for review and editing, but should not be used in your final manuscript. See the documentation of the \texttt{lineno} package for further commands to control line numbering. 
 
 The \texttt{lineno} package is not compatible with the \texttt{flushend} package that makes final short columns the same height. Balancing is automatically disabled when this option is called. 
 
-\subsection{Grid-Style Author Block} The option \texttt{[grid]} invokes ASME's grid-style arrangement of author names. Author names are recognized by the commas that separate them. (To include a comma in a name, enclose the name in braces.) Line breaks (\verb|\\|) may be inserted into the address of \verb|\SetAffiliation{n}{address}| as needed. 
-
-Note that ASME interprets the author order in the grid style by reading names from left-to-right in the top row, then left-to-right in each subsequent row.
-
 \subsection{Changing the Copyright Footer} The option \texttt{[nofoot]} will omit the ASME copyright from the page footer. The option \texttt{[govt]} will produce a copyright notice for authors who are employees of the U.\ S.\ Government.  
 The option \texttt{[contractor]} will produce a copyright
 notice for authors who are employed by a U.\ S.\ Government contractor.
@@ -497,16 +523,27 @@
 
 The footers are generated with the \texttt{fancyhdr} package~\cite{oostrum} and can be changed using the commands of that package. Only the default arrangement matches ASME's style, however.
 
-\subsection{Archivability:~PDF/A} In June 2022, the \LaTeX 3 team added support for PDF/A to the \LaTeX\ kernel, using the command \verb|\DocumentMetadata{..}|. This approach works with \textit{both} \hologo{pdfLaTeX} and \hologo{LuaLaTeX}. Note that accessible  conformance~(\texttt{a}) is still under development by the  \LaTeX3 team.
+In addition, the conference header on the title page can be omitted using the option \texttt{[nohead]}.
 
-For out-of-date \LaTeX\ formats, compliance with PDF/A standards can be enabled using the legacy option \texttt{[pdf-a]} when running with \hologo{pdfLaTeX}. The default setting is PDF/A-3u with sRGB OutputIntent (\texttt{sRGB.icc}). If levels 1b, 2b, 2u, or 3b are desired, use the
-options \texttt{[pdfapart=1 or 2 or 3]} and  \texttt{[pdfaconformance=b or u]}. Accessible  conformance~(\texttt{a}) is not possible with this method. 
+\subsection{Archivability:~PDF/A} In June 2022, the \LaTeX{}3 team added support for PDF/A to the \LaTeX\ kernel through the command \verb|\DocumentMetadata{..}|. This approach works with \textit{both} \hologo{pdfLaTeX} and \hologo{LuaLaTeX}. Note that accessible  conformance~(\texttt{a} or \texttt{UA-2} level, a.k.a.\ ``well-tagged PDF'') is still under development by the  \LaTeX3 team.
 
-\subsection{Typewriter Font Options} This font is the sans-serif \texttt{inconsolata}. By default, the word spacing is variable, but option \texttt{[mono]} ends this behavior. A slashed zero is the default; option \texttt{[var0]} removes the slash. Option \texttt{[hyphenate]} enables hyphenation. (The hyphenation option is not available under \hologo{LuaLaTeX} with \texttt{fontspec}.)
+As of \texttt{asmeconf} v1.41, the legacy options \texttt{[pdf-a]}, \texttt{[pdfapart=]}, and \texttt{[pdfaconformance=]} have been dropped.
 
+\subsection{Typewriter Font Options} This font is the sans-serif \texttt{inconsolata}. By default, the word spacing is variable, but option \texttt{[mono]} switches to monospacing. A slashed zero is the default; option \texttt{[var0]} removes the slash. Option \texttt{[hyphenate]} enables hyphenation. (The hyphenation option is not available under \hologo{LuaLaTeX} with \texttt{fontspec}.)
+
 \subsection{Support for Other Languages}  This package can be adapted to incorporate (or entirely use) languages other than English. See Appendix \ref{appendix:c} for details.
 
 
+%%%%%%%%%%%%%%%  Nomenclature Environment  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{Nomenclature Environment}
+A nomenclature environment is included, as illustrated just after the abstract.  Each item in the nomenclature list is entered as \verb|\entry{symbol}{meaning}|.  Optional subheadings can be included as well: \verb|\EntryHeading{Roman letters}|.  The environment includes an optional argument for changing the space between symbols and definitions, 
+\verb|\begin{nomenclature}[Xcm]|, where X is a number and cm can be replaced by any LaTeX dimensional unit: pt, in, ex, em, pc, etc. The default value is~2~em.
+
+The title of the nomenclature can be also changed, e.g.\ \verb|\renewcommand*{\nomname}{List of Symbols}|
+
+
+
 %%%%% Conclusions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \section{Conclusion}
@@ -526,10 +563,10 @@
 %%		venue = {Location of Conference}, 
 %%		eventdate = {Month, days},
 
-\nocite{*}%% <=== Delete this line unless you want to typeset the entire contents of your .bib file!
+\nocite{*}%% <=== Delete this line unless you want to typeset the entire contents of your .bib file !!
 
 \bibliographystyle{asmeconf}  %% .bst file following ASME conference format. Do not change.
-\bibliography{asmeconf-sample}%% <=== change this to name of your bib file
+\bibliography{asmeconf-sample}%% <=== change this to the name of your bib file
 
 
 %%%  APPENDICES  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -538,7 +575,7 @@
 %% Note that appendices will be "numbered" A, B, C, ... etc. Use \section, not \section*
 %% Equations will be numbered sequentially following those in the paper. Do not reset the equation counter.
 
-%% Here we use the optional argument to control the pdf bookmark and prevent errors.
+%% Here we use the optional argument of section to control the pdf bookmark and prevent errors.
 \section[The Vector Product A\times B]{The vector product $\vec{A}\times\vec{B}$}\label{appendix:a}
 
 This brief illustration of an appendix shows the numbering of the appendix and equations. Equations are numbered
@@ -545,29 +582,29 @@
 consecutively, following those in the paper. Consider $\rho \neq \textrm{fn}(p)$:
 \begin{align}
 \frac{d\Gamma}{dt} &{}= \frac{d}{dt} \int_{\mathcal{C}} \mathbf{u} \cdot d\mathbf{r}\\
-				   &{}= \int_{\mathcal{C}} \frac{D\mathbf{u}}{Dt} \cdot d\mathbf{r} + \underbrace{\int_{\mathcal{C}} \mathbf{u}\cdot d\biggl( \frac{d\mathbf{r}}{dt}\Biggr)}_{=\, 0} \\[-2pt]
+				   &{}= \int_{\mathcal{C}} \frac{D\mathbf{u}}{Dt} \cdot d\mathbf{r} + \underbrace{\int_{\mathcal{C}} \mathbf{u}\cdot d\biggl( \frac{d\mathbf{r}}{dt}\biggr)}_{=\, 0} \\[-2pt]
                    &{}= \iint_{\mathcal{S}} \nabla \times \frac{D\mathbf{u}}{Dt}  \cdot d\mathbf{A}\\
                    &{}= \iint_{\mathcal{S}}  \nabla p \times \nabla \left( \frac{1}{\rho}\right) \cdot d\mathbf{A}
 \end{align}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section[Use with LuaLaTeX]{Use with \NoCaseChange{\hologo{LuaLaTeX}}}\label{appendix:b}
+\section[Use with LuaLaTeX]{Use with \NoCaseChange{LuaLaTeX} }\label{appendix:b}
 
-The \hologo{LuaLaTeX} engine is useful with \texttt{asmeconf} in two situations:
+The \hologo{LuaLaTeX} engine is useful with \texttt{asmeconf} in at least three situations:
 
 \begin{description}
 
-\item \textbf{Executing lua code directly in your \LaTeX\ file.} With lua code, complicated functions can be plotted or numerical integration can be executed. An example file in the distribution demonstrates this capability~\cite{lienhard2024}. In this situation, \textit{be sure to use the class option} \texttt{[nofontspec]}, so that you won't need to install additional fonts on your computer. 
+\item[Executing lua code directly in your \LaTeX\ file.] With lua code, complicated functions can be plotted or numerical integration can be executed. An example file in the distribution demonstrates this capability~\cite{lienhard2025}. In this situation, you can use the class option \texttt{[nofontspec]} to stay with the \texttt{newtx} fonts. 
 
-\item \textbf{Using complex alphabets.} With \hologo{pdfLaTeX}, the \texttt{asmeconf} package supports Latin alphabets, as well as Cyrillic, Greek, and Vietnamese. If you need scripts such as Arabic, Chinese, or Japanese, \hologo{LuaLaTeX} with the \texttt{fontspec} package can use fonts installed in your computer operating system.\footnote{For English, you \textit{must} have these fonts installed:\par \parbox{\columnwidth}{\setlength{\parindent}{12pt}TeX Gyre Termes (\hrefurl{https://ctan.org/tex-archive/fonts/newtx/opentype}{ctan.org/tex-archive/fonts/newtx/opentype}),\par TeX~Gyre~Heros (\hrefurl{https://ctan.org/tex-archive/fonts/tex-gyre/opentype}{ctan.org/tex-archive/fonts/tex-gyre/opentype}),\par 
-Inconsolatazi4 (\hrefurl{https://ctan.org/tex-archive/fonts/inconsolata/opentype}{ctan.org/tex-archive/fonts/inconsolata/opentype}).}} See the example file in this distribution for more details~\cite{lienhard2021}.
+\item[Using complex alphabets.] With \hologo{pdfLaTeX}, \texttt{asmeconf} supports Latin alphabets, as well as Cyrillic, Greek, and Vietnamese. If you need scripts such as Arabic, Chinese, or Devanagari, \hologo{LuaLaTeX} with the \texttt{fontspec} package can use fonts available on your computer.\footnote{For English, you \textit{must} have these OpenType fonts (\texttt{.otf}) installed (all are in TeX Live and will be present if your installation is complete and up-to-date): TeX Gyre Termes X, TeX Gyre Termes Math, TeX Gyre Heros, Inconsolatazi4, LeteSansMath, STIX Two Math. For Greek and Russian, the Noto Serif, Sans, and Mono TrueType fonts (\texttt{.ttf}) are used, and those are also in TeX Live. For south and east Asian scripts, the relevant Noto fonts are \textbf{not} currently in TeX Live (go here: \hrefurl{https://github.com/googlefonts/noto-fonts}{github.com/googlefonts/noto-fonts}).}  See the example file in this distribution for more details~\cite{lienhard2021}.
 
+\item[Producing tagged PDF.] Under \hologo{LuaLaTeX} with \texttt{unicode-math} (which loads by default), \texttt{asmeconf} PDF files can meet the PDF 2.0/UA-2 standard using appropriate arguments to \verb|\DocumentMetadata{..}| provided that: a) subfigures are not used; b) any figure files meet the standard; c) the option \texttt{[captionpatch]} is called; and d) language options are used cautiously (some languages are compatible with tagging, but others, such as Japanese and Spanish, currently are not). Tagged pdf is still under development by the \LaTeX{}3 team as of \the\month/\the\year. 
 
 \end{description}
 
-For clarity, \texttt{fontspec} is automatically loaded when \texttt{asmeconf} is run under \hologo{LuaLaTeX}. Fontspec requires that the necessary system fonts are already installed in your operating system.  If you wish to use \hologo{LuaLaTeX} without bothering about system fonts, use the class option \texttt{[nofontspec]}. 
+For clarity, \texttt{fontspec} and \texttt{unicode-math} are automatically loaded when \texttt{asmeconf} is run under \hologo{LuaLaTeX}. Those packages require that the necessary fonts are available on your computer.  If you wish to use \hologo{LuaLaTeX} without the features of \texttt{unicode-math} and \texttt{fontspec}, use the class option \texttt{[nofontspec]}. 
 
-Access to \hologo{LuaLaTeX} is different in each \LaTeX\ platform.  Check the documentation for your specific platform to see how to access various typesetting engines.
+Over the long-term, \hologo{LuaLaTeX} will become the preferred engine for using \LaTeX\ (see \href{https://www.latex-project.org/news/latex2e-news/ltnews40.pdf}{\textit{LaTeX\ News}, Issue~40}). Access to \hologo{LuaLaTeX} is different in each \LaTeX\ platform. Check the documentation for your platform to load \hologo{LuaLaTeX}.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{Multilingual Support}\label{appendix:c}
@@ -579,9 +616,9 @@
 When more than one language option is included in \verb|\documentclass[..]{asmeconf}|, English will be 
 set as the document's main language. (To choose a different main language, set \texttt{[main=..]}).
 If no language options are given, the package defaults to English.  As examples, a passage in German is 
-shown in  \selectlanguage{german}\appendixname~\ref{app:pohlhausen}\selectlanguage{german},
+shown in  \selectlanguage{german}\appendixname~\ref{app:pohlhausen}\selectlanguage{english},
 %\selectlanguage{french}\appendixname~\ref{app:fourier}\selectlanguage{english}, 
-followed by \ifpdftex abstracts in Spanish, Greek, Russian, and Vietnamese.\else abstracts in other languages.\fi
+followed by abstracts in other languages.
 
 The input encoding can be utf-8, as for these glyphs:
 %% If you have trouble with the next line, your file may not be saved in utf-8 format. You can delete that line to resolve the issue.
@@ -588,10 +625,9 @@
 \typeout{If you have trouble with the next line, your file may not be saved in utf-8 format. You can delete that line to resolve the issue. Under LuaLaTeX, you can load the fontspec will support these characters if you have the relevant systems fonts installed}%
 àáâäæãåā  èéęëêēė  îïíīįì ôöòóœøōõ ûüùúū çćč ł ñń ßśš ÿ žźż.
 
-Fonts similar to Times/Helvetica are used when Greek, Vietnamese, or selected cyrillic-alphabet languages are called as options under {\upshape\hologo{pdfLaTeX}}. Using {\upshape\hologo{LuaLaTeX}}, which loads the fontspec package, many additional scripts are available; see the supplemental notes for such usage~\cite{lienhard2021}. Possibilities include Arabic, Bengali, Chinese, Devanagari (e.g., for Hindi), Hangul (for Korean), Kana (for Japanese), and Tamil. (Note: some fonts are not PDF/A compliant.) \textit{These options require a \LaTeX\ installation dated October 2020 or later.}
+Fonts similar to Times/Helvetica are used when Greek, Vietnamese, or selected cyrillic-alphabet languages are called as options under {\upshape\hologo{pdfLaTeX}}. Using {\upshape\hologo{LuaLaTeX}}, which loads the fontspec package, many additional scripts are available; see the supplemental notes for such usage~\cite{lienhard2021}. Possibilities include Arabic, Bengali, Chinese, Devanagari (e.g., for Hindi), Hangul (for Korean), Kana (for Japanese), and Tamil. \textit{These options require an up-to-date \LaTeX\ installation.}
 
 The bibliography style, \texttt{asmeconf.bst}, is designed in English and aimed at \hologo{BibTeX}.  
-% Multilingual bibliographies can be supported using \texttt{BibLaTeX}.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
@@ -601,6 +637,7 @@
 zwischen dem Wärmeaustanch und dem Reibungswiderstand schließen, die eine strömende Flüssigkeit an einem festen Körper hervorrufen. Dies ist zuerst von Prandtl ausgesprochen und durchgeführt worden, und zwar für turbulente Vorgänge, unter der vereinfachenden Annahme von Wärmequellen und -senken im Innern der Flüssigkeit~\cite{pohlhausen1921}. 
 \end{selectlanguage}%
 
+
 %\begin{selectlanguage}{french}%
 %\section{Discours Préliminaire de Fourier}\label{app:fourier}
 %Les causes primordiales ne nous sont point con­nues; mais elles sont assujetties à des lois simples et constantes, que l'on peut découvrir par l'obser­vation, et dont l'étude est l'objet de la philosophie naturelle. 
@@ -614,8 +651,8 @@
 \end{abstract*}
 \end{selectlanguage}% edited by Aarón Montoya-Moraga
 
-%% If you have trouble with the following passages, you may deleting this stuff and remove the associated language option from \documentclass[..].
-\typeout{If you have trouble with the following passages, your file may not be saved in utf-8 format, or your LaTeX format may be old, or you may not have the assumed font installed. You can delete those lines to resolve the issue.}
+%% If you have trouble with the following passages, delete them and remove the associated language option from \documentclass[..].
+\typeout{If you have trouble with the language passages in non-Latin scripts, your file may not be saved in utf-8 format, or your LaTeX format may be old, or you may not have the assumed font installed. You can delete those lines to resolve the issue.}
 
 %% Examples of abstracts in other languages. The first three are intended for pdflatex, not lualatex.
 \ifpdftex
@@ -623,7 +660,7 @@
     \begin{abstract*}
     Αυτή είναι η περίληψη του άρθρου. Χρησιμοποιούμε την ελληνική γλώσσα. Περιγράφεται το πρόβλημα, οι μέθοδοι και τα αποτελέσματα. Περιλαμβάνονται επίσης αναφορές.
     \end{abstract*}
-    \end{selectlanguage}% Edited by George Barbastathis   
+    \end{selectlanguage}% edited by George Barbastathis   
     
     \begin{selectlanguage}{russian}
     \begin{abstract*}
@@ -638,21 +675,21 @@
     \end{selectlanguage}% Checked and edited by Nguyen Le and Thao Nguyen
 \fi
    
-\iffontspecloaded %%% These passages require using lualatex AND installing the mentioned fonts as system fonts on your computer.
+\iffontspecloaded %%% These passages require using lualatex AND having the mentioned fonts installed on your computer.
 %
-	\IfFontExistsTF{NotoSans}{
-    	\IfFontExistsTF{NotoSerif}{
+	\IfFontExistsTF{NotoSans}{%
+    	\IfFontExistsTF{NotoSerif}{%
     	%
-        	\begin{selectlanguage}{greek}%
+        	\begin{selectlanguage}{greek}
             \begin{abstract*}
             Αυτή είναι η περίληψη του άρθρου. Χρησιμοποιούμε την ελληνική γλώσσα. Περιγράφεται το πρόβλημα, οι μέθοδοι και τα αποτελέσματα. Περιλαμβάνονται επίσης αναφορές.
             \end{abstract*}
-            \end{selectlanguage}% Edited by George Barbastathis
+            \end{selectlanguage}% edited by George Barbastathis
         %  
             \begin{selectlanguage}{russian}
             \begin{abstract*}
-            Это резюме статьи. Пишем по русски. Описаны проблема, методы и результаты. Библиография также включена.%
-            \end{abstract*}
+            Это резюме статьи. Пишем по русски. Описаны проблема, методы и результаты. Библиография также включена.
+            \end{abstract*}%
             \end{selectlanguage}% edited by Steven Gerasimoff
         %
         }{\ClassWarning{\ClassName}{I can't find NotoSerif.ttf, which is needed for Greek and Russian language text. Please install that font.}}
@@ -665,7 +702,7 @@
     \end{selectlanguage}% Checked and edited by Nguyen Le and Thao Nguyen
 %
 %
-%% Use class option [japanese] if you uncomment this passage.
+% Use class option [japanese] if you uncomment this passage. (Note, japanese has problems if pdf tagging is active.)
 %    \IfFontExistsTF{NotoSerifCJKjp}{%
 %    	\IfFontExistsTF{NotoSansCJKjp}{%
 %	    %
@@ -686,7 +723,7 @@
             \begin{abstract*}
             이것은 한국어로 쓰인 논문의 초록입니다. 문제, 방법 및 결과가 설명되어 있습니다. 참조도 포함됩니다.
             \end{abstract*}
-            \end{selectlanguage}% Edited by Hyung Won Chung.
+            \end{selectlanguage}% edited by Hyung Won Chung.
         %
         }{\ClassWarning{\ClassName}{I can't find NotoSerifCJKkr.otf, which is needed for Korean language text. Please install that font.}}
     %
@@ -699,7 +736,7 @@
         %
         }{\ClassWarning{\ClassName}{I can't find NotoSerifCJKsc.otf, which is needed for Korean language text. Please install that font.}}
     }{\ClassWarning{\ClassName}{I can't find NotoSansCJK.ttf, which is needed for Korean and simplified Chinese text. Please install that font.}} 
-%
+
 \fi
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-fontspec.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-fontspec.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-fontspec.tex	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-fontspec.tex	2025-03-28 21:33:34 UTC (rev 74780)
@@ -4,6 +4,8 @@
 %%
 %%  This file is an example of using asmeconf with fontspec and lualatex to support non-Latin alphabets.
 %%
+%%	Version 1.2, 2025/03/27
+%%
 %%  Author: John H. Lienhard V
 %%          Department of Mechanical Engineering
 %%          Massachusetts Institute of Technology
@@ -13,7 +15,7 @@
 %% 
 %% LICENSE: 
 %%
-%% Copyright (c) 2024 John H. Lienhard
+%% Copyright (c) 2025 John H. Lienhard
 %% Offered under the MIT license: https://ctan.org/license/mit 
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -24,9 +26,16 @@
 	lang=en-US,
 	debug = {xmp-export},
 }
-\documentclass[colorlinks,nofoot,spanish,japanese,russian,greek,ukrainian,vietnamese,french,portuguese,turkish,polish,indonesian,italian,german,latin,serbianc,bidi=basic]{asmeconf}
-% note that not all languages given as examples in this file can be called as options.
+\documentclass[colorlinks,nofoot,spanish,russian,greek,ukrainian,vietnamese,french,portuguese,turkish,polish,indonesian,italian,german,latin,serbianc,bidi=basic,japanese]{asmeconf}
+%
+%\documentclass[colorlinks,nofoot,bidi=basic]{asmeconf}
+%
+% spanish, german, and many others do not need to be named if babel is 2024 or later; just need bidi=basic for arabic (and japanese if using that language)
+%
+% March 2025: the japanese option has a minor conflict with the chinese-traditional font. Jus click past the error message.
 
+\usepackage{hologo}% access various latex logos if needed
+
 % directly add this xmp property. See l3pdfmeta.pdf. This is not automatic with \DocumentMetadata. "True" must be capitalized. 
 \ExplSyntaxOn
 	\pdfmeta_xmp_add:n{<xmpRights:Marked>True</xmpRights:Marked>}
@@ -61,8 +70,12 @@
 	\cs_new:Npn \MySym #1  { \codepoint_generate:nn {#1} { 12 } }
 \ExplSyntaxOff
 
-\renewcommand*{\checkmark}{\MySym{"2713}} % because default checkmark has poor glyph information
+\providecommand*{\checkmark}{\MySym{"2713}} % because default checkmark has poor glyph information
+\renewcommand*{\textast}{\MySym{"002A}} % because default checkmark has poor glyph information
 
+%\AtBeginDocument{\let\ast\textast} 
+% brute force fix of bug in luatexja-fontspec, when Japanese option is used. This affects the \ast of \CorrespondingAuthor
+
 %% It's necessary to force full embedding of the fonts to get valid PDF/A-3b
 \usepackage{luacode}
 \begin{luacode}
@@ -80,7 +93,7 @@
 \def\NotoAra at scale{0.93}% The serif font only; the default value is 0.91
 
 % Noto family is not as close to Tex Gyre Termes as I'd like, so for abstract examples in Latin script [only], I'm using Noto Serif Italic for visual consistency
-\newfontfamily{\NotoSerif}{NotoSerif}[UprightFont=*-Regular,ItalicFont=*-Italic, BoldItalicFont=*-BoldItalic, BoldFont=*-Bold, Extension=.ttf,Scale=\Noto at scale,WordSpace={1,1.4,1}]
+\newfontfamily{\NotoSerif}{NotoSerif}[UprightFont=*-Regular,ItalicFont=*-Italic, BoldItalicFont=*-BoldItalic, BoldFont=*-Bold, Extension=.ttf,Scale=0.84,WordSpace={1,1.4,1}]
 \newfontfamily{\NotoSerifItalns}{NotoSerif-Italic.ttf}[ItalicFont=*,Scale=\Noto at scale]% Turkish has trouble with WordSpace
 \makeatother
 
@@ -101,27 +114,27 @@
   title 	= {{\texttt{asmeconf}}: A template for {ASME} conference papers},
   organization = {Comprehensive \TeX\ Archive Network},
   version	= {{\versionno}},
-  year 		= {2021},
+  year 		= {2025},
   url 		= {https://ctan.org/pkg/asmeconf},
   urldate 	= {{\today}},
-}      
- at online{bezos2020,
-  author 	= {Johannes L. Braams and Javier Bezos},
+} 
+ at online{bezos2025,
+  author 	= {Javier Bezos and Johannes L. Braams},
   title 	= {{\texttt{babel}}: Localization and internationalization},
   organization = {Comprehensive \TeX\ Archive Network},
-  version	= {3.52},
-  year 		= {2020},
+  version	= {25.25},
+  year 		= {2025},
   url 		= {https://ctan.org/pkg/babel},
-  urldate 	= {January 3, 2021},
-}      
- at online{robertson2020,
-   title	= {The fontspec package: Font selection for {\hologo{LuaLaTeX}} and {\hologo{XeLaTeX}}},
-   version	= {2.7i},
-   organization = {Comprehensive \TeX\ Archive Network},
-   author	= {Will Robertson},
-   year		= 2020,
-   url		= {https://ctan.org/pkg/fontspec},
-   urldate	= {January 5, 2021},
+  urldate 	= {March 14, 2025},
+}           
+ at online{robertson2023,
+  author 	= {Will Robertson},
+  title 	= {Experimental Unicode mathematical typesetting: The \textsf{unicode-math} package},
+  version	= {0.8r},
+  organization = {Comprehensive \TeX\ Archive Network},
+  year 		= {2023},
+  url 		= {https://ctan.org/pkg/unicode-math},
+  urldate 	= {March 9, 2025},
 }
 @online{lua-jp,
    author	= {{\hologo{LuaTeX}-ja} project team},
@@ -165,7 +178,7 @@
 
 %%%%%%%%%  ABSTRACT  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \begin{abstract}
-This note describes the use of \AC\ to format multilingual documents in Latin or non-Latin alphabets. Font support encompasses the Arabic, Chinese, Greek, Hindi, Japanese, Korean, Marathi, Russian, and Tamil languages, among others. For asian alphabets, \LLT\ and \FS\ are employed.  The system fonts that must be installed for \FS\ are listed, and examples of simple abstracts are shown in twenty-five languages.
+This note describes the use of \AC\ to format multilingual documents in Latin or non-Latin alphabets. Font support encompasses the Arabic, Chinese, Greek, Hindi, Korean, Marathi, Russian, and Tamil languages, among others. For asian alphabets, \LLT\ and \FS\ are employed.  The system fonts that must be installed for \FS\ are listed, and examples of simple abstracts are shown in twenty-five languages.
 \end{abstract}
 
 %%%%%%%%%  BODY OF PAPER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -175,7 +188,7 @@
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{The babel package}
-The typesetting of languages is handled by the \texttt{babel} package~\cite{bezos2020}, which is called by the \AC\ class. For many languages, \texttt{babel} includes language definition files (\texttt{.ldf}) that provide information about section or caption titles, hyphenation rules, and so on.  When an \texttt{.ldf} exists, \texttt{babel} will recognize the language as a global option that can be passed as an option to \AC, assuming that an appropriate font is available. A list of the many languages with \texttt{.ldf} files is given in the \texttt{babel} documentation.
+The typesetting of languages is handled by the \texttt{babel} package~\cite{bezos2025}, which is called by the \AC\ class. For many languages, \texttt{babel} includes language definition files (\texttt{.ldf}) that provide information about section or caption titles, hyphenation rules, and so on.  When an \texttt{.ldf} exists, \texttt{babel} will recognize the language as a global option that can be passed as an option to \AC, assuming that an appropriate font is available. A list of the many languages with \texttt{.ldf} files is given in the \texttt{babel} documentation.
 
 For languages in Latin scripts, it's usually safe to assume that the font is present, and many such languages have \texttt{.ldf} files. For other scripts, additional steps are needed. The \AC\ class handles this differently under \PLT\ and \LLT. 
 
@@ -183,47 +196,46 @@
 \section{Non-Latin Scripts under PDFLATEX}
 When using \PLT, \AC will load appropriate fonts for Greek, Vietnamese, and certain cyrillic-script languages (see Table~\ref{tab:1}). The user can give the corresponding class option and then call for a change of language as described in Section~\ref{sec:6}. No additional work is required.  
 
-To access a broader range of fonts, \AC\ can be used under \LLT, with \FS. In that case, \AC\ will employ fonts that are installed in the user's operating system, rather than \LaTeX\ fonts.
+To access a broader range of fonts, \AC\ can be used under \LLT, with \FS. In that case, \AC\ will employ unicode fonts that are installed on the user's computer.
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\NOT{---}
 \begin{table}[t]
-\caption{Languages in non-Latin scripts for which \NoCaseChange{\AC} is known to provide font support. 
-Class options that must be called are shown.\label{tab:1}}%
+\caption{Languages in non-Latin scripts for which \NoCaseChange{\AC} provides font support. 
+Required class options are shown where needed. Several languages are available only with LUALATEX.\label{tab:1}}%
 \centering{%
-\begin{tabular*}{\columnwidth}{@{\hspace*{1.5em}}@{\extracolsep{\fill}}llcc@{\hspace*{1.5em}}}
+\begin{tabular}{@{\hspace*{1.5em}}l@{\hspace*{4em}}c@{\hspace*{2.5em}}c@{\hspace*{1.5em}}}
 \toprule
-\textbf{Language} & \textbf{Option} & \textbf{\hologo{pdfLaTeX}} & \textbf{\LLT}\\ \midrule
-Arabic		& bidi=basic	& 			 & \checkmark\\
-Belarusian	& belarusian 	& \checkmark & \checkmark\\
-Bengali		& \NOT			& 			 & \checkmark\\
-Bulgarian 	& bulgarian 	& \checkmark & \checkmark\\
-Chinese		& \NOT			& 			 & \checkmark\\
-Greek 		& greek 		& \checkmark & \checkmark\\
-Hindi		& \NOT			& 			 & \checkmark\\
-Japanese 	& japanese 		& 			 & \checkmark\\
-Korean		& \NOT			& 			 & \checkmark\\
-Macedonian 	& macedonian 	& \checkmark & \checkmark\\
-Marathi		& \NOT			& 			 & \checkmark\\
-Russian 	& russian 		& \checkmark & \checkmark\\
-Serbian		&serbianc$^\ast$& \checkmark & \checkmark\\
-Tamil		& \NOT			& 			 & \checkmark\\
-Ukrainian 	& ukrainian 	& \checkmark & \checkmark\\
-Vietnamese	& vietnamese	& \checkmark & \checkmark\\
+\textbf{Language} & \textbf{\hologo{pdfLaTeX}} & \textbf{\LLT}\\ \midrule
+Arabic		& \textit{n/a}	&  bidi=basic\\
+Belarusian	& belarusian 	& \\
+Bengali		& \textit{n/a}	& \\
+Bulgarian 	& bulgarian 	& \\
+Chinese		& \textit{n/a}	& \\
+Greek 		& greek 		& \\
+Hindi		& \textit{n/a}	& \\
+Japanese 	& \textit{n/a}	& japanese \\
+Korean		& \textit{n/a}	& \\
+Macedonian 	& macedonian 	& \\
+Marathi		& \textit{n/a}	& \\
+Russian 	& russian 		& \\
+Serbian		&serbianc$^\ast$& \\
+Tamil		& \textit{n/a}	& \\
+Ukrainian 	& ukrainian 	& \\
+Vietnamese	& vietnamese	& \\
 \bottomrule
-\multicolumn{4}{@{\hspace*{1.5em}}p{23em}@{\hspace*{1.5em}}}{\footnotesize$^\ast$\ Serbian option \texttt{[serbianc]}, for both engines, uses cyrillic. In \PLT, use \texttt{\textbackslash selectlanguage\{serbianc\}}. In \LLT, instead select ``\texttt{serbian-cyrillic}''.}
-\end{tabular*}
+\multicolumn{3}{@{}p{\columnwidth}}{\footnotesize$^\ast$\ Serbian option \texttt{[serbianc]}, for both engines, uses cyrillic. In \PLT, use \texttt{\textbackslash selectlanguage\{serbianc\}}. In \LLT, instead select ``\texttt{serbian-cyrillic}''.}
+\end{tabular}
 }
 \end{table}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{System fonts}
-The \FS\ package~\cite{robertson2020} allows \LLT\ to access fonts that are installed on the user's system.  Today, these fonts are normally in unicode, a 16-bit format that allows a font to contain a vast number of glyphs---up to $2^{16}$. Multiple languages can be contained within a single font. Specialized unicode fonts are dedicated to particular languages, especially those such as Japanese that have many thousands of characters.
+\section{Unicode fonts}
+The \FS\ package~\cite{robertson2023} allows \LLT\ to access fonts that are on the user's system.  Today, these fonts are normally in unicode, a 16-bit format that allows a font to contain a vast number of glyphs---up to $2^{16}$. Multiple languages can be contained within a single font. Specialized unicode fonts are dedicated to some languages that have many thousands of characters, such as Japanese or Chinese.
 
-When processed in \PLT, \AC\ uses the \texttt{newtxtext} and \texttt{inconsolata} fonts, a collection of eight-bit fonts, for Latin script. To use \FS, we must replace those fonts with corresponding unicode fonts (the math fonts, from \texttt{newtxmath}, are unchanged). Specialized fonts are needed for some additional scripts. Thus, the user will need to install several unicode fonts onto their own system in order to use \AC\ with \FS.
-Fortunately, all these fonts are all free and easily downloaded.
+When processed in \PLT, \AC\ uses the \texttt{newtxtext} and \texttt{inconsolata} fonts, a collection of eight-bit fonts, for Latin script. To use \FS, those are replaced by corresponding unicode fonts. Specialized fonts are needed for some additional scripts. Only some of these fonts are included in a standard \LaTeX\ distribution. Thus, the user may need to install several unicode fonts onto their own system in order to use \AC\ with \FS.
+Fortunately, such fonts are free and easily downloaded.
 
-The needed fonts are listed in Table~\ref{tab:2}. \textit{The Latin fonts are required for English when using \FS.}
+The needed fonts are listed in Table~\ref{tab:2}. The Latin fonts are required for English when using \FS; however, these are included in a standard \TeX\ Live installation.
 
 %%%%%%%%%%%%%%% two column table %%%%%%%%%%%%%%%%%% 
 \NewDocumentCommand\R{O{11pt}}{\rule{0pt}{#1}}
@@ -257,21 +269,24 @@
 \end{table*}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
 \section{Using fontspec with asmeconf}
-%When running \LLT, the \texttt{[fontspec]} option should be called, to load the appropriate fonts. 
-When running \LLT, \texttt{fontspec} is loaded by default (as of Feb.\ 2024).  
-With \FS, \texttt{babel} will use \texttt{.ldf} files (if available) and separate initialization files (\texttt{.ini}). If a language option is called for which there is no \texttt{.ldf} file, an error will result. However, such languages may still have an \texttt{.ini} that provides necessary information. For example, Chinese and Korean do not have \texttt{.ldf} files, but they do have \texttt{.ini} files. These languages can be accessed as described in Section~\ref{sec:6}.
 
-Japanese typesetting is a little more complicated. When \texttt{[japanese]} is given as an option to the class, \AC\ calls the \texttt{luatexja-fontspec} package~\cite{lua-jp}, which is a specialized module for typesetting Japanese. 
+When running \LLT, \texttt{fontspec} is loaded by default (as of Feb.\ 2024).   With \FS, \texttt{babel} will use \texttt{.ldf} files or separate initialization files (\texttt{.ini}) when they are available for a given language. These files provide language specific information, using include the appropriate names for abstract, figure, table, appendix, and so on.  These languages can be accessed as described in Section~\ref{sec:6}.
 
-When captions and the like are not needed (as for short passages), \texttt{babel} can load many languages ``on the fly'', with only a basic call in the \text{.tex} file (see Section \ref{sec:6}), if an appropriate font is available. 
+When captions and the like are not needed (as for short passages like the abstracts herein), \texttt{babel} can load many languages ``on the fly'', with only a basic call in the \text{.tex} file (see Section \ref{sec:6}), if an appropriate font is available, without even using a class option.  Adding the language name to as an option to \verb|\documentclass| ensures that an \texttt{.ldf} or \texttt{.ini} file will also be loaded. 
 
+
+Arabic typesetting is a little more complicated. The script runs right to left, and so arabic requires the \texttt{bidi} packages, which can be loaded as a class option.  Similarly, when \texttt{[japanese]} is given as an option to the class, \AC\ calls the \texttt{luatexja-fontspec} package~\cite{lua-jp}, which is a specialized module for typesetting Japanese. (\textit{The Japanese option has a conflict with Chinese-traditional text as of March 2025, but both still typeset.})
+
 What about support for scripts not shown in Table~\ref{tab:2}?  Macros from \texttt{babel} for adding fonts can be placed into the preamble of your document.  The \texttt{babel} package supports roughly 250 languages, and \AC\ has been tried with only about thirty. 
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
 \section{How to call a language\label{sec:6}}
+
 Call a language with \verb|\begin{selectlanguage}{<lang>}|, where \texttt{<lang>} is the lower-case name of the language.  
-For example, suppose that a Spanish language abstract is desired. The user puts \texttt{[spanish]} as a global option (this language has an \texttt{.ldf} file), and then writes:
+For example, suppose that a Spanish language abstract is desired. The user puts \texttt{[spanish]} as a class option (this language has an \texttt{.ldf} file), and then writes:
 \begin{quotation}
 \noindent\hbox{}\verb|\begin{selectlanguage}{spanish}|\\
 \verb|\begin{abstract*}|\\
@@ -280,8 +295,10 @@
 \verb|\end{selectlanguage}|
 \end{quotation}
 
-\textsc{\textbf{Nota Bene:}} \textbf{1)} Your \texttt{.tex} file \textit{must} be saved in \texttt{utf-8} encoding.  Some operating systems default to a different encoding that will garble unicode characters. \textbf{2)} The features used to provide language support under \FS\ require an up-to-date \LaTeX\ distribution (2020 or~later). \textbf{3)} The features described here require \AC\  version~1.22 or later (2021).
+As it happens, this short snippet does not even require the class option because the word for ``abstract'' is grabbed on the fly and the font is the same as for the main English text. On the other hand, a Greek abstract needs to have a font specified. The \AC\ class loads this font automatically under \LLT ; for \PLT, the font is loaded if the class option \texttt{[greek]} is used.
 
+\textsc{\textbf{Nota Bene:}} \textbf{1)} Your \texttt{.tex} file \textit{must} be saved in \texttt{utf-8} encoding.  Some operating systems default to a different encoding that will garble unicode characters. \textbf{2)} The features used to provide language support under \FS\ require an up-to-date \LaTeX\ distribution (2020 or~later). \textbf{3)} The documentation of \texttt{babel} provides detailed guidance on loading languages.
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{Abstracts}
 Examples of abstracts in various languages now follow. Reading the source \texttt{.tex} file for this document may clarify the syntax.
@@ -462,7 +479,7 @@
 \section{Changing the language of the entire document}
 The main language of the document is English  by default.  This means that section headings, captions, and other words chosen by macros will be in English. 
 
-To chose a different main language, give the option \texttt{[main=..]}, e.g., \texttt{[main=french]}. The standard caption and section names will follow \texttt{babel}'s dictionary for the language chosen.  Users may additionally change ``Keywords'', ``Nomenclature'',  ``Corresponding author'', and ``Joint first authors'' by renewing the commands \verb|\keywordname|, \verb|\nomname|, \verb|\CAwords|, and \verb|\JAwords|. Changes to the page footer are described in the \AC\ documentation~\cite{lienhard2021}. The pdf bookmark for ``Appendices'' may be changed by renewing \verb|\appendicesname|. (See the \texttt{babel} documentation \cite[\S 1.15]{bezos2020} if the dictionary for the main language lacks the correct word for, say, \verb|abstractname|).
+To chose a different main language, give the option \texttt{[main=..]}, e.g., \texttt{[main=french]}. The standard caption and section names will follow \texttt{babel}'s dictionary for the language chosen.  Users may additionally change ``Keywords'', ``Nomenclature'',  ``Corresponding author'', and ``Joint first authors'' by renewing the commands \verb|\keywordname|, \verb|\nomname|, \verb|\CAwords|, and \verb|\JAwords|. Changes to the page footer are described in the \AC\ documentation~\cite{lienhard2021}. The pdf bookmark for ``Appendices'' may be changed by renewing \verb|\appendicesname|. (See the \texttt{babel} documentation \cite[Ch.~3]{bezos2025} if the dictionary for the main language lacks the correct word for, say, \verb|abstractname|).
 
 I have not explored this usage in detail, and I would welcome comments from authors who attempt such conversions.
 

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-lualatex-ode-example.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-lualatex-ode-example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-lualatex-ode-example.tex	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-lualatex-ode-example.tex	2025-03-28 21:33:34 UTC (rev 74780)
@@ -11,7 +11,7 @@
 %%          Massachusetts Institute of Technology
 %%          Cambridge, MA 02139-4307 USA
 %%
-%%	Version 1.01, 6 February 2024
+%%	Version 1.03, 27 March 2025
 %%
  %=========================================================
 %% 
@@ -32,6 +32,7 @@
 
 \usepackage[figuresright]{rotating}% to use a landscape figure
 \usepackage{luacode}% for compatibility with older installations
+\usepackage{hologo}% access various latex logos if needed
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %% Now use lua code

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/asmeconf-template-widetext.tex	2025-03-28 21:33:34 UTC (rev 74780)
@@ -25,14 +25,15 @@
 
 \usepackage{lipsum}% Latin filler text
 \usepackage{asmewide}
+\usepackage{hologo}% access various latex logos if needed
 
 \begin{filecontents}{asme-wide-equations.bib}
- at online{lienhard2021,
+ at online{lienhard2025,
   author = {Lienhard, John H., V},
   title = {{\texttt{asmeconf}}: A template for {ASME} conference papers},
   organization = {Comprehensive \TeX\ Archive Network},
   version = {{\versionno}},
-  year = {2021},
+  year = {2025},
   url = {https://ctan.org/pkg/asmeconf},
   urldate = {{\today}},
 }      
@@ -97,7 +98,7 @@
 \keywords{ASME conference paper, \LaTeX\ template, wide equations, asmeconf}
     
 \begin{abstract}
-This paper gives several examples of typesetting very wide equations with {\upshape\LaTeX} in the {\upshape\texttt{asmeconf}} class~{\upshape\cite{lienhard2021}} using {\upshape\texttt{asmewide.sty}}.
+This paper gives several examples of typesetting very wide equations with {\upshape\LaTeX} in the {\upshape\texttt{asmeconf}} class~{\upshape\cite{lienhard2025}} using {\upshape\texttt{asmewide.sty}}.
 The style defines a the {\upshape\texttt{widetext}} environment, built on the 2021 release of {\upshape\texttt{cuted.sty}~\cite{tolucsis1}} from the
 {\upshape\texttt{sttools}} bundle~{\upshape\cite{tolucsis2}}, which is available from CTAN, \hrefurl{http://ctan.org}{ctan.org}.  
 Significant hand-fitting around pagebreaks, floats, and footnotes is required to obtain good results. Users can change the source file to explore the behavior and limitations of the {\upshape\texttt{widetext}} environment. \textcolor{red}{Only the text in \textbf{red} in this document meant 

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/tesseral-harmonic.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/examples/asmeconf-wide-equation-example/zonal-harmonic2.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/sample-figure-2a.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/asmeconf/sample-figure-2b.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls	2025-03-28 21:33:19 UTC (rev 74779)
+++ trunk/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls	2025-03-28 21:33:34 UTC (rev 74780)
@@ -5,8 +5,8 @@
 %%  ASME conference requirements as represented on ASME's conference web pages in 2025.
 %%
 %%  This file's version and date:
-	\def\versionno{1.40}
-	\def\versiondate{2025/01/29\space}
+	\def\versionno{1.41}
+	\def\versiondate{2025/03/27\space}
 %%
 %%  Author: John H. Lienhard, V
 %%          Department of Mechanical Engineering
@@ -16,7 +16,7 @@
 %%  This LaTeX template was designed to approach the following aims:
 %%
 %%          1. Match ASME's current layout and font specifications
-%%          2. With amseconf.bst, match ASME's reference formats including DOI & URL (replaces asmems4.bst)
+%%          2. With asmeconf.bst, match ASME's reference formats including DOI & URL (replaces asmems4.bst)
 %%          3. Provide hyperref compatibility for hyperlinks, pdf bookmarks, and metadata
 %%          4. Set author names in either the traditional grid or the more recent inline style
 %%          5. Support citations, footnotes, and bold face, sans serif math in section headings
@@ -24,15 +24,15 @@
 %%			7. Support balancing length of columns on last page
 %%			8. Provide copyright footer for federal employees and contractors
 %%			9. Support archival PDF/A standards
-%%		   10. Enable various math and text features from the newtxmath and newtxtext packages
+%%		   10. Enable various math features from the newtx or unicode-math/fontspec packages
 %%		   11. Support inclusion of passages in languages other than English
 %%
-%%  This class is compatible with either pdfLaTeX or LuaLaTeX. Fontspec will load automatically with LuaLaTeX,
-%%  but the class does not support unicode-math. To use LuaLaTeX without fontspec, call the [nofontspec] option.
+%%  This class is compatible with either pdfLaTeX or LuaLaTeX. Fontspec and unicode-math will load automatically 
+%%  with LuaLaTeX. To use LuaLaTeX without fontspec and unicode-math, call the [nofontspec] option.
 %%
 %%	Use an up-to-date LaTeX distribution: for pdfLaTeX, TeX Live 2020 or later; for LuaLaTeX, TeX Live 2021 or later.
-%%  A complete LaTeX installation is also recommended: asmeconf loads ~30 packages, in addition to LaTeX core packages.
-%%	All packages required by the class are in TeXLive and CTAN (https://ctan.org/). 
+%%  A complete LaTeX installation is also recommended: asmeconf loads ~25 packages in addition to the LaTeX format.
+%%	All packages required by the class are in TeX Live and CTAN (https://ctan.org/). 
 %%
 %%  Commands for entering conference headers and author names are specific to this class.
 %%  See asmeconf-template.tex for details.
@@ -56,9 +56,9 @@
 %% substantial portions of the Software.
 %%
 %% The software is provided "as is", without warranty of any kind, express or implied, including but 
-%% not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. 
-%% In no event shall the authors or copyright holders be liable for any claim, damages or other liability, 
-%% whether in an action of contract, tort or otherwise, arising from, out of or in connection with the 
+%% not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement. 
+%% In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, 
+%% whether in an action of contract, tort or otherwise, arising from, out of, or in connection with the 
 %% software or the use or other dealings in the software.
 %%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -69,14 +69,16 @@
 \LoadClass[twoside,10pt]{article}% twocolumn is initiated in \MakeTitle
 % Even/odd page layout is not used in ASME's specs, although the papers are printed in two-sided format.
 
-\RequirePackage{iftex}[2019/11/07]% provides \ifpdftex (many) & \ifluatex (once)
-\RequirePackage{ifthen}% ifthenelse (many) & \whiledo (once)
-\RequirePackage{etoolbox}% using patchcmd in 4 or 5 places
+\RequirePackage{etoolbox}% using \patchcmd in several places and \pretocmd in appendix code
 
+\newif\ifac at pdftex
 \ExplSyntaxOn
-  \str_const:Nn \ClassName {asmeconf}
+	\str_const:Nn \ClassName {asmeconf}
+	\sys_if_engine_pdftex:T { \ac at pdftextrue }
+	\prop_put:Nnn \g_msg_module_type_prop { \ClassName } { Class }
 \ExplSyntaxOff
 
+
 %%%%%%%%%%%%%  Compatibility codes for older distributions  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 % these will be dropped as time goes by ... 
@@ -83,34 +85,24 @@
 
 \providecommand\IfFormatAtLeastTF{\@ifl at t@r\fmtversion}%  compare version to date; \If... added to latex 2020/10/01
 \providecommand\IfPackageAtLeastTF{\@ifpackagelater}%     compare version to date; \If... added to latex 2020/10/01
-\providecommand\IfPDFManagementActiveTF{\@secondoftwo}%   \If... added to latex 2021/07/23
 \providecommand\IfPackageLoadedTF{\@ifpackageloaded}%     \If...added to latex 2021/11/15
 \providecommand\ClassNoteNoLine[2]{\typeout{^^JClass Note #1: #2.^^J}}%  log & terminal note... added to latex 2021/11/15
 
-\IfFormatAtLeastTF{2020/10/01}{\relax}{%
-	\ClassError{\ClassName}{Your LaTeX format is dated \fmtversion.  Formats dated 2020/10/01 or later are recommended for the asmejour class. Older formats and packages may generate errors or fail entirely!}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/.  You can try to click past the errors for now.}%
+\IfFormatAtLeastTF{2021/06/01}{\relax}{%
+	\ClassError{\ClassName}{Your LaTeX format is dated \fmtversion.  Formats dated 2021-06-01 or later are strongly recommended for the asmeconf class. Older formats and packages may generate errors or fail entirely!!}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/.  You can try to click past the errors for now...}%
 }
 
-% check whether pdfmanagement (\DocumentMetadata) has been loaded (else fall back to hyperxmp and bookmark packages after loading hyperref)
-\newif\ifasme at pdfmanagement
-\IfPDFManagementActiveTF{
-	\asme at pdfmanagementtrue 
-}{
-	\asme at pdfmanagementfalse
-	\ClassWarningNoLine{\ClassName}{pdfmanagement is not active. Will load hyperxmp and bookmark packages instead}
-}
-
 % If latex release is pre 2022/06, need to load textcase package
 \ifx\AddToNoCaseChangeList\@undefined % updated 2022/07/03, see https://github.com/John02139/asmeconf/issues/5 
 	\RequirePackage{textcase} %% Allows uppercase titles and captions without errors from math and citations
-	\typeout{Asmeconf is loading textcase package.}
+	\typeout{asmeconf is loading textcase package.}
 \else
-	\NewCommandCopy{\MakeTextUppercase}{\MakeUppercase}% keep using \MakeTextUppercase for backward compatibility
+	\let\MakeTextUppercase\MakeUppercase% keep using \MakeTextUppercase for backward compatibility
 \fi
 
 % Allow pre 2021/11/15 formats to see the graphicx alt key without causing an error
 \IfFormatAtLeastTF{2021/11/15}{
-	\relax
+	\relax % keep this T option for backward compatibility
 }{ 
 	\AtBeginDocument{
 		\IfPackageLoadedTF{graphicx}{\define at key{Gin}{alt}{}}{\relax}
@@ -119,71 +111,18 @@
 
 % Enable pre-2020/10 formats to access essential macros later moved into LaTeX kernel
 \ifdefined\NewDocumentCommand\else
-  \RequirePackage{xparse}% enable older installations to access features in LaTeX kernel since 2020/10/01; but need at least 2018/04...
+  \RequirePackage{xparse}% need at least 2018/04, but other things also break at that age.
 \fi
 
-% Provide pre-2020/10 installations with basic unicode character mappings 
-\IfFormatAtLeastTF{2020/10/01}{\relax}{%
-\ifpdftex
-	\pdfgentounicode=1  			    %% enable CMaps; was moved into the latex kernel Oct 2020
-	\input glyphtounicode.tex 		    %% lists of mappings; was moved into the latex kernel Oct 2020
-\fi
-}
+% fnpos is loaded if footmisc package is older than 2022/02/05 
+% kvoptions is loaded if latex is older than 2022/11/01
 
-\IfPackageAtLeastTF{iftex}{2019/11/07}{\relax}{%
-    \ClassError{\ClassName}{Package iftex is too old. Go to \string https://ctan.org and download an up-to-date version.}{%
-    Your latex installation does not have an up-to-date version of the package iftex. You can get it at CTAN: \string https://ctan.org.}
-}
 
-\IfFormatAtLeastTF{2018/04/01}{\relax}{\RequirePackage[utf8]{inputenc}} 
+%%%%%%%%%%%%%  Options for the class  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-% another legacy package, fnpos, is loaded if footmisc package is older than 2022/02/05 (near line 1070)
+%%% Some helper code first
 
-%%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\RequirePackage{kvoptions}
-\SetupKeyvalOptions{
-   family=\ClassName,
-   prefix=asmeconf@,
-   setkeys=\kvsetkeys,
-}
-
-%%% set key [colorlinks] to have colored hyperlinks, rather than black links (use a key with new pdfmanagement, 2021/12/01)
-\define at key{\ClassName}{colorlinks}[colorlinks]{%
-   \PassOptionsToPackage{#1}{hyperref}%
-}
-
-%% Option for caption text not to use boldface type [unboldcaption]
-\DeclareBoolOption{unboldcaption}
-
-%% Option to obtain line numbers [lineno] 
-\DeclareBoolOption{lineno}
-
-%% Option to balance column height on last page [balance] 
-\DeclareBoolOption{balance}
-
-%% Option to convert inline author data to a grid of authors
-\DeclareBoolOption{grid}
-
-%% Option for copyright notice if all authors are government employees [govt]
-\DeclareBoolOption{nofoot}
-
-%% Option for copyright notice if all authors are government employees [govt]
-\DeclareBoolOption{govt}
-
-%% Option for copyright notice if some (not all) authors are government employees [govtsome]
-\DeclareBoolOption{govtsome}
-
-%% Option for government contractor copyright notice [contractor]
-\DeclareBoolOption{contractor}
-
-%% Option NOT to use fontspec package under luaLaTeX [nofontspec]
-\DeclareBoolOption{nofontspec}
-
-%% Option to patch caption package for tagged pdf [captionpatch].  Experimental, 2025/01/26
-\DeclareBoolOption{captionpatch}
-
-%%% Use these switches to load other alphabets for Cyrillic, Greek, Japanese, and Vietnamese text
+%% Related to loading other alphabets for Cyrillic, Greek, Japanese, and Vietnamese text
 \newif\ifac at cyrillic\ac at cyrillicfalse
 \newif\ifac at greek\ac at greekfalse
 \newif\ifac at japanese\ac at japanesefalse
@@ -194,87 +133,189 @@
 \providecommand\ac at LGR{}
 \providecommand\ac at Tfive{}
 
-%%% Test whether main language is from a group that use the Cyrillic alphabet
-\NewDocumentCommand\@FindCyr{>{\SplitList{;}}m}{\ProcessList{#1}{\@FlagCyr}}
-\providecommand{\ac at main}{\relax}
-\NewDocumentCommand\@FlagCyr{m}{%
-	\ifthenelse{\equal{#1}{\ac at main}}{\ac at cyrillictrue\def\ac at TtwoA{T2A}}{\relax}% comparing strings
+\ExplSyntaxOn
+\str_new:N \g__asmeconf_main_str
+\str_gset:Nn \g__asmeconf_main_str {english}
+
+\msg_new:nnnn { \ClassName } { nogreekmain } { To~set~Greek~as~the~main~language,~you~should~use~luaLaTeX~not~pdfTeX.~You~will~need~the~NotoSerif~and~NotoSans~fonts.}{Under~pdfTeX,~asmeconf~is~not~compatible~with~Greek~as~the~main~font,~as~you~will~see.}
+\msg_new:nnn { \ClassName } { mainlang } { Selecting~#1~as~the~primary~language }
+
+%% Test whether main language is from a group that use the Cyrillic alphabet
+\cs_new:Nn \__asmeconf_findcyr:n 
+	{
+		  \seq_set_split:Nnn \l_tmpa_seq { ; } { #1 }
+		  \seq_map_function:NN \l_tmpa_seq \__asmeconf_flagcyr:n 
+	}
+\cs_new:Nn \__asmeconf_flagcyr:n 
+	{ 
+		\str_if_eq:VnT \g__asmeconf_main_str {#1} { 
+			\gdef\ac at TtwoA{T2A}
+			\ac at cyrillictrue
+		}
+	}
+%% Set main language	 
+\cs_new:Nn \__asmeconf_setupmain:n {% revised 2025/03/24
+	\str_gset:Nn \g__asmeconf_main_str {#1}%
+	\PassOptionsToPackage{ \g__asmeconf_main_str }{babel}
+	\ac at mainsettrue 
+	\str_if_eq:nnF {english} {#1} 
+	{
+		\str_if_eq:nnTF {vietnamese} {#1} {
+			\PassOptionsToPackage{vietnamese.noencoding}{babel}% suppress unneeded warning about encoding
+			%\RequirePackage[vietnamese=nohyphenation]{hyphsubst}% eliminates a warning, but not needed with recent versions of babel
+			\ac at vietnamesetrue
+			\gdef\ac at Tfive{T5}
+		}{
+    		\str_if_eq:nnTF {greek} {#1} {
+    			\ifac at pdftex
+    				\msg_error:nn { \ClassName } { nogreekmain }
+    			\else
+    				\ac at greektrue
+    				\gdef\ac at TLGR{LGR}
+    			\fi
+    		}{
+				\__asmeconf_findcyr:n{russian;belarusian;bulgarian;macedonian;serbianc;ukrainian}
+			}
+		}		
+	}
+	\msg_note:nnn { \ClassName } { mainlang } {#1}
 }
 
-\define at key{\ClassName}{main}{% remove default 2024/07/26, to avoid conflict with subsequent logic
-	  \PassOptionsToPackage{main=#1,#1}{babel}% added #1 resolves conflict of russianb.ldf & ukrainianb.ldf under "main=".
-	  \ac at mainsettrue
-	  \ifthenelse{\equal{#1}{english}}{%
-			\ClassNoteNoLine{\ClassName}{Selecting #1 as the primary language}%
-			\ifthenelse{\equal{#1}{greek}}{%
-				\ac at greektrue
-				\def\ac at LGR{LGR}%
-			}{\relax}%
-			\ifthenelse{\equal{#1}{vietnamese}}{%
-				\ac at vietnamesetrue
-				\def\ac at Tfive{T5}%
-				\RequirePackage[vietnamese=nohyphenation]{hyphsubst}% Eliminates babel warning
-			}{\relax}%				
-			\def\ac at main{#1}%
-			\@FindCyr{russian;belarusian;bulgarian;macedonian;serbianc;ukrainian}
-	  }%
+%%% Now create options and keys
+\IfFormatAtLeastTF{2022/11/01}{
+    \DeclareKeys[\ClassName]
+    {
+		unboldcaption 	.if 	= asmeconf at unboldcaption ,% Option for caption text not to use boldface type [unboldcaption]
+		unboldcaption 	.usage	= load,
+		lineno 			.if	 	= asmeconf at lineno ,% Option to obtain line numbers [lineno] 
+		lineno 			.usage	= load ,
+		balance 		.if	 	= asmeconf at balance ,% Option to balance column height on last page [balance]
+		balance 		.usage	= load ,
+		grid 			.if	 	= asmeconf at grid ,% Option to convert inline author data to a grid of authors [grid]
+		grid 			.usage	= load ,
+		nofoot 			.if	 	= asmeconf at nofoot ,% Option to omit the footer [nofoot]
+		nofoot 			.usage	= load ,
+		nohead 			.if	 	= asmeconf at nohead ,% Option to omit the conference headers [nohead]
+		nohead 			.usage	= load ,
+		govt 			.if	 	= asmeconf at govt ,% Option for copyright notice if all authors are government employees [govt]
+		govt 			.usage	= load ,
+		govtsome 		.if		= asmeconf at govtsome ,% Option for copyright notice if some (not all) authors are government employees [govtsome]
+		govtsome 		.usage	= load ,
+		contractor 		.if		= asmeconf at contractor ,% Option for government contractor copyright notice [contractor]
+		contractor 		.usage	= load ,
+		nofontspec 		.if		= asmeconf at nofontspec ,% Option NOT to use fontspec package under luaLaTeX [nofontspec]
+		nofontspec 		.usage	= load ,
+		captionpatch 	.if		= asmeconf at captionpatch ,% Option to patch caption package for tagged pdf [captionpatch].  Experimental, 2025/01/26
+		captionpatch 	.usage 	= load ,
+		colorlinks		.code	= \PassOptionsToPackage{colorlinks}{hyperref} ,% Option to have colored hyperlinks, rather than black links [colorlinks]
+		colorlinks		.usage	= load ,
+		main 			.store	= \g__asmeconf_main_str ,% set main language (for babel)
+		main 			.usage	= preamble , 
+		main			.code	= \__asmeconf_setupmain:n { #1 },
+    } 
+	\DeclareUnknownKeyHandler[\ClassName]{\relax}% suppress warning about unused keys
+	\ProcessKeyOptions
+}{% And more compatibility code for distributions pre-2022/11     
+    \RequirePackage{kvoptions}
+    \SetupKeyvalOptions{
+       family=\ClassName,
+       prefix=asmeconf@,
+       setkeys=\kvsetkeys,
+    }
+    
+    %%% set key [colorlinks] to have colored hyperlinks, rather than black links (use a key with new pdfmanagement, 2021/12/01)
+    \define at key{\ClassName}{colorlinks}[colorlinks]{%
+       \PassOptionsToPackage{#1}{hyperref}%
+    }
+    %% Option for caption text not to use boldface type [unboldcaption]
+    \DeclareBoolOption{unboldcaption}
+    %% Option to obtain line numbers [lineno] 
+    \DeclareBoolOption{lineno}
+    %% Option to balance column height on last page [balance] 
+    \DeclareBoolOption{balance}
+    %% Option to convert inline author data to a grid of authors [grid]
+    \DeclareBoolOption{grid}%
+    %% Option to omit the footer [nofoot]
+    \DeclareBoolOption{nofoot}
+    %% Option to omit the conference headers [nohead]
+    \DeclareBoolOption{nohead}
+    %% Option for copyright notice if all authors are government employees [govt]
+    \DeclareBoolOption{govt}
+    %% Option for copyright notice if some (not all) authors are government employees [govtsome]
+    \DeclareBoolOption{govtsome}
+    %% Option for government contractor copyright notice [contractor]
+    \DeclareBoolOption{contractor}
+    %% Option NOT to use fontspec package under luaLaTeX [nofontspec]
+    \DeclareBoolOption{nofontspec} 
+    %% Option to patch caption package for tagged pdf [captionpatch].  Experimental, 2025/01/26
+    \DeclareBoolOption{captionpatch}
+    %% Key to set main language
+    \define at key{\ClassName}{main}{% remove default 2024/07/26, to avoid conflict with subsequent logic
+    	  \PassOptionsToPackage{main=#1,#1}{babel}% Adding #1 resolves conflict of russianb.ldf & ukrainianb.ldf under "main=". 
+    	  										  % If only reality were this simple...
+    	  \ac at mainsettrue
+    	  \__asmeconf_setupmain:n { #1 }
+    }
+    
+    \DeclareDefaultOption{}% suppress warnings about unused options
+    \ProcessKeyvalOptions{\ClassName}
+    
+    
+    %% Turn off these keys now that we're done with them
+    \def\ac at KeyFamily{\ClassName}
+    \cs_new:Nn \__asmeconf_disablekeys:n 
+    	{
+    		  \seq_set_split:Nnn \l_tmpa_seq { ; } { #1 }
+    		  \seq_map_function:NN \l_tmpa_seq \__asmeconf_disableoptions:n 
+    	}
+    \cs_new:Nn \__asmeconf_disableoptions:n 
+    	{ 
+          \DisableKeyvalOption[%
+    		action=ignore,%
+    		class=\ClassName%
+          	]{#1}{\ac at KeyFamily}%
+    	} 
+    \__asmeconf_disablekeys:n {colorlinks;unboldcaption;lineno;balance;grid;nofoot;nohead;govt;govtsome;contractor;nofontspec;captionpatch;main}
 }
-\define at key{\ClassName}{vietnamese}[]{%
-	\RequirePackage[vietnamese=nohyphenation]{hyphsubst}% using key, not option, to allow loading package w/o babel warning.
-	\PassOptionsToPackage{vietnamese.noencoding}{babel}% modified.noencoding suppresses unnecessary warning about inputenc
-	\ac at vietnamesetrue
-	\def\ac at Tfive{T5}%
-}
 
-\DeclareDefaultOption{}% suppress warnings about unused options
-\ProcessKeyvalOptions{\ClassName}
-
 %% if main language was not chosen explicitly, ensure default to English
-\ifac at mainset\relax\else
+\ifac at mainset\else
 	\PassOptionsToPackage{main=english}{babel}%
-	\ClassInfo{\ClassName}{Selecting English as the primary language, since main= not set}%
+	\ClassInfo{\ClassName}{Selecting~English~as~the~primary~language,~since~main=~not~set}%
 \fi
 
-%% Turn off these keys now that we're done with them
-\def\@KeyFamily{\ClassName}
-\NewDocumentCommand\ac at DisableOption{m}{%
-  \DisableKeyvalOption[%
-     action=ignore,%
-     class=\ClassName%
-  ]{#1}{\@KeyFamily}%
+\ExplSyntaxOff
+
+%% The expl3 code required for [grid] was not def'd until the June 2021 release
+\IfFormatAtLeastTF{2021/06/01}{\relax}{%
+	\ifasmeconf at grid
+	\ClassWarning{\ClassName}{Your LaTeX format is dated \fmtversion.  Formats dated 2021-06-01 or later are required for the [grid] option. It will be ignored.}
+	\fi
+	\asmeconf at gridfalse 
 }
-\NewDocumentCommand\@DisableKeys{>{\SplitList{;}}m}{\ProcessList{#1}{\ac at DisableOption}}
 
-\@DisableKeys{colorlinks;unboldcaption;lineno;balance;grid;nofoot;govt;govtsome;contractor;nofontspec;captionpatch;main;vietnamese}
-
-
 %%%%%%%%%  Various font-related options  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\SetupKeyvalOptions{
-   family=acfonts,
-   prefix=acfonts@,
-   setkeys=\kvsetkeys,
+%%% As of v1.41, mathalpha should be loaded by the user in preamble of .tex file; the [mathalfa] option is disabled. 
+\DeclareOption{mathalfa}{%
+	\ClassWarning{\ClassName}{As of v1.41, the mathalfa option has been dropped.  Load mathalpha in your preamble (see documentation)}%	
 }
 
-%%% for mathalfa, we may now pass options in this format:  mathalfa=cal=euler, mathalfa=frak=boondox
-\define at key{acfonts}{mathalfa}{%
-  \PassOptionsToPackage{#1}{mathalfa}%
-}
+%% dropped class option [largesc] and made it the default (pdftex only). 2025/03/16
+\ifac at pdftex
+	\PassOptionsToPackage{largesc=true}{newtxtext}% largesc is a boolean key in newtxtext
+\fi
 
-%% option for slightly larger small capitals font, via newtxtext
-\DeclareOption{largesc}{%
-	\ifpdftex
-		\PassOptionsToPackage{largesc=true}{newtxtext}% largesc is a boolean key in newtxtext
+%% option for upright integral signs, rather than default slanted integrals, [upint]
+\def\UpInt{}% default slanted integrals in STIX Two Math font with unicode-math
+\DeclareOption{upint}{%
+	\ifac at fontspec
+		\def\UpInt{+ss08}% upright integrals in STIX Two Math font and Lete Sans Math fonts
 	\else
-		\ClassWarningNoLine{\ClassName}{largesc option is not available under luaLateX. It will be ignored}%
+		\PassOptionsToPackage{upint}{newtxmath}% this option exists in newtxmath
 	\fi
 }
 
-%% Disable newtxtext osf option, which is not appropriate for documents in this class
-\DeclareOption{osf}{%
-	\PassOptionsToPackage{lining}{newtxtext}%
-}
-
 %% option to hyphenate the inconsolata typewriter font [hyphenate] and to issue a warning when that's done.
 \DeclareOption{hyphenate}{%
 	\ifac at fontspec
@@ -284,11 +325,11 @@
 		\ClassNoteNoLine{\ClassName}{Allowing hyphenation of typewriter font}%
 	\fi
 }
-%% option for monospacing in inconsolata typewriter font [mono].
+%% option for monospacing in inconsolata typewriter font [mono]. (Does not work with Inconsolata-Bold)
 \def\MonoNotMono{WordSpace={1,1,1}}% rescaled tt font to match pdf, 2024/07/28
 \DeclareOption{mono}{%
 	\ifac at fontspec
-		\def\MonoNotMono{WordSpace={1,0,0},PunctuationSpace={3}}% NB: these are the default WordSpace values. 20204/07/30
+		\def\MonoNotMono{WordSpace={1,0,0},PunctuationSpace={3}}% NB: these are the default WordSpace values
 	\else
 		\PassOptionsToPackage{mono}{inconsolata}% mono is a key via xkeyval in inconsolata
 	\fi
@@ -303,119 +344,31 @@
 	\fi
 }
 
-\ProcessKeyvalOptions{acfonts}%
-\def\@KeyFamily{acfonts}
-\@DisableKeys{mathalfa;largesc;osf;hyphenate;mono;var0}
 
-
-%%%%%%%   PDF/A Compliance Options  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-%% new pdf management in LaTeX, with \DocumentMetaData{..}, is preferred to this approach.
-
-\newif\ifac at setpdfa\ac at setpdfafalse
-\newif\ifac at pdfaone\ac at pdfaonefalse
-
-\ifasme at pdfmanagement\else
-    
-    \SetupKeyvalOptions{
-       family=pdfaopt,
-       prefix=pdafopt@,
-       setkeys=\kvsetkeys,
-    }
-    \ifpdftex %% PDF/A compliance has only been configured for pdflatex
-    %
-    	%%% set key [pdfa] to activate pdf/a compliance (default is pdf/A-3u)
-    	\define at key{pdfaopt}{pdf-a}[true]{%
-    	  \IfFormatAtLeastTF{2018/12/01}{\relax}{%
-    	  	 \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion.  Formats dated 2018/12/01 or later are necessary for the [pdf-a] option. Older formats may generate errors}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/.  Meanwhile, you can remove the [pdf-a] option and try again}%
-    	  }
-          \ac at setpdfatrue
-          \PassOptionsToPackage{pdfa}{hyperref}
-          \AtBeginDocument{\hypersetup{pdfapart=3,pdfaconformance=u}}% note: hyperref takes these options if hyperxmp is loaded
-    	}
-    	%%% to select part 1, 2 or 3 
-    	\define at key{pdfaopt}{pdfapart}[3]{%
-    	   \def\asmeconf at tempa{#1}
-           \AtBeginDocument{\hypersetup{pdfapart=\asmeconf at tempa}}
-    	   \ifthenelse{\equal{#1}{1}}{\ac at pdfaonetrue}{\relax}%
-    	}
-    	%%% to select conformance b or u.  NB: a is not possible with pdfLaTeX, and u is not possible with 1.
-    	\ExplSyntaxOn
-    	\define at key{pdfaopt}{pdfaconformance}[u]{%
-    	   \str_set:Ne \l_tmp_str { \str_uppercase:n {#1} }
-    %	   \typeout{\l_tmp_str}
-           \AtBeginDocument{\hypersetup{pdfaconformance=\l_tmp_str}}
-    	}
-    	\ExplSyntaxOff
-    \else
-    	\define at key{pdfaopt}{pdf-a}[true]{%
-           \ac at setpdfatrue
-        }
-    \fi
-    
-    \ProcessKeyvalOptions{pdfaopt}%
-    
-    %% Done with these keys, so we can now disable them
-    \def\@KeyFamily{pdfaopt}
-    \@DisableKeys{pdf-a;pdfapart;pdfaconformance}
-\fi
-
-
-%%%%%%%%%%%%  PDF/A compliance related  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\ifasme at pdfmanagement\else
-    \ifpdftex 
-    	\ifac at pdfaone
-    		\pdfminorversion=4 % for pdf/a-1 need version 4, not 7
-    	\else
-      		\pdfminorversion=7 % this selection is not essential.
-    	\fi
-    \else
-    	\ifluatex
-    		\ifac at setpdfa\ClassWarningNoLine{\ClassName}{pdf-a option requires pdfLaTeX engine. Under LuaLaTeX, use %
-    			\protect\DocumentMetadata{pdfstandard=A-3b} before \protect\documentclass[..]{asmeconf}}%
-    		\fi
-        	\directlua{
-                if pdf.getminorversion() \string~= 7 then
-                  if (status.pdf_gone and status.pdf_gone > 0)
-                  or (status.pdf_ptr and status.pdf_ptr > 0) then
-                    tex.error("PDF version cannot be changed anymore")
-                  else
-                    pdf.setminorversion(7)
-                  end
-                end
-            }
-    	\else 
-      		\ClassError{\ClassName}{Please use either pdfLaTeX or LuaLaTeX}{This class has NOT been configured to support other engines, and the results will be unpredictable. Exit and rerun using either pdfLaTeX or LuaLaTeX.}%
-    	\fi
-    \fi
-\fi
-
-
 %%%%%%%%%%%%%   More Language options  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-%%% option to use fontspec [fontspec] (for complex language-specific fonts)
+%%% option not to use fontspec under lualatex [nofontspec]
 \newif\ifac at fontspec\ac at fontspecfalse
 \newif\iffontspecloaded\fontspecloadedfalse% so user can test in .tex file
 
-\ifpdftex
+\ifac at pdftex
 	\ifasmeconf at nofontspec
 		\ClassWarningNoLine{\ClassName}{The [nofontspec] option requires LuaLaTeX. It will be ignored under pdfLaTeX}%
 	\fi
 \else
 	\ifasmeconf at nofontspec
-		\ClassWarningNoLine{\ClassName}{The [nofontspec] option has been issued. LuaLaTeX will run without font support}%
+		\ClassWarningNoLine{\ClassName}{The [nofontspec] option has been issued. LuaLaTeX will run without fontspec and unicode-math}%
 	\else
     	\IfFormatAtLeastTF{2020/10/01}{%
     		\ac at fontspectrue
     		\fontspecloadedtrue
     	}{%
-    	\ClassError{\ClassName}{Your LaTeX format is dated \fmtversion.  LaTeX installations dated 2020/10/01 or later are needed to run LuaLaTeX with the fontspec package. Fontspec will NOT be loaded. Language support will be minimal}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/.  You may alternatively choose the [nofontspec] option.}%
+    	\ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX installations dated 2020-10-01 or later are needed to run LuaLaTeX with the fontspec package. Fontspec will NOT be loaded. Language support will be minimal}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. You may alternatively choose the [nofontspec] option.}%
     	}
 	\fi
 \fi
 
-\DeclareOption{japanese}{% mainly to control loading of fontspec options
+\DeclareOption{japanese}{% to control loading of fontspec options and luatxja-fontspec
 	\ifac at fontspec	
 		\PassOptionsToPackage{japanese}{babel}%
 		\ac at japanesetrue
@@ -427,39 +380,55 @@
 \DeclareOption{greek}{%
 	\PassOptionsToPackage{greek}{babel}%
 	\ac at greektrue
-	\def\ac at LGR{LGR}%
+	\gdef\ac at LGR{LGR}
 }
 
+\DeclareOption{vietnamese}{%
+	\PassOptionsToPackage{vietnamese,vietnamese.noencoding}{babel}% noencoding suppresses unnecessary warning about inputenc
+	%\RequirePackage[vietnamese=nohyphenation]{hyphsubst} % Eliminates babel warning; not needed with recent versions of babel
+	\ac at vietnamesetrue
+	\gdef\ac at Tfive{T5}
+}
+
+\ExplSyntaxOn
+
 %% Cyrillic languages
-\NewDocumentCommand\@CyrOptions{>{\SplitList{;}}m}{\ProcessList{#1}{\@CyrOptSet}}
-\NewDocumentCommand\@CyrOptSet{m}{%
+\cs_new:Nn \__asmeconf_cyroptions:n 
+	{
+		  \seq_set_split:Nnn \l_tmpa_seq { ; } { #1 }
+		  \seq_map_function:NN \l_tmpa_seq \__asmeconf_cyroptset:n 
+	}
+\cs_new:Nn \__asmeconf_cyroptset:n 
+	{ 
 	\DeclareOption{#1}{%
 		\PassOptionsToPackage{#1}{babel}%
+		\gdef\ac at TtwoA{T2A}
 		\ac at cyrillictrue
-		\def\ac at TtwoA{T2A}%
+		}
 	}
-}
-\@CyrOptions{russian;belarusian;bulgarian;macedonian;serbianc;ukrainian}
+\__asmeconf_cyroptions:n {russian;belarusian;bulgarian;macedonian;serbianc;ukrainian}
 
+\ExplSyntaxOff
+
 % Several languages do not have .ldf files to load. Babel will call these on demand.
 %
 \DeclareOption{arabic}{\ClassError{\ClassName}{Do not specify "arabic" as a class option}{Instead, give the option [bidi=basic] and specify "arabic" when you call the language within your document.}}
 %
-\DeclareOption{bengali}{\ClassError{\ClassName}{Do not specify "bengali" as a class option}{Babel does not have an ldf file for Bengali. Instead, specify "bengali" when you call the language within your document. No class option is needed.}}
+\DeclareOption{bengali}{\ClassError{\ClassName}{Do not specify "bengali" as a class option}{Instead, specify "bengali" when you call the language within your document. No class option is needed.}}
 %
-\DeclareOption{chinese-simplified}{\ClassError{\ClassName}{Do not specify "chinese-simplified" as class option}{Babel does not have an ldf file for simplified Chinese. Instead, specify "chinese-simplified" when you call the language within your document. No class option is needed.}}
+\DeclareOption{chinese-simplified}{\ClassError{\ClassName}{Do not specify "chinese-simplified" as class option}{Instead, specify "chinese-simplified" when you call the language within your document. No class option is needed.}}
 %
-\DeclareOption{chinese-traditional}{\ClassError{\ClassName}{Do not specify "chinese-traditional" as class option}{Babel does not have an ldf file for traditional Chinese. Instead, specify "chinese-traditional" when you call the language within your document. No class option is needed.}}
+\DeclareOption{chinese-traditional}{\ClassError{\ClassName}{Do not specify "chinese-traditional" as class option}{Instead, specify "chinese-traditional" when you call the language within your document. No class option is needed.}}
 %
 \DeclareOption{chinese}{\ClassError{\ClassName}{Do not specify "chinese" as a class option}{Instead, specify either "chinese-simplified" or "chinese-traditional" when you call the language within your document. No class option is needed.}}
 %
-\DeclareOption{hindi}{\ClassError{\ClassName}{Do not specify "hindi" as a class option}{Babel does not have an ldf file for Hindi. Instead, specify "hindi" when you call the language within your document. No class option is needed.}}
+\DeclareOption{hindi}{\ClassError{\ClassName}{Do not specify "hindi" as a class option}{Instead, specify "hindi" when you call the language within your document. No class option is needed.}}
 %
-\DeclareOption{korean}{\ClassError{\ClassName}{Do not specify "korean" as class option}{Babel does not have an ldf file for Korean. Instead, specify "korean"when you call the language within your document. No class option is needed.}}
+\DeclareOption{korean}{\ClassError{\ClassName}{Do not specify "korean" as class option}{Instead, specify "korean"when you call the language within your document. No class option is needed.}}
 %
-\DeclareOption{marathi}{\ClassError{\ClassName}{Do not specify "marathi" as a class option}{Babel does not have an ldf file for Marathi. Instead, specify "marathi" when you call the language within your document. No class option is needed.}}
+\DeclareOption{marathi}{\ClassError{\ClassName}{Do not specify "marathi" as a class option}{Instead, specify "marathi" when you call the language within your document. No class option is needed.}}
 %
-\DeclareOption{tamil}{\ClassError{\ClassName}{Do not specify "tamil" as a class option}{Babel does not have an ldf file for Tamil. Instead, specify "tamil" when you call the language within your document. No class option is needed.}}
+\DeclareOption{tamil}{\ClassError{\ClassName}{Do not specify "tamil" as a class option}{Instead, specify "tamil" when you call the language within your document. No class option is needed.}}
 
 %% Suppress warnings about unused global options
 \DeclareOption*{}
@@ -467,19 +436,19 @@
 \ProcessOptions \relax %% end of options section
 
 
-%%%%%%%%%%%%%  Geometry, bibliography, graphics, colors %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%  Geometry, graphics, colors, bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \RequirePackage[letterpaper, left=0.5in, right=0.5in, top=0.5in, bottom = 1.in, footskip=0.5in, columnsep=0.38in]{geometry}
 % conforms to ASME required margins
 \setlength\parindent{0.25in}
 
+\RequirePackage{graphicx} % removed obsolete options, 2023/11/19
+\RequirePackage[dvipsnames,svgnames,x11names]{xcolor}
+
 \RequirePackage[sort&compress,numbers]{natbib} 
 \setlength\bibsep{1pt plus 1pt minus 1pt}
 
-\RequirePackage{graphicx} % removed obsolete options, 2023/11/19
-\RequirePackage[dvipsnames,svgnames,x11names]{xcolor}
 
-
 %%%%%%%%%%%%  Table related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \RequirePackage{booktabs}
@@ -533,7 +502,7 @@
 	\ExplSyntaxOff
 \fi
  
-\DeclareCaptionLabelFormat{uppercase}{\MakeTextUppercase{#1} #2}
+\DeclareCaptionLabelFormat{uppercase}{\MakeTextUppercase{#1} #2} % surprising that this carries through to #2...
 \DeclareCaptionTextFormat{boldmath}{\mathversion{sansbold}#1}
 \DeclareCaptionTextFormat{sansmath}{\mathversion{sans}#1}
 
@@ -556,33 +525,29 @@
 
 \RequirePackage{mathtools}% loads and extends amsmath
 
-\ifpdftex
+\ifac at pdftex
 	% must load before babel
-	\RequirePackage[\ac at TtwoA,\ac at LGR,\ac at Tfive,T1]{fontenc}
+	\RequirePackage[\ac at TtwoA, \ac at Tfive,\ac at LGR,T1]{fontenc}
 	% T2A - Cyrillic (w/o babel warning); LGR - Greek; T5 - Vietnamese; put T1 last 2022/03/10
 \fi
 
 \RequirePackage[]{babel} 
 
-\ifpdftex
+\ifac at pdftex
     \RequirePackage[helvratio=.91]{newtxtext}% rescaled 22/03/10
-    \RequirePackage[varqu,varl,scale=1.05]{inconsolata}% sans typewriter font % rescaled 22/03/10
+    \RequirePackage[varqu,varl,scale=1.03]{inconsolata}% sans typewriter font % rescaled to 1.05 22/03/10; rescaled to 1.03 2025/03/09
     \RequirePackage[]{newtxmath}
 \else
     \ifac at fontspec
-        \RequirePackage[varqu,varl]{inconsolata}  % typewriter font for math 
-        \renewcommand\rmdefault{ntxtlf}           % roman font for math
-		\RequirePackage[T1]{fontenc} 			  % qhv is not TU encoded, 2021/12/24
-	        \DeclareFontFamily{T1}{\sfdefault}{}  % sf for math
-	        \DeclareFontShape{T1}{\sfdefault}{m}{n}{<-> s*[0.94] ec-qhvr}{} %% see t1qhv.fd; 0.9-->0.94 2022/01/15
-        \RequirePackage[]{newtxmath}			  % newtxmath still handles mathematics        
-        \RequirePackage[no-math]{fontspec}
-        \defaultfontfeatures{Ligatures=TeX,}
+        \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math}
+        % suppress tiresome warnings about lack of integration between mathtools and unicode-math
+        % unicode-math loads the fontspec package
 %        
-	    \def\FontWarning{For luaLaTeX, you MUST have these OpenType fonts installed as system fonts on your computer: TeX Gyre Termes and TeX Gyre Heros (from \string http://www.gust.org.pl/projects/e-foundry/tex-gyre) and Inconsolatazi4 (\string https://ctan.org/tex-archive/fonts/inconsolata/opentype). If you DON'T have these fonts, you will see ERROR messages!}
+	    \def\FontWarning{For luaLaTeX, you MUST have these OpenType fonts installed on your computer: TeX Gyre Termes, TeX Gyre Termes Math, and TeX Gyre Heros (in TeX Live or from \string http://www.gust.org.pl/projects/e-foundry/tex-gyre) and Inconsolatazi4 (in TeX Live or from \string https://ctan.org/tex-archive/fonts/inconsolata/opentype). If you DON'T have these fonts, you will see ERROR messages!}
 %
 	    \IfFontExistsTF{TeX Gyre Termes}{}{\ClassWarningNoLine{\ClassName}{\FontWarning} }
 	    \IfFontExistsTF{texgyreheros}{}{   \ClassWarningNoLine{\ClassName}{\FontWarning} }
+	    \IfFontExistsTF{texgyretermes-math}{}{ \ClassWarningNoLine{\ClassName}{\FontWarning} }
 	    \IfFontExistsTF{Inconsolatazi4}{}{ \ClassWarningNoLine{\ClassName}{\FontWarning} }
 %	    
 		% The newtx package includes a modified version of TeXGyreTermes called TexGyreTermesX, which is loaded here.
@@ -597,7 +562,8 @@
         	BoldItalicFont = *-BoldItalic,
 			Numbers = Lining,
 			]
-        \setsansfont{texgyreheros}[% Presumes these are system fonts! Available at: http://www.gust.org.pl/projects/e-foundry/tex-gyre
+        \setsansfont{texgyreheros}[% Presumes it's installed! http://www.gust.org.pl/projects/e-foundry/tex-gyre
+        	Scale=0.91,% same as for newtx; former value 0.9 too small 2022/01/15
  			WordSpace = {1,1,1},% These spacings match newtxtext; rescaled to unity 2024/07/28
 			Extension = .otf,
         	UprightFont = *-regular,
@@ -605,10 +571,9 @@
         	BoldFont = *-bold,
         	BoldItalicFont = *-bolditalic,
 			Numbers = Lining,
-        	Scale=0.91,% same as for newtx; former value 0.9 too small 2022/01/15
 			]        
        \setmonofont{Inconsolatazi4}[% This otf font ships with the LaTeX Inconsolata package (it's in TeX Live)
-            Scale=1.05,% rescaled from 1, 22/03/10
+            Scale=1.03,% rescaled to 1.05 from 1, 22/03/10; rescaled to 1.03 2025/03/09
             Extension = .otf,
             UprightFont = *-Regular,
             ItalicFont = *-Regular,% has no italic face
@@ -616,7 +581,91 @@
         	BoldItalicFont = *-Bold,% has no italic face
             RawFeature = {+ss01,\ssztwo,+ss03},
             \MonoNotMono,% match newtxtext if we enable wordspacing; note wordspace def'd in option above.
-           ]          
+            ]
+       \setmathfont{texgyretermes-math}[% Presumes it's installed! http://www.gust.org.pl/projects/e-foundry/tex-gyre
+        	Scale=MatchUppercase,
+	       	Extension = .otf,
+    		BoldFont = *, % termes-math does not have a bold version
+    		]        
+        \setmathfont[Scale=MatchUppercase,version=bold,FakeBold=3]{texgyretermes-math}
+        	% FakeBold is fairly robust ==>> must be loaded before range substitutions that follow <<===       
+%	        
+        % set up sans and sansbold math fonts
+		\IfFontExistsTF{LeteSansMath-Bold}
+        {
+            \setmathfont{LeteSansMath-Bold}[% In TeX Live. A newer math font (2024/05), boldface sans serif
+                Scale=MatchUppercase,
+    	       	Extension = .otf,
+				RawFeature={\UpInt},
+                version=sansbold,
+            ]
+            \setmathfontface\mathrm{LeteSansMath-Bold.otf}[Scale=MatchUppercase,version=sansbold]      
+            \setmathfont{STIXTwoMath-Regular}[% In TeX Live. Substitution for bigger integrals (similar to newtxmath)
+    	       	Extension = .otf,
+                Scale=MatchUppercase,
+        		BoldFont = *, % STIX Two Math does not have a bold version
+                RawFeature={\UpInt},
+                range={"0222B-"02233,"02A0B-"02A1C},
+            ] 
+        }{
+        	\ClassWarningNoLine{\ClassName}{Lete Sans Math Bold font not found, falling back to Fira Math with FakeBold}%
+			\setmathfont{FiraMath-Regular}[% 2020 version of Regular is in TeX Live
+                Scale=MatchUppercase,
+    	       	Extension = .otf,
+                version=sansbold,
+                FakeBold = 4,
+        	]
+            \setmathfontface\mathrm{FiraMath-Regular.otf}[Scale=MatchUppercase,version=sansbold,FakeBold = 4]
+            \setmathfont{STIXTwoMath-Regular}[% In TeX Live. Subst. bigger integrals (similar to newtxmath) + cal,scr,frak
+    	       	Extension = .otf,
+                Scale=MatchUppercase,
+        		BoldFont = *,
+                RawFeature={\UpInt},
+                range={"0222B-"02233,"02A0B-"02A1C,frak,bffrak,cal,bfcal,scr,bfscr}
+            ]
+		}
+		\IfFontExistsTF{LeteSansMath}
+        {
+            \setmathfont{LeteSansMath}[% In TeX Live. A newer math font (2024/05), sans serif.
+                Scale=MatchUppercase,
+    	       	Extension = .otf,
+				RawFeature={\UpInt},
+                version=sans
+            ]
+            \setmathfontface\mathrm{LeteSansMath.otf}[Scale=MatchUppercase,version=sans]
+            \setmathfont{STIXTwoMath-Regular}[% In TeX Live. Substitution for bigger integrals (similar to newtxmath)
+    	       	Extension = .otf,
+                Scale=MatchUppercase,
+        		BoldFont = *,
+                RawFeature={\UpInt},
+                range={"0222B-"02233,"02A0B-"02A1C},
+            ] 
+        }{
+            \ClassWarningNoLine{\ClassName}{Lete Sans Math font not found, falling back to Fira Math}%
+			\setmathfont{FiraMath-Regular}[% 2020 version of Regular is in TeX Live
+                Scale=MatchUppercase,
+    	       	Extension = .otf,
+                version=sans,
+            ]
+            \setmathfontface\mathrm{FiraMath-Regular.otf}[Scale=MatchUppercase,version=sans]     
+            \setmathfont{STIXTwoMath-Regular}[% In TeX Live. Subst. bigger integrals (similar to newtxmath)+ cal,scr,frak
+    	       	Extension = .otf,
+                Scale=MatchUppercase,
+        		BoldFont = *,
+                RawFeature={\UpInt},
+                range={"0222B-"02233,"02A0B-"02A1C,frak,bffrak,cal,bfcal,scr,bfscr}
+            ]
+		}
+%
+        \setmathfontface\mathsf{texgyreheros-bold.otf}[Scale=MatchUppercase,version=sansbold] % for sf     
+        \setmathfontface\mathit{texgyreheros-bolditalic.otf}[Scale=MatchUppercase,version=sansbold] % for it
+        \setmathfontface\mathtt{Inconsolatazi4-Bold.otf}[Scale=1.05,version=sansbold] 		  % for tt
+
+        \setmathfontface\mathsf{texgyreheros-regular.otf}[Scale=MatchUppercase,version=sans]  % for sf     
+        \setmathfontface\mathit{texgyreheros-italic.otf}[Scale=MatchUppercase,version=sans]   % for it
+        \setmathfontface\mathtt{Inconsolatazi4-Regular.otf}[Scale=1.05,version=sans] 		  % for tt
+%%
+        \setoperatorfont\normalfont % to enable sans or bold operators, etc.
 %    
         % For many languages, using babel commands helps font loading. 
         % Switched Harbbuzz to OpenType throughout, 2024/07/28
@@ -627,6 +676,7 @@
     	\def\NotoDev at scale{0.92}% 1.} should probably stay consistent within the Noto family.
     	\def\NotoTam at scale{0.92}
 		\def\Noto at color{Color=black}% 2024/07/28. Changed this diagnostic command to by-pass a bug in luatexja-fontspec.	
+		% dropping this unused diagnostic option completely, owing to global conflict with luatexja
 %
         \babelprovide[import, language=Default]{arabic}
         \babelfont [arabic]{rm}[Scale=\Ara at scale,
@@ -659,7 +709,7 @@
         \babelfont [bengali]{rm}[%
 	 		 %Renderer=OpenType,
              Scale=\NotoBan at scale,% same as Devanagari
-             \Noto at color,
+%             \Noto at color,
              Extension = .ttf,
 			 UprightFont = *-Regular,
 			 ItalicFont = *-Regular,% has no italic face
@@ -669,7 +719,7 @@
         \babelfont [bengali]{sf}[%
 	 		 %Renderer=OpenType,
              Scale=\NotoBan at scale,
-             \Noto at color,
+%             \Noto at color,
              Extension = .ttf,
 			 UprightFont = *-Regular,
 			 ItalicFont = *-Regular,% has no italic face
@@ -679,7 +729,7 @@
         \babelfont [bengali]{tt}[
 	 		 %Renderer=OpenType,
 			 Scale=\NotoBan at scale,
-             \Noto at color,
+%             \Noto at color,
              Extension = .ttf,
 			 UprightFont = *-Regular,
 			 ItalicFont = *-Regular,% has no italic face
@@ -688,12 +738,15 @@
 		]{NotoSansBengali}		
 %
         % Cyrillic languages
-		\NewDocumentCommand\@LoadBabelCyr{>{\SplitList{;}}m}{\ProcessList{#1}{\@CyrillicBabel}}
-		\NewDocumentCommand\@CyrillicBabel{m}{%
-        	\babelprovide[import,language=Default,script=Cyrillic]{#1}
+		\NewDocumentCommand\ac at LoadBabelCyr{>{\SplitList{;}}m}{\ProcessList{#1}{\ac at CyrillicBabel}}
+		\NewDocumentCommand\ac at CyrillicBabel{m}{%
+        	\babelprovide[import,language=Default,script=Cyrillic]{#1} % rescaled 2025/03/14
             \babelfont [#1]{rm}[%
-            	Scale=\Noto at scale,
-    			\Noto at color,
+%            	Scale=\Noto at scale,
+	        	Scale=0.84,%\Noto at scale, % matching x-height to Termes
+	 			WordSpace = {1.14,1.8,1.37},
+				PunctuationSpace = 1.52,
+%    			\Noto at color,
     			Extension = .ttf,
                 UprightFont = *-Regular,
                 ItalicFont = *-Italic,
@@ -701,8 +754,11 @@
             	BoldItalicFont = *-BoldItalic,%
             ]{NotoSerif}
             \babelfont [#1]{sf}[%
-            	Scale=\Noto at scale,
-				\Noto at color,
+%            	Scale=\Noto at scale,
+	        	Scale=0.8896,%\Noto at scale, % matching x-height to Heros
+				WordSpace={1.094},% increase word spacing slightly
+				PunctuationSpace = 1.094,%% match fontdimen7
+%				\Noto at color,
    				Extension = .ttf,
                 UprightFont = *-Regular,
                 ItalicFont = *-Italic,
@@ -710,8 +766,8 @@
             	BoldItalicFont = *-BoldItalic,%
 			]{NotoSans}
             \babelfont [#1]{tt}[%
-            	Scale=\Noto at scale,
-				\Noto at color,
+	            Scale=0.878,%\Noto at scale, % matching x-height to Inconsolata
+%				\Noto at color,
 				Extension = .ttf,
 				UprightFont = *-Regular,
     			ItalicFont = *-Regular,% has no italic face
@@ -719,18 +775,18 @@
             	BoldItalicFont = *-Bold,% has no italic face
 			]{NotoSansMono}
 		}
-		\@LoadBabelCyr{russian;belarusian;bulgarian;macedonian;serbian-cyrillic;ukrainian}% serbianc has no .ini under fontspec
+		\ac at LoadBabelCyr{russian;belarusian;bulgarian;macedonian;serbian-cyrillic;ukrainian}% serbianc has no .ini under fontspec
 		\setlocalecaption{serbian-cyrillic}{abstract}{Сажетак}% NB: utf-8
 %
         % Devanagari languages
         \newfontscript{Devanagari}{deva}% OpenType has some problems in Hindi, see babel manual Sect. 1.13 (main issue is ra)
-		\NewDocumentCommand\@LoadBabelDev{>{\SplitList{;}}m}{\ProcessList{#1}{\@DevBabel}}
-		\NewDocumentCommand\@DevBabel{m}{%
+		\NewDocumentCommand\ac at LoadBabelDev{>{\SplitList{;}}m}{\ProcessList{#1}{\ac at DevBabel}}
+		\NewDocumentCommand\ac at DevBabel{m}{%
         	\babelprovide[import,language=Default]{#1}
             \babelfont [#1]{rm}[%
 %		 		 %Renderer=OpenType,% Marathi and Hindi may respond differently...
                  Scale=\NotoDev at scale,
-                 \Noto at color,
+%                 \Noto at color,
                  Extension = .ttf,
     			 UprightFont = *-Regular,
     			 ItalicFont = *-Regular,% has no italic face
@@ -740,7 +796,7 @@
             \babelfont [#1]{sf}[%
 %		 		 %Renderer=OpenType,% % Marathi and Hindi may respond differently...
                  Scale=\NotoDev at scale,
-                 \Noto at color,
+%                 \Noto at color,
                  Extension = .ttf,
     			 UprightFont = *-Regular,
     			 ItalicFont = *-Regular,% has no italic face
@@ -750,7 +806,7 @@
             \babelfont [#1]{tt}[
 %		 		 %Renderer=OpenType,% % Marathi and Hindi may respond differently...
                  Scale=\NotoDev at scale,
-                 \Noto at color,
+%                 \Noto at color,
                  Extension = .ttf,
     			 UprightFont = *-Regular,
     			 ItalicFont = *-Regular,% has no italic face
@@ -758,15 +814,17 @@
             	 BoldItalicFont = *-Bold,% has no italic face
 			 ]{NotoSansDevanagari}		
 		}
-		\@LoadBabelDev{hindi;marathi;kashmiri;nepali;sanskrit}
+		\ac at LoadBabelDev{hindi;marathi;kashmiri;nepali;sanskrit}
 		% No .ldf files for these languages, but they do have .ini files. Nepali: no abstractname
 %
 		% Greek
-		\babelprovide[import,language=Default]{greek}
+		\babelprovide[import,language=Default]{greek} % adjust scales 2025/03/14
         \babelfont [greek]{rm}[%
-        	Scale=\Noto at scale,
-			WordSpace={1.1},% increase word spacing slightly
-			\Noto at color,
+        	Scale=0.84,%\Noto at scale,
+ 			WordSpace = {1.14,1.8,1.37},
+			PunctuationSpace = 1.52,
+%			WordSpace={1.1},% increase word spacing slightly
+%			\Noto at color,
 			Extension = .ttf,
             UprightFont = *-Regular,
             ItalicFont = *-Italic,
@@ -774,9 +832,10 @@
         	BoldItalicFont = *-BoldItalic,%
 		]{NotoSerif}
         \babelfont [greek]{sf}[%
-        	Scale=\Noto at scale,
-			WordSpace={1.1},% increase word spacing slightly
-			\Noto at color,
+        	Scale=0.8896,%\Noto at scale,
+			WordSpace={1.094},% increase word spacing slightly
+			PunctuationSpace = 1.094,%% match fontdimen7
+%			\Noto at color,
 			Extension = .ttf,
             UprightFont = *-Regular,
             ItalicFont = *-Italic,
@@ -784,8 +843,8 @@
         	BoldItalicFont = *-BoldItalic,%
 		]{NotoSans}
         \babelfont [greek]{tt}[%
-            Scale=\Noto at scale,
-			\Noto at color,
+            Scale=0.878,%\Noto at scale,
+%			\Noto at color,
 			Extension = .ttf,
 			UprightFont = *-Regular,
     		ItalicFont = *-Regular,% has no italic face
@@ -795,13 +854,15 @@
 %      
         % Japanese
         % luatexja-fontspec seems to want lc "color" now, rather than normal "Color", as before. Commenting out.
+        % ongoing issues with color in these fonts, conflicting with Greek and Russian.  Eliminating color from all three. 2025/03/07
         % NB: luatexja-fontspec color breakage appears to be global.
         \ifac at japanese
-            \def\Noto at color{}% by-pass bug in luatexja-fontspec, 2024/07/28.
+%       	\let\savNoto at color\Noto at color
+%           \def\Noto at color{}% by-pass bug in luatexja-fontspec, 2024/07/28.
         	\RequirePackage[no-math]{luatexja-fontspec}% japanese typesets *much* better with this loaded
             \setmainjfont{NotoSerifCJKjp}[%
             	Scale=\Noto at scale,
-				\Noto at color,
+%				\Noto at color,
 %    			Extension = .otf,
     			UprightFont = *-Regular,
     			ItalicFont = *-Regular,% has no italic face
@@ -810,7 +871,7 @@
 			]
             \setsansjfont{NotoSansCJKjp}[%
             	Scale=\Noto at scale,
-				\Noto at color,
+%				\Noto at color,
 %    			Extension = .ttc,
     			UprightFont = *-Regular,
     			ItalicFont = *-Regular,%  has no italic face
@@ -819,7 +880,7 @@
 			]
             \setmonojfont{NotoSansMonoCJKjp}[%
             	Scale=\Noto at scale,
-				\Noto at color,	
+%				\Noto at color,	
     			UprightFont = *-Regular,
     			ItalicFont = *-Regular,%  has no italic face
     			BoldFont = *-Bold, 
@@ -830,7 +891,7 @@
     		% Need at least one of the following to load the Japanese dictionary.
     		\babelfont [japanese]{rm}[%
     			Scale=\Noto at scale,
-    			\Noto at color,
+%    			\Noto at color,
     			Extension = .otf,
     			UprightFont = *-Regular,
     			ItalicFont = *-Regular,% has no italic face
@@ -839,8 +900,8 @@
     			]{NotoSerifCJKjp}% Scale estimated
         	\babelfont [japanese]{sf}[%
             	Scale=\Noto at scale,
-    			\Noto at color,
- %   			Extension = .ttc,
+%    			\Noto at color,
+%   			Extension = .ttc,
     			UprightFont = *-Regular,
     			ItalicFont = *-Regular,%  has no italic face
     			BoldFont = *-Bold, 
@@ -848,7 +909,7 @@
 			]{NotoSansCJKjp}
             \babelfont [japanese]{tt}[%
             	Scale=\Noto at scale,
-				\Noto at color,
+%				\Noto at color,
 %				Extension = .ttc,
 				UprightFont = *-Regular,
 				ItalicFont = *-Regular,%  has no italic face
@@ -855,14 +916,15 @@
 				BoldFont = *-Bold, 
         		BoldItalicFont = *-Bold,% has no italic face
 			]{NotoSansMonoCJKjp}% renders same as Sans!
+%			\let\Noto at color\savNoto at color
 		\fi
 		% Note: \japaneseabstractname is not defined if japanese is not called as a package option.
 				
 		% Korean
-		\babelprovide[import,language=Default]{korean}
+		\babelprovide[import,language=Default]{korean} 
         \babelfont [korean]{rm}[%
         	Scale=\Noto at scale,
-			\Noto at color,
+%			\Noto at color,
 			Extension = .otf,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -871,7 +933,7 @@
         ]{NotoSerifCJKkr}
         \babelfont [korean]{sf}[%
         	Scale=\Noto at scale,
-			\Noto at color,
+%			\Noto at color,
 			Extension = .ttc,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -880,7 +942,7 @@
 		]{NotoSansCJK}
         \babelfont [korean]{tt}[%
         	Scale=\Noto at scale,
-			\Noto at color,
+%			\Noto at color,
 %			Extension = .ttc,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -887,13 +949,13 @@
 			BoldFont = *-Bold, 
         	BoldItalicFont = *-Bold,% has no italic face
 		]{NotoSansMonoCJKkr}
-        \renewcommand\koreanabstractname{초록}% NB: utf-8
+		\renewcommand\koreanabstractname{초록} % NB: utf-8
 
 		% Simplified Chinese
-		\babelprovide[import,language=Default]{chinese-simplified}
+		\babelprovide[import,language=Default]{chinese-simplified} % throws an error when tagging is active, 2025/03/06
         \babelfont [chinese-simplified]{rm}[%
         	Scale=\Noto at scale,
-        	\Noto at color,
+%        	\Noto at color,
         	Extension = .otf,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -902,7 +964,7 @@
 		]{NotoSerifCJKsc}
         \babelfont [chinese-simplified]{sf}[%
         	Scale=\Noto at scale,
-			\Noto at color,
+%			\Noto at color,
 			Extension = .ttc,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -911,7 +973,7 @@
 		]{NotoSansCJK}
         \babelfont [chinese-simplified]{tt}[%
         	Scale=\Noto at scale,
-			\Noto at color,
+%			\Noto at color,
 %			Extension = .ttc,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -920,10 +982,10 @@
 		]{NotoSansMonoCJKsc}
 %
 		% Traditional Chinese (includes characters for Cantonese also)
-		\babelprovide[import,language=Default]{chinese-traditional}
+		\babelprovide[import,language=Default]{chinese-traditional} % throws an error when tagging is active, 2025/03/06
         \babelfont [chinese-traditional]{rm}[% fixed 2024/07/28
         	Scale=\Noto at scale,
-        	\Noto at color,
+%        	\Noto at color,
         	Extension = .otf,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -932,7 +994,7 @@
 		]{NotoSerifCJKtc}
         \babelfont [chinese-traditional]{sf}[%
         	Scale=\Noto at scale,
-			\Noto at color,
+%			\Noto at color,
 			Extension = .ttc,
 			UprightFont = *-Regular,
 			ItalicFont = *-Regular,%  has no italic face
@@ -945,7 +1007,7 @@
         \babelfont [tamil]{rm}[%
 	 		 %Renderer=OpenType,
              Scale=\NotoTam at scale,
-             \Noto at color,
+%             \Noto at color,
              Extension = .ttf,
 			 UprightFont = *-Regular,
 			 ItalicFont = *-Regular,% has no italic face
@@ -955,7 +1017,7 @@
         \babelfont [tamil]{sf}[%
 	 		 %Renderer=OpenType,
              Scale=\NotoTam at scale,
-             \Noto at color,
+%             \Noto at color,
              Extension = .ttf,
 			 UprightFont = *-Regular,
 			 ItalicFont = *-Regular,% has no italic face
@@ -965,7 +1027,7 @@
         \babelfont [tamil]{tt}[
 	 		 %Renderer=OpenType,
 			 Scale=\NotoTam at scale,
-             \Noto at color,
+%             \Noto at color,
              Extension = .ttf,
 			 UprightFont = *-Regular,
 			 ItalicFont = *-Regular,% has no italic face
@@ -975,7 +1037,7 @@
 %
 	    \babelprovide[import, captions/abstract = Muhtasari, language = Default]{swahili}
 %	
-   \else % use lualatex without support for system fonts (easier set-up and still enables luacode for numerics)
+   \else % use lualatex without support for system fonts (enables luacode for numerics while retaining newtx etc.)
     	 % dropped newtxtext completely, 2024/01/19
 		\renewcommand*\rmdefault{ntxtlf}          % roman font for math
 		\RequirePackage[T1]{fontenc} 			  % qhv and zi4 are not TU encoded, 2021/12/24
@@ -995,10 +1057,13 @@
    \fi
 \fi
 
-\RequirePackage[]{mathalfa}% load optional fonts for Calligraphy, Script, Fraktur. Key format: mathalfa=cal=euler (etc.)
-\RequirePackage{bm}%   		 load after all math to give further access to bold math
+%% the bm package is loaded only without unicode-math (bm = bold math macro)
+\ifac at fontspec
+	\let\bm\symbf
+\else
+	\RequirePackage{bm}% load after all math
+\fi
 
-
 % To free \eqref from the normal font (e.g., for use in section headings or captions). Revised 2024/07/28
 \renewcommand{\eqref}[1]{\textup{\hbox{\m at th{(\ignorespaces\ref{#1}\unskip\@@italiccorr)}}}}
 %
@@ -1013,11 +1078,10 @@
 \tolerance 2500
 \emergencystretch 3em 
 
-\RequirePackage{hologo}% Access various LaTeX logos if needed. Dropped metalogo, 2024/08/09.
+%\RequirePackage{hologo}% Moved to .tex file, 2025/03/26.  Dropped metalogo, 2024/08/09.
 
 %% font size selection  
 %% ASME's specs differ slightly from latex standard article-10 class 
-
 \renewcommand\LARGE{\@setfontsize\LARGE{16}{19.2}}              %{18}{21.6}}  updated 2019/7/7 to match new ASME spec.  
                                                                 % ...default is 17.28/22 ... used for paper#
 \renewcommand\large{\@setfontsize\large{11}{13.6}}              % default is 12/14 ... used for headings
@@ -1028,52 +1092,52 @@
 %\renewcommand\footnotesize{\@setfontsize\footnotesize{8}{9.5}} % same as default
 
 
-%% This provides sans-serif italic and sans-serif bold italic math.
-%% These fonts are for use in the figure captions and section headings. 
-%% Use \mathbf{..}, \mathversion{bold}, or \bm{..} elsewhere.
-\DeclareMathVersion{sansbold}
-\SetSymbolFont{letters}{sansbold}{OML}{ntxsfmi}{b}{it}
-\SetSymbolFont{lettersA}{sansbold}{U}{ntxsfmia}{b}{it}
-\IfFormatAtLeastTF{2016/01/05}{%
-	\SetSymbolFont{symbols}{sansbold}{LMS}{ntxsy}{b}{n}
-	}{\relax}
-\SetSymbolFont{largesymbols}{sansbold}{LMX}{ntxexx}{b}{n}%  added 25 Jan 2021
-\SetSymbolFont{largesymbolsTXA}{sansbold}{U}{ntxexa}{b}{n}% added 25 Jan 2021
-\SetSymbolFont{operators}{sansbold}{\encodingdefault}{\sfdefault}{\bfdefault}{n}
-\SetMathAlphabet{\mathsf}{sansbold}{\encodingdefault}{\sfdefault}{b}{n}% changed from it, 2021/01/31: \mathsf is upright.
+%% set up sansbold and sans mathversions for pdftex
+\ifac at fontspec\else
+    %% This provides sans-serif italic and sans-serif bold italic math.
+    %% These fonts are for use in the figure captions and section headings. 
+    %% Use \mathbf{..}, \mathversion{bold}, or \bm{..} elsewhere.
+    \DeclareMathVersion{sansbold}
+    \SetSymbolFont{letters}{sansbold}{OML}{ntxsfmi}{b}{it}
+    \SetSymbolFont{lettersA}{sansbold}{U}{ntxsfmia}{b}{it}
+    \IfFormatAtLeastTF{2016/01/05}{%
+    	\SetSymbolFont{symbols}{sansbold}{LMS}{ntxsy}{b}{n}
+    	}{\relax}
+    \SetSymbolFont{largesymbols}{sansbold}{LMX}{ntxexx}{b}{n}%  added 25 Jan 2021
+    \SetSymbolFont{largesymbolsTXA}{sansbold}{U}{ntxexa}{b}{n}% added 25 Jan 2021
+    \SetSymbolFont{operators}{sansbold}{\encodingdefault}{\sfdefault}{\bfdefault}{n}
+    \SetMathAlphabet{\mathsf}{sansbold}{\encodingdefault}{\sfdefault}{b}{n}% changed from it, 2021/01/31: \mathsf is upright.
+    
+    %% Added 2023/10/19
+    \DeclareMathVersion{sans}
+    \SetSymbolFont{letters}{sans}{OML}{ntxsfmi}{m}{it}
+    \SetSymbolFont{lettersA}{sans}{U}{ntxsfmia}{m}{it}
+    \IfFormatAtLeastTF{2016/01/05}{%
+    	\SetSymbolFont{symbols}{sans}{LMS}{ntxsy}{m}{n}
+    	}{\relax}
+    \SetSymbolFont{largesymbols}{sans}{LMX}{ntxexx}{m}{n}
+    \SetSymbolFont{largesymbolsTXA}{sans}{U}{ntxexa}{m}{n}
+    \SetSymbolFont{operators}{sans}{\encodingdefault}{\sfdefault}{\rmdefault}{n}
+    \SetMathAlphabet{\mathsf}{sans}{\encodingdefault}{\sfdefault}{m}{n}% \mathsf is upright.
+\fi 
 
-%% Added 2023/10/19
-\DeclareMathVersion{sans}
-\SetSymbolFont{letters}{sans}{OML}{ntxsfmi}{m}{it}
-\SetSymbolFont{lettersA}{sans}{U}{ntxsfmia}{m}{it}
-\IfFormatAtLeastTF{2016/01/05}{%
-	\SetSymbolFont{symbols}{sans}{LMS}{ntxsy}{m}{n}
-	}{\relax}
-\SetSymbolFont{largesymbols}{sans}{LMX}{ntxexx}{m}{n}
-\SetSymbolFont{largesymbolsTXA}{sans}{U}{ntxexa}{m}{n}
-\SetSymbolFont{operators}{sans}{\encodingdefault}{\sfdefault}{\rmdefault}{n}
-\SetMathAlphabet{\mathsf}{sans}{\encodingdefault}{\sfdefault}{m}{n}% \mathsf is upright.
-
-
-%% Nice solution from DPC to prevent aux file errors (due to active characters from babel) when switching from pdflatex to lualatex.  Disabled, 2024/07/28
-%\ifx\directlua\undefined
-%	\AtBeginDocument{\immediate\write\@auxout{\detokenize{%
-%	 \ifx\directlua\undefined\else\endinput\fi}}}
-%\fi
-
-
 %%%%%%%%  Footers and Footnotes  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \RequirePackage{fancyhdr}
 \pagestyle{fancy}
 
-\AtBeginDocument{\edef\@EncodingMain{\encodingdefault}}
-\NewDocumentCommand\@SetFont{}{\fontencoding\@EncodingMain\selectfont}
+\AtBeginDocument{\edef\ac at EncodingMain{\encodingdefault}}
+\ExplSyntaxOn
+	\cs_new:Npn \ac at SetFont { 
+		\fontencoding\ac at EncodingMain\selectfont
+		\selectlanguage{english}% add english to deal with lualatex, 2025/03/18
+    }
+\ExplSyntaxOff
 
 \fancyfoot{}
 \fancyhead{}
-\fancyfoot[CE,CO]{\@SetFont\thepage}% force encoding so that passages in some languages won't switch footer font from the main font.
-\fancyfoot[RO,RE]{\@SetFont Copyright~\textcopyright~\the\year\ by ASME}
+\fancyfoot[CE,CO]{\ac at SetFont\thepage}% force encoding so that passages in some languages won't switch footer font from the main font.
+\fancyfoot[RO,RE]{\ac at SetFont Copyright \textcopyright \the\year\ by ASME}
 \renewcommand{\headrulewidth}{0pt} 
 \renewcommand{\footrulewidth}{0pt}
 
@@ -1080,19 +1144,19 @@
 \ifasmeconf at govt
 	\newgeometry{left=0.5in, right=0.5in, top=0.5in, bottom = 1.in, footskip = 0.3in, columnsep = 0.38in}
 	\fancyfoot[RO,RE]{}
-	\fancyfoot[CE,CO]{\@SetFont\thepage\\[1ex]\small This material is declared a work of the U.\ S.~Government and is not subject to copyright protection in the United States.\\Approved for public release; distribution is unlimited.}
+	\fancyfoot[CE,CO]{\ac at SetFont\thepage\\[1ex]\small This material is declared a work of the U. S.~Government and is not subject to copyright protection in the United States.\\Approved for public release; distribution is unlimited.}
 \fi
 
 \ifasmeconf at contractor
 	\newgeometry{left=0.5in, right=0.5in, top=0.5in, bottom = 1.in, footskip = 0.3in, columnsep = 0.38in}
 	\fancyfoot[RO,RE]{}
-	\fancyfoot[CE,CO]{\@SetFont\thepage\\[1ex]\footnotesize The United States Government retains, and by accepting the article for publication, the publisher acknowledges that the United States Government retains, a non-exclusive, paid-up, irrevocable, worldwide license to publish or reproduce the published form of this work, or allow others to do so, for United States Government purposes.}
+	\fancyfoot[CE,CO]{\ac at SetFont\thepage\\[1ex]\footnotesize The United States Government retains, and by accepting the article for publication, the publisher acknowledges that the United States Government retains, a non-exclusive, paid-up, irrevocable, worldwide license to publish or reproduce the published form of this work, or allow others to do so, for United States Government purposes.}
 \fi
 
 \ifasmeconf at govtsome
 	\newgeometry{left=0.5in, right=0.5in, top=0.5in, bottom = 1.in, footskip = 0.3in, columnsep = 0.38in}
 	\fancyfoot[RO,RE]{}
-	\fancyfoot[CE,CO]{\@SetFont\thepage\\[1ex]\small This work was authored in part by a U.\ S.\ Government employee in the scope of his/her employment. ASME disclaims all interest in the U.\ S.\ Government's contribution.}
+	\fancyfoot[CE,CO]{\ac at SetFont\thepage\\[1ex]\small This work was authored in part by a U. S. Government employee in the scope of his/her employment. ASME disclaims all interest in the U. S. Government's contribution.}
 \fi
 
 \ifasmeconf at nofoot
@@ -1148,51 +1212,76 @@
 \patchcmd{\@ssect}{\relax #5}{\relax #5.}{}{}% only \subsubsection* will follow this path
 \let\paragraph\subsubsection
 
+\ExplSyntaxOn
+\cs_new_protected:Nn \__asmeconf_change_hangindent: {
+    \cs_if_exist:NT \@kernel at tag@hangfrom {
+		  \cs_new_eq:NN  \__asmeconf_sav at kernel@tag at hangfrom \@kernel at tag@hangfrom
+		  % modify command in latex-lab-sec
+          \cs_gset_protected:Npn \@app at kernel@tag at hangfrom ##1
+          {
+            \tagstructbegin{tag=\l__tag_para_tag_tl}
+            \cs_if_exist_use:N \__tag_gincr_para_begin_int:
+            \tagstructbegin{tag=Lbl}
+            \setbox\@tempboxa
+             \hbox
+              {
+                \bool_lazy_and:nnT
+                {\tag_if_active_p:}
+                {\g__tag_mode_lua_bool}
+                {\tagmcbegin{tag=Lbl}}
+                {##1}
+              }
+            \tag_suspend:n{hangfrom}
+        %   \hangindent \wd\@tempboxa\noindent %% changing this line only
+            \hangindent 0pt\noindent
+            \tag_resume:n{hangfrom}
+            \tagmcbegin{}\box\@tempboxa\tagmcend\tagstructend\tagmcbegin{}
+          }
+		  \cs_set_eq:NN  \@kernel at tag@hangfrom \@app at kernel@tag at hangfrom
+	}
+          \cs_new_eq:NN \__asmeconf_sav at hangfrom \@hangfrom
+          \cs_gset_protected:Npn \@app at hangfrom ##1
+          {
+            \setbox\@tempboxa\hbox{{##1}}%
+         %  \hangindent \wd\@tempboxa\noindent\box\@tempboxa} %% changing this line only
+            \hangindent 0pt\noindent\box\@tempboxa
+          }   
+}
 \renewcommand{\appendix}{
     \par
+    \__asmeconf_change_hangindent:
     \setcounter{section}{0}
     \setcounter{subsection}{0}
     \gdef\thesection{\@Alph\c at section}
     \gdef\thesubsection{\@Alph\c at section.\@arabic\c at subsection}
     \pretocmd{\section}{\gdef\@seccntformat##1{\appendixname\ \csname the##1\endcsname.\hspace{0.5em}}}{}{}
-    \let\savhangfrom\@hangfrom
-    \pretocmd{\section}{\gdef\@hangfrom{\relax}}{}{}
+    \pretocmd{\section}{\def\@hangfrom{\@app at hangfrom}}{}{}
+    \pretocmd{\section}{\def\@kernel at tag@hangfrom{\@app at kernel@tag at hangfrom}}{}{}
     \pretocmd{\subsection}{\gdef\@seccntformat##1{\csname the##1\endcsname.\hspace{0.5em}}}{}{}
-    \pretocmd{\subsection}{\gdef\@hangfrom{\savhangfrom}}{}{}
-    \patchcmd{\@kernel at tag@hangfrom}{\hangindent \wd\@tempboxa\noindent}{\noindent}{}{}
+    \pretocmd{\subsection}{\def\@hangfrom{\__asmeconf_sav at hangfrom}}{}{}
+    \pretocmd{\subsection}{\def\@kernel at tag@hangfrom{\__asmeconf_sav at kernel@tag at hangfrom}}{}{}
 }
-%% still need to zero out \hangfrom in appendix \section when tagging is active. 
+\ExplSyntaxOff
 
+%% Let's also add \footnote to the \TextUppercase exception list, so that footnote text won't be capitalized
+%%   if given in a section heading. Ditto for \eqref
+%
+\ifx\AddToNoCaseChangeList\@undefined % updated 2022/07/03, see https://github.com/John02139/asmeconf/issues/5 
+	\patchcmd{\@uclcnotmath}{\@nonchangecase\ref}{\@nonchangecase\ref\@nonchangecase\footnote}{\typeout{Asmeconf patched textcase nonchangecase to include footnote.}}{}
+	\patchcmd{\@uclcnotmath}{\@nonchangecase\ref}{\@nonchangecase\ref\@nonchangecase\eqref}{\typeout{Asmeconf patched textcase nonchangecase to include eqref.}}{}
+\else
+    \AddToNoCaseChangeList{\eqref \footnote}
+\fi
 
-%%%%%%%%%%  Hyperref, bookmarks, and PDF/A  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\ifpdftex
+%%%%%%%%%%  Hyperref  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifac at pdftex
     %%% to assist with unicode glyph mapping, following M. Sharpe's recommendation in the newtx documentation. 
-    %%% as of 2024/07/28, these are still necessary with \DocumentMetadata{pdfstandard=A-3u}. Note: glyphtounicode-cmex.tex is now in latex-lab.
+    %%% as of 2024/07/28, these are still necessary with \DocumentMetadata{pdfstandard=A-3u}.
     \InputIfFileExists{glyphtounicode-cmr.tex}{}{} 	%% additional mappings
+    \InputIfFileExists{glyphtounicode-cmex.tex}{}{} %% additional mappings, in latex-lab (2025/03/08)
     \InputIfFileExists{glyphtounicode-ntx.tex}{}{} 	%% additional mappings
-    
-    \ifac at setpdfa
-    %% new pdf management in LaTeX, with \DocumentMetaData{..}, is preferred to this *legacy* approach.
-        \ifasme at pdfmanagement
-        	\ClassInfo{\ClassName}{pdfmanagement is defined. Class file will not load a color profile}
-        \else
-        	\ClassInfo{\ClassName}{NOTE: pdfmanagement not defined. Class file will load a color profile}%
-            %%% a fairly generic RGB color profile, aimed at on-screen rendering (not print production)
-            	\immediate\pdfobj stream attr{/N 3} file{sRGB.icc}
-            	\pdfcatalog{%
-            	   /OutputIntents [
-            	    <<
-            	      /Type /OutputIntent
-            	      /S /GTS_PDFA1
-            	      /DestOutputProfile \the\pdflastobj\space 0 R
-            	      /OutputConditionIdentifier (sRGB)
-            	      /Info (sRGB)
-            	    >>
-            	   ]
-            	 }%
-        \fi
-    \fi
 \fi
 
 \RequirePackage[psdextra]{hyperref} % recent kernel transition suggests providing most hyperref options via \hypersetup, 
@@ -1207,7 +1296,7 @@
 	urlcolor=blue,  %
 	filecolor=red,  % added 2021/12/02, to make certain broken links more apparent
 	pdfnewwindow=true,%
-	pdfpagelayout=SinglePage, %TwoPageRight,% changed this 2020/12/08
+	pdfpagelayout=SinglePage,
 	pdfdisplaydoctitle=true%
 %	colorlinks=true,% <=== set true to get colored type, but do so via package options in .tex file
 }
@@ -1217,30 +1306,11 @@
 \renewcommand{\doitext}{DOI } % change to this from default value, {doi:}, per ASME specification
 
 \providecommand*{\toclevel at subfigure}{1}% <== to address unknown bookmark level of subfigure. 2021/12/24
+\providecommand\hrefurl[2]{\href{#1}{#2}}% in case no \DocumentMetadata{..}
 
-\ifasme at pdfmanagement
-	\ClassInfo{asmejour}{pdfmanagement is defined. Class file will not load hyperxmp and bookmark packages}
-\else
-	\providecommand\hrefurl[2]{\href{#1}{#2}}% to address certain issues around URL recognition with new pdf management code, 2021/12/02
-    \RequirePackage{bookmark}% improves handling of pdf bookmarks
-    \RequirePackage{hyperxmp}% improve transfer of metadata to pdf 
-    
-    % Patch bug in hyperxmp, unless a more recent version is used.
-    \ifdefined\hyxmp at no@bad at parts% \hyxmp at no@bad at parts is not def'd in TeX Live 2019 or older
-        \IfPackageAtLeastTF{hyperxmp}{2022/10/15}{% v5.11 or later
-            \relax
-        	}{%
-            \newcount\hypxmp at tempcnt
-            \define at key{Hyp}{pdfapart}{%
-              \afterassignment\hyxmp at no@bad at parts\hypxmp at tempcnt=0#1\relax
-              \hyxmp at pdfstringdef\@pdfapart{\the\hypxmp at tempcnt}%
-            }
-        }
-    \fi
-\fi
 
 %%% ==> recent development of \pdfstring removes all robust commands from bookmarks, so that
-%%%     by early 2024, errors are not present; these commands serve to still suppress warnings, however.
+%%%     by early 2024, errors are not present; the following serve to suppress warnings.
 
 %% Since \bm may be useful in headings, this fix will reduce frequency with which
 %%    alternate pdfstrings must be given in revised section command as \section[pdfstring]{texstring}
@@ -1275,23 +1345,12 @@
   \def\footnote#1{}%
 }
 
-
-%% Let's also add \footnote to the \TextUppercase exception list, so that footnote text won't be capitalized
-%% if given in section headings. Ditto for \eqref
-%
-\ifx\AddToNoCaseChangeList\@undefined % updated 2022/07/03, see https://github.com/John02139/asmeconf/issues/5 
-	\patchcmd{\@uclcnotmath}{\@nonchangecase\ref}{\@nonchangecase\ref\@nonchangecase\footnote}{\typeout{Asmeconf patched textcase nonchangecase to include footnote.}}{}
-	\patchcmd{\@uclcnotmath}{\@nonchangecase\ref}{\@nonchangecase\ref\@nonchangecase\eqref}{\typeout{Asmeconf patched textcase nonchangecase to include eqref.}}{} %% corrected 2020/01/24
-\else
-    \AddToNoCaseChangeList{\eqref \footnote}
-\fi
-
 %%% There should be no errors for section headings with \(, \), \cite, \ref, \eqref, \label, \footnote, \NoCaseChange, or \bm 
 
 
 %%%%%%%%%%%%%  Line numbering and balancing columns on last page  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-%%% Adjustments when lineno option is used
+%%% Adjustments when [lineno] option is used
 \ifasmeconf at lineno%
     \RequirePackage[switch,mathlines]{lineno}    
     \renewcommand{\linenumberfont}{\normalfont\footnotesize\color{red}} 
@@ -1301,7 +1360,7 @@
 	\fi
 	%%% Patch to allow line numbering in AMS math environments.
 	%%% This patch is for lineno versions earlier than v5.2 [2023/05/19]. As of mid-2023, the lineno package
-	%%% 	has been corrected to account for the AMS math environments.  Retaining for backward compatibility.
+	%%% 	has been corrected to account for the AMS math environments.  Retaining patch for backward compatibility.
 	%%% postdisplaypenalty adjusted to avoid extra line number at end, see: https://tex.stackexchange.com/a/461192/ 
 	\IfPackageAtLeastTF{lineno}{2023/05/19}{\relax}{
     	\NewDocumentCommand{\ac at losepostpenalty}{}{\patchcmd{\linenomathWithnumbers}{\advance\postdisplaypenalty\linenopenalty}{}{}{}}
@@ -1320,12 +1379,12 @@
 \else
     \ProvideDocumentEnvironment{linenomath}{}{}{}%
     \ifasmeconf at balance
-    	\RequirePackage{flushend}%    flushend package is NOT compatible with lineno
+    	\RequirePackage{flushend}% flushend package is NOT compatible with lineno
     	\AtEndDocument{\flushcolsend}%
 		\ClassNoteNoLine{\ClassName}{Calling flushend package to balance column height on last page}%
     \fi%
 \fi
-\providecommand{\@LN at col}[1]{\relax}% Enable dropping lineno option without trashing .aux file
+\providecommand{\@LN at col}[1]{\relax}% Enable dropping lineno option without needing to trash .aux file
 \providecommand{\@LN}[2]{\relax}
 
 
@@ -1337,10 +1396,9 @@
 	{ 
 	  \cs_new:Npn \tag_struct_begin:n #1 { \scan_stop: } 
 	  \cs_new:Nn  \tag_struct_end:       { \scan_stop: } 
-	  \cs_new:Nn  \tagpdfparaOff         { \scan_stop: }
-	  \cs_new:Nn  \tagpdfparaOn          { \scan_stop: }
+	  \cs_new:Npn \tagpdfparaOff         { \scan_stop: }
+	  \cs_new:Npn \tagpdfparaOn          { \scan_stop: }
 	}
-\ExplSyntaxOff
 
 %%%%%% Introduce some special section and other names %%%%%%%%%%%
 
@@ -1347,41 +1405,39 @@
 \providecommand{\nomname}{Nomenclature}  
 \providecommand{\keywordname}{Keywords}
 \providecommand{\appendicesname}{APPENDICES}
-\providecommand{\JAwords}{Joint first authors}
-\providecommand{\CAwords}{Corresponding author}
+\providecommand{\JAwords}{Joint~first~authors}
+\providecommand{\CAwords}{Corresponding~author}
 
-%%   Abstract environment  %%%%%%%%%%%%%%%%%%
-%%   \keywords command should be given someplace before the \end{abstract} command.
+%%  Abstract environment  %%%%%%%%%%%%%%%%%%
+%%  \keywords command should be given someplace before the \end{abstract} command.
 
-\providecommand{\@keywords}{\relax}
+\providecommand{\ac at keywords}{\relax}
 
-% \ifblank is from etoolbox
 \NewDocumentCommand{\keywords}{m}{%
-	\ifblank{#1}{\def\@keywords{\relax}}{
-	    \long\def\@keywords{\par\smallskip\noindent{\bfseries\sffamily \keywordname: #1}}%
+	\tl_if_blank:nTF {#1}
+	{
+		\def\ac at keywords{\relax}
+	}{
+	    \long\def\ac at keywords{\par\smallskip\noindent{\bfseries\sffamily \keywordname :~#1}}%
 	}
 }
+\ExplSyntaxOff
 
-\ExplSyntaxOn
-\DeclareDocumentEnvironment{abstract}{+b}{% Overwrites existing abstract environment
-%    \tag_struct_begin:n{tag=Sect, title-o=\abstractname}
+\DeclareDocumentEnvironment{abstract}{+b}{% Overwrites default abstract environment
 	\section*{\abstractname}\itshape
 	#1
 	}
 	{
-		\upshape\@keywords 
-%		\par\tag_struct_end:n
-		\ignorespacesafterend
+		\upshape\ac at keywords 
+		\par\ignorespacesafterend
 	}
-\NewDocumentEnvironment{abstract*}{}{% Abstract with no keywords (same as using empty \keywords{} with first abstract)
-%    \tag_struct_begin:n{tag=Sect, title-o=\abstractname}
+\NewDocumentEnvironment{abstract*}{+b}{% Abstract with no keywords (same as using empty \keywords{} with abstract env.)
 	\section*{\abstractname}\itshape
+	#1
 	}
 	{
-%	\par\tag_struct_end:n
-	\ignorespacesafterend
+	\par\ignorespacesafterend % \par needed to present spurious vertical space after full line in lualatex, 2025/03/18
 	}
-\ExplSyntaxOff
 
 %%   Nomenclature environment  %%%%%%%%%%%%%%%%%%
 %%
@@ -1398,14 +1454,12 @@
 \NewDocumentCommand\EntryHeading{m}{%
 	\itemsep3\p@ plus 1\p@ minus 1\p@
     \goodbreak\item[\itshape#1\hfill]\mbox{}%
-    \setlength{\itemsep}{\savitemsep}\@itempenalty=1000
+    \setlength{\itemsep}{\savitemsep}\@itempenalty=1000	
 }
 
 %%   Increase first optional argument to a dimension > 2em if wide entries cause undesired misalignment of columns. 
 %%   Second optional argument can be used to rename the environment, e.g., to List of Symbols.
-\ExplSyntaxOn
 \NewDocumentEnvironment{nomenclature}{O{2em} O{\nomname}}{%
- %       \tag_struct_begin:n{tag=Sect, title-o=\nomname}
 		\setlength{\columnsep}{2em} 
         \setlength{\nomenwidth}{#1}
         \section*{#2}
@@ -1420,65 +1474,82 @@
 			 \setlength{\savitemsep}{\itemsep}%
         }%
 }{\end{list}
-%  \tag_struct_end:
   \ignorespacesafterend
 }
-\ExplSyntaxOff
 
+
 %%%%%%%%%%%%%%%%%  Headers and Title  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\NewDocumentCommand\ConfName{m}{\long\gdef\@ConfName{#1}}
-\providecommand\@ConfName{\hbox{ }}
+\ExplSyntaxOn
 
-\NewDocumentCommand\ConfAcronym{m}{\gdef\@ConfAcronym{#1}}
-\providecommand\@ConfAcronym{\hbox{ }}
+\tl_new:N   \g__ac_confname_tl	
+\tl_gset:Nn \g__ac_confname_tl    { {\itshape Missing~conference~name!}    }
+\tl_new:N   \g__ac_confacronym_tl
+\tl_gset:Nn \g__ac_confacronym_tl { {\itshape Missing~conference~acronym!} }
+\tl_new:N   \g__ac_confdate_tl
+\tl_gset:Nn \g__ac_confdate_tl    { {\itshape Missing~conference~date!}    }
+\tl_new:N   \g__ac_confcity_tl
+\tl_gset:Nn \g__ac_confcity_tl    { {\itshape Missing~conference~city!}    }
+\tl_new:N   \g__ac_paperno_tl
+\tl_gset:Nn \g__ac_papernumber_tl { Add~paper~number                       }
+\tl_new:N   \g__ac_papertitle_tl
+\tl_gset:Nn \g__ac_papertitle_tl  { {\itshape Missing~title!}  }
 
-\NewDocumentCommand\ConfDate{m}{\gdef\@ConfDate{#1,\space}}
-\providecommand\@ConfDate{\space}
+\NewDocumentCommand\ConfName{m}{ \tl_gset:Nn \g__ac_confname_tl { \tl_trim_spaces:n {#1} } }
+\NewDocumentCommand\ConfDate{m}{ \tl_gset:Nn \g__ac_confdate_tl { \tl_trim_spaces:n {#1} } }
+\NewDocumentCommand\ConfCity{m}{ \tl_gset:Nn \g__ac_confcity_tl { \tl_trim_spaces:n {#1} } }
+\NewDocumentCommand\ConfAcronym{m}{ 
+	\tl_gset:Nn \g__ac_confacronym_tl { \tl_trim_spaces:n \str_uppercase:f {#1} }
+}
+\NewDocumentCommand\PaperNo{m}{  
+	\tl_gset:Nn \g__ac_papernumber_tl { \tl_trim_spaces:n \str_uppercase:f {#1} } 
+}
 
-\NewDocumentCommand\ConfCity{m}{\gdef\@ConfCity{#1}}
-\providecommand\@ConfCity{\hbox{ }}
+\cs_new:Nn \__asmeconf_papertitle:n {
+	\tl_gset:Nn \g__ac_papertitle_tl { \tl_trim_spaces:n {#1} }
+	\gdef\@title{#1}% added 2024/07/28, use \gdef for consistency with other latex usage
+}
 
-\NewDocumentCommand\PaperNo{m}{\gdef\@PaperNo{#1}}
-\providecommand\@PaperNo{\protect\phantom{NO.}}
-
-\NewDocumentCommand\PaperTitle{m}{%
-	\gdef\@PaperTitle{#1}%
-	\gdef\@title{#1}% added 2024/07/28
+\cs_new_protected:Nn \__asmeconf_nbaseline_skip:n {
+ 	\skip_vertical:n { #1\baselineskip } 
 }
-\providecommand\@PaperTitle{\hbox{ }}
-
-\ExplSyntaxOn
-\NewDocumentCommand\@HeaderTitle{}{%
-	\tag_struct_begin:n{tag=Div, title=Conference~information}
-	{\bfseries\sffamily
-	\parbox{\linewidth}{%
-		\raggedleft
-		\@ConfName\par%
-		\MakeTextUppercase{\@ConfAcronym}\par
-		\@ConfDate\@ConfCity
-    }%
-    \par\tag_struct_end:
-	\vspace*{2\baselineskip}
-	\tag_struct_begin:n{tag=Div, title=Paper~number}
-	\parbox{\linewidth}{\raggedleft\LARGE
-		\MakeTextUppercase{\@PaperNo}%
-    }%
-    \par\tag_struct_end:
-	\vspace*{3\baselineskip}
-	\tag_struct_begin:n{tag=Title}
+\cs_new:Nn \__asmeconf_headertitle: {
+	\begingroup\bfseries\sffamily
+    \ifasmeconf at nohead
+		\__asmeconf_nbaseline_skip:n {5}
+		{ \LARGE \hbox:n { } \__asmeconf_nbaseline_skip:n {1} }
+		\__asmeconf_nbaseline_skip:n {3}
+	\else
+    	\tag_struct_begin:n{tag=Div, title=Conference~information}
+    	\parbox{\linewidth}{
+    		\raggedleft
+    		\g__ac_confname_tl \par
+    		\g__ac_confacronym_tl \par
+    		\g__ac_confdate_tl ,\c_space_tl \g__ac_confcity_tl
+        }
+        \par\tag_struct_end:
+    	\__asmeconf_nbaseline_skip:n {2}
+    	\tag_struct_begin:n{tag=Div, title=Paper~number}
+    	\parbox{\linewidth}{\raggedleft\LARGE
+    		\g__ac_papernumber_tl
+        }
+        \par\tag_struct_end:
+    	\__asmeconf_nbaseline_skip:n {3}
+	    
+   	\fi
+	\tag_struct_begin:n{tag=Title, title=Title}
 	\parbox{\linewidth}{\mathversion{sansbold}\centering{\large
-		\MakeTextUppercase{\@PaperTitle}\par}}%%% <=== extra \par to make font leading stick. See adjustment in \MakeTitle
+		\MakeTextUppercase{ \g__ac_papertitle_tl }\par}% <=== Extra \par makes the font leading stick. See adjustment in \MakeTitle. 
+	}												   %      Using \MakeTextUppercase to enable \NoCaseChange when it's needed.
+	\endgroup
     \tag_struct_end:
-    }%
 }
-\ExplSyntaxOff
 
 %%%%%%%%%%%   Author and affiliation block  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 %% Inline author style resets the footnote mark; save the definitions so we can restore them later
-\let\savethefootnote\thefootnote
-\let\savemakefnmark\@makefnmark
+\cs_gset_eq:NN \savethefootnote \thefootnote
+\cs_gset_eq:NN \savemakefnmark  \@makefnmark
 
 %% Flag for joint first authors (two or more)
 \newif\ifac at JA\ac at JAfalse
@@ -1485,22 +1556,44 @@
 
 \NewDocumentCommand{\JointFirstAuthor}{}{%
 	\global\ac at JAtrue%
-  	$\bm{^\dagger}$%
+    \ifac at fontspec
+      	$^{\textbf{\textrm{\dagger}}}$\ignorespaces
+    \else
+      	$\bm{^\dagger}$\ignorespaces % \ignorespaces is ignored due to code for commas in successive footnotes, below.
+    \fi
 }
 %% Flag for corresponding author (expecting just one, but if two enter both email addresses and flag both authors)
 \newif\ifac at CA\ac at CAfalse
 
+% backward compatibility
+\cs_if_exist:NF \str_case_e:enTF { \cs_generate_variant:Nn \str_case_e:nnTF {enTF} }
+
 \NewDocumentCommand\CorrespondingAuthor{>{\TrimSpaces} m}{% Revised 2020/12/29 (make CA email mandatory but possibly empty); edit 2025/01/27
-   \global\ac at CAtrue%
-   \IfBlankTF{#1}{%
-         \gdef\@CAsep{\relax}%
-         \gdef\@CAemail{\relax}%
+	\global\ac at CAtrue%
+	\tl_if_blank:nTF {#1} {
+         \gdef\ac at CAsep{\relax}%
+         \gdef\ac at CAemail{\relax}%
          }{%
-         \gdef\@CAsep{:\space}%
-         \gdef\@CAemail{#1}%
-   }%
-   $\bm{^\ast}$\ignorespaces % \ignorespaces is ignored due to code for commas in successive footnotes, below.
+         \gdef\ac at CAsep{:\space}%
+         \gdef\ac at CAemail{#1}%
+	}%
+	\ifac at fontspec % modified 2025/03/16 to deal with occasional tofu; likely to need additional options for other scripts
+		\str_case_e:enTF { \g__asmeconf_main_str }
+		{
+			{greek}{} {russian}{} {ukrainian}{} {serbianc}{} {macedonian}{} {belarusian}{} {bulgarian}{}
+		}
+		{ {\mathversion{bold}$^{\ast}$}\ignorespaces }
+		{ \ifac at japanese% shouldn't be needed, but it is...2025/03/26
+				\mathversion{bold}$^{\ast}$\ignorespaces
+			\else
+				$^{\textbf{\textrm{\ast}}}$\ignorespaces 
+			\fi
+		}
+ 	\else
+      	$\bm{^\ast}$\ignorespaces %\ignorespaces is ignored due to code for commas in successive footnotes, below.
+	\fi
 }
+\ExplSyntaxOff
 
 %%%% option to use the traditional grid layout of authors or the inline style
 
@@ -1560,14 +1653,15 @@
         \tl_set:Nn \l_tmpa_tl { #1 }
         \tl_map_inline:Nn \l_tmpa_tl
           {
-          \int_if_zero:nTF { \l__asmeconf_affil_flag_int } 
+%          \int_if_zero:nTF { \l__asmeconf_affil_flag_int }  % not added to expl3 until 2023-05-17
+		   \int_compare:nTF { \l__asmeconf_affil_flag_int = 0 } 
             {
             \tl_if_eq:nnT { ##1 } { \affil } { \int_incr:N \l__asmeconf_affil_flag_int  }
             }{
               \tl_map_break:n { 
-                \tl_if_empty:nTF { ##1 }
+                \tl_if_blank:nTF { ##1 }
                 { 
-                \msg_error:nn { \ClassName } { missingaffilno } 
+                	\msg_error:nn { \ClassName } { missingaffilno } 
                 }{
                   	\int_gset:Nn \g__affiltagno_int { ##1 } \int_set:Nn \l__asmeconf_affil_flag_int {0} 
                 }
@@ -1576,7 +1670,7 @@
           }
       }
     \NewDocumentCommand\affil{m}{}
-	\msg_new:nnn { \ClassName } { missingaffilno } { Missing~number~in~\affil~tag! }
+	\msg_new:nnn { \ClassName } { missingaffilno } { Missing~number~in~\affil{..}~tag! }
       
     \NewDocumentCommand\SetAffiliation{mm}{
     	\__asmeconf_affiliation:nn {#1}{#2}
@@ -1583,10 +1677,10 @@
 		}
 	\cs_new_protected:Nn \__asmeconf_affiliation:nn
     	{
- 		\seq_gset_item:Nnn  \g__asmeconf_affiliation_seq {#1} {#2}
+ 		\seq_gset_item:Nnn  \g__asmeconf_affiliation_seq {#1} {#2} % this command added to L3 2021/04/29
     	}
     
-    \NewDocumentCommand\@SetAuthorBlock{}{%
+	\cs_new:Nn \__asmeconf_setauthorblock: {
     	\int_zero_new:N \l__asmeconf_authorno_int
 		\int_zero_new:N \l__asmeconf_authoraffilno_int
 	    \tl_clear:N     \l_tmpa_tl
@@ -1688,10 +1782,10 @@
 			{ For~authors~at~the~same~institution,\ you~may~put~more~than~one~name~above~a~single~address.\ 
 			Else~use~the~in-line~author~style,\ not~the~[grid]~option.} 
 
-    % backward compatibility 
+    % backward compatibility
     \cs_if_exist:NF \tl_set:Ne  { \cs_generate_variant:Nn \tl_set:Nn {Ne} }
 
-    \NewDocumentCommand\@ConstructAuthorBlock{}{%
+	\cs_new:Nn \__asmeconf_constructauthorblock: {
      	\int_compare:nNnT { \g__asmeconf_authorcnt_int } >  { 3 } {
    			\coffin_gjoin:NnnNnnnn \g__asmeconf_firstrowauthorblock_coffin { hc } { b } \g__asmeconf_secondrowauthorblock_coffin { hc } { t } { 0pt } { -1.5\baselineskip } 
         }
@@ -1708,6 +1802,9 @@
         \__asmeconf_concataut:
         \cs_gset:Npn \@author { \tl_use:N \g_asmeconf_authors_tl }
     }
+
+    % backward compatibility
+    \cs_if_exist:NF \seq_item:NV  { \cs_generate_variant:Nn \seq_item:Nn {NV} }
     
     % build comma-separated list of author names
  	\tl_new:N     \g_asmeconf_authors_tl
@@ -1730,22 +1827,20 @@
     		}
 			%\iow_term:e { Authors:~ \tl_use:N \g_asmeconf_authors_tl } % diagnostic only		
     }
-
-    \ExplSyntaxOff 
-   
+	\ExplSyntaxOff
+	   
 %%% otherwise use the new compact layout of authors
 \else
-	%%%%%%%%%%%%%%%%%%%%%%   New author layout (inline)  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+	%%%%%%%%%%%%%%%%%%%%%%   Inline author layout  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 	%%
 	%% converted to expl3, 17 August 2024; revised 27 January 2025
-    
-    \ExplSyntaxOn 
-
+	
+	\ExplSyntaxOn
     \coffin_new:N \g__asmeconf_authorblock_coffin
     \coffin_new:N \g__asmeconf_affiliationblock_coffin
     \coffin_new:N \g__asmeconf_affiliationsblock_coffin
 
-    \cs_if_exist:NF \cs_gset:Npe  { \cs_generate_variant:Nn \cs_gset:Npn {Npe} }     
+    \cs_if_exist:NF \cs_gset:Npe  { \cs_generate_variant:Nn \cs_gset:Npn {Npe} } % needed through 2023    
 	\tl_new:N \asmeconf_authors_tl
     \NewDocumentCommand\SetAuthors{m}{
 		\tl_gset:Nn \g_asmeconf_formattedauthors_tl 
@@ -1753,7 +1848,7 @@
 	         \centering\sffamily\bfseries #1
 	     }
 	         \__asmeconf_striptokens:n {#1}
-	  		 \cs_gset:Npe \@author { \tl_use:N \g_asmeconf_authors_tl }% set \@author = list of authors, 2024/07/31
+	  		 \cs_gset:Npe \@author { \tl_use:N \g_asmeconf_authors_tl } % set \@author = list of authors, 2024/07/31
     }
 
     %% strip \affil{..}, \JointFirstAuthor, \CorrespondingAuthor{...} from argument
@@ -1770,8 +1865,9 @@
     
     \def\@makefnmark{\hbox{\@textsuperscript{\sffamily\@thefnmark}}}%
     \seq_gclear_new:N \g__asmeconf_affiliations_seq
-    \NewDocumentCommand\SetAffiliation{mm}{%
-       \ifblank{#1}{
+    \NewDocumentCommand\SetAffiliation{mm}{
+       \tl_if_blank:nTF {#1}
+       {
        		\seq_gput_right:Nn \g__asmeconf_affiliations_seq { \centering\sffamily \tl_trim_spaces:n{ #2 } }%
 		}{
 		    \seq_gput_right:Nn \g__asmeconf_affiliations_seq { \footnotemark[#1]\centering\sffamily \tl_trim_spaces:n{ #2 } }%
@@ -1779,11 +1875,15 @@
 	}
             
 	%%% Affiliation mark
-    \NewDocumentCommand{\affil}{>{\TrimSpaces} m}{%
-    	\ifblank{#1}{%
-			\ClassWarning{\ClassName}{Empty affiliation tag}%
+		\msg_new:nnn { \ClassName } { missingaffilno } { Missing~number~in~an~\affil~tag! }
+        \NewDocumentCommand{\affil}{>{\TrimSpaces} m}{
+       \tl_if_blank:nTF {#1}
+       {
+			\msg_warning:nn { \ClassName } { missingaffilno } 
 			\@gobble% addresses modification for commas
-        }{\bfseries\footnotemark[#1]}%
+        }{
+        	\bfseries\footnotemark[#1]
+		}
     }
           
  	%%% to deal with sequential notes as, e.g., "1,*", or "1,2,*" %%%%%%%%%%
@@ -1807,24 +1907,24 @@
 	%%% 
 	%% next construct author/affiliation coffin 
 	\int_zero_new:N   \g_asmeconf_count_affil_int
-    \NewDocumentCommand\@SetAuthorBlock{}{%
-    \leavevmode
-    \tagpdfparaOff % this pair of tagpdf macros may change over time, 2025/01/28
-       \vcoffin_gset:Nnn \g__asmeconf_authorblock_coffin {\textwidth} % switched to vcoffin 2024/10/16 to accommodate tagging
-       		{ \tl_use:N \g_asmeconf_formattedauthors_tl }
-		\seq_remove_duplicates:N \g__asmeconf_affiliations_seq
-		\int_gset:Nn \g_asmeconf_count_affil_int {\seq_count:N \g__asmeconf_affiliations_seq}
-		\int_zero_new:N  \l__asmeconf_affilno_int
-		\int_until_do:nNnn { \l__asmeconf_affilno_int } > { \g_asmeconf_count_affil_int } {
-	        \vcoffin_set:Nnn \g__asmeconf_affiliationblock_coffin { \textwidth } {
-	        	\seq_item:Nn \g__asmeconf_affiliations_seq { \l__asmeconf_affilno_int }
-        	}
-        \coffin_gjoin:NnnNnnnn \g__asmeconf_affiliationsblock_coffin { hc } { b } \g__asmeconf_affiliationblock_coffin {hc } { t } { 0pt} { -1pt }
-        \int_incr:N \l__asmeconf_affilno_int
-		}
-       \coffin_gjoin:NnnNnnnn \g__asmeconf_authorblock_coffin { hc } { b } \g__asmeconf_affiliationsblock_coffin {hc } { t } { 0pt} { -\baselineskip } 
-       \coffin_typeset:Nnnnn  \g__asmeconf_authorblock_coffin { l }{ T }{ 0pt }{ 0pt }
-	\tagpdfparaOn\par
+	\cs_new:Nn \__asmeconf_constructauthorblock: {
+        \leavevmode
+        \tagpdfparaOff % this pair of tagpdf macros may change over time, 2025/01/28
+           \vcoffin_gset:Nnn \g__asmeconf_authorblock_coffin {\textwidth} % switched to vcoffin to accommodate tagging, 2024/10/16 
+           		{ \tl_use:N \g_asmeconf_formattedauthors_tl }
+    		\seq_remove_duplicates:N \g__asmeconf_affiliations_seq
+    		\int_gset:Nn \g_asmeconf_count_affil_int {\seq_count:N \g__asmeconf_affiliations_seq}
+    		\int_zero_new:N  \l__asmeconf_affilno_int
+    		\int_until_do:nNnn { \l__asmeconf_affilno_int } > { \g_asmeconf_count_affil_int } {
+    	        \vcoffin_set:Nnn \g__asmeconf_affiliationblock_coffin { \textwidth } {
+    	        	\seq_item:Nn \g__asmeconf_affiliations_seq { \l__asmeconf_affilno_int }
+            	}
+            \coffin_gjoin:NnnNnnnn \g__asmeconf_affiliationsblock_coffin { hc } { b } \g__asmeconf_affiliationblock_coffin {hc } { t } { 0pt} { -1pt }
+            \int_incr:N \l__asmeconf_affilno_int
+    		}
+           \coffin_gjoin:NnnNnnnn \g__asmeconf_authorblock_coffin { hc } { b } \g__asmeconf_affiliationsblock_coffin {hc } { t } { 0pt} { -\baselineskip } 
+           \coffin_typeset:Nnnnn  \g__asmeconf_authorblock_coffin { l }{ T }{ 0pt }{ 0pt }
+    	\tagpdfparaOn\par
     }
     \ExplSyntaxOff
 \fi % end if...else for grid
@@ -1833,37 +1933,39 @@
 
 %%%% Make the title and author section
 \ExplSyntaxOn
-\NewDocumentCommand\MakeTitlePage{}{%
+
+\cs_new:Nn \__asmeconf_maketitlepage: { % 2025/03/11, removed \MakeTitlePage
     \twocolumn[
-      	  \@HeaderTitle 
-          \vspace*{2\baselineskip}
+		  \__asmeconf_headertitle:
+          \__asmeconf_nbaseline_skip:n {2}
 	      \par\tag_struct_begin:n{tag=Div, title=Author~and~affilation}
           \ifasmeconf at grid
-             \@SetAuthorBlock\@ConstructAuthorBlock
+          	\__asmeconf_setauthorblock:
+			\__asmeconf_constructauthorblock: 
           \else
-             \@SetAuthorBlock
+			\__asmeconf_constructauthorblock:
           \fi
-          \vspace*{3\baselineskip} 
+          \__asmeconf_nbaseline_skip:n {3}
     ]
-    \let\@makefnmark\savemakefnmark% restore footnote mark font
-    \renewcommand*{\thefootnote}{\fnsymbol{footnote}}
+	\cs_gset_eq:NN \@makefnmark \savemakefnmark % restore footnote mark font
+    \cs_gset:Npn \thefootnote { \fnsymbol{footnote} }
     \ifac at JA
         \footnotetext[2]{\JAwords}
     \fi
     \ifac at CA
-        \footnotetext[1]{\CAwords\@CAsep\@CAemail}
+        \footnotetext[1]{\CAwords\ac at CAsep\ac at CAemail}
     \fi
     \par\tag_struct_end:
-    \let\thefootnote\savethefootnote% restore footnote symbol
+	\cs_gset_eq:NN \thefootnote \savethefootnote % restore footnote symbol
 }
-\ExplSyntaxOff
 
-%%%%%%%%%%
 
-%% Provide compatibility with titling commands from standard LaTeX article class
-\RenewDocumentCommand{\maketitle}{}{\MakeTitlePage}
-\RenewDocumentCommand{\title}{}{\PaperTitle}
+%% Redefine titling commands from standard LaTeX article class
+\RenewDocumentCommand{\maketitle}{}{ \__asmeconf_maketitlepage:    }
+\RenewDocumentCommand{\title}{m}{    \__asmeconf_papertitle:n {#1} }
 
+\ExplSyntaxOff
+
 \RenewDocumentCommand{\thanks}{m}{\relax}% disabling this standard command (inconsistent with this format)
 
 %% \versionfootnote produces an unmarked footnote about the version date, to replace "date"
@@ -1878,106 +1980,258 @@
 \RenewDocumentCommand{\date}{m}{\versionfootnote{#1}}% if one wants to use \date this same way; fixed bug 2021/01/14
 
 
+%%%%%%%%%%%%%%  THE REST OF THE CODE DEALS WITH FONTS  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
 %%%%%%%%%%%%%%  Sans serif upright greek and sans mathversion  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% revised 2025/03/23
+%
+\ifac at fontspec
+    \IfFontExistsTF{LeteSansMath-Bold}
+    {
+        \newfontface{\letesansmath}{LeteSansMath}[
+			Scale=MatchUppercase,
+        	NFSSFamily=lsm, 
+			BoldFont = *-Bold, 
+			Extension=.otf,
+		]
+        \DeclareSymbolFont{lsmgreek}{TU}{lsm}{m}{n}
+        \SetSymbolFont{lsmgreek}{normal}{TU}{lsm}{m}{n}
+        \SetSymbolFont{lsmgreek}{bold}{TU}{lsm}{b}{n}
+        \def\ac at sansgreek{\symlsmgreek}
+    }{
+        \newfontface{\firamath}{FiraMath-Regular}[
+			Scale=MatchUppercase,
+        	NFSSFamily=fsm, 
+			Extension=.otf, 
+        	BoldFont=*, 
+			BoldFeatures = {FakeBold=4}]
+        \DeclareSymbolFont{fsmgreek}{TU}{fsm}{m}{n}
+        \SetSymbolFont{fsmgreek}{normal}{TU}{fsm}{m}{n}
+        \SetSymbolFont{fsmgreek}{bold}{TU}{fsm}{b}{n}
+        \def\ac at sansgreek{\symfsmgreek}
+    }
+    % uppercase greek
+    \Umathchardef\sfAlpha="0   \ac at sansgreek "0391
+    \Umathchardef\sfBeta="0    \ac at sansgreek "0392
+    \Umathchardef\sfGamma="0   \ac at sansgreek "0393
+    \Umathchardef\sfDelta="0   \ac at sansgreek "0394
+    \Umathchardef\sfEpsilon="0 \ac at sansgreek "0395
+    \Umathchardef\sfZeta="0    \ac at sansgreek "0396
+    \Umathchardef\sfEta="0     \ac at sansgreek "0397
+    \Umathchardef\sfTheta="0   \ac at sansgreek "0398
+    \Umathchardef\sfIota="0    \ac at sansgreek "0399
+    \Umathchardef\sfKappa="0   \ac at sansgreek "039A
+    \Umathchardef\sfLambda="0  \ac at sansgreek "039B
+    \Umathchardef\sfMu="0      \ac at sansgreek "039C
+    \Umathchardef\sfNu="0      \ac at sansgreek "039D
+    \Umathchardef\sfXi="0      \ac at sansgreek "039E
+    \Umathchardef\sfOmicron="0 \ac at sansgreek "039F
+    \Umathchardef\sfPi="0      \ac at sansgreek "03A0
+    \Umathchardef\sfRho="0     \ac at sansgreek "03A1
+    \Umathchardef\sfSigma="0   \ac at sansgreek "03A3
+    \Umathchardef\sfTau="0     \ac at sansgreek "03A4
+    \Umathchardef\sfUpsilon="0 \ac at sansgreek "03A5
+    \Umathchardef\sfPhi="0     \ac at sansgreek "03A6
+    \Umathchardef\sfChi="0     \ac at sansgreek "03A7
+    \Umathchardef\sfPsi="0     \ac at sansgreek "03A8
+    \Umathchardef\sfOmega="0   \ac at sansgreek "03A9
+    %
+    % lowercase greek, upright forms selected
+    \Umathchardef\sfalpha="0   \ac at sansgreek "03B1 
+    \Umathchardef\sfbeta="0    \ac at sansgreek "03B2 
+    \Umathchardef\sfgamma="0   \ac at sansgreek "03B3 
+    \Umathchardef\sfdelta="0   \ac at sansgreek "03B4 
+    \Umathchardef\sfvarepsilon="0 \ac at sansgreek "03B5 % see note below
+    \Umathchardef\sfzeta="0    \ac at sansgreek "03B6 
+    \Umathchardef\sfeta="0     \ac at sansgreek "03B7 
+    \Umathchardef\sftheta="0   \ac at sansgreek "03B8 
+    \Umathchardef\sfiota="0    \ac at sansgreek "03B9 
+    \Umathchardef\sfkappa="0   \ac at sansgreek "03BA 
+    \Umathchardef\sflambda="0  \ac at sansgreek "03BB 
+    \Umathchardef\sfmu="0      \ac at sansgreek "03BC 
+    \Umathchardef\sfnu="0      \ac at sansgreek "03BD 
+    \Umathchardef\sfxi="0      \ac at sansgreek "03BE 
+    \Umathchardef\sfomicron="0 \ac at sansgreek "03BF 
+    \Umathchardef\sfpi="0      \ac at sansgreek "03C0 
+    \Umathchardef\sfrho="0     \ac at sansgreek "03C1 
+    \Umathchardef\sfvarsigma="0 \ac at sansgreek "03C2 
+    \Umathchardef\sfsigma="0   \ac at sansgreek "03C3 
+    \Umathchardef\sftau="0     \ac at sansgreek "03C4 
+    \Umathchardef\sfupsilon="0 \ac at sansgreek "03C5 
+    \Umathchardef\sfphi="0     \ac at sansgreek "03C6 
+    \Umathchardef\sfchi="0     \ac at sansgreek "03C7 
+    \Umathchardef\sfpsi="0     \ac at sansgreek "03C8 
+    \Umathchardef\sfomega="0   \ac at sansgreek "03C9
+    %
+    % character variants
+    \Umathchardef\sfvartheta="0  \ac at sansgreek "03D1
+    \Umathchardef\sfvarphi="0    \ac at sansgreek "03D5
+    \Umathchardef\sfvarpi="0     \ac at sansgreek "03D6 
+    \Umathchardef\sfvarkappa="0  \ac at sansgreek "03F0 
+    \Umathchardef\sfvarrho="0    \ac at sansgreek "03F1 
+    \Umathchardef\sfvarTheta="0  \ac at sansgreek "03F4
+    \Umathchardef\sfepsilon="0   \ac at sansgreek "03F5 % this is the lunate form
+    %
+    % uppercase bold greek
+    \Umathchardef\sfbfAlpha="0   \ac at sansgreek "1D6A8
+    \Umathchardef\sfbfBeta="0    \ac at sansgreek "1D6A9
+    \Umathchardef\sfbfGamma="0   \ac at sansgreek "1D6AA
+    \Umathchardef\sfbfDelta="0   \ac at sansgreek "1D6AB
+    \Umathchardef\sfbfEpsilon="0 \ac at sansgreek "1D6AC
+    \Umathchardef\sfbfZeta="0    \ac at sansgreek "1D6AD
+    \Umathchardef\sfbfEta="0     \ac at sansgreek "1D6AE
+    \Umathchardef\sfbfTheta="0   \ac at sansgreek "1D6AF
+    \Umathchardef\sfbfIota="0    \ac at sansgreek "1D6B0
+    \Umathchardef\sfbfKappa="0   \ac at sansgreek "1D6B1
+    \Umathchardef\sfbfLambda="0  \ac at sansgreek "1D6B2
+    \Umathchardef\sfbfMu="0      \ac at sansgreek "1D6B3
+    \Umathchardef\sfbfNu="0      \ac at sansgreek "1D6B4
+    \Umathchardef\sfbfXi="0      \ac at sansgreek "1D6B5
+    \Umathchardef\sfbfOmicron="0 \ac at sansgreek "1D6B6
+    \Umathchardef\sfbfPi="0      \ac at sansgreek "1D6B7
+    \Umathchardef\sfbfRho="0     \ac at sansgreek "1D6B8
+    \Umathchardef\sfbfvarTheta="0 \ac at sansgreek "1D6B9
+    \Umathchardef\sfbfSigma="0   \ac at sansgreek "1D6BA
+    \Umathchardef\sfbfTau="0     \ac at sansgreek "1D6BB
+    \Umathchardef\sfbfUpsilon="0 \ac at sansgreek "1D6BC
+    \Umathchardef\sfbfPhi="0     \ac at sansgreek "1D6BD
+    \Umathchardef\sfbfChi="0     \ac at sansgreek "1D6BE
+    \Umathchardef\sfbfPsi="0     \ac at sansgreek "1D6BF
+    \Umathchardef\sfbfOmega="0   \ac at sansgreek "1D6C0
+	%
+    % lowercase bold greek, upright forms selected
+    \Umathchardef\sfbfalpha="0   \ac at sansgreek "1D6C2
+    \Umathchardef\sfbfbeta="0    \ac at sansgreek "1D6C3
+    \Umathchardef\sfbfgamma="0   \ac at sansgreek "1D6C4 
+    \Umathchardef\sfbfdelta="0   \ac at sansgreek "1D6C5
+    \Umathchardef\sfbfvarepsilon="0 \ac at sansgreek "1D6C6 % see note below
+    \Umathchardef\sfbfzeta="0    \ac at sansgreek "1D6C7
+    \Umathchardef\sfbfeta="0     \ac at sansgreek "1D6C8
+    \Umathchardef\sfbftheta="0   \ac at sansgreek "1D6C9
+    \Umathchardef\sfbfiota="0    \ac at sansgreek "1D6CA
+    \Umathchardef\sfbfkappa="0   \ac at sansgreek "1D6CB
+    \Umathchardef\sfbflambda="0  \ac at sansgreek "1D6CC
+    \Umathchardef\sfbfmu="0      \ac at sansgreek "1D6CD
+    \Umathchardef\sfbfnu="0      \ac at sansgreek "1D6CE
+    \Umathchardef\sfbfxi="0      \ac at sansgreek "1D6CF
+    \Umathchardef\sfbfomicron="0 \ac at sansgreek "1D6D0
+    \Umathchardef\sfbfpi="0      \ac at sansgreek "1D6D1
+    \Umathchardef\sfbfrho="0     \ac at sansgreek "1D6D2
+    \Umathchardef\sfbfvarsigma="0 \ac at sansgreek "1D6D3
+    \Umathchardef\sfbfsigma="0   \ac at sansgreek "1D6D4
+    \Umathchardef\sfbftau="0     \ac at sansgreek "1D6D5
+    \Umathchardef\sfbfupsilon="0 \ac at sansgreek "1D6D6
+    \Umathchardef\sfbfphi="0     \ac at sansgreek "1D6D7
+    \Umathchardef\sfbfchi="0     \ac at sansgreek "1D6D8
+    \Umathchardef\sfbfpsi="0     \ac at sansgreek "1D6D9
+    \Umathchardef\sfbfomega="0   \ac at sansgreek "1D6DA    
+	%
+    % character variants, bold
+    \Umathchardef\sfbfepsilon="0  \ac at sansgreek "1D6DC % this is the lunate form
+    \Umathchardef\sfbfvartheta="0 \ac at sansgreek "1D6DD
+    \Umathchardef\sfbfvarkappa="0 \ac at sansgreek "1D6DE 
+    \Umathchardef\sfbfvarphi="0   \ac at sansgreek "1D6DF
+    \Umathchardef\sfbfvarrho="0   \ac at sansgreek "1D6E0
+	\Umathchardef\sfbfvarpi="0    \ac at sansgreek "1D6E1
+    %
+\else
+    %% Provide sans-serif *upright* Greek letters, following a suggestion by Michael Sharpe (March 2019).
+    %% Following Sharpe's newtxsf implementation of the STIX fonts, under the LaTeX Project Public License.
+    %% (Note that \mathversion{sansbold} provides sans-serif *italic* Greek letters.) Various edits 2021/01/25
+    
+    \DeclareSymbolFont{lettersAB}{U}{ntxsfmia}{m}{it}
+    \SetSymbolFont{lettersAB}{normal}{U}{ntxsfmia}{m}{it}
+    \SetSymbolFont{lettersAB}{bold}{U}{ntxsfmia}{b}{it}
+    \SetSymbolFont{lettersAB}{sansbold}{U}{ntxsfmia}{b}{it}% added 2021/01/25, to get this bold in captions, etc.
+    \DeclareFontSubstitution{U}{ntxsfmia}{m}{it}
+    
+    \DeclareMathSymbol{\sfGamma}{\mathalpha}{lettersAB}{0}% adjust to avoid overwriting newtxmath commands, 2021/01/25
+    \DeclareMathSymbol{\sfDelta}{\mathalpha}{lettersAB}{1}
+    \DeclareMathSymbol{\sfTheta}{\mathalpha}{lettersAB}{2}
+    \DeclareMathSymbol{\sfLambda}{\mathalpha}{lettersAB}{3}
+    \DeclareMathSymbol{\sfXi}{\mathalpha}{lettersAB}{4}
+    \DeclareMathSymbol{\sfPi}{\mathalpha}{lettersAB}{5}
+    
+    \DeclareMathSymbol{\sfSigma}{\mathalpha}{lettersAB}{6}
+    \DeclareMathSymbol{\sfUpsilon}{\mathalpha}{lettersAB}{7}
+    \DeclareMathSymbol{\sfPhi}{\mathalpha}{lettersAB}{8}
+    \DeclareMathSymbol{\sfPsi}{\mathalpha}{lettersAB}{9}
+    \DeclareMathSymbol{\sfOmega}{\mathalpha}{lettersAB}{10}
+    
+    \DeclareMathSymbol{\sfalpha}{\mathalpha}{lettersAB}{11}
+    \DeclareMathSymbol{\sfbeta}{\mathalpha}{lettersAB}{12}
+    \DeclareMathSymbol{\sfgamma}{\mathalpha}{lettersAB}{13}
+    \DeclareMathSymbol{\sfdelta}{\mathalpha}{lettersAB}{14}
+    \DeclareMathSymbol{\sfepsilon}{\mathalpha}{lettersAB}{15}
+    
+    \DeclareMathSymbol{\sfzeta}{\mathalpha}{lettersAB}{16}
+    \DeclareMathSymbol{\sfeta}{\mathalpha}{lettersAB}{17}
+    \DeclareMathSymbol{\sftheta}{\mathalpha}{lettersAB}{18}
+    \DeclareMathSymbol{\sfiota}{\mathalpha}{lettersAB}{19}
+    \DeclareMathSymbol{\sfkappa}{\mathalpha}{lettersAB}{20}
+    
+    \DeclareMathSymbol{\sflambda}{\mathalpha}{lettersAB}{21}
+    \DeclareMathSymbol{\sfmu}{\mathalpha}{lettersAB}{22}
+    \DeclareMathSymbol{\sfnu}{\mathalpha}{lettersAB}{23}
+    \DeclareMathSymbol{\sfxi}{\mathalpha}{lettersAB}{24}
+    \DeclareMathSymbol{\sfpi}{\mathalpha}{lettersAB}{25}
+    
+    \DeclareMathSymbol{\sfrho}{\mathalpha}{lettersAB}{26}
+    \DeclareMathSymbol{\sfsigma}{\mathalpha}{lettersAB}{27}
+    \DeclareMathSymbol{\sftau}{\mathalpha}{lettersAB}{28}
+    \DeclareMathSymbol{\sfupsilon}{\mathalpha}{lettersAB}{29}
+    \DeclareMathSymbol{\sfphi}{\mathalpha}{lettersAB}{30}
+    
+    \DeclareMathSymbol{\sfchi}{\mathalpha}{lettersAB}{31}
+    \DeclareMathSymbol{\sfpsi}{\mathalpha}{lettersAB}{32}
+    \DeclareMathSymbol{\sfomega}{\mathalpha}{lettersAB}{33}
+    \DeclareMathSymbol{\sfvarepsilon}{\mathalpha}{lettersAB}{34}
+    \DeclareMathSymbol{\sfvartheta}{\mathalpha}{lettersAB}{35}
+    
+    \DeclareMathSymbol{\sfvarpi}{\mathord}{lettersAB}{36}% added these 2021/01/25
+    \DeclareMathSymbol{\sfvarrho}{\mathord}{lettersAB}{37}
+    \DeclareMathSymbol{\sfvarsigma}{\mathord}{lettersAB}{38}
+    \DeclareMathSymbol{\sfvarphi}{\mathord}{lettersAB}{39}
+    \DeclareMathSymbol{\sfitvarkappa}{\mathalpha}{lettersAB}{40}
+    \DeclareMathSymbol{\sfvarkappa}{\mathalpha}{lettersAB}{40}
+    \DeclareMathSymbol{\sfitnabla}{\mathalpha}{lettersAB}{42}
+    \DeclareMathSymbol{\sfnabla}{\mathalpha}{lettersAB}{43}
+    \DeclareMathSymbol{\sfhslash}{\mathalpha}{lettersAB}{52}% this is not upright
+    \DeclareMathSymbol{\sfhbar}{\mathalpha}{lettersAB}{53}%   this is not upright
+    
+    \DeclareMathAccent{\grave}{\mathord}{lettersAB}{254}% added these after bug report 2021/01/24
+    \DeclareMathAccent{\acute}{\mathord}{lettersAB}{255}
+    \DeclareMathAccent{\check}{\mathord}{lettersAB}{186}
+    \DeclareMathAccent{\breve}{\mathord}{lettersAB}{187}
+    \DeclareMathAccent{\bar}{\mathord}{lettersAB}{221}
+    \DeclareMathAccent{\mathring}{\mathord}{lettersAB}{222}
+    \DeclareMathAccent{\hat}{\mathord}{lettersAB}{223}
+    \DeclareMathAccent{\dot}{\mathord}{lettersAB}{224}
+    \DeclareMathAccent{\tilde}{\mathord}{lettersAB}{219}
+    
+    %%% sans math version, potential value with PGFPlots, etc., 2021/01/25 %%%
+    \DeclareMathVersion{sans}
+    \SetSymbolFont{letters}{sans}{OML}{ntxsfmi}{m}{it}
+    \SetSymbolFont{lettersA}{sans}{U}{ntxsfmia}{m}{it}
+    \SetSymbolFont{lettersAB}{sans}{U}{ntxsfmia}{m}{it}
+    \IfFormatAtLeastTF{2016/01/05}{%
+    	\SetSymbolFont{symbols}{sans}{LMS}{ntxsy}{m}{n}
+    	}{\relax}
+    \SetSymbolFont{largesymbols}{sans}{LMX}{ntxexx}{m}{n}
+    \SetSymbolFont{largesymbolsTXA}{sans}{U}{ntxexa}{m}{n}
+    \SetSymbolFont{operators}{sans}{\encodingdefault}{\sfdefault}{m}{n}
+    \SetMathAlphabet{\mathsf}{sans}{\encodingdefault}{\sfdefault}{m}{n}% make upright 2021/01/31.
+\fi
 
-%% Provide sans-serif *upright* Greek letters, following a suggestion by Michael Sharpe (March 2019).
-%% Following Sharpe's newtxsf implementation of the STIX fonts, under the LaTeX Project Public License.
-%% (Note that \mathversion{sansbold} provides sans-serif *italic* Greek letters.) Various edits 2021/01/25
-
-\DeclareSymbolFont{lettersAB}{U}{ntxsfmia}{m}{it}
-\SetSymbolFont{lettersAB}{normal}{U}{ntxsfmia}{m}{it}
-\SetSymbolFont{lettersAB}{bold}{U}{ntxsfmia}{b}{it}
-\SetSymbolFont{lettersAB}{sansbold}{U}{ntxsfmia}{b}{it}% added 2021/01/25, to get this bold in captions, etc.
-\DeclareFontSubstitution{U}{ntxsfmia}{m}{it}
-
-\DeclareMathSymbol{\sfGamma}{\mathalpha}{lettersAB}{0}% adjust to avoid overwriting newtxmath commands, 2021/01/25
-\DeclareMathSymbol{\sfDelta}{\mathalpha}{lettersAB}{1}
-\DeclareMathSymbol{\sfTheta}{\mathalpha}{lettersAB}{2}
-\DeclareMathSymbol{\sfLambda}{\mathalpha}{lettersAB}{3}
-\DeclareMathSymbol{\sfXi}{\mathalpha}{lettersAB}{4}
-\DeclareMathSymbol{\sfPi}{\mathalpha}{lettersAB}{5}
-
-\DeclareMathSymbol{\sfSigma}{\mathalpha}{lettersAB}{6}
-\DeclareMathSymbol{\sfUpsilon}{\mathalpha}{lettersAB}{7}
-\DeclareMathSymbol{\sfPhi}{\mathalpha}{lettersAB}{8}
-\DeclareMathSymbol{\sfPsi}{\mathalpha}{lettersAB}{9}
-\DeclareMathSymbol{\sfOmega}{\mathalpha}{lettersAB}{10}
-
-\DeclareMathSymbol{\sfalpha}{\mathalpha}{lettersAB}{11}
-\DeclareMathSymbol{\sfbeta}{\mathalpha}{lettersAB}{12}
-\DeclareMathSymbol{\sfgamma}{\mathalpha}{lettersAB}{13}
-\DeclareMathSymbol{\sfdelta}{\mathalpha}{lettersAB}{14}
-\DeclareMathSymbol{\sfepsilon}{\mathalpha}{lettersAB}{15}
-
-\DeclareMathSymbol{\sfzeta}{\mathalpha}{lettersAB}{16}
-\DeclareMathSymbol{\sfeta}{\mathalpha}{lettersAB}{17}
-\DeclareMathSymbol{\sftheta}{\mathalpha}{lettersAB}{18}
-\DeclareMathSymbol{\sfiota}{\mathalpha}{lettersAB}{19}
-\DeclareMathSymbol{\sfkappa}{\mathalpha}{lettersAB}{20}
-
-\DeclareMathSymbol{\sflambda}{\mathalpha}{lettersAB}{21}
-\DeclareMathSymbol{\sfmu}{\mathalpha}{lettersAB}{22}
-\DeclareMathSymbol{\sfnu}{\mathalpha}{lettersAB}{23}
-\DeclareMathSymbol{\sfxi}{\mathalpha}{lettersAB}{24}
-\DeclareMathSymbol{\sfpi}{\mathalpha}{lettersAB}{25}
-
-\DeclareMathSymbol{\sfrho}{\mathalpha}{lettersAB}{26}
-\DeclareMathSymbol{\sfsigma}{\mathalpha}{lettersAB}{27}
-\DeclareMathSymbol{\sftau}{\mathalpha}{lettersAB}{28}
-\DeclareMathSymbol{\sfupsilon}{\mathalpha}{lettersAB}{29}
-\DeclareMathSymbol{\sfphi}{\mathalpha}{lettersAB}{30}
-
-\DeclareMathSymbol{\sfchi}{\mathalpha}{lettersAB}{31}
-\DeclareMathSymbol{\sfpsi}{\mathalpha}{lettersAB}{32}
-\DeclareMathSymbol{\sfomega}{\mathalpha}{lettersAB}{33}
-\DeclareMathSymbol{\sfvarepsilon}{\mathalpha}{lettersAB}{34}
-\DeclareMathSymbol{\sfvartheta}{\mathalpha}{lettersAB}{35}
-
-\DeclareMathSymbol{\sfvarpi}{\mathord}{lettersAB}{36}% added these 2021/01/25
-\DeclareMathSymbol{\sfvarrho}{\mathord}{lettersAB}{37}
-\DeclareMathSymbol{\sfvarsigma}{\mathord}{lettersAB}{38}
-\DeclareMathSymbol{\sfvarphi}{\mathord}{lettersAB}{39}
-\DeclareMathSymbol{\sfitvarkappa}{\mathalpha}{lettersAB}{40}
-\DeclareMathSymbol{\sfvarkappa}{\mathalpha}{lettersAB}{40}
-\DeclareMathSymbol{\sfitnabla}{\mathalpha}{lettersAB}{42}
-\DeclareMathSymbol{\sfnabla}{\mathalpha}{lettersAB}{43}
-\DeclareMathSymbol{\sfhslash}{\mathalpha}{lettersAB}{52}% this is not upright
-\DeclareMathSymbol{\sfhbar}{\mathalpha}{lettersAB}{53}%   this is not upright
-
-\DeclareMathAccent{\grave}{\mathord}{lettersAB}{254}% added these after bug report 2021/01/24
-\DeclareMathAccent{\acute}{\mathord}{lettersAB}{255}
-\DeclareMathAccent{\check}{\mathord}{lettersAB}{186}
-\DeclareMathAccent{\breve}{\mathord}{lettersAB}{187}
-\DeclareMathAccent{\bar}{\mathord}{lettersAB}{221}
-\DeclareMathAccent{\mathring}{\mathord}{lettersAB}{222}
-\DeclareMathAccent{\hat}{\mathord}{lettersAB}{223}
-\DeclareMathAccent{\dot}{\mathord}{lettersAB}{224}
-\DeclareMathAccent{\tilde}{\mathord}{lettersAB}{219}
-
-%%% sans math version, potential value with PGFPlots, e.g., not for use in main text. 2021/01/25 %%%
-\DeclareMathVersion{sans}
-\SetSymbolFont{letters}{sans}{OML}{ntxsfmi}{m}{it}
-\SetSymbolFont{lettersA}{sans}{U}{ntxsfmia}{m}{it}
-\SetSymbolFont{lettersAB}{sans}{U}{ntxsfmia}{m}{it}
-\IfFormatAtLeastTF{2016/01/05}{%
-	\SetSymbolFont{symbols}{sans}{LMS}{ntxsy}{m}{n}
-	}{\relax}
-\SetSymbolFont{largesymbols}{sans}{LMX}{ntxexx}{m}{n}
-\SetSymbolFont{largesymbolsTXA}{sans}{U}{ntxexa}{m}{n}
-\SetSymbolFont{operators}{sans}{\encodingdefault}{\sfdefault}{m}{n}
-\SetMathAlphabet{\mathsf}{sans}{\encodingdefault}{\sfdefault}{m}{n}% make upright 2021/01/31.
-
 %%%%%%%%%%%%%%%%%%  Times-like fonts for specific languages  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-\ifpdftex % Under lualatex, babel has problems with the following approach, which assumes that fontspec has not been loaded.
-          % Recommend not to choose the [nofontspec] option.
+\ifac at pdftex
+		% Under lualatex, babel has problems with the following approach, which assumes that fontspec has not been loaded.
+        % Recommend not to choose the [nofontspec] option.
+        % These font options (vietnamese, greek, cyrillic) require LaTeX distributions 2020/02/02 or later.
 	% Several modifications made in response to newtx v1.71, 2022/03/14
 	\ifac at vietnamese
 %
-	\IfFormatAtLeastTF{2020/02/02}{\relax}{%
-	\ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [vietnamese] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/.  Alternatively, delete the class option [vietnamese].}%
-	}
-%
 		\AtBeginDocument{%
 			\let\babel at aux\@gobbletwo % eliminate warnings about missing .fd. Brute force approach, revisit later. 2022/03/14
 			\DeclareFontFamilySubstitution{T5}{\rmdefault}{qtm}  % new in 02/20/2020 format of LaTeX!  Need to test.
@@ -2030,13 +2284,9 @@
         \DeclareFontShape{T5}{qcr}{m}{scsl}{<->sub * qcr/m/scit}{}
     	\endgroup
     \fi
-
+%
     \ifac at greek
 %
-	\IfFormatAtLeastTF{2020/02/02}{\relax}{%
-	\ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [greek] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/.  Alternatively, delete the class option [greek].}%
-	}
-%
     	\AtBeginDocument{%
 			\let\babel at aux\@gobbletwo % eliminate warnings about missing .fd. Brute force approach, revisit later. 2022/03/14
     		\DeclareFontFamilySubstitution{LGR}{\familydefault}{artemisia} % scale these
@@ -2108,10 +2358,6 @@
 
     \ifac at cyrillic
 %
-	\IfFormatAtLeastTF{2020/02/02}{\relax}{%
-	\ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the cyrillic language option with pdflatex, e.g., [russian]}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/.  Alternatively, delete the class option calling a cyrillic-alphabet language.}%
-	}
-%
 	\AtBeginDocument{%
 		\let\babel at aux\@gobbletwo % eliminate warnings about missing .fd. Brute force approach, revisit later. 2022/03/14
 		\DeclareFontFamilySubstitution{T2A}{\familydefault}{PTSerif-TLF}



More information about the tex-live-commits mailing list.