%% %% This is file `lwarp.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% lwarp.dtx (with options: `package') %% This is a generated file. %% Copyright 2016-2018 Brian Dunn %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 %% 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.3 or later is part of all distributions of LaTeX %% version 2005/12/01 or later. \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{lwarp} [2018/06/06 v0.57 Allows LaTeX to directly produce HTML5 output.] \RequirePackage{iftex} \newif\ifxetexorluatex \ifXeTeX \xetexorluatextrue \else \ifLuaTeX \xetexorluatextrue \else \xetexorluatexfalse \fi \fi \ifLuaTeX \RequirePackage{luatex85}% until the geometry package is updated \fi \newcommand{\LWR@mdfive}[1]{% \PackageError{lwarp} {No MD5 macro was found.} {Lwarp must find the macros pdfmdfivesum or mdfivesum.} } \ifPDFTeX \let\LWR@mdfive\pdfmdfivesum \fi \ifLuaTeX \RequirePackage{pdftexcmds} \let\LWR@mdfive\pdf@mdfivesum \fi \ifXeTeX \@ifundefined{pdffivesum}{} {\let\LWR@mdfive\pdfmdfivesum} \@ifundefined{mdfivesum}{} {\let\LWR@mdfive\mdfivesum} \fi \ifPDFTeX \RequirePackage[T1]{fontenc} \@ifpackageloaded{inputenc}{}{ \@ifpackageloaded{inputenx}{}{ \RequirePackage[utf8]{inputenc} } } \fi \RequirePackage{newunicodechar} \newunicodechar{⨯}{\texttimes} \ifPDFTeX \newunicodechar{ff}{ff}% the first arguments are ligatures \newunicodechar{fi}{fi} \newunicodechar{fl}{fl} \newunicodechar{ffi}{ffi} \newunicodechar{ffl}{ffl} \newunicodechar{—}{---} \newunicodechar{–}{--} \RequirePackage{upquote} \else \fi \newcommand*\LWR@providelength[1]{% \ifdeflength{#1}{}{\newlength{#1}}% } \newcommand*{\LWR@convertto}[2]{\strip@pt\dimexpr #2*65536/\number\dimexpr 1#1} \RequirePackage{etoolbox}[2011/01/03]% v2.6 for \BeforeBeginEnvironment, etc. \RequirePackage{xpatch} \RequirePackage{ifplatform}% sense op-system platform \RequirePackage{letltxmacro} \newbool{usingOSWindows} \boolfalse{usingOSWindows} \newcommand*{\OSPathSymbol}{/} \newcommand*{\LWR@setOSWindows} { \booltrue{usingOSWindows} \renewcommand*{\OSPathSymbol}{\@backslashchar} } \ifwindows \LWR@setOSWindows \fi \RequirePackage{kvoptions} \SetupKeyvalOptions{family=LWR,prefix=LWR@} \newbool{warpingprint} \newbool{warpingHTML} \newbool{mathjax} \newbool{LWR@origmathjax} \booltrue{warpingprint}% \boolfalse{warpingHTML}% \boolfalse{mathjax}% \DeclareVoidOption{warpprint}{% \PackageInfo{lwarp}{Using option 'warpprint'} \booltrue{warpingprint}% \boolfalse{warpingHTML}% } \DeclareVoidOption{warpHTML}{% \PackageInfo{lwarp}{Using option 'warpHTML'}% \booltrue{warpingHTML}% \boolfalse{warpingprint}% } \DeclareVoidOption{mathsvg}{% \PackageInfo{lwarp}{Using option 'mathsvg'} \boolfalse{mathjax}% \boolfalse{LWR@origmathjax}% } \DeclareVoidOption{mathjax}{% \PackageInfo{lwarp}{Using option 'mathjax'} \booltrue{mathjax}% \booltrue{LWR@origmathjax}% } \DeclareStringOption[\jobname]{BaseJobname} \DeclareStringOption[english]{xindyLanguage} \DeclareStringOption[utf8]{xindyCodepage} \DeclareStringOption[lwarp.xdy]{xindyStyle} \DeclareStringOption[UTF-8]{pdftotextEnc} \newbool{LWR@creatinglwarpmk} \boolfalse{LWR@creatinglwarpmk} \DeclareVoidOption{lwarpmk}{ \PackageInfo{lwarp}{Using option 'lwarpmk'} \booltrue{LWR@creatinglwarpmk} } \DeclareVoidOption{OSWindows}{ \PackageInfo{lwarp}{Using option 'OSWindows'} \LWR@setOSWindows } \DeclareStringOption[]{HomeHTMLFilename} \DeclareStringOption[]{HTMLFilename} \DeclareBoolOption[false]{latexmk} \ProcessKeyvalOptions*\relax \providecommand*{\BaseJobname}{\LWR@BaseJobname} \ifcsempty{LWR@HomeHTMLFilename}{ \newcommand*{\HomeHTMLFilename}{\BaseJobname} }{ \csedef{HomeHTMLFilename}{\LWR@HomeHTMLFilename} } \csedef{HTMLFilename}{\LWR@HTMLFilename} \newcommand{\warpprintonly}[1]{\ifbool{warpingprint}{#1}{}} \newcommand{\warpHTMLonly}[1]{\ifbool{warpingHTML}{#1}{}} \RequirePackage{comment} \ifbool{warpingHTML}{ \def\DefaultCutFileName{\def\CommentCutFile{comment_html.cut}} }{} \ifbool{warpingprint}{ \def\DefaultCutFileName{\def\CommentCutFile{comment_print.cut}} }{} \excludecomment{testing} \includecomment{warpall} \ifbool{warpingHTML}{% \includecomment{warpHTML} } {\excludecomment{warpHTML}}% \ifbool{warpingprint} {\includecomment{warpprint}} {\excludecomment{warpprint}} \ifbool{LWR@creatinglwarpmk} {\includecomment{LWR@createlwarpmk}} {\excludecomment{LWR@createlwarpmk}} \newcommand*{\LWR@loadafter}[1]{% \@ifpackageloaded{#1} { \PackageError{lwarp} {Package #1, or one which uses #1, must be loaded after lwarp} {Move \detokenize{\usepackage}{#1} after \detokenize{\usepackage}{lwarp}. Package #1 may also be loaded by something else, which must also be moved after lwarp.} } {} } \@ifclassloaded{memoir} {\newcommand*{\LWR@notmemoirloadafter}[1]{}} {\LetLtxMacro\LWR@notmemoirloadafter\LWR@loadafter} \newcommand*{\LWR@loadbefore}[1]{% \@ifpackageloaded{#1} {} { \PackageError{lwarp} {Package #1 must be loaded before lwarp} {Move \detokenize{\usepackage}{#1} before \detokenize{\usepackage}{lwarp}.} } } \newcommand*{\LWR@loadnever}[2]{% \PackageError{lwarp} {Package #1 is not supported by lwarp's HTML conversion. Package(s) #2 may be useful instead} {Package #1 might conflict with lwarp in some way, or is superceded by another package. For a possible alternative, see package(s) #2.} } \newcommand*{\LWR@earlyloadnever}[2]{% \@ifpackageloaded{#1}{% \PackageError{lwarp} {Package #1 is not supported by lwarp's HTML conversion. Package(s) #2 may be useful instead} {Package #1 might conflict with lwarp in some way, or is superceded by another package. For a possible alternative, see package(s) #2.} }{}% } \LWR@earlyloadnever{ae}{lmodern} \LWR@earlyloadnever{aecc}{lmodern} \LWR@earlyloadnever{boxedminipage}{boxedminipage2e} \LWR@earlyloadnever{caption2}{caption} \LWR@earlyloadnever{fancyheadings}{fancyhdr} \LWR@earlyloadnever{glossary}{glossaries} \LWR@earlyloadnever{t1enc}{fontenc, inputenc, inputenx} \LWR@earlyloadnever{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol} \LWR@loadafter{a4} \LWR@loadafter{a4wide} \LWR@loadafter{a5comb} \LWR@notmemoirloadafter{abstract} \LWR@loadafter{acro} \LWR@loadafter{acronym} \LWR@loadafter{adjmulticol} \LWR@loadafter{addlines} \LWR@loadafter{ae} \LWR@loadafter{aecc} \LWR@loadafter{afterpage} \LWR@loadafter{algorithm2e} \LWR@loadafter{algorithmicx} \LWR@loadafter{alltt} \LWR@loadafter{amsmath} \LWR@loadafter{amsthm} \LWR@loadafter{anonchap} \LWR@loadafter{anysize} \LWR@notmemoirloadafter{appendix} \LWR@loadafter{arabicfront} \LWR@notmemoirloadafter{array} \LWR@loadafter{authblk} \LWR@loadafter{axodraw2} \LWR@loadafter{backref} \LWR@loadafter{balance} \LWR@loadafter{bigdelim} \LWR@loadafter{bigstrut} \LWR@loadafter{blowup} \LWR@loadafter{bookmark} \LWR@notmemoirloadafter{booktabs} \LWR@loadafter{boxedminipage} \LWR@loadafter{boxedminipage2e} \LWR@loadafter{breakurl} \LWR@loadafter{bytefield} \LWR@loadafter{cancel} \LWR@loadafter{caption} \LWR@loadafter{caption2} \LWR@loadafter{ccaption} \LWR@loadafter{changebar} \LWR@notmemoirloadafter{changepage} \LWR@notmemoirloadafter{chngpage} \LWR@loadafter{chappg} \LWR@loadafter{chapterbib} \LWR@loadafter{chemfig} \LWR@loadafter{chemformula} \LWR@loadafter{chemgreek} \LWR@loadafter{chemmacros} \LWR@loadafter{chemnum} \LWR@loadafter{cite} \LWR@loadafter{color} \LWR@loadafter{colortbl} \LWR@loadafter{continue} \LWR@notmemoirloadafter{crop} \LWR@loadafter{cuted} \LWR@loadafter{cutwin} \LWR@loadafter{dblfloatfix} \LWR@loadafter{dblfnote} \LWR@notmemoirloadafter{dcolumn} \LWR@loadafter{diagbox} \LWR@loadafter{draftwatermark} \LWR@loadafter{easy-todo} \LWR@loadafter{ebook} \LWR@loadafter{ellipsis} \LWR@loadafter{emptypage} \LWR@loadafter{endfloat} \LWR@loadafter{endheads} \LWR@loadafter{endnotes} \LWR@notmemoirloadafter{enumerate} \LWR@loadafter{enumitem} \LWR@notmemoirloadafter{epigraph} \LWR@loadafter{epstopdf} \LWR@loadafter{epstopdf-base} \LWR@loadafter{errata} \LWR@loadafter{eso-pic} \LWR@loadafter{everypage} \LWR@loadafter{everyshi} \LWR@loadafter{extramarks} \LWR@loadafter{fancybox} \LWR@loadafter{fancyhdr} \LWR@loadafter{fancyheadings} \LWR@loadafter{fancyref} \LWR@loadafter{fancyvrb} \LWR@loadafter{figcaps} \LWR@loadafter{figsize} \LWR@loadafter{fix2col} \LWR@loadafter{fixme} \LWR@loadafter{fixmetodonotes} \LWR@loadafter{flafter} \LWR@loadafter{float} \LWR@loadafter{floatflt} \LWR@loadafter{floatpag} \LWR@loadafter{floatrow} \LWR@loadafter{fltrace} \LWR@loadafter{flushend} \LWR@loadafter{fncychap} \LWR@loadafter{fnlineno} \LWR@loadafter{fnpos} \LWR@loadafter{footmisc} \LWR@loadafter{footnote} \LWR@loadafter{footnotehyper} \LWR@loadafter{footnpag} \LWR@loadafter{forest} \LWR@loadafter{framed} \LWR@loadafter{ftnright} \LWR@loadafter{fullpage} \LWR@loadafter{fullwidth} \LWR@loadafter{fwlw} \LWR@loadafter{geometry} \LWR@loadafter{glossaries} \LWR@loadafter{glossary} \LWR@loadafter{grffile} \LWR@loadafter{grid} \LWR@loadafter{gridset} \LWR@loadafter{hang} \LWR@loadafter{hanging} \LWR@loadafter{hypcap} \LWR@loadafter{hypdestopt} \LWR@loadafter{hypernat} \LWR@loadafter{hyperref} \LWR@loadafter{hyperxmp} \LWR@loadafter{hyphenat} \LWR@loadafter{idxlayout} \LWR@loadafter{ifoddpage} \LWR@loadafter{indentfirst} \LWR@loadafter{keyfloat} \LWR@loadafter{layout} \LWR@loadafter{letterspace} \LWR@loadafter{lettrine} \LWR@loadafter{lineno} \LWR@loadafter{lips} \LWR@loadafter{listings} \LWR@loadafter{longtable} \LWR@loadafter{lscape} \LWR@loadafter{ltablex} \LWR@loadafter{ltcaption} \LWR@loadafter{ltxgrid} \LWR@loadafter{ltxtable} \LWR@loadafter{lua-check-hyphen} \LWR@loadafter{luacolor} \LWR@loadafter{luatodonotes} \LWR@loadafter{magaz} \LWR@loadafter{marginfit} \LWR@loadafter{marginfix} \LWR@loadafter{marginnote} \LWR@loadafter{mcaption} \LWR@loadafter{mdframed} \LWR@loadafter{memhfixc} \LWR@loadafter{metalogo} \LWR@loadafter{mhchem} \LWR@loadafter{microtype} \LWR@loadafter{midfloat} \LWR@loadafter{midpage} \LWR@loadafter{morefloats} \LWR@notmemoirloadafter{moreverb} \LWR@notmemoirloadafter{mparhack} \LWR@loadafter{multirow} \LWR@loadafter{multitoc} \LWR@loadafter{nameref} \LWR@loadafter{natbib} \LWR@notmemoirloadafter{needspace} \LWR@loadafter{newtxmath} \LWR@notmemoirloadafter{nextpage} \LWR@loadafter{nicefrac} \LWR@loadafter{nonfloat} \LWR@loadafter{nonumonpart} \LWR@loadafter{nopageno} \LWR@loadafter{nowidow} \LWR@loadafter{ntheorem} \LWR@loadafter{overpic} \LWR@loadafter{pagegrid} \LWR@notmemoirloadafter{pagenote} \LWR@loadafter{pagesel} \LWR@loadafter{paralist} \LWR@loadafter{parnotes} \LWR@notmemoirloadafter{parskip} \LWR@loadafter{pbox} \LWR@loadafter{pdfrender} \LWR@loadafter{pdflscape} \LWR@loadafter{pdfsync} \LWR@loadafter{pfnote} \LWR@loadafter{phfqit} \LWR@loadafter{placeins} \LWR@loadafter{prelim2e} \LWR@loadafter{prettyref} \LWR@loadafter{preview} \LWR@loadafter{quotchap} \LWR@loadafter{quoting} \LWR@loadafter{ragged2e} \LWR@loadafter{realscripts} \LWR@loadafter{register} \LWR@loadafter{relsize} \LWR@loadafter{resizegather} \LWR@loadafter{romanbar} \LWR@loadafter{romanbarpagenumber} \LWR@loadafter{rotating} \LWR@loadafter{rotfloat} \LWR@loadafter{savetrees} \LWR@loadafter{schemata} \LWR@loadafter{scrextend} \LWR@loadafter{scrhack} \LWR@loadafter{scrlayer} \LWR@loadafter{scrlayer-notecolumn} \LWR@loadafter{scrlayer-scrpage} \LWR@loadafter{section} \LWR@loadafter{sectionbreak} \LWR@loadafter{sectsty} \LWR@notmemoirloadafter{setspace} \LWR@loadafter{shadow} \LWR@notmemoirloadafter{showidx} \LWR@loadafter{showkeys} \LWR@loadafter{sidecap} \LWR@loadafter{sidenotes} \LWR@loadafter{siunitx} \LWR@loadafter{soul} \LWR@loadafter{soulpos} \LWR@loadafter{soulutf8} \LWR@loadafter{stabular} \LWR@loadafter{stfloats} \LWR@loadafter{subfig} \LWR@loadafter{subfigure} \LWR@loadafter{supertabular} \LWR@loadafter{t1inc} \LWR@loadafter{tabls} \LWR@notmemoirloadafter{tabularx} \LWR@loadafter{tabulary} \LWR@loadafter{textarea} \LWR@loadafter{textfit} \LWR@loadafter{textpos} \LWR@loadafter{theorem} \LWR@loadafter{threeparttable} \LWR@loadafter{tikz} \LWR@loadafter{titleps} \LWR@loadafter{titlesec} \LWR@loadafter{titletoc} \LWR@notmemoirloadafter{titling} \LWR@notmemoirloadafter{tocbibind} \LWR@loadafter{tocenter} \LWR@notmemoirloadafter{tocloft} \LWR@loadafter{tocstyle} \LWR@loadafter{todo} \LWR@loadafter{todonotes} \LWR@loadafter{transparent} \LWR@loadafter{trimclip} \LWR@loadafter{trivfloat} \LWR@loadafter{turnthepage} \LWR@loadafter{ulem} \LWR@loadafter{underscore} \LWR@loadafter{upref} \LWR@loadafter{url} \LWR@loadafter{varioref}% no lwarp package provided \LWR@notmemoirloadafter{verse} \LWR@loadafter{vertbars} \LWR@loadafter{vmargin} \LWR@loadafter{vowel} \LWR@loadafter{vwcol} \LWR@loadafter{wallpaper} \LWR@loadafter{wasysym} \LWR@loadafter{watermark} \LWR@loadafter{wrapfig} \LWR@loadafter{xcolor} \LWR@loadafter{xellipsis} \LWR@loadafter{xfrac} \LWR@loadafter{xltabular} \LWR@loadafter{xltxtra} \LWR@loadafter{xmpincl} \LWR@loadafter{xpiano} \LWR@loadafter{xtab} \LWR@loadafter{xurl} \LWR@loadafter{xy} \LWR@loadafter{zwpagelayout} \begin{warpHTML} \ifxetexorluatex \@ifpackageloaded{fontspec}{}{ \usepackage[no-math]{fontspec} } \defaultfontfeatures[\rmfamily]{Ligatures={NoCommon,TeX}} \defaultfontfeatures[\sffamily]{Ligatures={NoCommon,TeX}} \defaultfontfeatures[\ttfamily]{Ligatures=NoCommon} \else \RequirePackage {microtype} \microtypesetup{ protrusion=false, expansion=false, tracking=false, kerning=false, spacing=false} \DisableLigatures[f,q,t,T,Q]{encoding = *,family = *} \fi \end{warpHTML} \begin{warpHTML} \RequirePackage[paperheight=190in,paperwidth=20in,% left=2in,right=6in,% top=1in,bottom=1in,% ]{geometry} \@twosidefalse \@mparswitchfalse \end{warpHTML} \begin{warpall} \RequirePackage{xparse} \end{warpall} \begin{warpHTML} \RequirePackage{expl3} \RequirePackage{gettitlestring} \RequirePackage{everyhook} \end{warpHTML} \begin{warpall} \RequirePackage{filecontents} \@ifpackagelater{filecontents}{2011/10/09}% {} { \newwrite\fcwrite \let\LWR@origfilec@ntents\filec@ntents \def\filec@ntents{\def\chardef##1\write{\let\reserved@c\fcwrite}\LWR@origfilec@ntents} } \end{warpall} \begin{warpHTML} \RequirePackage{xifthen} \RequirePackage{xstring} \RequirePackage{verbatim} \RequirePackage{makeidx} \makeindex \RequirePackage{calc} \RequirePackage{refcount} \RequirePackage{newfloat} \end{warpHTML} \begin{warpall} \RequirePackage{environ} \end{warpall} \begin{warpHTML} \RequirePackage{zref} \RequirePackage{amsmath} \def\maketag@@@#1{\text{#1}} \def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip)}} \RequirePackage{printlen} \newrobustcmd*{\LWR@printlength}[1]{% \begingroup% \uselengthunit{PT}% \renewcommand*{\unitspace}{}% \ifdimless{#1}{10pt}{% \printlength{#1}% }{% \rndprintlength{#1}% }% \endgroup% } \end{warpHTML} \begin{warpprint} \RequirePackage{varwidth} \end{warpprint} \begin{warpHTML} \LetLtxMacro\LWR@origRequirePackage\RequirePackage \newcommand*{\LWR@requirepackagenames}{} \newcommand*{\LWR@parsedrequirepackagenames}{} \newcommand*\LWR@findword[3][,]{% \StrBetween[#3,\numexpr#3+1]{#1#2#1}{#1}{#1}% } \newcommand*{\LWR@lookforpackagename}[1]{% \LWR@findword{\LWR@requirepackagenames}{#1}[\LWR@strresult]% \StrSubstitute[100]{\LWR@strresult}{ }{}[\LWR@strresulttwo]% \IfStrEq{\LWR@strresulttwo}{}% {% }% no filename {% yes filename \IfFileExists{lwarp-\LWR@strresulttwo.sty}% {% lwarp-* file found \ifdefvoid{\LWR@parsedrequirepackagenames}{% \edef\LWR@parsedrequirepackagenames{lwarp-\LWR@strresulttwo}% }{% \edef\LWR@parsedrequirepackagenames{% \LWR@parsedrequirepackagenames,lwarp-\LWR@strresulttwo% }% }% }% {% \ifdefvoid{\LWR@parsedrequirepackagenames}{% \edef\LWR@parsedrequirepackagenames{\LWR@strresulttwo}% }{% \edef\LWR@parsedrequirepackagenames{% \LWR@parsedrequirepackagenames,\LWR@strresulttwo% }% }% }% no lwarp-* file }% yes filename } \RenewDocumentCommand{\RequirePackage}{o m o}{% \renewcommand*{\LWR@requirepackagenames}{#2}% \renewcommand*{\LWR@parsedrequirepackagenames}{}% \LWR@lookforpackagename{1}% \LWR@lookforpackagename{2}% \LWR@lookforpackagename{3}% \LWR@lookforpackagename{4}% \LWR@lookforpackagename{5}% \LWR@lookforpackagename{6}% \LWR@lookforpackagename{7}% \LWR@lookforpackagename{8}% \LWR@lookforpackagename{9}% \IfValueTF{#1}% {% options given \IfValueTF{#3}% version given? {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}[#3]}% {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}}% }% {% no options given \IfValueTF{#3}% version given? {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}[#3]}% {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}}% }% } \LetLtxMacro\usepackage\RequirePackage \NewDocumentCommand{\LWR@ProvidesPackagePass}{m o}{ \PackageInfo{lwarp}{Using package `#1' and adding lwarp modifications, including options,}% \IfValueTF{#2} {\ProvidesPackage{lwarp-#1}[#2]} {\ProvidesPackage{lwarp-#1}} \DeclareOption*{\PassOptionsToPackage{\CurrentOption}{#1}} \ProcessOptions\relax \IfValueTF{#2} {\LWR@origRequirePackage{#1}[#2]} {\LWR@origRequirePackage{#1}} } \NewDocumentCommand{\LWR@ProvidesPackageDrop}{m o}{ \PackageInfo{lwarp}{Replacing package `#1' with the lwarp version, discarding options,}% \IfValueTF{#2} {\ProvidesPackage{lwarp-#1}[#2]} {\ProvidesPackage{lwarp-#1}} \DeclareOption*{} \let\ds@\@empty% from the original \ProcessOptions \edef\@curroptions{}% lwarp modification to \ProcessOptions \@process@ptions\relax% from the original \ProcessOptions } \end{warpHTML} \begin{warpHTML} \RequirePackage{caption}% \end{warpHTML} \begin{warpall} \newwrite\LWR@quickfile% \end{warpall} \begin{warpHTML} \newwrite\LWR@lateximagesfile \end{warpHTML} \begin{warpHTML} \def\@include#1 {% \immediate\openout\LWR@quickfile #1_html_inc.tex% lwarp \immediate\write\LWR@quickfile{\string\input{#1.tex}}% lwarp \immediate\closeout\LWR@quickfile% lwarp \LWR@origclearpage% \changed \if@filesw \immediate\write\@mainaux{\string\@input{#1_html_inc.aux}}% changed \fi \@tempswatrue \if@partsw \@tempswafalse \edef\reserved@b{#1}% \@for\reserved@a:=\@partlist\do {\ifx\reserved@a\reserved@b\@tempswatrue\fi}% \fi \if@tempswa \let\@auxout\@partaux \if@filesw \immediate\openout\@partaux #1_html_inc.aux % changed \immediate\write\@partaux{\relax}% \fi \@input@{#1_html_inc.tex}% changed \LWR@origclearpage% changed \@writeckpt{#1}% \if@filesw \immediate\closeout\@partaux \fi \else \deadcycles\z@ \@nameuse{cp@#1}% \fi \let\@auxout\@mainaux% } \end{warpHTML} \begin{warpHTML} \newwrite\LWR@copyoutfile % open the file to write to \newread\LWR@copyinfile % open the file to read from \newcommand*{\LWR@copyfile}[2]{% \LWR@traceinfo{LWR@copyfile: copying #1 to #2} \immediate\openout\LWR@copyoutfile=#2 \openin\LWR@copyinfile=#1 \begingroup\endlinechar=-1 \makeatletter \LWR@traceinfo{LWR@copyfile: about to loop} \loop\unless\ifeof\LWR@copyinfile \LWR@traceinfo{LWR@copyfile: one line} \read\LWR@copyinfile to\LWR@fileline % Read one line and store it into \LWR@fileline \immediate\write\LWR@copyoutfile{\unexpanded\expandafter{\LWR@fileline}}% \repeat \immediate\closeout\LWR@copyoutfile \LWR@traceinfo{LWR@copyfile: done} \endgroup } \end{warpHTML} \begin{warpall} \newbool{LWR@tracinglwarp} \newcommand{\tracinglwarp}{\booltrue{LWR@tracinglwarp}} \newcommand{\LWR@traceinfo}[1]{% \ifbool{LWR@tracinglwarp}% {% \typeout{*** lwarp: #1}% }% {}% } \newbool{HTMLDebugComments} \boolfalse{HTMLDebugComments} \AfterEndPreamble{ \LWR@traceinfo{AfterEndPreamble} } \AtBeginDocument{ \LWR@traceinfo{AtBeginDocument} } \end{warpall} \begin{warpHTML} \newcommand*{\LWR@formatting}{HTML} \newcommand*{\LWR@formatted}[1]{% \ifcsundef{LWR@print@#1}{% \expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname% \csname#1\endcsname% }{}% \ifcsundef{#1}{% \expandafter\newrobustcmd\csname #1\endcsname{% \csuse{LWR@\LWR@formatting @#1}% }% }{% \expandafter\renewrobustcmd\csname #1\endcsname{% \csuse{LWR@\LWR@formatting @#1}% }% }% } \newcommand*{\LWR@expandableformatted}[1]{% \ifcsundef{LWR@print@#1}{% \expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname% \csname#1\endcsname% }{}% \ifcsundef{#1}{% \expandafter\newcommand\csname #1\endcsname{% \csuse{LWR@\LWR@formatting @#1}% }% }{% \expandafter\renewcommand\csname #1\endcsname{% \csuse{LWR@\LWR@formatting @#1}% }% }% } \newcommand*{\LWR@formattedenv}[1]{% \ifcsundef{LWR@print@#1}{% \expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname% \csname#1\endcsname% \csletcs{endLWR@print@#1}{end#1}% }{}% \DeclareDocumentEnvironment{#1}{}% {\csuse{LWR@\LWR@formatting @#1}}% {\csuse{endLWR@\LWR@formatting @#1}}% } \newcommand*{\LWR@expandableformattedenv}[1]{% \ifcsundef{LWR@print@#1}{% \expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname% \csname#1\endcsname% \csletcs{endLWR@print@#1}{end#1}% }{}% \DeclareExpandableDocumentEnvironment{#1}{}% {\csuse{LWR@\LWR@formatting @#1}}% {\csuse{endLWR@\LWR@formatting @#1}}% } \end{warpHTML} \begin{warpall} \newbool{FormatEPUB} \boolfalse{FormatEPUB} \newbool{FormatWP} \boolfalse{FormatWP} \newbool{WPMarkFloats} \boolfalse{WPMarkFloats} \newbool{WPMarkMinipages} \boolfalse{WPMarkMinipages} \newbool{WPMarkTOC} \booltrue{WPMarkTOC} \newbool{WPMarkLOFT} \boolfalse{WPMarkLOFT} \newbool{WPMarkMath} \boolfalse{WPMarkMath} \newbool{WPTitleHeading} \boolfalse{WPTitleHeading} \end{warpall} \begin{warpHTML} \AtBeginDocument{ \ifbool{FormatWP}{ \@ifundefined{chapter}{ \ifbool{WPTitleHeading}{% part and section starting at h2 \renewcommand*{\LWR@tagtitle}{h1} \renewcommand*{\LWR@tagtitleend}{/h1} \renewcommand*{\LWR@tagpart}{h2} \renewcommand*{\LWR@tagpartend}{/h2} \renewcommand*{\LWR@tagsection}{h3} \renewcommand*{\LWR@tagsectionend}{/h3} \renewcommand*{\LWR@tagsubsection}{h4} \renewcommand*{\LWR@tagsubsectionend}{/h4} \renewcommand*{\LWR@tagsubsubsection}{h5} \renewcommand*{\LWR@tagsubsubsectionend}{/h5} \renewcommand*{\LWR@tagparagraph}{h6} \renewcommand*{\LWR@tagparagraphend}{/h6} \renewcommand*{\LWR@tagsubparagraph}{span class="subparagraph"} \renewcommand*{\LWR@tagsubparagraphend}{/span} }% WPTitleHeading {% not WPTitleHeading, part and section starting at h1 \renewcommand*{\LWR@tagtitle}{div class="title"} \renewcommand*{\LWR@tagtitleend}{/div} \renewcommand*{\LWR@tagpart}{h1} \renewcommand*{\LWR@tagpartend}{/h1} \renewcommand*{\LWR@tagsection}{h2} \renewcommand*{\LWR@tagsectionend}{/h2} \renewcommand*{\LWR@tagsubsection}{h3} \renewcommand*{\LWR@tagsubsectionend}{/h3} \renewcommand*{\LWR@tagsubsubsection}{h4} \renewcommand*{\LWR@tagsubsubsectionend}{/h4} \renewcommand*{\LWR@tagparagraph}{h5} \renewcommand*{\LWR@tagparagraphend}{/h5} \renewcommand*{\LWR@tagsubparagraph}{h6} \renewcommand*{\LWR@tagsubparagraphend}{/h6} }% not WPTitleHeading }% chapter undefined {% chapter defined \ifbool{WPTitleHeading}{} {% not WPTitleHeading, part and chapter starting at h1 \renewcommand*{\LWR@tagtitle}{div class="title"} \renewcommand*{\LWR@tagtitleend}{/div} \renewcommand*{\LWR@tagpart}{h1} \renewcommand*{\LWR@tagpartend}{/h1} \renewcommand*{\LWR@tagchapter}{h2} \renewcommand*{\LWR@tagchapterend}{/h2} \renewcommand*{\LWR@tagsection}{h3} \renewcommand*{\LWR@tagsectionend}{/h3} \renewcommand*{\LWR@tagsubsection}{h4} \renewcommand*{\LWR@tagsubsectionend}{/h4} \renewcommand*{\LWR@tagsubsubsection}{h5} \renewcommand*{\LWR@tagsubsubsectionend}{/h5} \renewcommand*{\LWR@tagparagraph}{h6} \renewcommand*{\LWR@tagparagraphend}{/h6} \renewcommand*{\LWR@tagsubparagraph}{span class="subparagraph"} \renewcommand*{\LWR@tagsubparagraphend}{/span} }% not WPTitleHeading }% chapter defined }{}% FormatWP }% AtBeginDocument \end{warpHTML} \begin{warpHTML} \chardef\LWR@origpound=`\# \let\LWR@origcomma\, \let\LWR@origthinspace\thinspace \let\LWR@origtilde~ \let\LWR@origenskip\enskip \let\LWR@origquad\quad \let\LWR@origqquad\qquad \let\LWR@orighfill\hfill \let\LWR@orighfil\hfil \let\LWR@orighss\hss \let\LWR@origllap\llap \let\LWR@origrlap\rlap \let\LWR@orighfilneg\hfilneg \let\LWR@orighrulefill\hrulefill \let\LWR@origdotfill\dotfill \let\LWR@origmedskip\medskip \let\LWR@origbigskip\bigskip \let\LWR@origtextellipsis\textellipsis \let\LWR@orignormalsize\normalsize \let\LWR@origsmall\small \let\LWR@origfootnotesize\footnotesize \let\LWR@origscriptsize\scriptsize \let\LWR@origtiny\tiny \let\LWR@origlarge\large \let\LWR@origLarge\Large \let\LWR@origLARGE\LARGE \let\LWR@orighuge\huge \let\LWR@origHuge\Huge \LetLtxMacro\LWR@origtextrm\textrm \LetLtxMacro\LWR@origtextsf\textsf \LetLtxMacro\LWR@origtexttt\texttt \LetLtxMacro\LWR@origtextnormal\textnormal \LetLtxMacro\LWR@origtextbf\textbf \LetLtxMacro\LWR@origtextmd\textmd \LetLtxMacro\LWR@origtextit\textit \LetLtxMacro\LWR@origtextsl\textsl \LetLtxMacro\LWR@origtextsc\textsc \LetLtxMacro\LWR@origtextup\textup \LetLtxMacro\LWR@origemph\emph \LetLtxMacro\LWR@origrmfamily\rmfamily \LetLtxMacro\LWR@origsffamily\sffamily \LetLtxMacro\LWR@origttfamily\ttfamily \LetLtxMacro\LWR@origbfseries\bfseries \LetLtxMacro\LWR@origmdseries\mdseries \LetLtxMacro\LWR@origupshape\upshape \LetLtxMacro\LWR@origslshape\slshape \LetLtxMacro\LWR@origscshape\scshape \LetLtxMacro\LWR@origitshape\itshape \LetLtxMacro\LWR@origem\em \LetLtxMacro\LWR@orignormalfont\normalfont \let\LWR@origraggedright\raggedright \let\LWR@origonecolumn\onecolumn \let\LWR@origsp\sp \let\LWR@origsb\sb \LetLtxMacro\LWR@origtextsuperscript\textsuperscript \LetLtxMacro\LWR@orig@textsuperscript\@textsuperscript \AtBeginDocument{ \LetLtxMacro\LWR@origtextsubscript\textsubscript \LetLtxMacro\LWR@orig@textsubscript\@textsubscript } \LetLtxMacro\LWR@origunderline\underline \let\LWR@origraggedright\raggedright \let\LWR@origraggedleft\raggedleft \let\LWR@origcentering\centering \let\LWR@orignewpage\newpage \let\LWR@origpagestyle\pagestyle \let\LWR@origthispagestyle\thispagestyle \LetLtxMacro\LWR@origpagenumbering\pagenumbering \let\LWR@orignewline\newline \AtBeginDocument{% in case packages change definition \let\LWR@orig@trivlist\@trivlist \let\LWR@origtrivlist\trivlist \let\LWR@origendtrivlist\endtrivlist \LetLtxMacro\LWR@origitem\item \LetLtxMacro\LWR@origitemize\itemize \LetLtxMacro\LWR@endorigitemize\enditemize \LetLtxMacro\LWR@origenumerate\enumerate \LetLtxMacro\LWR@endorigenumerate\endenumerate \LetLtxMacro\LWR@origdescription\description \LetLtxMacro\LWR@endorigdescription\enddescription \let\LWR@orig@mklab\@mklab \let\LWR@origmakelabel\makelabel \let\LWR@orig@donoparitem\@donoparitem \LetLtxMacro\LWR@orig@item\@item \let\LWR@orig@nbitem\@nbitem } \let\LWR@origpar\par \LetLtxMacro\LWR@origfootnote\footnote \let\LWR@orig@mpfootnotetext\@mpfootnotetext \let\LWR@origclearpage\clearpage \AtBeginDocument{% in case packages change definition \LetLtxMacro\LWR@orighline\hline% \LetLtxMacro\LWR@origcline\cline% } \end{warpHTML} \begin{warpHTML} \AtBeginDocument{ \LetLtxMacro\LWR@origt\t \ifPDFTeX \LetLtxMacro\LWR@origequalaccent\= \LetLtxMacro\LWR@origdotaccent\. \LetLtxMacro\LWR@origu\u \LetLtxMacro\LWR@origv\v \LetLtxMacro\LWR@origc\c \LetLtxMacro\LWR@origd\d \LetLtxMacro\LWR@origb\b \renewcommand*{\=}[1]{#1\HTMLunicode{0305}} \renewcommand*{\.}[1]{#1\HTMLunicode{0307}} \renewcommand*{\u}[1]{#1\HTMLunicode{0306}} \renewcommand*{\v}[1]{#1\HTMLunicode{030C}} \renewcommand*{\c}[1]{#1\HTMLunicode{0327}} \renewcommand*{\d}[1]{#1\HTMLunicode{0323}} \renewcommand*{\b}[1]{#1\HTMLunicode{0331}} \fi \def\LWR@t#1#2{#1\HTMLunicode{0361}#2} \renewcommand*{\t}[1]{\LWR@t#1} \ifPDFTeX \newcommand*{\LWR@restoreorigaccents}{% \LetLtxMacro\=\LWR@origequalaccent% \LetLtxMacro\.\LWR@origdotaccent% \LetLtxMacro\u\LWR@origu% \LetLtxMacro\v\LWR@origu% \LetLtxMacro\t\LWR@origt% \LetLtxMacro\c\LWR@origc% \LetLtxMacro\d\LWR@origd% \LetLtxMacro\b\LWR@origb% }% \else% XeLaTeX, LuaLaTeX: \newcommand*{\LWR@restoreorigaccents}{% \LetLtxMacro\t\LWR@origt% }% \fi% }% AtBeginDocument \end{warpHTML} \begin{warpprint} \typeout{lwarp: generating configuration files} \end{warpprint} \begin{warpprint} \immediate\openout\LWR@quickfile=\jobname_html.tex \immediate\write\LWR@quickfile{% \detokenize{\PassOptionsToPackage}% {warpHTML,BaseJobname=\jobname}{lwarp}% } \immediate\write\LWR@quickfile{% \detokenize{\input}\string{\jobname.tex\string }% } \immediate\closeout\LWR@quickfile \end{warpprint} \begin{warpprint} \ifcsdef{LWR@quickfile}{}{\newwrite{\LWR@quickfile}} \immediate\openout\LWR@quickfile=lwarpmk.conf \ifbool{usingOSWindows}{ \immediate\write\LWR@quickfile{opsystem = "Windows"} }{ \immediate\write\LWR@quickfile{opsystem = "Unix"} } \ifPDFTeX \immediate\write\LWR@quickfile{latexname = "pdflatex"} \fi \ifXeTeX \immediate\write\LWR@quickfile{latexname = "xelatex"} \fi \ifLuaTeX \immediate\write\LWR@quickfile{latexname = "lualatex"} \fi \immediate\write\LWR@quickfile{sourcename = "\jobname"} \immediate\write\LWR@quickfile{% homehtmlfilename = "\HomeHTMLFilename"% } \immediate\write\LWR@quickfile{htmlfilename = "\HTMLFilename"} \immediate\write\LWR@quickfile{latexmk = "\ifbool{LWR@latexmk}{true}{false}"} \immediate\write\LWR@quickfile{shellescape = "\ifshellescape true\else false\fi"} \immediate\write\LWR@quickfile{xindylanguage = "\LWR@xindyLanguage"} \immediate\write\LWR@quickfile{xindycodepage = "\LWR@xindyCodepage"} \immediate\write\LWR@quickfile{xindystyle = "\LWR@xindyStyle"} \immediate\write\LWR@quickfile{pdftotextenc = "\LWR@pdftotextEnc"} \immediate\closeout\LWR@quickfile \end{warpprint} \begin{warpprint} \ifcsdef{LWR@quickfile}{}{\newwrite{\LWR@quickfile}} \immediate\openout\LWR@quickfile=\jobname.lwarpmkconf \ifbool{usingOSWindows}{ \immediate\write\LWR@quickfile{opsystem = "Windows"} }{ \immediate\write\LWR@quickfile{opsystem = "Unix"} } \ifPDFTeX \immediate\write\LWR@quickfile{latexname = "pdflatex"} \fi \ifXeTeX \immediate\write\LWR@quickfile{latexname = "xelatex"} \fi \ifLuaTeX \immediate\write\LWR@quickfile{latexname = "lualatex"} \fi \immediate\write\LWR@quickfile{sourcename = "\jobname"} \immediate\write\LWR@quickfile{% homehtmlfilename = "\HomeHTMLFilename"% } \immediate\write\LWR@quickfile{htmlfilename = "\HTMLFilename"} \immediate\write\LWR@quickfile{latexmk = "\ifbool{LWR@latexmk}{true}{false}"} \immediate\write\LWR@quickfile{shellescape = "\ifshellescape true\else false\fi"} \immediate\write\LWR@quickfile{xindylanguage = "\LWR@xindyLanguage"} \immediate\write\LWR@quickfile{xindycodepage = "\LWR@xindyCodepage"} \immediate\write\LWR@quickfile{xindystyle = "\LWR@xindyStyle"} \immediate\write\LWR@quickfile{pdftotextenc = "\LWR@pdftotextEnc"} \immediate\closeout\LWR@quickfile \end{warpprint} \begin{warpprint} \begin{filecontents*}{lwarp.css} /* CSS stylesheet for the LaTeX lwarp package Copyright 2016-2018 Brian Dunn — BD Tech Concepts LLC */ /* a fix for older browsers: */ header, section, footer, aside, nav, main, article, figure { display: block; } A:link {color:#000080 ; text-decoration: none ; } A:visited {color:#800000 ; } A:hover {color:#000080 ; text-decoration: underline ;} A:active {color:#800000 ; } a.tocpart {display: inline-block ; margin-left: 0em ; font-weight: bold ;} a.tocchapter {display: inline-block ; margin-left: 0em ; font-weight: bold ;} a.tocsection {display: inline-block ; margin-left: 1em ; text-indent: -.5em ; font-weight: bold ; } a.tocsubsection {display: inline-block ; margin-left: 2em ; text-indent: -.5em ; } a.tocsubsubsection {display: inline-block ; margin-left: 3em ; text-indent: -.5em ; } a.tocparagraph {display: inline-block ; margin-left: 4em ; text-indent: -.5em ; } a.tocsubparagraph {display: inline-block ; margin-left: 5em ; text-indent: -.5em ; } a.tocfigure {margin-left: 0em} a.tocsubfigure {margin-left: 2em} a.toctable {margin-left: 0em} a.tocsubtable {margin-left: 2em} a.toctheorem {margin-left: 0em} a.toclstlisting {margin-left: 0em} body { font-family: "DejaVu Serif", "Bitstream Vera Serif", "Lucida Bright", Georgia, serif; background: #FAF7F4 ; color: black ; margin:0em ; padding:0em ; font-size: 100% ; line-height: 1.2 ; } p {margin: 1.5ex 0em 1.5ex 0em ;} table p {margin: .5ex 0em .5ex 0em ;} /* Holds a section number to add space between it and the name */ span.sectionnumber { margin-right: 0em } /* Inserted in front of index lines */ span.indexitem {margin-left: 0em} span.indexsubitem {margin-left: 2em} span.indexsubsubitem {margin-left: 4em} div.hidden, span.hidden { display: none ; } kbd, span.texttt { font-family: "DejaVu Mono", "Bitstream Vera Mono", "Lucida Console", "Nimbus Mono L", "Liberation Mono", "FreeMono", "Andale Mono", "Courier New", monospace; font-size: 100% ; } pre { padding: 3pt ; } span.strong, span.textbf, div.strong, div.textbf { font-weight: bold; } span.textit, div.textit { font-style: italic; } span.textmd, div.textmd { font-weight: normal; } span.textsc, div.textsc { font-variant: small-caps; } span.textsl, div.textsl { font-style: oblique; } span.textup, div.textup { font-variant: normal; } span.textrm, div.textrm { font-family: "DejaVu Serif", "Bitstream Vera Serif", "Lucida Bright", Georgia, serif; } span.textsf, div.textsf { font-family: "DejaVu Sans", "Bitstream Vera Sans", Geneva, Verdana, sans-serif ; } span.textcircled { border: 1px solid black ; border-radius: 1ex ; } span.underline { text-decoration: underline ; text-decoration-skip: auto ; } span.overline { text-decoration: overline ; text-decoration-skip: auto ; } /* for diagbox */ div.diagboxtitleN { border-bottom: 1px solid gray } div.diagboxtitleS { border-top: 1px solid gray } div.diagboxE { padding-left: 2em ; text-align: right ; } div.diagboxW { padding-right: 2em ; text-align: left ; } /* For realscripts */ .supsubscript { display: inline-block; text-align:left ; } .supsubscript sup, .supsubscript sub { position: relative; display: block; font-size: .5em; line-height: 1; } .supsubscript sup { top: .5em; } .supsubscript sub { top: .5em; } div.attribution p { text-align: right ; font-size: 80% } span.poemtitle { font-size: 120% ; font-weight: bold; } pre.tabbing { font-family: "Linux Libertine Mono O", "Lucida Console", "Droid Sans Mono", "DejaVu Mono", "Bitstream Vera Mono", "Liberation Mono", "FreeMono", "Andale Mono", "Nimbus Mono L", "Courier New", monospace; } blockquote { margin-left: 0px ; margin-right: 0px ; } /* quotchap is for the quotchap package */ div.quotchap { font-style: oblique ; overflow-x: auto ; margin-left: 2em ; margin-right: 2em ; } blockquote p, div.quotchap p { line-height: 1.5; text-align: left ; font-size: .85em ; margin-left: 3em ; margin-right: 3em ; } /* qauthor is for the quotchap package */ div.qauthor { display: block ; text-align: right ; margin-left: auto ; margin-right: 2em ; font-size: 80% ; font-variant: small-caps; } div.qauthor p { text-align: right ; } blockquotation { margin-left: 0px ; margin-right: 0px ; } blockquotation p { line-height: 1.5; text-align: left ; font-size: .85em ; margin-left: 3em ; margin-right: 3em ; } div.epigraph, div.dictum { line-height: 1.2; text-align: left ; padding: 3ex 1em 0ex 1em ; /* margin: 3ex auto 3ex auto ; */ /* Epigraph centered */ margin: 3ex 1em 3ex auto ; /* Epigraph to the right */ /* margin: 3ex 1em 3ex 1em ; */ /* Epigraph to the left */ font-size: .85em ; max-width: 27em ; } div.epigraphsource, div.dictumauthor { text-align:right ; margin-left:auto ; /* max-width: 50% ; */ border-top: 1px solid #A0A0A0 ; padding-bottom: 3ex ; line-height: 1.2; } div.epigraph p, div.dictum p { padding: .5ex ; margin: 0ex ;} div.epigraphsource p, div.dictumauthor p { padding: .5ex 0ex 0ex 0ex ; margin: 0ex ;} div.dictumauthor { font-style:italic } /* lettrine package: */ span.lettrine { font-size: 4ex ; float: left ; } span.lettrinetext { font-variant: small-caps ; } /* ulem and soul packages: */ span.uline { text-decoration: underline ; text-decoration-skip: auto ; } span.uuline { text-decoration: underline ; text-decoration-skip: auto ; text-decoration-style: double ; } span.uwave { text-decoration: underline ; text-decoration-skip: auto ; text-decoration-style: wavy ; } span.sout { text-decoration: line-through ; } span.xout { text-decoration: line-through ; } span.dashuline { text-decoration: underline ; text-decoration-skip: auto ; text-decoration-style: dashed ; } span.dotuline { text-decoration: underline ; text-decoration-skip: auto ; text-decoration-style: dotted ; } span.letterspacing { letter-spacing: .2ex ; } span.capsspacing { font-variant: small-caps ; letter-spacing: .1ex ; } span.highlight { background: #F8E800 ; } html body { margin: 0 ; line-height: 1.2; } body div { margin: 0ex; } h1, h2, h3, h4, h5, h6, span.paragraph, span.subparagraph { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; font-style: normal ; font-weight: bold ; text-align: left ; } h1 { /* title of the entire website, used on each page */ text-align: center ; font-size: 2.5em ; padding: .4ex 0em 0ex 0em ; } h2 { font-size: 2.25em } h3 { font-size: 2em } h4 { font-size: 1.75em } h5 { font-size: 1.5em } h6 { font-size: 1.25em } span.paragraph {font-size: 1em ; font-variant: normal ; margin-right: 1em ; } span.subparagraph {font-size: 1em ; font-variant: normal ; margin-right: 1em ; } div.minisec { font-family: "DejaVu Sans", "Bitstream Vera Sans", Geneva, Verdana, sans-serif ; font-style: normal ; font-weight: bold ; text-align: left ; } /* Title of the file */ h1 { margin: 0ex 0em 0ex 0em ; line-height: 1.3; text-align: center ; } /* Part */ h2 { margin: 1ex 0em 1ex 0em ; line-height: 1.3; text-align: center ; } /* Chapter */ h3 { margin: 3ex 0em 1ex 0em ; line-height: 1.3; } /* Section */ h4 { margin: 3ex 0em 1ex 0em ; line-height: 1.3; } /* Sub-Section */ h5 { margin: 3ex 0em 1ex 0em ; line-height: 1.3; } /* Sub-Sub-Section */ h6 { margin: 3ex 0em 1ex 0em ; line-height: 1.3; } div.titlepage { text-align: center ; } .footnotes { font-size: .85em ; margin: 3ex 2em 0ex 2em ; border-top: 1px solid silver ; } .marginpar, .marginparblock { max-width:50%; float:right; text-align:left; margin: 1ex 0.5em 1ex 1em ; padding: 1ex 0.5em 1ex 0.5em ; font-size: 85% ; border-top: 1px solid silver ; border-bottom: 1px solid silver ; overflow-x: auto; } .marginpar br { margin-bottom: 2ex ; } div.marginblock, div.marginparblock { max-width:50%; float:right; text-align:left; margin: 1ex 0.5em 1ex 1em ; padding: 1ex 0.5em 1ex 0.5em ; overflow-x: auto; } div.marginblock div.minipage, div.marginparblock div.minipage { display: block ; margin: 0pt auto 0pt auto ; } div.marginblock div.minipage p , div.marginparblock div.minipage p { font-size: 85%} div.marginblock br , div.marginparblock br { margin-bottom: 2ex ; } section.textbody div.footnotes{ margin: 3ex 2em 0ex 2em ; border-bottom: 2px solid silver ; } .footnoteheader { border-top: 2px solid silver ; margin-top: 3ex ; padding-top: 1ex ; font-weight: bold ; } .mpfootnotes { text-align: left ; font-size: .85em ; margin-left: 1em ; border-top: 1px solid silver ; } /* Remove footnote top border in the title page. */ div.titlepage div.mpfootnotes { border-top: none ; } ol { margin: 1ex 1em 1ex 0em; line-height: 1.2; } ul, body dir, body menu { margin: 3ex 1em 3ex 0em; line-height: 1.2; } li { margin: 0ex 0em 1ex 0em; } html { margin: 0; padding: 0; } .programlisting { font-family: "DejaVu Mono", "Bitstream Vera Mono", "Lucida Console", "Nimbus Mono L", "Liberation Mono", "FreeMono", "Andale Mono", "Courier New", monospace; margin: 1ex 0ex 1ex 0ex ; padding: .5ex 0pt .5ex 0pt ; overflow-x: auto; } section.textbody>pre.programlisting { border-top: 1px solid silver ; border-bottom: 1px solid silver ; } div.displaymath { text-align: center ; } div.displaymathnumbered { text-align: right ; margin-left: 5% ; margin-right: 5% ; min-width: 2.5in ; } @media all and (min-width: 400px) { div.displaymathnumbered { margin-left: 10% ; margin-right: 10% ; } } @media all and (min-width: 800px) { div.displaymathnumbered { margin-right: 20% ; } } @media all and (min-width: 1200px) { div.displaymathnumbered { margin-right: 30% ; } } .inlineprogramlisting { font-family: "DejaVu Mono", "Bitstream Vera Mono", "Lucida Console", "Nimbus Mono L", "Liberation Mono", "FreeMono", "Andale Mono", "Courier New", monospace; overflow-x: auto; } span.listinglabel { display: inline-block ; font-size: 70% ; width: 4em ; text-align: right ; margin-right: 2em ; } div.abstract { margin: 2em 5% 2em 5% ; padding: 1ex 1em 1ex 1em ; /* font-weight: bold ; */ font-size: 90% ; text-align: left ; } div.abstract dl {line-height:1.5;} div.abstract dt {color:#304070;} div.abstracttitle{ font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-weight:bold; font-size:1.25em; text-align: center ; } span.abstractrunintitle{ font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-weight:bold; } .verbatim { overflow-x: auto ; } .alltt { overflow-x: auto ; } .bverbatim { margin: 1ex 0pt 1ex 0pt ; padding: .5ex 0pt .5ex 0pt ; overflow-x: auto ; } .lverbatim { margin: 1ex 0pt 1ex 0pt ; padding: .5ex 0pt .5ex 0pt ; overflow-x: auto ; } .fancyvrb { font-size:.85em ; margin: 3ex 0pt 3ex 0pt } .fancyvrblabel { font-weight:bold; text-align: center ; } .verse { font-family: "Linux Libertine Mono O", "Lucida Console", "Droid Sans Mono", "DejaVu Mono", "Bitstream Vera Mono", "Liberation Mono", "FreeMono", "Andale Mono", "Nimbus Mono L", "Courier New", monospace; margin-left: 1em ; } div.singlespace { line-height: 1.2 ; } div.onehalfspace { line-height: 1.5 ; } div.doublespace { line-height: 2 ; } /* Word processor format output: */ div.wpfigure { border: 1px solid red ; margin: .5ex ; padding: .5ex ; } div.wptable { border: 1px solid blue ; margin: .5ex ; padding: .5ex ; } div.wpminipage { border: 1px solid green ; margin: .5ex ; padding: .5ex ;} /* Minipage environments, vertically aligned to top, center, bottom: */ .minipage, .fminipage, .fcolorminipage { /* display: inline-block ; */ /* Mini pages which follow each other will be tiled. */ margin: .25em .25em .25em .25em; padding: .25em .25em .25em .25em; display: inline-flex; flex-direction: column ; overflow: auto; } /* Paragraphs in the flexbox did not collapse their margins. */ /* Have not yet researched this. */ .minipage p {margin: .75ex 0em .75ex 0em ;} .fboxBlock .minipage, .colorbox .minipage, .colorboxBlock .minipage, .fcolorbox .minipage, .fcolorboxBlock .minipage {border: none ; background: none;} .fbox, .fboxBlock { border: 1px solid black ; } .fbox, .fboxBlock, .fcolorbox, .fcolorboxBlock, .colorbox, .colorboxBlock, .fminipage, .fcolorminipage {display: inline-block} .shadowbox, .shabox { border: 1px solid black; box-shadow: 3px 3px 3px #808080 ; border-radius: 0px ; padding: .4ex .3em .4ex .3em ; margin: 0pt .3ex 0pt .3ex ; display: inline-block ; } .doublebox { border: 3px double black; border-radius: 0px ; padding: .4ex .3em .4ex .3em ; margin: 0pt .3ex 0pt .3ex ; display: inline-block ; } .ovalbox, .Ovalbox { border: 1px solid black; border-radius: 1ex ; padding: .4ex .3em .4ex .3em ; margin: 0pt .3ex 0pt .3ex ; display: inline-block ; } .Ovalbox { border-width: 2px ; } .framebox { border: 1px solid black; border-radius: 0px ; padding: .3ex .2em 0ex .2em ; margin: 0pt .1ex 0pt .1ex ; display: inline-block ; } .mdframed { /* padding: 0ex ; */ /* border: 1px solid blafck; */ /* border-radius: 0px ; */ padding: 0ex ; margin: 3ex 5% 3ex 5% ; /* display: inline-block ; */ } .mdframed p { padding: 0ex .5em 0ex .5em ; } .mdframed dl { padding: 0ex .5em 0ex .5em ; } .mdframedtitle { padding: .5em ; display: block ; font-size: 130% ; margin-bottom: 1ex ; } .mdframedsubtitle { padding: 0ex .5em 0ex .5em ; display: block ; font-size: 115% ; } .mdframedsubsubtitle { padding: 0ex .5em 0ex .5em ; display: block ; } .mdtheorem { padding: 0ex .5em 0ex .5em ; margin: 3ex 5% 3ex 5% ; /* display: inline-block ; */ } /* framed package */ .framed, pre.boxedverbatim, fcolorbox { margin: 3ex 0em 3ex 0em ; border: 1px solid black; border-radius: 0px ; padding: .3ex 1em 0ex 1em ; display: block ; } .shaded { margin: 3ex 0em 3ex 0em ; padding: .3ex 1em .3ex 1em ; display: block ; } .snugframed { margin: 3ex 0em 3ex 0em ; border: 1px solid black; border-radius: 0px ; display: block ; } .framedleftbar { margin: 3ex 0em 3ex 0em ; border-left: 3pt solid black; border-radius: 0px ; padding: .3ex .2em .3ex 1em ; display: block ; } .framedtitle { margin: 0em ; padding: 0em ; font-size: 130% } .framedtitle p { padding: .3em } dl { margin: 1ex 2em 1ex 0em; line-height: 1.3; } dl dt { margin-top: 1ex; margin-left: 1em ; font-weight: bold; } dl dd p { margin-top: 0em; } nav { font-family: "URW Classico", Optima, "Linux Biolinum O", "DejaVu Sans", "Bitstream Vera Sans", Geneva, Verdana, sans-serif ; margin-bottom: 4ex ; } nav p { line-height: 1.2 ; margin-top:.5ex ; margin-bottom:.5ex; font-size: .9em ; } img, img.hyperimage, img.borderimage { max-width: 600px; border: 1px solid silver; box-shadow: 3px 3px 3px #808080 ; padding: .5% ; margin: .5% ; background: none ; } img.inlineimage{ padding: 0px ; box-shadow: none ; border: none ; background: none ; margin: 0px ; display: inline-block ; border-radius: 0px ; } img.logoimage{ max-width: 300px ; box-shadow: 3px 3px 3px #808080 ; border: 1px solid black ; background:none ; padding:0 ; margin:.5ex ; border-radius: 10px ; } .section { /* To have each section float relative to each other: */ /* display: block ; float: left ; position: relative ; background: white ; border: 1px solid silver ; padding: .5em ; */ margin: 0ex .5em 0ex .5em ; padding: 0 ; } figure { margin: 5ex auto 5ex auto ; padding: 1ex 1em 1ex 1em ; overflow-x: auto ; } /* To automatically center images in figures: */ /* figure img.inlineimage { margin: 0ex auto 0ex auto ; display: block ; } */ /* To automatically center minipages in figures: */ /* figure div.minipage, figure div.minipage div.minipage { margin: 1ex auto 1ex auto ; display: block ; } */ figure div.minipage p { font-size: 85% ; } figure.subfigure, figure.subtable { display: inline-block ; margin: 3ex 1em 3ex 1em ; } figcaption .minipage { margin:0 ; padding: 0 } div.minipage figure { border: none ; box-shadow: none ; } div.floatrow { text-align: center; } div.floatrow figure { display: inline-block ; margin: 1ex 2% ; } div.floatfoot { font-size: .85em ; border-top: 1px solid silver ; line-height: 1.2 ; } figcaption , .lstlistingtitle { font-size: .85em ; text-align: center ; font-weight: bold ; margin-top: 1ex ; margin-bottom: 1ex ; } figure.subfigure figcaption, figure.subtable figcaption { border-bottom: none ; background: none ; } div.nonfloatcaption { margin: 1ex auto 1ex auto ; font-size: .85em ; text-align: center ; font-weight: bold ; } /* For a \RawCaption inside a minipage inside a figure's floatrow: */ figure div.floatrow div.minipage figcaption { border: none ; background: none ; } /* For packages such as float, rotfloat, and algorithm2e: */ figure.boxed, figure.boxruled { border: 1px solid black ; } figure.ruled { border-top: 1px solid black ; border-bottom: 1px solid black ; border-left: 0px ; border-right: 0px ; border-radius: 0px ; background: none ; box-shadow: none ; } figure.ruled figcaption, figure.boxruled figcaption { border-top: 1px solid silver ; border-bottom: 1px solid silver ; } table { margin: 1ex auto 1ex auto ; border-collapse: separate ; border-spacing: 0px ; line-height: 1.3 ; } tr.hline td {border-top: 1px solid #808080 ; margin-top: 0ex ; margin-bottom: 0ex ; } /* for \hline */ tr.tbrule td {border-top: 1px solid black ; margin-top: 0ex ; margin-bottom: 0ex ; } /* for \toprule, \bottomrule */ td {padding: .5ex .5em .5ex .5em ;} table td.tdl { text-align: left ; vertical-align: middle ; } table td.tdc { text-align: center ; vertical-align: middle ; } table td.tdat { text-align: center ; vertical-align: middle ; padding: 0px ; margin: 0px ; } table td.tdbang { text-align: center ; vertical-align: middle ; } table td.tdr { text-align: right ; vertical-align: middle ; } table td.tdp { text-align: left ; vertical-align: bottom ; } table td.tdm { text-align: left ; vertical-align: middle ; } table td.tdb { text-align: left ; vertical-align: top ; } table td.tdP { text-align: center ; vertical-align: bottom ; } table td.tdM { text-align: center ; vertical-align: middle ; } table td.tdB { text-align: center ; vertical-align: top ; } table td.tvertbarl { border-left: 1px solid black } table td.tvertbarldouble { border-left: 4px double black } table td.tvertbarr { border-right: 1px solid black } table td.tvertbarrdouble { border-right: 4px double black } table td.tvertbarldash { border-left: 1px dashed black } table td.tvertbarldoubledash { border-left: 2px dashed black } table td.tvertbarrdash { border-right: 1px dashed black } table td.tvertbarrdoubledash { border-right: 2px dashed black } /* for cmidrules: */ table td.tdrule { border-top: 1px solid #A0A0A0 ; } table td.tdrulel { border-top-left-radius:.5em ; border-top: 1px solid #A0A0A0 ; } table td.tdruler { border-top-right-radius:.5em ; border-top: 1px solid #A0A0A0 ; } table td.tdrulelr { border-top-left-radius:.5em ; border-top-right-radius:.5em ; border-top: 1px solid #A0A0A0 ; } /* Margins of paragraphs inside table cells: */ td.tdp p , td.tdprule p , td.tdP p , td.tdPrule p { padding-top: 1ex ; padding-bottom: 1ex ; margin: 0ex ; } td.tdm p , td.tmbrule p , td.tdM p , td.tdMrule p { padding-top: 1ex ; padding-bottom: 1ex ; margin: 0ex ; } td.tdb p , td.tdbrule p , td.tdB p , td.tdBrule p { padding-top: 1ex ; padding-bottom: 1ex ; margin: 0ex ; } td.tdp , td.tdprule , td.tdP , td.tdPrule { padding: 0ex .5em 0ex .5em ; } td.tdm , td.tdmrule , td.tdM , td.tdMrule { padding: 0ex .5em 0ex .5em ; } td.tdb , td.tdbrule , td.tdB , td.tdBrule { padding: 0ex .5em 0ex .5em ; } /* table notes: */ .tnotes { margin: 0ex 5% 1ex 5% ; padding: 0.5ex 1em 0.5ex 1em; font-size:.85em; text-align: left ; } .tnotes dl dt p {margin-bottom:0px;} .tnoteitemheader {margin-right: 1em;} /* for colortbl and cell color */ div.cellcolor { width: 100% ; padding: .5ex .5em .5ex .5em ; margin: -.5ex -.5em -.5ex -.5em ; } /* for bigdelim */ .ldelim, .rdelim { font-size: 200% } /* center, flushleft, flushright environments */ div.center{text-align:center;} div.center table {margin-left:auto;margin-right:auto;} div.flushleft{text-align:left;} div.flushleft table {margin-left:0em ; margin-right:auto;} div.flushright{text-align:right;} div.flushright table {margin-left:auto ; margin-right: 0em ;} /* Fancybox */ div.Btrivlist table tr td { padding: .2ex 0em ; } /* program listing callouts: */ span.callout { font-family: "DejaVu Sans", "Bitstream Vera Sans", Geneva, Verdana, sans-serif ; border-radius: .5em; background-color:black; color:white; padding:0px .25em 0px .25em; margin: 0 ; font-weight: bold; font-size:.72em ; } div.programlisting pre.verbatim span.callout{ font-size: .85em ; } span.verbatim { font-family: "DejaVu Mono", "Bitstream Vera Mono", "Lucida Console", "Nimbus Mono L", "Liberation Mono", "FreeMono", "Andale Mono", "Courier New", monospace; } div.published { text-align: center ; font-variant: normal ; font-style: italic ; font-size: 1em ; margin: 3ex 0em 3ex 0em ; } div.subtitle { text-align: center ; font-variant: normal ; font-style: italic ; font-size: 1.25em ; margin: 3ex 0em 3ex 0em ; } div.subtitle p { margin: 1ex ; } div.author { font-variant: normal ; font-style: normal ; font-size: 1em ; margin: 3ex 0em 3ex 0em ; } div.oneauthor { display: inline-block ; margin: 3ex 1em 0ex 1em ; } /* div.author table { margin: 3ex auto 0ex auto ; background: none ; } div.author table tbody tr td { padding: .25ex ; } */ span.affiliation {font-size: .85em ; font-variant: small-caps; } div.titledate { text-align: center ; font-size: .85em ; font-style: italic; margin: 6ex 0em 6ex 0em ; } nav.topnavigation{ text-align: left ; padding: 0.5ex 1em 0.5ex 1em ; /* margin: 2ex 0em 3ex 0em ; */ margin: 0 ; border-bottom: 1px solid silver ; border-top: 1px solid silver ; clear:right ; } nav.botnavigation{ text-align: left ; padding: 0.5ex 1em 0.5ex 1em ; /* margin: 3ex 0em 2ex 0em ; */ margin: 0 ; border-top: 1px solid silver ; border-bottom: 1px solid silver ; clear:right ; } header{ line-height: 1.2 ; font-size: 1em ; /* border-bottom: 2px solid silver ; */ margin: 0px ; padding: 0ex 1em 0ex 1em ; text-align:center ; } header p {margin:0ex;padding:4ex 0em 2ex 0em ;text-align:center;} footer{ font-size: .85em ; line-height: 1.2 ; margin-top: 1ex ; border-top: 2px solid silver ; padding: 2ex 1em 2ex 1em ; clear:right ; text-align:left ; } a.linkhome { font-weight:bold ; font-size: 1em ;} div.lateximagesource { padding: 0px ; margin: 0px ; display: none; } img.lateximage{ padding: 0pt ; margin: 0pt ; box-shadow: none ; border: none ; background: none ; max-width: 100% ; border-radius: 0ex ; border: none ; } nav.sidetoc { font-family: "DejaVu Serif", "Bitstream Vera Serif", "Lucida Bright", Georgia, serif; float:right ; width: 20%; border-left: 1px solid silver; border-top: 1px solid silver; border-bottom: 1px solid silver; /* border-top: 2px solid #808080 ; */ background: #FAF7F4 ; padding: 2ex 0em 2ex 1em ; margin: 0ex 0em 2ex 1em ; font-size:.9em ; border-radius: 20px 0px 0px 20px ; } div.sidetoccontents { /* border-top: 1px solid silver ; */ overflow-y: auto ; width: 100% ; text-align: left ; } nav.sidetoc p {line-height:1.2 ; margin: 1ex .5em 1ex .5em ; text-indent: 0 ; } nav.sidetoc p a {color:black ; font-size: .7em ;} div.sidetoctitle {font-size: 1.2em; font-weight:bold; text-align:center; border-bottom: 1px solid silver ; } nav.sidetoc a:hover {text-decoration: underline ; } section.textbody { margin: 0ex 1em 0ex 1em ;} div.multicolsheading { -webkit-column-span: all; -moz-column-span: all; column-span: all; } div.multicols { -webkit-columns: 3 380px ; -moz-columns: 3 380px ; columns: 3 380px ; } div.multicols p {margin-top: 0ex} /* Used for algorithm2e: */ div.alg2evline{ margin-left: 1em ; padding-left: 1em ; border-left: 1px solid black ; border-radius: 0px 0px 0px 1ex ; } div.alg2evsline{ margin-left: 1em ; padding-left: 1em ; border-left: 1px solid black ; } div.alg2enoline{ margin-left: 1em ; padding-left: 1em ; } span.alg2elinenumber{ margin-right: .5em ; font-size: 50% ; color: red ; } /* Used for algorithmicx: */ span.floatright { float: right ; } /* Native LaTeX theorems: */ .theoremcontents { font-style: italic; margin-top: 3ex ; margin-bottom: 3ex ; } .theoremlabel { font-style: normal; font-weight: bold ; margin-right: .5em ; } /* theorem, amsthm, and ntheorem packages */ span.theoremheader, span.theoremheaderplain, span.theoremheaderdefinition, span.theoremheaderbreak, span.theoremheadermarginbreak, span.theoremheaderchangebreak, span.theoremheaderchange, span.theoremheadermargin { font-style:normal ; font-weight: bold ; margin-right: 1em ; } span.amsthmnameplain, span.amsthmnamedefinition, span.amsthmnumberplain, span.amsthmnumberdefinition { font-style:normal ; font-weight: bold ; } span.amsthmnameremark, span.amsthmnumberremark {font-style:italic ; font-weight: normal ; } span.amsthmnoteplain, span.amsthmnotedefinition {font-style:normal ;} span.theoremheaderremark, span.theoremheaderproof, span.amsthmproofname {font-style:italic ; font-weight: normal ; margin-right: 1em ; } span.theoremheadersc { font-style:normal ; font-variant: small-caps ; font-weight: normal ; margin-right: 1em ; } .theoremendmark {float:right} div.amsthmbodyplain, div.theorembodyplain, div.theorembodynonumberplain, div.theorembodybreak, div.theorembodynonumberbreak, div.theorembodymarginbreak, div.theorembodychangebreak, div.theorembodychange, div.theorembodymargin { font-style:italic; margin-top: 3ex ; margin-bottom: 3ex ; } div.theorembodydefinition, div.theorembodyremark, div.theorembodyproof, div.theorembodyplainupright, nonumberplainuprightsc, div.amsthmbodydefinition, div.amsthmbodyremark, div.amsthmproof { font-style: normal ; margin-top: 3ex ; margin-bottom: 3ex ; } span.amsthmnoteremark {} /* For CSS LaTeX and related logos: Based on: http://edward.oconnor.cx/2007/08/tex-poshlet http://nitens.org/taraborelli/texlogo */ .latexlogofont { font-family: "Linux Libertine O", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-variant: normal ; } .latexlogo { font-family: "Linux Libertine O", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; letter-spacing: .03em ; font-size: 1.1em; } .latexlogo sup { text-transform: uppercase; letter-spacing: .03em ; font-size: 0.85em; vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; } .latexlogo sub { text-transform: uppercase; vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em; } .xetexlogo { font-family: "Linux Libertine O", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; letter-spacing: .03em ; font-size: 1.1em; } /* A smaller gap between Xe and Tex v.s. LaTeX: */ .xetexlogo sub { text-transform: uppercase; vertical-align: -0.5ex; margin-left: -0.0667em; margin-right: -0.2em; font-size: 1em; letter-spacing: .03em ; } /* A large gap between Xe and LaTeX v.s. TeX: */ .xelatexlogo sub { text-transform: uppercase; vertical-align: -0.5ex; margin-left: -0.0667em; margin-right: -.05em; font-size: 1em; letter-spacing: .03em ; } .amslogo { font-family: "TeXGyreChorus","URW Chancery L", "Apple Chancery","ITC Zapf Chancery","Monotype Corsiva", "Linux Libertine O", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-style: italic; } .lyxlogo { font-family: "URW Classico", Optima, "Linux Biolinum O", "DejaVu Sans", "Bitstream Vera Sans", Geneva, Verdana, sans-serif ; } /* Only display top and bottom navigation if a small screen: */ /* Hide the sidetoc if a small screen: */ nav.topnavigation { display:none; } nav.botnavigation { display:none; } @media screen and (max-width: 45em) { /* nav.sidetoc {display:none;} */ nav.sidetoc { float: none ; width: 100% ; margin: 5ex 0px 5ex 0px ; padding: 0 ; border-radius: 0 ; border-bottom: 1px solid black ; border-top: 1px solid black ; box-shadow: none ; } /* nav.topnavigation { display:block } */ nav.botnavigation { display:block } .marginpar { max-width: 100%; float: none; display:block ; margin: 1ex 1em 1ex 1em ; } } @media print { body { font-family: "Linux Libertine O", "DejaVu Serif", "Bitstream Vera Serif", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; } nav.sidetoc { display:none; } nav.topnavigation { display: none; } nav.botnavigation { display: none; } } @media handheld { nav.sidetoc { display:none; } nav.topnavigation { display:block } nav.botnavigation { display:block } } @media projection { nav.sidetoc { display:none; } nav.topnavigation { display:block } nav.botnavigation { display:block } } \end{filecontents*} \end{warpprint} \begin{warpprint} \begin{filecontents*}{lwarp_sagebrush.css} @import url("lwarp.css") ; A:link {color:#105030 ; text-decoration: none ; } A:visited {color:#705030 ; text-shadow:1px 1px 2px #a0a0a0;} A:hover {color:#006000 ; text-decoration: underline ; text-shadow:0px 0px 2px #a0a0a0;} A:active {color:#00C000 ; text-shadow:1px 1px 2px #a0a0a0;} h1, h2, h3, h4, h5, h6, span.paragraph, span.subparagraph { font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-variant: small-caps ; font-weight: normal ; color: #304070 ; text-shadow: 2px 2px 3px #808080; } h1 { /* title of the entire website, used on each page */ font-variant: small-caps ; color: #304070 ; text-shadow: 2px 2px 3px #808080; background-color: #F7F7F0 ; background-image: linear-gradient(to bottom, #F7F7F0, #C0C0C4); } h1 { border-bottom: 1px solid #304070; border-top: 2px solid #304070; } h2 { border-bottom: 1px solid #304070; border-top: 2px solid #304070; background-color: #F7F7F0 ; background-image: linear-gradient(to bottom, #F7F7F0, #DAD0C0); } div.abstract { background: #f5f5eb ; background-image: linear-gradient(to bottom, #f5f5eb, #C8C8B8); border: 1px solid silver; border-radius: 1em ; } div.abstract dl {line-height:1.5;} div.abstract dt {color:#304070;} div.abstracttitle{ font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-weight:bold; font-variant: small-caps ; font-size:1.5em; border-bottom: 1px solid silver ; color: #304070 ; text-align: center ; text-shadow: 1px 1px 2px #808080; } span.abstractrunintitle{ font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-weight:bold; } div.epigraph, div.dictum { background: #f5f5eb ; background-image: linear-gradient(to bottom, #f5f5eb, #C8C8B8); border: 1px solid silver ; border-radius: 1ex ; box-shadow: 3px 3px 3px #808080 ; } .example { background-color: #f5f5eb ; background-image: linear-gradient(to bottom, #f5f5eb, #C8C8B8); } div.exampletitle{ font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-weight:bold; font-variant: small-caps ; border-bottom: 1px solid silver ; color: #304070 ; text-align: center ; text-shadow: 1px 1px 2px #808080; } .sidebar { background-color: #f5f5eb ; background-image: linear-gradient(to bottom, #f5f5eb, #C8C8B8); } div.sidebartitle{ font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-weight:bold; font-variant: small-caps ; border-bottom: 1px solid silver ; color: #304070 ; text-align: center ; text-shadow: 1px 1px 2px #808080; } .fancyvrblabel { font-family: "URW Classico", Optima, "Linux Biolinum O", "Linux Libertine O", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", "Hoefler Text", Times, "Times New Roman", serif; font-weight:bold; font-variant: small-caps ; font-size: 1.5em ; color: #304070 ; text-align: center ; text-shadow: 1px 1px 2px #808080; } div.minipage { background-color: #eeeee7 ; border: 1px solid silver ; border-radius: 1ex ; } table div.minipage { background: none ; border: none ; } div.framebox div.minipage {border:none ; background:none} section.textbody > div.minipage { box-shadow: 3px 3px 3px #808080 ; } div.fboxBlock div.minipage { box-shadow: none ; } .framed .minipage , .framedleftbar .minipage { border: none ; background: none ; padding: 0ex ; margin: 0ex ; } figure.figure .minipage, figcaption .minipage { border: none; } div.marginblock div.minipage , div.marginparblock div.minipage { border: none; } figure , div.marginblock { background-color: #eeeee7 ; border: 1px solid silver ; border-radius: 1ex ; box-shadow: 3px 3px 3px #808080 ; } figure figure { border: 1px solid silver ; margin: 0em ; box-shadow: none ; } /* figcaption { border-top: 1px solid silver ; border-bottom: 1px solid silver ; background-color: #e8e8e8 ; } */ div.table { box-shadow: 3px 3px 3px #808080 ; } /* .tnotes { background: #e8e8e8; border: 1px solid silver; } */ nav.topnavigation{ background-color: #b0b8b0 ; background-image: linear-gradient(to bottom,#e0e0e0,#b0b8b0) ; } nav.botnavigation{ background-color: #b0b8b0 ; background-image: linear-gradient(to top,#e0e0e0,#b0b8b0) ; } header{ background-color: #F7F7F0 ; background-image: linear-gradient(to top, #F7F7F0, #b0b8b0); } footer{ background-color: #F7F7F0 ; background-image: linear-gradient(to bottom, #F7F7F0, #b0b8b0); } nav.sidetoc { background-color: #F7F7F0 ; background-image: linear-gradient(to bottom, #F7F7F0, #C0C0C0); box-shadow: 3px 3px 3px #808080 ; border-radius: 0px 0px 0px 20px ; } div.sidetoctitle {color: #304070 ; } nav.sidetoc a:hover { color:#006000 ; text-decoration: none ; text-shadow:0px 0px 2px #a0a0a0; } @media screen and (max-width: 45em) { nav.sidetoc { border-radius: 0 ; } } \end{filecontents*} \end{warpprint} \begin{warpprint} \begin{filecontents*}{lwarp_formal.css} @import url("lwarp.css") ; A:link {color:#802020 ; text-decoration:none; } A:visited {color:#802020 ; text-shadow:none ;} A:hover {color:#400000 ; text-shadow:none ;} A:active {color:#C00000 ; text-shadow:none ;} body { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; background: #fffcf5; } span.textrm { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; } span.textsf { font-family: "DejaVu Sans", "Bitstream Vera Sans", Geneva, Verdana, sans-serif ; } h1, h2, h3, h4, h5, h6, span.paragraph, span.subparagraph { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; color: #800000 ; text-shadow: none ; } h1, h2 { background-color: #fffcf5 ; background-image: none ; border-bottom: 1px solid #808080; border-top: 2px solid #808080; } div.abstracttitle { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; color: black ; text-shadow: none ; } span.abstractrunintitle { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; color: black ; text-shadow: none ; } div.abstract { font-size: 100% } .sidebar { background: #fffcf5; background-image: none ; margin: 2em 5% 2em 5%; padding: 0.5em 1em; border: none ; border-top : 1px solid silver; border-bottom : 1px solid silver; font-size: 90% ; } div.sidebartitle{ font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; color: #800000 ; text-shadow: none ; border: none ; } .example { background: #fffcf5; background-image: none ; margin: 2em 5% 2em 5%; padding: 0.5em 1em; border: none ; border-top : 1px solid silver; border-bottom : 1px solid silver; } div.exampletitle{ font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; color: #800000 ; text-shadow: none ; border: none ; } div.fancyvrblabel{ font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; color: #800000 ; text-shadow: none ; border: none ; } .verse { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; } figure { margin: 5ex 5% 5ex 5% ; padding: 1ex 1em 1ex 1em ; background-color: #fffcf5 ; overflow-x: auto ; border: none ; /* border-top: 1px solid silver; */ /* border-bottom: 1px solid silver; */ } figcaption , .lstlisting { border: none ; /* border-top: 1px solid silver ; */ /* border-bottom: 1px solid silver ; */ background-color: #fffcf5 ; } .tnotes { background: #fffcf5 ; } .theorem { background: none ; } .minipage { background-color: #fffcf5 ; border: none ; } div.floatrow figure { border: none ; } figure figure { border: none ; } nav.toc, nav.lof, nav.lot, nav.lol { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; } nav.sidetoc { font-family: "Linux Libertine O", "Hoefler Text", "Garamond", "Bembo", "Janson", "TeX Gyre Pagella", "Palatino", "Liberation Serif", "Nimbus Roman No 9 L", "FreeSerif", Times, "Times New Roman", serif; background-image: linear-gradient(to bottom, #fffcf5, #C0C0C0); border-radius: 0px 0px 0px 20px ; } div.sidetoctitle{ color: #800000 ; } header{ background-color: #e0e0e0 ; background-image: linear-gradient(to top, #fffcf5, #b0b0b0); text-align:center ; } footer{ background-color: #e0e0e0 ; background-image: linear-gradient(to bottom, #fffcf5, #b0b0b0); padding: 2ex 1em 2ex 1em ; clear:right ; text-align:left ; } nav.botnavigation { background: #dedcd5 ; border-top: 1px solid black ; } \end{filecontents*} \end{warpprint} \begin{warpprint} \begin{filecontents*}{sample_project.css} /* ( --- Start of project.css --- ) */ /* ( --- A sample project-specific CSS file for lwarp --- ) */ /* Uncomment one of the following: */ @import url("lwarp.css") ; /* @import url("lwarp_formal.css") ; */ /* @import url("lwarp_sagebrush.css") ; */ /* Project-specific CSS setting follow here. */ /* . . . */ /* ( --- End of project.css --- ) */ \end{filecontents*} \end{warpprint} \begin{warpprint} \begin{filecontents*}{lwarp.xdy} (require "tex/inputenc/latin.xdy") (merge-rule "\\PS *" "Postscript") (require "texindy.xdy") (require "page-ranges.xdy") (require "book-order.xdy") (require "page-ranges.xdy") (markup-locref :open "\hyperindexref{" :close "}") (define-location-class "arabic-page-numbers" ("arabic-numbers") :min-range-length 1) (define-location-class-order ("roman-page-numbers" "arabic-page-numbers" "alpha-page-numbers" "Roman-page-numbers" "Alpha-page-numbers" "see" "seealso")) \end{filecontents*} \end{warpprint} \begin{warpprint} \begin{filecontents*}{lwarp_one_limage.txt} @echo off pdfseparate -f %1 -l %1 %4_html.pdf lateximages\lateximagetemp-%%d.pdf pdfcrop --hires lateximages\lateximagetemp-%1.pdf lateximages\%3.pdf pdftocairo -svg -noshrink lateximages\%3.pdf lateximages\%3.svg del lateximages\%3.pdf del lateximages\lateximagetemp-%1.pdf exit \end{filecontents*} \end{warpprint} \begin{warpprint} \begin{filecontents*}{lwarp_mathjax.txt} \end{filecontents*} \end{warpprint} \begin{LWR@createlwarpmk} \begin{filecontents*}{lwarpmk.lua} #!/usr/bin/env texlua -- Copyright 2016-2018 Brian Dunn printversion = "v0.57" function printhelp () print ("lwarpmk: Use lwarpmk -h or lwarpmk --help for help.") ; end function printusage () -- -- Print the usage of the lwarpmk command: -- print ( [[ lwarpmk print [project]: Compile the print version if necessary. lwarpmk print1 [project]: Forced single compile of the print version. lwarpmk printindex [project]: Process the index for the print version. lwarpmk printglossary [project]: Process the glossary for the print version. lwarpmk html [project]: Compile the HTML version if necessary. lwarpmk html1 [project]: Forced single compile of the HTML version. lwarpmk htmlindex [project]: Process the index for the html version. lwarpmk htmlglossary [project]: Process the glossary for the html version. lwarpmk again [project]: Touch the source code to trigger recompiles. lwarpmk limages [project]: Process the "lateximages" created by lwarp.sty. lwarpmk pdftohtml [project]: For use with latexmk or a Makefile: Converts project_html.pdf to project_html.html and individual HTML files. Finishes the HTML conversion even if there was a compile error. lwarpmk pdftosvg : Converts each PDF file to SVG. lwarpmk clean [project]: Remove .aux, .toc, .lof/t, .idx, .ind, .log, *_html_inc.*, .gl* lwarpmk cleanall [project]: Remove auxiliary files and also project.pdf, *.html lwarpmk cleanlimages: Removes all images from the "lateximages" directory. lwarpmk -h: Print this help message. lwarpmk --help: Print this help message. ]] ) printconf () end function printconf () -- -- Print the format of the configuration file lwarpmk.conf: -- print ( [[ An example lwarpmk.conf or .lwarpmkconf project file: -- opsystem = "Unix" (or "Windows") latexname = "pdflatex" (or "lualatex", or "xelatex") sourcename = "projectname" (the source-code filename w/o .tex) homehtmlfilename = "index" (or perhaps the project name) htmlfilename = "" (or "projectname" - filename prefix) latexmk = "false" (or "true" to use latexmk to build PDFs) shellescape = "false" xindylanguge = "english" (use a language supported by xindy) xindycodepage = "utf8" (use a codepage supported by xindy) xindystyle = "lwarp.xdy" (or a custom file based on lwarp.xdy) pdftotextenc = "UTF-8" (use an encoding supported by pdftotext) -- Filenames must contain only letters, numbers, underscore, or dash. Values must be in upright "quotes". ]] ) ; end function splitfile (destfile,sourcefile) -- -- Split one large sourcefile into a number of files, -- starting with destfile. -- The file is split at each occurance of