annotate docs/WAC2016/sig-alternate.cls @ 1116:c44fbf72f7f2

All interfaces support comment boxes. Comment box identification matches presented tag (for instance, AB will be Comment on fragment A, rather than 1). Tighter buffer loading protocol, audioObjects register with the buffer rather than checking for buffer existence (which can be buggy depending on the buffer state). Buffers now have a state to ensure exact location in loading chain (downloading, decoding, LUFS, ready).
author Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk>
date Fri, 29 Jan 2016 11:11:57 +0000
parents
children 33d7a1faa50b b5bf2f57187c
rev   line source
n@1116 1 % SIG-ALTERNATE.CLS - VERSION 2.8
n@1116 2 % "COMPATIBLE" WITH THE "ACM_PROC_ARTICLE-SP.CLS" V3.2SP
n@1116 3 % Gerald Murray - May 23rd 2012
n@1116 4 % Boris Veytsman - April 23 2013
n@1116 5 % Boris Veytsman - May 12 2013
n@1116 6 % Boris Veytsman - June 09 2013
n@1116 7 % Boris Veytsman - August 12 2013
n@1116 8 %
n@1116 9 % ---- Start of 'updates' ----
n@1116 10 % Added new permission/copyright statement - BV
n@1116 11 % Changed $10 fee to $15 -- May 2012 -- Gerry
n@1116 12 % Changed $5 fee to $10 -- April 2009 -- Gerry
n@1116 13 % April 22nd. 2009 - Fixed 'Natbib' incompatibility problem - Gerry
n@1116 14 % April 22nd. 2009 - Fixed 'Babel' incompatibility problem - Gerry
n@1116 15 % April 22nd. 2009 - Inserted various bug-fixes and improvements - Gerry
n@1116 16 %
n@1116 17 % To produce Type 1 fonts in the document plus allow for 'normal LaTeX accenting' in the critical areas;
n@1116 18 % title, author block, section-heads, confname, etc. etc.
n@1116 19 % i.e. the whole purpose of this version update is to NOT resort to 'inelegant accent patches'.
n@1116 20 % After much research, three extra .sty packages were added to the the tail (ae, aecompl, aeguill) to solve,
n@1116 21 % in particular, the accenting problem(s). We _could_ ask authors (via instructions/sample file) to 'include' these in
n@1116 22 % the source .tex file - in the preamble - but if everything is already provided ('behind the scenes' - embedded IN the .cls)
n@1116 23 % then this is less work for authors and also makes everything appear 'vanilla'.
n@1116 24 % NOTE: all 'patchwork accenting" has been commented out (here) and is no longer 'used' in the sample .tex file (either).
n@1116 25 % Gerry June 2007
n@1116 26 %
n@1116 27 % Patch for accenting in conference name/location. Gerry May 3rd. 2007
n@1116 28 % Rule widths changed to .5, author count (>6) fixed, roll-back for Type 3 problem. Gerry March 20th. 2007
n@1116 29 % Changes made to 'modernize' the fontnames but esp. for MikTeX users V2.4/2.5 - Nov. 30th. 2006
n@1116 30 % Updated the \email definition to allow for its use inside of 'shared affiliations' - Nov. 30th. 2006
n@1116 31 % Fixed the 'section number depth value' - Nov. 30th. 2006
n@1116 32 %
n@1116 33 % Footnotes inside table cells using \minipage (Oct. 2002)
n@1116 34 % Georgia fixed bug in sub-sub-section numbering in paragraphs (July 29th. 2002)
n@1116 35 % JS/GM fix to vertical spacing before Proofs (July 30th. 2002)
n@1116 36 %
n@1116 37 % Made the Permission Statement / Conference Info / Copyright Info
n@1116 38 % 'user definable' in the source .tex file OR automatic if
n@1116 39 % not specified.
n@1116 40 %
n@1116 41 % Allowance made to switch default fonts between those systems using
n@1116 42 % normal/modern font names and those using 'Type 1' or 'Truetype' fonts.
n@1116 43 % See LINE NUMBER 255 for details.
n@1116 44 % Also provided for enumerated/annotated Corollaries 'surrounded' by
n@1116 45 % enumerated Theorems (line 848).
n@1116 46 % Gerry November 11th. 1999
n@1116 47 %
n@1116 48 % ---- End of 'updates' ----
n@1116 49 %
n@1116 50 \def\fileversion{v2.9} % for ACM's tracking purposes
n@1116 51 \def\filedate{August 12, 2013} % Gerry Murray's tracking data
n@1116 52 \def\docdate {\filedate}
n@1116 53 \usepackage{epsfig}
n@1116 54 \usepackage{amssymb}
n@1116 55 \usepackage{amsmath}
n@1116 56 \usepackage{amsfonts}
n@1116 57 % Need this for accents in Arial/Helvetica
n@1116 58 %\usepackage[T1]{fontenc} % Gerry March 12, 2007 - causes Type 3 problems (body text)
n@1116 59 %\usepackage{textcomp}
n@1116 60 %
n@1116 61 % SIG-ALTERNATE DOCUMENT STYLE
n@1116 62 % G.K.M. Tobin August-October 1999
n@1116 63 % adapted from ARTICLE document style by Ken Traub, Olin Shivers
n@1116 64 % also using elements of esub2acm.cls
n@1116 65 % HEAVILY MODIFIED, SUBSEQUENTLY, BY GERRY MURRAY 2000
n@1116 66 % ARTICLE DOCUMENT STYLE -- Released 16 March 1988
n@1116 67 % for LaTeX version 2.09
n@1116 68 % Copyright (C) 1988 by Leslie Lamport
n@1116 69 %
n@1116 70 %
n@1116 71 %%% sig-alternate.cls is an 'ALTERNATE' document style for producing
n@1116 72 %%% two-column camera-ready pages for ACM conferences.
n@1116 73 %%% THIS FILE DOES NOT STRICTLY ADHERE TO THE SIGS (BOARD-ENDORSED)
n@1116 74 %%% PROCEEDINGS STYLE. It has been designed to produce a 'tighter'
n@1116 75 %%% paper in response to concerns over page budgets.
n@1116 76 %%% The main features of this style are:
n@1116 77 %%%
n@1116 78 %%% 1) Two columns.
n@1116 79 %%% 2) Side and top margins of 4.5pc, bottom margin of 6pc, column gutter of
n@1116 80 %%% 2pc, hence columns are 20pc wide and 55.5pc tall. (6pc =3D 1in, approx)
n@1116 81 %%% 3) First page has title information, and an extra 6pc of space at the
n@1116 82 %%% bottom of the first column for the ACM copyright notice.
n@1116 83 %%% 4) Text is 9pt on 10pt baselines; titles (except main) are 9pt bold.
n@1116 84 %%%
n@1116 85 %%%
n@1116 86 %%% There are a few restrictions you must observe:
n@1116 87 %%%
n@1116 88 %%% 1) You cannot change the font size; ACM wants you to use 9pt.
n@1116 89 %%% 3) You must start your paper with the \maketitle command. Prior to the
n@1116 90 %%% \maketitle you must have \title and \author commands. If you have a
n@1116 91 %%% \date command it will be ignored; no date appears on the paper, since
n@1116 92 %%% the proceedings will have a date on the front cover.
n@1116 93 %%% 4) Marginal paragraphs, tables of contents, lists of figures and tables,
n@1116 94 %%% and page headings are all forbidden.
n@1116 95 %%% 5) The `figure' environment will produce a figure one column wide; if you
n@1116 96 %%% want one that is two columns wide, use `figure*'.
n@1116 97 %%%
n@1116 98 %
n@1116 99 %%% Copyright Space:
n@1116 100 %%% This style automatically reserves 1" blank space at the bottom of page 1/
n@1116 101 %%% column 1. This space can optionally be filled with some text using the
n@1116 102 %%% \toappear{...} command. If used, this command must be BEFORE the \maketitle
n@1116 103 %%% command. If this command is defined AND [preprint] is on, then the
n@1116 104 %%% space is filled with the {...} text (at the bottom); otherwise, it is
n@1116 105 %%% blank. If you use \toappearbox{...} instead of \toappear{...} then a
n@1116 106 %%% box will be drawn around the text (if [preprint] is on).
n@1116 107 %%%
n@1116 108 %%% A typical usage looks like this:
n@1116 109 %%% \toappear{To appear in the Ninth AES Conference on Medievil Lithuanian
n@1116 110 %%% Embalming Technique, June 1991, Alfaretta, Georgia.}
n@1116 111 %%% This will be included in the preprint, and left out of the conference
n@1116 112 %%% version.
n@1116 113 %%%
n@1116 114 %%% WARNING:
n@1116 115 %%% Some dvi-ps converters heuristically allow chars to drift from their
n@1116 116 %%% true positions a few pixels. This may be noticeable with the 9pt sans-serif
n@1116 117 %%% bold font used for section headers.
n@1116 118 %%% You may turn this hackery off via the -e option:
n@1116 119 %%% dvips -e 0 foo.dvi >foo.ps
n@1116 120 %%%
n@1116 121 \typeout{Document Class 'sig-alternate' <9th June '13>. Modified by
n@1116 122 G.K.M. Tobin/Gerry Murray/Boris Veytsman}
n@1116 123 \typeout{Based in part upon document Style `acmconf' <22 May 89>. Hacked 4/91 by}
n@1116 124 \typeout{shivers@cs.cmu.edu, 4/93 by theobald@cs.mcgill.ca}
n@1116 125 \typeout{Excerpts were taken from (Journal Style) 'esub2acm.cls'.}
n@1116 126 \typeout{****** Bugs/comments/suggestions/technicalities to Gerry Murray -- murray@hq.acm.org ******}
n@1116 127 \typeout{Questions on the style, SIGS policies, etc. to Adrienne Griscti griscti@acm.org}
n@1116 128
n@1116 129
n@1116 130 \let\@concepts\@empty
n@1116 131 % Support for CCSXML file
n@1116 132 \RequirePackage{comment}
n@1116 133 \excludecomment{CCSXML}
n@1116 134
n@1116 135 % New concepts scheme
n@1116 136 %
n@1116 137 % The first argument is the significance, the
n@1116 138 % second is the concept(s)
n@1116 139 %
n@1116 140 \newcommand\ccsdesc[2][100]{%
n@1116 141 \ccsdesc@parse#1~#2~}
n@1116 142 %
n@1116 143 % The parser of the expression Significance~General~Specific
n@1116 144 %
n@1116 145 \def\ccsdesc@parse#1~#2~#3~{%
n@1116 146 \expandafter\ifx\csname CCS@#2\endcsname\relax
n@1116 147 \expandafter\gdef\csname CCS@#2\endcsname{\textbullet\textbf{#2} $\to$ }%
n@1116 148 \g@addto@macro{\@concepts}{\csname CCS@#2\endcsname}\fi
n@1116 149 \expandafter\g@addto@macro\expandafter{\csname CCS@#2\endcsname}{%
n@1116 150 \ifnum#1>499\textbf{#3; }\else
n@1116 151 \ifnum#1>299\textit{#3; }\else
n@1116 152 #3; \fi\fi}}
n@1116 153
n@1116 154 \newcommand\printccsdesc{%
n@1116 155 \ifx\@concepts\@empty\else
n@1116 156 \if@twocolumn
n@1116 157 \section*{CCS Concepts}
n@1116 158 \@concepts
n@1116 159 \else \small
n@1116 160 \quotation{\@concepts}%
n@1116 161 \fi
n@1116 162 \fi}
n@1116 163
n@1116 164
n@1116 165
n@1116 166
n@1116 167 \def\doi#1{\def\@doi{#1}}
n@1116 168 \doi{http://dx.doi.org/10.1145/0000000.0000000}
n@1116 169
n@1116 170 \oddsidemargin 4.5pc
n@1116 171 \evensidemargin 4.5pc
n@1116 172 \advance\oddsidemargin by -1in % Correct for LaTeX gratuitousness
n@1116 173 \advance\evensidemargin by -1in % Correct for LaTeX gratuitousness
n@1116 174 \marginparwidth 0pt % Margin pars are not allowed.
n@1116 175 \marginparsep 11pt % Horizontal space between outer margin and
n@1116 176 % marginal note
n@1116 177
n@1116 178 % Top of page:
n@1116 179 \topmargin 4.5pc % Nominal distance from top of page to top of
n@1116 180 % box containing running head.
n@1116 181 \advance\topmargin by -1in % Correct for LaTeX gratuitousness
n@1116 182 \headheight 0pt % Height of box containing running head.
n@1116 183 \headsep 0pt % Space between running head and text.
n@1116 184 % Bottom of page:
n@1116 185 \footskip 30pt % Distance from baseline of box containing foot
n@1116 186 % to baseline of last line of text.
n@1116 187 \@ifundefined{footheight}{\newdimen\footheight}{}% this is for LaTeX2e
n@1116 188 \footheight 12pt % Height of box containing running foot.
n@1116 189
n@1116 190 %% Must redefine the top margin so there's room for headers and
n@1116 191 %% page numbers if you are using the preprint option. Footers
n@1116 192 %% are OK as is. Olin.
n@1116 193 \advance\topmargin by -37pt % Leave 37pt above text for headers
n@1116 194 \headheight 12pt % Height of box containing running head.
n@1116 195 \headsep 25pt % Space between running head and text.
n@1116 196
n@1116 197 \textheight 666pt % 9 1/4 column height
n@1116 198 \textwidth 42pc % Width of text line.
n@1116 199 % For two-column mode:
n@1116 200 \columnsep 2pc % Space between columns
n@1116 201 \columnseprule 0pt % Width of rule between columns.
n@1116 202 \hfuzz 1pt % Allow some variation in column width, otherwise it's
n@1116 203 % too hard to typeset in narrow columns.
n@1116 204
n@1116 205 \footnotesep 5.6pt % Height of strut placed at the beginning of every
n@1116 206 % footnote =3D height of normal \footnotesize strut,
n@1116 207 % so no extra space between footnotes.
n@1116 208
n@1116 209 \skip\footins 8.1pt plus 4pt minus 2pt % Space between last line of text and
n@1116 210 % top of first footnote.
n@1116 211 \floatsep 11pt plus 2pt minus 2pt % Space between adjacent floats moved
n@1116 212 % to top or bottom of text page.
n@1116 213 \textfloatsep 18pt plus 2pt minus 4pt % Space between main text and floats
n@1116 214 % at top or bottom of page.
n@1116 215 \intextsep 11pt plus 2pt minus 2pt % Space between in-text figures and
n@1116 216 % text.
n@1116 217 \@ifundefined{@maxsep}{\newdimen\@maxsep}{}% this is for LaTeX2e
n@1116 218 \@maxsep 18pt % The maximum of \floatsep,
n@1116 219 % \textfloatsep and \intextsep (minus
n@1116 220 % the stretch and shrink).
n@1116 221 \dblfloatsep 11pt plus 2pt minus 2pt % Same as \floatsep for double-column
n@1116 222 % figures in two-column mode.
n@1116 223 \dbltextfloatsep 18pt plus 2pt minus 4pt% \textfloatsep for double-column
n@1116 224 % floats.
n@1116 225 \@ifundefined{@dblmaxsep}{\newdimen\@dblmaxsep}{}% this is for LaTeX2e
n@1116 226 \@dblmaxsep 18pt % The maximum of \dblfloatsep and
n@1116 227 % \dbltexfloatsep.
n@1116 228 \@fptop 0pt plus 1fil % Stretch at top of float page/column. (Must be
n@1116 229 % 0pt plus ...)
n@1116 230 \@fpsep 8pt plus 2fil % Space between floats on float page/column.
n@1116 231 \@fpbot 0pt plus 1fil % Stretch at bottom of float page/column. (Must be
n@1116 232 % 0pt plus ... )
n@1116 233 \@dblfptop 0pt plus 1fil % Stretch at top of float page. (Must be 0pt plus ...)
n@1116 234 \@dblfpsep 8pt plus 2fil % Space between floats on float page.
n@1116 235 \@dblfpbot 0pt plus 1fil % Stretch at bottom of float page. (Must be
n@1116 236 % 0pt plus ... )
n@1116 237 \marginparpush 5pt % Minimum vertical separation between two marginal
n@1116 238 % notes.
n@1116 239
n@1116 240 \parskip 0pt plus 1pt % Extra vertical space between paragraphs.
n@1116 241 \parindent 9pt % GM July 2000 / was 0pt - width of paragraph indentation.
n@1116 242 \partopsep 2pt plus 1pt minus 1pt% Extra vertical space, in addition to
n@1116 243 % \parskip and \topsep, added when user
n@1116 244 % leaves blank line before environment.
n@1116 245
n@1116 246 \@lowpenalty 51 % Produced by \nopagebreak[1] or \nolinebreak[1]
n@1116 247 \@medpenalty 151 % Produced by \nopagebreak[2] or \nolinebreak[2]
n@1116 248 \@highpenalty 301 % Produced by \nopagebreak[3] or \nolinebreak[3]
n@1116 249
n@1116 250 \@beginparpenalty -\@lowpenalty % Before a list or paragraph environment.
n@1116 251 \@endparpenalty -\@lowpenalty % After a list or paragraph environment.
n@1116 252 \@itempenalty -\@lowpenalty % Between list items.
n@1116 253
n@1116 254 %\@namedef{ds@10pt}{\@latexerr{The `10pt' option is not allowed in the `acmconf'
n@1116 255 \@namedef{ds@10pt}{\ClassError{The `10pt' option is not allowed in the `acmconf' % January 2008
n@1116 256 document style.}\@eha}
n@1116 257 %\@namedef{ds@11pt}{\@latexerr{The `11pt' option is not allowed in the `acmconf'
n@1116 258 \@namedef{ds@11pt}{\ClassError{The `11pt' option is not allowed in the `acmconf' % January 2008
n@1116 259 document style.}\@eha}
n@1116 260 %\@namedef{ds@12pt}{\@latexerr{The `12pt' option is not allowed in the `acmconf'
n@1116 261 \@namedef{ds@12pt}{\ClassError{The `12pt' option is not allowed in the `acmconf' % January 2008
n@1116 262 document style.}\@eha}
n@1116 263
n@1116 264 \@options
n@1116 265
n@1116 266 \lineskip 2pt % \lineskip is 1pt for all font sizes.
n@1116 267 \normallineskip 2pt
n@1116 268 \def\baselinestretch{1}
n@1116 269
n@1116 270 \abovedisplayskip 9pt plus2pt minus4.5pt%
n@1116 271 \belowdisplayskip \abovedisplayskip
n@1116 272 \abovedisplayshortskip \z@ plus3pt%
n@1116 273 \belowdisplayshortskip 5.4pt plus3pt minus3pt%
n@1116 274 \let\@listi\@listI % Setting of \@listi added 9 Jun 87
n@1116 275
n@1116 276 \def\small{\@setsize\small{9pt}\viiipt\@viiipt
n@1116 277 \abovedisplayskip 7.6pt plus 3pt minus 4pt%
n@1116 278 \belowdisplayskip \abovedisplayskip
n@1116 279 \abovedisplayshortskip \z@ plus2pt%
n@1116 280 \belowdisplayshortskip 3.6pt plus2pt minus 2pt
n@1116 281 \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
n@1116 282 \topsep 4pt plus 2pt minus 2pt\parsep 2pt plus 1pt minus 1pt
n@1116 283 \itemsep \parsep}}
n@1116 284
n@1116 285 \def\footnotesize{\@setsize\footnotesize{9pt}\ixpt\@ixpt
n@1116 286 \abovedisplayskip 6.4pt plus 2pt minus 4pt%
n@1116 287 \belowdisplayskip \abovedisplayskip
n@1116 288 \abovedisplayshortskip \z@ plus 1pt%
n@1116 289 \belowdisplayshortskip 2.7pt plus 1pt minus 2pt
n@1116 290 \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
n@1116 291 \topsep 3pt plus 1pt minus 1pt\parsep 2pt plus 1pt minus 1pt
n@1116 292 \itemsep \parsep}}
n@1116 293
n@1116 294 \newcount\aucount
n@1116 295 \newcount\originalaucount
n@1116 296 \newdimen\auwidth
n@1116 297 \auwidth=\textwidth
n@1116 298 \newdimen\auskip
n@1116 299 \newcount\auskipcount
n@1116 300 \newdimen\auskip
n@1116 301 \global\auskip=1pc
n@1116 302 \newdimen\allauboxes
n@1116 303 \allauboxes=\auwidth
n@1116 304 \newtoks\addauthors
n@1116 305 \newcount\addauflag
n@1116 306 \global\addauflag=0 %Haven't shown additional authors yet
n@1116 307
n@1116 308 \newtoks\subtitletext
n@1116 309 \gdef\subtitle#1{\subtitletext={#1}}
n@1116 310
n@1116 311 \gdef\additionalauthors#1{\addauthors={#1}}
n@1116 312
n@1116 313 \gdef\numberofauthors#1{\global\aucount=#1
n@1116 314 \ifnum\aucount>3\global\originalaucount=\aucount \global\aucount=3\fi %g} % 3 OK - Gerry March 2007
n@1116 315 \global\auskipcount=\aucount\global\advance\auskipcount by 1
n@1116 316 \global\multiply\auskipcount by 2
n@1116 317 \global\multiply\auskip by \auskipcount
n@1116 318 \global\advance\auwidth by -\auskip
n@1116 319 \global\divide\auwidth by \aucount}
n@1116 320
n@1116 321 % \and was modified to count the number of authors. GKMT 12 Aug 1999
n@1116 322 \def\alignauthor{% % \begin{tabular}
n@1116 323 \end{tabular}%
n@1116 324 \begin{tabular}[t]{p{\auwidth}}\centering}%
n@1116 325
n@1116 326 % *** NOTE *** NOTE *** NOTE *** NOTE ***
n@1116 327 % If you have 'font problems' then you may need
n@1116 328 % to change these, e.g. 'arialb' instead of "arialbd".
n@1116 329 % Gerry Murray 11/11/1999
n@1116 330 % *** OR ** comment out block A and activate block B or vice versa.
n@1116 331 % **********************************************
n@1116 332 %
n@1116 333 % -- Start of block A -- (Type 1 or Truetype fonts)
n@1116 334 %\newfont{\secfnt}{timesbd at 12pt} % was timenrb originally - now is timesbd
n@1116 335 %\newfont{\secit}{timesbi at 12pt} %13 Jan 00 gkmt
n@1116 336 %\newfont{\subsecfnt}{timesi at 11pt} % was timenrri originally - now is timesi
n@1116 337 %\newfont{\subsecit}{timesbi at 11pt} % 13 Jan 00 gkmt -- was times changed to timesbi gm 2/4/2000
n@1116 338 % % because "normal" is italic, "italic" is Roman
n@1116 339 %\newfont{\ttlfnt}{arialbd at 18pt} % was arialb originally - now is arialbd
n@1116 340 %\newfont{\ttlit}{arialbi at 18pt} % 13 Jan 00 gkmt
n@1116 341 %\newfont{\subttlfnt}{arial at 14pt} % was arialr originally - now is arial
n@1116 342 %\newfont{\subttlit}{ariali at 14pt} % 13 Jan 00 gkmt
n@1116 343 %\newfont{\subttlbf}{arialbd at 14pt} % 13 Jan 00 gkmt
n@1116 344 %\newfont{\aufnt}{arial at 12pt} % was arialr originally - now is arial
n@1116 345 %\newfont{\auit}{ariali at 12pt} % 13 Jan 00 gkmt
n@1116 346 %\newfont{\affaddr}{arial at 10pt} % was arialr originally - now is arial
n@1116 347 %\newfont{\affaddrit}{ariali at 10pt} %13 Jan 00 gkmt
n@1116 348 %\newfont{\eaddfnt}{arial at 12pt} % was arialr originally - now is arial
n@1116 349 %\newfont{\ixpt}{times at 9pt} % was timenrr originally - now is times
n@1116 350 %\newfont{\confname}{timesi at 8pt} % was timenrri - now is timesi
n@1116 351 %\newfont{\crnotice}{times at 8pt} % was timenrr originally - now is times
n@1116 352 %\newfont{\ninept}{times at 9pt} % was timenrr originally - now is times
n@1116 353
n@1116 354 % *********************************************
n@1116 355 % -- End of block A --
n@1116 356 %
n@1116 357 %
n@1116 358 % -- Start of block B -- UPDATED FONT NAMES
n@1116 359 % *********************************************
n@1116 360 % Gerry Murray 11/30/2006
n@1116 361 % *********************************************
n@1116 362 \newfont{\secfnt}{ptmb8t at 12pt}
n@1116 363 \newfont{\secit}{ptmbi8t at 12pt} %13 Jan 00 gkmt
n@1116 364 \newfont{\subsecfnt}{ptmri8t at 11pt}
n@1116 365 \newfont{\subsecit}{ptmbi8t at 11pt} %
n@1116 366 \newfont{\ttlfnt}{phvb8t at 18pt}
n@1116 367 \newfont{\ttlit}{phvbo8t at 18pt} % GM 2/4/2000
n@1116 368 \newfont{\subttlfnt}{phvr8t at 14pt}
n@1116 369 \newfont{\subttlit}{phvro8t at 14pt} % GM 2/4/2000
n@1116 370 \newfont{\subttlbf}{phvb8t at 14pt} % 13 Jan 00 gkmt
n@1116 371 \newfont{\aufnt}{phvr8t at 12pt}
n@1116 372 \newfont{\auit}{phvro8t at 12pt} % GM 2/4/2000
n@1116 373 \newfont{\affaddr}{phvr8t at 10pt}
n@1116 374 \newfont{\affaddrit}{phvro8t at 10pt} % GM 2/4/2000
n@1116 375 \newfont{\eaddfnt}{phvr8t at 12pt}
n@1116 376 \newfont{\ixpt}{ptmr8t at 9pt}
n@1116 377 \newfont{\confname}{ptmri8t at 8pt}
n@1116 378 \newfont{\crnotice}{ptmr8t at 8pt}
n@1116 379 \newfont{\ninept}{ptmr8t at 9pt}
n@1116 380 % +++++++++++++++++++++++++++++++++++++++++++++
n@1116 381 % -- End of block B --
n@1116 382
n@1116 383 %\def\email#1{{{\eaddfnt{\vskip 4pt#1}}}}
n@1116 384 % If we have an email, inside a "shared affiliation" then we need the following instead
n@1116 385 \def\email#1{{{\eaddfnt{\par #1}}}} % revised - GM - 11/30/2006
n@1116 386
n@1116 387 \def\addauthorsection{\ifnum\originalaucount>6 % was 3 - Gerry March 2007
n@1116 388 \section{Additional Authors}\the\addauthors
n@1116 389 \fi}
n@1116 390
n@1116 391 \newcount\savesection
n@1116 392 \newcount\sectioncntr
n@1116 393 \global\sectioncntr=1
n@1116 394
n@1116 395 \setcounter{secnumdepth}{3}
n@1116 396
n@1116 397 \def\appendix{\par
n@1116 398 \section*{APPENDIX}
n@1116 399 \setcounter{section}{0}
n@1116 400 \setcounter{subsection}{0}
n@1116 401 \def\thesection{\Alph{section}} }
n@1116 402
n@1116 403 \leftmargini 22.5pt
n@1116 404 \leftmarginii 19.8pt % > \labelsep + width of '(m)'
n@1116 405 \leftmarginiii 16.8pt % > \labelsep + width of 'vii.'
n@1116 406 \leftmarginiv 15.3pt % > \labelsep + width of 'M.'
n@1116 407 \leftmarginv 9pt
n@1116 408 \leftmarginvi 9pt
n@1116 409
n@1116 410 \leftmargin\leftmargini
n@1116 411 \labelsep 4.5pt
n@1116 412 \labelwidth\leftmargini\advance\labelwidth-\labelsep
n@1116 413
n@1116 414 \def\@listI{\leftmargin\leftmargini \parsep 3.6pt plus 2pt minus 1pt%
n@1116 415 \topsep 7.2pt plus 2pt minus 4pt%
n@1116 416 \itemsep 3.6pt plus 2pt minus 1pt}
n@1116 417
n@1116 418 \let\@listi\@listI
n@1116 419 \@listi
n@1116 420
n@1116 421 \def\@listii{\leftmargin\leftmarginii
n@1116 422 \labelwidth\leftmarginii\advance\labelwidth-\labelsep
n@1116 423 \topsep 3.6pt plus 2pt minus 1pt
n@1116 424 \parsep 1.8pt plus 0.9pt minus 0.9pt
n@1116 425 \itemsep \parsep}
n@1116 426
n@1116 427 \def\@listiii{\leftmargin\leftmarginiii
n@1116 428 \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
n@1116 429 \topsep 1.8pt plus 0.9pt minus 0.9pt
n@1116 430 \parsep \z@ \partopsep 1pt plus 0pt minus 1pt
n@1116 431 \itemsep \topsep}
n@1116 432
n@1116 433 \def\@listiv{\leftmargin\leftmarginiv
n@1116 434 \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
n@1116 435
n@1116 436 \def\@listv{\leftmargin\leftmarginv
n@1116 437 \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
n@1116 438
n@1116 439 \def\@listvi{\leftmargin\leftmarginvi
n@1116 440 \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
n@1116 441
n@1116 442 \def\labelenumi{\theenumi.}
n@1116 443 \def\theenumi{\arabic{enumi}}
n@1116 444
n@1116 445 \def\labelenumii{(\theenumii)}
n@1116 446 \def\theenumii{\alph{enumii}}
n@1116 447 \def\p@enumii{\theenumi}
n@1116 448
n@1116 449 \def\labelenumiii{\theenumiii.}
n@1116 450 \def\theenumiii{\roman{enumiii}}
n@1116 451 \def\p@enumiii{\theenumi(\theenumii)}
n@1116 452
n@1116 453 \def\labelenumiv{\theenumiv.}
n@1116 454 \def\theenumiv{\Alph{enumiv}}
n@1116 455 \def\p@enumiv{\p@enumiii\theenumiii}
n@1116 456
n@1116 457 \def\labelitemi{$\bullet$}
n@1116 458 \def\labelitemii{\bf --}
n@1116 459 \def\labelitemiii{$\ast$}
n@1116 460 \def\labelitemiv{$\cdot$}
n@1116 461
n@1116 462 \def\verse{\let\\=\@centercr
n@1116 463 \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent
n@1116 464 \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
n@1116 465 \let\endverse\endlist
n@1116 466
n@1116 467 \def\quotation{\list{}{\listparindent 1.5em
n@1116 468 \itemindent\listparindent
n@1116 469 \rightmargin\leftmargin \parsep 0pt plus 1pt}\item[]}
n@1116 470 \let\endquotation=\endlist
n@1116 471
n@1116 472 \def\quote{\list{}{\rightmargin\leftmargin}\item[]}
n@1116 473 \let\endquote=\endlist
n@1116 474
n@1116 475 \def\descriptionlabel#1{\hspace\labelsep \bf #1}
n@1116 476 \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin
n@1116 477 \let\makelabel\descriptionlabel}}
n@1116 478
n@1116 479 \let\enddescription\endlist
n@1116 480
n@1116 481 \def\theequation{\arabic{equation}}
n@1116 482
n@1116 483 \arraycolsep 4.5pt % Half the space between columns in an array environment.
n@1116 484 \tabcolsep 5.4pt % Half the space between columns in a tabular environment.
n@1116 485 \arrayrulewidth .5pt % Width of rules in array and tabular environment. % (was .4) updated Gerry March 20 2007
n@1116 486 \doublerulesep 1.8pt % Space between adjacent rules in array or tabular env.
n@1116 487
n@1116 488 \tabbingsep \labelsep % Space used by the \' command. (See LaTeX manual.)
n@1116 489
n@1116 490 \skip\@mpfootins =\skip\footins
n@1116 491
n@1116 492 \fboxsep =2.7pt % Space left between box and text by \fbox and \framebox.
n@1116 493 \fboxrule =.5pt % Width of rules in box made by \fbox and \framebox. % (was .4) updated Gerry March 20 2007
n@1116 494
n@1116 495 \def\thepart{\Roman{part}} % Roman numeral part numbers.
n@1116 496 \def\thesection {\arabic{section}}
n@1116 497 \def\thesubsection {\thesection.\arabic{subsection}}
n@1116 498 %\def\thesubsubsection {\thesubsection.\arabic{subsubsection}} % GM 7/30/2002
n@1116 499 %\def\theparagraph {\thesubsubsection.\arabic{paragraph}} % GM 7/30/2002
n@1116 500 \def\thesubparagraph {\theparagraph.\arabic{subparagraph}}
n@1116 501
n@1116 502 \def\@pnumwidth{1.55em}
n@1116 503 \def\@tocrmarg {2.55em}
n@1116 504 \def\@dotsep{4.5}
n@1116 505 \setcounter{tocdepth}{3}
n@1116 506
n@1116 507 %\def\tableofcontents{\@latexerr{\tableofcontents: Tables of contents are not
n@1116 508 % allowed in the `acmconf' document style.}\@eha}
n@1116 509
n@1116 510 \def\tableofcontents{\ClassError{%
n@1116 511 \string\tableofcontents\space is not allowed in the `acmconf' document % January 2008
n@1116 512 style}\@eha}
n@1116 513
n@1116 514 \def\l@part#1#2{\addpenalty{\@secpenalty}
n@1116 515 \addvspace{2.25em plus 1pt} % space above part line
n@1116 516 \begingroup
n@1116 517 \@tempdima 3em % width of box holding part number, used by
n@1116 518 \parindent \z@ \rightskip \@pnumwidth %% \numberline
n@1116 519 \parfillskip -\@pnumwidth
n@1116 520 {\large \bf % set line in \large boldface
n@1116 521 \leavevmode % TeX command to enter horizontal mode.
n@1116 522 #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
n@1116 523 \nobreak % Never break after part entry
n@1116 524 \endgroup}
n@1116 525
n@1116 526 \def\l@section#1#2{\addpenalty{\@secpenalty} % good place for page break
n@1116 527 \addvspace{1.0em plus 1pt} % space above toc entry
n@1116 528 \@tempdima 1.5em % width of box holding section number
n@1116 529 \begingroup
n@1116 530 \parindent \z@ \rightskip \@pnumwidth
n@1116 531 \parfillskip -\@pnumwidth
n@1116 532 \bf % Boldface.
n@1116 533 \leavevmode % TeX command to enter horizontal mode.
n@1116 534 \advance\leftskip\@tempdima %% added 5 Feb 88 to conform to
n@1116 535 \hskip -\leftskip %% 25 Jan 88 change to \numberline
n@1116 536 #1\nobreak\hfil \nobreak\hbox to\@pnumwidth{\hss #2}\par
n@1116 537 \endgroup}
n@1116 538
n@1116 539
n@1116 540 \def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
n@1116 541 \def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
n@1116 542 \def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
n@1116 543 \def\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
n@1116 544
n@1116 545 %\def\listoffigures{\@latexerr{\listoffigures: Lists of figures are not
n@1116 546 % allowed in the `acmconf' document style.}\@eha}
n@1116 547
n@1116 548 \def\listoffigures{\ClassError{%
n@1116 549 \string\listoffigures\space is not allowed in the `acmconf' document % January 2008
n@1116 550 style}\@eha}
n@1116 551
n@1116 552 \def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
n@1116 553
n@1116 554 %\def\listoftables{\@latexerr{\listoftables: Lists of tables are not
n@1116 555 % allowed in the `acmconf' document style.}\@eha}
n@1116 556 %\let\l@table\l@figure
n@1116 557
n@1116 558 \def\listoftables{\ClassError{%
n@1116 559 \string\listoftables\space is not allowed in the `acmconf' document % January 2008
n@1116 560 style}\@eha}
n@1116 561 \let\l@table\l@figure
n@1116 562
n@1116 563 \def\footnoterule{\kern-3\p@
n@1116 564 \hrule width .5\columnwidth % (was .4) updated Gerry March 20 2007
n@1116 565 \kern 2.6\p@} % The \hrule has default height of .4pt % (was .4) updated Gerry March 20 2007
n@1116 566 % ------
n@1116 567 \long\def\@makefntext#1{\noindent
n@1116 568 %\hbox to .5em{\hss$^{\@thefnmark}$}#1} % original
n@1116 569 \hbox to .5em{\hss\textsuperscript{\@thefnmark}}#1} % C. Clifton / GM Oct. 2nd. 2002
n@1116 570 % -------
n@1116 571
n@1116 572 \long\def\@maketntext#1{\noindent
n@1116 573 #1}
n@1116 574
n@1116 575 \long\def\@maketitlenotetext#1#2{\noindent
n@1116 576 \hbox to 1.8em{\hss$^{#1}$}#2}
n@1116 577
n@1116 578 \setcounter{topnumber}{2}
n@1116 579 \def\topfraction{.7}
n@1116 580 \setcounter{bottomnumber}{1}
n@1116 581 \def\bottomfraction{.3}
n@1116 582 \setcounter{totalnumber}{3}
n@1116 583 \def\textfraction{.2}
n@1116 584 \def\floatpagefraction{.5}
n@1116 585 \setcounter{dbltopnumber}{2}
n@1116 586 \def\dbltopfraction{.7}
n@1116 587 \def\dblfloatpagefraction{.5}
n@1116 588
n@1116 589 %
n@1116 590 \long\def\@makecaption#1#2{
n@1116 591 \vskip \baselineskip
n@1116 592 \setbox\@tempboxa\hbox{\textbf{#1: #2}}
n@1116 593 \ifdim \wd\@tempboxa >\hsize % IF longer than one line:
n@1116 594 \textbf{#1: #2}\par % THEN set as ordinary paragraph.
n@1116 595 \else % ELSE center.
n@1116 596 \hbox to\hsize{\hfil\box\@tempboxa\hfil}\par
n@1116 597 \fi}
n@1116 598
n@1116 599 %
n@1116 600
n@1116 601 \long\def\@makecaption#1#2{
n@1116 602 \vskip 10pt
n@1116 603 \setbox\@tempboxa\hbox{\textbf{#1: #2}}
n@1116 604 \ifdim \wd\@tempboxa >\hsize % IF longer than one line:
n@1116 605 \textbf{#1: #2}\par % THEN set as ordinary paragraph.
n@1116 606 \else % ELSE center.
n@1116 607 \hbox to\hsize{\hfil\box\@tempboxa\hfil}
n@1116 608 \fi}
n@1116 609
n@1116 610 \@ifundefined{figure}{\newcounter {figure}} % this is for LaTeX2e
n@1116 611
n@1116 612 \def\fps@figure{tbp}
n@1116 613 \def\ftype@figure{1}
n@1116 614 \def\ext@figure{lof}
n@1116 615 \def\fnum@figure{Figure \thefigure}
n@1116 616 \def\figure{\@float{figure}}
n@1116 617 %\let\endfigure\end@float
n@1116 618 \def\endfigure{\end@float} % Gerry January 2008
n@1116 619 \@namedef{figure*}{\@dblfloat{figure}}
n@1116 620 \@namedef{endfigure*}{\end@dblfloat}
n@1116 621
n@1116 622 \@ifundefined{table}{\newcounter {table}} % this is for LaTeX2e
n@1116 623
n@1116 624 \def\fps@table{tbp}
n@1116 625 \def\ftype@table{2}
n@1116 626 \def\ext@table{lot}
n@1116 627 \def\fnum@table{Table \thetable}
n@1116 628 \def\table{\@float{table}}
n@1116 629 %\let\endtable\end@float
n@1116 630 \def\endtable{\end@float} % Gerry January 2008
n@1116 631 \@namedef{table*}{\@dblfloat{table}}
n@1116 632 \@namedef{endtable*}{\end@dblfloat}
n@1116 633
n@1116 634 \newtoks\titleboxnotes
n@1116 635 \newcount\titleboxnoteflag
n@1116 636
n@1116 637 \def\maketitle{\par
n@1116 638 \begingroup
n@1116 639 \def\thefootnote{\fnsymbol{footnote}}
n@1116 640 \def\@makefnmark{\hbox
n@1116 641 to 0pt{$^{\@thefnmark}$\hss}}
n@1116 642 \twocolumn[\@maketitle]
n@1116 643 \@thanks
n@1116 644 \endgroup
n@1116 645 \setcounter{footnote}{0}
n@1116 646 \let\maketitle\relax
n@1116 647 \let\@maketitle\relax
n@1116 648 \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\gdef\@subtitle{}\let\thanks\relax
n@1116 649 \@copyrightspace}
n@1116 650
n@1116 651 %% CHANGES ON NEXT LINES
n@1116 652 \newif\if@ll % to record which version of LaTeX is in use
n@1116 653
n@1116 654 \expandafter\ifx\csname LaTeXe\endcsname\relax % LaTeX2.09 is used
n@1116 655 \else% LaTeX2e is used, so set ll to true
n@1116 656 \global\@lltrue
n@1116 657 \fi
n@1116 658
n@1116 659 \if@ll
n@1116 660 \NeedsTeXFormat{LaTeX2e}
n@1116 661 \ProvidesClass{sig-alternate} [2013/05/12 v2.7 based on acmproc.cls V1.3 <Nov. 30 '99>]
n@1116 662 \RequirePackage{latexsym}% QUERY: are these two really needed?
n@1116 663 \let\dooptions\ProcessOptions
n@1116 664 \else
n@1116 665 \let\dooptions\@options
n@1116 666 \fi
n@1116 667 %% END CHANGES
n@1116 668
n@1116 669 \def\@height{height}
n@1116 670 \def\@width{width}
n@1116 671 \def\@minus{minus}
n@1116 672 \def\@plus{plus}
n@1116 673 \def\hb@xt@{\hbox to}
n@1116 674 \newif\if@faircopy
n@1116 675 \@faircopyfalse
n@1116 676 \def\ds@faircopy{\@faircopytrue}
n@1116 677
n@1116 678 \def\ds@preprint{\@faircopyfalse}
n@1116 679
n@1116 680 \@twosidetrue
n@1116 681 \@mparswitchtrue
n@1116 682 \def\ds@draft{\overfullrule 5\p@}
n@1116 683 %% CHANGE ON NEXT LINE
n@1116 684 \dooptions
n@1116 685
n@1116 686 \lineskip \p@
n@1116 687 \normallineskip \p@
n@1116 688 \def\baselinestretch{1}
n@1116 689 \def\@ptsize{0} %needed for amssymbols.sty
n@1116 690
n@1116 691 %% CHANGES ON NEXT LINES
n@1116 692 \if@ll% allow use of old-style font change commands in LaTeX2e
n@1116 693 \@maxdepth\maxdepth
n@1116 694 %
n@1116 695 \DeclareOldFontCommand{\rm}{\ninept\rmfamily}{\mathrm}
n@1116 696 \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
n@1116 697 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
n@1116 698 \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
n@1116 699 \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
n@1116 700 \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
n@1116 701 \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
n@1116 702 \DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}}
n@1116 703 \DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}}
n@1116 704 \fi
n@1116 705 %
n@1116 706 \if@ll
n@1116 707 \renewcommand{\rmdefault}{cmr} % was 'ttm'
n@1116 708 % Note! I have also found 'mvr' to work ESPECIALLY well.
n@1116 709 % Gerry - October 1999
n@1116 710 % You may need to change your LV1times.fd file so that sc is
n@1116 711 % mapped to cmcsc - -for smallcaps -- that is if you decide
n@1116 712 % to change {cmr} to {times} above. (Not recommended)
n@1116 713 \renewcommand{\@ptsize}{}
n@1116 714 \renewcommand{\normalsize}{%
n@1116 715 \@setfontsize\normalsize\@ixpt{10.5\p@}%\ninept%
n@1116 716 \abovedisplayskip 6\p@ \@plus2\p@ \@minus\p@
n@1116 717 \belowdisplayskip \abovedisplayskip
n@1116 718 \abovedisplayshortskip 6\p@ \@minus 3\p@
n@1116 719 \belowdisplayshortskip 6\p@ \@minus 3\p@
n@1116 720 \let\@listi\@listI
n@1116 721 }
n@1116 722 \else
n@1116 723 \def\@normalsize{%changed next to 9 from 10
n@1116 724 \@setsize\normalsize{9\p@}\ixpt\@ixpt
n@1116 725 \abovedisplayskip 6\p@ \@plus2\p@ \@minus\p@
n@1116 726 \belowdisplayskip \abovedisplayskip
n@1116 727 \abovedisplayshortskip 6\p@ \@minus 3\p@
n@1116 728 \belowdisplayshortskip 6\p@ \@minus 3\p@
n@1116 729 \let\@listi\@listI
n@1116 730 }%
n@1116 731 \fi
n@1116 732 \if@ll
n@1116 733 \newcommand\scriptsize{\@setfontsize\scriptsize\@viipt{8\p@}}
n@1116 734 \newcommand\tiny{\@setfontsize\tiny\@vpt{6\p@}}
n@1116 735 \newcommand\large{\@setfontsize\large\@xiipt{14\p@}}
n@1116 736 \newcommand\Large{\@setfontsize\Large\@xivpt{18\p@}}
n@1116 737 \newcommand\LARGE{\@setfontsize\LARGE\@xviipt{20\p@}}
n@1116 738 \newcommand\huge{\@setfontsize\huge\@xxpt{25\p@}}
n@1116 739 \newcommand\Huge{\@setfontsize\Huge\@xxvpt{30\p@}}
n@1116 740 \else
n@1116 741 \def\scriptsize{\@setsize\scriptsize{8\p@}\viipt\@viipt}
n@1116 742 \def\tiny{\@setsize\tiny{6\p@}\vpt\@vpt}
n@1116 743 \def\large{\@setsize\large{14\p@}\xiipt\@xiipt}
n@1116 744 \def\Large{\@setsize\Large{18\p@}\xivpt\@xivpt}
n@1116 745 \def\LARGE{\@setsize\LARGE{20\p@}\xviipt\@xviipt}
n@1116 746 \def\huge{\@setsize\huge{25\p@}\xxpt\@xxpt}
n@1116 747 \def\Huge{\@setsize\Huge{30\p@}\xxvpt\@xxvpt}
n@1116 748 \fi
n@1116 749 \normalsize
n@1116 750
n@1116 751 % make aubox hsize/number of authors up to 3, less gutter
n@1116 752 % then showbox gutter showbox gutter showbox -- GKMT Aug 99
n@1116 753 \newbox\@acmtitlebox
n@1116 754 \def\@maketitle{\newpage
n@1116 755 \null
n@1116 756 \setbox\@acmtitlebox\vbox{%
n@1116 757 \baselineskip 20pt
n@1116 758 \vskip 2em % Vertical space above title.
n@1116 759 \begin{center}
n@1116 760 {\ttlfnt \@title\par} % Title set in 18pt Helvetica (Arial) bold size.
n@1116 761 \vskip 1.5em % Vertical space after title.
n@1116 762 %This should be the subtitle.
n@1116 763 {\subttlfnt \the\subtitletext\par}\vskip 1.25em%\fi
n@1116 764 {\baselineskip 16pt\aufnt % each author set in \12 pt Arial, in a
n@1116 765 \lineskip .5em % tabular environment
n@1116 766 \begin{tabular}[t]{c}\@author
n@1116 767 \end{tabular}\par}
n@1116 768 \vskip 1.5em % Vertical space after author.
n@1116 769 \end{center}}
n@1116 770 \dimen0=\ht\@acmtitlebox
n@1116 771 \advance\dimen0 by -12.75pc\relax % Increased space for title box -- KBT
n@1116 772 \unvbox\@acmtitlebox
n@1116 773 \ifdim\dimen0<0.0pt\relax\vskip-\dimen0\fi}
n@1116 774
n@1116 775
n@1116 776 \newcount\titlenotecount
n@1116 777 \global\titlenotecount=0
n@1116 778 \newtoks\tntoks
n@1116 779 \newtoks\tntokstwo
n@1116 780 \newtoks\tntoksthree
n@1116 781 \newtoks\tntoksfour
n@1116 782 \newtoks\tntoksfive
n@1116 783
n@1116 784 \def\abstract{
n@1116 785 \ifnum\titlenotecount>0 % was =1
n@1116 786 \insert\footins{%
n@1116 787 \reset@font\footnotesize
n@1116 788 \interlinepenalty\interfootnotelinepenalty
n@1116 789 \splittopskip\footnotesep
n@1116 790 \splitmaxdepth \dp\strutbox \floatingpenalty \@MM
n@1116 791 \hsize\columnwidth \@parboxrestore
n@1116 792 \protected@edef\@currentlabel{%
n@1116 793 }%
n@1116 794 \color@begingroup
n@1116 795 \ifnum\titlenotecount=1
n@1116 796 \@maketntext{%
n@1116 797 \raisebox{4pt}{$\ast$}\rule\z@\footnotesep\ignorespaces\the\tntoks\@finalstrut\strutbox}%
n@1116 798 \fi
n@1116 799 \ifnum\titlenotecount=2
n@1116 800 \@maketntext{%
n@1116 801 \raisebox{4pt}{$\ast$}\rule\z@\footnotesep\ignorespaces\the\tntoks\par\@finalstrut\strutbox}%
n@1116 802 \@maketntext{%
n@1116 803 \raisebox{4pt}{$\dagger$}\rule\z@\footnotesep\ignorespaces\the\tntokstwo\@finalstrut\strutbox}%
n@1116 804 \fi
n@1116 805 \ifnum\titlenotecount=3
n@1116 806 \@maketntext{%
n@1116 807 \raisebox{4pt}{$\ast$}\rule\z@\footnotesep\ignorespaces\the\tntoks\par\@finalstrut\strutbox}%
n@1116 808 \@maketntext{%
n@1116 809 \raisebox{4pt}{$\dagger$}\rule\z@\footnotesep\ignorespaces\the\tntokstwo\par\@finalstrut\strutbox}%
n@1116 810 \@maketntext{%
n@1116 811 \raisebox{4pt}{$\ddagger$}\rule\z@\footnotesep\ignorespaces\the\tntoksthree\@finalstrut\strutbox}%
n@1116 812 \fi
n@1116 813 \ifnum\titlenotecount=4
n@1116 814 \@maketntext{%
n@1116 815 \raisebox{4pt}{$\ast$}\rule\z@\footnotesep\ignorespaces\the\tntoks\par\@finalstrut\strutbox}%
n@1116 816 \@maketntext{%
n@1116 817 \raisebox{4pt}{$\dagger$}\rule\z@\footnotesep\ignorespaces\the\tntokstwo\par\@finalstrut\strutbox}%
n@1116 818 \@maketntext{%
n@1116 819 \raisebox{4pt}{$\ddagger$}\rule\z@\footnotesep\ignorespaces\the\tntoksthree\par\@finalstrut\strutbox}%
n@1116 820 \@maketntext{%
n@1116 821 \raisebox{4pt}{$\S$}\rule\z@\footnotesep\ignorespaces\the\tntoksfour\@finalstrut\strutbox}%
n@1116 822 \fi
n@1116 823 \ifnum\titlenotecount=5
n@1116 824 \@maketntext{%
n@1116 825 \raisebox{4pt}{$\ast$}\rule\z@\footnotesep\ignorespaces\the\tntoks\par\@finalstrut\strutbox}%
n@1116 826 \@maketntext{%
n@1116 827 \raisebox{4pt}{$\dagger$}\rule\z@\footnotesep\ignorespaces\the\tntokstwo\par\@finalstrut\strutbox}%
n@1116 828 \@maketntext{%
n@1116 829 \raisebox{4pt}{$\ddagger$}\rule\z@\footnotesep\ignorespaces\the\tntoksthree\par\@finalstrut\strutbox}%
n@1116 830 \@maketntext{%
n@1116 831 \raisebox{4pt}{$\S$}\rule\z@\footnotesep\ignorespaces\the\tntoksfour\par\@finalstrut\strutbox}%
n@1116 832 \@maketntext{%
n@1116 833 \raisebox{4pt}{$\P$}\rule\z@\footnotesep\ignorespaces\the\tntoksfive\@finalstrut\strutbox}%
n@1116 834 \fi
n@1116 835 \color@endgroup} %g}
n@1116 836 \fi
n@1116 837 \setcounter{footnote}{0}
n@1116 838 \section*{ABSTRACT}\normalsize%\ninept
n@1116 839 }
n@1116 840
n@1116 841 \def\endabstract{\if@twocolumn\else\endquotation\fi}
n@1116 842
n@1116 843 \def\keywords{\if@twocolumn
n@1116 844 \section*{Keywords}
n@1116 845 \else \small
n@1116 846 \quotation
n@1116 847 \fi}
n@1116 848
n@1116 849 \def\terms#1{%
n@1116 850 %\if@twocolumn
n@1116 851 %\section*{General Terms}
n@1116 852 %\else \small
n@1116 853 %\quotation
n@1116 854 %\fi
n@1116 855 }
n@1116 856
n@1116 857 % -- Classification needs to be a bit smart due to optionals - Gerry/Georgia November 2nd. 1999
n@1116 858 \newcount\catcount
n@1116 859 \global\catcount=1
n@1116 860
n@1116 861 \def\category#1#2#3{%
n@1116 862 \ifnum\catcount=1
n@1116 863 \section*{Categories and Subject Descriptors}
n@1116 864 \advance\catcount by 1\else{\unskip; }\fi
n@1116 865 \@ifnextchar [{\@category{#1}{#2}{#3}}{\@category{#1}{#2}{#3}[]}%
n@1116 866 }
n@1116 867
n@1116 868
n@1116 869 \def\@category#1#2#3[#4]{%
n@1116 870 \begingroup
n@1116 871 \let\and\relax
n@1116 872 #1 [\textbf{#2}]%
n@1116 873 \if!#4!%
n@1116 874 \if!#3!\else : #3\fi
n@1116 875 \else
n@1116 876 :\space
n@1116 877 \if!#3!\else #3\kern\z@---\hskip\z@\fi
n@1116 878 \textit{#4}%
n@1116 879 \fi
n@1116 880 \endgroup
n@1116 881 }
n@1116 882 %
n@1116 883
n@1116 884
n@1116 885
n@1116 886
n@1116 887
n@1116 888
n@1116 889 %%% This section (written by KBT) handles the 1" box in the lower left
n@1116 890 %%% corner of the left column of the first page by creating a picture,
n@1116 891 %%% and inserting the predefined string at the bottom (with a negative
n@1116 892 %%% displacement to offset the space allocated for a non-existent
n@1116 893 %%% caption).
n@1116 894 %%%
n@1116 895 \newtoks\copyrightnotice
n@1116 896 \def\ftype@copyrightbox{8}
n@1116 897 \def\@copyrightspace{
n@1116 898 \@float{copyrightbox}[b]
n@1116 899 \begin{center}
n@1116 900 \setlength{\unitlength}{1pc}
n@1116 901 \begin{picture}(20,6) %Space for copyright notice
n@1116 902 \put(0,-0.95){\crnotice{\@toappear}}
n@1116 903 \end{picture}
n@1116 904 \end{center}
n@1116 905 \end@float}
n@1116 906
n@1116 907 \def\@toappear{} % Default setting blank - commands below change this.
n@1116 908 \long\def\toappear#1{\def\@toappear{\parbox[b]{20pc}{\baselineskip 9pt#1}}}
n@1116 909 \def\toappearbox#1{\def\@toappear{\raisebox{5pt}{\framebox[20pc]{\parbox[b]{19pc}{#1}}}}}
n@1116 910
n@1116 911 \newtoks\conf
n@1116 912 \newtoks\confinfo
n@1116 913 \def\conferenceinfo#1#2{\global\conf={#1}\global\confinfo{#2}}
n@1116 914
n@1116 915
n@1116 916 %\def\marginpar{\@latexerr{The \marginpar command is not allowed in the
n@1116 917 % `acmconf' document style.}\@eha}
n@1116 918
n@1116 919 \def\marginpar{\ClassError{%
n@1116 920 \string\marginpar\space is not allowed in the `acmconf' document % January 2008
n@1116 921 style}\@eha}
n@1116 922
n@1116 923 \mark{{}{}} % Initializes TeX's marks
n@1116 924
n@1116 925 \def\today{\ifcase\month\or
n@1116 926 January\or February\or March\or April\or May\or June\or
n@1116 927 July\or August\or September\or October\or November\or December\fi
n@1116 928 \space\number\day, \number\year}
n@1116 929
n@1116 930 \def\@begintheorem#1#2{%
n@1116 931 \parskip 0pt % GM July 2000 (for tighter spacing)
n@1116 932 \trivlist
n@1116 933 \item[%
n@1116 934 \hskip 10\p@
n@1116 935 \hskip \labelsep
n@1116 936 {{\sc #1}\hskip 5\p@\relax#2.}%
n@1116 937 ]
n@1116 938 \it
n@1116 939 }
n@1116 940 \def\@opargbegintheorem#1#2#3{%
n@1116 941 \parskip 0pt % GM July 2000 (for tighter spacing)
n@1116 942 \trivlist
n@1116 943 \item[%
n@1116 944 \hskip 10\p@
n@1116 945 \hskip \labelsep
n@1116 946 {\sc #1\ #2\ % This mod by Gerry to enumerate corollaries
n@1116 947 \setbox\@tempboxa\hbox{(#3)} % and bracket the 'corollary title'
n@1116 948 \ifdim \wd\@tempboxa>\z@ % and retain the correct numbering of e.g. theorems
n@1116 949 \hskip 5\p@\relax % if they occur 'around' said corollaries.
n@1116 950 \box\@tempboxa % Gerry - Nov. 1999.
n@1116 951 \fi.}%
n@1116 952 ]
n@1116 953 \it
n@1116 954 }
n@1116 955 \newif\if@qeded
n@1116 956 \global\@qededfalse
n@1116 957
n@1116 958 % -- original
n@1116 959 %\def\proof{%
n@1116 960 % \vspace{-\parskip} % GM July 2000 (for tighter spacing)
n@1116 961 % \global\@qededfalse
n@1116 962 % \@ifnextchar[{\@xproof}{\@proof}%
n@1116 963 %}
n@1116 964 % -- end of original
n@1116 965
n@1116 966 % (JSS) Fix for vertical spacing bug - Gerry Murray July 30th. 2002
n@1116 967 \def\proof{%
n@1116 968 \vspace{-\lastskip}\vspace{-\parsep}\penalty-51%
n@1116 969 \global\@qededfalse
n@1116 970 \@ifnextchar[{\@xproof}{\@proof}%
n@1116 971 }
n@1116 972
n@1116 973 \def\endproof{%
n@1116 974 \if@qeded\else\qed\fi
n@1116 975 \endtrivlist
n@1116 976 }
n@1116 977 \def\@proof{%
n@1116 978 \trivlist
n@1116 979 \item[%
n@1116 980 \hskip 10\p@
n@1116 981 \hskip \labelsep
n@1116 982 {\sc Proof.}%
n@1116 983 ]
n@1116 984 \ignorespaces
n@1116 985 }
n@1116 986 \def\@xproof[#1]{%
n@1116 987 \trivlist
n@1116 988 \item[\hskip 10\p@\hskip \labelsep{\sc Proof #1.}]%
n@1116 989 \ignorespaces
n@1116 990 }
n@1116 991 \def\qed{%
n@1116 992 \unskip
n@1116 993 \kern 10\p@
n@1116 994 \begingroup
n@1116 995 \unitlength\p@
n@1116 996 \linethickness{.4\p@}%
n@1116 997 \framebox(6,6){}%
n@1116 998 \endgroup
n@1116 999 \global\@qededtrue
n@1116 1000 }
n@1116 1001
n@1116 1002 \def\newdef#1#2{%
n@1116 1003 \expandafter\@ifdefinable\csname #1\endcsname
n@1116 1004 {\@definecounter{#1}%
n@1116 1005 \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
n@1116 1006 \global\@namedef{#1}{\@defthm{#1}{#2}}%
n@1116 1007 \global\@namedef{end#1}{\@endtheorem}%
n@1116 1008 }%
n@1116 1009 }
n@1116 1010 \def\@defthm#1#2{%
n@1116 1011 \refstepcounter{#1}%
n@1116 1012 \@ifnextchar[{\@ydefthm{#1}{#2}}{\@xdefthm{#1}{#2}}%
n@1116 1013 }
n@1116 1014 \def\@xdefthm#1#2{%
n@1116 1015 \@begindef{#2}{\csname the#1\endcsname}%
n@1116 1016 \ignorespaces
n@1116 1017 }
n@1116 1018 \def\@ydefthm#1#2[#3]{%
n@1116 1019 \trivlist
n@1116 1020 \item[%
n@1116 1021 \hskip 10\p@
n@1116 1022 \hskip \labelsep
n@1116 1023 {\it #2%
n@1116 1024 % \savebox\@tempboxa{#3}%
n@1116 1025 \saveb@x\@tempboxa{#3}% % January 2008
n@1116 1026 \ifdim \wd\@tempboxa>\z@
n@1116 1027 \ \box\@tempboxa
n@1116 1028 \fi.%
n@1116 1029 }]%
n@1116 1030 \ignorespaces
n@1116 1031 }
n@1116 1032 \def\@begindef#1#2{%
n@1116 1033 \trivlist
n@1116 1034 \item[%
n@1116 1035 \hskip 10\p@
n@1116 1036 \hskip \labelsep
n@1116 1037 {\it #1\ \rm #2.}%
n@1116 1038 ]%
n@1116 1039 }
n@1116 1040 \def\theequation{\arabic{equation}}
n@1116 1041
n@1116 1042 \newcounter{part}
n@1116 1043 \newcounter{section}
n@1116 1044 \newcounter{subsection}[section]
n@1116 1045 \newcounter{subsubsection}[subsection]
n@1116 1046 \newcounter{paragraph}[subsubsection]
n@1116 1047 \def\thepart{\Roman{part}}
n@1116 1048 \def\thesection{\arabic{section}}
n@1116 1049 \def\thesubsection{\thesection.\arabic{subsection}}
n@1116 1050 \def\thesubsubsection{\thesubsection.\arabic{subsubsection}} %removed \subsecfnt 29 July 2002 gkmt
n@1116 1051 \def\theparagraph{\thesubsubsection.\arabic{paragraph}} %removed \subsecfnt 29 July 2002 gkmt
n@1116 1052 \newif\if@uchead
n@1116 1053 \@ucheadfalse
n@1116 1054
n@1116 1055 %% CHANGES: NEW NOTE
n@1116 1056 %% NOTE: OK to use old-style font commands below, since they were
n@1116 1057 %% suitably redefined for LaTeX2e
n@1116 1058 %% END CHANGES
n@1116 1059 \setcounter{secnumdepth}{3}
n@1116 1060 \def\part{%
n@1116 1061 \@startsection{part}{9}{\z@}{-10\p@ \@plus -4\p@ \@minus -2\p@}
n@1116 1062 {4\p@}{\normalsize\@ucheadtrue}%
n@1116 1063 }
n@1116 1064 \def\section{%
n@1116 1065 \@startsection{section}{1}{\z@}{-10\p@ \@plus -4\p@ \@minus -2\p@}% GM
n@1116 1066 {4\p@}{\baselineskip 14pt\secfnt\@ucheadtrue}%
n@1116 1067 }
n@1116 1068
n@1116 1069 \def\subsection{%
n@1116 1070 \@startsection{subsection}{2}{\z@}{-8\p@ \@plus -2\p@ \@minus -\p@}
n@1116 1071 {4\p@}{\secfnt}%
n@1116 1072 }
n@1116 1073 \def\subsubsection{%
n@1116 1074 \@startsection{subsubsection}{3}{\z@}{-8\p@ \@plus -2\p@ \@minus -\p@}%
n@1116 1075 {4\p@}{\subsecfnt}%
n@1116 1076 }
n@1116 1077 %\def\paragraph{%
n@1116 1078 % \vskip 12pt\@startsection{paragraph}{3}{\z@}{6\p@ \@plus \p@}% original
n@1116 1079 % {-5\p@}{\subsecfnt}%
n@1116 1080 %}
n@1116 1081 % If one wants sections, subsections and subsubsections numbered,
n@1116 1082 % but not paragraphs, one usually sets secnumepth to 3.
n@1116 1083 % For that, the "depth" of paragraphs must be given correctly
n@1116 1084 % in the definition (``4'' instead of ``3'' as second argument
n@1116 1085 % of @startsection):
n@1116 1086 \def\paragraph{%
n@1116 1087 \vskip 12pt\@startsection{paragraph}{4}{\z@}{6\p@ \@plus \p@}% % GM and Wolfgang May - 11/30/06
n@1116 1088 {-5\p@}{\subsecfnt}%
n@1116 1089 }
n@1116 1090 \let\@period=.
n@1116 1091 \def\@startsection#1#2#3#4#5#6{%
n@1116 1092 \if@noskipsec %gkmt, 11 aug 99
n@1116 1093 \global\let\@period\@empty
n@1116 1094 \leavevmode
n@1116 1095 \global\let\@period.%
n@1116 1096 \fi
n@1116 1097 \par %
n@1116 1098 \@tempskipa #4\relax
n@1116 1099 \@afterindenttrue
n@1116 1100 \ifdim \@tempskipa <\z@
n@1116 1101 \@tempskipa -\@tempskipa
n@1116 1102 \@afterindentfalse
n@1116 1103 \fi
n@1116 1104 \if@nobreak
n@1116 1105 \everypar{}%
n@1116 1106 \else
n@1116 1107 \addpenalty\@secpenalty
n@1116 1108 \addvspace\@tempskipa
n@1116 1109 \fi
n@1116 1110 \parskip=0pt % GM July 2000 (non numbered) section heads
n@1116 1111 \@ifstar
n@1116 1112 {\@ssect{#3}{#4}{#5}{#6}}
n@1116 1113 {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}%
n@1116 1114 }
n@1116 1115 \def\@sect#1#2#3#4#5#6[#7]#8{%
n@1116 1116 \ifnum #2>\c@secnumdepth
n@1116 1117 \let\@svsec\@empty
n@1116 1118 \else
n@1116 1119 \refstepcounter{#1}%
n@1116 1120 \edef\@svsec{%
n@1116 1121 \begingroup
n@1116 1122 %\ifnum#2>2 \noexpand\rm \fi % changed to next 29 July 2002 gkmt
n@1116 1123 \ifnum#2>2 \noexpand#6 \fi
n@1116 1124 \csname the#1\endcsname
n@1116 1125 \endgroup
n@1116 1126 \ifnum #2=1\relax .\fi
n@1116 1127 \hskip 1em
n@1116 1128 }%
n@1116 1129 \fi
n@1116 1130 \@tempskipa #5\relax
n@1116 1131 \ifdim \@tempskipa>\z@
n@1116 1132 \begingroup
n@1116 1133 #6\relax
n@1116 1134 \@hangfrom{\hskip #3\relax\@svsec}%
n@1116 1135 \begingroup
n@1116 1136 \interlinepenalty \@M
n@1116 1137 \if@uchead
n@1116 1138 \uppercase{#8}%
n@1116 1139 \else
n@1116 1140 #8%
n@1116 1141 \fi
n@1116 1142 \par
n@1116 1143 \endgroup
n@1116 1144 \endgroup
n@1116 1145 \csname #1mark\endcsname{#7}%
n@1116 1146 \vskip -12pt %gkmt, 11 aug 99 and GM July 2000 (was -14) - numbered section head spacing
n@1116 1147 \addcontentsline{toc}{#1}{%
n@1116 1148 \ifnum #2>\c@secnumdepth \else
n@1116 1149 \protect\numberline{\csname the#1\endcsname}%
n@1116 1150 \fi
n@1116 1151 #7%
n@1116 1152 }%
n@1116 1153 \else
n@1116 1154 \def\@svsechd{%
n@1116 1155 #6%
n@1116 1156 \hskip #3\relax
n@1116 1157 \@svsec
n@1116 1158 \if@uchead
n@1116 1159 \uppercase{#8}%
n@1116 1160 \else
n@1116 1161 #8%
n@1116 1162 \fi
n@1116 1163 \csname #1mark\endcsname{#7}%
n@1116 1164 \addcontentsline{toc}{#1}{%
n@1116 1165 \ifnum #2>\c@secnumdepth \else
n@1116 1166 \protect\numberline{\csname the#1\endcsname}%
n@1116 1167 \fi
n@1116 1168 #7%
n@1116 1169 }%
n@1116 1170 }%
n@1116 1171 \fi
n@1116 1172 \@xsect{#5}\hskip 1pt
n@1116 1173 \par
n@1116 1174 }
n@1116 1175 \def\@xsect#1{%
n@1116 1176 \@tempskipa #1\relax
n@1116 1177 \ifdim \@tempskipa>\z@
n@1116 1178 \par
n@1116 1179 \nobreak
n@1116 1180 \vskip \@tempskipa
n@1116 1181 \@afterheading
n@1116 1182 \else
n@1116 1183 \global\@nobreakfalse
n@1116 1184 \global\@noskipsectrue
n@1116 1185 \everypar{%
n@1116 1186 \if@noskipsec
n@1116 1187 \global\@noskipsecfalse
n@1116 1188 \clubpenalty\@M
n@1116 1189 \hskip -\parindent
n@1116 1190 \begingroup
n@1116 1191 \@svsechd
n@1116 1192 \@period
n@1116 1193 \endgroup
n@1116 1194 \unskip
n@1116 1195 \@tempskipa #1\relax
n@1116 1196 \hskip -\@tempskipa
n@1116 1197 \else
n@1116 1198 \clubpenalty \@clubpenalty
n@1116 1199 \everypar{}%
n@1116 1200 \fi
n@1116 1201 }%
n@1116 1202 \fi
n@1116 1203 \ignorespaces
n@1116 1204 }
n@1116 1205 \def\@trivlist{%
n@1116 1206 \@topsepadd\topsep
n@1116 1207 \if@noskipsec
n@1116 1208 \global\let\@period\@empty
n@1116 1209 \leavevmode
n@1116 1210 \global\let\@period.%
n@1116 1211 \fi
n@1116 1212 \ifvmode
n@1116 1213 \advance\@topsepadd\partopsep
n@1116 1214 \else
n@1116 1215 \unskip
n@1116 1216 \par
n@1116 1217 \fi
n@1116 1218 \if@inlabel
n@1116 1219 \@noparitemtrue
n@1116 1220 \@noparlisttrue
n@1116 1221 \else
n@1116 1222 \@noparlistfalse
n@1116 1223 \@topsep\@topsepadd
n@1116 1224 \fi
n@1116 1225 \advance\@topsep \parskip
n@1116 1226 \leftskip\z@skip
n@1116 1227 \rightskip\@rightskip
n@1116 1228 \parfillskip\@flushglue
n@1116 1229 \@setpar{\if@newlist\else{\@@par}\fi}
n@1116 1230 \global\@newlisttrue
n@1116 1231 \@outerparskip\parskip
n@1116 1232 }
n@1116 1233
n@1116 1234 %%% Actually, 'abbrev' works just fine as the default
n@1116 1235 %%% Bibliography style.
n@1116 1236
n@1116 1237 \typeout{Using 'Abbrev' bibliography style}
n@1116 1238 \newcommand\bibyear[2]{%
n@1116 1239 \unskip\quad\ignorespaces#1\unskip
n@1116 1240 \if#2..\quad \else \quad#2 \fi
n@1116 1241 }
n@1116 1242 \newcommand{\bibemph}[1]{{\em#1}}
n@1116 1243 \newcommand{\bibemphic}[1]{{\em#1\/}}
n@1116 1244 \newcommand{\bibsc}[1]{{\sc#1}}
n@1116 1245 \def\@normalcite{%
n@1116 1246 \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%
n@1116 1247 }
n@1116 1248 \def\@citeNB{%
n@1116 1249 \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
n@1116 1250 }
n@1116 1251 \def\@citeRB{%
n@1116 1252 \def\@cite##1##2{##1\if@tempswa , ##2\fi]}%
n@1116 1253 }
n@1116 1254 \def\start@cite#1#2{%
n@1116 1255 \edef\citeauthoryear##1##2##3{%
n@1116 1256 ###1%
n@1116 1257 \ifnum#2=\z@ \else\ ###2\fi
n@1116 1258 }%
n@1116 1259 \ifnum#1=\thr@@
n@1116 1260 \let\@@cite\@citeyear
n@1116 1261 \else
n@1116 1262 \let\@@cite\@citenormal
n@1116 1263 \fi
n@1116 1264 \@ifstar{\@citeNB\@@cite}{\@normalcite\@@cite}%
n@1116 1265 }
n@1116 1266 %\def\cite{\start@cite23}
n@1116 1267 \DeclareRobustCommand\cite{\start@cite23} % January 2008
n@1116 1268 \def\citeNP{\cite*} % No Parentheses e.g. 5
n@1116 1269 %\def\citeA{\start@cite10}
n@1116 1270 \DeclareRobustCommand\citeA{\start@cite10} % January 2008
n@1116 1271 \def\citeANP{\citeA*}
n@1116 1272 %\def\shortcite{\start@cite23}
n@1116 1273 \DeclareRobustCommand\shortcite{\start@cite23} % January 2008
n@1116 1274 \def\shortciteNP{\shortcite*}
n@1116 1275 %\def\shortciteA{\start@cite20}
n@1116 1276 \DeclareRobustCommand\shortciteA{\start@cite20} % January 2008
n@1116 1277 \def\shortciteANP{\shortciteA*}
n@1116 1278 %\def\citeyear{\start@cite30}
n@1116 1279 \DeclareRobustCommand\citeyear{\start@cite30} % January 2008
n@1116 1280 \def\citeyearNP{\citeyear*}
n@1116 1281 %\def\citeN{%
n@1116 1282 \DeclareRobustCommand\citeN{% % January 2008
n@1116 1283 \@citeRB
n@1116 1284 \def\citeauthoryear##1##2##3{##1\ [##3%
n@1116 1285 \def\reserved@a{##1}%
n@1116 1286 \def\citeauthoryear####1####2####3{%
n@1116 1287 \def\reserved@b{####1}%
n@1116 1288 \ifx\reserved@a\reserved@b
n@1116 1289 ####3%
n@1116 1290 \else
n@1116 1291 \errmessage{Package acmart Error: author mismatch
n@1116 1292 in \string\citeN^^J^^J%
n@1116 1293 See the acmart package documentation for explanation}%
n@1116 1294 \fi
n@1116 1295 }%
n@1116 1296 }%
n@1116 1297 \@ifstar\@citeyear\@citeyear
n@1116 1298 }
n@1116 1299 %\def\shortciteN{%
n@1116 1300 \DeclareRobustCommand\shortciteN{% % January 2008
n@1116 1301 \@citeRB
n@1116 1302 \def\citeauthoryear##1##2##3{##2\ [##3%
n@1116 1303 \def\reserved@a{##2}%
n@1116 1304 \def\citeauthoryear####1####2####3{%
n@1116 1305 \def\reserved@b{####2}%
n@1116 1306 \ifx\reserved@a\reserved@b
n@1116 1307 ####3%
n@1116 1308 \else
n@1116 1309 \errmessage{Package acmart Error: author mismatch
n@1116 1310 in \string\shortciteN^^J^^J%
n@1116 1311 See the acmart package documentation for explanation}%
n@1116 1312 \fi
n@1116 1313 }%
n@1116 1314 }%
n@1116 1315 \@ifstar\@citeyear\@citeyear % GM July 2000
n@1116 1316 }
n@1116 1317
n@1116 1318 \def\@citenormal{%
n@1116 1319 \@ifnextchar [{\@tempswatrue\@citex;}%
n@1116 1320 % original {\@tempswafalse\@citex,[]}% was ; Gerry 2/24/00
n@1116 1321 {\@tempswafalse\@citex[]}% % GERRY FIX FOR BABEL 3/20/2009
n@1116 1322 }
n@1116 1323
n@1116 1324 \def\@citeyear{%
n@1116 1325 \@ifnextchar [{\@tempswatrue\@citex,}%
n@1116 1326 % original {\@tempswafalse\@citex,[]}%
n@1116 1327 {\@tempswafalse\@citex[]}% % GERRY FIX FOR BABEL 3/20/2009
n@1116 1328 }
n@1116 1329
n@1116 1330 \def\@citex#1[#2]#3{%
n@1116 1331 \let\@citea\@empty
n@1116 1332 \@cite{%
n@1116 1333 \@for\@citeb:=#3\do{%
n@1116 1334 \@citea
n@1116 1335 % original \def\@citea{#1 }%
n@1116 1336 \def\@citea{#1, }% % GERRY FIX FOR BABEL 3/20/2009 -- SO THAT YOU GET [1, 2] IN THE BODY TEXT
n@1116 1337 \edef\@citeb{\expandafter\@iden\@citeb}%
n@1116 1338 \if@filesw
n@1116 1339 \immediate\write\@auxout{\string\citation{\@citeb}}%
n@1116 1340 \fi
n@1116 1341 \@ifundefined{b@\@citeb}{%
n@1116 1342 {\bf ?}%
n@1116 1343 \@warning{%
n@1116 1344 Citation `\@citeb' on page \thepage\space undefined%
n@1116 1345 }%
n@1116 1346 }%
n@1116 1347 {\csname b@\@citeb\endcsname}%
n@1116 1348 }%
n@1116 1349 }{#2}%
n@1116 1350 }
n@1116 1351 %\let\@biblabel\@gobble % Dec. 2008 - Gerry
n@1116 1352 % ----
n@1116 1353 \def\@biblabelnum#1{[#1]} % Gerry's solution #1 - for Natbib -- April 2009
n@1116 1354 \let\@biblabel=\@biblabelnum % Gerry's solution #1 - for Natbib -- April 2009
n@1116 1355 \def\newblock{\relax} % Gerry Dec. 2008
n@1116 1356 % ---
n@1116 1357 \newdimen\bibindent
n@1116 1358 \setcounter{enumi}{1}
n@1116 1359 \bibindent=0em
n@1116 1360 \def\thebibliography#1{%
n@1116 1361 \ifnum\addauflag=0\addauthorsection\global\addauflag=1\fi
n@1116 1362 \section[References]{% <=== OPTIONAL ARGUMENT ADDED HERE
n@1116 1363 {References} % was uppercased but this affects pdf bookmarks (SP/GM October 2004)
n@1116 1364 {\vskip -9pt plus 1pt} % GM Nov. 2006 / GM July 2000 (for somewhat tighter spacing)
n@1116 1365 \@mkboth{{\refname}}{{\refname}}%
n@1116 1366 }%
n@1116 1367 \list{[\arabic{enumi}]}{%
n@1116 1368 \settowidth\labelwidth{[#1]}%
n@1116 1369 \leftmargin\labelwidth
n@1116 1370 \advance\leftmargin\labelsep
n@1116 1371 \advance\leftmargin\bibindent
n@1116 1372 \parsep=0pt\itemsep=1pt % GM July 2000
n@1116 1373 \itemindent -\bibindent
n@1116 1374 \listparindent \itemindent
n@1116 1375 \usecounter{enumi}
n@1116 1376 }%
n@1116 1377 \let\newblock\@empty
n@1116 1378 \raggedright % GM July 2000
n@1116 1379 \sloppy
n@1116 1380 \sfcode`\.=1000\relax
n@1116 1381 }
n@1116 1382
n@1116 1383
n@1116 1384 \gdef\balancecolumns
n@1116 1385 {\vfill\eject
n@1116 1386 \global\@colht=\textheight
n@1116 1387 \global\ht\@cclv=\textheight
n@1116 1388 }
n@1116 1389
n@1116 1390 \newcount\colcntr
n@1116 1391 \global\colcntr=0
n@1116 1392 %\newbox\savebox
n@1116 1393 \newbox\saveb@x % January 2008
n@1116 1394
n@1116 1395 \gdef \@makecol {%
n@1116 1396 \global\advance\colcntr by 1
n@1116 1397 \ifnum\colcntr>2 \global\colcntr=1\fi
n@1116 1398 \ifvoid\footins
n@1116 1399 \setbox\@outputbox \box\@cclv
n@1116 1400 \else
n@1116 1401 \setbox\@outputbox \vbox{%
n@1116 1402 \boxmaxdepth \@maxdepth
n@1116 1403 \@tempdima\dp\@cclv
n@1116 1404 \unvbox \@cclv
n@1116 1405 \vskip-\@tempdima
n@1116 1406 \vskip \skip\footins
n@1116 1407 \color@begingroup
n@1116 1408 \normalcolor
n@1116 1409 \footnoterule
n@1116 1410 \unvbox \footins
n@1116 1411 \color@endgroup
n@1116 1412 }%
n@1116 1413 \fi
n@1116 1414 \xdef\@freelist{\@freelist\@midlist}%
n@1116 1415 \global \let \@midlist \@empty
n@1116 1416 \@combinefloats
n@1116 1417 \ifvbox\@kludgeins
n@1116 1418 \@makespecialcolbox
n@1116 1419 \else
n@1116 1420 \setbox\@outputbox \vbox to\@colht {%
n@1116 1421 \@texttop
n@1116 1422 \dimen@ \dp\@outputbox
n@1116 1423 \unvbox \@outputbox
n@1116 1424 \vskip -\dimen@
n@1116 1425 \@textbottom
n@1116 1426 }%
n@1116 1427 \fi
n@1116 1428 \global \maxdepth \@maxdepth
n@1116 1429 }
n@1116 1430 \def\titlenote{\@ifnextchar[\@xtitlenote{\stepcounter\@mpfn
n@1116 1431 \global\advance\titlenotecount by 1
n@1116 1432 \ifnum\titlenotecount=1
n@1116 1433 \raisebox{9pt}{$\ast$}
n@1116 1434 \fi
n@1116 1435 \ifnum\titlenotecount=2
n@1116 1436 \raisebox{9pt}{$\dagger$}
n@1116 1437 \fi
n@1116 1438 \ifnum\titlenotecount=3
n@1116 1439 \raisebox{9pt}{$\ddagger$}
n@1116 1440 \fi
n@1116 1441 \ifnum\titlenotecount=4
n@1116 1442 \raisebox{9pt}{$\S$}
n@1116 1443 \fi
n@1116 1444 \ifnum\titlenotecount=5
n@1116 1445 \raisebox{9pt}{$\P$}
n@1116 1446 \fi
n@1116 1447 \@titlenotetext
n@1116 1448 }}
n@1116 1449
n@1116 1450 \long\def\@titlenotetext#1{\insert\footins{%
n@1116 1451 \ifnum\titlenotecount=1\global\tntoks={#1}\fi
n@1116 1452 \ifnum\titlenotecount=2\global\tntokstwo={#1}\fi
n@1116 1453 \ifnum\titlenotecount=3\global\tntoksthree={#1}\fi
n@1116 1454 \ifnum\titlenotecount=4\global\tntoksfour={#1}\fi
n@1116 1455 \ifnum\titlenotecount=5\global\tntoksfive={#1}\fi
n@1116 1456 \reset@font\footnotesize
n@1116 1457 \interlinepenalty\interfootnotelinepenalty
n@1116 1458 \splittopskip\footnotesep
n@1116 1459 \splitmaxdepth \dp\strutbox \floatingpenalty \@MM
n@1116 1460 \hsize\columnwidth \@parboxrestore
n@1116 1461 \protected@edef\@currentlabel{%
n@1116 1462 }%
n@1116 1463 \color@begingroup
n@1116 1464 \color@endgroup}}
n@1116 1465
n@1116 1466 %%%%%%%%%%%%%%%%%%%%%%%%%
n@1116 1467 \ps@plain
n@1116 1468 \baselineskip=11pt
n@1116 1469 \let\thepage\relax % For NO page numbers - GM Nov. 30th. 1999 and July 2000
n@1116 1470 \def\setpagenumber#1{\global\setcounter{page}{#1}}
n@1116 1471 %\pagenumbering{arabic} % Arabic page numbers GM July 2000
n@1116 1472 \twocolumn % Double column.
n@1116 1473 \flushbottom % Even bottom -- alas, does not balance columns at end of document
n@1116 1474 \pagestyle{plain}
n@1116 1475
n@1116 1476 % Need Copyright Year and Copyright Data to be user definable (in .tex file).
n@1116 1477 % Gerry Nov. 30th. 1999
n@1116 1478 \newtoks\copyrtyr
n@1116 1479 \newtoks\acmcopyr
n@1116 1480 \newtoks\boilerplate
n@1116 1481 \global\acmcopyr={X-XXXXX-XX-X/XX/XX} % Default - 5/11/2001 *** Gerry
n@1116 1482 \global\copyrtyr={\the\year} % Default - 3/3/2003 *** Gerry
n@1116 1483 \def\acmPrice#1{\gdef\@acmPrice{#1}}
n@1116 1484 \acmPrice{} %article price % Changed to 15 - June 2012 - Gerry
n@1116 1485
n@1116 1486
n@1116 1487 \def\CopyrightYear#1{\global\copyrtyr{#1}}
n@1116 1488 \def\crdata#1{\global\acmcopyr{#1}}
n@1116 1489 \def\permission#1{\global\boilerplate{#1}}
n@1116 1490
n@1116 1491 % ISBN
n@1116 1492 %
n@1116 1493 \def\isbn#1{\global\acmcopyr={#1}}
n@1116 1494 \isbn{978-1-4503-2138-9}
n@1116 1495
n@1116 1496 \RequirePackage{url}
n@1116 1497 \urlstyle{rm}
n@1116 1498 \def\doi#1{\def\@doi{#1}}
n@1116 1499 \doi{10.1145/1235}
n@1116 1500 \def\printdoi#1{\url{#1}}
n@1116 1501
n@1116 1502
n@1116 1503
n@1116 1504 % Copyright
n@1116 1505 \RequirePackage{waccopyright}
n@1116 1506 \setcopyright{none}
n@1116 1507
n@1116 1508 %
n@1116 1509 \global\boilerplate={\@copyrightpermission}
n@1116 1510
n@1116 1511
n@1116 1512
n@1116 1513 \newtoks\copyrightetc
n@1116 1514 \global\copyrightetc{%
n@1116 1515 {\noindent\confname\ \the\conf\ \the\confinfo}\par\smallskip
n@1116 1516 \if@printcopyright
n@1116 1517 \copyright\ \the\copyrtyr\ \@copyrightowner
n@1116 1518 \fi
n@1116 1519 \if@acmowned ISBN \else\ifnum\acm@copyrightmode=2 ISBN \else %\par\smallskip ~
n@1116 1520 \fi\fi
n@1116 1521 % \the\acmcopyr
n@1116 1522 \ifx\@acmPrice\@empty.\else\dots\@acmPrice\fi\par%\smallskip
n@1116 1523 %{DOI: \small\expandafter\printdoi\expandafter{\@doi}%
n@1116 1524 }
n@1116 1525 \toappear{\fontsize{7pt}{8pt}\fontfamily{ptm}\selectfont
n@1116 1526 \the\boilerplate\par\smallskip
n@1116 1527 \the\copyrightetc}
n@1116 1528 %\DeclareFixedFont{\altcrnotice}{OT1}{tmr}{m}{n}{8} % << patch needed for accenting e.g. Montreal - Gerry, May 2007
n@1116 1529 %\DeclareFixedFont{\altconfname}{OT1}{tmr}{m}{it}{8} % << patch needed for accenting in italicized confname - Gerry, May 2007
n@1116 1530 %
n@1116 1531 %{\altconfname{{\the\conf}}} {\altcrnotice\the\confinfo\par} \the\copyrightetc.} % << Gerry, May 2007
n@1116 1532 %
n@1116 1533 % The following section (i.e. 3 .sty inclusions) was added in May 2007 so as to fix the problems that many
n@1116 1534 % authors were having with accents. Sometimes accents would occur, but the letter-character would be of a different
n@1116 1535 % font. Conversely the letter-character font would be correct but, e.g. a 'bar' would appear superimposed on the
n@1116 1536 % character instead of, say, an unlaut/diaresis. Sometimes the letter-character would NOT appear at all.
n@1116 1537 % Using [T1]{fontenc} outright was not an option as this caused 99% of the authors to 'produce' a Type-3 (bitmapped)
n@1116 1538 % PDF file - useless for production.
n@1116 1539 %
n@1116 1540 % For proper (font) accenting we NEED these packages to be part of the .cls file i.e. 'ae', 'aecompl' and 'aeguil'
n@1116 1541 % ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
n@1116 1542 %% This is file `ae.sty'
n@1116 1543 \def\fileversion{1.3}
n@1116 1544 \def\filedate{2001/02/12}
n@1116 1545 \NeedsTeXFormat{LaTeX2e}
n@1116 1546 %\ProvidesPackage{ae}[\filedate\space\fileversion\space % GM
n@1116 1547 % Almost European Computer Modern] % GM - keeping the log file clean(er)
n@1116 1548 \newif\if@ae@slides \@ae@slidesfalse
n@1116 1549 \DeclareOption{slides}{\@ae@slidestrue}
n@1116 1550 \ProcessOptions
n@1116 1551 \fontfamily{aer}
n@1116 1552 \RequirePackage[T1]{fontenc}
n@1116 1553 \if@ae@slides
n@1116 1554 \renewcommand{\sfdefault}{laess}
n@1116 1555 \renewcommand{\rmdefault}{laess} % no roman
n@1116 1556 \renewcommand{\ttdefault}{laett}
n@1116 1557 \else
n@1116 1558 \renewcommand{\sfdefault}{aess}
n@1116 1559 \renewcommand{\rmdefault}{aer}
n@1116 1560 \renewcommand{\ttdefault}{aett}
n@1116 1561 \fi
n@1116 1562 \DeclareRobustCommand{\ttfamily}{\fontencoding{T1}\fontfamily{lmtt}\selectfont}
n@1116 1563 \endinput
n@1116 1564 %%
n@1116 1565 %% End of file `ae.sty'.
n@1116 1566 %
n@1116 1567 %
n@1116 1568 \def\fileversion{0.9}
n@1116 1569 \def\filedate{1998/07/23}
n@1116 1570 \NeedsTeXFormat{LaTeX2e}
n@1116 1571 %\ProvidesPackage{aecompl}[\filedate\space\fileversion\space % GM
n@1116 1572 %T1 Complements for AE fonts (D. Roegel)] % GM -- keeping the log file clean(er)
n@1116 1573
n@1116 1574 \def\@ae@compl#1{{\fontencoding{T1}\fontfamily{cmr}\selectfont\symbol{#1}}}
n@1116 1575 \def\guillemotleft{\@ae@compl{19}}
n@1116 1576 \def\guillemotright{\@ae@compl{20}}
n@1116 1577 \def\guilsinglleft{\@ae@compl{14}}
n@1116 1578 \def\guilsinglright{\@ae@compl{15}}
n@1116 1579 \def\TH{\@ae@compl{222}}
n@1116 1580 \def\NG{\@ae@compl{141}}
n@1116 1581 \def\ng{\@ae@compl{173}}
n@1116 1582 \def\th{\@ae@compl{254}}
n@1116 1583 \def\DJ{\@ae@compl{208}}
n@1116 1584 \def\dj{\@ae@compl{158}}
n@1116 1585 \def\DH{\@ae@compl{208}}
n@1116 1586 \def\dh{\@ae@compl{240}}
n@1116 1587 \def\@perthousandzero{\@ae@compl{24}}
n@1116 1588 \def\textperthousand{\%\@perthousandzero}
n@1116 1589 \def\textpertenthousand{\%\@perthousandzero\@perthousandzero}
n@1116 1590 \endinput
n@1116 1591 %
n@1116 1592 %
n@1116 1593 %% This is file `aeguill.sty'
n@1116 1594 % This file gives french guillemets (and not guillemots!)
n@1116 1595 % built with the Polish CMR fonts (default), WNCYR fonts, the LASY fonts
n@1116 1596 % or with the EC fonts.
n@1116 1597 % This is useful in conjunction with the ae package
n@1116 1598 % (this package loads the ae package in case it has not been loaded)
n@1116 1599 % and with or without the french(le) package.
n@1116 1600 %
n@1116 1601 % In order to get the guillemets, it is necessary to either type
n@1116 1602 % \guillemotleft and \guillemotright, or to use an 8 bit encoding
n@1116 1603 % (such as ISO-Latin1) which selects these two commands,
n@1116 1604 % or, if you use the french package (but not the frenchle package),
n@1116 1605 % to type << or >>.
n@1116 1606 %
n@1116 1607 % By default, you get the Polish CMR guillemets; if this package is loaded
n@1116 1608 % with the `cm' option, you get the LASY guillemets; with `ec,' you
n@1116 1609 % get the EC guillemets, and with `cyr,' you get the cyrillic guillemets.
n@1116 1610 %
n@1116 1611 % In verbatim mode, you always get the EC/TT guillemets.
n@1116 1612 %
n@1116 1613 % The default option is interesting in conjunction with PDF,
n@1116 1614 % because there is a Type 1 version of the Polish CMR fonts
n@1116 1615 % and these guillemets are very close in shape to the EC guillemets.
n@1116 1616 % There are no free Type 1 versions of the EC fonts.
n@1116 1617 %
n@1116 1618 % Support for Polish CMR guillemets was kindly provided by
n@1116 1619 % Rolf Niepraschk <niepraschk@ptb.de> in version 0.99 (2000/05/22).
n@1116 1620 % Bernd Raichle provided extensive simplifications to the code
n@1116 1621 % for version 1.00.
n@1116 1622 %
n@1116 1623 % This package is released under the LPPL.
n@1116 1624 %
n@1116 1625 % Changes:
n@1116 1626 % Date version
n@1116 1627 % 2001/04/12 1.01 the frenchle and french package are now distinguished.
n@1116 1628 %
n@1116 1629 \def\fileversion{1.01}
n@1116 1630 \def\filedate{2001/04/12}
n@1116 1631 \NeedsTeXFormat{LaTeX2e}
n@1116 1632 %\ProvidesPackage{aeguill}[2001/04/12 1.01 % % GM
n@1116 1633 %AE fonts with french guillemets (D. Roegel)] % GM - keeping the log file clean(er)
n@1116 1634 %\RequirePackage{ae} % GM May 2007 - already embedded here
n@1116 1635
n@1116 1636 \newcommand{\@ae@switch}[4]{#4}
n@1116 1637 \DeclareOption{ec}{\renewcommand\@ae@switch[4]{#1}}
n@1116 1638 \DeclareOption{cm}{\renewcommand\@ae@switch[4]{#2}}
n@1116 1639 \DeclareOption{cyr}{\renewcommand\@ae@switch[4]{#3}}
n@1116 1640 \DeclareOption{pl}{\renewcommand\@ae@switch[4]{#4}}
n@1116 1641
n@1116 1642
n@1116 1643 %
n@1116 1644 % Load necessary packages
n@1116 1645 %
n@1116 1646 \@ae@switch{% ec
n@1116 1647 % do nothing
n@1116 1648 }{% cm
n@1116 1649 \RequirePackage{latexsym}% GM - May 2007 - already 'mentioned as required' up above
n@1116 1650 }{% cyr
n@1116 1651 \RequirePackage[OT2,T1]{fontenc}%
n@1116 1652 }{% pl
n@1116 1653 \RequirePackage[OT4,T1]{fontenc}%
n@1116 1654 }
n@1116 1655
n@1116 1656 % The following command will be compared to \frenchname,
n@1116 1657 % as defined in french.sty and frenchle.sty.
n@1116 1658 \def\aeguillfrenchdefault{french}%
n@1116 1659
n@1116 1660 \let\guill@verbatim@font\verbatim@font
n@1116 1661 \def\verbatim@font{\guill@verbatim@font\ecguills{cmtt}%
n@1116 1662 \let\guillemotleft\@oguills\let\guillemotright\@fguills}
n@1116 1663
n@1116 1664 \begingroup \catcode`\<=13 \catcode`\>=13
n@1116 1665 \def\x{\endgroup
n@1116 1666 \def\ae@lfguill{<<}%
n@1116 1667 \def\ae@rfguill{>>}%
n@1116 1668 }\x
n@1116 1669
n@1116 1670 \newcommand{\ecguills}[1]{%
n@1116 1671 \def\selectguillfont{\fontencoding{T1}\fontfamily{#1}\selectfont}%
n@1116 1672 \def\@oguills{{\selectguillfont\symbol{19}}}%
n@1116 1673 \def\@fguills{{\selectguillfont\symbol{20}}}%
n@1116 1674 }
n@1116 1675
n@1116 1676 \newcommand{\aeguills}{%
n@1116 1677 \ae@guills
n@1116 1678 % We redefine \guillemotleft and \guillemotright
n@1116 1679 % in order to catch them when they are used
n@1116 1680 % with \DeclareInputText (in latin1.def for instance)
n@1116 1681 % We use \auxWARNINGi as a safe indicator that french.sty is used.
n@1116 1682 \gdef\guillemotleft{\ifx\auxWARNINGi\undefined
n@1116 1683 \@oguills % neither french.sty nor frenchle.sty
n@1116 1684 \else
n@1116 1685 \ifx\aeguillfrenchdefault\frenchname
n@1116 1686 \ae@lfguill % french.sty
n@1116 1687 \else
n@1116 1688 \@oguills % frenchle.sty
n@1116 1689 \fi
n@1116 1690 \fi}%
n@1116 1691 \gdef\guillemotright{\ifx\auxWARNINGi\undefined
n@1116 1692 \@fguills % neither french.sty nor frenchle.sty
n@1116 1693 \else
n@1116 1694 \ifx\aeguillfrenchdefault\frenchname
n@1116 1695 \ae@rfguill % french.sty
n@1116 1696 \else
n@1116 1697 \@fguills % frenchle.sty
n@1116 1698 \fi
n@1116 1699 \fi}%
n@1116 1700 }
n@1116 1701
n@1116 1702 %
n@1116 1703 % Depending on the class option
n@1116 1704 % define the internal command \ae@guills
n@1116 1705 \@ae@switch{% ec
n@1116 1706 \newcommand{\ae@guills}{%
n@1116 1707 \ecguills{cmr}}%
n@1116 1708 }{% cm
n@1116 1709 \newcommand{\ae@guills}{%
n@1116 1710 \def\selectguillfont{\fontencoding{U}\fontfamily{lasy}%
n@1116 1711 \fontseries{m}\fontshape{n}\selectfont}%
n@1116 1712 \def\@oguills{\leavevmode\nobreak
n@1116 1713 \hbox{\selectguillfont (\kern-.20em(\kern.20em}\nobreak}%
n@1116 1714 \def\@fguills{\leavevmode\nobreak
n@1116 1715 \hbox{\selectguillfont \kern.20em)\kern-.2em)}%
n@1116 1716 \ifdim\fontdimen\@ne\font>\z@\/\fi}}%
n@1116 1717 }{% cyr
n@1116 1718 \newcommand{\ae@guills}{%
n@1116 1719 \def\selectguillfont{\fontencoding{OT2}\fontfamily{wncyr}\selectfont}%
n@1116 1720 \def\@oguills{{\selectguillfont\symbol{60}}}%
n@1116 1721 \def\@fguills{{\selectguillfont\symbol{62}}}}
n@1116 1722 }{% pl
n@1116 1723 \newcommand{\ae@guills}{%
n@1116 1724 \def\selectguillfont{\fontencoding{OT4}\fontfamily{cmr}\selectfont}%
n@1116 1725 \def\@oguills{{\selectguillfont\symbol{174}}}%
n@1116 1726 \def\@fguills{{\selectguillfont\symbol{175}}}}
n@1116 1727 }
n@1116 1728
n@1116 1729
n@1116 1730 \AtBeginDocument{%
n@1116 1731 \ifx\GOfrench\undefined
n@1116 1732 \aeguills
n@1116 1733 \else
n@1116 1734 \let\aeguill@GOfrench\GOfrench
n@1116 1735 \gdef\GOfrench{\aeguill@GOfrench \aeguills}%
n@1116 1736 \fi
n@1116 1737 }
n@1116 1738
n@1116 1739 \endinput
n@1116 1740 %
n@1116 1741