annotate nime2012/NIME-alternate.cls @ 58:a63c438b3f65 tip

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