You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I encountered odd hyphernation while using overleaf. Here is an MME:
\documentclass[sigplan,screen,10pt]{acmart}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[british]{babel}
\begin{abstract}
Now for manners use has company believe parlors. Least nor party who wrote while did. Excuse formed as is agreed admire so on result parish. Put use set uncommonly announcing and travelling. Allowance sweetness direction to as necessary. Principle oh explained excellent do my suspected conveying in. Excellent you did therefore perfectly supposing described.
Inhabiting discretion the her dispatched decisively boisterous joy. So form were wish open is able of mile of. Waiting express if prevent it we an musical. Especially reasonable travelling she son. Resources resembled forfeited no to zealously. Has procured daughter how friendly followed repeated who surprise. Great asked oh under on voice downs. Law together prospect kindness securing six. Learning why get hastened smallest cheerful.
Ferrars all spirits his imagine effects amongst neither. It bachelor cheerful of mistaken. Tore has sons put upon wife use bred seen. Its dissimilar invitation ten has discretion unreserved. Had you him humoured jointure ask expenses learning. Blush on in jokes sense do do. Brother hundred he assured reached on up no. On am nearer missed lovers. To it mother extent temper figure better.
\end{abstract}
\begin{document}
\title{Test}
\maketitle\section{Introduction}
Conclude that with confidence level 95\%, there’s a significant difference between these two configurations. Now for manners use has company believe parlors. Least nor party who wrote while did. Excuse formed as is agreed admire so on result parish. Put use set uncommonly announcing and travelling. Allowance sweetness direction to as necessary. Principle oh explained excellent do my suspected conveying in. Excellent you did therefore perfectly supposing described.
Inhabiting discretion the her dispatched decisively boisterous joy. So form were wish open is able of mile of. Waiting express if prevent it we an musical. Especially reasonable travelling she son. Resources resembled forfeited no to zealously. Has procured daughter how friendly followed repeated who surprise. Great asked oh under on voice downs. Law together prospect kindness securing six. Learning why get hastened smallest cheerful.
Ferrars all spirits his imagine effects amongst neither. It bachelor cheerful of mistaken. Tore has sons put upon wife use bred seen. Its dissimilar invitation ten has discretion unreserved. Had you him humoured jointure ask expenses learning. Blush on in jokes sense do do. Brother hundred he assured reached on up no. On am nearer missed lovers. To it mother extent temper figure better.
Son agreed others exeter period myself few yet nature. Mention mr manners opinion if garrets enabled. To an occasional dissimilar impossible sentiments. Do fortune account written prepare invited no passage. Garrets use ten you the weather ferrars venture friends. Solid visit seems again you nor all.
In entirely be to at settling felicity. Fruit two match men you seven share. Needed as or is enough points. Miles at smart no marry whole linen mr. Income joy nor can wisdom summer. Extremely depending he gentleman improving intention rapturous as.
So insisted received is occasion advanced honoured. Among ready to which up. Attacks smiling and may out assured moments man nothing outward. Thrown any behind afford either the set depend one temper. Instrument melancholy in acceptance collecting frequently be if. Zealously now pronounce existence add you instantly say offending. Merry their far had widen was. Concerns no in expenses raillery formerly.
You vexed shy mirth now noise. Talked him people valley add use her depend letter. Allowance too applauded now way something recommend. Mrs age men and trees jokes fancy. Gay pretended engrossed eagerness continued ten. Admitting day him contained unfeeling attention mrs out.
Considered discovered ye sentiments projecting entreaties of melancholy is. In expression an solicitude principles in do. Hard do me sigh with west same lady. Their saved linen downs tears son add music. Expression alteration entreaties mrs can terminated estimating. Her too add narrow having wished. To things so denied admire. Am wound worth water he linen at vexed.
Much did had call new drew that kept. Limits expect wonder law she. Now has you views woman noisy match money rooms. To up remark it eldest length oh passed. Off because yet mistake feeling has men. Consulted disposing to moonlight ye extremity. Engage piqued in on coming.
\end{document}
The content of acmart.cls:
%%%% This is file `acmart.cls',%% generated with the docstrip utility.%%%% The original source files were:%%%% acmart.dtx (with options: `class')%% %% IMPORTANT NOTICE:%% %% For the copyright see the source file.%% %% Any modified versions of this file must be renamed%% with new filenames distinct from acmart.cls.%% %% For distribution of the original source see the terms%% for copying and modification in the file acmart.dtx.%% %% This generated file may be distributed as long as the%% original source files, as listed above, are part of the%% same distribution. (The sources need not necessarily be%% in the same archive or directory.)%% \CharacterTable%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z%% Digits \0\1\2\3\4\5\6\7\8\9%% Exclamation \! Double quote \" Hash (number) \#%% Dollar \$ Percent \% Ampersand \&%% Acute accent \' Left paren \( Right paren \)%% Asterisk \* Plus \+ Comma \,%% Minus \- Point \. Solidus \/%% Colon \: Semicolon \; Less than \<%% Equals \= Greater than \> Question mark \?%% Commercial at \@ Left bracket \[ Backslash \\%% Right bracket \] Circumflex \^ Underscore \_%% Grave accent \` Left brace \{ Vertical bar \|%% Right brace \} Tilde \~}\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{acmart}
[2018/08/12 v1.55 Typesetting articles for the Association for
Computing Machinery]
\def\@classname{acmart}
\InputIfFileExists{acmart-preload-hook.tex}{%\ClassWarning{\@classname}{%
I am loading acmart-preload-hook.tex. You are fully responsible
for any problems from now on.}}{}
\RequirePackage{xkeyval}
\RequirePackage{xstring}
\define@choicekey*+{acmart.cls}{format}[\ACM@format\ACM@format@nr]{%
manuscript, acmsmall, acmlarge, acmtog, sigconf, siggraph,
sigplan, sigchi, sigchi-a}[manuscript]{}{%\ClassError{\@classname}{The option format must be manuscript,
acmsmall, acmlarge, acmtog, sigconf, siggraph,
sigplan, sigchi or sigchi-a}}
\def\@DeclareACMFormat#1{\DeclareOptionX{#1}{\setkeys{acmart.cls}{format=#1}}}
\@DeclareACMFormat{manuscript}
\@DeclareACMFormat{acmsmall}
\@DeclareACMFormat{acmlarge}
\@DeclareACMFormat{acmtog}
\@DeclareACMFormat{sigconf}
\@DeclareACMFormat{siggraph}
\@DeclareACMFormat{sigplan}
\@DeclareACMFormat{sigchi}
\@DeclareACMFormat{sigchi-a}
\ExecuteOptionsX{format}
\define@boolkey+{acmart.cls}[@ACM@]{screen}[true]{%\if@ACM@screen
\PackageInfo{\@classname}{Using screen mode}%\else\PackageInfo{\@classname}{Not using screen mode}%\fi}{\PackageError{\@classname}{The option screen can be either true or
false}}
\ExecuteOptionsX{screen=false}
\define@boolkey+{acmart.cls}[@ACM@]{acmthm}[true]{%\if@ACM@acmthm
\PackageInfo{\@classname}{Requiring acmthm}%\else\PackageInfo{\@classname}{Suppressing acmthm}%\fi}{\PackageError{\@classname}{The option acmthm can be either true or
false}}
\ExecuteOptionsX{acmthm=true}
\define@boolkey+{acmart.cls}[@ACM@]{review}[true]{%\if@ACM@review
\PackageInfo{\@classname}{Using review mode}%\AtBeginDocument{\@ACM@printfoliostrue}%\else\PackageInfo{\@classname}{Not using review mode}%\fi}{\PackageError{\@classname}{The option review can be either true or
false}}
\ExecuteOptionsX{review=false}
\define@boolkey+{acmart.cls}[@ACM@]{authorversion}[true]{%\if@ACM@authorversion
\PackageInfo{\@classname}{Using authorversion mode}%\else\PackageInfo{\@classname}{Not using authorversion mode}%\fi}{\PackageError{\@classname}{The option authorversion can be either true or
false}}
\ExecuteOptionsX{authorversion=false}
\define@boolkey+{acmart.cls}[@ACM@]{nonacm}[true]{%\if@ACM@nonacm
\PackageInfo{\@classname}{Using nonacm mode}%\AtBeginDocument{\@ACM@printacmreffalse}%% in 'nonacm' mode we disable the "ACM Reference Format"% printing by default, but this can be re-enabled by the% user using \settopmatter{printacmref=true}\else\PackageInfo{\@classname}{Not using nonacm mode}%\fi}{\PackageError{\@classname}{The option nonacm can be either true or
false}}
\ExecuteOptionsX{nonacm=false}
\define@boolkey+{acmart.cls}[@ACM@]{natbib}[true]{%\if@ACM@natbib
\PackageInfo{\@classname}{Explicitly selecting natbib mode}%\else\PackageInfo{\@classname}{Explicitly deselecting natbib mode}%\fi}{\PackageError{\@classname}{The option natbib can be either true or
false}}
\ExecuteOptionsX{natbib=true}
\define@boolkey+{acmart.cls}[@ACM@]{anonymous}[true]{%\if@ACM@anonymous
\PackageInfo{\@classname}{Using anonymous mode}%\else\PackageInfo{\@classname}{Not using anonymous mode}%\fi}{\PackageError{\@classname}{The option anonymous can be either true or
false}}
\ExecuteOptionsX{anonymous=false}
\define@boolkey+{acmart.cls}[@ACM@]{timestamp}[true]{%\if@ACM@timestamp
\PackageInfo{\@classname}{Using timestamp mode}%\else\PackageInfo{\@classname}{Not using timestamp mode}%\fi}{\PackageError{\@classname}{The option timestamp can be either true or
false}}
\ExecuteOptionsX{timestamp=false}
\define@boolkey+{acmart.cls}[@ACM@]{authordraft}[true]{%\if@ACM@authordraft
\PackageInfo{\@classname}{Using authordraft mode}%\@ACM@timestamptrue\@ACM@reviewtrue\else\PackageInfo{\@classname}{Not using authordraft mode}%\fi}{\PackageError{\@classname}{The option authordraft can be either true or
false}}
\ExecuteOptionsX{authordraft=false}
\def\ACM@fontsize{}
\DeclareOptionX{9pt}{\edef\ACM@fontsize{\CurrentOption}}
\DeclareOptionX{10pt}{\edef\ACM@fontsize{\CurrentOption}}
\DeclareOptionX{11pt}{\edef\ACM@fontsize{\CurrentOption}}
\DeclareOptionX{12pt}{\edef\ACM@fontsize{\CurrentOption}}
\DeclareOptionX{draft}{\PassOptionsToClass{\CurrentOption}{amsart}}
\DeclareOptionX{*}{\PassOptionsToClass{\CurrentOption}{amsart}}
\ProcessOptionsX\ClassInfo{\@classname}{Using format \ACM@format, number \ACM@format@nr}
\newif\if@ACM@manuscript
\newif\if@ACM@journal
\newif\if@ACM@sigchiamode
\ifnum\ACM@format@nr=5\relax% siggraph\ClassWarning{\@classname}{The format siggraph is now obsolete.
I am switching to sigconf.}
\setkeys{acmart.cls}{format=sigconf}
\fi\ifnum\ACM@format@nr=0\relax\@ACM@manuscripttrue\else\@ACM@manuscriptfalse\fi\@ACM@sigchiamodefalse\ifcase\ACM@format@nr\relax% manuscript\@ACM@journaltrue\or% acmsmall\@ACM@journaltrue\or% acmlarge\@ACM@journaltrue\or% acmtog\@ACM@journaltrue\or% sigconf\@ACM@journalfalse\or% siggraph\@ACM@journalfalse\or% sigplan\@ACM@journalfalse\or% sigchi\@ACM@journalfalse\or% sigchi-a\@ACM@journalfalse\@ACM@sigchiamodetrue\fi\ifx\ACM@fontsize\@empty\ifcase\ACM@format@nr\relax% manuscript\def\ACM@fontsize{9pt}%\or% acmsmall\def\ACM@fontsize{10pt}%\or% acmlarge\def\ACM@fontsize{10pt}%\or% acmtog\def\ACM@fontsize{9pt}%\or% sigconf\def\ACM@fontsize{9pt}%\or% siggraph\def\ACM@fontsize{9pt}%\or% sigplan\def\ACM@fontsize{10pt}%\or% sigchi\def\ACM@fontsize{10pt}%\or% sigchi-a\def\ACM@fontsize{10pt}%\fi\fi\ClassInfo{\@classname}{Using fontsize \ACM@fontsize}
\LoadClass[\ACM@fontsize, reqno]{amsart}
\RequirePackage{microtype}
\RequirePackage{etoolbox}
\RequirePackage{refcount}
\RequirePackage{totpages}
\RequirePackage{environ}
\if@ACM@manuscript
\RequirePackage{setspace}
\onehalfspacing\fi\RequirePackage{textcase}
\if@ACM@natbib
\RequirePackage{natbib}
\renewcommand{\bibsection}{%\section*{\refname}%\phantomsection\addcontentsline{toc}{section}{\refname}%
}
\renewcommand{\bibfont}{\bibliofont}
\renewcommand\setcitestyle[1]{
\@for\@tempa:=#1\do
{\def\@tempb{round}\ifx\@tempa\@tempb\renewcommand\NAT@open{(}\renewcommand\NAT@close{)}\fi\def\@tempb{square}\ifx\@tempa\@tempb\renewcommand\NAT@open{[}\renewcommand\NAT@close{]}\fi\def\@tempb{angle}\ifx\@tempa\@tempb\renewcommand\NAT@open{$<$}\renewcommand\NAT@close{$>$}\fi\def\@tempb{curly}\ifx\@tempa\@tempb\renewcommand\NAT@open{\{}\renewcommand\NAT@close{\}}\fi\def\@tempb{semicolon}\ifx\@tempa\@tempb\renewcommand\NAT@sep{;}\fi\def\@tempb{colon}\ifx\@tempa\@tempb\renewcommand\NAT@sep{;}\fi\def\@tempb{comma}\ifx\@tempa\@tempb\renewcommand\NAT@sep{,}\fi\def\@tempb{authoryear}\ifx\@tempa\@tempb\NAT@numbersfalse\fi\def\@tempb{numbers}\ifx\@tempa\@tempb\NAT@numberstrue\NAT@superfalse\fi\def\@tempb{super}\ifx\@tempa\@tempb\NAT@numberstrue\NAT@supertrue\fi\def\@tempb{nobibstyle}\ifx\@tempa\@tempb\let\bibstyle=\@gobble\fi\def\@tempb{bibstyle}\ifx\@tempa\@tempb\let\bibstyle=\@citestyle\fi\def\@tempb{sort}\ifx\@tempa\@tempb\def\NAT@sort{\@ne}\fi\def\@tempb{nosort}\ifx\@tempa\@tempb\def\NAT@sort{\z@}\fi\def\@tempb{compress}\ifx\@tempa\@tempb\def\NAT@cmprs{\@ne}\fi\def\@tempb{nocompress}\ifx\@tempa\@tempb\def\NAT@cmprs{\z@}\fi\def\@tempb{sort&compress}\ifx\@tempa\@tempb\def\NAT@sort{\@ne}\def\NAT@cmprs{\@ne}\fi\def\@tempb{mcite}\ifx\@tempa\@tempb\let\NAT@merge\@ne\fi\def\@tempb{merge}\ifx\@tempa\@tempb\@ifnum{\NAT@merge<\tw@}{\let\NAT@merge\tw@}{}\fi\def\@tempb{elide}\ifx\@tempa\@tempb\@ifnum{\NAT@merge<\thr@@}{\let\NAT@merge\thr@@}{}\fi\def\@tempb{longnamesfirst}\ifx\@tempa\@tempb\NAT@longnamestrue\fi\def\@tempb{nonamebreak}\ifx\@tempa\@tempb\def\NAT@nmfmt#1{\mbox{\NAT@up#1}}\fi\expandafter\NAT@find@eq\@tempa=\relax\@nil\if\@tempc\relax\else\expandafter\NAT@rem@eq\@tempc\def\@tempb{open}\ifx\@tempa\@tempb\xdef\NAT@open{\@tempc}\fi\def\@tempb{close}\ifx\@tempa\@tempb\xdef\NAT@close{\@tempc}\fi\def\@tempb{aysep}\ifx\@tempa\@tempb\xdef\NAT@aysep{\@tempc}\fi\def\@tempb{yysep}\ifx\@tempa\@tempb\xdef\NAT@yrsep{\@tempc}\fi\def\@tempb{notesep}\ifx\@tempa\@tempb\xdef\NAT@cmt{\@tempc}\fi\def\@tempb{citesep}\ifx\@tempa\@tempb\xdef\NAT@sep{\@tempc}\fi\fi
}%\NAT@@setcites
}
\renewcommand\citestyle[1]{%\ifcsname bibstyle@#1\endcsname%\csname bibstyle@#1\endcsname\let\bibstyle\@gobble%\else%\@latex@error{Undefined `#1' citestyle}%\fi
}%\fi\newcommand{\bibstyle@acmauthoryear}{%\setcitestyle{%
authoryear,%
open={[},close={]},citesep={;},%
aysep={},yysep={,},%
notesep={, }}}
\newcommand{\bibstyle@acmnumeric}{%\setcitestyle{%
numbers,sort&compress,%
open={[},close={]},citesep={,},%
notesep={, }}}
\if@ACM@natbib
\citestyle{acmnumeric}
\fi\def\@startsection#1#2#3#4#5#6{%\if@noskipsec \leavevmode\fi\par\@tempskipa #4\relax\@afterindenttrue\ifdim\@tempskipa <\z@\@tempskipa -\@tempskipa\@afterindentfalse\fi\if@nobreak
\everypar{}%\else\addpenalty\@secpenalty\addvspace\@tempskipa\fi\@ifstar
{\@ssect{#3}{#4}{#5}{#6}}%
{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
\def\@sect#1#2#3#4#5#6[#7]#8{%\edef\@toclevel{\ifnum#2=\@m 0\else\number#2\fi}%\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\@svsec}%\interlinepenalty\@M #8\@@par}%\endgroup\csname #1mark\endcsname{#7}%\ifnum #2>\c@secnumdepth\else\@tochangmeasure{\csname the#1\endcsname}%\fi\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}%\ifnum #2>\c@secnumdepth\else\@tochangmeasure{\csname the#1\endcsname\space}%\fi\addcontentsline{toc}{#1}{%\ifnum #2>\c@secnumdepth\else\protect\numberline{\csname the#1\endcsname}%\fi
#7}}%\fi\@xsect{#5}}
\def\@xsect#1{%\@tempskipa #1\relax\ifdim\@tempskipa>\z@\par\nobreak\vskip\@tempskipa\@afterheading\else\@nobreakfalse\global\@noskipsectrue\everypar{%\if@noskipsec
\global\@noskipsecfalse
{\setbox\z@\lastbox}%\clubpenalty\@M\begingroup\@svsechd\endgroup\unskip\@tempskipa #1\relax\hskip -\@tempskipa\else\clubpenalty\@clubpenalty\everypar{}%\fi}%\fi\ignorespaces}
\def\@seccntformat#1{\csname the#1\endcsname\quad}
\def\@ssect#1#2#3#4#5{%\@tempskipa #3\relax\ifdim\@tempskipa>\z@\begingroup
#4{%\@hangfrom{\hskip #1}%\interlinepenalty\@M #5\@@par}%\endgroup\else\def\@svsechd{#4{\hskip #1\relax #5}}%\fi\@xsect{#3}}
\def\@starttoc#1#2{\begingroup\makeatletter\setTrue{#1}%\par\removelastskip\vskip\z@skip\@startsection{section}\@M\z@{\linespacing\@plus\linespacing}%
{.5\linespacing}{\centering\contentsnamefont}{#2}%\@input{\jobname.#1}%\if@filesw
\@xp\newwrite\csname tf@#1\endcsname\immediate\@xp\openout\csname tf@#1\endcsname\jobname.#1\relax\fi\global\@nobreakfalse\endgroup\addvspace{32\p@\@plus14\p@}%
}
\def\l@section{\@tocline{1}{0pt}{1pc}{2pc}{}}
\def\l@subsection{\@tocline{2}{0pt}{1pc}{3pc}{}}
\def\l@subsubsection{\@tocline{2}{0pt}{1pc}{5pc}{}}
\def\@makefntext{\noindent\@makefnmark}
\if@ACM@sigchiamode
\long\def\@footnotetext#1{\marginpar{%\reset@font\small\interlinepenalty\interfootnotelinepenalty\protected@edef\@currentlabel{%\csname p@footnote\endcsname\@thefnmark
}%\color@begingroup\@makefntext{%\rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}%\color@endgroup}}%\fi\long\def\@mpfootnotetext#1{%\global\setbox\@mpfootins\vbox{%\unvbox\@mpfootins\reset@font\footnotesize\hsize\columnwidth\@parboxrestore\protected@edef\@currentlabel
{\csname p@mpfootnote\endcsname\@thefnmark}%\color@begingroup\centering\@makefntext{%\rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}%\color@endgroup}}
\def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}}
\let\@footnotemark@nolink\@footnotemark\let\@footnotetext@nolink\@footnotetext\RequirePackage[bookmarksnumbered,unicode]{hyperref}
\pdfstringdefDisableCommands{%\def\unskip{}%\def\textbullet{- }%\def\textrightarrow{ -> }%\def\footnotemark{}%
}
\urlstyle{rm}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\or% acmtog\or% sigconf\or% siggraph\or% sigplan\urlstyle{sf}
\or% sigchi\or% sigchi-a\urlstyle{sf}
\fi\AtEndPreamble{%\if@ACM@screen
\hypersetup{colorlinks,
linkcolor=ACMRed,
citecolor=ACMPurple,
urlcolor=ACMDarkBlue,
filecolor=ACMDarkBlue}
\else\hypersetup{hidelinks}
\fi\hypersetup{pdflang={English},
pdfdisplaydoctitle}}
\if@ACM@natbib
\let\citeN\cite\let\cite\citep\let\citeANP\citeauthor\let\citeNN\citeyearpar\let\citeyearNP\citeyear\let\citeNP\citealt\DeclareRobustCommand\citeA
{\begingroup\NAT@swafalse\let\NAT@ctype\@ne\NAT@partrue\NAT@fullfalse\NAT@open\NAT@citetp}%\providecommand\newblock{}%\else\AtBeginDocument{%\let\shortcite\cite%\providecommand\citename[1]{#1}}
\fi\newcommand\shortcite[2][]{%
\ifNAT@numbers\cite[#1]{#2}\else\citeyearpar[#1]{#2}\fi}
\def\bibliographystyle#1{%\ifx\@begindocumenthook\@undefined\else\expandafter\AtBeginDocument\fi
{\if@filesw
\immediate\write\@auxout{\string\bibstyle{#1}}%\fi}}
\RequirePackage{graphicx}
\RequirePackage[prologue]{xcolor}
\definecolor[named]{ACMBlue}{cmyk}{1,0.1,0,0.1}
\definecolor[named]{ACMYellow}{cmyk}{0,0.16,1,0}
\definecolor[named]{ACMOrange}{cmyk}{0,0.42,1,0.01}
\definecolor[named]{ACMRed}{cmyk}{0,0.90,0.86,0}
\definecolor[named]{ACMLightBlue}{cmyk}{0.49,0.01,0,0}
\definecolor[named]{ACMGreen}{cmyk}{0.20,0,1,0.19}
\definecolor[named]{ACMPurple}{cmyk}{0.55,1,0,0.15}
\definecolor[named]{ACMDarkBlue}{cmyk}{1,0.58,0,0.21}
\if@ACM@authordraft
\RequirePackage{draftwatermark}
\SetWatermarkFontSize{0.5in}
\SetWatermarkColor[gray]{.9}
\SetWatermarkText{\parbox{12em}{\centering
Unpublished working draft.\\
Not for distribution.}}
\fi\RequirePackage{geometry}
\ifcase\ACM@format@nr\relax% manuscript\geometry{letterpaper,head=13pt,
marginparwidth=6pc,heightrounded}%\or% acmsmall\geometry{twoside=true,
includeheadfoot, head=13pt, foot=2pc,
paperwidth=6.75in, paperheight=10in,
top=58pt, bottom=44pt, inner=46pt, outer=46pt,
marginparwidth=2pc,heightrounded
}%\or% acmlarge\geometry{twoside=true, head=13pt, foot=2pc,
paperwidth=8.5in, paperheight=11in,
includeheadfoot,
top=78pt, bottom=114pt, inner=81pt, outer=81pt,
marginparwidth=4pc,heightrounded
}%\or% acmtog\geometry{twoside=true, head=13pt, foot=2pc,
paperwidth=8.5in, paperheight=11in,
includeheadfoot, columnsep=24pt,
top=52pt, bottom=75pt, inner=52pt, outer=52pt,
marginparwidth=2pc,heightrounded
}%\or% sigconf\geometry{twoside=true, head=13pt,
paperwidth=8.5in, paperheight=11in,
includeheadfoot, columnsep=2pc,
top=57pt, bottom=73pt, inner=54pt, outer=54pt,
marginparwidth=2pc,heightrounded
}%\or% siggraph\geometry{twoside=true, head=13pt,
paperwidth=8.5in, paperheight=11in,
includeheadfoot, columnsep=2pc,
top=57pt, bottom=73pt, inner=54pt, outer=54pt,
marginparwidth=2pc,heightrounded
}%\or% sigplan\geometry{twoside=true, head=13pt,
paperwidth=8.5in, paperheight=11in,
includeheadfoot=false, columnsep=2pc,
top=1in, bottom=1in, inner=0.75in, outer=0.75in,
marginparwidth=2pc,heightrounded
}%\or% sigchi\geometry{twoside=true, head=13pt,
paperwidth=8.5in, paperheight=11in,
includeheadfoot, columnsep=2pc,
top=66pt, bottom=73pt, inner=54pt, outer=54pt,
marginparwidth=2pc,heightrounded
}%\or% sigchi-a\geometry{twoside=false, head=13pt,
paperwidth=11in, paperheight=8.5in,
includeheadfoot, marginparsep=72pt,
marginparwidth=170pt, columnsep=20pt,
top=72pt, bottom=72pt, left=314pt, right=72pt
}%\@mparswitchfalse\reversemarginpar\fi\setlength\parindent{10\p@}
\setlength\parskip{\z@}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\or% acmtog\setlength\parindent{9\p@}%\or% sigconf\or% siggraph\or% sigplan\or% sigchi\or% sigchi-a\fi\setlength\normalparindent{\parindent}
\def\copyrightpermissionfootnoterule{\kern-3\p@\hrule\@width\columnwidth\kern 2.6\p@}
\RequirePackage{manyfoot}
\SelectFootnoteRule[2]{copyrightpermission}
\DeclareNewFootnote{authorsaddresses}
\SelectFootnoteRule[2]{copyrightpermission}
\DeclareNewFootnote{copyrightpermission}
\def\footnoterule{\kern-3\p@\hrule\@width 4pc \kern 2.6\p@}
\def\endminipage{%\par\unskip\ifvoid\@mpfootins\else\vskip\skip\@mpfootins\normalcolor\unvbox\@mpfootins\fi\@minipagefalse\color@endgroup\egroup\expandafter\@iiiparbox\@mpargs{\unvbox\@tempboxa}}
\def\@textbottom{\vskip\z@\@plus 1pt}
\let\@texttop\relax\RequirePackage{iftex}
\ifPDFTeX\input{glyphtounicode}
\pdfglyphtounicode{f_f}{FB00}
\pdfglyphtounicode{f_f_i}{FB03}
\pdfglyphtounicode{f_f_l}{FB04}
\pdfglyphtounicode{f_i}{FB01}
\pdfglyphtounicode{t_t}{0074 0074}
\pdfglyphtounicode{f_t}{0066 0074}
\pdfglyphtounicode{T_h}{0054 0068}
\pdfgentounicode=1
\fi\RequirePackage{cmap}
\newif\if@ACM@newfonts
\@ACM@newfontstrue\IfFileExists{libertine.sty}{}{\ClassWarning{\@classname}{You do not
have the libertine package installed. Please upgrade your
TeX}\@ACM@newfontsfalse}
\IfFileExists{zi4.sty}{}{\ClassWarning{\@classname}{You do not
have the zi4 package installed. Please upgrade your
TeX}\@ACM@newfontsfalse}
\IfFileExists{newtxmath.sty}{}{\ClassWarning{\@classname}{You do not
have the newtxmath package installed. Please upgrade your
TeX}\@ACM@newfontsfalse}
\if@ACM@newfonts
\RequirePackage[T1]{fontenc}
\ifxetex\RequirePackage[tt=false]{libertine}
\else\RequirePackage[tt=false, type1=true]{libertine}
\fi\RequirePackage[varqu]{zi4}
\RequirePackage[libertine]{newtxmath}
\fi\let\liningnums\@undefined\AtEndPreamble{%\DeclareTextFontCommand{\liningnums}{\libertineLF}}
\if@ACM@sigchiamode
\renewcommand{\familydefault}{\sfdefault}
\fi\RequirePackage{caption, float}
\captionsetup[table]{position=top}
\if@ACM@journal
\captionsetup{labelfont={sf, small},
textfont={sf, small}, margin=\z@}
\captionsetup[figure]{name={Fig.}}
\else\captionsetup{labelfont={bf},
textfont={bf}, labelsep=colon, margin=\z@}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\or% acmtog\or% sigconf\or% siggraph\captionsetup{textfont={it}}
\or% sigplan\captionsetup{labelfont={bf},
textfont={normalfont}, labelsep=period, margin=\z@}
\or% sigchi\captionsetup[figure]{labelfont={bf, small},
textfont={bf, small}}
\or% sigchi-a\captionsetup[figure]{labelfont={bf, small},
textfont={bf, small}}
\fi\fi\newfloat{sidebar}{}{sbar}
\floatname{sidebar}{Sidebar}
\renewenvironment{sidebar}{\Collect@Body\@sidebar}{}
\long\def\@sidebar#1{\bgroup\captionsetup{type=sidebar}%\marginpar{\small#1}\egroup}
\newenvironment{marginfigure}{\Collect@Body\@marginfigure}{}
\long\def\@marginfigure#1{\bgroup\captionsetup{type=figure}%\marginpar{\centering\small#1}\egroup}
\newenvironment{margintable}{\Collect@Body\@margintable}{}
\long\def\@margintable#1{\bgroup\captionsetup{type=table}%\marginpar{\centering\small#1}\egroup}
\newdimen\fulltextwidth\fulltextwidth=\dimexpr(\textwidth+\marginparwidth+\marginparsep)
\if@ACM@sigchiamode
\def\@dblfloat{\bgroup\columnwidth=\fulltextwidth\let\@endfloatbox\@endwidefloatbox\def\@fpsadddefault{\def\@fps{tp}}%\@float}
\fi\if@ACM@sigchiamode
\def\end@dblfloat{%\end@float\egroup}
\fi\def\@endwidefloatbox{%\par\vskip\z@skip\@minipagefalse\outer@nobreak\egroup\color@endbox\global\setbox\@currbox=\vbox{\moveleft\dimexpr(\fulltextwidth-\textwidth)\box\@currbox}%\wd\@currbox=\textwidth
}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\or% acmtog\or% sigconf\or% siggraph\or% sigplan\def\labelenumi{\theenumi.}
\def\labelenumii{\theenumii.}
\def\labelenumiii{\theenumiii.}
\def\labelenumiv{\theenumiv.}
\or% sigchi\or% sigchi-a\fi\newdimen\@ACM@labelwidth\AtBeginDocument{%\setlength\labelsep{4pt}
\setlength{\@ACM@labelwidth}{6.5pt}
%% First-level list: when beginning after the first line of an%% indented paragraph or ending before an indented paragraph, labels%% should not hang to the left of the preceding/following text.\setlength\leftmargini{\z@}
\addtolength\leftmargini{\parindent}
\addtolength\leftmargini{2\labelsep}
\addtolength\leftmargini{\@ACM@labelwidth}
%% Second-level and higher lists.\setlength\leftmarginii{\z@}
\addtolength\leftmarginii{0.5\labelsep}
\addtolength\leftmarginii{\@ACM@labelwidth}
\setlength\leftmarginiii{\leftmarginii}
\setlength\leftmarginiv{\leftmarginiii}
\setlength\leftmarginv{\leftmarginiv}
\setlength\leftmarginvi{\leftmarginv}
\@listi}
\newskip\listisep\listisep\smallskipamount\def\@listI{\leftmargin\leftmargini\labelwidth\leftmargini\advance\labelwidth-\labelsep\listparindent\z@\topsep\listisep}
\let\@listi\@listI\def\@listii{\leftmargin\leftmarginii\labelwidth\leftmarginii\advance\labelwidth-\labelsep\topsep\z@skip}
\def\@listiii{\leftmargin\leftmarginiii\labelwidth\leftmarginiii\advance\labelwidth-\labelsep}
\def\@listiv{\leftmargin\leftmarginiv\labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
\def\@listv{\leftmargin\leftmarginv\labelwidth\leftmarginv\advance\labelwidth-\labelsep}
\def\@listvi{\leftmargin\leftmarginvi\labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
\renewcommand{\descriptionlabel}[1]{\upshape\bfseries #1}
\renewenvironment{description}{\list{}{%\labelwidth\@ACM@labelwidth\let\makelabel\descriptionlabel}%
}{
\endlist
}
\let\enddescription=\endlist% for efficiency\define@choicekey*+{ACM}{acmJournal}[\@journalCode\@journalCode@nr]{%
CIE,%
CSUR,%
DTRAP,%
IMWUT,%
JACM,%
JDIQ,%
JEA,%
JERIC,%
JETC,%
JOCCH,%
PACMCGIT,%
PACMHCI,%
PACMPL,%
POMACS,%
TAAS,%
TACCESS,%
TACO,%
TALG,%
TALLIP,%
TAP,%
TCPS,%
TDSCI,%
TEAC,%
TECS,%
THRI,%
TIIS,%
TIOT,%
TISSEC,%
TIST,%
TKDD,%
TMIS,%
TOCE,%
TOCHI,%
TOCL,%
TOCS,%
TOCT,%
TODAES,%
TODS,%
TOG,%
TOIS,%
TOIT,%
TOMACS,%
TOMM,%
TOMPECS,%
TOMS,%
TOPC,%
TOPS,%
TOPLAS,%
TOS,%
TOSEM,%
TOSN,%
TRETS,%
TSAS,%
TSC,%
TSLP,%
TWEB%
}{%\ifcase\@journalCode@nr\relax% CIE\def\@journalName{ACM Computers in Entertainment}%\def\@journalNameShort{ACM Comput. Entertain.}%\def\@permissionCodeOne{1544-3574}%\or% CSUR\def\@journalName{ACM Computing Surveys}%\def\@journalNameShort{ACM Comput. Surv.}%\def\@permissionCodeOne{0360-0300}%\or% DTRAP\def\@journalName{Digital Threats: Research and Practice}%\def\@journalNameShort{Digit. Threat. Res. Pract.}%\def\@permissionCodeOne{2576-5337}%\or% IMWUT\def\@journalName{Proceedings of the ACM on Interactive, Mobile,
Wearable and Ubiquitous Technologies}%\def\@journalNameShort{Proc. ACM Interact. Mob. Wearable Ubiquitous Technol.}%\def\@permissionCodeOne{2474-9567}%\@ACM@screentrue\PackageInfo{\@classname}{Using screen mode due to \@journalCode}%\or% JACM\def\@journalName{Journal of the ACM}%\def\@journalNameShort{J. ACM}%\def\@permissionCodeOne{0004-5411}%\or% JDIQ\def\@journalName{ACM Journal of Data and Information Quality}%\def\@journalNameShort{ACM J. Data Inform. Quality}%\def\@permissionCodeOne{1936-1955}%\or% JEA\def\@journalName{ACM Journal of Experimental Algorithmics}%\def\@journalNameShort{ACM J. Exp. Algor.}%\def\@permissionCodeOne{1084-6654}%\or% JERIC\def\@journalName{ACM Journal of Educational Resources in Computing}%\def\@journalNameShort{ACM J. Edu. Resources in Comput.}%\def\@permissionCodeOne{1073-0516}%\or% JETC\def\@journalName{ACM Journal on Emerging Technologies in Computing Systems}%\def\@journalNameShort{ACM J. Emerg. Technol. Comput. Syst.}%\def\@permissionCodeOne{1550-4832}%\or% JOCCH\def\@journalName{ACM Journal on Computing and Cultural Heritage}%\def\@journalNameShort{ACM J. Comput. Cult. Herit.}%\or% PACMCGIT\def\@journalName{Proceedings of the ACM on Computer Graphics and Interactive Techniques}%\def\@journalNameShort{Proc. ACM Comput. Graph. Interact. Tech.}%\def\@permissionCodeOne{2577-6193}%\@ACM@screentrue\PackageInfo{\@classname}{Using screen mode due to \@journalCode}%\or% PACMHCI\def\@journalName{Proceedings of the ACM on Human-Computer Interaction}%\def\@journalNameShort{Proc. ACM Hum.-Comput. Interact.}%\def\@permissionCodeOne{2573-0142}%\@ACM@screentrue\PackageInfo{\@classname}{Using screen mode due to \@journalCode}%\or% PACMPL\def\@journalName{Proceedings of the ACM on Programming Languages}%\def\@journalNameShort{Proc. ACM Program. Lang.}%\def\@permissionCodeOne{2475-1421}%\@ACM@screentrue\PackageInfo{\@classname}{Using screen mode due to \@journalCode}%\or% POMACS\def\@journalName{Proceedings of the ACM on Measurement and Analysis of Computing Systems}%\def\@journalNameShort{Proc. ACM Meas. Anal. Comput. Syst.}%\def\@permissionCodeOne{2476-1249}%\@ACM@screentrue\PackageInfo{\@classname}{Using screen mode due to \@journalCode}%\or% TAAS\def\@journalName{ACM Transactions on Autonomous and Adaptive Systems}%\def\@journalNameShort{ACM Trans. Autonom. Adapt. Syst.}%\def\@permissionCodeOne{1556-4665}%\or% TACCESS\def\@journalName{ACM Transactions on Accessible Computing}%\def\@journalNameShort{ACM Trans. Access. Comput.}%\def\@permissionCodeOne{1936-7228}%\or% TACO\def\@journalName{ACM Transactions on Architecture and Code Optimization}%\def\@journalNameShort{ACM Trans. Arch. Code Optim.}%\or% TALG\def\@journalName{ACM Transactions on Algorithms}%\def\@journalNameShort{ACM Trans. Algor.}%\def\@permissionCodeOne{1549-6325}%\or% TALLIP\def\@journalName{ACM Transactions on Asian and Low-Resource Language Information Processing}%\def\@journalNameShort{ACM Trans. Asian Low-Resour. Lang. Inf. Process.}%\def\@permissionCodeOne{2375-4699}%\or% TAP\def\@journalName{ACM Transactions on Applied Perception}%\or% TCPS\def\@journalName{ACM Transactions on Cyber-Physical Systems}%\or% TDSCI\def\@journalName{ACM Transactions on Data Science}%\def\@journalNameShort{ACM Trans. Data Sci.}%\def\@permissionCodeOne{2577-3224}%\or% TEAC\def\@journalName{ACM Transactions on Economics and Computation}%\or% TECS\def\@journalName{ACM Transactions on Embedded Computing Systems}%\def\@journalNameShort{ACM Trans. Embedd. Comput. Syst.}%\def\@permissionCodeOne{1539-9087}%\or% THRI\def\@journalName{ACM Transactions on Human-Robot Interaction}%\def\@journalNameShort{ACM Trans. Hum.-Robot Interact.}%\def\@permissionCodeOne{2573-9522}%\or% TIIS\def\@journalName{ACM Transactions on Interactive Intelligent Systems}%\def\@journalNameShort{ACM Trans. Interact. Intell. Syst.}%\def\@permissionCodeOne{2160-6455}%\or% TIOT\def\@journalName{ACM Transactions on Internet of Things}%\def\@journalNameShort{ACM Trans. Internet Things}%\def\@permissionCodeOne{2577-6207}%\or% TISSEC\def\@journalName{ACM Transactions on Information and System Security}%\def\@journalNameShort{ACM Trans. Info. Syst. Sec.}%\def\@permissionCodeOne{1094-9224}%\or% TIST\def\@journalName{ACM Transactions on Intelligent Systems and Technology}%\def\@journalNameShort{ACM Trans. Intell. Syst. Technol.}%\def\@permissionCodeOne{2157-6904}%\or% TKDD\def\@journalName{ACM Transactions on Knowledge Discovery from Data}%\def\@journalNameShort{ACM Trans. Knowl. Discov. Data.}%\def\@permissionCodeOne{1556-4681}%\or% TMIS\def\@journalName{ACM Transactions on Management Information Systems}%\def\@journalNameShort{ACM Trans. Manag. Inform. Syst.}%\def\@permissionCodeOne{2158-656X}%\or% TOCE\def\@journalName{ACM Transactions on Computing Education}%\def\@journalNameShort{ACM Trans. Comput. Educ.}%\def\@permissionCodeOne{1946-6226}%\or% TOCHI\def\@journalName{ACM Transactions on Computer-Human Interaction}%\def\@journalNameShort{ACM Trans. Comput.-Hum. Interact.}%\def\@permissionCodeOne{1073-0516}%\or% TOCL\def\@journalName{ACM Transactions on Computational Logic}%\def\@journalNameShort{ACM Trans. Comput. Logic}%\def\@permissionCodeOne{1529-3785}%\or% TOCS\def\@journalName{ACM Transactions on Computer Systems}%\def\@journalNameShort{ACM Trans. Comput. Syst.}%\def\@permissionCodeOne{0734-2071}%\or% TOCT\def\@journalName{ACM Transactions on Computation Theory}%\def\@journalNameShort{ACM Trans. Comput. Theory}%\def\@permissionCodeOne{1942-3454}%\or% TODAES\def\@journalName{ACM Transactions on Design Automation of Electronic Systems}%\def\@journalNameShort{ACM Trans. Des. Autom. Electron. Syst.}%\def\@permissionCodeOne{1084-4309}%\or% TODS\def\@journalName{ACM Transactions on Database Systems}%\def\@journalNameShort{ACM Trans. Datab. Syst.}%\def\@permissionCodeOne{0362-5915}%\or% TOG\def\@journalName{ACM Transactions on Graphics}%\def\@journalNameShort{ACM Trans. Graph.}%\def\@permissionCodeOne{0730-0301}
\or% TOIS\def\@journalName{ACM Transactions on Information Systems}%\def\@permissionCodeOne{1046-8188}%\or% TOIT\def\@journalName{ACM Transactions on Internet Technology}%\def\@journalNameShort{ACM Trans. Internet Technol.}%\def\@permissionCodeOne{1533-5399}%\or% TOMACS\def\@journalName{ACM Transactions on Modeling and Computer Simulation}%\def\@journalNameShort{ACM Trans. Model. Comput. Simul.}%\or% TOMM\def\@journalName{ACM Transactions on Multimedia Computing, Communications and Applications}%\def\@journalNameShort{ACM Trans. Multimedia Comput. Commun. Appl.}%\def\@permissionCodeOne{1551-6857}%\def\@permissionCodeTwo{0100}%\or% TOMPECS\def\@journalName{ACM Transactions on Modeling and Performance Evaluation of Computing Systems}%\def\@journalNameShort{ACM Trans. Model. Perform. Eval. Comput. Syst.}%\def\@permissionCodeOne{2376-3639}%\or% TOMS\def\@journalName{ACM Transactions on Mathematical Software}%\def\@journalNameShort{ACM Trans. Math. Softw.}%\def\@permissionCodeOne{0098-3500}%\or% TOPC\def\@journalName{ACM Transactions on Parallel Computing}%\def\@journalNameShort{ACM Trans. Parallel Comput.}%\def\@permissionCodeOne{1539-9087}%\or% TOPS\def\@journalName{ACM Transactions on Privacy and Security}%\def\@journalNameShort{ACM Trans. Priv. Sec.}%\def\@permissionCodeOne{2471-2566}%\or% TOPLAS\def\@journalName{ACM Transactions on Programming Languages and Systems}%\def\@journalNameShort{ACM Trans. Program. Lang. Syst.}%\def\@permissionCodeOne{0164-0925}%\or% TOS\def\@journalName{ACM Transactions on Storage}%\def\@journalNameShort{ACM Trans. Storage}%\def\@permissionCodeOne{1553-3077}%\or% TOSEM\def\@journalName{ACM Transactions on Software Engineering and Methodology}%\def\@journalNameShort{ACM Trans. Softw. Eng. Methodol.}%\def\@permissionCodeOne{1049-331X}%\or% TOSN\def\@journalName{ACM Transactions on Sensor Networks}%\def\@journalNameShort{ACM Trans. Sensor Netw.}%\def\@permissionCodeOne{1550-4859}%\or% TRETS\def\@journalName{ACM Transactions on Reconfigurable Technology and Systems}%\def\@journalNameShort{ACM Trans. Reconfig. Technol. Syst.}%\def\@permissionCodeOne{1936-7406}%\or% TSAS\def\@journalName{ACM Transactions on Spatial Algorithms and Systems}%\def\@journalNameShort{ACM Trans. Spatial Algorithms Syst.}%\def\@permissionCodeOne{2374-0353}%\or% TSC\def\@journalName{ACM Transactions on Social Computing}%\def\@journalNameShort{ACM Trans. Soc. Comput.}%\def\@permissionCodeOne{2469-7818}%\or% TSLP\def\@journalName{ACM Transactions on Speech and Language Processing}%\def\@journalNameShort{ACM Trans. Speech Lang. Process.}%\def\@permissionCodeOne{1550-4875}%\or% TWEB\def\@journalName{ACM Transactions on the Web}%\def\@journalNameShort{ACM Trans. Web}%\def\@permissionCodeOne{1559-1131}%\fi\ClassInfo{\@classname}{Using journal code \@journalCode}%
}{%\ClassError{\@classname}{Incorrect journal #1}%
}%\def\acmJournal#1{\setkeys{ACM}{acmJournal=#1}}
\def\@journalCode@nr{0}
\def\@journalName{}%\def\@journalNameShort{\@journalName}%\def\@permissionCodeOne{XXXX-XXXX}%\def\@permissionCodeTwo{}%\newcommand\acmConference[4][]{%\gdef\acmConference@shortname{#1}%\gdef\acmConference@name{#2}%\gdef\acmConference@date{#3}%\gdef\acmConference@venue{#4}%\ifx\acmConference@shortname\@empty\gdef\acmConference@shortname{#2}%\fi}
\acmConference[Conference'17]{ACM Conference}{July 2017}{Washington,
DC, USA}
\def\acmBooktitle#1{\gdef\@acmBooktitle{#1}}
\acmBooktitle{Proceedings of \acmConference@name\ifx\acmConference@name\acmConference@shortname\else\ (\acmConference@shortname)\fi}
\def\@editorsAbbrev{(Ed.)}
\def\@acmEditors{}
\def\editor#1{\ifx\@acmEditors\@empty\gdef\@acmEditors{#1}%\else\gdef\@editorsAbbrev{(Eds.)}%\g@addto@macro\@acmEditors{\and#1}%\fi}
\def\subtitle#1{\def\@subtitle{#1}}
\subtitle{}
\newcount\num@authorgroups\num@authorgroups=0\relax\newcount\num@authors\num@authors=0\relax\newif\if@insideauthorgroup
\@insideauthorgroupfalse\renewcommand\author[2][]{%\global\advance\num@authors by 1\relax\if@insideauthorgroup\else\global\advance\num@authorgroups by 1\relax\global\@insideauthorgrouptrue\fi\ifx\addresses\@empty\if@ACM@anonymous
\gdef\addresses{\@author{Anonymous Author(s)%\ifx\@acmSubmissionID\@empty\else\\Submission Id:
\@acmSubmissionID\fi}}%\gdef\authors{Anonymous Author(s)}%\else\gdef\addresses{\@author{#2}}%\gdef\authors{#2}%\fi\else\if@ACM@anonymous\else\g@addto@macro\addresses{\and\@author{#2}}%\g@addto@macro\authors{\and#2}%\fi\fi\if@ACM@anonymous
\ifx\shortauthors\@empty\gdef\shortauthors{Anon.
\ifx\@acmSubmissionID\@empty\else Submission Id:
\@acmSubmissionID\fi}%\fi\else\def\@tempa{#1}%\ifx\@tempa\@empty\ifx\shortauthors\@empty\gdef\shortauthors{#2}%\else\g@addto@macro\shortauthors{\and#2}%\fi\else\ifx\shortauthors\@empty\gdef\shortauthors{#1}%\else\g@addto@macro\shortauthors{\and#1}%\fi\fi\fi}
\newcommand{\affiliation}[2][]{%\global\@insideauthorgroupfalse\if@ACM@anonymous\else\g@addto@macro\addresses{\affiliation{#1}{#2}}%\fi}
\define@boolkey+{@ACM@affiliation@}[@ACM@affiliation@]{obeypunctuation}%
[true]{}{\ClassError{\@classname}{The option obeypunctuation can be either true or false}}
\def\additionalaffiliation#1{\authornote{\@additionalaffiliation{#1}}}
\def\@additionalaffiliation#1{\bgroup\def\position##1{\ignorespaces}%\def\institution##1{##1\ignorespaces}%\def\department{\@ifnextchar[{\@department}{\@department[]}}%\def\@department[##1]##2{\unskip, ##2\ignorespaces}%\let\streetaddress\position\let\city\position\let\state\position\let\postcode\position\let\country\position
Also with #1\unskip.\egroup}
\renewcommand{\email}[2][]{%\if@ACM@anonymous\else\g@addto@macro\addresses{\email{#1}{#2}}%\fi}
\def\orcid#1{\unskip\ignorespaces}
\def\authorsaddresses#1{\def\@authorsaddresses{#1}}
\authorsaddresses{\@mkauthorsaddresses}
\def\@titlenotes{}
\def\titlenote#1{%\g@addto@macro\@title{\footnotemark}%\if@ACM@anonymous
\g@addto@macro\@titlenotes{%\stepcounter{footnote}\footnotetext{Title note}}%\else\g@addto@macro\@titlenotes{\stepcounter{footnote}\footnotetext{#1}}%\fi}
\def\@subtitlenotes{}
\def\subtitlenote#1{%\g@addto@macro\@subtitle{\footnotemark}%\if@ACM@anonymous
\g@addto@macro\@subtitlenotes{%\stepcounter{footnote}\footnotetext{Subtitle note}}%\else\g@addto@macro\@subtitlenotes{%\stepcounter{footnote}\footnotetext{#1}}%\fi}
\def\@authornotes{}
\def\authornote#1{%\if@ACM@anonymous\else\g@addto@macro\addresses{\@authornotemark}%\g@addto@macro\@authornotes{%\stepcounter{footnote}\footnotetext{#1}}%\fi}
\newcommand\authornotemark[1][\relax]{%\ifx#1\relax\relax\relax\g@addto@macro\addresses{\@authornotemark}%\else\g@addto@macro\addresses{\@@authornotemark{#1}}%\fi}
\def\acmVolume#1{\def\@acmVolume{#1}}
\acmVolume{1}
\def\acmNumber#1{\def\@acmNumber{#1}}
\acmNumber{1}
\def\acmArticle#1{\def\@acmArticle{#1}}
\acmArticle{}
\def\acmArticleSeq#1{\def\@acmArticleSeq{#1}}
\acmArticleSeq{\@acmArticle}
\def\acmYear#1{\def\@acmYear{#1}}
\acmYear{\the\year}
\def\acmMonth#1{\def\@acmMonth{#1}}
\acmMonth{\the\month}
\def\@acmPubDate{\ifcase\@acmMonth\or
January\or February\or March\or April\or May\or June\or
July\or August\or September\or October\or November\or
December\fi~\@acmYear}
\def\acmPrice#1{\def\@acmPrice{#1}}
\acmPrice{15.00}
\def\acmSubmissionID#1{\def\@acmSubmissionID{#1}}
\acmSubmissionID{}
\def\acmISBN#1{\def\@acmISBN{#1}}
\acmISBN{978-x-xxxx-xxxx-x/YY/MM}
\def\acmDOI#1{\def\@acmDOI{#1}}
\acmDOI{10.1145/nnnnnnn.nnnnnnn}
\newif\if@ACM@badge
\@ACM@badgefalse\newlength\@ACM@badge@width\setlength\@ACM@badge@width{5pc}
\newlength\@ACM@title@width\newlength\@ACM@badge@skip\setlength\@ACM@badge@skip{1pc}
\newcommand\acmBadgeR[2][]{\@ACM@badgetrue\def\@acmBadgeR@url{#1}%\def\@acmBadgeR@image{#2}}
\def\@acmBadgeR@url{}
\def\@acmBadgeR@image{}
\newcommand\acmBadgeL[2][]{\@ACM@badgetrue\def\@acmBadgeL@url{#1}%\def\@acmBadgeL@image{#2}}
\def\@acmBadgeL@url{}
\def\@acmBadgeL@image{}
\def\startPage#1{\def\@startPage{#1}}
\startPage{}
\def\terms#1{\ClassWarning{\@classname}{The command \string\terms{} is
obsolete. I am going to ignore it}}
\def\keywords#1{\def\@keywords{#1}}
\keywords{}
\renewenvironment{abstract}{\Collect@Body\@saveabstract}{}
\long\def\@saveabstract#1{\long\gdef\@abstract{#1}}
\@saveabstract{}
\long\def\@lempty{}
\define@boolkey+{@ACM@topmatter@}[@ACM@]{printccs}[true]{%\if@ACM@printccs
\ClassInfo{\@classname}{Printing CCS}%\else\ClassInfo{\@classname}{Suppressing CCS}%\fi}{\ClassError{\@classname}{The option printccs can be either true or false}}
\define@boolkey+{@ACM@topmatter@}[@ACM@]{printacmref}[true]{%\if@ACM@printacmref
\ClassInfo{\@classname}{Printing bibformat}%\else\ClassInfo{\@classname}{Suppressing bibformat}%\fi}{\ClassError{\@classname}{The option printacmref can be either true or false}}
\define@boolkey+{@ACM@topmatter@}[@ACM@]{printfolios}[true]{%\if@ACM@printfolios
\ClassInfo{\@classname}{Printing folios}%\else\ClassInfo{\@classname}{Suppressing folios}%\fi}{\ClassError{\@classname}{The option printfolios can be either true or false}}
\define@cmdkey{@ACM@topmatter@}[@ACM@]{authorsperrow}[0]{%\IfInteger{#1}{\ClassInfo{\@classname}{Setting authorsperrow to
#1}}{\ClassWarning{\@classname}{The parameter authorsperrow must be
numerical. Ignoring the input #1}\gdef\@ACM@authorsperrow{0}}}
\def\settopmatter#1{\setkeys{@ACM@topmatter@}{#1}}
\settopmatter{printccs=true, printacmref=true}
\if@ACM@manuscript
\settopmatter{printfolios=true}
\else\if@ACM@journal
\settopmatter{printfolios=true}
\else\settopmatter{printfolios=false}
\fi\fi\settopmatter{authorsperrow=0}
\def\@received{}
\newcommand\received[2][]{\def\@tempa{#1}%\ifx\@tempa\@empty\ifx\@received\@empty\gdef\@received{Received #2}%\else\g@addto@macro{\@received}{; revised #2}%\fi\else\ifx\@received\@empty\gdef\@received{#1 #2}%\else\g@addto@macro{\@received}{; #1 #2}%\fi\fi}
\AtEndDocument{%\ifx\@received\@empty\else\par\bigskip\noindent\small\normalfont\@received\par\fi}
\RequirePackage{comment}
\excludecomment{CCSXML}
\let\@concepts\@empty\newcommand\ccsdesc[2][100]{%\ccsdesc@parse#1~#2~~\ccsdesc@parse@end}
\RequirePackage{textcomp}
\def\ccsdesc@parse#1~#2~#3~{%\expandafter\ifx\csname CCS@General@#2\endcsname\relax\expandafter\gdef\csname CCS@General@#2\endcsname{\textbullet\\textbf{#2}}%\expandafter\gdef\csname CCS@Punctuation@#2\endcsname{; }%\expandafter\gdef\csname CCS@Specific@#2\endcsname{}%\g@addto@macro{\@concepts}{\csname CCS@General@#2\endcsname\csname CCS@Punctuation@#2\endcsname\csname CCS@Specific@#2\endcsname}%\fi\ifx#3\relax\relax\else\expandafter\gdef\csname CCS@Punctuation@#2\endcsname{
\textrightarrow\ }%\expandafter\g@addto@macro\expandafter{\csname CCS@Specific@#2\endcsname}{%\ifnum#1>499\textbf{#3}; \else\ifnum#1>299\textit{#3}; \else
#3; \fi\fi}%\fi\ccsdesc@parse@finish}
\def\ccsdesc@parse@finish#1\ccsdesc@parse@end{}
\newif\if@printcopyright
\@printcopyrighttrue\newif\if@printpermission
\@printpermissiontrue\newif\if@acmowned
\@acmownedtrue\define@choicekey*{ACM@}{acmcopyrightmode}[%\acm@copyrightinput\acm@copyrightmode]{none,%
acmcopyright,acmlicensed,rightsretained,%
usgov,usgovmixed,cagov,cagovmixed,licensedusgovmixed,%
licensedcagov,licensedcagovmixed,othergov,licensedothergov,%
iw3c2w3,iw3c2w3g}{%\@printpermissiontrue\@printcopyrighttrue\@acmownedtrue\ifnum\acm@copyrightmode=0\relax% none\@printpermissionfalse\@printcopyrightfalse\@acmownedfalse\fi\ifnum\acm@copyrightmode=2\relax% acmlicensed\@acmownedfalse\fi\ifnum\acm@copyrightmode=3\relax% rightsretained\@acmownedfalse\AtBeginDocument{\acmPrice{}}%\fi\ifnum\acm@copyrightmode=4\relax% usgov\@printpermissiontrue\@printcopyrightfalse\@acmownedfalse\AtBeginDocument{\acmPrice{}}%\fi\ifnum\acm@copyrightmode=6\relax% cagov\@acmownedfalse\fi\ifnum\acm@copyrightmode=8\relax% licensedusgovmixed\@acmownedfalse\fi\ifnum\acm@copyrightmode=9\relax% licensedcagov\@acmownedfalse\fi\ifnum\acm@copyrightmode=10\relax% licensedcagovmixed\@acmownedfalse\fi\ifnum\acm@copyrightmode=11\relax% othergov\@acmownedtrue\fi\ifnum\acm@copyrightmode=12\relax% licensedothergov\@acmownedfalse\fi\ifnum\acm@copyrightmode=13\relax% iw3c2w3\@acmownedfalse\AtBeginDocument{\acmPrice{}}%\fi\ifnum\acm@copyrightmode=14\relax% iw3c2w3g\@acmownedfalse\AtBeginDocument{\acmPrice{}}%\fi}
\def\setcopyright#1{\setkeys{ACM@}{acmcopyrightmode=#1}}
\setcopyright{acmcopyright}
\def\@copyrightowner{%\ifcase\acm@copyrightmode\relax% none\or% acmcopyright
Association for Computing Machinery.
\or% acmlicensed
Copyright held by the owner/author(s). Publication rights licensed to
ACM\@.
\or% rightsretained
Copyright held by the owner/author(s).
\or% usgov\or% usgovmixed
Association for Computing Machinery.
\or% cagov
Crown in Right of Canada.
\or%cagovmixed
Association for Computing Machinery.
\or%licensedusgovmixed
Copyright held by the owner/author(s). Publication rights licensed to
ACM\@.
\or% licensedcagov
Crown in Right of Canada. Publication rights licensed to
ACM\@.
\or%licensedcagovmixed
Copyright held by the owner/author(s). Publication rights licensed to
ACM\@.
\or% othergov
Association for Computing Machinery.
\or% licensedothergov
Copyright held by the owner/author(s). Publication rights licensed to
ACM\@.
\or% ic2w3www
IW3C2 (International World Wide Web Conference Committee), published
under Creative Commons CC-BY~4.0 License.
\or% ic2w3wwwgoogle
IW3C2 (International World Wide Web Conference Committee), published
under Creative Commons CC-BY-NC-ND~4.0 License.
\fi}
\def\@formatdoi#1{\url{https://doi.org/#1}}
\def\@copyrightpermission{%\ifcase\acm@copyrightmode\relax% none\or% acmcopyright
Permission to make digital or hard copies of all or part of this
work for personal or classroom use is granted without fee provided
that copies are not made or distributed for profit or commercial
advantage and that copies bear this notice and the full citation on
the first page. Copyrights for components of this work owned by
others than ACM must be honored. Abstracting with credit is
permitted. To copy otherwise, or republish, to post on servers or to
redistribute to lists, requires prior specific permission
and\hspace*{.5pt}/or a fee. Request permissions from
permissions@acm.org.
\or% acmlicensed
Permission to make digital or hard copies of all or part of this
work for personal or classroom use is granted without fee provided
that copies are not made or distributed for profit or commercial
advantage and that copies bear this notice and the full citation on
the first page. Copyrights for components of this work owned by
others than the author(s) must be honored. Abstracting with credit
is permitted. To copy otherwise, or republish, to post on servers
or to redistribute to lists, requires prior specific permission
and\hspace*{.5pt}/or a fee. Request permissions from
permissions@acm.org.
\or% rightsretained
Permission to make digital or hard copies of part or all of this work
for personal or classroom use is granted without fee provided that
copies are not made or distributed for profit or commercial advantage
and that copies bear this notice and the full citation on the first
page. Copyrights for third-party components of this work must be
honored. For all other uses, contact the
owner\hspace*{.5pt}/author(s).
\or% usgov
This paper is authored by an employee(s) of the United States
Government and is in the public domain. Non-exclusive copying or
redistribution is allowed, provided that the article citation is
given and the authors and agency are clearly identified as its
source.
\or% usgovmixed
ACM acknowledges that this contribution was authored or co-authored
by an employee, contractor, or affiliate of the United States government. As such,
the United States government retains a nonexclusive, royalty-free right to
publish or reproduce this article, or to allow others to do so, for
government purposes only.
\or% cagov
This article was authored by employees of the Government of Canada.
As such, the Canadian government retains all interest in the
copyright to this work and grants to ACM a nonexclusive,
royalty-free right to publish or reproduce this article, or to allow
others to do so, provided that clear attribution is given both to
the authors and the Canadian government agency employing them.
Permission to make digital or hard copies for personal or classroom
use is granted. Copies must bear this notice and the full citation
on the first page. Copyrights for components of this work owned by
others than the Canadian Government must be honored. To copy
otherwise, distribute, republish, or post, requires prior specific
permission and\hspace*{.5pt}/or a fee. Request permissions from
permissions@acm.org.
\or% cagovmixed
ACM acknowledges that this contribution was co-authored by an
affiliate of the national government of Canada. As such, the Crown
in Right of Canada retains an equal interest in the copyright.
Reprints must include clear attribution to ACM and the author's
government agency affiliation. Permission to make digital or hard
copies for personal or classroom use is granted. Copies must bear
this notice and the full citation on the first page. Copyrights for
components of this work owned by others than ACM must be honored.
To copy otherwise, distribute, republish, or post, requires prior
specific permission and\hspace*{.5pt}/or a fee. Request permissions
from permissions@acm.org.
\or% licensedusgovmixed
Publication rights licensed to ACM\@. ACM acknowledges that this
contribution was authored or co-authored by an employee, contractor
or affiliate of the United States government. As such, the
Government retains a nonexclusive, royalty-free right to publish or
reproduce this article, or to allow others to do so, for Government
purposes only.
\or% licensedcagov
This article was authored by employees of the Government of Canada.
As such, the Canadian government retains all interest in the
copyright to this work and grants to ACM a nonexclusive,
royalty-free right to publish or reproduce this article, or to allow
others to do so, provided that clear attribution is given both to
the authors and the Canadian government agency employing them.
Permission to make digital or hard copies for personal or classroom
use is granted. Copies must bear this notice and the full citation
on the first page. Copyrights for components of this work owned by
others than the Canadian Government must be honored. To copy
otherwise, distribute, republish, or post, requires prior specific
permission and\hspace*{.5pt}/or a fee. Request permissions from
permissions@acm.org.
\or% licensedcagovmixed
Publication rights licensed to ACM\@. ACM acknowledges that this
contribution was authored or co-authored by an employee, contractor
or affiliate of the national government of Canada. As such, the
Government retains a nonexclusive, royalty-free right to publish or
reproduce this article, or to allow others to do so, for Government
purposes only.
\or% othergov
ACM acknowledges that this contribution was authored or co-authored
by an employee, contractor or affiliate of a national government. As
such, the Government retains a nonexclusive, royalty-free right to
publish or reproduce this article, or to allow others to do so, for
Government purposes only.
\or% licensedothergov
Publication rights licensed to ACM\@. ACM acknowledges that this
contribution was authored or co-authored by an employee, contractor
or affiliate of a national government. As such, the Government
retains a nonexclusive, royalty-free right to publish or reproduce
this article, or to allow others to do so, for Government purposes
only.
\or% iw3c2w3
This paper is published under the Creative Commons Attribution~4.0
International (CC-BY~4.0) license. Authors reserve their rights to
disseminate the work on their personal and corporate Web sites with
the appropriate attribution.
\or% iw3c2w3g
This paper is published under the Creative Commons
Attribution-NonCommercial-NoDerivs~4.0 International
(CC-BY-NC-ND~4.0) license. Authors reserve their rights to
disseminate the work on their personal and corporate Web sites with
the appropriate attribution.
\fi}
\def\copyrightyear#1{\def\@copyrightyear{#1}}
\copyrightyear{\@acmYear}
\def\@teaserfigures{}
\newenvironment{teaserfigure}{\Collect@Body\@saveteaser}{}
\long\def\@saveteaser#1{\g@addto@macro\@teaserfigures{\@teaser{#1}}}
\renewcommand{\thanks}[1]{%\@ifnotempty{#1}{%\if@ACM@anonymous
\g@addto@macro\thankses{\thanks{A note}}%\else\g@addto@macro\thankses{\thanks{#1}}%\fi}}
\newbox\mktitle@bx\def\maketitle{%\if@ACM@anonymous
% Anonymize omission of \author-s\ifnum\num@authorgroups=0\author{}\fi\fi\begingroup\let\@footnotemark\@footnotemark@nolink\let\@footnotetext\@footnotetext@nolink\renewcommand\thefootnote{\@fnsymbol\c@footnote}%\global\@topnum\z@% this prevents floats from falling% at the top of page 1\global\@botnum\z@% we do not want them to be on the bottom either\hsize=\textwidth\def\@makefnmark{\hbox{\@textsuperscript{\@thefnmark}}}%\@mktitle\if@ACM@sigchiamode\else\@mkauthors\fi\@mkteasers\@printtopmatter\if@ACM@sigchiamode\@mkauthors\fi\setcounter{footnote}{0}%\def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}}%\@titlenotes\@subtitlenotes\@authornotes\let\@makefnmark\relax\let\@thefnmark\relax\let\@makefntext\noindent\ifx\@empty\thankses\else\footnotetextauthorsaddresses{%\def\par{\let\par\@par}\parindent\z@\@setthanks}%\fi\ifx\@empty\@authorsaddresses\else\if@ACM@anonymous\else\if@ACM@journal
\footnotetextauthorsaddresses{%\def\par{\let\par\@par}\parindent\z@\@setauthorsaddresses}%\fi\fi\fi\if@ACM@nonacm\else\footnotetextcopyrightpermission{%\if@ACM@authordraft
\raisebox{-2ex}[\z@][\z@]{\makebox[0pt][l]{\large\bfseries
Unpublished working draft. Not for distribution.}}%\color[gray]{0.9}%\fi\parindent\z@\parskip0.1\baselineskip\if@ACM@authorversion\else\if@printpermission\@copyrightpermission\par\fi\fi\if@ACM@manuscript\else\if@ACM@journal\else% Print the conference information
{\itshape\acmConference@shortname, \acmConference@date, \acmConference@venue}\par\fi\fi\if@printcopyright
\copyright\ \@copyrightyear\ \@copyrightowner\\\else\@copyrightyear.\\fi\if@ACM@manuscript
Manuscript submitted to ACM\\\else\if@ACM@authorversion
This is the author's version of the work. It is posted here for
your personal use. Not for redistribution. The definitive Version
of Record was published in
\if@ACM@journal
\emph{\@journalName}%\else\emph{\@acmBooktitle}%\fi\ifx\@acmDOI\@empty
.
\else
, \@formatdoi{\@acmDOI}.
\fi\\\else\if@ACM@nonacm\else\if@ACM@journal
\@permissionCodeOne/\@acmYear/\@acmMonth-ART\@acmArticle\ifx\@acmPrice\@empty\else\ \$\@acmPrice\fi\\\@formatdoi{\@acmDOI}%\else% Conference\ifx\@acmISBN\@empty\else ACM~ISBN~\@acmISBN\ifx\@acmPrice\@empty.\else\dots\$\@acmPrice\fi\\\fi\ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi%\fi\fi\fi\fi}
\fi\endgroup\setcounter{footnote}{0}%\@mkabstract\if@ACM@printccs
\ifx\@concepts\@empty\else\bgroup
{\@specialsection{CCS Concepts}%\@concepts\par}\egroup\fi\fi\ifx\@keywords\@empty\else\bgroup
{\if@ACM@journal
\@specialsection{Additional Key Words and Phrases}%\else\@specialsection{Keywords}%\fi\@keywords}\par\egroup\fi\andify\authors\andify\shortauthors\global\let\authors=\authors\global\let\shortauthors=\shortauthors\if@ACM@printacmref
\@mkbibcitation\fi\hypersetup{%
pdfauthor={\authors},
pdftitle={\@title},
pdfsubject={\@concepts},
pdfkeywords={\@keywords},
pdfcreator={LaTeX with acmart
\csname ver@acmart.cls\endcsname\space
and hyperref
\csname ver@hyperref.sty\endcsname}}%\@printendtopmatter\@afterindentfalse\@afterheading
}
\def\@specialsection#1{%\ifcase\ACM@format@nr\relax% manuscript\par\medskip\small\noindent#1: %\or% acmsmall\par\medskip\small\noindent#1: %\or% acmlarge\par\medskip\small\noindent#1: %\or% acmtog\par\medskip\small\noindent#1: %\or% sigconf\section*{#1}%\or% siggraph\section*{#1}%\or% sigplan\paragraph*{#1}%\or% sigchi\section*{#1}%\or% sigchi-a\section*{#1}%\fi}
\def\@printtopmatter{%\ifx\@startPage\@empty\gdef\@startPage{1}%\else\setcounter{page}{\@startPage}%\fi\thispagestyle{firstpagestyle}%\noindent\ifcase\ACM@format@nr\relax% manuscript\box\mktitle@bx\par\or% acmsmall\box\mktitle@bx\par\or% acmlarge\box\mktitle@bx\par\or% acmtog\twocolumn[\box\mktitle@bx]%\or% sigconf\twocolumn[\box\mktitle@bx]%\or% siggraph\twocolumn[\box\mktitle@bx]%\or% sigplan\twocolumn[\box\mktitle@bx]%\or% sigchi\twocolumn[\box\mktitle@bx]%\or% sigchi-a\par\box\mktitle@bx\par\bigskip\if@ACM@badge
\marginpar{\noindent\ifx\@acmBadgeL@image\@empty\else\href{\@acmBadgeL@url}{%\includegraphics[width=\@ACM@badge@width]{\@acmBadgeL@image}}%\hskip\@ACM@badge@skip\fi\ifx\@acmBadgeR@image\@empty\else\href{\@acmBadgeR@url}{%\includegraphics[width=\@ACM@badge@width]{\@acmBadgeR@image}}%\fi}%\fi\fi
}
\def\@mktitle{%\ifcase\ACM@format@nr\relax% manuscript\@mktitle@i\or% acmsmall\@mktitle@i\or% acmlarge\@mktitle@i\or% acmtog\@mktitle@i\or% sigconf\@mktitle@iii\or% siggraph\@mktitle@iii\or% sigplan\@mktitle@iii\or% sigchi\@mktitle@iii\or% sigchi-a\@mktitle@iv\fi
}
\def\@titlefont{%\ifcase\ACM@format@nr\relax% manuscript\LARGE\sffamily\bfseries\or% acmsmall\LARGE\sffamily\bfseries\or% acmlarge\LARGE\sffamily\bfseries\or% acmtog\Huge\sffamily\or% sigconf\Huge\sffamily\bfseries\or% siggraph\Huge\sffamily\bfseries\or% sigplan\Huge\bfseries\or% sigchi\Huge\sffamily\bfseries\or% sigchi-a\Huge\bfseries\fi}
\def\@subtitlefont{\normalsize\ifcase\ACM@format@nr\relax% manuscript\mdseries\or% acmsmall\mdseries\or% acmlarge\mdseries\or% acmtog\LARGE\or% sigconf\LARGE\mdseries\or% siggraph\LARGE\mdseries\or% sigplan\LARGE\mdseries\or% sigchi\LARGE\mdseries\or% sigchi-a\mdseries\fi}
\def\@mktitle@i{\hsize=\textwidth\@ACM@title@width=\hsize\ifx\@acmBadgeL@image\@empty\else\advance\@ACM@title@width by -\@ACM@badge@width\advance\@ACM@title@width by -\@ACM@badge@skip\fi\ifx\@acmBadgeR@image\@empty\else\advance\@ACM@title@width by -\@ACM@badge@width\advance\@ACM@title@width by -\@ACM@badge@skip\fi\setbox\mktitle@bx=\vbox{\noindent\@titlefont\ifx\@acmBadgeL@image\@empty\else\raisebox{-.5\baselineskip}[\z@][\z@]{\href{\@acmBadgeL@url}{%\includegraphics[width=\@ACM@badge@width]{\@acmBadgeL@image}}}%\hskip\@ACM@badge@skip\fi\parbox[t]{\@ACM@title@width}{\raggedright\@titlefont\noindent\@title\ifx\@subtitle\@empty\else\par\noindent{\@subtitlefont\@subtitle}
\fi}%\ifx\@acmBadgeR@image\@empty\else\hskip\@ACM@badge@skip\raisebox{-.5\baselineskip}[\z@][\z@]{\href{\@acmBadgeR@url}{%\includegraphics[width=\@ACM@badge@width]{\@acmBadgeR@image}}}%\fi\par\bigskip}}%\def\@mktitle@iii{\hsize=\textwidth\setbox\mktitle@bx=\vbox{\@titlefont\centering\@ACM@title@width=\hsize\if@ACM@badge
\advance\@ACM@title@width by -2\@ACM@badge@width\advance\@ACM@title@width by -2\@ACM@badge@skip\parbox[b]{\@ACM@badge@width}{\strut\ifx\@acmBadgeL@image\@empty\else\raisebox{-.5\baselineskip}[\z@][\z@]{\href{\@acmBadgeL@url}{%\includegraphics[width=\@ACM@badge@width]{\@acmBadgeL@image}}}%\fi}%\hskip\@ACM@badge@skip\fi\parbox[t]{\@ACM@title@width}{\centering\@titlefont\@title\ifx\@subtitle\@empty\else\par\noindent{\@subtitlefont\@subtitle}
\fi
}%\if@ACM@badge
\hskip\@ACM@badge@skip\parbox[b]{\@ACM@badge@width}{\strut\ifx\@acmBadgeR@image\@empty\else\raisebox{-.5\baselineskip}[\z@][\z@]{\href{\@acmBadgeR@url}{%\includegraphics[width=\@ACM@badge@width]{\@acmBadgeR@image}}}%\fi}%\fi\par\bigskip}}%\def\@mktitle@iv{\hsize=\textwidth\setbox\mktitle@bx=\vbox{\raggedright\leftskip5pc\@titlefont\noindent\leavevmode\leaders\hrule height 2pt\hfill\kern0pt\par\noindent\@title\ifx\@subtitle\@empty\else\par\noindent\@subtitlefont\@subtitle\fi\par\bigskip}}%\newbox\@ACM@commabox\def\@ACM@addtoaddress#1{%\ifvmode\else\if@ACM@affiliation@obeypunctuation\else\setbox\@ACM@commabox=\hbox{, }%\unskip\cleaders\copy\@ACM@commabox\hskip\wd\@ACM@commabox\fi\fi
#1}
\def\streetaddress#1{\unskip\ignorespaces}
\def\postcode#1{\unskip\ignorespaces}
\if@ACM@journal
\def\position#1{\unskip\ignorespaces}
\def\institution#1{\unskip~#1\ignorespaces}
\def\city#1{\unskip\ignorespaces}
\def\state#1{\unskip\ignorespaces}
\newcommand\department[2][0]{\unskip\ignorespaces}
\def\country#1{\if@ACM@affiliation@obeypunctuation\else, \fi#1\ignorespaces}
\else\def\position#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}%\def\institution#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}%\newcommand\department[2][0]{\if@ACM@affiliation@obeypunctuation
#2\else#2\par\fi}%\let\city\@ACM@addtoaddress\let\state\@ACM@addtoaddress\let\country\@ACM@addtoaddress\fi\def\@mkauthors{\begingroup\hsize=\textwidth\ifcase\ACM@format@nr\relax% manuscript\@mkauthors@i\or% acmsmall\@mkauthors@i\or% acmlarge\@mkauthors@i\or% acmtog\@mkauthors@i\or% sigconf\@mkauthors@iii\or% siggraph\@mkauthors@iii\or% sigplan\@mkauthors@iii\or% sigchi\@mkauthors@iii\or% sigchi-a\@mkauthors@iv\fi\endgroup
}
\def\@authorfont{\Large\sffamily}
\def\@affiliationfont{\normalsize\normalfont}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\def\@authorfont{\large\sffamily}
\def\@affiliationfont{\small\normalfont}
\or% acmlarge\or% acmtog\def\@authorfont{\LARGE\sffamily}
\def\@affiliationfont{\large}
\or% sigconf\def\@authorfont{\LARGE}
\def\@affiliationfont{\large}
\or% siggraph\def\@authorfont{\normalsize\normalfont}
\def\@affiliationfont{\normalsize\normalfont}
\or% sigplan\def\@authorfont{\Large\normalfont}
\def\@affiliationfont{\normalsize\normalfont}
\or% sigchi\def\@authorfont{\bfseries}
\def\@affiliationfont{\mdseries}
\or% sigchi-a\def\@authorfont{\bfseries}
\def\@affiliationfont{\mdseries}
\fi\def\@typeset@author@line{%\andify\@currentauthors\par\noindent\@currentauthors\def\@currentauthors{}%\ifx\@currentaffiliations\@empty\else\andify\@currentaffiliations\unskip, {\@currentaffiliations}\par\fi\def\@currentaffiliations{}}
\def\@mkauthors@i{%\def\@currentauthors{}%\def\@currentaffiliations{}%\global\let\and\@typeset@author@line\def\@author##1{%\ifx\@currentauthors\@empty\gdef\@currentauthors{\@authorfont\MakeTextUppercase{##1}}%\else\g@addto@macro{\@currentauthors}{\and\MakeTextUppercase{##1}}%\fi\gdef\and{}}%\def\email##1##2{}%\def\affiliation##1##2{%\def\@tempa{##2}\ifx\@tempa\@empty\else\ifx\@currentaffiliations\@empty\gdef\@currentaffiliations{%\setkeys{@ACM@affiliation@}{obeypunctuation=false}%\setkeys{@ACM@affiliation@}{##1}%\@affiliationfont##2}%\else\g@addto@macro{\@currentaffiliations}{\and\setkeys{@ACM@affiliation@}{obeypunctuation=false}%\setkeys{@ACM@affiliation@}{##1}##2}%\fi\fi\global\let\and\@typeset@author@line}%\global\setbox\mktitle@bx=\vbox{\noindent\box\mktitle@bx\par\medskip\noindent\addresses\@typeset@author@line\par\medskip}%
}
\newbox\author@bx\newdimen\author@bx@wd\newskip\author@bx@sep\author@bx@sep=1pc\relax\def\@typeset@author@bx{\bgroup\hsize=\author@bx@wd\def\and{\par}%\global\setbox\author@bx=\vtop{\if@ACM@sigchiamode\else\centering\fi\@authorfont\@currentauthors\par\@affiliationfont\@currentaffiliation}\egroup\box\author@bx\hspace{\author@bx@sep}%\gdef\@currentauthors{}%\gdef\@currentaffiliation{}}
\def\@mkauthors@iii{%\author@bx@wd=\textwidth\relax\advance\author@bx@wd by -\author@bx@sep\relax\ifnum\@ACM@authorsperrow>0\relax\divide\author@bx@wd by \@ACM@authorsperrow\relax\else\ifcase\num@authorgroups\relax% 0?\or% 1=one author per row\or% 2=two authors per row\divide\author@bx@wd by \num@authorgroups\relax\or% 3=three authors per row\divide\author@bx@wd by \num@authorgroups\relax\or% 4=two authors per row (!)\divide\author@bx@wd by 2\relax\else% three authors per row\divide\author@bx@wd by 3\relax\fi\fi\advance\author@bx@wd by -\author@bx@sep\relax\gdef\@currentauthors{}%\gdef\@currentaffiliation{}%\def\@author##1{\ifx\@currentauthors\@empty\gdef\@currentauthors{\par##1}%\else\g@addto@macro\@currentauthors{\par##1}%\fi\gdef\and{}}%\def\email##1##2{\ifx\@currentaffiliation\@empty\gdef\@currentaffiliation{\nolinkurl{##2}}%\else\g@addto@macro\@currentaffiliation{\par\nolinkurl{##2}}%\fi}%\def\affiliation##1##2{\ifx\@currentaffiliation\@empty\gdef\@currentaffiliation{%\setkeys{@ACM@affiliation@}{obeypunctuation=false}%\setkeys{@ACM@affiliation@}{##1}##2}%\else\g@addto@macro\@currentaffiliation{\par\setkeys{@ACM@affiliation@}{obeypunctuation=false}%\setkeys{@ACM@affiliation@}{##1}##2}%\fi\global\let\and\@typeset@author@bx
}%\hsize=\textwidth\global\setbox\mktitle@bx=\vbox{\noindent\box\mktitle@bx\par\medskip\leavevmode\lineskip=1pc\relax\centering\hspace*{-1em}%\addresses\let\and\@typeset@author@bx\and\par\bigskip}}
\def\@mkauthors@iv{%\author@bx@wd=\columnwidth\relax\advance\author@bx@wd by -\author@bx@sep\relax\ifnum\@ACM@authorsperrow>0\relax\divide\author@bx@wd by \@ACM@authorsperrow\relax\else\ifcase\num@authorgroups\relax% 0?\or% 1=one author per row\else% 2=two authors per row\divide\author@bx@wd by 2\relax\fi\fi\advance\author@bx@wd by -\author@bx@sep\relax\gdef\@currentauthors{}%\gdef\@currentaffiliation{}%\def\@author##1{\ifx\@currentauthors\@empty\gdef\@currentauthors{\par##1}%\else\g@addto@macro\@currentauthors{\par##1}%\fi\gdef\and{}}%\def\email##1##2{\ifx\@currentaffiliation\@empty\gdef\@currentaffiliation{\nolinkurl{##2}}%\else\g@addto@macro\@currentaffiliation{\par\nolinkurl{##2}}%\fi}%\def\affiliation##1##2{\ifx\@currentaffiliation\@empty\gdef\@currentaffiliation{%\setkeys{@ACM@affiliation@}{obeypunctuation=false}%\setkeys{@ACM@affiliation@}{##1}##2}%\else\g@addto@macro\@currentaffiliation{\par\setkeys{@ACM@affiliation@}{obeypunctuation=false}%\setkeys{@ACM@affiliation@}{##1}##2}%\fi\global\let\and\@typeset@author@bx}%\bgroup\hsize=\columnwidth\par\raggedright\leftskip=\z@\lineskip=1pc\noindent\addresses\let\and\@typeset@author@bx\and\par\bigskip\egroup}
\def\@mkauthorsaddresses{%\ifnum\num@authors>1\relax
Authors' \else Author's \fi\ifnum\num@authorgroups>1\relax
addresses: \else address: \fi\bgroup\def\streetaddress##1{\unskip\@addpunct, ##1}%\def\postcode##1{\unskip\@addpunct, ##1}%\def\position##1{\unskip\ignorespaces}%\def\institution##1{\unskip\@addpunct, ##1}%\def\city##1{\unskip\@addpunct, ##1}%\def\state##1{\unskip\@addpunct, ##1}%\renewcommand\department[2][0]{\unskip\@addpunct, ##2}%\def\country##1{\unskip\@addpunct, ##1}%\def\and{\unskip\@addpunct; }%\def\@author##1{##1}%\def\email##1##2{\unskip\@addpunct, \nolinkurl{##2}}%\addresses\egroup}
\def\@setaddresses{}
\def\@authornotemark{\g@addto@macro\@currentauthors{\footnotemark\relax}}
\def\@@authornotemark#1{\g@addto@macro\@currentauthors{\footnotemark[#1]}}
\def\@mkteasers{%\ifx\@teaserfigures\@empty\else\def\@teaser##1{\par\bigskip\bgroup\captionsetup{type=figure}##1\egroup\par}
\global\setbox\mktitle@bx=\vbox{\noindent\box\mktitle@bx\par\noindent\@teaserfigures\par\medskip}%\fi}
\def\@mkabstract{\bgroup\ifx\@abstract\@lempty\else
{\phantomsection\addcontentsline{toc}{section}{Abstract}%\if@ACM@journal
\everypar{\setbox\z@\lastbox\everypar{}}\small\else\section*{Abstract}%\fi\ignorespaces\@abstract\par}%\fi\egroup}
\def\@mkbibcitation{\bgroup\def\@pages@word{\ifnum\getrefnumber{TotPages}=1\relax page\else pages\fi}%\def\footnotemark{}%\def\\{\unskip{} \ignorespaces}%\def\footnote{\ClassError{\@classname}{Please do not use footnotes
inside a \string\title{} or \string\author{} command! Use
\string\titlenote{} or \string\authornote{} instead!}}%\def\@article@string{\ifx\@acmArticle\@empty{\ }\else,
Article~\@acmArticle\ \fi}%\par\medskip\small\noindent{\bfseries ACM Reference Format:}\par\nobreak\noindent\bgroup\def\\{\unskip{}, \ignorespaces}\authors\egroup. \@acmYear. \@title\ifx\@subtitle\@empty. \else: \@subtitle. \fi\if@ACM@nonacm\else% The 'nonacm' option disables 'printacmref' by default,% and the present \@mkbibcitation definition is never used% in this case. The conditional remains useful if the user% explicitly sets \settopmatter{printacmref=true}.\if@ACM@journal
\textit{\@journalNameShort}
\@acmVolume, \@acmNumber\@article@string (\@acmPubDate),
\ref{TotPages}~\@pages@word.
\else
In \textit{\@acmBooktitle}%\ifx\@acmEditors\@empty\textit{.}\else\andify\@acmEditors\textit{, }\@acmEditors~\@editorsAbbrev.%\fi\
ACM, New York, NY, USA%\@article@string\unskip, \ref{TotPages}~\@pages@word.
\fi\fi\ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi\par\egroup}
\def\@printendtopmatter{\par\bigskip}
\def\@setthanks{\long\def\thanks##1{\par##1\@addpunct.}\thankses}
\def\@setauthorsaddresses{\@authorsaddresses\unskip\@addpunct.}
\RequirePackage{fancyhdr}
\if@ACM@review
\newsavebox{\ACM@linecount@bx}
\newlength\ACM@linecount@bxht\newcount\ACM@linecount\ACM@linecount\@ne\relax\def\ACM@mk@linecount{%\savebox{\ACM@linecount@bx}[4em][t]{\parbox[t]{4em}{%\setlength{\ACM@linecount@bxht}{0pt}%\loop{\color{red}\scriptsize\the\ACM@linecount}\\\global\advance\ACM@linecount by \@ne\addtolength{\ACM@linecount@bxht}{\baselineskip}%\ifdim\ACM@linecount@bxht<\textheight\repeat
{\color{red}\scriptsize\the\ACM@linecount}\hfill\global\advance\ACM@linecount by \@ne}}}
\fi\def\ACM@linecountL{%\if@ACM@review
\ACM@mk@linecount\begin{picture}(0,0)%\put(-26,-22){\usebox{\ACM@linecount@bx}}%\end{picture}%\fi}
\def\ACM@linecountR{%\if@ACM@review
\ACM@mk@linecount\begin{picture}(0,0)%\put(20,-22){\usebox{\ACM@linecount@bx}}%\end{picture}%\fi}
\if@ACM@timestamp
% Subtracting 30 from \time gives us the effect of rounding down despite% \numexpr rounding to nearest\newcounter{ACM@time@hours}
\setcounter{ACM@time@hours}{\numexpr (\time - 30) / 60 \relax}
\newcounter{ACM@time@minutes}
\setcounter{ACM@time@minutes}{\numexpr\time - \theACM@time@hours * 60 \relax}
\newcommand\ACM@timestamp{%\footnotesize%\ifx\@acmSubmissionID\@empty\relax\else
Submission ID: \@acmSubmissionID.{ }%\fi\the\year-\two@digits{\the\month}-\two@digits{\the\day}{ }%\two@digits{\theACM@time@hours}:\two@digits{\theACM@time@minutes}{. }%
Page \thepage\ of \@startPage--\pageref*{TotPages}.%
}
\fi\def\@shortauthors{%\if@ACM@anonymous
Anon.
\ifx\@acmSubmissionID\@empty\else Submission Id: \@acmSubmissionID\fi\else\shortauthors\fi}
\def\@headfootfont{\sffamily}
\fancypagestyle{standardpagestyle}{%\fancyhf{}%\renewcommand{\headrulewidth}{\z@}%\renewcommand{\footrulewidth}{\z@}%\def\@acmArticlePage{%\ifx\@acmArticle\empty%\if@ACM@printfolios\thepage\fi%\else%\@acmArticle\if@ACM@printfolios:\thepage\fi%\fi%
}
\ifcase\ACM@format@nr\relax% manuscript\fancyhead[LE]{\ACM@linecountL\if@ACM@printfolios\thepage\fi}%\fancyhead[RO]{\if@ACM@printfolios\thepage\fi}%\fancyhead[RE]{\@shortauthors}%\fancyhead[LO]{\ACM@linecountL\shorttitle}%\if@ACM@nonacm\else%\fancyfoot[RO,LE]{\footnotesize Manuscript submitted to ACM}
\fi%\or% acmsmall\fancyhead[LE]{\ACM@linecountL\@headfootfont\@acmArticlePage}%\fancyhead[RO]{\@headfootfont\@acmArticlePage}%\fancyhead[RE]{\@headfootfont\@shortauthors}%\fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}%\if@ACM@nonacm\else%\fancyfoot[RO,LE]{\footnotesize\@journalNameShort, Vol. \@acmVolume, No.
\@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}%\fi%\or% acmlarge\fancyhead[LE]{\ACM@linecountL\@headfootfont\@acmArticlePage\quad\textbullet\quad\@shortauthors}%\fancyhead[LO]{\ACM@linecountL}%\fancyhead[RO]{\@headfootfont\shorttitle\quad\textbullet\quad\@acmArticlePage}%\if@ACM@nonacm\else%\fancyfoot[RO,LE]{\footnotesize\@journalNameShort, Vol. \@acmVolume, No.
\@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}%\fi%\or% acmtog\fancyhead[LE]{\ACM@linecountL\@headfootfont\@acmArticlePage\quad\textbullet\quad\@shortauthors}%\fancyhead[LO]{\ACM@linecountL}%\fancyhead[RE]{\ACM@linecountR}%\fancyhead[RO]{\@headfootfont\shorttitle\quad\textbullet\quad\@acmArticlePage\ACM@linecountR}%\if@ACM@nonacm\else%\fancyfoot[RO,LE]{\footnotesize\@journalNameShort, Vol. \@acmVolume, No.
\@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}%\fi%\else% Proceedings\fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}%\fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}%\fancyhead[RE]{\@headfootfont\@shortauthors\ACM@linecountR}%\if@ACM@nonacm\else%\fancyhead[LE]{\ACM@linecountL\@headfootfont\acmConference@shortname,
\acmConference@date, \acmConference@venue}%\fancyhead[RO]{\@headfootfont\acmConference@shortname,
\acmConference@date, \acmConference@venue\ACM@linecountR}%\fi%\fi\if@ACM@sigchiamode
\fancyheadoffset[L]{\dimexpr(\marginparsep+\marginparwidth)}%\fi\if@ACM@timestamp
\fancyfoot[LO,RE]{\ACM@timestamp}
\fi
}
\pagestyle{standardpagestyle}
\newdimen\@folio@wd\@folio@wd=\z@\newdimen\@folio@ht\@folio@ht=\z@\newdimen\@folio@voffset\@folio@voffset=\z@\def\@folio@max{1}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\@folio@wd=45.75pt\relax\@folio@ht=1.25in\relax\@folio@voffset=.2in\relax\def\@folio@max{8}
\or% acmlarge\@folio@wd=43.25pt\relax\@folio@ht=79pt\relax\@folio@voffset=.55in\relax\def\@folio@max{10}
\fi\def\@folioblob{\@tempcnta=0\@acmArticleSeq\relax\ifnum\@tempcnta=0\relax\else\loop\ifnum\@tempcnta>\@folio@max\relax\advance\@tempcnta by - \@folio@max\repeat\advance\@tempcnta by -1\relax\@tempdima=\@folio@ht\relax\multiply\@tempdima by \the\@tempcnta\relax\advance\@tempdima by -\@folio@voffset\relax\begin{picture}(0,0)
\makebox[\z@]{\raisebox{-\@tempdima}{%\rlap{%\raisebox{-0.45\@folio@ht}[\z@][\z@]{%\rule{\@folio@wd}{\@folio@ht}}}%\parbox{\@folio@wd}{%\centering\textcolor{white}{\LARGE\sffamily\bfseries\@acmArticle}}}}
\end{picture}\fi}
\fancypagestyle{firstpagestyle}{%\fancyhf{}%\renewcommand{\headrulewidth}{\z@}%\renewcommand{\footrulewidth}{\z@}%\ifcase\ACM@format@nr\relax% manuscript\fancyhead[L]{\ACM@linecountL}%\fancyfoot[RO,LE]{\if@ACM@printfolios\small\thepage\fi}%\if@ACM@nonacm\else%\fancyfoot[RE,LO]{\footnotesize Manuscript submitted to ACM}%\fi%\or% acmsmall\if@ACM@nonacm\else%\fancyfoot[RO,LE]{\footnotesize\@journalNameShort, Vol. \@acmVolume, No.
\@acmNumber, Article \@acmArticle. Publication date:
\@acmPubDate.}%\fi%\fancyhead[LE]{\ACM@linecountL\@folioblob}%\fancyhead[LO]{\ACM@linecountL}%\fancyhead[RO]{\@folioblob}%\fancyheadoffset[RO,LE]{0.6\@folio@wd}%\or% acmlarge\if@ACM@nonacm\else%\fancyfoot[RO,LE]{\footnotesize\@journalNameShort, Vol. \@acmVolume, No.
\@acmNumber, Article \@acmArticle. Publication date:
\@acmPubDate.}%\fi%\fancyhead[RO]{\@folioblob}%\fancyhead[LE]{\ACM@linecountL\@folioblob}%\fancyhead[LO]{\ACM@linecountL}%\fancyheadoffset[RO,LE]{1.4\@folio@wd}%\or% acmtog\if@ACM@nonacm\else%\fancyfoot[RO,LE]{\footnotesize\@journalNameShort, Vol. \@acmVolume, No.
\@acmNumber, Article \@acmArticle. Publication date:
\@acmPubDate.}%\fi%\fancyhead[L]{\ACM@linecountL}%\fancyhead[R]{\ACM@linecountR}%\else% Conference proceedings\fancyhead[L]{\ACM@linecountL}%\fancyhead[R]{\ACM@linecountR}%\fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}%\fi\if@ACM@timestamp
\ifnum\ACM@format@nr=0\relax% Manuscript\fancyfoot[LO,RE]{\ACM@timestamp\quad\if@ACM@nonacm\else\footnotesize Manuscript submitted to ACM
\fi}
\else\fancyfoot[LO,RE]{\ACM@timestamp}
\fi\fi
}
\let\ACM@ps@plain\ps@plain\let\ACM@ps@myheadings\ps@myheadings\let\ACM@ps@headings\ps@headings\def\ACM@restore@pagestyle{%\let\ps@plain\ACM@ps@plain\let\ps@myheadings\ACM@ps@myheadings\let\ps@headings\ACM@ps@headings}
\AtBeginDocument{\ACM@restore@pagestyle}
\def\ACM@NRadjust#1{%\begingroup\expandafter\ifx\csname Sectionformat\endcsname\relax% do nothing when \Sectionformat is unknown\def\next{\endgroup #1}%\else\def\next{\endgroup\let\realSectionformat\Sectionformat\def\ACM@sect@format@{#1}%\let\Sectionformat\ACM@NR@adjustedSectionformat%% next lines added 2018-06-17 to ensure section number is styled\let\real@adddotafter\@adddotafter\let\@adddotafter\ACM@adddotafter
#1{}% imposes the styles, but nullifies \MakeUppercase\let\@adddotafter\real@adddotafter
}%\fi\next
}
\def\ACM@NR@adjustedSectionformat#1#2{%\realSectionformat{\ACM@sect@format{#1}}{#2}%\let\Sectionformat\realSectionformat}
\DeclareRobustCommand{\ACM@sect@format}{\ACM@sect@format@}
\def\ACM@sect@format@null#1{#1}
\let\ACM@sect@format@\ACM@sect@format@null\AtBeginDocument{%\expandafter\ifx\csname LTX@adddotafter\endcsname\relax\let\LTX@adddotafter\@adddotafter\fi
}
\def\ACM@adddotafter#1{\ifx\relax#1\relax\else\LTX@adddotafter{#1}\fi}
\renewcommand\section{\@startsection{section}{1}{\z@}% {-.75\baselineskip\@plus -2\p@\@minus -.2\p@}% {.25\baselineskip}% {\ACM@NRadjust\@secfont}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}% {-.75\baselineskip\@plus -2\p@\@minus -.2\p@}% {.25\baselineskip}% {\ACM@NRadjust\@subsecfont}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-.5\baselineskip\@plus -2\p@\@minus -.2\p@}% {-3.5\p@}% {\ACM@NRadjust{\@subsubsecfont\@adddotafter}}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\parindent}% {-.5\baselineskip\@plus -2\p@\@minus -.2\p@}% {-3.5\p@}% {\ACM@NRadjust{\@parfont\@adddotafter}}}
\renewcommand\part{\@startsection{part}{9}{\z@}% {-10\p@\@plus -4\p@\@minus -2\p@}% {4\p@}% {\ACM@NRadjust\@parfont}}
\def\section@raggedright{\@rightskip\@flushglue\rightskip\@rightskip\leftskip\z@skip\parindent\z@}
\def\@secfont{\sffamily\bfseries\section@raggedright\MakeTextUppercase}
\def\@subsecfont{\sffamily\bfseries\section@raggedright}
\def\@subsubsecfont{\sffamily\itshape}
\def\@parfont{\itshape}
\setcounter{secnumdepth}{3}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\def\@secfont{\sffamily\large\section@raggedright\MakeTextUppercase}
\def\@subsecfont{\sffamily\large\section@raggedright}
\or% acmtog\def\@secfont{\sffamily\large\section@raggedright\MakeTextUppercase}
\def\@subsecfont{\sffamily\large\section@raggedright}
\or% sigconf\def\@secfont{\bfseries\Large\section@raggedright\MakeTextUppercase}
\def\@subsecfont{\bfseries\Large\section@raggedright}
\or% siggraph\def\@secfont{\sffamily\bfseries\Large\section@raggedright\MakeTextUppercase}
\def\@subsecfont{\sffamily\bfseries\Large\section@raggedright}
\or% sigplan\def\@secfont{\bfseries\Large\section@raggedright}
\def\@subsecfont{\bfseries\section@raggedright}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-.75\baselineskip\@plus -2\p@\@minus -.2\p@}% {.25\baselineskip}% {\@subsubsecfont}}
\def\@subsubsecfont{\bfseries\section@raggedright}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {-.5\baselineskip\@plus -2\p@\@minus -.2\p@}% {-3.5\p@}% {\@parfont\@addspaceafter}}
\def\@parfont{\bfseries\itshape}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\z@}% {-.5\baselineskip\@plus -2\p@\@minus -.2\p@}% {-3.5\p@}% {\@subparfont\@addspaceafter}}
\def\@subparfont{\itshape}
\or% sigchi\setcounter{secnumdepth}{1}
\def\@secfont{\sffamily\bfseries\section@raggedright\MakeTextUppercase}
\def\@subsecfont{\sffamily\bfseries\section@raggedright}
\or% sigchi-a\setcounter{secnumdepth}{0}
\def\@secfont{\sffamily\bfseries\section@raggedright\MakeTextUppercase}
\def\@subsecfont{\sffamily\bfseries\section@raggedright}
\fi\def\@adddotafter#1{#1\@addpunct{.}}
\def\@addspaceafter#1{#1\@addpunct{\enspace}}
\providecommand*\@dotsep{4.5}
\def\@acmplainbodyfont{\itshape}
\def\@acmplainindent{\parindent}
\def\@acmplainheadfont{\scshape}
\def\@acmplainnotefont{\@empty}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\or% acmtog\or% sigconf\or% siggraph\or% sigplan\def\@acmplainbodyfont{\itshape}
\def\@acmplainindent{\z@}
\def\@acmplainheadfont{\bfseries}
\def\@acmplainnotefont{\normalfont}
\or% sigchi\or% sigchi-a\fi\newtheoremstyle{acmplain}%
{.5\baselineskip\@plus.2\baselineskip\@minus.2\baselineskip}% space above
{.5\baselineskip\@plus.2\baselineskip\@minus.2\baselineskip}% space below
{\@acmplainbodyfont}% body font
{\@acmplainindent}% indent amount
{\@acmplainheadfont}% head font
{.}% punctuation after head
{.5em}% spacing after head
{\thmname{#1}\thmnumber{ #2}\thmnote{ {\@acmplainnotefont(#3)}}}% head spec\def\@acmdefinitionbodyfont{\normalfont}
\def\@acmdefinitionindent{\parindent}
\def\@acmdefinitionheadfont{\itshape}
\def\@acmdefinitionnotefont{\@empty}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\or% acmtog\or% sigconf\or% siggraph\or% sigplan\def\@acmdefinitionbodyfont{\normalfont}
\def\@acmdefinitionindent{\z@}
\def\@acmdefinitionheadfont{\bfseries}
\def\@acmdefinitionnotefont{\normalfont}
\or% sigchi\or% sigchi-a\fi\newtheoremstyle{acmdefinition}%
{.5\baselineskip\@plus.2\baselineskip\@minus.2\baselineskip}% space above
{.5\baselineskip\@plus.2\baselineskip\@minus.2\baselineskip}% space below
{\@acmdefinitionbodyfont}% body font
{\@acmdefinitionindent}% indent amount
{\@acmdefinitionheadfont}% head font
{.}% punctuation after head
{.5em}% spacing after head
{\thmname{#1}\thmnumber{ #2}\thmnote{ {\@acmdefinitionnotefont(#3)}}}% head spec\theoremstyle{acmplain}
\AtEndPreamble{%\if@ACM@acmthm
\theoremstyle{acmplain}
\@ifundefined{theorem}{%\newtheorem{theorem}{Theorem}[section]
}{}
\@ifundefined{conjecture}{%\newtheorem{conjecture}[theorem]{Conjecture}
}{}
\@ifundefined{proposition}{%\newtheorem{proposition}[theorem]{Proposition}
}{}
\@ifundefined{lemma}{%\newtheorem{lemma}[theorem]{Lemma}
}{}
\@ifundefined{corollary}{%\newtheorem{corollary}[theorem]{Corollary}
}{}
\theoremstyle{acmdefinition}
\@ifundefined{example}{%\newtheorem{example}[theorem]{Example}
}{}
\@ifundefined{definition}{%\newtheorem{definition}[theorem]{Definition}
}{}
\fi\theoremstyle{acmplain}
}
\def\@proofnamefont{\scshape}
\def\@proofindent{\indent}
\ifcase\ACM@format@nr\relax% manuscript\or% acmsmall\or% acmlarge\or% acmtog\or% sigconf\or% siggraph\or% sigplan\def\@proofnamefont{\itshape}
\def\@proofindent{\noindent}
\or% sigchi\or% sigchi-a\fi\renewenvironment{proof}[1][\proofname]{\par\pushQED{\qed}%\normalfont\topsep6\p@\@plus6\p@\relax\trivlist\item[\@proofindent\hskip\labelsep
{\@proofnamefont #1\@addpunct{.}}]\ignorespaces
}{%\popQED\endtrivlist\@endpefalse
}
\specialcomment{acks}{%\begingroup\section*{Acknowledgments}
\phantomsection\addcontentsline{toc}{section}{Acknowledgments}
}{%\endgroup
}
\def\grantsponsor#1#2#3{#2}
\newcommand\grantnum[3][]{#3%\def\@tempa{#1}\ifx\@tempa\@empty\else\space(\url{#1})\fi}
\AtEndPreamble{%\if@ACM@screen
\includecomment{screenonly}
\excludecomment{printonly}
\else\excludecomment{screenonly}
\includecomment{printonly}
\fi\if@ACM@anonymous
\excludecomment{anonsuppress}
\excludecomment{acks}
\else\includecomment{anonsuppress}
\fi}
\newcommand\showeprint[2][arxiv]{%\def\@tempa{#1}%\ifx\@tempa\@empty\def\@tempa{arxiv}\fi\def\@tempb{arxiv}%\ifx\@tempa\@tempb
arXiv:\href{http://arxiv.org/abs/#2}{#2}\else arXiv:#2%\fi}
\normalsize\normalfont\frenchspacing\endinput%%%% End of file `acmart.cls'.
The first two lines in Introduction section in the generated PDF:
Conclude that with confidence level 95%, there’s a signific-
ant difference between these two configurations. Now for
I was expecting that significant to break like signifi-cant. According to the compilation log, it uses babel 3.12, Babel <3.12> and hyphenation patterns for 84 language(s) loaded. Not sure if it's the same behavior in the latest release of babel. Didn't find anything similar mentioned in the changelog, though.
The text was updated successfully, but these errors were encountered:
I encountered odd hyphernation while using overleaf. Here is an MME:
The content of
acmart.cls
:The first two lines in
Introduction
section in the generated PDF:I was expecting that
significant
to break likesignifi-cant
. According to the compilation log, it uses babel 3.12,Babel <3.12> and hyphenation patterns for 84 language(s) loaded
. Not sure if it's the same behavior in the latest release of babel. Didn't find anything similar mentioned in the changelog, though.The text was updated successfully, but these errors were encountered: