%% %% This is file `eurocg22.cls', %% %% It was adapted by Wolfgang Mulzer from the lipics.cls %% style file provided by Schloss Dagstuhl, with kind %% permission of the Dagstuhl publishing office. %% %% Edit for 2022 done by Emilio Di Giacomo and Fabrizio Montecchiani, %% emilio.digiacomo@unipg.it %% %% version history: %% 2017-10-21: Initial adaptation of lipics-class for EuroCG 2018 %% 2019-09-09: Adaptation for EuroCG 2020 %% 2020-12-02: Adaptation for EuroCG 2021 %% 2021-09-28: Adaptation for EuroCG 2022 %% ----------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e}[2015/01/01] \ProvidesClass{eurocg22}[2021/09/28] \emergencystretch1em \advance\hoffset-1in \advance\voffset-1in \advance\hoffset2.95mm \newif\if@nobotseplist \@nobotseplistfalse \def\@endparenv{% \addpenalty\@endparpenalty\if@nobotseplist\else\addvspace\@topsepadd\fi\@endpetrue} \def\@doendpe{% \@endpetrue \def\par{\@restorepar \everypar{}% \par \if@nobotseplist \addvspace\topsep \addvspace\partopsep \global\@nobotseplistfalse \fi \@endpefalse}% \everypar{{\setbox\z@\lastbox}% \everypar{}% \if@nobotseplist\global\@nobotseplistfalse\fi \@endpefalse}} \def\enumerate{% \ifnum \@enumdepth >\thr@@\@toodeep\else \advance\@enumdepth\@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}% \expandafter \list \csname label\@enumctr\endcsname {\advance\partopsep\topsep \topsep\z@\@plus\p@ \ifnum\@listdepth=\@ne \labelsep0.72em \else \ifnum\@listdepth=\tw@ \labelsep0.3em \else \labelsep0.5em \fi \fi \usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}}% \fi} \def\endenumerate{\ifnum\@listdepth=\@ne\global\@nobotseplisttrue\fi\endlist} \def\itemize{% \ifnum \@itemdepth >\thr@@\@toodeep\else \advance\@itemdepth\@ne \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% \expandafter \list \csname\@itemitem\endcsname {\advance\partopsep\topsep \topsep\z@\@plus\p@ \ifnum\@listdepth=\@ne \labelsep0.83em \else \ifnum\@listdepth=\tw@ \labelsep0.75em \else \labelsep0.5em \fi \fi \def\makelabel##1{\hss\llap{##1}}}% \fi} \def\enditemize{\ifnum\@listdepth=\@ne\global\@nobotseplisttrue\fi\endlist} \def\@sect#1#2#3#4#5#6[#7]#8{% \ifnum #2>\c@secnumdepth \let\@svsec\@empty \else \refstepcounter{#1}% \protected@edef\@svsec{\@seccntformat{#1}\relax}% \fi \@tempskipa #5\relax \ifdim \@tempskipa>\z@ \begingroup #6{% \@hangfrom{\hskip #3\relax \ifnum #2=1 \colorbox[RGB]{150,190,240}{\kern0.15em\@svsec\kern0.15em}\quad \else \@svsec\quad \fi}% \interlinepenalty \@M #8\@@par}% \endgroup \csname #1mark\endcsname{#7}% \addcontentsline{toc}{#1}{% \ifnum #2>\c@secnumdepth \else \protect\numberline{\csname the#1\endcsname}% \fi #7}% \else \def\@svsechd{% #6{\hskip #3\relax \@svsec #8}% \csname #1mark\endcsname{#7}% \addcontentsline{toc}{#1}{% \ifnum #2>\c@secnumdepth \else \protect\numberline{\csname the#1\endcsname}% \fi #7}}% \fi \@xsect{#5}} \def\@seccntformat#1{\csname the#1\endcsname} \def\@biblabel#1{\textcolor{darkgray}{\sffamily\bfseries#1}} \gdef\@EventLongTitle{38th European Workshop on Computational Geometry, Perugia, Italy, March 14--16, 2022} \gdef\@EventShortTitle{EuroCG'22} \def\ArticleNo#1{\gdef\@ArticleNo{#1}} \ArticleNo{} \def\copyrightline{% \scriptsize \vtop{\hsize\textwidth \nobreakspace\\ \ifx\@EventLongTitle\@empty\else % \textit{Submitted} to the \@EventLongTitle.\\\fi %\hspace*{\wd\@tempboxa}\enskip This is an extended abstract of a presentation given at \@EventShortTitle. It has been made public for the benefit of the community and should be considered a preprint rather than a formally reviewed paper. Thus, this work is expected to appear eventually in more final form at a conference with formal proceedings and/or in a journal. }} \def\ps@plain{\let\@mkboth\@gobbletwo \let\@oddhead\@empty \let\@evenhead\@empty \let\@evenfoot\copyrightline \let\@oddfoot\copyrightline} \def\eurocg@opterrshort{Option "\CurrentOption" not supported} \def\eurocg@opterrlong{The option "\CurrentOption" from article.cls is not supported by eurocg22.cls.} \DeclareOption{a5paper}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{b5paper}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{legalpaper}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{executivepaper}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{landscape}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{10pt}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{11pt}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{12pt}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{oneside}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{twoside}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{titlepage}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{notitlepage}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{onecolumn}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{twocolumn}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{fleqn}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{openbib}{\@latexerr{\eurocg@opterrshort}{\eurocg@opterrlong}} \DeclareOption{a4paper}{\PassOptionsToClass{\CurrentOption}{article} \advance\hoffset-2.95mm \advance\voffset8.8mm} \DeclareOption{numberwithinsect}{\let\numberwithinsect\relax} \DeclareOption{cleveref}{\let\usecleveref\relax} \DeclareOption{autoref}{\let\useautoref\relax} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} \ProcessOptions \LoadClass[twoside,notitlepage%,fleqn ]{article} \renewcommand\normalsize{% \@setfontsize\normalsize\@xpt{13}% \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ \abovedisplayshortskip \z@ \@plus3\p@ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ \belowdisplayskip \abovedisplayskip \let\@listi\@listI} \normalsize \renewcommand\small{% \@setfontsize\small\@ixpt{11.5}% \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@ \abovedisplayshortskip \z@ \@plus2\p@ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ \def\@listi{\leftmargin\leftmargini \topsep 4\p@ \@plus2\p@ \@minus2\p@ \parsep 2\p@ \@plus\p@ \@minus\p@ \itemsep \parsep}% \belowdisplayskip \abovedisplayskip } \renewcommand\footnotesize{% \@setfontsize\footnotesize{8.5}{9.5}% \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@ \abovedisplayshortskip \z@ \@plus\p@ \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@ \def\@listi{\leftmargin\leftmargini \topsep 3\p@ \@plus\p@ \@minus\p@ \parsep 2\p@ \@plus\p@ \@minus\p@ \itemsep \parsep}% \belowdisplayskip \abovedisplayskip } \renewcommand\large{\@setfontsize\large{10.5}{13}} \renewcommand\Large{\@setfontsize\Large{12}{14}} \setlength\parindent{1.5em} \setlength\headheight{3mm} \setlength\headsep {10mm} \setlength\footskip{3mm} \setlength\textwidth{140mm} \setlength\textheight{222mm} \setlength\oddsidemargin{32mm} \setlength\evensidemargin{38mm} \setlength\marginparwidth{25mm} \setlength\topmargin{13mm} \setlength{\skip\footins}{2\baselineskip \@plus 4\p@ \@minus 2\p@} \def\@listi{\leftmargin\leftmargini \parsep\z@ \@plus\p@ \topsep 8\p@ \@plus2\p@ \@minus4\p@ \itemsep \parsep} \let\@listI\@listi \@listi \def\@listii {\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep 4\p@ \@plus2\p@ \@minus\p@ \parsep\z@ \@plus\p@ \itemsep \parsep} \def\@listiii{\leftmargin\leftmarginiii \labelwidth\leftmarginiii \advance\labelwidth-\labelsep \topsep 2\p@ \@plus\p@\@minus\p@ \parsep \z@ \partopsep \p@ \@plus\z@ \@minus\p@ \itemsep \z@ \@plus\p@} \def\ps@headings{% \def\@evenhead{\large\sffamily\bfseries % \llap {\hbox to0.5\oddsidemargin{\ifx\@ArticleNo\@empty\textcolor{blue}{}\else\@ArticleNo:\fi\thepage\hss}}\leftmark\hfil}% \def\@oddhead{\large\sffamily\bfseries\rightmark\hfil % \rlap {\hbox to0.5\oddsidemargin{\hss\ifx\@ArticleNo\@empty\textcolor{blue}{}\else\@ArticleNo:\fi\thepage}}}% \def\@oddfoot{\hfil \rlap{% \vtop{% \vskip10mm \colorbox[RGB]{150,190,240} {\@tempdima\evensidemargin \advance\@tempdima1in \advance\@tempdima\hoffset \hb@xt@\@tempdima{% \textcolor{darkgray}{\normalsize\sffamily \bfseries\quad \expandafter\textsolittle \expandafter{\@EventShortTitle}}% \strut\hss}}}}} \let\@evenfoot\@empty \let\@mkboth\markboth \let\sectionmark\@gobble \let\subsectionmark\@gobble} \pagestyle{headings} \renewcommand\maketitle{\par \begingroup \renewcommand\thefootnote{\@fnsymbol\c@footnote}% \if@twocolumn \ifnum \col@number=\@ne \@maketitle \else \twocolumn[\@maketitle]% \fi \else \newpage \global\@topnum\z@ % Prevents figures from going at top of page. \@maketitle \fi \thispagestyle{plain}\@thanks \endgroup \setcounter{footnote}{0}% \global\let\thanks\relax \global\let\maketitle\relax \global\let\@maketitle\relax \global\let\@thanks\@empty \global\let\@author\@empty \global\let\@date\@empty \global\let\@title\@empty \global\let\title\relax \global\let\author\relax \global\let\date\relax \global\let\and\relax } \newwrite\tocfile \def\@maketitle{% \newpage \null\vskip-\baselineskip \vskip-\headsep \@titlerunning \@authorrunning \let \footnote \thanks \parindent\z@ \raggedright {\LARGE\sffamily\bfseries\mathversion{bold}\@title \par}% \vskip 1.5em% \ifnum\c@authors=0 % \@latexerr{No \noexpand\author given}% {Provide at least one author.}% \else \@author \fi \bgroup \let\footnote\@gobble \immediate\openout\tocfile=\jobname.vtc \protected@write\tocfile{}{% \string\contitem \string\title{\@title}% \string\author{\AB@authfortoc}% \string\page{\@ArticleNo:\thepage--\@ArticleNo:\number\numexpr\getpagerefnumber{LastPage}}}% \closeout\tocfile \egroup \par} \setcounter{secnumdepth}{4} \renewcommand\section{\@startsection {section}{1}{\z@}% {-3.5ex \@plus -1ex \@minus -.2ex}% {2.3ex \@plus.2ex}% {\sffamily\Large\bfseries\raggedright}} \renewcommand\subsection{\@startsection{subsection}{2}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\sffamily\Large\bfseries\raggedright}} \renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\sffamily\Large\bfseries\raggedright}} \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {-3.25ex \@plus-1ex \@minus-.2ex}% {1.5ex \@plus .2ex}% {\sffamily\large\bfseries\raggedright}} \renewcommand\subparagraph{\@startsection{subparagraph}{5}{\z@}% {3.25ex \@plus1ex \@minus .2ex}% {-1em}% {\sffamily\normalsize\bfseries}} \setlength\leftmargini \parindent \setlength\leftmarginii {1.2em} \setlength\leftmarginiii{1.2em} \setlength\leftmarginiv {1.2em} \setlength\leftmarginv {1.2em} \setlength\leftmarginvi {1.2em} \renewcommand\labelenumi{% \textcolor{darkgray}{\sffamily\bfseries\mathversion{bold}\theenumi.}} \renewcommand\labelenumii{% \textcolor{darkgray}{\sffamily\bfseries\mathversion{bold}\theenumii.}} \renewcommand\labelenumiii{% \textcolor{darkgray}{\sffamily\bfseries\mathversion{bold}\theenumiii.}} \renewcommand\labelenumiv{% \textcolor{darkgray}{\sffamily\bfseries\mathversion{bold}\theenumiv.}} \renewcommand\labelitemi{% \textcolor[rgb]{0.6,0.6,0.61}{\ifnum\@listdepth=\@ne \rule{0.67em}{0.33em}% \else \rule{0.45em}{0.225em}% \fi}} \renewcommand\labelitemii{% \textcolor[rgb]{0.6,0.6,0.61}{\rule{0.45em}{0.225em}}} \renewcommand\labelitemiii{% \textcolor[rgb]{0.6,0.6,0.61}{\sffamily\bfseries\textasteriskcentered}} \renewcommand\labelitemiv{% \textcolor[rgb]{0.6,0.6,0.61}{\sffamily\bfseries\textperiodcentered}} \renewenvironment{description} {\list{}{\advance\partopsep\topsep\topsep\z@\@plus\p@ \labelwidth\z@ \itemindent-\leftmargin \let\makelabel\descriptionlabel}} {\ifnum\@listdepth=\@ne\global\@nobotseplisttrue\fi\endlist} \renewcommand*\descriptionlabel[1]{% \hspace\labelsep\textcolor{darkgray}{\sffamily\bfseries\mathversion{bold}#1}} \def\topmattervskip{0.7} \AtBeginDocument{ \@ifpackageloaded{xcolor}{ }{ \RequirePackage{xcolor} } \definecolor{darkgray}{rgb}{0.31,0.31,0.33} \definecolor[named]{lipicsGray}{rgb}{0.31,0.31,0.33} \definecolor[named]{lipicsBulletGray}{rgb}{0.60,0.60,0.61} \definecolor[named]{lipicsLineGray}{rgb}{0.51,0.50,0.52} \definecolor[named]{lipicsLightGray}{rgb}{0.85,0.85,0.86} \definecolor[named]{lipicsYellow}{rgb}{0.99,0.78,0.07} } \renewenvironment{abstract}{% \vskip\topmattervskip\bigskipamount \noindent \rlap{\color{lipicsLineGray}\vrule\@width\textwidth\@height1\p@}% \hspace*{7mm}\fboxsep1.5mm\colorbox[rgb]{1,1,1}{\raisebox{-0.4ex}{% \large\selectfont\sffamily\bfseries\abstractname}}% \vskip3\p@ \fontsize{9}{12}\selectfont \noindent\ignorespaces} {\vskip\topmattervskip\baselineskip\noindent \ifx\@relatedversion\@empty\else \vskip\topmattervskip\baselineskip\noindent \relatedversionHeading\ifx\authoranonymous\relax\textcolor{red}{Anonymous related version(s)}\else\@relatedversion\fi \fi \protected@write\@auxout{}{\string\gdef\string\@pageNumberEndAbstract{\thepage}}% }% end abstract \renewenvironment{thebibliography}[1] {\if@noskipsec \leavevmode \fi \par \@tempskipa-3.5ex \@plus -1ex \@minus -.2ex\relax \@afterindenttrue \@tempskipa -\@tempskipa \@afterindentfalse \if@nobreak \everypar{}% \else \addpenalty\@secpenalty\addvspace\@tempskipa \fi \noindent \rlap{\color[rgb]{0.51,0.50,0.52}\vrule\@width\textwidth\@height1\p@}% \hspace*{7mm}\fboxsep1.5mm\colorbox[rgb]{1,1,1}{\raisebox{-0.4ex}{% \normalsize\sffamily\bfseries\refname}}% \@xsect{1ex \@plus.2ex}% \list{\@biblabel{\@arabic\c@enumiv}}% {\leftmargin8.5mm \labelsep\leftmargin \settowidth\labelwidth{\@biblabel{#1}}% \advance\labelsep-\labelwidth \usecounter{enumiv}% \let\p@enumiv\@empty \renewcommand\theenumiv{\@arabic\c@enumiv}}% \fontsize{9.5}{12.5}\selectfont \sloppy \clubpenalty4000 \@clubpenalty \clubpenalty \widowpenalty4000% \sfcode`\.\@m} {\def\@noitemerr {\@latex@warning{Empty `thebibliography' environment}}% \endlist} \renewcommand\footnoterule{% \kern-8\p@ {\color[rgb]{0.60,0.60,0.61}\hrule\@width40mm\@height1\p@}% \kern6.6\p@} \renewcommand\@makefntext[1]{% \parindent\z@\hangindent1em \leavevmode \hb@xt@1em{\@makefnmark\hss}#1} \usepackage[utf8]{inputenc} \IfFileExists{lmodern.sty}{\RequirePackage{lmodern}}{} \RequirePackage[T1]{fontenc} \RequirePackage{textcomp} \RequirePackage[mathscr]{eucal} \RequirePackage{amssymb} \RequirePackage{soul,xcolor} \sodef\textsolittle{}{.12em}{.5em\@plus.08em\@minus.06em}% {.4em\@plus.275em\@minus.183em} \RequirePackage{color} \definecolor{darkgray}{rgb}{0.31,0.31,0.33} \RequirePackage{babel} \RequirePackage[tbtags%,fleqn ]{amsmath} \RequirePackage{amsthm} \thm@headfont{% \textcolor{darkgray}{$\blacktriangleright$}\nobreakspace\sffamily\bfseries} \def\th@remark{% \thm@headfont{% \textcolor{darkgray}{$\blacktriangleright$}\nobreakspace\sffamily}% \normalfont % body font \thm@preskip\topsep \divide\thm@preskip\tw@ \thm@postskip\thm@preskip } \def\@endtheorem{\endtrivlist}%\@endpefalse \renewcommand\qedsymbol{\textcolor{darkgray}{\ensuremath{\blacktriangleleft}}} \renewenvironment{proof}[1][\proofname]{\par \pushQED{\qed}% \normalfont \topsep6\p@\@plus6\p@\relax \trivlist \item[\hskip\labelsep \color{darkgray}\sffamily\bfseries #1\@addpunct{.}]\ignorespaces }{% \popQED\endtrivlist%\@endpefalse } \theoremstyle{plain} \newtheorem{theorem}{Theorem} \newtheorem{lemma}[theorem]{Lemma} \newtheorem{corollary}[theorem]{Corollary} \newtheorem{conj}[theorem]{Conjecture} \newtheorem{obs}[theorem]{Observation} \theoremstyle{definition} \newtheorem{definition}[theorem]{Definition} \newtheorem{example}[theorem]{Example} \theoremstyle{remark} \newtheorem*{remark}{Remark} \ifx\numberwithinsect\relax \@addtoreset{theorem}{section} \edef\thetheorem{\expandafter\noexpand\thesection\@thmcountersep\@thmcounter{theorem}} \fi \RequirePackage{graphicx} \RequirePackage{array} \let\@classzold\@classz \def\@classz{% \expandafter\ifx\d@llarbegin\begingroup \toks \count@ = \expandafter{\expandafter\small\the\toks\count@}% \fi \@classzold} \RequirePackage{multirow} \RequirePackage{tabularx} \RequirePackage[online]{threeparttable} \def\TPTtagStyle#1{#1)} \def\tablenotes{\small\TPT@defaults \@ifnextchar[\TPT@setuptnotes\TPTdoTablenotes} % ] \RequirePackage{listings} \lstset{basicstyle=\small\ttfamily,% backgroundcolor=\color[rgb]{0.85,0.85,0.86},% frame=single,framerule=0pt,xleftmargin=\fboxsep,xrightmargin=\fboxsep} \RequirePackage{lastpage} \IfFileExists{doi.sty} {\RequirePackage{doi}% \renewcommand*{\doitext}{}} {\RequirePackage{hyperref}% \def\doi##1{##1}} \hypersetup{pdfborder={0 0 0}} \RequirePackage[labelsep=space,singlelinecheck=false,% font={up,small},labelfont={sf,bf},% listof=false]{caption}%"listof" instead of "list" for backward compatibility \@ifpackagelater{hyperref}{2009/12/09} {\captionsetup{compatibility=false}}%cf. http://groups.google.de/group/comp.text.tex/browse_thread/thread/db9310eb540fbbd8/42e30f3b7b3aa17a?lnk=raot {} \DeclareCaptionLabelFormat{boxed}{% \kern0.05em{\color[RGB]{150,190,240}\rule{0.73em}{0.73em}}% \hspace*{0.67em}\bothIfFirst{#1}{~}#2} \captionsetup{labelformat=boxed} \captionsetup[table]{position=top} \RequirePackage[figuresright]{rotating} \RequirePackage{subcaption} % subfig \def\titlerunning#1{\gdef\@titlerunning{{\let\footnote\@gobble\markboth{#1}{#1}}}} \def\authorrunning#1{% \gdef\@authorrunning{\expandafter\def\expandafter\@tempa\expandafter{#1}% \ifx\@tempa\@empty\else\markright{#1}\fi}} \titlerunning{\@title} \authorrunning{\AB@authrunning} \RequirePackage{authblk} \renewcommand*\Authand{{ and }} \renewcommand*\Authfont{\Large\bfseries\mathversion{bold}} \renewcommand*\AB@authnote[1]{\textsuperscript{#1}} \renewcommand*\AB@affilnote[1]{\protect\item[#1]} \renewcommand*\Affilfont{\fontsize{9.5}{12}\selectfont} \setlength\affilsep{\baselineskip} \newcommand\AB@authrunning{} \newcommand\AB@authfortoc{} \renewcommand\author[2][]% {\ifnewaffil\addtocounter{affil}{1}% \edef\AB@thenote{\arabic{affil}}\fi \if\relax#1\relax\def\AB@note{\AB@thenote}\else\def\AB@note{#1}% \setcounter{Maxaffil}{0}\fi \ifnum\value{authors}>1\relax \@namedef{@sep\number\c@authors}{\Authsep}\fi \addtocounter{authors}{1}% \begingroup \let\protect\@unexpandable@protect \let\and\AB@pand \def\thanks{\protect\thanks}\def\footnote{\protect\footnote}% \@temptokena=\expandafter{\AB@authors}% {\def\\{\protect\\[\@affilsep]\protect\Affilfont \protect\AB@resetsep}% \xdef\AB@author{\AB@blk@and#2}% \ifnewaffil\gdef\AB@las{}\gdef\AB@lasx{\protect\Authand}\gdef\AB@as{}% \xdef\AB@authors{\the\@temptokena\AB@blk@and}% \else \xdef\AB@authors{\the\@temptokena\AB@as\AB@au@str}% \global\let\AB@las\AB@lasx\gdef\AB@lasx{\protect\Authands}% \gdef\AB@as{\Authsep}% \fi \gdef\AB@au@str{#2}}% \@temptokena=\expandafter{\AB@authlist}% \let\\=\authorcr \xdef\AB@authlist{\the\@temptokena \protect\@nameuse{@sep\number\c@authors}% \protect\Authfont#2\AB@authnote{\AB@note}}% %new \@temptokena=\expandafter{\AB@authrunning}% \let\\=\authorcr \xdef\AB@authrunning{\the\@temptokena \protect\@nameuse{@sep\number\c@authors}#2}% % %new \@temptokena=\expandafter{\AB@authfortoc}% \let\\=\authorcr \xdef\AB@authfortoc{\the\@temptokena \expandafter\noexpand\csname @sep\number\c@authors\endcsname#2}% % \endgroup \ifnum\value{authors}>2\relax \@namedef{@sep\number\c@authors}{\Authands}\fi \newaffilfalse } \renewcommand\affil[2][]% {\newaffiltrue\let\AB@blk@and\AB@pand \if\relax#1\relax\def\AB@note{\AB@thenote}\else\def\AB@note{#1}% \setcounter{Maxaffil}{0}\fi \begingroup \let\protect\@unexpandable@protect \def\thanks{\protect\thanks}\def\footnote{\protect\footnote}% \@temptokena=\expandafter{\AB@authors}% {\def\\{\protect\\\protect\Affilfont}\xdef\AB@temp{#2}}% \xdef\AB@authors{\the\@temptokena\AB@las\AB@au@str \protect\\[\affilsep]\protect\Affilfont\AB@temp}% \gdef\AB@las{}\gdef\AB@au@str{}% {\xdef\AB@temp{#2}}% \@temptokena=\expandafter{\AB@affillist}% \xdef\AB@affillist{\the\@temptokena \AB@affilsep \AB@affilnote{\AB@note}\protect\Affilfont\AB@temp}% \endgroup \let\AB@affilsep\AB@affilsepx} \renewcommand\@author{\ifx\AB@affillist\AB@empty\AB@authrunning\else \ifnum\value{affil}>\value{Maxaffil}\def\rlap##1{##1}% \AB@authlist\\[\affilsep] \labelwidth1.5em\labelsep\z@\leftmargini\labelwidth \edef\@enumctr{enumi}% \list\theenumi{\usecounter\@enumctr\def\makelabel##1{\rlap{##1}\hss}}% \AB@affillist \endlist \else \AB@authors\fi\fi} % Related version % ADDED 2021 \def\relatedversion#1{\def\@relatedversion{#1}} \let\@relatedversion\@empty \define@key{relatedversiondetails}{linktext}{\def\relatedversiondetails@linktext{#1}} \define@key{relatedversiondetails}{cite}{\def\relatedversiondetails@cite{#1}} \newcommand*\addtorelatedversionmacro[2]{% \ifx\@relatedversion\@empty% \g@addto@macro\@relatedversion{#1}% \else% \g@addto@macro\@relatedversion{\\#1}% \fi% }% \newcommand{\relatedversiondetails}[3][]{% \begingroup% \let\relatedversiondetails@linktext\@empty \let\relatedversiondetails@cite\@empty \setkeys{relatedversiondetails}{#1}% \ifx\relatedversiondetails@linktext\@empty% \protected@edef\tmp{\textit{#2}:\space{\url{#3}}}% \else% \protected@edef\tmp{\textit{#2}:\space{\href{#3}{\texttt{\relatedversiondetails@linktext}}}}% \fi% \ifx\relatedversiondetails@cite\@empty% \else% \protected@edef\tmp{\tmp\space\cite{\relatedversiondetails@cite}}% \fi% \expandafter\addtorelatedversionmacro\expandafter{\tmp}{#1}% \endgroup% }% \def\relatedversionHeading{% \textcolor{lipicsGray}{\fontsize{9}{12}\sffamily\bfseries Related Version\enskip}} \setcounter{page}{1} \endinput