% \iffalse meta-comment % % Package latexbug for use with LaTeX2e % % Copyright 2016-2024 % % The LaTeX3 Project and any individual authors listed elsewhere % in this file. % % This file is part of the Standard LaTeX (separate distribution) % --------------------------------------------------------------- % % It may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2005/12/01 or later. % % This file has the LPPL maintenance status "maintained". % % % \fi % % \title{The \texttt{latexbug} package\thanks{This file % has version number \fileversion, last % revised \filedate.}} % \author{The \LaTeX{} Team} ^^A Frank Mittelbach % \date{\filedate} % % \MaintainedByLaTeXTeam{latex} % % \maketitle % % % \section{Introduction} % % Software has bugs and \LaTeX{} unfortunately is no exception. If % somebody encounters a bug then it helps if that bug gets reported to % the right people so that the bug can be resolved (or a workaround % documented or whatever is most appropriate). The problem is to know % to whom to report the bug. % % The \LaTeX{} Project Team maintains a bug database for its own code % base (which consists of the \LaTeX{} kernel and some packages that % have been written by people in the \LaTeX{} Project % Team). However, the \LaTeX{} universe consists of several thousand % contributed packages maintained by individuals all over the % world. And if a bug happens in one of those packages it doesn't help % anybody if it is dumped at the \LaTeX{} Project's doorstep. % % For one, we can't actually change other people's code even if we are able to % identify the issue. Furthermore we are only a few people and simply % do not have the bandwidth to analyze bugs in other people's work. % % We have therefore written this little package called % \texttt{latexbug} that should help in identifying the rightful % addressee for a bug report. We ask that it will be loaded in any % test file that is intended to be sent to the \LaTeX{} bug database % as part of a bug report. % % The package will determine if the test file is in a suitable state % to be sent to us or if it should be modified first or if it should be % sent to somebody % else because the bug is (likely) to be in code not maintained by the % \LaTeX{} Project Team. % % Bug reports sent to the \LaTeX{} bug database % without that prior verification are likely to % get closed without being looked at at our end in the future. % % % % \section{The user interface} % % The user interface is simple: the package has no option and doesn't % define any new commands to be used. All that is required is that the % package is loaded as the very first step in the test file that shows % the bug --- in other words before the \verb=\documentclass=. % For that reason it % must be loaded using \verb=\RequirePackage= instead of the usual % \verb=\usepackage= that is used in the preamble of a document. % % Thus, a bug report test files should look like this: % \begin{verbatim} % \RequirePackage{latexbug} % <- required first line % % followed by: % \documentclass{article} % or some other class % % followed by: % ... % <- code showing the bug ... % \end{document} % \end{verbatim} % % If the test file runs through (showing the bug) without any % complains for \texttt{latexbug} then the test file is ready to be % sent to the \LaTeX{} bug database. The procedure for uploading and % the location is documented at % \begin{quote} % \texttt{https://www.latex-project.org/bugs/} % \end{quote} % If \texttt{latexbug} does generate an error, however, then this % error needs to be addressed first and the depending on the % resolution the bug report may has to be sent to somebody else. % % An error is generated if the test file makes use of third-party code % that is not maintained by the \LaTeX{} Project Team. For example, if % the file would load \texttt{geometry} and \texttt{footmisc} you % would see the following: % \begin{verbatim} % Package latexbug Error: Third-party file(s) % (latexbug) % (latexbug) This test file uses third-party file(s) % (latexbug) % (latexbug) ============== % (latexbug) geometry.sty -> Hideo Umeki % (latexbug) % (latexbug) footmisc.sty % (latexbug) ============== % (latexbug) % \end{verbatim} % It then continues with advice to remove such third-party code from the % test file. If that is not possible, because the bug goes away if a % package is removed, then the problem is (most likely) with this % package and the bug report should be sent to the maintainer of that % package and not to the \LaTeX{} bug database. % \begin{verbatim} % (latexbug) So you should contact the authors % (latexbug) of these files, not the LaTeX Team! % (latexbug) (Or remove the packages that load % (latexbug) them, if they are not necessary to % (latexbug) exhibit the problem). % \end{verbatim} % To make life somewhat easier \texttt{latexbug} will tell you the % name of the maintainer (if we know it and have added it in) and if % possible also the canonical bug address for the package (like in the % case of \texttt{geometry}). % If we don't have that information, you % need to find it out for yourself by looking at the package % documentation. % % There may be cases where third-party code is essential to exhibit % a bug in core \LaTeX{} code maintained by the the \LaTeX{} Team. The % error text therefore finishes off with the following sentence: % \begin{verbatim} % (latexbug) If you think the bug is in core LaTeX % (latexbug) (as maintained by the LaTeX Team) but % (latexbug) these files are needed to demonstrate % (latexbug) the problem, please continue and mention % (latexbug) this explicitly in your bug report % (latexbug) (with an explanation why you think so). % \end{verbatim} % Please explain your reasoning why you think this is the case in % detail as part of the bug report. % % \vspace*{1ex} % % It is also possible that \texttt{latexbug} doesn't generate an % error, but issues a warning, that it has detected one or more % packages, that have their own bug tracker. In that case the report % should be made in the bug tracker of that package and not in the % \LaTeXe{}, even if it is a package that is mainted by us! % % Other people look these bug tracker to search for known problems and % thus it is best if yours is recorded in the right place. Such a % warning will look like this (we use \texttt{hyperref} as an % example): % \begin{verbatim} % Package latexbug Warning: Special bug tracker! % (latexbug) % (latexbug) This test file uses the following file(s) % (latexbug) % (latexbug) ============== % (latexbug) hyperref.sty -> Report at: % (latexbug) https://github.com/latex3/hyperref/issues % (latexbug) ============== % (latexbug) % (latexbug) Please note that these files have their own % (latexbug) bug tracker and your issue should therefore % (latexbug) be reported in the indicated repository. % (latexbug) % (latexbug) If they are not necessary to exhibit the problem, % (latexbug) remove them from your example and rerun it, % (latexbug) otherwise report the issue in the listed repository. % (latexbug) % (latexbug) If different repositories are listed, try to % (latexbug) select the most appropriate one (but don't worry % (latexbug) too much, if the choice is not clear to you). % \end{verbatim} % % % % \vspace*{1ex} % % \begin{center} % \fbox{\fbox{\parbox{.6\textwidth}{\itshape Thank you for taking % the time to report a bug and prepare a test % file showing it!}}} % \end{center} % % \vspace*{3ex} % % % \subsection{A note on the database content in the package} % % When a document is run through \LaTeX{} it will load a number of % files and bug reports that are to be sent to the \LaTeX{} Team should only % load files that we maintain and not third-party packages. % % The database, if you want to call that, inside \texttt{latexbug} is % simply a comma separated key value list consisting of file names % \texttt{=} maintainer info. Most of the time the maintainer info is % \texttt{us} or \texttt{us*} (the star means we maintain it, but in some % repository other that \texttt{latex2e} --- either \texttt{latex3} (default) or some % other we point to, so the file is fine) or \texttt{ignore} (meaning % we do not maintain it, but it is a file that is likely to appear for % one or the other reason and we should accept such a bug report % nonetheless without giving any warning). % % Any file loaded in the bug report not listed will show up in the % error listing flagged as ``third-party'' code that should be removed % as explained above. % % For a small number of popular third-party packages we have collected % the name of the external maintainer and if available to us some % extra info so that it is easier to send to the rightful addressee if % you encounter a bug in such a third-party package. But to keep this % manageable this is only done for a very small number of the 5000+ % packages out there (though we might add one or the other over time). % % It is however not impossible that we missed one or the other file % that should have been listed as ``maintained by us'' but isn't and % thus incorrectly generates an error. If you run into that problem or % notice an omission of that sort, please send us a bug report or open % an issue at the GitHub source of the package which is located at: % \begin{quote} % \texttt{https://github.com/latex3/latexbug/} % \end{quote} % % % \StopEventually{\PrintIndex\PrintChanges} % % \section{The documentation driver file} % % The next bit of code contains the documentation driver file for % \TeX{}, i.e., the file that will produce the documentation you are % currently reading. It will be extracted from this file by the % \texttt{docstrip} program. % \begin{macrocode} %<*driver> \RequirePackage{latexbug} \documentclass{ltxdoc} \GetFileInfo{latexbug.sty} %\usepackage{geometry,footmisc,hyperref} % uncomment for latexbug error %\usepackage{xparse} % uncomment for latexbug error \EnableCrossrefs %\DisableCrossrefs % Say \DisableCrossrefs if index is ready %\OnlyDescription % Comment out for implementation details \begin{document} \DocInput{latexbug.dtx} \end{document} % % \end{macrocode} % % \section{The implementation} % % \begin{macrocode} %<*package> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{latexbug}[2024/07/16 v1.0p Bug-classification] % \end{macrocode} % % \begin{macro}{\latexbug@empty} % \begin{macro}{\latexbug@us} % \begin{macro}{\latexbug@ustar} % \begin{macro}{\latexbug@ignore} % Fixed text used in checking what actions to take with different files. % \begin{macrocode} \def\latexbug@empty{} \def\latexbug@us{us} \def\latexbug@usstar{us*} \def\latexbug@ignore{ignore} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \end{macro} % % \begin{macro}{\Contact} % A very simple piece of markup, really. % \begin{macrocode} \def\Contact{\MessageBreak \@spaces} % \end{macrocode} % \end{macro} % % The database of packages is set up in a group so we can throw away the % loop command. % \begin{macrocode} \begingroup % \end{macrocode} % % \begin{macro}{\latexbug@loop} % A simple loop set up which reads a known format for the file-to-maintainer % mapping. The trailing space is important (stripping it is not really worth % it for this very limited use case). % \begin{macrocode} \long\def\latexbug@loop #1 = #2 #3, {% spaces matter \global\@namedef{latexbug@@#1}{{#2}{#3}}% \ifx\latexbug@empty#1\else\expandafter\latexbug@loop\fi} % \end{macrocode} % \end{macro} % % A simple database of files. The value \texttt{us} means we accept % bugs for it. We also take bug reports for \texttt{us*} % (expl3 or other repositories we suport) entries, but % they need to go to a different GitHub repository, so are handled separately % (and only show up % if there are no third-party packages). % For the \texttt{latex3/latex3} repository just write \texttt{us*}, for others % one need to specify the full details, e.g., %\begin{verbatim} % hyperref.sty = us* % \Contact https://github.com/latex3/hyperref/issues , %\end{verbatim} % % A value of % \texttt{ignore} means that its not our code, but we understand that it may % show up in legitimate test files and should therefore not trigger an error. % % Any file not in there will trigger an error if loaded and any file % in there with some other value than \texttt{us} or \texttt{ignore} % will also trigger an error displaying the value (which hopefully is % the maintainers name). (Handling for \texttt{us*} means these files may % not show up, depending on the nature of the use case.) % % \begin{quote} \itshape % The database format is somewhat fragile: one needs to have a space on both sides % of the equal sign and before the comma (or one gets a nasty low-level error), % and names can't have % no-ascii characters in them, so they end up crippled (sorry for that). % \end{quote} % % \begin{macrocode} \latexbug@loop %--------------------------------- latexbug.sty = us , regression-test = us , regression-test.tex = us , %--------------------------------- base alltt.sty = us , ansinew.def = us , applemac.def = us , article.cls = us , article.sty = us , ascii.def = us , atbegshi-ltx.sty = us , atveryend-ltx.sty = us , bezier.sty = us , bk10.clo = us , bk11.clo = us , bk12.clo = us , book.cls = us , book.sty = us , cp1250.def = us , cp1252.def = us , cp1257.def = us , cp437.def = us , cp437de.def = us , cp850.def = us , cp852.def = us , cp858.def = us , cp865.def = us , decmulti.def = us , doc-v3beta.sty = us , doc-2016-02-15.sty = us, doc-2021-06-01.sty = us, doc.sty = us , docstrip.tex = us , exscale.sty = us , fix-cm.sty = us , fixltx2e.sty = us , flafter.sty = us , fleqn.clo = us , fleqn.sty = us , fltrace.sty = us , fontenc.sty = us , fontmath.cfg = us , fontmath.ltx = us , fonttext.cfg = us , fonttext.ltx = us , graphpap.sty = us , hyphen.ltx = us , idx.tex = us , ifthen.sty = us , inputenc.sty = us , lablst.tex = us , latex.ltx = us , latex209.def = us , latexrelease.sty = us , latexsym.sty = us , latin1.def = us , latin10.def = us , latin2.def = us , latin3.def = us , latin4.def = us , latin5.def = us , latin9.def = us , lcyenc.dfu = us , leqno.clo = us , leqno.sty = us , letter.cls = us , letter.sty = us , lppl.tex = us , ltluatex.lua = us , ltluatex.lua = us , ltluatex.tex = us , ltluatex.tex = us , ltnews.cls = us , ltxcheck.tex = us , ltxdoc.cls = us , ltxdoc.cfg = us , ltxguide.cls = us , ly1enc.dfu = us , macce.def = us , makeidx.sty = us , minimal.cls = us , newlfont.sty = us , next.def = us , nfssfont.tex = us , oldlfont.sty = us , omlcmm.fd = us , omlcmr.fd = us , omlenc.def = us , omllcmm.fd = us , omscmr.fd = us , omscmsy.fd = us , omsenc.def = us , omsenc.dfu = us , omslcmsy.fd = us , omxcmex.fd = us , omxlcmex.fd = us , openbib.sty = us , ot1cmdh.fd = us , ot1cmfib.fd = us , ot1cmfr.fd = us , ot1cmr.fd = us , ot1cmss.fd = us , ot1cmtt.fd = us , ot1cmvtt.fd = us , ot1enc.def = us , ot1enc.dfu = us , ot1lcmss.fd = us , ot1lcmtt.fd = us , ot2enc.dfu = us , ot4enc.def = us , preload.cfg = us , preload.ltx = us , proc.cls = us , proc.sty = us , report.cls = us , report.sty = us , sample2e.tex = us , sfonts.def = us , shortvrb.sty = us , showidx.sty = us , size10.clo = us , size11.clo = us , size12.clo = us , slides.cls = us , slides.def = us , slides.sty = us , small2e.tex = us , source2e.tex = us , source2edoc.cls = us , structuredlog.sty = us , syntonly.sty = us , t1cmdh.fd = us , t1cmfib.fd = us , t1cmfr.fd = us , t1cmr.fd = us , t1cmss.fd = us , t1cmtt.fd = us , t1cmvtt.fd = us , t1enc.def = us , t1enc.dfu = us , t1enc.sty = us , t1lcmss.fd = us , t1lcmtt.fd = us , t2aenc.dfu = us , t2benc.dfu = us , t2cenc.dfu = us , testpage.tex = us , texsys.cfg = us , textcomp-2018-08-11.sty = us , textcomp.sty = us , tracefnt.sty = us , ts1cmr.fd = us , ts1cmss.fd = us , ts1cmtt.fd = us , ts1cmvtt.fd = us , ts1enc.def = us , ts1enc.dfu = us , tuenc.def = us , tulmdh.fd = us , tulmr.fd = us , tulmss.fd = us , tulmssq.fd = us , tulmtt.fd = us , tulmvtt.fd = us , ucmr.fd = us , ucmss.fd = us , ucmtt.fd = us , ulasy.fd = us , ullasy.fd = us , utf8-2018.def = us , utf8.def = us , utf8enc.dfu = us , x2enc.dfu = us , %--------------------------------- tools afterpage.sty = us , array-2016-10-06.sty = us , array-2020-02-10.sty = us , array-2023-11-01.sty = us , array.sty = us , bm.sty = us , calc.sty = us , dcolumn.sty = us , delarray.sty = us , e.tex = us , enumerate.sty = us , fontsmpl.sty = us , fontsmpl.tex = us , ftnright.sty = us , h.tex = us , hhline.sty = us , indentfirst.sty = us , layout.sty = us , longtable-2020-01-07.sty = us , longtable.sty = us , multicol-2017-04-11.sty = us , multicol-2019-10-01.sty = us , multicol.sty = us , q.tex = us , r.tex = us , rawfonts.sty = us , s.tex = us , shellesc.sty = us , showkeys-2014-10-28.sty = us , showkeys.sty = us , somedefs.sty = us , tabularx.sty = us , thb.sty = us , thc.sty = us , thcb.sty = us , theorem.sty = us , thm.sty = us , thmb.sty = us , thp.sty = us , trace.sty = us , varioref-2016-02-16.sty = us , varioref.sty = us , verbatim.sty = us , verbtest.tex = us , x.tex = us , xr-2023-07-04.sty = us , xr.sty = us , xspace.sty = us , %--------------------------------- babel (locale files) babel-slovenian.tex = ignore , babel-slovene.tex = ignore , babel-slovak.tex = ignore , babel-urdu.tex = ignore , babel-northernkurdish.tex = ignore , babel-kurmanji.tex = ignore , babel-northernkurdish-arabic.tex = ignore , babel-northernkurdish-arab.tex = ignore , babel-northernsami.tex = ignore , babel-samin.tex = ignore , babel-soga.tex = ignore , babel-swahili.tex = ignore , babel-cherokee.tex = ignore , babel-koyrachiini.tex = ignore , babel-kabyle.tex = ignore , babel-uyghur.tex = ignore , babel-kako.tex = ignore , babel-uzbek.tex = ignore , babel-uzbek-latn.tex = ignore , babel-uzbek-arabic.tex = ignore , babel-uzbek-cyrillic.tex = ignore , babel-uzbek-latin.tex = ignore , babel-uzbek-arab.tex = ignore , babel-uzbek-cyrl.tex = ignore , babel-polish.tex = ignore , babel-rombo.tex = ignore , babel-vietnam.tex = ignore , babel-vietnamese.tex = ignore , babel-masai.tex = ignore , babel-albanian.tex = ignore , babel-kamba.tex = ignore , babel-swedish.tex = ignore , babel-irish.tex = ignore , babel-hebrew.tex = ignore , babel-inarisami.tex = ignore , babel-malay.tex = ignore , babel-malay-singapore.tex = ignore , babel-malay-sg.tex = ignore , babel-malay-brunei.tex = ignore , babel-malay-bn.tex = ignore , babel-mazanderani.tex = ignore , babel-khmer.tex = ignore , babel-maltese.tex = ignore , babel-tasawaq.tex = ignore , babel-bemba.tex = ignore , babel-armenian.tex = ignore , babel-amharic.tex = ignore , babel-zarma.tex = ignore , babel-nynorsk.tex = ignore , babel-norwegiannynorsk.tex = ignore , babel-belarusian.tex = ignore , babel-danish.tex = ignore , babel-kalaallisut.tex = ignore , babel-shambala.tex = ignore , babel-marathi.tex = ignore , babel-kazakh.tex = ignore , babel-norsk.tex = ignore , babel-norwegian.tex = ignore , babel-akan.tex = ignore , babel-kyrgyz.tex = ignore , babel-gujarati.tex = ignore , babel-samburu.tex = ignore , babel-dzongkha.tex = ignore , babel-malagasy.tex = ignore , babel-mongolian.tex = ignore , babel-cornish.tex = ignore , babel-walser.tex = ignore , babel-yangben.tex = ignore , babel-sangu.tex = ignore , babel-bambara.tex = ignore , babel-centralatlastamazight.tex = ignore , babel-ancientgreek.tex = ignore , babel-machame.tex = ignore , babel-sichuanyi.tex = ignore , babel-ewe.tex = ignore , babel-hawaiian.tex = ignore , babel-japanese.tex = ignore , babel-churchslavonic.tex = ignore , babel-churchslavic.tex = ignore , babel-churchslavic-cyrs.tex = ignore , babel-churchslavic-glagolitic.tex = ignore , babel-churchslavic-glag.tex = ignore , babel-churchslavic-oldcyrillic.tex = ignore , babel-polytonicgreek.tex = ignore , babel-greek.tex = ignore , babel-monotonicgreek.tex = ignore , babel-igbo.tex = ignore , babel-latvian.tex = ignore , babel-occitan.tex = ignore , babel-westernfrisian.tex = ignore , babel-luxembourgish.tex = ignore , babel-italian.tex = ignore , babel-oromo.tex = ignore , babel-catalan.tex = ignore , babel-icelandic.tex = ignore , babel-czech.tex = ignore , babel-interlingua.tex = ignore , babel-telugu.tex = ignore , babel-friulian.tex = ignore , babel-vai-latin.tex = ignore , babel-vai-vaii.tex = ignore , babel-vai.tex = ignore , babel-vai-latn.tex = ignore , babel-vai-vai.tex = ignore , babel-russian.tex = ignore , babel-turkmen.tex = ignore , babel-jolafonyi.tex = ignore , babel-rundi.tex = ignore , babel-konkani.tex = ignore , babel-piedmontese.tex = ignore , babel-standardmoroccantamazight.tex = ignore , babel-quechua.tex = ignore , babel-meru.tex = ignore , babel-nyankole.tex = ignore , babel-romanian-md.tex = ignore , babel-romanian-moldova.tex = ignore , babel-romanian.tex = ignore , babel-moldavian.tex = ignore , babel-luo.tex = ignore , babel-usorbian.tex = ignore , babel-uppersorbian.tex = ignore , babel-yoruba.tex = ignore , babel-syriac.tex = ignore , babel-makhuwameetto.tex = ignore , babel-northernluri.tex = ignore , babel-aghem.tex = ignore , babel-meta.tex = ignore , babel-zulu.tex = ignore , babel-centralkurdish-latin.tex = ignore , babel-centralkurdish-latn.tex = ignore , babel-sorani.tex = ignore , babel-centralkurdish.tex = ignore , babel-cantonese.tex = ignore , babel-makonde.tex = ignore , babel-somali.tex = ignore , babel-sanskrit.tex = ignore , babel-sanskrit-telu.tex = ignore , babel-sanskrit-malayalam.tex = ignore , babel-sanskrit-devanagari.tex = ignore , babel-sanskrit-bengali.tex = ignore , babel-sanskrit-gujr.tex = ignore , babel-sanskrit-gujarati.tex = ignore , babel-sanskrit-deva.tex = ignore , babel-sanskrit-telugu.tex = ignore , babel-sanskrit-knda.tex = ignore , babel-sanskrit-beng.tex = ignore , babel-sanskrit-kannada.tex = ignore , babel-sanskrit-mlym.tex = ignore , babel-chiga.tex = ignore , babel-teso.tex = ignore , babel-yiddish.tex = ignore , babel-portuguese.tex = ignore , babel-brazilian.tex = ignore , babel-portuguese-portugal.tex = ignore , babel-portuguese-br.tex = ignore , babel-portuguese-brazil.tex = ignore , babel-portuguese-pt.tex = ignore , babel-pashto.tex = ignore , babel-embu.tex = ignore , babel-chinese-hans-mo.tex = ignore , babel-chinese-hant-hk.tex = ignore , babel-chinese-simplified.tex = ignore , babel-chinese-hans-hk.tex = ignore , babel-chinese-hant.tex = ignore , babel-chinese-simplified-singapore.tex = ignore , babel-chinese-simplified-hongkongsarchina.tex = ignore , babel-chinese-hans-sg.tex = ignore , babel-chinese-hans.tex = ignore , babel-chinese-traditional-macausarchina.tex = ignore , babel-chinese.tex = ignore , babel-chinese-hant-mo.tex = ignore , babel-chinese-traditional.tex = ignore , babel-chinese-simplified-macausarchina.tex = ignore , babel-chinese-traditional-hongkongsarchina.tex = ignore , babel-ukrainian.tex = ignore , babel-serbian-latn-me.tex = ignore , babel-serbian-latin-kosovo.tex = ignore , babel-serbian-latn.tex = ignore , babel-serbian-cyrl-me.tex = ignore , babel-serbian-cyrillic-montenegro.tex = ignore , babel-serbian-cyrillic.tex = ignore , babel-serbian-cyrl-ba.tex = ignore , babel-serbian-cyrl.tex = ignore , babel-serbian.tex = ignore , babel-serbian-latin-bosniaherzegovina.tex = ignore , babel-serbian-latin.tex = ignore , babel-serbian-cyrl-xk.tex = ignore , babel-serbian-latn-ba.tex = ignore , babel-serbian-latin-montenegro.tex = ignore , babel-serbian-latn-xk.tex = ignore , babel-serbian-cyrillic-kosovo.tex = ignore , babel-serbian-cyrillic-bosniaherzegovina.tex = ignore , babel-bodo.tex = ignore , babel-sango.tex = ignore , babel-punjabi-gurmukhi.tex = ignore , babel-punjabi-arabic.tex = ignore , babel-punjabi-guru.tex = ignore , babel-punjabi.tex = ignore , babel-punjabi-arab.tex = ignore , babel-shona.tex = ignore , babel-sinhala.tex = ignore , babel-malayalam.tex = ignore , babel-tibetan.tex = ignore , babel-macedonian.tex = ignore , babel-northndebele.tex = ignore , babel-tachelhit-tifinagh.tex = ignore , babel-tachelhit.tex = ignore , babel-tachelhit-tfng.tex = ignore , babel-tachelhit-latn.tex = ignore , babel-tachelhit-latin.tex = ignore , babel-hausa.tex = ignore , babel-hausa-niger.tex = ignore , babel-hausa-gh.tex = ignore , babel-hausa-ghana.tex = ignore , babel-hausa-ne.tex = ignore , babel-kannada.tex = ignore , babel-bosnian.tex = ignore , babel-bosnian-cyrillic.tex = ignore , babel-bosnian-cyrl.tex = ignore , babel-bosnian-latn.tex = ignore , babel-bosnian-latin.tex = ignore , babel-kikuyu.tex = ignore , babel-burmese.tex = ignore , babel-arabic-lb.tex = ignore , babel-arabic-jordan.tex = ignore , babel-arabic-palestinianterritories.tex = ignore , babel-arabic-iraq.tex = ignore , babel-arabic-ma.tex = ignore , babel-arabic-egypt.tex = ignore , babel-arabic-lebanon.tex = ignore , babel-arabic-dz.tex = ignore , babel-arabic-morocco.tex = ignore , babel-arabic-eg.tex = ignore , babel-arabic-ps.tex = ignore , babel-arabic-iq.tex = ignore , babel-arabic-tunisia.tex = ignore , babel-arabic-jo.tex = ignore , babel-arabic-algeria.tex = ignore , babel-arabic-sy.tex = ignore , babel-arabic-syria.tex = ignore , babel-arabic-tn.tex = ignore , babel-arabic.tex = ignore , babel-sakha.tex = ignore , babel-rwa.tex = ignore , babel-galician.tex = ignore , babel-manx.tex = ignore , babel-croatian.tex = ignore , babel-hungarian.tex = ignore , babel-magyar.tex = ignore , babel-dutch.tex = ignore , babel-bulgarian.tex = ignore , babel-kashmiri.tex = ignore , babel-bengali.tex = ignore , babel-nepali.tex = ignore , babel-gusii.tex = ignore , babel-asturian.tex = ignore , babel-filipino.tex = ignore , babel-afrikaans.tex = ignore , babel-bena.tex = ignore , babel-norwegianbokmal.tex = ignore , babel-colognian.tex = ignore , babel-hindi.tex = ignore , babel-mundang.tex = ignore , babel-georgian.tex = ignore , babel-asu.tex = ignore , babel-austrian.tex = ignore , babel-german-switzerland.tex = ignore , babel-german-austria.tex = ignore , babel-german-switzerland-traditional.tex = ignore , babel-german-ch.tex = ignore , babel-german-at.tex = ignore , babel-german-traditional.tex = ignore , babel-nswissgerman.tex = ignore , babel-swissgerman.tex = ignore , babel-ngerman.tex = ignore , babel-naustrian.tex = ignore , babel-german-austria-traditional.tex = ignore , babel-german.tex = ignore , babel-assamese.tex = ignore , babel-azerbaijani-latin.tex = ignore , babel-azerbaijani-cyrl.tex = ignore , babel-azerbaijani.tex = ignore , babel-azerbaijani-cyrillic.tex = ignore , babel-azerbaijani-latn.tex = ignore , babel-bafia.tex = ignore , babel-scottishgaelic.tex = ignore , babel-breton.tex = ignore , babel-korean-han.tex = ignore , babel-korean.tex = ignore , babel-korean-hani.tex = ignore , babel-finnish.tex = ignore , babel-ossetic.tex = ignore , babel-lubakatanga.tex = ignore , babel-langi.tex = ignore , babel-esperanto.tex = ignore , babel-basaa.tex = ignore , babel-indonesian.tex = ignore , babel-french-swissfrench.tex = ignore , babel-french-canadianfrench.tex = ignore , babel-french-be.tex = ignore , babel-french-ca.tex = ignore , babel-french-belgium.tex = ignore , babel-french-ch.tex = ignore , babel-french.tex = ignore , babel-french-canada.tex = ignore , babel-french-lu.tex = ignore , babel-french-switzerland.tex = ignore , babel-french-luxembourg.tex = ignore , babel-ganda.tex = ignore , babel-taita.tex = ignore , babel-nama.tex = ignore , babel-lingala.tex = ignore , babel-spanish-mx.tex = ignore , babel-spanish.tex = ignore , babel-spanish-mexico.tex = ignore , babel-mexican.tex = ignore , babel-estonian.tex = ignore , babel-vunjo.tex = ignore , babel-kwasio.tex = ignore , babel-koyraborosenni.tex = ignore , babel-usenglish.tex = ignore , babel-english-newzealand.tex = ignore , babel-english.tex = ignore , babel-english-ca.tex = ignore , babel-australian.tex = ignore , babel-english-australia.tex = ignore , babel-english-canada.tex = ignore , babel-british.tex = ignore , babel-american.tex = ignore , babel-americanenglish.tex = ignore , babel-canadianenglish.tex = ignore , babel-australianenglish.tex = ignore , babel-english-gb.tex = ignore , babel-english-unitedkingdom.tex = ignore , babel-canadian.tex = ignore , babel-ukenglish.tex = ignore , babel-newzealand.tex = ignore , babel-english-au.tex = ignore , babel-english-unitedstates.tex = ignore , babel-english-nz.tex = ignore , babel-britishenglish.tex = ignore , babel-english-us.tex = ignore , babel-ngiemboon.tex = ignore , babel-persian.tex = ignore , babel-lithuanian.tex = ignore , babel-fulah.tex = ignore , babel-ngomba.tex = ignore , babel-lakota.tex = ignore , babel-faroese.tex = ignore , babel-ewondo.tex = ignore , babel-oriya.tex = ignore , babel-welsh.tex = ignore , babel-sena.tex = ignore , babel-basque.tex = ignore , babel-lao.tex = ignore , babel-medievallatin.tex = ignore , babel-classiclatin.tex = ignore , babel-ecclesiasticlatin.tex = ignore , babel-latin.tex = ignore , babel-chechen.tex = ignore , babel-romansh.tex = ignore , babel-lsorbian.tex = ignore , babel-lowersorbian.tex = ignore , babel-tamil.tex = ignore , babel-thai.tex = ignore , babel-tongan.tex = ignore , babel-kabuverdianu.tex = ignore , babel-turkish.tex = ignore , babel-coptic.tex = ignore , babel-duala.tex = ignore , babel-kinyarwanda.tex = ignore , babel-morisyen.tex = ignore , babel-tigrinya.tex = ignore , babel-kalenjin.tex = ignore , babel-luyia.tex = ignore , babel-nuer.tex = ignore , %-- looks like the files are sometimes loaded without extension babel-slovenian = ignore , babel-slovene = ignore , babel-slovak = ignore , babel-urdu = ignore , babel-northernkurdish = ignore , babel-kurmanji = ignore , babel-northernkurdish-arabic = ignore , babel-northernkurdish-arab = ignore , babel-northernsami = ignore , babel-samin = ignore , babel-soga = ignore , babel-swahili = ignore , babel-cherokee = ignore , babel-koyrachiini = ignore , babel-kabyle = ignore , babel-uyghur = ignore , babel-kako = ignore , babel-uzbek = ignore , babel-uzbek-latn = ignore , babel-uzbek-arabic = ignore , babel-uzbek-cyrillic = ignore , babel-uzbek-latin = ignore , babel-uzbek-arab = ignore , babel-uzbek-cyrl = ignore , babel-polish = ignore , babel-rombo = ignore , babel-vietnam = ignore , babel-vietnamese = ignore , babel-masai = ignore , babel-albanian = ignore , babel-kamba = ignore , babel-swedish = ignore , babel-irish = ignore , babel-hebrew = ignore , babel-inarisami = ignore , babel-malay = ignore , babel-malay-singapore = ignore , babel-malay-sg = ignore , babel-malay-brunei = ignore , babel-malay-bn = ignore , babel-mazanderani = ignore , babel-khmer = ignore , babel-maltese = ignore , babel-tasawaq = ignore , babel-bemba = ignore , babel-armenian = ignore , babel-amharic = ignore , babel-zarma = ignore , babel-nynorsk = ignore , babel-norwegiannynorsk = ignore , babel-belarusian = ignore , babel-danish = ignore , babel-kalaallisut = ignore , babel-shambala = ignore , babel-marathi = ignore , babel-kazakh = ignore , babel-norsk = ignore , babel-norwegian = ignore , babel-akan = ignore , babel-kyrgyz = ignore , babel-gujarati = ignore , babel-samburu = ignore , babel-dzongkha = ignore , babel-malagasy = ignore , babel-mongolian = ignore , babel-cornish = ignore , babel-walser = ignore , babel-yangben = ignore , babel-sangu = ignore , babel-bambara = ignore , babel-centralatlastamazight = ignore , babel-ancientgreek = ignore , babel-machame = ignore , babel-sichuanyi = ignore , babel-ewe = ignore , babel-hawaiian = ignore , babel-japanese = ignore , babel-churchslavonic = ignore , babel-churchslavic = ignore , babel-churchslavic-cyrs = ignore , babel-churchslavic-glagolitic = ignore , babel-churchslavic-glag = ignore , babel-churchslavic-oldcyrillic = ignore , babel-polytonicgreek = ignore , babel-greek = ignore , babel-monotonicgreek = ignore , babel-igbo = ignore , babel-latvian = ignore , babel-occitan = ignore , babel-westernfrisian = ignore , babel-luxembourgish = ignore , babel-italian = ignore , babel-oromo = ignore , babel-catalan = ignore , babel-icelandic = ignore , babel-czech = ignore , babel-interlingua = ignore , babel-telugu = ignore , babel-friulian = ignore , babel-vai-latin = ignore , babel-vai-vaii = ignore , babel-vai = ignore , babel-vai-latn = ignore , babel-vai-vai = ignore , babel-russian = ignore , babel-turkmen = ignore , babel-jolafonyi = ignore , babel-rundi = ignore , babel-konkani = ignore , babel-piedmontese = ignore , babel-standardmoroccantamazight = ignore , babel-quechua = ignore , babel-meru = ignore , babel-nyankole = ignore , babel-romanian-md = ignore , babel-romanian-moldova = ignore , babel-romanian = ignore , babel-moldavian = ignore , babel-luo = ignore , babel-usorbian = ignore , babel-uppersorbian = ignore , babel-yoruba = ignore , babel-syriac = ignore , babel-makhuwameetto = ignore , babel-northernluri = ignore , babel-aghem = ignore , babel-meta = ignore , babel-zulu = ignore , babel-centralkurdish-latin = ignore , babel-centralkurdish-latn = ignore , babel-sorani = ignore , babel-centralkurdish = ignore , babel-cantonese = ignore , babel-makonde = ignore , babel-somali = ignore , babel-sanskrit = ignore , babel-sanskrit-telu = ignore , babel-sanskrit-malayalam = ignore , babel-sanskrit-devanagari = ignore , babel-sanskrit-bengali = ignore , babel-sanskrit-gujr = ignore , babel-sanskrit-gujarati = ignore , babel-sanskrit-deva = ignore , babel-sanskrit-telugu = ignore , babel-sanskrit-knda = ignore , babel-sanskrit-beng = ignore , babel-sanskrit-kannada = ignore , babel-sanskrit-mlym = ignore , babel-chiga = ignore , babel-teso = ignore , babel-yiddish = ignore , babel-portuguese = ignore , babel-brazilian = ignore , babel-portuguese-portugal = ignore , babel-portuguese-br = ignore , babel-portuguese-brazil = ignore , babel-portuguese-pt = ignore , babel-pashto = ignore , babel-embu = ignore , babel-chinese-hans-mo = ignore , babel-chinese-hant-hk = ignore , babel-chinese-simplified = ignore , babel-chinese-hans-hk = ignore , babel-chinese-hant = ignore , babel-chinese-simplified-singapore = ignore , babel-chinese-simplified-hongkongsarchina = ignore , babel-chinese-hans-sg = ignore , babel-chinese-hans = ignore , babel-chinese-traditional-macausarchina = ignore , babel-chinese = ignore , babel-chinese-hant-mo = ignore , babel-chinese-traditional = ignore , babel-chinese-simplified-macausarchina = ignore , babel-chinese-traditional-hongkongsarchina = ignore , babel-ukrainian = ignore , babel-serbian-latn-me = ignore , babel-serbian-latin-kosovo = ignore , babel-serbian-latn = ignore , babel-serbian-cyrl-me = ignore , babel-serbian-cyrillic-montenegro = ignore , babel-serbian-cyrillic = ignore , babel-serbian-cyrl-ba = ignore , babel-serbian-cyrl = ignore , babel-serbian = ignore , babel-serbian-latin-bosniaherzegovina = ignore , babel-serbian-latin = ignore , babel-serbian-cyrl-xk = ignore , babel-serbian-latn-ba = ignore , babel-serbian-latin-montenegro = ignore , babel-serbian-latn-xk = ignore , babel-serbian-cyrillic-kosovo = ignore , babel-serbian-cyrillic-bosniaherzegovina = ignore , babel-bodo = ignore , babel-sango = ignore , babel-punjabi-gurmukhi = ignore , babel-punjabi-arabic = ignore , babel-punjabi-guru = ignore , babel-punjabi = ignore , babel-punjabi-arab = ignore , babel-shona = ignore , babel-sinhala = ignore , babel-malayalam = ignore , babel-tibetan = ignore , babel-macedonian = ignore , babel-northndebele = ignore , babel-tachelhit-tifinagh = ignore , babel-tachelhit = ignore , babel-tachelhit-tfng = ignore , babel-tachelhit-latn = ignore , babel-tachelhit-latin = ignore , babel-hausa = ignore , babel-hausa-niger = ignore , babel-hausa-gh = ignore , babel-hausa-ghana = ignore , babel-hausa-ne = ignore , babel-kannada = ignore , babel-bosnian = ignore , babel-bosnian-cyrillic = ignore , babel-bosnian-cyrl = ignore , babel-bosnian-latn = ignore , babel-bosnian-latin = ignore , babel-kikuyu = ignore , babel-burmese = ignore , babel-arabic-lb = ignore , babel-arabic-jordan = ignore , babel-arabic-palestinianterritories = ignore , babel-arabic-iraq = ignore , babel-arabic-ma = ignore , babel-arabic-egypt = ignore , babel-arabic-lebanon = ignore , babel-arabic-dz = ignore , babel-arabic-morocco = ignore , babel-arabic-eg = ignore , babel-arabic-ps = ignore , babel-arabic-iq = ignore , babel-arabic-tunisia = ignore , babel-arabic-jo = ignore , babel-arabic-algeria = ignore , babel-arabic-sy = ignore , babel-arabic-syria = ignore , babel-arabic-tn = ignore , babel-arabic = ignore , babel-sakha = ignore , babel-rwa = ignore , babel-galician = ignore , babel-manx = ignore , babel-croatian = ignore , babel-hungarian = ignore , babel-magyar = ignore , babel-dutch = ignore , babel-bulgarian = ignore , babel-kashmiri = ignore , babel-bengali = ignore , babel-nepali = ignore , babel-gusii = ignore , babel-asturian = ignore , babel-filipino = ignore , babel-afrikaans = ignore , babel-bena = ignore , babel-norwegianbokmal = ignore , babel-colognian = ignore , babel-hindi = ignore , babel-mundang = ignore , babel-georgian = ignore , babel-asu = ignore , babel-austrian = ignore , babel-german-switzerland = ignore , babel-german-austria = ignore , babel-german-switzerland-traditional = ignore , babel-german-ch = ignore , babel-german-at = ignore , babel-german-traditional = ignore , babel-nswissgerman = ignore , babel-swissgerman = ignore , babel-ngerman = ignore , babel-naustrian = ignore , babel-german-austria-traditional = ignore , babel-german = ignore , babel-assamese = ignore , babel-azerbaijani-latin = ignore , babel-azerbaijani-cyrl = ignore , babel-azerbaijani = ignore , babel-azerbaijani-cyrillic = ignore , babel-azerbaijani-latn = ignore , babel-bafia = ignore , babel-scottishgaelic = ignore , babel-breton = ignore , babel-korean-han = ignore , babel-korean = ignore , babel-korean-hani = ignore , babel-finnish = ignore , babel-ossetic = ignore , babel-lubakatanga = ignore , babel-langi = ignore , babel-esperanto = ignore , babel-basaa = ignore , babel-indonesian = ignore , babel-french-swissfrench = ignore , babel-french-canadianfrench = ignore , babel-french-be = ignore , babel-french-ca = ignore , babel-french-belgium = ignore , babel-french-ch = ignore , babel-french = ignore , babel-french-canada = ignore , babel-french-lu = ignore , babel-french-switzerland = ignore , babel-french-luxembourg = ignore , babel-ganda = ignore , babel-taita = ignore , babel-nama = ignore , babel-lingala = ignore , babel-spanish-mx = ignore , babel-spanish = ignore , babel-spanish-mexico = ignore , babel-mexican = ignore , babel-estonian = ignore , babel-vunjo = ignore , babel-kwasio = ignore , babel-koyraborosenni = ignore , babel-usenglish = ignore , babel-english-newzealand = ignore , babel-english = ignore , babel-english-ca = ignore , babel-australian = ignore , babel-english-australia = ignore , babel-english-canada = ignore , babel-british = ignore , babel-american = ignore , babel-americanenglish = ignore , babel-canadianenglish = ignore , babel-australianenglish = ignore , babel-english-gb = ignore , babel-english-unitedkingdom = ignore , babel-canadian = ignore , babel-ukenglish = ignore , babel-newzealand = ignore , babel-english-au = ignore , babel-english-unitedstates = ignore , babel-english-nz = ignore , babel-britishenglish = ignore , babel-english-us = ignore , babel-ngiemboon = ignore , babel-persian = ignore , babel-lithuanian = ignore , babel-fulah = ignore , babel-ngomba = ignore , babel-lakota = ignore , babel-faroese = ignore , babel-ewondo = ignore , babel-oriya = ignore , babel-welsh = ignore , babel-sena = ignore , babel-basque = ignore , babel-lao = ignore , babel-medievallatin = ignore , babel-classiclatin = ignore , babel-ecclesiasticlatin = ignore , babel-latin = ignore , babel-chechen = ignore , babel-romansh = ignore , babel-lsorbian = ignore , babel-lowersorbian = ignore , babel-tamil = ignore , babel-thai = ignore , babel-tongan = ignore , babel-kabuverdianu = ignore , babel-turkish = ignore , babel-coptic = ignore , babel-duala = ignore , babel-kinyarwanda = ignore , babel-morisyen = ignore , babel-tigrinya = ignore , babel-kalenjin = ignore , babel-luyia = ignore , babel-nuer = ignore , %--------------------------------- babel (part supported by us) UKenglish.sty = us , USenglish.sty = us , afrikaans.sty = us , albanian.sty = us , american.sty = us , austrian.sty = us , babel.def = us , babel.sty = us , bahasa.sty = us , bahasam.sty = us , basque.sty = us , blplain.tex = us , bplain.tex = us , breton.sty = us , british.sty = us , bulgarian.sty = us , catalan.sty = us , croatian.sty = us , czech.sty = us , danish.sty = us , dutch.sty = us , english.sty = us , esperanto.sty = us , estonian.sty = us , finnish.sty = us , francais.sty = us , galician.sty = us , germanb.sty = us , greek.sty = us , hebrew.sty = us , hyphen.cfg = us , icelandic.sty = us , interlingua.sty = us , irish.sty = us , italian.sty = us , latin.sty = us , lsorbian.sty = us , luababel.def = us , magyar.sty = us , naustrian.sty = us , ngermanb.sty = us , nil.ldf = us , norsk.sty = us , plain.def = us , polish.sty = us , portuges.sty = us , romanian.sty = us , russianb.sty = us , samin.sty = us , scottish.sty = us , serbian.sty = us , slovak.sty = us , slovene.sty = us , spanish.sty = us , swedish.sty = us , switch.def = us , turkish.sty = us , ukraineb.sty = us , usorbian.sty = us , welsh.sty = us , xebabel.def = us , %--------------------------------- graphics + graphics-def color.cfg = us , color.sty = us , dvipdf.def = us , dvipdfmx.def = us , dvips.def = us , dvipsnam.def = us , dvipsone.def = us , dvisvgm.def = us , dviwin.def = us , emtex.def = us , epsfig.sty = us , graphics-2017-06-25.sty = us , graphics.cfg = us , graphics.sty = us , graphicx.sty = us , keyval.sty = us , lscape.sty = us , luatex.def = us , mathcolor.ltx = us , pctex32.def = us , pctexhp.def = us , pctexps.def = us , pctexwin.def = us , pdftex.def = us , rotating.sty = us , rotating.sty = us , tcidvi.def = us , trig.sty = us , truetex.def = us , xetex.def = us , %--------------------------------- mfnfss oldgerm.sty = us , ot1panr.fd = us , ot1pss.fd = us , pandora.sty = us , uyfrak.fd = us , uygoth.fd = us , uyinit.fd = us , uyswab.fd = us , %--------------------------------- firstaid everysel-ltx.sty = us , filehook-ltx.sty = us , %--------------------------------- amsmath amsbsy.sty = us , amscd.sty = us , amsgen.sty = us , amsmath-2018-12-01.sty = us , amsmath.sty = us , amsopn.sty = us , amstex.sty = us , amstext.sty = us , amsxtra.sty = us , %--------------------------------- amscls (AMS) amsart.cls = American Mathematical Society \Contact tech-support [at] ams [dot] org , amsbook.cls = American Mathematical Society \Contact tech-support [at] ams [dot] org , amsbooka.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , amsdtx.cls = American Mathematical Society \Contact tech-support [at] ams [dot] org , amsldoc.cls = American Mathematical Society \Contact tech-support [at] ams [dot] org , amsmidx.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , amsproc.cls = American Mathematical Society \Contact tech-support [at] ams [dot] org , amsthm.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , upref.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , %--------------------------------- amsfonts (AMS) amsfonts.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , amssymb.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , cmmib57.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , eucal.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , eufrak.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , euscript.sty = American Mathematical Society \Contact tech-support [at] ams [dot] org , ueuex.fd = ignore , ueuf.fd = ignore , ueur.fd = ignore , ueus.fd = ignore , umsa.fd = ignore , umsb.fd = ignore , %--------------------------------- psnfss 8rbch.fd = us , 8rpag.fd = us , 8rpbk.fd = us , 8rpcr.fd = us , 8rphv.fd = us , 8rpnc.fd = us , 8rppl.fd = us , 8rptm.fd = us , 8rput.fd = us , 8rpzc.fd = us , avant.sty = us , bookman.sty = us , chancery.sty = us , charter.sty = us , courier.sty = us , helvet.sty = us , mathpazo.sty = us , mathpple.sty = us , mathptm.sty = us , mathptmx.sty = us , newcent.sty = us , omlbch.fd = us , omlpag.fd = us , omlpbk.fd = us , omlpcr.fd = us , omlphv.fd = us , omlpnc.fd = us , omlppl.fd = us , omlptm.fd = us , omlptmcm.fd = us , omlput.fd = us , omlpzc.fd = us , omlzplm.fd = us , omlzpple.fd = us , omlztmcm.fd = us , omsbch.fd = us , omspag.fd = us , omspbk.fd = us , omspcr.fd = us , omsphv.fd = us , omspnc.fd = us , omsppl.fd = us , omsptm.fd = us , omsput.fd = us , omspzc.fd = us , omspzccm.fd = us , omszplm.fd = us , omszpple.fd = us , omsztmcm.fd = us , omxpsycm.fd = us , omxzplm.fd = us , omxzpple.fd = us , omxztmcm.fd = us , ot1bch.fd = us , ot1pag.fd = us , ot1pbk.fd = us , ot1pcr.fd = us , ot1phv.fd = us , ot1pnc.fd = us , ot1ppl.fd = us , ot1pplj.fd = us , ot1pplx.fd = us , ot1ptm.fd = us , ot1ptmcm.fd = us , ot1put.fd = us , ot1pzc.fd = us , ot1zplm.fd = us , ot1zpple.fd = us , ot1ztmcm.fd = us , palatino.sty = us , pifont.sty = us , t1bch.fd = us , t1pag.fd = us , t1pbk.fd = us , t1pcr.fd = us , t1phv.fd = us , t1pnc.fd = us , t1ppl.fd = us , t1pplj.fd = us , t1pplx.fd = us , t1ptm.fd = us , t1put.fd = us , t1pzc.fd = us , times.sty = us , ts1bch.fd = us , ts1pag.fd = us , ts1pbk.fd = us , ts1pcr.fd = us , ts1phv.fd = us , ts1pnc.fd = us , ts1ppl.fd = us , ts1pplj.fd = us , ts1pplx.fd = us , ts1ptm.fd = us , ts1put.fd = us , ts1pzc.fd = us , ufplm.fd = us , ufplmbb.fd = us , upsy.fd = us , upzd.fd = us , utopia.sty = us , %--------------------------------- l3experimental l3benchmark.sty = us* , l3bitset.sty = us* , l3draw.sty = us* , l3graphics.sty = us* , l3sys-shell.sty = us* , %--------------------------------- l3packages xparse-2018-04-12.sty = us* , xparse-2020-10-01.sty = us* , xparse-generic.tex = us* , xparse.ltx = us* , xfp.sty = us* , %--------------------------------- l3kernel / expl3 expl3-code.tex = ignore , expl3.ltx = ignore , expl3.lua = us* , expl3.sty = us* , l3backend-dvipdfmx.def = ignore , l3backend-dvips.def = ignore , l3backend-dvisvgm.def = ignore , l3backend-luatex.def = ignore , l3backend-pdfmode.def = ignore , % -- old l3backend-pdftex.def = ignore , l3backend-xdvipdfmx.def = ignore , % -- old l3backend-xetex.def = ignore , l3debug.def = us* , l3deprecation.def = ignore , l3doc.cls = us* , l3docstrip.tex = us , l3keys2e.sty = us* , l3str-enc-iso88591.def = us* , l3str-enc-iso885910.def = us* , l3str-enc-iso885911.def = us* , l3str-enc-iso885913.def = us* , l3str-enc-iso885914.def = us* , l3str-enc-iso885915.def = us* , l3str-enc-iso885916.def = us* , l3str-enc-iso88592.def = us* , l3str-enc-iso88593.def = us* , l3str-enc-iso88594.def = us* , l3str-enc-iso88595.def = us* , l3str-enc-iso88596.def = us* , l3str-enc-iso88597.def = us* , l3str-enc-iso88598.def = us* , l3str-enc-iso88599.def = us* , xcoffins.sty = us* , xgalley.sty = us* , xparse.sty = us* , xtemplate-2023-10-10.sty = us* , xtemplate.sty = us* , %--------------------------------- TAGGING PROJECT pdfmanagement-testphase.sty = us* \Contact https://github.com/latex3/tagging-project/issues , tagpdf.sty = us* \Contact https://github.com/latex3/tagging-project/issues , documentmetadata-support.ltx = us* \Contact https://github.com/latex3/tagging-project/issues , l3backend-testphase-luatex.def = ignore , l3backend-testphase-pdftex.def = ignore , l3backend-testphase-xetex.def = ignore , latex-lab-amsmath.ltx = ignore , latex-lab-footnotes.ltx = ignore , latex-lab-math.ltx = ignore , latex-lab-mathpkg.ltx = ignore , latex-lab-mathtools.ltx = ignore , latex-lab-testphase-bib.sty = ignore , latex-lab-testphase-block.sty = ignore , latex-lab-testphase-float.sty = ignore , latex-lab-testphase-graphic.sty = ignore , latex-lab-testphase-marginpar.sty = ignore , latex-lab-testphase-math.sty = ignore , latex-lab-testphase-minipage.sty = ignore , latex-lab-testphase-new-or-1.sty = ignore , latex-lab-testphase-new-or-2.sty = ignore , latex-lab-testphase-sec.sty = ignore , latex-lab-testphase-table.sty = ignore , latex-lab-testphase-text.sty = ignore , latex-lab-testphase-title.sty = ignore , latex-lab-testphase-toc.sty = ignore , math-latex-lab-testphase.ltx = ignore , pdfmanagement-firstaid.sty = ignore , pdfmanagement-testphase.ltx = ignore , phase-II-latex-lab-testphase.ltx = ignore , phase-III-latex-lab-testphase.ltx = ignore , table-latex-lab-testphase.ltx = ignore , tagpdf-luatex.def = ignore , title-latex-lab-testphase.ltx = ignore , %--------------------------------- EXTERNAL PACKAGES SUPPORTED BY THE LaTeX Team hluatex.def = ignore , hpdftex.def = ignore , hxetex.def = ignore , hypdoc.sty = us , hyperref.cfg = ignore , hyperref.sty = us* \Contact https://github.com/latex3/hyperref/issues , hyperref-langpatches.def = ignore , pd1enc.def = ignore , puenc.def = ignore , xcolor.sty = us* \Contact https://github.com/latex3/xcolor/issues , %--------------------------------- PACKAGES BY MEMBERS OF THE LaTeX Team with their own repos beamer.cls = Joseph Wright \Contact https://github.com/josephwright/beamer/issues , dashundergaps.sty = Frank Mittelbach \Contact https://github.com/FrankMittelbach/fmitex-dashundergaps/issues , parnotes.sty = Frank Mittelbach \Contact https://github.com/FrankMittelbach/fmitex-parnotes , fewerfloatpages.sty = Frank Mittelbach \Contact https://github.com/FrankMittelbach/fmitex-fewerfloatpages , fontspec.sty = us* \Contact https://github.com/latex3/fontspec/issues , footmisc.sty = Frank Mittelbach \Contact https://github.com/FrankMittelbach/fmitex-footmisc , luatex85.sty = Joseph Wright \Contact https://github.com/josephwright/luatex85/issues , parskip.sty = Frank Mittelbach \Contact https://github.com/FrankMittelbach/fmitex-parskip/issues , siunitx.sty = Joseph Wright \Contact https://github.com/josephwright/siunitx/issues , unicodefonttable.sty = Frank Mittelbach \Contact https://github.com/FrankMittelbach/fmitex-unicodefonttable , unicode-math.sty = us* \Contact https://github.com/latex3/unicode-math/issues , widows-and-orphans.sty = Frank Mittelbach \Contact https://github.com/FrankMittelbach/fmitex-widows-and-orphans/issues , xfrac.sty = us* \Contact https://github.com/latex3/xfrac/issues , %--------------------------------- USEFUL FOR BUG REPORTS blindtext.sty = ignore , etoolbox.sty = ignore , kantlipsum.sty = ignore , lipsum.ltd = ignore , lipsum.sty = ignore , %--------------------------------- EXTERNALLY SUPPORTED % geometry.sty = Hideo Umeki \Contact , %--------------------------------- babel external basque.ldf = Juan M. Aguirregabiria \Contact , belarusian.ldf = Aleksey Novodvorsky and Andrew Shadura \Contact , bosnian.ldf = Samir Halilcevic %% Halilčević \Contact , bulgarian.ldf = Georgi N. Boshnakov \Contact , croatian.ldf = Ivan Kokan \Contact , estonian.ldf = Jaan Vajakas \Contact , frenchb.ldf = Daniel Flipo \Contact , friulan.ldf = Claudio Beccari \Contact , georgian.ldf = Levan Shoshiashvili \Contact , austrian.ldf = Juergen Spitzmueller \Contact , german.ldf = Juergen Spitzmueller \Contact , germanb.ldf = Juergen Spitzmueller \Contact , naustrian.ldf = Juergen Spitzmueller \Contact , ngerman.ldf = Juergen Spitzmueller \Contact , ngermanb.ldf = Juergen Spitzmueller \Contact , nswissgerman.ldf = Juergen Spitzmueller \Contact , swissgerman.ldf = Juergen Spitzmueller \Contact , greek.ldf = Guenter Milde \Contact , magyar.ldf = Peter Szabo %% Péter Szabó \Contact , italian.ldf = Claudio Beccari \Contact , japanese.ldf = Japanese TEX Development Community \Contact , latin.ldf = Claudio Beccari \Contact , macedonian.ldf = Stojan Trajanovski \Contact , occitan.ldf = Cedric Valmary %% Cédric Valmary \Contact , piedmontese.ldf = Claudio Beccari \Contact , pinyin.ldf = Werner Lemberg \Contact , romansh.ldf = Claudio Beccari \Contact , russain.ldf = Igor A [dot] Kotelnikov \Contact , % -- old? serbianc.ldf = Filip Brcic \Contact , spanglish.ldf = J [dot] Luis Rivera \Contact , % -- old? spanish.ldf = Javier Bezos \Contact , thaicjk.ldf = Werner Lemberg \Contact , ukraineb.ldf = Sergiy Ponomarenko \Contact , vietnamese.ldf = Werner Lemberg \Contact , %--------------------------------- LAST LINE {\latexbug@empty} = {} , % \end{macrocode} % % Keep the data but throw away the loop function. % \begin{macrocode} \endgroup % \end{macrocode} % % \begin{macro}{\latexbug@addtofilelist} % Save the kernel version of \cs{@addtofilelist}. % \begin{macrocode} \let\latexbug@addtofilelist\@addtofilelist % \end{macrocode} % \end{macro} % % \begin{macro}{\latexbug@zzzz} % \begin{macro}{\latexbug@own} % Storage for third-party files and those from the \LaTeX3 set on GitHub. % \begin{macrocode} \def\latexbug@zzzz{} \def\latexbug@own{} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\latexbug@process@table} % \begin{macro}{\process@table} % A hook into a convenient place in the document set up: the % initialization of NFSS during the \cs{document} macro. If either % \cs{latexbug@zzzz} or \cs{latexbug@own} have any content then there is % a message to issue, it's just a question of deciding which one. % \begin{macrocode} \let\latexbug@process@table\process@table \def\process@table{\global\let\@addtofilelist\latexbug@addtofilelist \latexbug@process@table \ifx\latexbug@zzzz\latexbug@empty \ifx\latexbug@own\latexbug@empty \else \typeout{}% \PackageWarningNoLine{latexbug}% {Special bug tracker!\MessageBreak \MessageBreak This test file uses the following file(s)\MessageBreak \MessageBreak ==============\MessageBreak \latexbug@own ==============\MessageBreak \MessageBreak Please note that these files have their own\MessageBreak bug tracker and your issue should therefore\MessageBreak be reported in the indicated repository.\MessageBreak \MessageBreak If they are not necessary to exhibit the problem,\MessageBreak remove them from your example and rerun it,\MessageBreak otherwise report the issue in the listed repository.\MessageBreak \MessageBreak If different repositories are listed, try to\MessageBreak select the most appropriate one (but don't worry\MessageBreak too much, if the choice is not clear to you)}% \typeout{}% \fi \else \PackageError{latexbug}% {Third-party file(s)\MessageBreak \MessageBreak This test file uses third-party file(s)\MessageBreak \MessageBreak ==============\MessageBreak \latexbug@zzzz ==============\MessageBreak \MessageBreak So you should contact the authors\MessageBreak of these files, not the LaTeX Team!\MessageBreak (Or remove the packages that load\MessageBreak them, if they are not necessary to\MessageBreak exhibit the problem).\MessageBreak \MessageBreak If you think the bug is in core LaTeX\MessageBreak (as maintained by the LaTeX Team) but\MessageBreak these files are needed to demonstrate\MessageBreak the problem, please continue and mention\MessageBreak this explicitly in your bug report\MessageBreak (with an explanation why you think so)}{Please correct your test file prior to submitting the bug report.\MessageBreak Otherwise it is likely to be rejected!}% \fi } % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@addtofilelist} % \begin{macro}{\latexbug@iftoplevel} % First, a test to see if we are at the top level: there's no need to % test dependencies of packages. Assuming we are doing a check, the aim % is to see if the current name is known, and if it is whether it fits into % one of our special cases. If it's one of the \LaTeX3 GitHub packages it % gets recorded in a dedicated space. Third-party package can also have % information about where to report issues: this is all stored for reporting % later. % \begin{macrocode} \def\@addtofilelist#1{% \expandafter\latexbug@iftoplevel\@currnamestack {}\@nil \begingroup \xdef\latexbug@x{#1}% TODO: one-level sanitize \expandafter \ifx\csname latexbug@@\latexbug@x\endcsname\relax \def\latexbug@y{}% \else % \end{macrocode} % \cs{latexbug@y} will contain either on of the keywords % \texttt{us} or \texttt{us*} or \texttt{ignore} or it will contain % the start part of the third-party information, \cs{latexbug@z} % contains the rest (if anything), the space between the two is % lost and needs to be reinserted. % \begin{macrocode} \xdef\latexbug@y{\expandafter\expandafter\expandafter \@firstoftwo\csname latexbug@@\latexbug@x\endcsname}% \xdef\latexbug@z{\expandafter\expandafter\expandafter \@secondoftwo\csname latexbug@@\latexbug@x\endcsname}% \fi \ifx\latexbug@y\latexbug@us\else \ifx\latexbug@y\latexbug@usstar \begingroup \let\MessageBreak\relax \xdef\latexbug@own{% \latexbug@own\latexbug@x \space\space -> \space Report at: \ifx\latexbug@z\@empty \Contact https://github.com/latex3/latex3/issues \else \latexbug@z \fi \MessageBreak }% \endgroup \else \ifx\latexbug@y\latexbug@ignore\else {\let\MessageBreak\relax \xdef\latexbug@zzzz{\latexbug@zzzz\latexbug@x \ifx\latexbug@y\latexbug@empty\else \space\space -> \space \latexbug@y \space \latexbug@z \fi \MessageBreak}}% \fi \fi \fi \endgroup \fi \latexbug@addtofilelist{#1}} \def\latexbug@iftoplevel #1#2\@nil{% \def\next{#1}% \ifx\next\@empty } \endinput % % \end{macrocode} % \end{macro} % \end{macro} % % \Finale %