]> AND Private Git Repository - LiCO.git/blob - PeCO/acmsmall.cls
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Update by Ali
[LiCO.git] / PeCO / acmsmall.cls
1 %% acmsmall.cls - version 1.4  (with ACM Reference Format)\r
2 %% Aptara Inc., dated 9 July 2012\r
3 %% (c) 2011 Association for Computing Machinery (ACM)\r
4 %% For small trim journals\r
5 %%\r
6 %% Based on ESUB2ACM.CLS V1.2 - November 10th. 1999\r
7 %%\r
8 %% If you face any problem while working with this class file or have any feedback/suggestion, \r
9 %% please contact ACM Support helpline at: "acmtexsupport@aptaracorp.com".\r
10 %% Users can also go through the FAQs available on the journal's submission webpage.\r
11 %%\r
12 %% Version 1.4 (History)\r
13 %% ---------------------\r
14 %% 1) All citation formats are also redefined after\r
15 %%    checking the loading condition of natbib.sty \r
16 %% 2) Added an option called 'prodmode', which uses New Century School Book\r
17 %%    and Helvetica as base and second font respectively after\r
18 %%    feedback from Joanne (Dated 28/06/2010) to simulate print output.\r
19 %% 3) Changed running head style (Joanne 02/07/2010)\r
20 %% 4) Added three new transactions (Jono 14/07/2010)\r
21 %% 5) Added four new transactions/journals (Joanne 04/11/2011)\r
22 %% 6) Added newtheorem definition for 'conjecture'\r
23 %% 7) Trimmed the 'double outputting' of the DOI/URL beneath ACM Reference Format (before 1. INTRODUCTION)\r
24 %%    and also beneath the Permission Statement/copyright line. Also inserted the "http://dx.doi.org" stem. (Gerry Murray, March 2012)\r
25 %% 8) Changed the price charged/article information from $10.00 to $15.00 (Gerry 24/05/2012)\r
26 %% 9) Added 'TEAC' - July 9th. 2012 \r
27 %% 10) Added 'TOPC' - January 18th. 2013 \r
28 %% 11) Added TOMM from acmlarge design on 2014/05/28 (Aptara)\r
29 %% 12) Added new journals (TSAS and TOMPECS) on 2014/09/10 (Aptara)\r
30 %% 13) a. Change the journal name TALLIP (formerly TALIP) 2014/12/09 (Aptara)\r
31 %%     b. Added issn numbers for TOMPECS 2014/12/09 (Aptara)\r
32 %%\r
33 %% Steps to compile: latex, bibtex, latex latex\r
34 %%\r
35 %% \CharacterTable\r
36 %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z\r
37 %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z\r
38 %%   Digits        \0\1\2\3\4\5\6\7\8\9\r
39 %%   Exclamation   \!     Double quote  \"     Hash (number) \#\r
40 %%   Dollar        \$     Percent       \%     Ampersand     \&\r
41 %%   Acute accent  \'     Left paren    \(     Right paren   \)\r
42 %%   Asterisk      \*     Plus          \+     Comma         \,\r
43 %%   Minus         \-     Point         \.     Solidus       \/\r
44 %%   Colon         \:     Semicolon     \;     Less than     \<\r
45 %%   Equals        \=     Greater than  \>     Question mark \?\r
46 %%   Commercial at \@     Left bracket  \[     Backslash     \\\r
47 %%   Right bracket \]     Circumflex    \^     Underscore    \_\r
48 %%   Grave accent  \`     Left brace    \{     Vertical bar  \|\r
49 %%   Right brace   \}     Tilde         \~}\r
50 %%\r
51 %% Bibliographic cite forms needed:\r
52 %%\r
53 %%  \cite{key}\r
54 %%    which produces citations with author list and year.\r
55 %%    eg. [Brown 1978; Jarke, et al. 1985]\r
56 %%  \citeA{key}\r
57 %%    which produces citations with only the author list.\r
58 %%    eg. [Brown; Jarke, et al.]\r
59 %%  \citeN{key}\r
60 %%    which produces citations with the author list and year, but\r
61 %%    can be used as nouns in a sentence; no brackets appear around\r
62 %%    the author names, but only around the year.\r
63 %%      eg. Shneiderman [1978] states that......\r
64 %%    \citeN should only be used for a single citation.\r
65 %%    \citeNN{refkey1,refkey2} for author [ref1year; ref2year]\r
66 %%    \citeyear{key}\r
67 %%        which produces the year information only, within brackets.\r
68 %%\r
69 %% Abbreviated author lists use the ``et al.'' construct.\r
70 %%\r
71 %% The above are examples of required ACM bibliographic cite formats needed.\r
72 %% *******************\r
73 %% Here is the complete list of cite forms from the chicago bibliographic style\r
74 %%\r
75 %%  \cite{key}\r
76 %%    which produces citations with abbreviated author list and year.\r
77 %%  \citeNP{key}\r
78 %%    which produces citations with abbreviated author list and year.\r
79 %%  \citeA{key}\r
80 %%    which produces only the abbreviated author list.\r
81 %%  \citeANP{key}\r
82 %%    which produces only the abbreviated author list.\r
83 %%  \citeN{key}\r
84 %%    which produces the abbreviated author list and year, with only the\r
85 %%    year in parentheses. Use with only one citation.\r
86 %%  \citeyear{key}\r
87 %%    which produces the year information only, within parentheses.\r
88 %%  \citeyearNP{key}\r
89 %%    which produces the year information only.\r
90 %%\r
91 %% Abbreviated author lists use the ``et al.'' construct.\r
92 %%\r
93 %% `NP' means `no parentheses' \r
94 %%\r
95 \NeedsTeXFormat{LaTeX2e}\r
96 \ProvidesClass{acmsmall}[2012/03/05, fonts included on 28 June 2010]\r
97 \r
98 \def\fileversion{v1.4}            \r
99 \def\filedate{July 09, 2012}\r
100 \r
101 % Metadata Information\r
102 \def\@acmVolume{V} %the volume\r
103 \def\@acmNumber{N} %the number\r
104 \def\@acmArticle{A} %article number\r
105 \def\@articleSeq{1} %article Sequence\r
106 \def\@acmPrice{15.00} %article price  % Changed to 15 - June 2012 - Gerry\r
107 \def\@acmYear{YYYY} %the last two digits of the year, \r
108 \def\@acmMonth{1}  %the month\r
109 \def\@journalName{ACM Journal Name} %the name of the ACM journal\r
110 \def\@journalNameShort{ACM} %the acronym of the ACM journal \r
111 \def\@journalCode{jn} %the code of the ACM journal \r
112 \def\@permissionCodeOne{0000-0000} %the permission code of the ACM journal\r
113 \def\@doi{0000000.0000000} % These 'default' '0' values are over-ridden, during production, with 'correct' numbers entered via source .tex file - Gerry March 2012\r
114 \r
115 % ----------------\r
116 % Gerry - April 2011 - To assist in the formatting of the NEW ACM Reference format - 'DOI' in tt font, and url string in default\r
117 \usepackage{url}\r
118 \def\UrlFont{}\r
119 \newcommand{\BIBand}{\&}\r
120 \def\showDOI#1{\mbox{{\tt DOI:}{#1}}} % Gerry April 2011 - forces the DOI: to 'stay' with the 'url-(string)link' (no need for space at end either)\r
121 % ----------------\r
122 \r
123 \if@compatibility\else\r
124 \DeclareOption{letterpaper}\r
125    {\setlength\paperheight {11in}%\r
126     \setlength\paperwidth  {8.5in}%\r
127     \setlength\voffset     {-38.2pt}%\r
128     \setlength\hoffset     {-8.25pt}%\r
129     \def\special@paper{8.5in,11in}\r
130         % Needed to set PDF page size\r
131         \special{papersize=8.5in,11in}}\r
132 \DeclareOption{landscape}\r
133    {\setlength\@tempdima   {\paperheight}%\r
134     \setlength\paperheight {\paperwidth}%\r
135     \setlength\paperwidth  {\@tempdima}}\r
136 \fi\r
137 \r
138 \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}\r
139 \DeclareOption{twoside}{\@twosidetrue  \@mparswitchtrue}\r
140 \r
141 \DeclareOption{final}{\setlength\overfullrule{0pt}}\r
142 \r
143 \DeclareOption{10pt}{\def\@ptsize{0}} %needed for amssymbols.sty \r
144 \DeclareOption{11pt}{\ClassError{acmsmall}{11pt style not supported}\r
145                         {ACM transactions/journals documents can be set in 10pt only}}\r
146 \DeclareOption{12pt}{\ClassError{acmtrans}{12pt style not supported}\r
147                         {ACM transactions/journals documents can be set in 10pt only}}\r
148 \r
149 \newif\ifprod@mode\prod@modefalse\r
150 \DeclareOption{prodmode}{\global\prod@modetrue\r
151 \typeout{ACM, Production Font style: 2010/06/28 by Aptara}}\r
152 \r
153 \newif\if@acmtopc\r
154 \newif\if@acmjacm\r
155 \newif\if@acmtissec\r
156 \newif\if@acmtocl\r
157 \newif\if@acmtocs\r
158 \newif\if@acmtochi\r
159 \newif\if@acmtodaes\r
160 \newif\if@acmtods\r
161 \newif\if@acmtois\r
162 \newif\if@acmtomacs\r
163 \newif\if@acmtoms\r
164 \newif\if@acmtoplas\r
165 \newif\if@acmtosem\r
166 \newif\if@acmtoit\r
167 \newif\if@acmtecs\r
168 \newif\if@acmtallip\r
169 \newif\if@acmjeric\r
170 \newif\if@acmtaco\r
171 \newif\if@acmjea\r
172 \newif\if@acmtslp\r
173 \newif\if@acmcie\r
174 \newif\if@acmtos\r
175 \newif\if@acmcsur\r
176 \newif\if@acmjetc\r
177 \newif\if@acmtosn\r
178 \newif\if@acmtalg\r
179 \newif\if@acmtaas\r
180 \newif\if@acmtweb\r
181 \newif\if@acmtkdd\r
182 \newif\if@acmtrets\r
183 \newif\if@acmtmis\r
184 \newif\if@acmtiis\r
185 \newif\if@acmtist\r
186 \newif\if@acmtoct\r
187 \newif\if@acmjdiq\r
188 \newif\if@acmtaccess\r
189 \newif\if@acmtoce\r
190 \newif\if@acmteac\r
191 \newif\if@acmtomm\r
192 \newif\if@acmtsas\r
193 \newif\if@acmtompecs\r
194 \r
195 % Journal Options\r
196 \DeclareOption{acmtopc}{\r
197   \typeout{}\r
198   \typeout{Using ACM, TOPC's option: 2013/01/18 by Aptara}\r
199   \typeout{}\r
200   \global\@acmtopctrue\r
201   \global\@acmjacmfalse\r
202   \global\@acmtissecfalse\r
203   \global\@acmtoclfalse\r
204   \global\@acmtocsfalse\r
205   \global\@acmtochifalse\r
206   \global\@acmtodaesfalse\r
207   \global\@acmtodsfalse\r
208   \global\@acmtoisfalse\r
209   \global\@acmtomacsfalse\r
210   \global\@acmtomsfalse\r
211   \global\@acmtoplasfalse\r
212   \global\@acmtosemfalse\r
213   \global\@acmtoitfalse\r
214   \global\@acmtecsfalse\r
215   \global\@acmtallipfalse\r
216   \global\@acmjericfalse\r
217   \global\@acmtacofalse\r
218   \global\@acmjeafalse\r
219   \global\@acmtslpfalse\r
220   \global\@acmciefalse\r
221   \global\@acmtosfalse\r
222   \global\@acmcsurfalse\r
223   \global\@acmjetcfalse\r
224   \global\@acmtosnfalse\r
225   \global\@acmtalgfalse\r
226   \global\@acmtaasfalse\r
227   \global\@acmtwebfalse\r
228   \global\@acmtkddfalse\r
229   \global\@acmtretsfalse\r
230   \global\@acmtmisfalse\r
231   \global\@acmtiisfalse\r
232   \global\@acmtistfalse\r
233   \global\@acmtoctfalse\r
234   \global\@acmjdiqfalse\r
235   \global\@acmtaccessfalse\r
236   \global\@acmtocefalse\r
237   \global\@acmteacfalse\r
238   \global\@acmtommfalse\r
239   \global\@acmtsasfalse\r
240   \global\@acmtompecsfalse\r
241   \def\@journalName{ACM Transactions on Parallel Computing}\r
242   \def\@journalNameShort{ACM Trans. Parallel Comput.}\r
243   \def\@journalCode{topc}        \r
244   \def\@permissionCodeOne{1539-9087} \r
245 }\r
246 \r
247 \DeclareOption{acmjacm}{\r
248   \typeout{}\r
249   \typeout{Using ACM, JACM's option: 2010/05/04 by Aptara}\r
250   \typeout{}\r
251   \global\@acmjacmtrue\r
252   \global\@acmtissecfalse\r
253   \global\@acmtoclfalse\r
254   \global\@acmtocsfalse\r
255   \global\@acmtochifalse\r
256   \global\@acmtodaesfalse\r
257   \global\@acmtodsfalse\r
258   \global\@acmtoisfalse\r
259   \global\@acmtomacsfalse\r
260   \global\@acmtomsfalse\r
261   \global\@acmtoplasfalse\r
262   \global\@acmtosemfalse\r
263   \global\@acmtoitfalse\r
264   \global\@acmtecsfalse\r
265   \global\@acmtallipfalse\r
266   \global\@acmjericfalse\r
267   \global\@acmtacofalse\r
268   \global\@acmjeafalse\r
269   \global\@acmtslpfalse\r
270   \global\@acmciefalse\r
271   \global\@acmtosfalse\r
272   \global\@acmcsurfalse\r
273   \global\@acmjetcfalse\r
274   \global\@acmtosnfalse\r
275   \global\@acmtalgfalse\r
276   \global\@acmtaasfalse\r
277   \global\@acmtwebfalse\r
278   \global\@acmtkddfalse\r
279   \global\@acmtretsfalse\r
280   \global\@acmtmisfalse\r
281   \global\@acmtiisfalse\r
282   \global\@acmtistfalse\r
283   \global\@acmtoctfalse\r
284   \global\@acmjdiqfalse\r
285   \global\@acmtaccessfalse\r
286   \global\@acmtocefalse\r
287   \global\@acmteacfalse\r
288   \global\@acmtommfalse\r
289   \global\@acmtsasfalse\r
290   \global\@acmtompecsfalse\r
291   \def\@journalName{Journal of the ACM}\r
292   \def\@journalNameShort{J. ACM}        \r
293   \def\@journalCode{jacm}        \r
294   \def\@permissionCodeOne{0004-5411} \r
295 }\r
296 \r
297 \DeclareOption{acmtissec}{\r
298   \typeout{}\r
299   \typeout{Using ACM, TISSEC's option: 2010/05/04 by Aptara}\r
300   \typeout{}\r
301   \global\@acmjacmfalse\r
302   \global\@acmtissectrue\r
303   \global\@acmtoclfalse\r
304   \global\@acmtocsfalse\r
305   \global\@acmtochifalse\r
306   \global\@acmtodaesfalse\r
307   \global\@acmtodsfalse\r
308   \global\@acmtoisfalse\r
309   \global\@acmtomacsfalse\r
310   \global\@acmtomsfalse\r
311   \global\@acmtoplasfalse\r
312   \global\@acmtosemfalse\r
313   \global\@acmtoitfalse\r
314   \global\@acmtecsfalse\r
315   \global\@acmtallipfalse\r
316   \global\@acmjericfalse\r
317   \global\@acmtacofalse\r
318   \global\@acmjeafalse\r
319   \global\@acmtslpfalse\r
320   \global\@acmciefalse\r
321   \global\@acmtosfalse\r
322   \global\@acmcsurfalse\r
323   \global\@acmjetcfalse\r
324   \global\@acmtosnfalse\r
325   \global\@acmtalgfalse\r
326   \global\@acmtaasfalse\r
327   \global\@acmtwebfalse\r
328   \global\@acmtkddfalse\r
329   \global\@acmtretsfalse\r
330   \global\@acmtmisfalse\r
331   \global\@acmtiisfalse\r
332   \global\@acmtistfalse\r
333   \global\@acmtoctfalse\r
334   \global\@acmjdiqfalse\r
335   \global\@acmtaccessfalse\r
336   \global\@acmtocefalse\r
337   \global\@acmteacfalse\r
338   \global\@acmtommfalse\r
339   \global\@acmtsasfalse\r
340   \global\@acmtompecsfalse\r
341   \def\@journalName{ACM Transactions on Information and System Security}\r
342   \def\@journalNameShort{ACM Trans. Info. Syst. Sec.}\r
343   \def\@journalCode{tissec}\r
344   \def\@permissionCodeOne{1094-9224}\r
345 }\r
346 \r
347 \DeclareOption{acmtocl}{\r
348   \typeout{}\r
349   \typeout{Using ACM, TOCL's option: 2010/05/04 by Aptara}\r
350   \typeout{}\r
351   \global\@acmjacmfalse\r
352   \global\@acmtissecfalse\r
353   \global\@acmtocltrue\r
354   \global\@acmtocsfalse\r
355   \global\@acmtochifalse\r
356   \global\@acmtodaesfalse\r
357   \global\@acmtodsfalse\r
358   \global\@acmtoisfalse\r
359   \global\@acmtomacsfalse\r
360   \global\@acmtomsfalse\r
361   \global\@acmtoplasfalse\r
362   \global\@acmtosemfalse\r
363   \global\@acmtoitfalse\r
364   \global\@acmtecsfalse\r
365   \global\@acmtallipfalse\r
366   \global\@acmjericfalse\r
367   \global\@acmtacofalse\r
368   \global\@acmjeafalse\r
369   \global\@acmtslpfalse\r
370   \global\@acmciefalse\r
371   \global\@acmtosfalse\r
372   \global\@acmcsurfalse\r
373   \global\@acmjetcfalse\r
374   \global\@acmtosnfalse\r
375   \global\@acmtalgfalse\r
376   \global\@acmtaasfalse\r
377   \global\@acmtwebfalse\r
378   \global\@acmtkddfalse\r
379   \global\@acmtretsfalse\r
380   \global\@acmtmisfalse\r
381   \global\@acmtiisfalse\r
382   \global\@acmtistfalse\r
383   \global\@acmtoctfalse\r
384   \global\@acmjdiqfalse\r
385   \global\@acmtaccessfalse\r
386   \global\@acmtocefalse\r
387   \global\@acmteacfalse\r
388   \global\@acmtommfalse\r
389   \global\@acmtsasfalse\r
390   \global\@acmtompecsfalse\r
391   \def\@journalName{ACM Transactions on Computational Logic}\r
392   \def\@journalNameShort{ACM Trans. Comput. Logic}\r
393   \def\@journalCode{tocl}        \r
394   \def\@permissionCodeOne{1529-3785} \r
395 }\r
396 \r
397 \DeclareOption{acmtocs}{\r
398   \typeout{}\r
399   \typeout{Using ACM, TOCS's option: 2010/05/04 by Aptara}\r
400   \typeout{}\r
401   \global\@acmjacmfalse\r
402   \global\@acmtissecfalse\r
403   \global\@acmtoclfalse\r
404   \global\@acmtocstrue\r
405   \global\@acmtochifalse\r
406   \global\@acmtodaesfalse\r
407   \global\@acmtodsfalse\r
408   \global\@acmtoisfalse\r
409   \global\@acmtomacsfalse\r
410   \global\@acmtomsfalse\r
411   \global\@acmtoplasfalse\r
412   \global\@acmtosemfalse\r
413   \global\@acmtoitfalse\r
414   \global\@acmtecsfalse\r
415   \global\@acmtallipfalse\r
416   \global\@acmjericfalse\r
417   \global\@acmtacofalse\r
418   \global\@acmjeafalse\r
419   \global\@acmtslpfalse\r
420   \global\@acmciefalse\r
421   \global\@acmtosfalse\r
422   \global\@acmcsurfalse\r
423   \global\@acmjetcfalse\r
424   \global\@acmtosnfalse\r
425   \global\@acmtalgfalse\r
426   \global\@acmtaasfalse\r
427   \global\@acmtwebfalse\r
428   \global\@acmtkddfalse\r
429   \global\@acmtretsfalse\r
430   \global\@acmtmisfalse\r
431   \global\@acmtiisfalse\r
432   \global\@acmtistfalse\r
433   \global\@acmtoctfalse\r
434   \global\@acmjdiqfalse\r
435   \global\@acmtaccessfalse\r
436   \global\@acmtocefalse\r
437   \global\@acmteacfalse\r
438   \global\@acmtommfalse\r
439   \global\@acmtsasfalse\r
440   \global\@acmtompecsfalse\r
441   \def\@journalName{ACM Transactions on Computer Systems}\r
442   \def\@journalNameShort{ACM Trans. Comput. Syst.}\r
443   \def\@journalCode{tocs}        \r
444   \def\@permissionCodeOne{0734-2071} \r
445 }\r
446 \r
447 \DeclareOption{acmtochi}{\r
448   \typeout{}\r
449   \typeout{Using ACM, TOCHI's option: 2010/05/04 by Aptara}\r
450   \typeout{}\r
451   \global\@acmjacmfalse\r
452   \global\@acmtissecfalse\r
453   \global\@acmtoclfalse\r
454   \global\@acmtocsfalse\r
455   \global\@acmtochitrue\r
456   \global\@acmtodaesfalse\r
457   \global\@acmtodsfalse\r
458   \global\@acmtoisfalse\r
459   \global\@acmtomacsfalse\r
460   \global\@acmtomsfalse\r
461   \global\@acmtoplasfalse\r
462   \global\@acmtosemfalse\r
463   \global\@acmtoitfalse\r
464   \global\@acmtecsfalse\r
465   \global\@acmtallipfalse\r
466   \global\@acmjericfalse\r
467   \global\@acmtacofalse\r
468   \global\@acmjeafalse\r
469   \global\@acmtslpfalse\r
470   \global\@acmciefalse\r
471   \global\@acmtosfalse\r
472   \global\@acmcsurfalse\r
473   \global\@acmjetcfalse\r
474   \global\@acmtosnfalse\r
475   \global\@acmtalgfalse\r
476   \global\@acmtaasfalse\r
477   \global\@acmtwebfalse\r
478   \global\@acmtkddfalse\r
479   \global\@acmtretsfalse\r
480   \global\@acmtmisfalse\r
481   \global\@acmtiisfalse\r
482   \global\@acmtistfalse\r
483   \global\@acmtoctfalse\r
484   \global\@acmjdiqfalse\r
485   \global\@acmtaccessfalse\r
486   \global\@acmtocefalse\r
487   \global\@acmteacfalse\r
488   \global\@acmtommfalse\r
489   \global\@acmtsasfalse\r
490   \global\@acmtompecsfalse\r
491   \def\@journalName{ACM Transactions on Computer-Human Interaction}\r
492   \def\@journalNameShort{ACM Trans. Comput.-Hum. Interact.}\r
493   \def\@journalCode{tochi}        \r
494   \def\@permissionCodeOne{1073-0516} \r
495 }\r
496 \r
497 \DeclareOption{acmtodaes}{\r
498   \typeout{}\r
499   \typeout{Using ACM, TODAES option: 2010/05/04 by Aptara}\r
500   \typeout{}\r
501   \global\@acmjacmfalse\r
502   \global\@acmtissecfalse\r
503   \global\@acmtoclfalse\r
504   \global\@acmtocsfalse\r
505   \global\@acmtochifalse\r
506   \global\@acmtodaestrue\r
507   \global\@acmtodsfalse\r
508   \global\@acmtoisfalse\r
509   \global\@acmtomacsfalse\r
510   \global\@acmtomsfalse\r
511   \global\@acmtoplasfalse\r
512   \global\@acmtosemfalse\r
513   \global\@acmtoitfalse\r
514   \global\@acmtecsfalse\r
515   \global\@acmtallipfalse\r
516   \global\@acmjericfalse\r
517   \global\@acmtacofalse\r
518   \global\@acmjeafalse\r
519   \global\@acmtslpfalse\r
520   \global\@acmciefalse\r
521   \global\@acmtosfalse\r
522   \global\@acmcsurfalse\r
523   \global\@acmjetcfalse\r
524   \global\@acmtosnfalse\r
525   \global\@acmtalgfalse\r
526   \global\@acmtaasfalse\r
527   \global\@acmtwebfalse\r
528   \global\@acmtkddfalse\r
529   \global\@acmtretsfalse\r
530   \global\@acmtmisfalse\r
531   \global\@acmtiisfalse\r
532   \global\@acmtistfalse\r
533   \global\@acmtoctfalse\r
534   \global\@acmjdiqfalse\r
535   \global\@acmtaccessfalse\r
536   \global\@acmtocefalse\r
537   \global\@acmteacfalse\r
538   \global\@acmtommfalse\r
539   \global\@acmtsasfalse\r
540   \global\@acmtompecsfalse\r
541   \def\@journalName{ACM Transactions on Design Automation of Electronic Systems}\r
542   \def\@journalNameShort{ACM Trans. Des. Autom. Electron. Syst.}\r
543   \def\@journalCode{todaes}        \r
544   \def\@permissionCodeOne{1084-4309} \r
545 }\r
546 \r
547 \DeclareOption{acmtods}{\r
548   \typeout{}\r
549   \typeout{Using ACM, TODS's option: 2010/05/04 by Aptara}\r
550   \typeout{}\r
551   \global\@acmjacmfalse\r
552   \global\@acmtissecfalse\r
553   \global\@acmtoclfalse\r
554   \global\@acmtocsfalse\r
555   \global\@acmtochifalse\r
556   \global\@acmtodaesfalse\r
557   \global\@acmtodstrue\r
558   \global\@acmtoisfalse\r
559   \global\@acmtomacsfalse\r
560   \global\@acmtomsfalse\r
561   \global\@acmtoplasfalse\r
562   \global\@acmtosemfalse\r
563   \global\@acmtoitfalse\r
564   \global\@acmtecsfalse\r
565   \global\@acmtallipfalse\r
566   \global\@acmjericfalse\r
567   \global\@acmtacofalse\r
568   \global\@acmjeafalse\r
569   \global\@acmtslpfalse\r
570   \global\@acmciefalse\r
571   \global\@acmtosfalse\r
572   \global\@acmcsurfalse\r
573   \global\@acmjetcfalse\r
574   \global\@acmtosnfalse\r
575   \global\@acmtalgfalse\r
576   \global\@acmtaasfalse\r
577   \global\@acmtwebfalse\r
578   \global\@acmtkddfalse\r
579   \global\@acmtretsfalse\r
580   \global\@acmtmisfalse\r
581   \global\@acmtiisfalse\r
582   \global\@acmtistfalse\r
583   \global\@acmtoctfalse\r
584   \global\@acmjdiqfalse\r
585   \global\@acmtaccessfalse\r
586   \global\@acmtocefalse\r
587   \global\@acmteacfalse\r
588   \global\@acmtommfalse\r
589   \global\@acmtsasfalse\r
590   \global\@acmtompecsfalse\r
591   \def\@journalName{ACM Transactions on Database Systems}\r
592   \def\@journalNameShort{ACM Trans. Datab. Syst.}\r
593   \def\@journalCode{tods}        \r
594   \def\@permissionCodeOne{0362-5915}\r
595 }\r
596 \r
597 \DeclareOption{acmtois}{\r
598   \typeout{}\r
599   \typeout{Using ACM, TOIS's option: 2010/05/04 by Aptara}\r
600   \typeout{}\r
601   \global\@acmjacmfalse\r
602   \global\@acmtissecfalse\r
603   \global\@acmtoclfalse\r
604   \global\@acmtocsfalse\r
605   \global\@acmtochifalse\r
606   \global\@acmtodaesfalse\r
607   \global\@acmtodsfalse\r
608   \global\@acmtoistrue\r
609   \global\@acmtomacsfalse\r
610   \global\@acmtomsfalse\r
611   \global\@acmtoplasfalse\r
612   \global\@acmtosemfalse\r
613   \global\@acmtoitfalse\r
614   \global\@acmtecsfalse\r
615   \global\@acmtallipfalse\r
616   \global\@acmjericfalse\r
617   \global\@acmtacofalse\r
618   \global\@acmjeafalse\r
619   \global\@acmtslpfalse\r
620   \global\@acmciefalse\r
621   \global\@acmtosfalse\r
622   \global\@acmcsurfalse\r
623   \global\@acmjetcfalse\r
624   \global\@acmtosnfalse\r
625   \global\@acmtalgfalse\r
626   \global\@acmtaasfalse\r
627   \global\@acmtwebfalse\r
628   \global\@acmtkddfalse\r
629   \global\@acmtretsfalse\r
630   \global\@acmtmisfalse\r
631   \global\@acmtiisfalse\r
632   \global\@acmtistfalse\r
633   \global\@acmtoctfalse\r
634   \global\@acmjdiqfalse\r
635   \global\@acmtaccessfalse\r
636   \global\@acmtocefalse\r
637   \global\@acmteacfalse\r
638   \global\@acmtommfalse\r
639   \global\@acmtsasfalse\r
640   \global\@acmtompecsfalse\r
641   \def\@journalName{ACM Transactions on Information Systems}\r
642   \def\@journalNameShort{ACM Trans. Inf. Syst.}\r
643   \def\@journalCode{tois}        \r
644   \def\@permissionCodeOne{1046-8188} \r
645 }\r
646 \r
647 \DeclareOption{acmtomacs}{\r
648   \typeout{}\r
649   \typeout{Using ACM, TOMACS's option: 2010/05/04 by Aptara}\r
650   \typeout{}\r
651   \global\@acmjacmfalse\r
652   \global\@acmtissecfalse\r
653   \global\@acmtoclfalse\r
654   \global\@acmtocsfalse\r
655   \global\@acmtochifalse\r
656   \global\@acmtodaesfalse\r
657   \global\@acmtodsfalse\r
658   \global\@acmtoisfalse\r
659   \global\@acmtomacstrue\r
660   \global\@acmtomsfalse\r
661   \global\@acmtoplasfalse\r
662   \global\@acmtosemfalse\r
663   \global\@acmtoitfalse\r
664   \global\@acmtecsfalse\r
665   \global\@acmtallipfalse\r
666   \global\@acmjericfalse\r
667   \global\@acmtacofalse\r
668   \global\@acmjeafalse\r
669   \global\@acmtslpfalse\r
670   \global\@acmciefalse\r
671   \global\@acmtosfalse\r
672   \global\@acmcsurfalse\r
673   \global\@acmjetcfalse\r
674   \global\@acmtosnfalse\r
675   \global\@acmtalgfalse\r
676   \global\@acmtaasfalse\r
677   \global\@acmtwebfalse\r
678   \global\@acmtkddfalse\r
679   \global\@acmtretsfalse\r
680   \global\@acmtmisfalse\r
681   \global\@acmtiisfalse\r
682   \global\@acmtistfalse\r
683   \global\@acmtoctfalse\r
684   \global\@acmjdiqfalse\r
685   \global\@acmtaccessfalse\r
686   \global\@acmtocefalse\r
687   \global\@acmteacfalse\r
688   \global\@acmtommfalse\r
689   \global\@acmtsasfalse\r
690   \global\@acmtompecsfalse\r
691   \def\@journalName{ACM Transactions on Modeling and Computer Simulation}\r
692   \def\@journalNameShort{ACM Trans. Model. Comput. Simul.}\r
693   \def\@journalCode{tomacs}\r
694   \def\@permissionCodeOne{1049-3301} \r
695 }\r
696 \r
697 \DeclareOption{acmtoms}{\r
698   \typeout{}\r
699   \typeout{Using ACM, TOMS's option: 2010/05/04 by Aptara}\r
700   \typeout{}\r
701   \global\@acmjacmfalse\r
702   \global\@acmtissecfalse\r
703   \global\@acmtoclfalse\r
704   \global\@acmtocsfalse\r
705   \global\@acmtochifalse\r
706   \global\@acmtodaesfalse\r
707   \global\@acmtodsfalse\r
708   \global\@acmtoisfalse\r
709   \global\@acmtomacsfalse\r
710   \global\@acmtomstrue\r
711   \global\@acmtoplasfalse\r
712   \global\@acmtosemfalse\r
713   \global\@acmtoitfalse\r
714   \global\@acmtecsfalse\r
715   \global\@acmtallipfalse\r
716   \global\@acmjericfalse\r
717   \global\@acmtacofalse\r
718   \global\@acmjeafalse\r
719   \global\@acmtslpfalse\r
720   \global\@acmciefalse\r
721   \global\@acmtosfalse\r
722   \global\@acmcsurfalse\r
723   \global\@acmjetcfalse\r
724   \global\@acmtosnfalse\r
725   \global\@acmtalgfalse\r
726   \global\@acmtaasfalse\r
727   \global\@acmtwebfalse\r
728   \global\@acmtkddfalse\r
729   \global\@acmtretsfalse\r
730   \global\@acmtmisfalse\r
731   \global\@acmtiisfalse\r
732   \global\@acmtistfalse\r
733   \global\@acmtoctfalse\r
734   \global\@acmjdiqfalse\r
735   \global\@acmtaccessfalse\r
736   \global\@acmtocefalse\r
737   \global\@acmteacfalse\r
738   \global\@acmtommfalse\r
739   \global\@acmtsasfalse\r
740   \global\@acmtompecsfalse\r
741   \def\@journalName{ACM Transactions on Mathematical Software}\r
742   \def\@journalNameShort{ACM Trans. Math. Softw.}\r
743   \def\@journalCode{toms}        \r
744   \def\@permissionCodeOne{0098-3500} \r
745 }\r
746 \r
747 \DeclareOption{acmtoplas}{\r
748   \typeout{}\r
749   \typeout{Using ACM, TOPLAS option: 2010/05/04 by Aptara}\r
750   \typeout{}\r
751   \global\@acmjacmfalse\r
752   \global\@acmtissecfalse\r
753   \global\@acmtoclfalse\r
754   \global\@acmtocsfalse\r
755   \global\@acmtochifalse\r
756   \global\@acmtodaesfalse\r
757   \global\@acmtodsfalse\r
758   \global\@acmtoisfalse\r
759   \global\@acmtomacsfalse\r
760   \global\@acmtomsfalse\r
761   \global\@acmtoplastrue\r
762   \global\@acmtosemfalse\r
763   \global\@acmtoitfalse\r
764   \global\@acmtecsfalse\r
765   \global\@acmtallipfalse\r
766   \global\@acmjericfalse\r
767   \global\@acmtacofalse\r
768   \global\@acmjeafalse\r
769   \global\@acmtslpfalse\r
770   \global\@acmciefalse\r
771   \global\@acmtosfalse\r
772   \global\@acmcsurfalse\r
773   \global\@acmjetcfalse\r
774   \global\@acmtosnfalse\r
775   \global\@acmtalgfalse\r
776   \global\@acmtaasfalse\r
777   \global\@acmtwebfalse\r
778   \global\@acmtkddfalse\r
779   \global\@acmtretsfalse\r
780   \global\@acmtmisfalse\r
781   \global\@acmtiisfalse\r
782   \global\@acmtistfalse\r
783   \global\@acmtoctfalse\r
784   \global\@acmjdiqfalse\r
785   \global\@acmtaccessfalse\r
786   \global\@acmtocefalse\r
787   \global\@acmteacfalse\r
788   \global\@acmtommfalse\r
789   \global\@acmtsasfalse\r
790   \global\@acmtompecsfalse\r
791   \def\@journalName{ACM Transactions on Programming Languages and Systems}\r
792   \def\@journalNameShort{ACM Trans. Program. Lang. Syst.}\r
793   \def\@journalCode{toplas}        \r
794   \def\@permissionCodeOne{0164-0925} \r
795 }\r
796 \r
797 \DeclareOption{acmtosem}{\r
798   \typeout{}\r
799   \typeout{Using ACM, TOSEM option: 2010/05/04 by Aptara}\r
800   \typeout{}\r
801   \global\@acmjacmfalse\r
802   \global\@acmtissecfalse\r
803   \global\@acmtoclfalse\r
804   \global\@acmtocsfalse\r
805   \global\@acmtochifalse\r
806   \global\@acmtodaesfalse\r
807   \global\@acmtodsfalse\r
808   \global\@acmtoisfalse\r
809   \global\@acmtomacsfalse\r
810   \global\@acmtomsfalse\r
811   \global\@acmtoplasfalse\r
812   \global\@acmtosemtrue\r
813   \global\@acmtoitfalse\r
814   \global\@acmtecsfalse\r
815   \global\@acmtallipfalse\r
816   \global\@acmjericfalse\r
817   \global\@acmtacofalse\r
818   \global\@acmjeafalse\r
819   \global\@acmtslpfalse\r
820   \global\@acmciefalse\r
821   \global\@acmtosfalse\r
822   \global\@acmcsurfalse\r
823   \global\@acmjetcfalse\r
824   \global\@acmtosnfalse\r
825   \global\@acmtalgfalse\r
826   \global\@acmtaasfalse\r
827   \global\@acmtwebfalse\r
828   \global\@acmtkddfalse\r
829   \global\@acmtretsfalse\r
830   \global\@acmtmisfalse\r
831   \global\@acmtiisfalse\r
832   \global\@acmtistfalse\r
833   \global\@acmtoctfalse\r
834   \global\@acmjdiqfalse\r
835   \global\@acmtaccessfalse\r
836   \global\@acmtocefalse\r
837   \global\@acmteacfalse\r
838   \global\@acmtommfalse\r
839   \global\@acmtsasfalse\r
840   \global\@acmtompecsfalse\r
841   \def\@journalName{ACM Transactions on Software Engineering and Methodology}\r
842   \def\@journalNameShort{ACM Trans. Softw. Eng. Methodol.}\r
843   \def\@journalCode{tosem}        \r
844   \def\@permissionCodeOne{1049-331X} \r
845 }\r
846 \r
847 \DeclareOption{acmtoit}{\r
848   \typeout{}\r
849   \typeout{Using ACM, TOIT option: 2010/05/04 by Aptara}\r
850   \typeout{}\r
851   \global\@acmjacmfalse\r
852   \global\@acmtissecfalse\r
853   \global\@acmtoclfalse\r
854   \global\@acmtocsfalse\r
855   \global\@acmtochifalse\r
856   \global\@acmtodaesfalse\r
857   \global\@acmtodsfalse\r
858   \global\@acmtoisfalse\r
859   \global\@acmtomacsfalse\r
860   \global\@acmtomsfalse\r
861   \global\@acmtoplasfalse\r
862   \global\@acmtosemfalse\r
863   \global\@acmtoittrue\r
864   \global\@acmtecsfalse\r
865   \global\@acmtallipfalse\r
866   \global\@acmjericfalse\r
867   \global\@acmtacofalse\r
868   \global\@acmjeafalse\r
869   \global\@acmtslpfalse\r
870   \global\@acmciefalse\r
871   \global\@acmtosfalse\r
872   \global\@acmcsurfalse\r
873   \global\@acmjetcfalse\r
874   \global\@acmtosnfalse\r
875   \global\@acmtalgfalse\r
876   \global\@acmtaasfalse\r
877   \global\@acmtwebfalse\r
878   \global\@acmtkddfalse\r
879   \global\@acmtretsfalse\r
880   \global\@acmtmisfalse\r
881   \global\@acmtiisfalse\r
882   \global\@acmtistfalse\r
883   \global\@acmtoctfalse\r
884   \global\@acmjdiqfalse\r
885   \global\@acmtaccessfalse\r
886   \global\@acmtocefalse\r
887   \global\@acmteacfalse\r
888   \global\@acmtommfalse\r
889   \global\@acmtsasfalse\r
890   \global\@acmtompecsfalse\r
891   \def\@journalName{ACM Transactions on Internet Technology}\r
892   \def\@journalNameShort{ACM Trans. Internet Technol.}\r
893   \def\@journalCode{toit}        \r
894   \def\@permissionCodeOne{1533-5399} \r
895 }\r
896 \r
897 \DeclareOption{acmtecs}{\r
898   \typeout{}\r
899   \typeout{Using ACM, TECS option: 2010/05/04 by Aptara}\r
900   \typeout{}\r
901   \global\@acmjacmfalse\r
902   \global\@acmtissecfalse\r
903   \global\@acmtoclfalse\r
904   \global\@acmtocsfalse\r
905   \global\@acmtochifalse\r
906   \global\@acmtodaesfalse\r
907   \global\@acmtodsfalse\r
908   \global\@acmtoisfalse\r
909   \global\@acmtomacsfalse\r
910   \global\@acmtomsfalse\r
911   \global\@acmtoplasfalse\r
912   \global\@acmtosemfalse\r
913   \global\@acmtoitfalse\r
914   \global\@acmtecstrue\r
915   \global\@acmtallipfalse\r
916   \global\@acmjericfalse\r
917   \global\@acmtacofalse\r
918   \global\@acmjeafalse\r
919   \global\@acmtslpfalse\r
920   \global\@acmciefalse\r
921   \global\@acmtosfalse\r
922   \global\@acmcsurfalse\r
923   \global\@acmjetcfalse\r
924   \global\@acmtosnfalse\r
925   \global\@acmtalgfalse\r
926   \global\@acmtaasfalse\r
927   \global\@acmtwebfalse\r
928   \global\@acmtkddfalse\r
929   \global\@acmtretsfalse\r
930   \global\@acmtmisfalse\r
931   \global\@acmtiisfalse\r
932   \global\@acmtistfalse\r
933   \global\@acmtoctfalse\r
934   \global\@acmjdiqfalse\r
935   \global\@acmtaccessfalse\r
936   \global\@acmtocefalse\r
937   \global\@acmteacfalse\r
938   \global\@acmtommfalse\r
939   \global\@acmtsasfalse\r
940   \global\@acmtompecsfalse\r
941   \def\@journalName{ACM Transactions on Embedded Computing Systems}\r
942   \def\@journalNameShort{ACM Trans. Embedd. Comput. Syst.}\r
943   \def\@journalCode{tecs}\r
944   \def\@permissionCodeOne{1539-9087} \r
945 }\r
946 \r
947 %% Updaded Talip for change in the journal name to TALLIP (9th Dec. 2014)\r
948 \DeclareOption{acmtallip}{\r
949   \typeout{}\r
950 %  \typeout{Using ACM, TALIP option: 2010/05/04 by Aptara}\r
951   \typeout{Using ACM, TALLIP option: 2014/12/09 by Aptara}\r
952   \typeout{}\r
953   \global\@acmjacmfalse\r
954   \global\@acmtissecfalse\r
955   \global\@acmtoclfalse\r
956   \global\@acmtocsfalse\r
957   \global\@acmtochifalse\r
958   \global\@acmtodaesfalse\r
959   \global\@acmtodsfalse\r
960   \global\@acmtoisfalse\r
961   \global\@acmtomacsfalse\r
962   \global\@acmtomsfalse\r
963   \global\@acmtoplasfalse\r
964   \global\@acmtosemfalse\r
965   \global\@acmtoitfalse\r
966   \global\@acmtecsfalse\r
967   \global\@acmtalliptrue\r
968   \global\@acmjericfalse\r
969   \global\@acmtacofalse\r
970   \global\@acmjeafalse\r
971   \global\@acmtslpfalse\r
972   \global\@acmciefalse\r
973   \global\@acmtosfalse\r
974   \global\@acmcsurfalse\r
975   \global\@acmjetcfalse\r
976   \global\@acmtosnfalse\r
977   \global\@acmtalgfalse\r
978   \global\@acmtaasfalse\r
979   \global\@acmtwebfalse\r
980   \global\@acmtkddfalse\r
981   \global\@acmtretsfalse\r
982   \global\@acmtmisfalse\r
983   \global\@acmtiisfalse\r
984   \global\@acmtistfalse\r
985   \global\@acmtoctfalse\r
986   \global\@acmjdiqfalse\r
987   \global\@acmtaccessfalse\r
988   \global\@acmtocefalse\r
989   \global\@acmteacfalse\r
990   \global\@acmtommfalse\r
991   \global\@acmtsasfalse\r
992   \global\@acmtompecsfalse\r
993 %  \def\@journalName{ACM Transactions on Asian Language Information Processing}\r
994 %  \def\@journalNameShort{ACM Trans. Asian Lang. Inform. Process.}\r
995   \def\@journalName{ACM Transactions on Asian and Low-Resource Language Information Processing}\r
996   \def\@journalName{ACM Trans. Asian Low-Resour. Lang. Inf. Process.}\r
997   \def\@journalNameShort{ACM Trans. Asian Low-Resour. Lang. Inf. Process.}\r
998   \def\@journalCode{tallip}        \r
999 %  \def\@permissionCodeOne{1530-0226} \r
1000   \def\@permissionCodeOne{2375-4699}\r
1001 }\r
1002 \r
1003 \DeclareOption{acmjeric}{\r
1004   \typeout{}\r
1005   \typeout{Using ACM, JERIC option: 2010/05/04 by Aptara}\r
1006   \typeout{}\r
1007   \global\@acmjacmfalse\r
1008   \global\@acmtissecfalse\r
1009   \global\@acmtoclfalse\r
1010   \global\@acmtocsfalse\r
1011   \global\@acmtochifalse\r
1012   \global\@acmtodaesfalse\r
1013   \global\@acmtodsfalse\r
1014   \global\@acmtoisfalse\r
1015   \global\@acmtomacsfalse\r
1016   \global\@acmtomsfalse\r
1017   \global\@acmtoplasfalse\r
1018   \global\@acmtosemfalse\r
1019   \global\@acmtoitfalse\r
1020   \global\@acmtecsfalse\r
1021   \global\@acmtallipfalse\r
1022   \global\@acmjerictrue\r
1023   \global\@acmtacofalse\r
1024   \global\@acmjeafalse\r
1025   \global\@acmtslpfalse\r
1026   \global\@acmciefalse\r
1027   \global\@acmtosfalse\r
1028   \global\@acmcsurfalse\r
1029   \global\@acmjetcfalse\r
1030   \global\@acmtosnfalse\r
1031   \global\@acmtalgfalse\r
1032   \global\@acmtaasfalse\r
1033   \global\@acmtwebfalse\r
1034   \global\@acmtkddfalse\r
1035   \global\@acmtretsfalse\r
1036   \global\@acmtmisfalse\r
1037   \global\@acmtiisfalse\r
1038   \global\@acmtistfalse\r
1039   \global\@acmtoctfalse\r
1040   \global\@acmjdiqfalse\r
1041   \global\@acmtaccessfalse\r
1042   \global\@acmtocefalse\r
1043   \global\@acmteacfalse\r
1044   \global\@acmtommfalse\r
1045   \global\@acmtsasfalse\r
1046   \global\@acmtompecsfalse\r
1047   \def\@journalName{ACM Journal of Educational Resources in Computing}\r
1048   \def\@journalNameShort{ACM J. Edu. Resources in Comput.}\r
1049   \def\@journalCode{jeric}        \r
1050   \def\@permissionCodeOne{1073-0516} \r
1051 }\r
1052 \r
1053 \DeclareOption{acmtaco}{\r
1054   \typeout{}\r
1055   \typeout{Using ACM, TACO option: 2010/05/04 by Aptara}\r
1056   \typeout{}\r
1057   \global\@acmjacmfalse\r
1058   \global\@acmtissecfalse\r
1059   \global\@acmtoclfalse\r
1060   \global\@acmtocsfalse\r
1061   \global\@acmtochifalse\r
1062   \global\@acmtodaesfalse\r
1063   \global\@acmtodsfalse\r
1064   \global\@acmtoisfalse\r
1065   \global\@acmtomacsfalse\r
1066   \global\@acmtomsfalse\r
1067   \global\@acmtoplasfalse\r
1068   \global\@acmtosemfalse\r
1069   \global\@acmtoitfalse\r
1070   \global\@acmtecsfalse\r
1071   \global\@acmtallipfalse\r
1072   \global\@acmjericfalse\r
1073   \global\@acmtacotrue\r
1074   \global\@acmjeafalse\r
1075   \global\@acmtslpfalse\r
1076   \global\@acmciefalse\r
1077   \global\@acmtosfalse\r
1078   \global\@acmcsurfalse\r
1079   \global\@acmjetcfalse\r
1080   \global\@acmtosnfalse\r
1081   \global\@acmtalgfalse\r
1082   \global\@acmtaasfalse\r
1083   \global\@acmtwebfalse\r
1084   \global\@acmtkddfalse\r
1085   \global\@acmtretsfalse\r
1086   \global\@acmtmisfalse\r
1087   \global\@acmtiisfalse\r
1088   \global\@acmtistfalse\r
1089   \global\@acmtoctfalse\r
1090   \global\@acmjdiqfalse\r
1091   \global\@acmtaccessfalse\r
1092   \global\@acmtocefalse\r
1093   \global\@acmteacfalse\r
1094   \global\@acmtommfalse\r
1095   \global\@acmtsasfalse\r
1096   \global\@acmtompecsfalse\r
1097   \def\@journalName{ACM Transactions on Architecture and Code Optimization}\r
1098   \def\@journalNameShort{ACM Trans. Architec. Code Optim.}\r
1099   \def\@journalCode{taco}        \r
1100   \def\@permissionCodeOne{1544-3566} \r
1101 }\r
1102 \r
1103 \DeclareOption{acmjea}{\r
1104   \typeout{}\r
1105   \typeout{Using ACM, JEA option: 2010/05/04 by Aptara}\r
1106   \typeout{}\r
1107   \global\@acmjacmfalse\r
1108   \global\@acmtissecfalse\r
1109   \global\@acmtoclfalse\r
1110   \global\@acmtocsfalse\r
1111   \global\@acmtochifalse\r
1112   \global\@acmtodaesfalse\r
1113   \global\@acmtodsfalse\r
1114   \global\@acmtoisfalse\r
1115   \global\@acmtomacsfalse\r
1116   \global\@acmtomsfalse\r
1117   \global\@acmtoplasfalse\r
1118   \global\@acmtosemfalse\r
1119   \global\@acmtoitfalse\r
1120   \global\@acmtecsfalse\r
1121   \global\@acmtallipfalse\r
1122   \global\@acmjericfalse\r
1123   \global\@acmtacofalse\r
1124   \global\@acmjeatrue\r
1125   \global\@acmtslpfalse\r
1126   \global\@acmciefalse\r
1127   \global\@acmtosfalse\r
1128   \global\@acmcsurfalse\r
1129   \global\@acmjetcfalse\r
1130   \global\@acmtosnfalse\r
1131   \global\@acmtalgfalse\r
1132   \global\@acmtaasfalse\r
1133   \global\@acmtwebfalse\r
1134   \global\@acmtkddfalse\r
1135   \global\@acmtretsfalse\r
1136   \global\@acmtmisfalse\r
1137   \global\@acmtiisfalse\r
1138   \global\@acmtistfalse\r
1139   \global\@acmtoctfalse\r
1140   \global\@acmjdiqfalse\r
1141   \global\@acmtaccessfalse\r
1142   \global\@acmtocefalse\r
1143   \global\@acmteacfalse\r
1144   \global\@acmtommfalse\r
1145   \global\@acmtsasfalse\r
1146   \global\@acmtompecsfalse\r
1147   \def\@journalName{ACM Journal of Experimental Algorithmics}\r
1148   \def\@journalNameShort{ACM J. Exp. Algor.}\r
1149   \def\@journalCode{jea}        \r
1150   \def\@permissionCodeOne{1084-6654} \r
1151 }\r
1152 \r
1153 \DeclareOption{acmtslp}{\r
1154   \typeout{}\r
1155   \typeout{Using ACM, TSLP option: 2010/05/04 by Aptara}\r
1156   \typeout{}\r
1157   \global\@acmjacmfalse\r
1158   \global\@acmtissecfalse\r
1159   \global\@acmtoclfalse\r
1160   \global\@acmtocsfalse\r
1161   \global\@acmtochifalse\r
1162   \global\@acmtodaesfalse\r
1163   \global\@acmtodsfalse\r
1164   \global\@acmtoisfalse\r
1165   \global\@acmtomacsfalse\r
1166   \global\@acmtomsfalse\r
1167   \global\@acmtoplasfalse\r
1168   \global\@acmtosemfalse\r
1169   \global\@acmtoitfalse\r
1170   \global\@acmtecsfalse\r
1171   \global\@acmtallipfalse\r
1172   \global\@acmjericfalse\r
1173   \global\@acmtacofalse\r
1174   \global\@acmjeafalse\r
1175   \global\@acmtslptrue\r
1176   \global\@acmciefalse\r
1177   \global\@acmtosfalse\r
1178   \global\@acmcsurfalse\r
1179   \global\@acmjetcfalse\r
1180   \global\@acmtosnfalse\r
1181   \global\@acmtalgfalse\r
1182   \global\@acmtaasfalse\r
1183   \global\@acmtwebfalse\r
1184   \global\@acmtkddfalse\r
1185   \global\@acmtretsfalse\r
1186   \global\@acmtmisfalse\r
1187   \global\@acmtiisfalse\r
1188   \global\@acmtistfalse\r
1189   \global\@acmtoctfalse\r
1190   \global\@acmjdiqfalse\r
1191   \global\@acmtaccessfalse\r
1192   \global\@acmtocefalse\r
1193   \global\@acmteacfalse\r
1194   \global\@acmtommfalse\r
1195   \global\@acmtsasfalse\r
1196   \global\@acmtompecsfalse\r
1197   \def\@journalName{ACM Transactions on Speech and Language Processing}\r
1198   \def\@journalNameShort{ACM Trans. Speech Lang. Process.}\r
1199   \def\@journalCode{tslp}        \r
1200   \def\@permissionCodeOne{1550-4875} \r
1201 }\r
1202 \r
1203 \DeclareOption{acmcie}{\r
1204   \typeout{}\r
1205   \typeout{Using ACM, CIE option: 2010/05/04 by Aptara}\r
1206   \typeout{}\r
1207   \global\@acmjacmfalse\r
1208   \global\@acmtissecfalse\r
1209   \global\@acmtoclfalse\r
1210   \global\@acmtocsfalse\r
1211   \global\@acmtochifalse\r
1212   \global\@acmtodaesfalse\r
1213   \global\@acmtodsfalse\r
1214   \global\@acmtoisfalse\r
1215   \global\@acmtomacsfalse\r
1216   \global\@acmtomsfalse\r
1217   \global\@acmtoplasfalse\r
1218   \global\@acmtosemfalse\r
1219   \global\@acmtoitfalse\r
1220   \global\@acmtecsfalse\r
1221   \global\@acmtallipfalse\r
1222   \global\@acmjericfalse\r
1223   \global\@acmtacofalse\r
1224   \global\@acmjeafalse\r
1225   \global\@acmtslpfalse\r
1226   \global\@acmcietrue\r
1227   \global\@acmtosfalse\r
1228   \global\@acmcsurfalse\r
1229   \global\@acmjetcfalse\r
1230   \global\@acmtosnfalse\r
1231   \global\@acmtalgfalse\r
1232   \global\@acmtaasfalse\r
1233   \global\@acmtwebfalse\r
1234   \global\@acmtkddfalse\r
1235   \global\@acmtretsfalse\r
1236   \global\@acmtmisfalse\r
1237   \global\@acmtiisfalse\r
1238   \global\@acmtistfalse\r
1239   \global\@acmtoctfalse\r
1240   \global\@acmjdiqfalse\r
1241   \global\@acmtaccessfalse\r
1242   \global\@acmtocefalse\r
1243   \global\@acmteacfalse\r
1244   \global\@acmtommfalse\r
1245   \global\@acmtsasfalse\r
1246   \global\@acmtompecsfalse\r
1247   \def\@journalName{ACM Computers in Entertainment}\r
1248   \def\@journalNameShort{ACM Comput. Entertain.}\r
1249   \def\@journalCode{cie}        \r
1250   \def\@permissionCodeOne{1544-3574} \r
1251 }\r
1252 \r
1253 \DeclareOption{acmtos}{\r
1254   \typeout{}\r
1255   \typeout{Using ACM, TOS option: 2010/05/04 by Aptara}\r
1256   \typeout{}\r
1257   \global\@acmjacmfalse\r
1258   \global\@acmtissecfalse\r
1259   \global\@acmtoclfalse\r
1260   \global\@acmtocsfalse\r
1261   \global\@acmtochifalse\r
1262   \global\@acmtodaesfalse\r
1263   \global\@acmtodsfalse\r
1264   \global\@acmtoisfalse\r
1265   \global\@acmtomacsfalse\r
1266   \global\@acmtomsfalse\r
1267   \global\@acmtoplasfalse\r
1268   \global\@acmtosemfalse\r
1269   \global\@acmtoitfalse\r
1270   \global\@acmtecsfalse\r
1271   \global\@acmtallipfalse\r
1272   \global\@acmjericfalse\r
1273   \global\@acmtacofalse\r
1274   \global\@acmjeafalse\r
1275   \global\@acmtslpfalse\r
1276   \global\@acmciefalse\r
1277   \global\@acmtostrue\r
1278   \global\@acmcsurfalse\r
1279   \global\@acmjetcfalse\r
1280   \global\@acmtosnfalse\r
1281   \global\@acmtalgfalse\r
1282   \global\@acmtaasfalse\r
1283   \global\@acmtwebfalse\r
1284   \global\@acmtkddfalse\r
1285   \global\@acmtretsfalse\r
1286   \global\@acmtmisfalse\r
1287   \global\@acmtiisfalse\r
1288   \global\@acmtistfalse\r
1289   \global\@acmtoctfalse\r
1290   \global\@acmjdiqfalse\r
1291   \global\@acmtaccessfalse\r
1292   \global\@acmtocefalse\r
1293   \global\@acmteacfalse\r
1294   \global\@acmtommfalse\r
1295   \global\@acmtsasfalse\r
1296   \global\@acmtompecsfalse\r
1297   \def\@journalName{ACM Transactions on Storage}\r
1298   \def\@journalNameShort{ACM Trans. Storage}\r
1299   \def\@journalCode{tos}        \r
1300   \def\@permissionCodeOne{1553-3077} \r
1301 }\r
1302 \r
1303 \DeclareOption{acmcsur}{\r
1304   \typeout{}\r
1305   \typeout{Using ACM, CSUR option: 2010/05/04 by Aptara}\r
1306   \typeout{}\r
1307   \global\@acmjacmfalse\r
1308   \global\@acmtissecfalse\r
1309   \global\@acmtoclfalse\r
1310   \global\@acmtocsfalse\r
1311   \global\@acmtochifalse\r
1312   \global\@acmtodaesfalse\r
1313   \global\@acmtodsfalse\r
1314   \global\@acmtoisfalse\r
1315   \global\@acmtomacsfalse\r
1316   \global\@acmtomsfalse\r
1317   \global\@acmtoplasfalse\r
1318   \global\@acmtosemfalse\r
1319   \global\@acmtoitfalse\r
1320   \global\@acmtecsfalse\r
1321   \global\@acmtallipfalse\r
1322   \global\@acmjericfalse\r
1323   \global\@acmtacofalse\r
1324   \global\@acmjeafalse\r
1325   \global\@acmtslpfalse\r
1326   \global\@acmciefalse\r
1327   \global\@acmtosfalse\r
1328   \global\@acmcsurtrue\r
1329   \global\@acmjetcfalse\r
1330   \global\@acmtosnfalse\r
1331   \global\@acmtalgfalse\r
1332   \global\@acmtaasfalse\r
1333   \global\@acmtwebfalse\r
1334   \global\@acmtkddfalse\r
1335   \global\@acmtretsfalse\r
1336   \global\@acmtmisfalse\r
1337   \global\@acmtiisfalse\r
1338   \global\@acmtistfalse\r
1339   \global\@acmtoctfalse\r
1340   \global\@acmjdiqfalse\r
1341   \global\@acmtaccessfalse\r
1342   \global\@acmtocefalse\r
1343   \global\@acmteacfalse\r
1344   \global\@acmtommfalse\r
1345   \global\@acmtsasfalse\r
1346   \global\@acmtompecsfalse\r
1347   \def\@journalName{ACM Computing Surveys}\r
1348   \def\@journalNameShort{ACM Comput. Surv.}\r
1349   \def\@journalCode{csur}        \r
1350   \def\@permissionCodeOne{0360-0300} \r
1351 }\r
1352 \r
1353 \DeclareOption{acmjetc}{\r
1354   \typeout{}\r
1355   \typeout{Using ACM, JETC option: 2010/05/04 by Aptara}\r
1356   \typeout{}\r
1357   \global\@acmjacmfalse\r
1358   \global\@acmtissecfalse\r
1359   \global\@acmtoclfalse\r
1360   \global\@acmtocsfalse\r
1361   \global\@acmtochifalse\r
1362   \global\@acmtodaesfalse\r
1363   \global\@acmtodsfalse\r
1364   \global\@acmtoisfalse\r
1365   \global\@acmtomacsfalse\r
1366   \global\@acmtomsfalse\r
1367   \global\@acmtoplasfalse\r
1368   \global\@acmtosemfalse\r
1369   \global\@acmtoitfalse\r
1370   \global\@acmtecsfalse\r
1371   \global\@acmtallipfalse\r
1372   \global\@acmjericfalse\r
1373   \global\@acmtacofalse\r
1374   \global\@acmjeafalse\r
1375   \global\@acmtslpfalse\r
1376   \global\@acmciefalse\r
1377   \global\@acmtosfalse\r
1378   \global\@acmcsurfalse\r
1379   \global\@acmjetctrue\r
1380   \global\@acmtosnfalse\r
1381   \global\@acmtalgfalse\r
1382   \global\@acmtaasfalse\r
1383   \global\@acmtwebfalse\r
1384   \global\@acmtkddfalse\r
1385   \global\@acmtretsfalse\r
1386   \global\@acmtmisfalse\r
1387   \global\@acmtiisfalse\r
1388   \global\@acmtistfalse\r
1389   \global\@acmtoctfalse\r
1390   \global\@acmjdiqfalse\r
1391   \global\@acmtaccessfalse\r
1392   \global\@acmtocefalse\r
1393   \global\@acmteacfalse\r
1394   \global\@acmtommfalse\r
1395   \global\@acmtsasfalse\r
1396   \global\@acmtompecsfalse\r
1397   \def\@journalName{ACM Journal on Emerging Technologies in Computing Systems}\r
1398   \def\@journalNameShort{ACM J. Emerg. Technol. Comput. Syst.}\r
1399   \def\@journalCode{jetc}\r
1400   \def\@permissionCodeOne{1550-4832} \r
1401 }\r
1402 \r
1403 \DeclareOption{acmtosn}{\r
1404   \typeout{}\r
1405   \typeout{Using ACM, TOSN option: 2010/05/04 by Aptara}\r
1406   \typeout{}\r
1407   \global\@acmjacmfalse\r
1408   \global\@acmtissecfalse\r
1409   \global\@acmtoclfalse\r
1410   \global\@acmtocsfalse\r
1411   \global\@acmtochifalse\r
1412   \global\@acmtodaesfalse\r
1413   \global\@acmtodsfalse\r
1414   \global\@acmtoisfalse\r
1415   \global\@acmtomacsfalse\r
1416   \global\@acmtomsfalse\r
1417   \global\@acmtoplasfalse\r
1418   \global\@acmtosemfalse\r
1419   \global\@acmtoitfalse\r
1420   \global\@acmtecsfalse\r
1421   \global\@acmtallipfalse\r
1422   \global\@acmjericfalse\r
1423   \global\@acmtacofalse\r
1424   \global\@acmjeafalse\r
1425   \global\@acmtslpfalse\r
1426   \global\@acmciefalse\r
1427   \global\@acmtosfalse\r
1428   \global\@acmcsurfalse\r
1429   \global\@acmjetcfalse\r
1430   \global\@acmtosntrue\r
1431   \global\@acmtalgfalse\r
1432   \global\@acmtaasfalse\r
1433   \global\@acmtwebfalse\r
1434   \global\@acmtkddfalse\r
1435   \global\@acmtretsfalse\r
1436   \global\@acmtmisfalse\r
1437   \global\@acmtiisfalse\r
1438   \global\@acmtistfalse\r
1439   \global\@acmtoctfalse\r
1440   \global\@acmjdiqfalse\r
1441   \global\@acmtaccessfalse\r
1442   \global\@acmtocefalse\r
1443   \global\@acmteacfalse\r
1444   \global\@acmtommfalse\r
1445   \global\@acmtsasfalse\r
1446   \global\@acmtompecsfalse\r
1447   \def\@journalName{ACM Transactions on Sensor Networks}\r
1448   \def\@journalNameShort{ACM Trans. Sensor Netw.}\r
1449   \def\@journalCode{tosn}\r
1450   \def\@permissionCodeOne{1550-4859} \r
1451 }\r
1452 \r
1453 \DeclareOption{acmtalg}{\r
1454   \typeout{}\r
1455   \typeout{Using ACM, TALG option: 2010/05/04 by Aptara}\r
1456   \typeout{}\r
1457   \global\@acmjacmfalse\r
1458   \global\@acmtissecfalse\r
1459   \global\@acmtoclfalse\r
1460   \global\@acmtocsfalse\r
1461   \global\@acmtochifalse\r
1462   \global\@acmtodaesfalse\r
1463   \global\@acmtodsfalse\r
1464   \global\@acmtoisfalse\r
1465   \global\@acmtomacsfalse\r
1466   \global\@acmtomsfalse\r
1467   \global\@acmtoplasfalse\r
1468   \global\@acmtosemfalse\r
1469   \global\@acmtoitfalse\r
1470   \global\@acmtecsfalse\r
1471   \global\@acmtallipfalse\r
1472   \global\@acmjericfalse\r
1473   \global\@acmtacofalse\r
1474   \global\@acmjeafalse\r
1475   \global\@acmtslpfalse\r
1476   \global\@acmciefalse\r
1477   \global\@acmtosfalse\r
1478   \global\@acmcsurfalse\r
1479   \global\@acmjetcfalse\r
1480   \global\@acmtosnfalse\r
1481   \global\@acmtalgtrue\r
1482   \global\@acmtaasfalse\r
1483   \global\@acmtwebfalse\r
1484   \global\@acmtkddfalse\r
1485   \global\@acmtretsfalse\r
1486   \global\@acmtmisfalse\r
1487   \global\@acmtiisfalse\r
1488   \global\@acmtistfalse\r
1489   \global\@acmtoctfalse\r
1490   \global\@acmjdiqfalse\r
1491   \global\@acmtaccessfalse\r
1492   \global\@acmtocefalse\r
1493   \global\@acmteacfalse\r
1494   \global\@acmtommfalse\r
1495   \global\@acmtsasfalse\r
1496   \global\@acmtompecsfalse\r
1497   \def\@journalName{ACM Transactions on Algorithms}\r
1498   \def\@journalNameShort{ACM Trans. Algor.}\r
1499   \def\@journalCode{talg}\r
1500   \def\@permissionCodeOne{1549-6325} \r
1501 }\r
1502 \r
1503 \DeclareOption{acmtaas}{\r
1504   \typeout{}\r
1505   \typeout{Using ACM, TAAS option: 2010/05/04 by Aptara}\r
1506   \typeout{}\r
1507   \global\@acmjacmfalse\r
1508   \global\@acmtissecfalse\r
1509   \global\@acmtoclfalse\r
1510   \global\@acmtocsfalse\r
1511   \global\@acmtochifalse\r
1512   \global\@acmtodaesfalse\r
1513   \global\@acmtodsfalse\r
1514   \global\@acmtoisfalse\r
1515   \global\@acmtomacsfalse\r
1516   \global\@acmtomsfalse\r
1517   \global\@acmtoplasfalse\r
1518   \global\@acmtosemfalse\r
1519   \global\@acmtoitfalse\r
1520   \global\@acmtecsfalse\r
1521   \global\@acmtallipfalse\r
1522   \global\@acmjericfalse\r
1523   \global\@acmtacofalse\r
1524   \global\@acmjeafalse\r
1525   \global\@acmtslpfalse\r
1526   \global\@acmciefalse\r
1527   \global\@acmtosfalse\r
1528   \global\@acmcsurfalse\r
1529   \global\@acmjetcfalse\r
1530   \global\@acmtosnfalse\r
1531   \global\@acmtalgfalse\r
1532   \global\@acmtaastrue\r
1533   \global\@acmtwebfalse\r
1534   \global\@acmtkddfalse\r
1535   \global\@acmtretsfalse\r
1536   \global\@acmtmisfalse\r
1537   \global\@acmtiisfalse\r
1538   \global\@acmtistfalse\r
1539   \global\@acmtoctfalse\r
1540   \global\@acmjdiqfalse\r
1541   \global\@acmtaccessfalse\r
1542   \global\@acmtocefalse\r
1543   \global\@acmteacfalse\r
1544   \global\@acmtommfalse\r
1545   \global\@acmtsasfalse\r
1546   \global\@acmtompecsfalse\r
1547   \def\@journalName{ACM Transactions on Autonomous and Adaptive Systems}\r
1548   \def\@journalNameShort{ACM Trans. Autonom. Adapt. Syst.}\r
1549   \def\@journalCode{taas}\r
1550   \def\@permissionCodeOne{1556-4665} \r
1551 }\r
1552 \r
1553 \DeclareOption{acmtweb}{\r
1554   \typeout{}\r
1555   \typeout{Using ACM, TWEB option: 2010/05/04 by Aptara}\r
1556   \typeout{}\r
1557   \global\@acmjacmfalse\r
1558   \global\@acmtissecfalse\r
1559   \global\@acmtoclfalse\r
1560   \global\@acmtocsfalse\r
1561   \global\@acmtochifalse\r
1562   \global\@acmtodaesfalse\r
1563   \global\@acmtodsfalse\r
1564   \global\@acmtoisfalse\r
1565   \global\@acmtomacsfalse\r
1566   \global\@acmtomsfalse\r
1567   \global\@acmtoplasfalse\r
1568   \global\@acmtosemfalse\r
1569   \global\@acmtoitfalse\r
1570   \global\@acmtecsfalse\r
1571   \global\@acmtallipfalse\r
1572   \global\@acmjericfalse\r
1573   \global\@acmtacofalse\r
1574   \global\@acmjeafalse\r
1575   \global\@acmtslpfalse\r
1576   \global\@acmciefalse\r
1577   \global\@acmtosfalse\r
1578   \global\@acmcsurfalse\r
1579   \global\@acmjetcfalse\r
1580   \global\@acmtosnfalse\r
1581   \global\@acmtalgfalse\r
1582   \global\@acmtaasfalse\r
1583   \global\@acmtwebtrue\r
1584   \global\@acmtkddfalse\r
1585   \global\@acmtretsfalse\r
1586   \global\@acmtmisfalse\r
1587   \global\@acmtiisfalse\r
1588   \global\@acmtistfalse\r
1589   \global\@acmtoctfalse\r
1590   \global\@acmjdiqfalse\r
1591   \global\@acmtaccessfalse\r
1592   \global\@acmtocefalse\r
1593   \global\@acmteacfalse\r
1594   \global\@acmtommfalse\r
1595   \global\@acmtsasfalse\r
1596   \global\@acmtompecsfalse\r
1597   \def\@journalName{ACM Transactions on the Web}\r
1598   \def\@journalNameShort{ACM Trans. Web}\r
1599   \def\@journalCode{tweb}\r
1600   \def\@permissionCodeOne{1559-1131} \r
1601 }\r
1602 \r
1603 \DeclareOption{acmtkdd}{\r
1604   \typeout{}\r
1605   \typeout{Using ACM, TKDD option: 2010/05/04 by Aptara}\r
1606   \typeout{}\r
1607   \global\@acmjacmfalse\r
1608   \global\@acmtissecfalse\r
1609   \global\@acmtoclfalse\r
1610   \global\@acmtocsfalse\r
1611   \global\@acmtochifalse\r
1612   \global\@acmtodaesfalse\r
1613   \global\@acmtodsfalse\r
1614   \global\@acmtoisfalse\r
1615   \global\@acmtomacsfalse\r
1616   \global\@acmtomsfalse\r
1617   \global\@acmtoplasfalse\r
1618   \global\@acmtosemfalse\r
1619   \global\@acmtoitfalse\r
1620   \global\@acmtecsfalse\r
1621   \global\@acmtallipfalse\r
1622   \global\@acmjericfalse\r
1623   \global\@acmtacofalse\r
1624   \global\@acmjeafalse\r
1625   \global\@acmtslpfalse\r
1626   \global\@acmciefalse\r
1627   \global\@acmtosfalse\r
1628   \global\@acmcsurfalse\r
1629   \global\@acmjetcfalse\r
1630   \global\@acmtosnfalse\r
1631   \global\@acmtalgfalse\r
1632   \global\@acmtaasfalse\r
1633   \global\@acmtwebfalse\r
1634   \global\@acmtkddtrue\r
1635   \global\@acmtretsfalse\r
1636   \global\@acmtmisfalse\r
1637   \global\@acmtiisfalse\r
1638   \global\@acmtistfalse\r
1639   \global\@acmtoctfalse\r
1640   \global\@acmjdiqfalse\r
1641   \global\@acmtaccessfalse\r
1642   \global\@acmtocefalse\r
1643   \global\@acmteacfalse\r
1644   \global\@acmtommfalse\r
1645   \global\@acmtsasfalse\r
1646   \global\@acmtompecsfalse\r
1647   \def\@journalName{ACM Transactions on Knowledge Discovery from Data}\r
1648   \def\@journalNameShort{ACM Trans. Knowl. Discov. Data.}\r
1649   \def\@journalCode{tkdd}\r
1650   \def\@permissionCodeOne{1556-4681} \r
1651 }\r
1652 \r
1653 \DeclareOption{acmtrets}{\r
1654   \typeout{}\r
1655   \typeout{Using ACM, TRETS option: 2010/05/04 by Aptara}\r
1656   \typeout{}\r
1657   \global\@acmjacmfalse\r
1658   \global\@acmtissecfalse\r
1659   \global\@acmtoclfalse\r
1660   \global\@acmtocsfalse\r
1661   \global\@acmtochifalse\r
1662   \global\@acmtodaesfalse\r
1663   \global\@acmtodsfalse\r
1664   \global\@acmtoisfalse\r
1665   \global\@acmtomacsfalse\r
1666   \global\@acmtomsfalse\r
1667   \global\@acmtoplasfalse\r
1668   \global\@acmtosemfalse\r
1669   \global\@acmtoitfalse\r
1670   \global\@acmtecsfalse\r
1671   \global\@acmtallipfalse\r
1672   \global\@acmjericfalse\r
1673   \global\@acmtacofalse\r
1674   \global\@acmjeafalse\r
1675   \global\@acmtslpfalse\r
1676   \global\@acmciefalse\r
1677   \global\@acmtosfalse\r
1678   \global\@acmcsurfalse\r
1679   \global\@acmjetcfalse\r
1680   \global\@acmtosnfalse\r
1681   \global\@acmtalgfalse\r
1682   \global\@acmtaasfalse\r
1683   \global\@acmtwebfalse\r
1684   \global\@acmtkddfalse\r
1685   \global\@acmtretstrue\r
1686   \global\@acmtmisfalse\r
1687   \global\@acmtiisfalse\r
1688   \global\@acmtistfalse\r
1689   \global\@acmtoctfalse\r
1690   \global\@acmjdiqfalse\r
1691   \global\@acmtaccessfalse\r
1692   \global\@acmtocefalse\r
1693   \global\@acmteacfalse\r
1694   \global\@acmtommfalse\r
1695   \global\@acmtsasfalse\r
1696   \global\@acmtompecsfalse\r
1697   \def\@journalName{ACM Transactions on Reconfigurable Technology and Systems}\r
1698   \def\@journalNameShort{ACM Trans. Reconfig. Technol. Syst.}\r
1699   \def\@journalCode{trets}\r
1700   \def\@permissionCodeOne{1936-7406} \r
1701 }\r
1702 \r
1703 \DeclareOption{acmtmis}{\r
1704   \typeout{}\r
1705   \typeout{Using ACM, TMIS option: 2010/07/14 by Aptara}\r
1706   \typeout{}\r
1707   \global\@acmjacmfalse\r
1708   \global\@acmtissecfalse\r
1709   \global\@acmtoclfalse\r
1710   \global\@acmtocsfalse\r
1711   \global\@acmtochifalse\r
1712   \global\@acmtodaesfalse\r
1713   \global\@acmtodsfalse\r
1714   \global\@acmtoisfalse\r
1715   \global\@acmtomacsfalse\r
1716   \global\@acmtomsfalse\r
1717   \global\@acmtoplasfalse\r
1718   \global\@acmtosemfalse\r
1719   \global\@acmtoitfalse\r
1720   \global\@acmtecsfalse\r
1721   \global\@acmtallipfalse\r
1722   \global\@acmjericfalse\r
1723   \global\@acmtacofalse\r
1724   \global\@acmjeafalse\r
1725   \global\@acmtslpfalse\r
1726   \global\@acmciefalse\r
1727   \global\@acmtosfalse\r
1728   \global\@acmcsurfalse\r
1729   \global\@acmjetcfalse\r
1730   \global\@acmtosnfalse\r
1731   \global\@acmtalgfalse\r
1732   \global\@acmtaasfalse\r
1733   \global\@acmtwebfalse\r
1734   \global\@acmtkddfalse\r
1735   \global\@acmtretsfalse\r
1736   \global\@acmtmistrue\r
1737   \global\@acmtiisfalse\r
1738   \global\@acmtistfalse\r
1739   \global\@acmtoctfalse\r
1740   \global\@acmjdiqfalse\r
1741   \global\@acmtaccessfalse\r
1742   \global\@acmtocefalse\r
1743   \global\@acmteacfalse\r
1744   \global\@acmtommfalse\r
1745   \global\@acmtsasfalse\r
1746   \global\@acmtompecsfalse\r
1747   \def\@journalName{ACM Transactions on Management Information Systems}\r
1748   \def\@journalNameShort{ACM Trans. Manag. Inform. Syst.}\r
1749   \def\@journalCode{tmis}\r
1750   \def\@permissionCodeOne{2158-656X} \r
1751 }\r
1752 \r
1753 \DeclareOption{acmtiis}{\r
1754   \typeout{}\r
1755   \typeout{Using ACM, TIIS option: 2010/07/14 by Aptara}\r
1756   \typeout{}\r
1757   \global\@acmjacmfalse\r
1758   \global\@acmtissecfalse\r
1759   \global\@acmtoclfalse\r
1760   \global\@acmtocsfalse\r
1761   \global\@acmtochifalse\r
1762   \global\@acmtodaesfalse\r
1763   \global\@acmtodsfalse\r
1764   \global\@acmtoisfalse\r
1765   \global\@acmtomacsfalse\r
1766   \global\@acmtomsfalse\r
1767   \global\@acmtoplasfalse\r
1768   \global\@acmtosemfalse\r
1769   \global\@acmtoitfalse\r
1770   \global\@acmtecsfalse\r
1771   \global\@acmtallipfalse\r
1772   \global\@acmjericfalse\r
1773   \global\@acmtacofalse\r
1774   \global\@acmjeafalse\r
1775   \global\@acmtslpfalse\r
1776   \global\@acmciefalse\r
1777   \global\@acmtosfalse\r
1778   \global\@acmcsurfalse\r
1779   \global\@acmjetcfalse\r
1780   \global\@acmtosnfalse\r
1781   \global\@acmtalgfalse\r
1782   \global\@acmtaasfalse\r
1783   \global\@acmtwebfalse\r
1784   \global\@acmtkddfalse\r
1785   \global\@acmtretsfalse\r
1786   \global\@acmtmisfalse\r
1787   \global\@acmtiistrue\r
1788   \global\@acmtistfalse\r
1789   \global\@acmtoctfalse\r
1790   \global\@acmjdiqfalse\r
1791   \global\@acmtaccessfalse\r
1792   \global\@acmtocefalse\r
1793   \global\@acmteacfalse\r
1794   \global\@acmtommfalse\r
1795   \global\@acmtsasfalse\r
1796   \global\@acmtompecsfalse\r
1797   \def\@journalName{ACM Transactions on Interactive Intelligent Systems}\r
1798   \def\@journalNameShort{ACM Trans. Interact. Intell. Syst.}\r
1799   \def\@journalCode{tiis}\r
1800   \def\@permissionCodeOne{2160-6455} \r
1801 }\r
1802 \r
1803 \DeclareOption{acmtist}{\r
1804   \typeout{}\r
1805   \typeout{Using ACM, TIST option: 2010/07/14 by Aptara}\r
1806   \typeout{}\r
1807   \global\@acmjacmfalse\r
1808   \global\@acmtissecfalse\r
1809   \global\@acmtoclfalse\r
1810   \global\@acmtocsfalse\r
1811   \global\@acmtochifalse\r
1812   \global\@acmtodaesfalse\r
1813   \global\@acmtodsfalse\r
1814   \global\@acmtoisfalse\r
1815   \global\@acmtomacsfalse\r
1816   \global\@acmtomsfalse\r
1817   \global\@acmtoplasfalse\r
1818   \global\@acmtosemfalse\r
1819   \global\@acmtoitfalse\r
1820   \global\@acmtecsfalse\r
1821   \global\@acmtallipfalse\r
1822   \global\@acmjericfalse\r
1823   \global\@acmtacofalse\r
1824   \global\@acmjeafalse\r
1825   \global\@acmtslpfalse\r
1826   \global\@acmciefalse\r
1827   \global\@acmtosfalse\r
1828   \global\@acmcsurfalse\r
1829   \global\@acmjetcfalse\r
1830   \global\@acmtosnfalse\r
1831   \global\@acmtalgfalse\r
1832   \global\@acmtaasfalse\r
1833   \global\@acmtwebfalse\r
1834   \global\@acmtkddfalse\r
1835   \global\@acmtretsfalse\r
1836   \global\@acmtmisfalse\r
1837   \global\@acmtiisfalse\r
1838   \global\@acmtisttrue\r
1839   \global\@acmtoctfalse\r
1840   \global\@acmjdiqfalse\r
1841   \global\@acmtaccessfalse\r
1842   \global\@acmtocefalse\r
1843   \global\@acmteacfalse\r
1844   \global\@acmtommfalse\r
1845   \global\@acmtsasfalse\r
1846   \global\@acmtompecsfalse\r
1847   \def\@journalName{ACM Transactions on Intelligent Systems and Technology}\r
1848   \def\@journalNameShort{ACM Trans. Intell. Syst. Technol.}\r
1849   \def\@journalCode{tist}\r
1850   \def\@permissionCodeOne{2157-6904} \r
1851 }\r
1852 \r
1853 \DeclareOption{acmtoct}{\r
1854   \typeout{}\r
1855   \typeout{Using ACM, TOCT option: 2011/10/31 by Aptara}\r
1856   \typeout{}\r
1857   \global\@acmjacmfalse\r
1858   \global\@acmtissecfalse\r
1859   \global\@acmtoclfalse\r
1860   \global\@acmtocsfalse\r
1861   \global\@acmtochifalse\r
1862   \global\@acmtodaesfalse\r
1863   \global\@acmtodsfalse\r
1864   \global\@acmtoisfalse\r
1865   \global\@acmtomacsfalse\r
1866   \global\@acmtomsfalse\r
1867   \global\@acmtoplasfalse\r
1868   \global\@acmtosemfalse\r
1869   \global\@acmtoitfalse\r
1870   \global\@acmtecsfalse\r
1871   \global\@acmtallipfalse\r
1872   \global\@acmjericfalse\r
1873   \global\@acmtacofalse\r
1874   \global\@acmjeafalse\r
1875   \global\@acmtslpfalse\r
1876   \global\@acmciefalse\r
1877   \global\@acmtosfalse\r
1878   \global\@acmcsurfalse\r
1879   \global\@acmjetcfalse\r
1880   \global\@acmtosnfalse\r
1881   \global\@acmtalgfalse\r
1882   \global\@acmtaasfalse\r
1883   \global\@acmtwebfalse\r
1884   \global\@acmtkddfalse\r
1885   \global\@acmtretsfalse\r
1886   \global\@acmtmisfalse\r
1887   \global\@acmtiisfalse\r
1888   \global\@acmtistfalse\r
1889   \global\@acmtocttrue\r
1890   \global\@acmjdiqfalse\r
1891   \global\@acmtaccessfalse\r
1892   \global\@acmtocefalse\r
1893   \global\@acmteacfalse\r
1894   \global\@acmtommfalse\r
1895   \global\@acmtsasfalse\r
1896   \global\@acmtompecsfalse\r
1897   \def\@journalName{ACM Transactions on Computation Theory}\r
1898   \def\@journalNameShort{ACM Trans. Comput. Theory}\r
1899   \def\@journalCode{toct}\r
1900   \def\@permissionCodeOne{1942-3454} \r
1901 }\r
1902 \r
1903 \DeclareOption{acmjdiq}{\r
1904   \typeout{}\r
1905   \typeout{Using ACM, JDIQ option: 2011/10/31 by Aptara}\r
1906   \typeout{}\r
1907   \global\@acmjacmfalse\r
1908   \global\@acmtissecfalse\r
1909   \global\@acmtoclfalse\r
1910   \global\@acmtocsfalse\r
1911   \global\@acmtochifalse\r
1912   \global\@acmtodaesfalse\r
1913   \global\@acmtodsfalse\r
1914   \global\@acmtoisfalse\r
1915   \global\@acmtomacsfalse\r
1916   \global\@acmtomsfalse\r
1917   \global\@acmtoplasfalse\r
1918   \global\@acmtosemfalse\r
1919   \global\@acmtoitfalse\r
1920   \global\@acmtecsfalse\r
1921   \global\@acmtallipfalse\r
1922   \global\@acmjericfalse\r
1923   \global\@acmtacofalse\r
1924   \global\@acmjeafalse\r
1925   \global\@acmtslpfalse\r
1926   \global\@acmciefalse\r
1927   \global\@acmtosfalse\r
1928   \global\@acmcsurfalse\r
1929   \global\@acmjetcfalse\r
1930   \global\@acmtosnfalse\r
1931   \global\@acmtalgfalse\r
1932   \global\@acmtaasfalse\r
1933   \global\@acmtwebfalse\r
1934   \global\@acmtkddfalse\r
1935   \global\@acmtretsfalse\r
1936   \global\@acmtmisfalse\r
1937   \global\@acmtiisfalse\r
1938   \global\@acmtistfalse\r
1939   \global\@acmtoctfalse\r
1940   \global\@acmjdiqtrue\r
1941   \global\@acmtaccessfalse\r
1942   \global\@acmtocefalse\r
1943   \global\@acmteacfalse\r
1944   \global\@acmtommfalse\r
1945   \global\@acmtsasfalse\r
1946   \global\@acmtompecsfalse\r
1947   \def\@journalName{ACM Journal of Data and Information quality}\r
1948   \def\@journalNameShort{ACM J. Data Inform. Quality}\r
1949   \def\@journalCode{jdiq}\r
1950   \def\@permissionCodeOne{1936-1955} \r
1951 }\r
1952 \r
1953 \DeclareOption{acmtaccess}{\r
1954   \typeout{}\r
1955   \typeout{Using ACM, TACCESS option: 2011/10/31 by Aptara}\r
1956   \typeout{}\r
1957   \global\@acmjacmfalse\r
1958   \global\@acmtissecfalse\r
1959   \global\@acmtoclfalse\r
1960   \global\@acmtocsfalse\r
1961   \global\@acmtochifalse\r
1962   \global\@acmtodaesfalse\r
1963   \global\@acmtodsfalse\r
1964   \global\@acmtoisfalse\r
1965   \global\@acmtomacsfalse\r
1966   \global\@acmtomsfalse\r
1967   \global\@acmtoplasfalse\r
1968   \global\@acmtosemfalse\r
1969   \global\@acmtoitfalse\r
1970   \global\@acmtecsfalse\r
1971   \global\@acmtallipfalse\r
1972   \global\@acmjericfalse\r
1973   \global\@acmtacofalse\r
1974   \global\@acmjeafalse\r
1975   \global\@acmtslpfalse\r
1976   \global\@acmciefalse\r
1977   \global\@acmtosfalse\r
1978   \global\@acmcsurfalse\r
1979   \global\@acmjetcfalse\r
1980   \global\@acmtosnfalse\r
1981   \global\@acmtalgfalse\r
1982   \global\@acmtaasfalse\r
1983   \global\@acmtwebfalse\r
1984   \global\@acmtkddfalse\r
1985   \global\@acmtretsfalse\r
1986   \global\@acmtmisfalse\r
1987   \global\@acmtiisfalse\r
1988   \global\@acmtistfalse\r
1989   \global\@acmtoctfalse\r
1990   \global\@acmjdiqfalse\r
1991   \global\@acmtaccesstrue\r
1992   \global\@acmtallipfalse\r
1993   \global\@acmtiisfalse\r
1994   \global\@acmtocefalse\r
1995   \global\@acmteacfalse\r
1996   \global\@acmtommfalse\r
1997   \global\@acmtsasfalse\r
1998   \global\@acmtompecsfalse\r
1999   \def\@journalName{ACM Transactions on Accessible Computing}\r
2000   \def\@journalNameShort{ACM Trans. Access. Comput.}\r
2001   \def\@journalCode{taccess}\r
2002   \def\@permissionCodeOne{1936-7228} \r
2003 }\r
2004 \r
2005 \DeclareOption{acmtoce}{\r
2006   \typeout{}\r
2007   \typeout{Using ACM, TOCE option: 2011/10/31 by Aptara}\r
2008   \typeout{}\r
2009   \global\@acmjacmfalse\r
2010   \global\@acmtissecfalse\r
2011   \global\@acmtoclfalse\r
2012   \global\@acmtocsfalse\r
2013   \global\@acmtochifalse\r
2014   \global\@acmtodaesfalse\r
2015   \global\@acmtodsfalse\r
2016   \global\@acmtoisfalse\r
2017   \global\@acmtomacsfalse\r
2018   \global\@acmtomsfalse\r
2019   \global\@acmtoplasfalse\r
2020   \global\@acmtosemfalse\r
2021   \global\@acmtoitfalse\r
2022   \global\@acmtecsfalse\r
2023   \global\@acmtallipfalse\r
2024   \global\@acmjericfalse\r
2025   \global\@acmtacofalse\r
2026   \global\@acmjeafalse\r
2027   \global\@acmtslpfalse\r
2028   \global\@acmciefalse\r
2029   \global\@acmtosfalse\r
2030   \global\@acmcsurfalse\r
2031   \global\@acmjetcfalse\r
2032   \global\@acmtosnfalse\r
2033   \global\@acmtalgfalse\r
2034   \global\@acmtaasfalse\r
2035   \global\@acmtwebfalse\r
2036   \global\@acmtkddfalse\r
2037   \global\@acmtretsfalse\r
2038   \global\@acmtmisfalse\r
2039   \global\@acmtiisfalse\r
2040   \global\@acmtistfalse\r
2041   \global\@acmtoctfalse\r
2042   \global\@acmjdiqfalse\r
2043   \global\@acmtaccessfalse\r
2044   \global\@acmtallipfalse\r
2045   \global\@acmtiisfalse\r
2046   \global\@acmtocetrue\r
2047   \global\@acmteacfalse\r
2048   \global\@acmtommfalse\r
2049   \global\@acmtsasfalse\r
2050   \global\@acmtompecsfalse\r
2051   \def\@journalName{ACM Transactions on Computing Education}\r
2052   \def\@journalNameShort{ACM Trans. Comput. Educ.}\r
2053   \def\@journalCode{toce}\r
2054   \def\@permissionCodeOne{1946-6226} \r
2055 }\r
2056 \r
2057 \DeclareOption{acmteac}{\r
2058   \typeout{}\r
2059   \typeout{Using ACM, TEAC option: 2012/07/04 by Orna Agmon Ben-Yehuda}\r
2060   \typeout{}\r
2061   \global\@acmjacmfalse\r
2062   \global\@acmtissecfalse\r
2063   \global\@acmtoclfalse\r
2064   \global\@acmtocsfalse\r
2065   \global\@acmtochifalse\r
2066   \global\@acmtodaesfalse\r
2067   \global\@acmtodsfalse\r
2068   \global\@acmtoisfalse\r
2069   \global\@acmtomacsfalse\r
2070   \global\@acmtomsfalse\r
2071   \global\@acmtoplasfalse\r
2072   \global\@acmtosemfalse\r
2073   \global\@acmtoitfalse\r
2074   \global\@acmtecsfalse\r
2075   \global\@acmtallipfalse\r
2076   \global\@acmjericfalse\r
2077   \global\@acmtacofalse\r
2078   \global\@acmjeafalse\r
2079   \global\@acmtslpfalse\r
2080   \global\@acmciefalse\r
2081   \global\@acmtosfalse\r
2082   \global\@acmcsurfalse\r
2083   \global\@acmjetcfalse\r
2084   \global\@acmtosnfalse\r
2085   \global\@acmtalgfalse\r
2086   \global\@acmtaasfalse\r
2087   \global\@acmtwebfalse\r
2088   \global\@acmtkddfalse\r
2089   \global\@acmtretsfalse\r
2090   \global\@acmtmisfalse\r
2091   \global\@acmtiisfalse\r
2092   \global\@acmtistfalse\r
2093   \global\@acmtoctfalse\r
2094   \global\@acmjdiqfalse\r
2095   \global\@acmtaccessfalse\r
2096   \global\@acmtallipfalse\r
2097   \global\@acmtiisfalse\r
2098   \global\@acmtocefalse\r
2099   \global\@acmteactrue\r
2100   \global\@acmtommfalse\r
2101   \global\@acmtsasfalse\r
2102   \global\@acmtompecsfalse\r
2103   \def\@journalName{ACM Transactions on Economics and Computation}\r
2104   \def\@journalNameShort{ACM Trans. Econ. Comp.}\r
2105   \def\@journalCode{teac}\r
2106   \def\@permissionCodeOne{1946-6227} \r
2107 }\r
2108 %\r
2109 %%\r
2110 %% TeXSupport: Added TOMM from acmlarge design on 2014/05/28\r
2111 %%\r
2112 \DeclareOption{acmtomm}{\r
2113   \typeout{}\r
2114   \typeout{Using ACM, TOMM's option: 2014/05/28 by Aptara}\r
2115   \typeout{}\r
2116   \global\@acmjacmfalse\r
2117   \global\@acmtissecfalse\r
2118   \global\@acmtoclfalse\r
2119   \global\@acmtocsfalse\r
2120   \global\@acmtochifalse\r
2121   \global\@acmtodaesfalse\r
2122   \global\@acmtodsfalse\r
2123   \global\@acmtoisfalse\r
2124   \global\@acmtomacsfalse\r
2125   \global\@acmtomsfalse\r
2126   \global\@acmtoplasfalse\r
2127   \global\@acmtosemfalse\r
2128   \global\@acmtoitfalse\r
2129   \global\@acmtecsfalse\r
2130   \global\@acmtallipfalse\r
2131   \global\@acmjericfalse\r
2132   \global\@acmtacofalse\r
2133   \global\@acmjeafalse\r
2134   \global\@acmtslpfalse\r
2135   \global\@acmciefalse\r
2136   \global\@acmtosfalse\r
2137   \global\@acmcsurfalse\r
2138   \global\@acmjetcfalse\r
2139   \global\@acmtosnfalse\r
2140   \global\@acmtalgfalse\r
2141   \global\@acmtaasfalse\r
2142   \global\@acmtwebfalse\r
2143   \global\@acmtkddfalse\r
2144   \global\@acmtretsfalse\r
2145   \global\@acmtmisfalse\r
2146   \global\@acmtiisfalse\r
2147   \global\@acmtistfalse\r
2148   \global\@acmtoctfalse\r
2149   \global\@acmjdiqfalse\r
2150   \global\@acmtaccessfalse\r
2151   \global\@acmtallipfalse\r
2152   \global\@acmtiisfalse\r
2153   \global\@acmtocefalse\r
2154   \global\@acmteacfalse\r
2155   \global\@acmtommtrue\r
2156   \global\@acmtsasfalse\r
2157   \global\@acmtompecsfalse\r
2158   \def\@journalName{ACM Transactions on Multimedia Computing, Communications and Applications}\r
2159   \def\@journalNameShort{ACM Trans. Multimedia Comput. Commun. Appl.}        \r
2160   \def\@permissionCodeOne{1551-6857} \r
2161   \def\@permissionCodeTwo{0100} \r
2162 }\r
2163 %\r
2164 %%\r
2165 %% TeXSupport: Added new journal TSAS on 2014/09/10\r
2166 %%\r
2167 \DeclareOption{acmtsas}{\r
2168   \typeout{}\r
2169   \typeout{Using ACM, TSAS's option: 2014/09/10 by Aptara}\r
2170   \typeout{}\r
2171   \global\@acmjacmfalse\r
2172   \global\@acmtissecfalse\r
2173   \global\@acmtoclfalse\r
2174   \global\@acmtocsfalse\r
2175   \global\@acmtochifalse\r
2176   \global\@acmtodaesfalse\r
2177   \global\@acmtodsfalse\r
2178   \global\@acmtoisfalse\r
2179   \global\@acmtomacsfalse\r
2180   \global\@acmtomsfalse\r
2181   \global\@acmtoplasfalse\r
2182   \global\@acmtosemfalse\r
2183   \global\@acmtoitfalse\r
2184   \global\@acmtecsfalse\r
2185   \global\@acmtallipfalse\r
2186   \global\@acmjericfalse\r
2187   \global\@acmtacofalse\r
2188   \global\@acmjeafalse\r
2189   \global\@acmtslpfalse\r
2190   \global\@acmciefalse\r
2191   \global\@acmtosfalse\r
2192   \global\@acmcsurfalse\r
2193   \global\@acmjetcfalse\r
2194   \global\@acmtosnfalse\r
2195   \global\@acmtalgfalse\r
2196   \global\@acmtaasfalse\r
2197   \global\@acmtwebfalse\r
2198   \global\@acmtkddfalse\r
2199   \global\@acmtretsfalse\r
2200   \global\@acmtmisfalse\r
2201   \global\@acmtiisfalse\r
2202   \global\@acmtistfalse\r
2203   \global\@acmtoctfalse\r
2204   \global\@acmjdiqfalse\r
2205   \global\@acmtaccessfalse\r
2206   \global\@acmtallipfalse\r
2207   \global\@acmtiisfalse\r
2208   \global\@acmtocefalse\r
2209   \global\@acmteacfalse\r
2210   \global\@acmtommfalse\r
2211   \global\@acmtsastrue\r
2212   \global\@acmtompecsfalse\r
2213   \def\@journalName{ACM Transactions on Spatial Algorithms and Systems}\r
2214   \def\@journalNameShort{ACM Trans. Spatial Algorithms Syst.}        \r
2215   \def\@permissionCodeOne{2374-0353} \r
2216 }\r
2217 %\r
2218 %%\r
2219 %% TeXSupport: Added new journal TOMPECS on 2014/09/10\r
2220 %%\r
2221 \DeclareOption{acmtompecs}{\r
2222   \typeout{}\r
2223   \typeout{Using ACM, TOMPECS's option: 2014/09/10 by Aptara}\r
2224   \typeout{}\r
2225   \global\@acmjacmfalse\r
2226   \global\@acmtissecfalse\r
2227   \global\@acmtoclfalse\r
2228   \global\@acmtocsfalse\r
2229   \global\@acmtochifalse\r
2230   \global\@acmtodaesfalse\r
2231   \global\@acmtodsfalse\r
2232   \global\@acmtoisfalse\r
2233   \global\@acmtomacsfalse\r
2234   \global\@acmtomsfalse\r
2235   \global\@acmtoplasfalse\r
2236   \global\@acmtosemfalse\r
2237   \global\@acmtoitfalse\r
2238   \global\@acmtecsfalse\r
2239   \global\@acmtallipfalse\r
2240   \global\@acmjericfalse\r
2241   \global\@acmtacofalse\r
2242   \global\@acmjeafalse\r
2243   \global\@acmtslpfalse\r
2244   \global\@acmciefalse\r
2245   \global\@acmtosfalse\r
2246   \global\@acmcsurfalse\r
2247   \global\@acmjetcfalse\r
2248   \global\@acmtosnfalse\r
2249   \global\@acmtalgfalse\r
2250   \global\@acmtaasfalse\r
2251   \global\@acmtwebfalse\r
2252   \global\@acmtkddfalse\r
2253   \global\@acmtretsfalse\r
2254   \global\@acmtmisfalse\r
2255   \global\@acmtiisfalse\r
2256   \global\@acmtistfalse\r
2257   \global\@acmtoctfalse\r
2258   \global\@acmjdiqfalse\r
2259   \global\@acmtaccessfalse\r
2260   \global\@acmtallipfalse\r
2261   \global\@acmtiisfalse\r
2262   \global\@acmtocefalse\r
2263   \global\@acmteacfalse\r
2264   \global\@acmtommfalse\r
2265   \global\@acmtsasfalse\r
2266   \global\@acmtompecstrue\r
2267   \def\@journalName{ACM Transactions on Modeling and Performance Evaluation of Computing Systems}\r
2268   \def\@journalName{ACM Trans. Model. Perform. Eval. Comput. Syst.}        \r
2269   \def\@journalNameShort{ACM Trans. Model. Perform. Eval. Comput. Syst.}        \r
2270   \def\@permissionCodeOne{2376-3639}\r
2271 }\r
2272 %\r
2273 \ExecuteOptions{twoside,final,10pt,letterpaper}\r
2274 \ProcessOptions\r
2275 \r
2276 % Including fonts for Production Mode\r
2277 \ifprod@mode\r
2278 % New Century Schoolbook as base font\r
2279 \renewcommand\rmdefault{pnc}\r
2280 % Helvetica as second font\r
2281 \renewcommand\sfdefault{phv}\r
2282 \fi\r
2283 \r
2284 % Packages required\r
2285 \RequirePackage{latexsym}\r
2286 \RequirePackage{color}\r
2287 \usepackage{graphicx}\r
2288 \r
2289 \r
2290 \typeout{Document Class `acmsmall' Electronic Submissions\r
2291 \fileversion\space <\filedate> (ACM).}\r
2292 \r
2293 \def\acmVolume#1{\def\@acmVolume{#1}}\r
2294 \def\acmNumber#1{\def\@acmNumber{#1}}\r
2295 \def\acmArticle#1{\def\@acmArticle{#1}}\r
2296 \def\articleSeq#1{\def\@articleSeq{#1}}\r
2297 \def\acmPrice#1{\def\@acmPrice{#1}}\r
2298 \def\acmYear#1{\def\@acmYear{#1}}\r
2299 \def\acmMonth#1{\def\@acmMonth{#1}}\r
2300 \def\doi#1{\def\@doi{#1}}\r
2301 \r
2302 \r
2303 %To transform the month number in its name in English\r
2304 \newcommand{\monthWord}[1]{\ifcase#1\or\r
2305   January\or February\or March\or April\or May\or June\or\r
2306   July\or August\or September\or October\or November\or December\else Month\fi}\r
2307 \r
2308 \newcommand{\monthInf}[1]{\ifcase#1\or\r
2309   01\or 02\or 03\or 04\or 05\or 06\or\r
2310   07\or 08\or 09\or 10\or 11\or 12\else 00\fi}\r
2311 \r
2312 % First and Last page\r
2313 \newcount\@firstpg\r
2314 \newcount\@lastpg\r
2315 \def\lastpage#1{\global\advance\@lastpg#1\relax}\r
2316 \AtEndDocument{\ifelec@app\else\immediate\write\@mainaux{\string\lastpage{\the\c@page}}\fi}\r
2317 \r
2318 \newdimen\trimheight\r
2319 \newdimen\trimwidth\r
2320 \newdimen\normaltextheight\r
2321 \newdimen\tempdimen  \r
2322 \newbox\tempbox\r
2323 \newbox\tbbox\r
2324 \newdimen\tabledim\r
2325 \r
2326 % Extra symbol\r
2327 \DeclareSymbolFont{newlargesymbols}{OMX}{cmex}{m}{n}\r
2328 \DeclareMathSymbol{\bigsqcup}{\mathop}{newlargesymbols}{"46}\r
2329 \r
2330 % Bold Math\r
2331 \def\boldmath{\mathversion{bold}}\r
2332 \def\bm#1{\mathchoice\r
2333           {\mbox{\boldmath$\displaystyle#1$}}%\r
2334           {\mbox{\boldmath$#1$}}%\r
2335           {\mbox{\boldmath$\scriptstyle#1$}}%\r
2336           {\mbox{\boldmath$\scriptscriptstyle#1$}}}\r
2337 \r
2338 % Font information\r
2339 \lineskip1\p@\r
2340 \normallineskip1\p@\r
2341 \def\baselinestretch{1}\r
2342 \def\@ptsize{0} % needed for amssymbols.sty\r
2343 \r
2344 \@maxdepth\maxdepth\r
2345 \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}\r
2346 \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}\r
2347 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}\r
2348 \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}\r
2349 \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}\r
2350 \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}\r
2351 \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}\r
2352 \newcommand{\pcal}{\@fontswitch{\relax}{\mathcal}}\r
2353 \newcommand{\mit}{\protect\pmit}\r
2354 \newcommand{\pmit}{\@fontswitch{\relax}{\mathnormal}}\r
2355 \def\cal{\mathcal}\r
2356 \r
2357 \renewcommand{\@ptsize}{}\r
2358 \renewcommand{\normalsize}{%\r
2359   \@setfontsize\normalsize\@xpt{11\p@}%\r
2360   \abovedisplayskip .5\baselineskip \@plus2\p@ \@minus\p@\r
2361   \belowdisplayskip \abovedisplayskip\r
2362   \abovedisplayshortskip 6\p@ \@minus 3\p@\r
2363   \belowdisplayshortskip 6\p@ \@minus 3\p@\r
2364   \let\@listi\@listI\r
2365 }\r
2366 \newcommand{\small}{%\r
2367   \@setfontsize\small\@ixpt{10\p@}%\r
2368   \abovedisplayskip 5\p@ \@plus 2\p@ \@minus \p@\r
2369   \belowdisplayskip \abovedisplayskip\r
2370   \abovedisplayshortskip 5\p@ \@minus 2\p@\r
2371   \belowdisplayshortskip 5\p@ \@minus 2\p@\r
2372   \def\@listi{%\r
2373       \leftmargin\leftmargini\r
2374       \topsep 5\p@ \@plus 2\p@ \@minus .2\p@\r
2375       \parsep \z@ \@plus .7\p@\r
2376       \itemsep 1.6\p@ \@plus .8\p@}%\r
2377 }%\r
2378 \r
2379 \newcommand{\footnotesize}{%\r
2380     \@setfontsize\footnotesize\@viiipt{9\p@}%\r
2381     \abovedisplayskip 4\p@ \@plus \p@\r
2382     \belowdisplayskip \abovedisplayskip\r
2383     \abovedisplayshortskip 4\p@ \@minus \p@\r
2384     \belowdisplayshortskip 4\p@ \@minus \p@\r
2385     \def\@listi{%\r
2386         \leftmargin\leftmargini\r
2387         \topsep 4\p@ \@plus \p@\r
2388         \parsep \z@ \@plus .5\p@\r
2389         \itemsep \p@ \@plus .7\p@}\r
2390 }%\r
2391 \normalsize\r
2392 \r
2393 \newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}\r
2394 \newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt}\r
2395 \newcommand\large{\@setfontsize\large\@xiipt{14}}\r
2396 \newcommand\Large{\@setfontsize\Large\@xivpt{18}}\r
2397 \newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}}\r
2398 \newcommand\huge{\@setfontsize\huge\@xxpt{25}}\r
2399 \newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}\r
2400 \r
2401 \def\rhfont{\fontfamily{\sfdefault}\fontsize{9}{10}\selectfont}\r
2402 \def\rfootfont{\fontsize{7}{8}\selectfont}\r
2403 \def\foliofont{\fontfamily{\sfdefault}\fontsize{9}{10}\selectfont}\r
2404 \r
2405 \def\sectionfont{\fontfamily{\sfdefault}\fontsize{9}{11}\selectfont\bfseries\raggedright}\r
2406 \def\refsectionfont{\fontfamily{\sfdefault}\fontsize{9}{11}\selectfont\bfseries}\r
2407 \def\subsectionfont{\fontfamily{\sfdefault}\fontsize{9}{11}\selectfont\bfseries\raggedright}\r
2408 \def\subsubsectionfont{\fontfamily{\sfdefault}\fontsize{9}{11}\selectfont\itshape\raggedright}\r
2409 \def\paragraphfont{\fontsize{10}{11}\selectfont\itshape}\r
2410 \r
2411 \def\figcaptionfont{\fontsize{8}{9}\selectfont}%\r
2412 \def\figcaptionnumfont{\fontfamily{\sfdefault}\fontsize{8}{9}\selectfont}%\r
2413 \def\subcaptionfont{\fontsize{8}{10}\selectfont}%\r
2414 \def\subcaption#1{{\centering\subcaptionfont#1\par}}\r
2415 \r
2416 \def\tablefont{\fontsize{8}{9}\selectfont}%\r
2417 \def\intexttablefont{\fontsize{8}{9}\selectfont\centering}%\r
2418 \def\tablecaptionfont{\fontfamily{\sfdefault}\fontsize{8}{9}\selectfont}%\r
2419 \def\tablenumfont{\fontfamily{\sfdefault}\fontsize{8}{9}\selectfont}%\r
2420 \def\tabnotefont{\fontsize{8}{9}\selectfont}\r
2421 \def\ackfont{\fontsize{8}{10}\selectfont}\r
2422 \r
2423 \setlength\trimheight {10in}\r
2424 \setlength\trimwidth  {6.75in}\r
2425 \r
2426 \textheight 48pc\r
2427 \advance\textheight-7.3pt\r
2428 \setlength\normaltextheight{\textheight}\r
2429 \r
2430 \textwidth 33pc\r
2431 \oddsidemargin .625in\r
2432 \evensidemargin\trimwidth\r
2433 \advance\evensidemargin-\oddsidemargin\r
2434 \advance\evensidemargin-\textwidth\r
2435 \r
2436 \marginparwidth .5in\r
2437 \marginparsep .125in\r
2438 \topmargin 36pt\r
2439 \headheight 6.5\p@\r
2440 \topskip6.2pt\r
2441 \headsep 17.5pt\r
2442 \parindent10\p@\r
2443 \newdimen\normalparindent\r
2444 \normalparindent\parindent\r
2445 \r
2446 \newlength{\footheight}%\r
2447 \footheight 10\p@\r
2448 \footskip 28\p@\r
2449 \r
2450 \columnsep 12\p@\r
2451 \columnseprule 0\p@\r
2452 \r
2453 \footnotesep 7\p@\r
2454 \skip\footins 15\p@ plus 4\p@ minus 3\p@\r
2455 \floatsep 1\baselineskip plus 2\p@ minus 2\p@\r
2456 \textfloatsep \floatsep\r
2457 \intextsep 1pc plus 1pc\r
2458 \r
2459 \newlength{\@maxsep}%\r
2460 \@maxsep 1pc\r
2461 \r
2462 \dblfloatsep 1\baselineskip plus 2\p@ minus 2\p@\r
2463 \dbltextfloatsep 20\p@ plus 2\p@ minus 4\p@\r
2464 \r
2465 \newlength{\@dblmaxsep}%\r
2466 \@dblmaxsep 20\p@\r
2467 \r
2468 \@fptop 0\p@ plus 1fil\r
2469 \@fpsep 1pc plus 2fil\r
2470 \@fpbot 0\p@ plus 1fil\r
2471 \@dblfptop 0\p@ plus 1fil\r
2472 \@dblfpsep 8\p@ plus 2fil\r
2473 \@dblfpbot 0\p@ plus 1fil\r
2474 \r
2475 \marginparpush 6\p@\r
2476 \r
2477 \parskip0\p@\r
2478 \partopsep 0\p@\r
2479 \@lowpenalty 51\r
2480 \@medpenalty 151\r
2481 \@highpenalty 301\r
2482 \r
2483 \@beginparpenalty -\@lowpenalty\r
2484 \@endparpenalty -\@lowpenalty\r
2485 \@itempenalty -\@lowpenalty\r
2486 \r
2487 \setcounter{topnumber}{3}\r
2488 \def\topfraction{.99}\r
2489 \setcounter{bottomnumber}{1}\r
2490 \def\bottomfraction{.5}\r
2491 \setcounter{totalnumber}{3}\r
2492 \def\textfraction{.01}\r
2493 \def\floatpagefraction{.85}\r
2494 \setcounter{dbltopnumber}{2}\r
2495 \def\dbltopfraction{.7}\r
2496 \def\dblfloatpagefraction{.5}\r
2497 \r
2498 % Copyright Information\r
2499 \def\cpyright#1{\gdef\@cpyright{#1}}\r
2500 \cpyright{ACM\ \@permissionCodeOne/\@acmYear/\monthInf{\@acmMonth}-ART\@acmArticle}\r
2501 \r
2502 % Calculating total pages\r
2503 \newcount\@totalpg\r
2504 \def\acmPages#1{\def\@acmPages{#1}}\r
2505 \acmPages{\@totalpg\@lastpg\global\advance\@totalpg-\@firstpg\global\advance\@totalpg\@ne\ifnum\the\@totalpg<\z@0\else\the\@totalpg\fi\ pages}\r
2506 \r
2507 % Reference Format\r
2508 \gdef\formatline{{\em{\@journalNameShort\ }}\@acmVolume, \@acmNumber, Article~\@acmArticle\ (\monthWord{\@acmMonth}\ \@acmYear), \@acmPages.\\ % Need Journal Name in italics - in 'ACM Reference Format' before 1. INTRODUCTION - Gerry - March 2012\r
2509 {\tt DOI:}http://dx.doi.org/10.1145/\@doi} % Gerry March 2012 - on first page in 'ACM Reference Format'\r
2510 \gdef\copyrightline{\copyright\ \@acmYear\ \@cpyright\ \$\@acmPrice}\r
2511 \gdef\doiline{{\tt DOI:}http://dx.doi.org/10.1145/\@doi} % Gerry - March 2012 - beneath copyright line\r
2512 \r
2513 % Page Style\r
2514 \mark{{}{}}\r
2515 \r
2516 \def\ps@headings{%\r
2517     \let\@mkboth\@gobbletwo\r
2518     \def\@oddhead{{\rhfont\rightmark}\hfill{\foliofont \@acmArticle:\thepage}}%\r
2519     \def\@evenhead{{\foliofont \@acmArticle:\thepage}\hfill{\rhfont\leftmark}}%\r
2520     \def\@evenfoot{\null\hfill{\rfootfont\@runningfoot}}\r
2521     \def\@oddfoot{{\rfootfont\@runningfoot} \hfill\null}%\r
2522     \let\partmark\@gobble\r
2523     \let\sectionmark\@gobble\r
2524     \let\subsectionmark\@gobble\r
2525 }\r
2526 \r
2527 \def\ps@appheadings{%\r
2528     \let\@mkboth\@gobbletwo\r
2529     \def\@oddhead{{\rhfont\rightmark}\hfill{\foliofont \thepage}}%\r
2530     \def\@evenhead{{\foliofont \thepage}\hfill{\rhfont\leftmark}}%\r
2531     \def\@evenfoot{\null\hfill{\rfootfont\@runningfoot}}\r
2532     \def\@oddfoot{{\rfootfont\@runningfoot} \hfill\null}%\r
2533     \let\partmark\@gobble\r
2534     \let\sectionmark\@gobble\r
2535     \let\subsectionmark\@gobble\r
2536 }\r
2537 \r
2538 \def\@runningfoot{}\r
2539 \def\runningfoot#1{\gdef\@runningfoot{#1}}\r
2540 \r
2541 \if@acmtodaes\r
2542  \def\pubphrase{Pub. date}\r
2543 \else\r
2544 \if@acmtosem\r
2545  \def\pubphrase{Pub. date}\r
2546 \else\r
2547 \if@acmjetc\r
2548  \def\pubphrase{Pub. date}\r
2549 \else\r
2550 \if@acmtiis\r
2551  \def\pubphrase{Pub. date}\r
2552 \else\r
2553  \def\pubphrase{Publication date}\r
2554 \fi\fi\fi\fi\r
2555 \r
2556 \runningfoot{\if@acmtomm\@journalNameShort\else\@journalName\fi, Vol.~\@acmVolume, No.~\@acmNumber, Article~\@acmArticle,\ \pubphrase:\ \monthWord{\@acmMonth}\ \@acmYear.}\r
2557 \r
2558 \def\@firstfoot{}\r
2559 \gdef\firstfoot{\if@acmtomm\@journalNameShort\else\@journalName\fi, Vol.~\@acmVolume,\ No.~\@acmNumber,\ Article\ \@acmArticle,\ \pubphrase:\ \monthWord{\@acmMonth}\ \@acmYear.}\r
2560 \r
2561 \def\ps@titlepage{%\r
2562     \let\@mkboth\@gobbletwo\r
2563     \let\@oddhead\@empty\r
2564     \def\@oddfoot{\null\hfill\fontsize{7}{8}\selectfont\firstfoot}\r
2565     \let\@evenhead\@empty\r
2566     \def\@evenfoot{\fontsize{7}{8}\selectfont\firstfoot\hfill\null}%\r
2567 }\r
2568 \r
2569 \def\titlepage{%\r
2570     \@restonecolfalse\r
2571     \if@twocolumn\r
2572         \@restonecoltrue\r
2573         \onecolumn\r
2574     \else\r
2575         \newpage\r
2576     \fi\r
2577     \thispagestyle{empty}%\r
2578     \c@page\z@\r
2579 }\r
2580 \r
2581 \def\endtitlepage{%\r
2582     \if@restonecol\r
2583         \twocolumn\r
2584     \else\r
2585         \newpage\r
2586     \fi\r
2587 }\r
2588 \r
2589 % Author and Affiliation\r
2590 \def\author#1{\gdef\@author{#1}}%\r
2591 \def\and{{\upshape and }}\r
2592 \def\affil#1{\gdef\@affil{#1}\ifx\@affil\@empty\else{\reset@font\affilfont\unskip,\ #1\vphantom{gy}\endgraf}\fi}\affil{}\r
2593 \r
2594 \def\titlefont{\fontfamily{\sfdefault}\fontsize{12}{12}\selectfont\bfseries}\r
2595 \def\authorfont{\fontfamily{\sfdefault}\fontsize{10}{11}\rightskip0pt plus1fill\selectfont}\r
2596 \def\affilfont{\fontfamily{\rmdefault}\fontsize{8}{11}\rightskip0pt plus1fill\selectfont}\r
2597 \def\abstractfont{\fontsize{8}{10}\selectfont}\r
2598 \r
2599 % Article Title page\r
2600 \def\maketitle{%\r
2601     \newpage\r
2602     \thispagestyle{titlepage}%\r
2603     \global\@topnum\z@\r
2604     \begingroup\r
2605         \lineskip \z@\r
2606         \null\r
2607         \vskip -15.4\p@\relax\r
2608         \parindent\z@\r
2609         \begingroup\r
2610           \raggedright\r
2611           \hyphenpenalty\@M\r
2612           {\titlefont\@title\par}\r
2613         \global\@firstpg\the\c@page\r
2614         \endgroup\r
2615         \vskip 12\p@\r
2616         \begingroup\r
2617 \r
2618         {\addtolength{\baselineskip}{2\p@}%\r
2619             {\authorfont\@author\par}\r
2620             \vskip7pt\r
2621             \ifx \@sponsors\@empty\r
2622             \else\r
2623               \hbox{\vrule height .2\p@ width \textwidth}\r
2624               \@sponsors \par\r
2625             \fi\r
2626         }\r
2627 \endgroup\r
2628      \par\vskip 22\p@\box\@abstract\r
2629      \par%\r
2630      \ifx\@categories\@empty \r
2631      \else\r
2632         \abstractfont\r
2633          \vskip 4\p@\relax \r
2634          \def\and{\unskip{\rm;} }%\r
2635          \noindent Categories and Subject Descriptors: \@categories\par\r
2636      \fi\r
2637      \ifx\@terms\@empty\else\r
2638         \abstractfont\r
2639         \vskip 4\p@\r
2640         \noindent  General Terms: \ignorespaces\r
2641         \@terms\r
2642         \par\r
2643      \fi\r
2644      \ifx\@keywords\@empty\else\r
2645         \abstractfont\r
2646         \vskip 4\p@\r
2647         \noindent  Additional Key Words and Phrases: \ignorespaces\r
2648         \@keywords\r
2649         \par\r
2650      \fi\r
2651      \ifx\@acmformat\@empty\else\r
2652         \abstractfont\r
2653         \vskip 4\p@\r
2654         \noindent  {\bf ACM Reference Format:}\\\r
2655         \@acmformat\vskip 0.5\p@\r
2656         \par\r
2657      \fi\r
2658     \par\r
2659     \endgroup\r
2660     \let\maketitle\relax\r
2661     \global\let\@sponsors\@empty\r
2662     \global\let\@categories\@empty\r
2663     \global\let\@terms\@empty\r
2664     \global\let\@keywords\@empty\r
2665     }\r
2666 \r
2667 % Sponsor\r
2668 \def\sponsor#1{\@ifnextchar\r
2669  [{\@sponsor{#1}}{\@xsponsor{#1}}}\r
2670 \def\@sponsor#1[#2]{\edef\@tempa{\ifx \@sponsors\@empty\r
2671  \else ; \fi}{\def\protect{\noexpand\protect\r
2672  \noexpand}\def\and{\noexpand\and}\xdef\@sponsors{\@sponsors\@tempa #1 }}}\r
2673 \def\@xsponsor#1{\edef\@tempa{\ifx \@sponsors\@empty \else ;\r
2674 \fi}{\def\protect{\noexpand\protect\noexpand}\def\and{\noexpand\r
2675  \and}\xdef\@sponsors{\@sponsors\@tempa #1}}}\r
2676 \def\@sponsors{}\r
2677 \r
2678 % Abstract\r
2679 \newbox\@abstract\r
2680 \def\abstract{\r
2681 \global\setbox\@abstract=\vbox\bgroup\everypar{}%\r
2682 \abstractfont\noindent\ignorespaces}\r
2683 \def\endabstract{\egroup}\r
2684 \r
2685 % Terms\r
2686 \def\terms#1{\gdef\@terms{#1}}\r
2687 \let\@terms\@empty\r
2688 \r
2689 % Keywords\r
2690 \def\keywords#1{\gdef\@keywords{#1}}\r
2691 \let\@keywords\@empty\r
2692 \r
2693 % Reference Format\r
2694 \def\acmformat#1{\gdef\@acmformat{#1 \formatline\vphantom{y}}}\r
2695 \let\@acmformat\@empty\r
2696 \r
2697 % Category\r
2698 \def\category#1#2#3{%\r
2699     \@ifnextchar [{\@category{#1}{#2}{#3}}{\@category{#1}{#2}{#3}[]}}\r
2700 \def\@category#1#2#3[#4]{%\r
2701     \edef\@tempa{\ifx \@categories\@empty \else ; \fi}%\r
2702     \begingroup\r
2703         \def\protect{\noexpand\protect\noexpand}%\r
2704         \let\and\relax\r
2705         \xdef\@categories{%\r
2706             \@categories\r
2707             \@tempa\r
2708             #1 [{\bf #2}]%\r
2709             \if!#4!%\r
2710                 \if!#3!\else : #3\fi\r
2711             \else\r
2712                 :\space\r
2713                 \if!#3!\else #3\kern\z@---\hskip\z@\fi\r
2714                 {\it #4}%\r
2715             \fi\r
2716         }%\r
2717     \endgroup\r
2718 }\r
2719 \r
2720 % Permission Information\r
2721 \newbox\@permissionbox\r
2722 \newenvironment{permission}{%\r
2723    \footnotesize\r
2724    \global\setbox\@permissionbox\vbox\bgroup\par\addvspace{3.1pt}\noindent\ignorespaces\r
2725    }{%\r
2726    \par\egroup}\r
2727 %\r
2728 \let\@categories\@empty\r
2729 \def\bottomstuff{%\r
2730     \global\@topnum\z@\r
2731     \global\@botroom \textheight\r
2732     \@float{figure}[b]\r
2733         \footnotesize\r
2734         \parindent\z@\r
2735         \null\r
2736         \vskip -\textfloatsep\r
2737         \vskip 6\p@ plus2pt minus2pt\r
2738         \hrule \@height .5\p@ \@width \textwidth\r
2739         \vskip 6\p@ %7.5\r
2740         \ignorespaces\r
2741 }\r
2742 \def\endbottomstuff{\par%\r
2743 Permission to make digital or hard copies  of part or all of this work \r
2744 for personal or classroom use is\r
2745 granted without fee provided that copies are not made or distributed for profit or commercial\r
2746 advantage and that copies show this notice on the first page or initial screen of a display\r
2747 along with the full citation. Copyrights for components of this work owned by others than ACM\r
2748 must be honored. Abstracting with credit is permitted. To copy otherwise, to republish,\r
2749 to post on servers, to redistribute to lists, or to use any component of this work in other\r
2750 works requires prior specific permission and\hspace*{.5pt}/or a fee. \r
2751 Permissions may be requested from Publications Dept., ACM, Inc., 2 Penn Plaza, Suite 701, \r
2752 New York, NY 10121-0701 USA, fax $+$1 (212) 869-0481,\r
2753 or permissions@acm.org.\par\box\@permissionbox\r
2754 \copyrightline\par\r
2755 \doiline\r
2756 \vskip-13pt\r
2757 \strut\r
2758 \end@float\r
2759 }\r
2760 \r
2761 % Heads\r
2762 \newcounter{part}\r
2763 \newcounter{section}\r
2764 \newcounter{subsection}[section]\r
2765 \newcounter{subsubsection}[subsection]\r
2766 \newcounter{paragraph}[subsubsection]\r
2767 \def\thepart{\Roman{part}}\r
2768 \def\thesection{\arabic{section}}\r
2769 \def\thesubsection{\thesection.\arabic{subsection}}\r
2770 \def\thesubsubsection{\thesubsection.\arabic{subsubsection}}\r
2771 \def\theparagraph{\thesubsubsection.\arabic{paragraph}}\r
2772 \r
2773 % for checking Uppercase heads\r
2774 \newif\if@uchead\@ucheadfalse\r
2775 \r
2776 \setcounter{secnumdepth}{3}\r
2777 \def\part{\@startsection{part}{9}{\z@}%\r
2778                         {-10\p@ \@plus -4\p@ \@minus -2\p@}%\r
2779                         {4\p@}%\r
2780                         {\normalsize\itshape\@ucheadtrue}}\r
2781 \def\section{\@startsection{section}{1}{\z@}%\r
2782                            {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}%\r
2783                            {.25\baselineskip}%\r
2784                            {\sectionfont\@ucheadtrue}}\r
2785 \def\refsection{\@startsection{section}{1}{\z@}%\r
2786                               {-1\baselineskip \@plus -2\p@ \@minus -.2\p@}%\r
2787                               {.5\baselineskip}%\r
2788                               {\refsectionfont\@ucheadtrue}}\r
2789 \def\subsection{\@startsection{subsection}{2}{\z@}%\r
2790                               {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}%\r
2791                               {.25\baselineskip}%\r
2792                               {\subsectionfont}}\r
2793 \def\subsubsection{\@startsection{subsubsection}{3}{10pt}%\r
2794                                  {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%\r
2795                                  {-3.5\p@}{\subsubsectionfont}}\r
2796 \def\paragraph{\@startsection{paragraph}{4}{\parindent}%\r
2797                              {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%\r
2798                              {-3.5\p@}%\r
2799                              {\paragraphfont}}\r
2800 \r
2801 \def\@seccntformat#1{\csname the#1\endcsname.\hskip .4em}\r
2802 \let\@period=.\r
2803 \def\@sect#1#2#3#4#5#6[#7]#8{%\r
2804   \ifnum #2>\c@secnumdepth\r
2805     \let\@svsec\@empty\r
2806   \else\r
2807     \refstepcounter{#1}%\r
2808     \edef\@svsec{\begingroup\csname the#1\endcsname\endgroup\relax .\hskip .4em}%\r
2809     \protected@edef\@svsec{\@seccntformat{#1}\relax}%\r
2810   \fi\r
2811   \@tempskipa #5\relax\r
2812   \ifdim \@tempskipa>\z@\r
2813     \begingroup\r
2814       #6{%\r
2815         \@hangfrom{\hskip #3\relax\@svsec}%\r
2816           \interlinepenalty \@M \if@uchead\MakeUppercase{#8}\else#8\fi\@@par}%\r
2817     \endgroup\r
2818     \csname #1mark\endcsname{#7}%\r
2819     \addcontentsline{toc}{#1}{%\r
2820       \ifnum #2>\c@secnumdepth \else\r
2821         \protect\numberline{\csname the#1\endcsname}%\r
2822       \fi\r
2823       #7}%\r
2824   \else\r
2825     \def\@svsechd{%\r
2826       #6{\hskip #3\relax\r
2827       \@svsec #8}%\r
2828       \csname #1mark\endcsname{#7}%\r
2829       \addcontentsline{toc}{#1}{%\r
2830         \ifnum #2>\c@secnumdepth \else\r
2831           \protect\numberline{\csname the#1\endcsname}%\r
2832         \fi\r
2833         #7}}%\r
2834   \fi\r
2835   \@xsect{#5}}\r
2836 \def\@xsect#1{%\r
2837     \@tempskipa #1\relax\r
2838     \ifdim \@tempskipa>\z@\r
2839         \par\r
2840         \nobreak\r
2841         \vskip \@tempskipa\r
2842         \@afterheading\r
2843     \else\r
2844         \global\@nobreakfalse\r
2845         \global\@noskipsectrue\r
2846         \everypar{%\r
2847             \if@noskipsec\r
2848                 \global\@noskipsecfalse\r
2849                 \clubpenalty\@M\r
2850                 \hskip -\parindent\r
2851                 \begingroup\r
2852                     \@svsechd\r
2853                     \@period\r
2854                 \endgroup\r
2855                 \unskip\r
2856                 \@tempskipa #1\relax\r
2857                 \hskip -\@tempskipa\r
2858             \else\r
2859                 \clubpenalty \@clubpenalty\r
2860                 \everypar{}%\r
2861             \fi\r
2862         }%\r
2863     \fi\r
2864     \ignorespaces\r
2865 }\r
2866 \r
2867 % Lists\r
2868 \def\@trivlist{%\r
2869     \@topsepadd\topsep\r
2870     \if@noskipsec\r
2871         \global\let\@period\@empty\r
2872         \leavevmode\r
2873         \global\let\@period.%\r
2874     \fi\r
2875     \ifvmode\r
2876         \advance\@topsepadd\partopsep\r
2877     \else\r
2878         \unskip\r
2879         \par\r
2880     \fi\r
2881     \if@inlabel\r
2882         \@noparitemtrue\r
2883         \@noparlisttrue\r
2884     \else\r
2885         \@noparlistfalse\r
2886         \@topsep\@topsepadd\r
2887     \fi\r
2888     \advance\@topsep \parskip\r
2889     \leftskip\z@skip\r
2890     \rightskip\@rightskip\r
2891     \parfillskip\@flushglue\r
2892     \@setpar{\if@newlist\else{\@@par}\fi}\r
2893     \global\@newlisttrue\r
2894     \@outerparskip\parskip\r
2895 }\r
2896 \labelsep 5\p@\r
2897 \r
2898 \settowidth{\leftmargini}{9.}\r
2899 \addtolength\leftmargini\labelsep\r
2900 \r
2901 \settowidth{\leftmarginii}{(b)}\r
2902 \addtolength\leftmarginii\labelsep\r
2903 \r
2904 \leftmarginiii  \leftmarginii\r
2905 \leftmarginiv   \leftmarginii\r
2906 \leftmarginv    \leftmarginii\r
2907 \leftmarginvi   \leftmarginii\r
2908 \leftmargin     \leftmargini\r
2909 \r
2910 \labelwidth\leftmargini\r
2911 \advance\labelwidth-\labelsep\r
2912 \def\@listI{%\r
2913     \leftmargin\leftmargini\r
2914     \parsep \z@ \r
2915     \topsep .5\baselineskip \@plus 2\p@%\r
2916     \itemsep\z@%\r
2917 }\r
2918 \r
2919 \let\@listi\@listI\r
2920 \r
2921 \@listi\r
2922 \def\@listii{%\r
2923     \leftmargin\leftmarginii\r
2924     \labelwidth\leftmarginii\r
2925     \advance\labelwidth-\labelsep\r
2926     \topsep \z@ \r
2927     \parsep \z@ \r
2928     \itemsep \parsep\r
2929 }\r
2930 \def\@listiii{%\r
2931     \leftmargin\leftmarginiii\r
2932     \labelwidth\leftmarginiii\r
2933     \advance\labelwidth-\labelsep\r
2934     \topsep \z@ \@plus \p@\r
2935     \parsep \z@ \r
2936     \itemsep \parsep\r
2937 }\r
2938 \def\@listiv{%\r
2939     \leftmargin\leftmarginiv\r
2940     \labelwidth\leftmarginiv\r
2941     \advance\labelwidth-\labelsep\r
2942 }\r
2943 \def\@listv{%\r
2944     \leftmargin\leftmarginv\r
2945     \labelwidth\leftmarginv\r
2946     \advance\labelwidth-\labelsep\r
2947 }\r
2948 \def\@listvi{%\r
2949     \leftmargin\leftmarginvi\r
2950     \labelwidth\leftmarginvi\r
2951     \advance\labelwidth-\labelsep\r
2952 }\r
2953 \newdimen\enumdim\r
2954 \def\enummax#1{%\r
2955   \setbox\tempbox\hbox{#1\hskip\labelsep}%\r
2956   \enumdim\wd\tempbox\r
2957   \expandafter\global\csname leftmargin\romannumeral\the\@enumdepth\endcsname\r
2958   \enumdim}\r
2959 \r
2960 \enummax{1.}\r
2961 \def\enumerate{\@ifnextchar[{\@enumerate}{\@enumerate[\csname label\@enumctr\endcsname]}}%% \r
2962 \def\@enumerate[#1]{\par\abovedisplayskip .25\baselineskip \@plus2\p@\r
2963                     \belowdisplayskip .25\baselineskip \@plus2\p@\r
2964       \ifnum \@enumdepth >3 \@toodeep\else\r
2965       \advance\@enumdepth\@ne\r
2966       \edef\@enumctr{enum\romannumeral\the\@enumdepth}%\r
2967       \setcounter{\@enumctr}{1}\enummax{#1}%\r
2968       \list\r
2969       {\csname label\@enumctr\endcsname}{\usecounter{\@enumctr}%\r
2970       \def\makelabel##1{\hss\llap{##1}}}\fi}\r
2971 \def\endenumerate{\endlist}%% \r
2972 \def\longenum{%\r
2973     \leftmargin0pt\r
2974     \ifnum \@enumdepth >3\r
2975         \@toodeep\r
2976     \else\r
2977         \advance\@enumdepth \@ne\r
2978         \edef\@enumctr{enum\romannumeral\the\@enumdepth}%\r
2979         \list{\csname label\@enumctr\endcsname}{%\r
2980             \usecounter{\@enumctr}%\r
2981             \labelwidth\z@\leftmargin0pt\r
2982             \itemindent\parindent\advance\itemindent\labelsep\r
2983         }%\r
2984     \fi\r
2985 }\r
2986 \let\endlongenum\endlist\r
2987 \r
2988 \def\labelenumi{{\rm (}\arabic{enumi}\/{\rm )}} \r
2989 \def\theenumi{\arabic{enumi}} \r
2990 \def\labelenumii{{\rm (}\alph{enumii}\rm{)}}\r
2991 \def\theenumii{\alph{enumii}}\r
2992 \def\p@enumii{\theenumi}\r
2993 \def\labelenumiii{\roman{enumiii}.}\r
2994 \def\theenumiii{\roman{enumiii}}\r
2995 \def\p@enumiii{\theenumi{\rm (}\theenumii{\rm )}}\r
2996 \def\labelenumiv{\Alph{enumiv}.}\r
2997 \def\theenumiv{\Alph{enumiv}}\r
2998 \def\p@enumiv{\p@enumiii\theenumiii}\r
2999 \newcommand\labelitemi{\texthyphen}%\r
3000 \newcommand\labelitemii{\texthyphen}%\r
3001 \newcommand\labelitemiii{\texthyphen}%\r
3002 \newcommand\labelitemiv{\texthyphen}%\r
3003 \font\lcir = lcircle10 at 8pt\r
3004 \newcommand\bulls{\raise1.5pt\hbox{\lcir\char'162}}\r
3005 \def\textbullet{\leavevmode\raise2pt\hbox{\bulls}}\r
3006 \def\texthyphen{---}\r
3007 \newif\ifhyphen\hyphenfalse\r
3008 \r
3009 \def\itemize{%\r
3010   \ifnum \@itemdepth >3 \@toodeep\else \advance\@itemdepth \@ne\r
3011   \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%\r
3012   \list{\csname\@itemitem\endcsname}%\r
3013        {\advance\leftmargin-5.7pt\labelsep2pt\r
3014        \def\makelabel##1{\hss\llap{##1}}}\fi}%\r
3015 \let\enditemize =\endlist\r
3016 \r
3017 \newenvironment{hyphenlist}{%\r
3018    \hyphentrue\r
3019    \renewcommand\labelitemi{\texthyphen}%\r
3020    \renewcommand\labelitemii{\texthyphen}%\r
3021    \renewcommand\labelitemiii{\texthyphen}%\r
3022    \renewcommand\labelitemiv{\texthyphen}%\r
3023    \begin{itemize}\r
3024 }{%\r
3025    \end{itemize}\r
3026    \hyphenfalse}\r
3027 %\r
3028 \newenvironment{bulletlist}{%\r
3029 \leftmargini20pt\r
3030    \renewcommand\labelitemi{\textbullet}%\r
3031    \renewcommand\labelitemii{\textbullet}%\r
3032    \renewcommand\labelitemiii{\textbullet}%\r
3033    \renewcommand\labelitemiv{\textbullet}%\r
3034    \begin{itemize}\r
3035 }{%\r
3036    \end{itemize}}\r
3037 \r
3038 \def\longitem{%\r
3039     \list{---}{%\r
3040         \labelwidth\z@\r
3041         \leftmargin\z@\r
3042         \itemindent\parindent\r
3043         \advance\itemindent\labelsep\r
3044     }%\r
3045 }\r
3046 \let\endlongitem\endlist\r
3047 \def\verse{%\r
3048     \let\\=\@centercr\r
3049     \list{}{%\r
3050         \leftmargin 2pc\r
3051         \itemindent -1.5em\r
3052         \listparindent \itemindent\r
3053         \rightmargin\leftmargin\r
3054         \advance\leftmargin 1.5em\r
3055     }%\r
3056     \item[]\r
3057 }\r
3058 \r
3059 \let\endverse\endlist\r
3060 \def\quotation{%\r
3061     \list{}{%\r
3062         \leftmargin 2pc\r
3063         \listparindent .5em\r
3064         \itemindent\listparindent\r
3065         \rightmargin\leftmargin\r
3066         \parsep \z@ \@plus \p@\r
3067     }%\r
3068     \item[]\r
3069 }\r
3070 \r
3071 \let\endquotation=\endlist\r
3072 \def\quote{%\r
3073     \list{}{%\r
3074         \leftmargin 2pc\r
3075         \rightmargin\leftmargin\r
3076     }%\r
3077     \item[]\r
3078 }\r
3079 \r
3080 \let\endquote=\endlist\r
3081 %\r
3082 \def\extractfont{\fontsize{8}{10}\selectfont\leftskip8pt\rightskip8pt}\r
3083 \newenvironment{extract}{\par\addvspace{7pt plus2pt}\r
3084 \parindent8pt\r
3085 \extractfont\r
3086 \noindent\ignorespaces\r
3087 }{%\r
3088 \par\addvspace{6pt plus2pt}}\r
3089 \r
3090 \def\descriptionlabel#1{%\r
3091   \hspace\labelsep \normalfont\itshape #1.%\r
3092 }%\r
3093 \newenvironment{description}{%\r
3094  \list{}{%\r
3095     \labelwidth\z@\r
3096     \let\makelabel\descriptionlabel\r
3097  }\r
3098 }{\endlist}%\r
3099 \r
3100 \def\describe#1{%\r
3101     \list{}{%\r
3102         \listparindent\parindent\r
3103         \settowidth{\labelwidth}{#1}%\r
3104         \leftmargin\labelwidth\r
3105         \addtolength\leftmargin\labelsep\r
3106         \def\makelabel##1{##1\hfil}%\r
3107     }%\r
3108 }\r
3109 \let\enddescribe\endlist\r
3110 \r
3111 \def\program{%\r
3112     \ifx\@currsize\normalsize\r
3113         \small\r
3114     \else\r
3115         \rm\r
3116     \fi\r
3117     \tabbing\r
3118 }\r
3119 \let\endprogram\endtabbing\r
3120 \r
3121 % Enunciations\r
3122 \newif\ifitalicenv\italicenvtrue\r
3123 \r
3124 \newtheorem{theorem}{Theorem}[section]\r
3125 \newtheorem{conjecture}[theorem]{Conjecture}\r
3126 \newtheorem{proposition}[theorem]{Proposition}\r
3127 \newtheorem{lemma}[theorem]{Lemma}\r
3128 \newtheorem{corollary}[theorem]{Corollary}\r
3129 %\r
3130 \newtheorem{exam}[theorem]{Example}\r
3131 \newenvironment{example}{%\r
3132 \italicenvfalse\r
3133 \begin{exam}}{\end{exam}\italicenvtrue}\r
3134 %\r
3135 \newtheorem{defi}[theorem]{Definition}\r
3136 \newenvironment{definition}{%\r
3137 \italicenvfalse\r
3138 \begin{defi}}{\end{defi}\italicenvtrue}\r
3139 \r
3140 \def\@begintheorem#1#2{%\r
3141     \trivlist\r
3142     \item[%\r
3143         \hskip 12\p@\r
3144         \hskip \labelsep\r
3145         {\ifitalicenv\sc\else\itshape\fi #1\hskip 5\p@\relax{\rm #2}.\enspace}]%\r
3146         \ifitalicenv\itshape\else\upshape\fi\hskip-\labelsep%\r
3147 }\r
3148 \def\@opargbegintheorem#1#2#3{%\r
3149     \trivlist\r
3150     \item[\hskip 12pt\r
3151           \hskip \labelsep\r
3152           {\ifitalicenv{\sc{#1}}\else{\itshape#1}\fi%\r
3153            \savebox\@tempboxa{\ifitalicenv{\scshape#3}\else{\itshape#3}\fi}%\r
3154            \ifdim\wd\@tempboxa>\z@%\r
3155            \ {\rm #2}\unskip\hskip5pt\relax$($\box\@tempboxa$)$% \r
3156            \fi.\unskip\hskip5pt}]\r
3157 \ifitalicenv\itshape\else\upshape\fi\hskip-\labelsep}\r
3158 \r
3159 \newif\if@qeded\r
3160 \global\@qededfalse\r
3161 \def\proof{%\r
3162     \global\@qededfalse\r
3163     \@ifnextchar[{\@xproof}{\@proof}}\r
3164 \r
3165 \def\endproof{%\r
3166     \if@qeded\else\qed\fi\r
3167     \endtrivlist\r
3168 }\r
3169 \def\@proof{%\r
3170     \trivlist\r
3171     \item[%\r
3172         \hskip 12\p@\r
3173         \hskip \labelsep\r
3174         {\sc Proof.\enspace}]\hskip-\labelsep%\r
3175     \ignorespaces\r
3176 }\r
3177 \def\@xproof[#1]{%\r
3178     \trivlist\r
3179     \item[\hskip 12\p@\hskip \labelsep{\sc Proof #1.}]%\r
3180     \ignorespaces\r
3181 }\r
3182 \def\qed{\unskip\kern 10pt{\unitlength1pt\linethickness{.4pt}\framebox(5,5){}}\r
3183     \global\@qededtrue\r
3184     }%\r
3185 \def\newdef#1#2{%\r
3186     \expandafter\@ifdefinable\csname #1\endcsname\r
3187         {\@definecounter{#1}%\r
3188          \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%\r
3189          \global\@namedef{#1}{\@defthm{#1}{#2}}%\r
3190          \global\@namedef{end#1}{\@endtheorem}%\r
3191     }%\r
3192 }\r
3193 \def\@defthm#1#2{%\r
3194     \refstepcounter{#1}%\r
3195     \@ifnextchar[{\@ydefthm{#1}{#2}}{\@xdefthm{#1}{#2}}%\r
3196 }\r
3197 \def\@xdefthm#1#2{%\r
3198     \@begindef{#2}{\csname the#1\endcsname}%\r
3199     \ignorespaces\r
3200 }\r
3201 \def\@ydefthm#1#2[#3]{%\r
3202     \trivlist\r
3203     \item[%\r
3204         \hskip 10\p@\r
3205         \hskip \labelsep\r
3206         {\it #2%\r
3207          \savebox\@tempboxa{#3}%\r
3208          \ifdim \wd\@tempboxa>\z@\r
3209             \ \box\@tempboxa\r
3210          \fi.%\r
3211         }]%\r
3212     \ignorespaces\r
3213 }\r
3214 \def\@begindef#1#2{%\r
3215     \trivlist\r
3216     \item[%\r
3217         \hskip 10\p@\r
3218         \hskip \labelsep\r
3219         {\it #1\ \rm #2.}%\r
3220     ]%\r
3221 }\r
3222 \r
3223 % Maths\r
3224 \def\theequation{\arabic{equation}}\r
3225 \r
3226 \def\@marrayclassiv{\@addtopreamble{$\displaystyle \@nextchar$}}\r
3227 \def\@marrayclassz{\ifcase \@lastchclass \@acolampacol \or \@ampacol \or\r
3228  \or \or \@addamp \or\r
3229  \@acolampacol \or \@firstampfalse \@acol \fi\r
3230 \edef\@preamble{\@preamble\r
3231  \ifcase \@chnum \r
3232  \hfil$\relax\displaystyle\@sharp$\hfil \or $\relax\displaystyle\@sharp$\hfil \r
3233  \or \hfil$\relax\displaystyle\@sharp$\fi}}\r
3234 \def\marray{\arraycolsep 2.5pt\let\@acol\@arrayacol \let\@classz\@marrayclassz\r
3235  \let\@classiv\@marrayclassiv \let\\\@arraycr\def\@halignto{}\@tabarray}\r
3236 \def\endmarray{\crcr\egroup\egroup}\r
3237 \r
3238 \arraycolsep 2.5\p@\r
3239 \tabcolsep 6\p@\r
3240 \arrayrulewidth .25\p@\r
3241 \doublerulesep 2\p@\r
3242 \tabbingsep \labelsep\r
3243 \r
3244 \skip\@mpfootins = \skip\footins\r
3245 \fboxsep = 3pt \fboxrule = .4\p@\r
3246 \r
3247 % Table of Contents\r
3248 \def\@pnumwidth{1.55em}\r
3249 \def\@tocrmarg {2.55em}\r
3250 \def\@dotsep{4.5}\r
3251 \setcounter{tocdepth}{3}\r
3252 \def\tableofcontents{%\r
3253     \section*{Contents\@mkboth{CONTENTS}{CONTENTS}}\r
3254     \@starttoc{toc}%\r
3255 }\r
3256 \def\l@part#1#2{%\r
3257     \addpenalty\@secpenalty\r
3258     \addvspace{2.25em \@plus \p@}%\r
3259     \begingroup\r
3260         \@tempdima 3em\r
3261         \parindent \z@\r
3262         \rightskip \@pnumwidth\r
3263         \parfillskip -\@pnumwidth\r
3264         {\large \bf \leavevmode #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par\r
3265         \nobreak\r
3266         \endgroup\r
3267 }\r
3268 \def\l@section#1#2{%\r
3269     \addpenalty\@secpenalty\r
3270     \addvspace{1.0em \@plus \p@}%\r
3271     \@tempdima 1.5em\r
3272     \begingroup\r
3273         \parindent \z@\r
3274         \rightskip \@pnumwidth\r
3275         \parfillskip -\@pnumwidth\r
3276         \bf \leavevmode #1\hfil \hb@xt@\@pnumwidth{\hss #2}\par\r
3277     \endgroup\r
3278 }\r
3279 \def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}\r
3280 \def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}\r
3281 \r
3282 % List of figures\r
3283 \def\listoffigures{%\r
3284     \section*{List of Figures\@mkboth{LIST OF FIGURES}{LIST OF FIGURES}}\r
3285     \@starttoc{lof}}\r
3286 \def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}\r
3287 \r
3288 % List of tables\r
3289 \def\listoftables{%\r
3290     \section*{List of Tables\@mkboth{LIST OF TABLES}{LIST OF TABLES}}\r
3291     \@starttoc{lot}}\r
3292 \let\l@table\l@figure\r
3293 \r
3294 % Index\r
3295 \newif\if@restonecol\r
3296 \def\theindex{%\r
3297     \@restonecoltrue\r
3298     \if@twocolumn \@restonecolfalse \fi\r
3299     \columnseprule \z@\r
3300     \columnsep 35\p@\r
3301     \twocolumn[\section*{Index}]\r
3302     \@mkboth{INDEX}{INDEX}%\r
3303     \thispagestyle{plain}%\r
3304     \parindent\z@\r
3305     \parskip\z@ \@plus .3\p@\relax\r
3306     \let\item\@idxitem\r
3307 }\r
3308 \r
3309 \def\endtheindex{%\r
3310     \if@restonecol\r
3311         \onecolumn\r
3312     \else\r
3313         \clearpage\r
3314     \fi\r
3315 }\r
3316 \def\@idxitem{\par\hangindent 40\p@}\r
3317 \def\subitem{\par\hangindent 40\p@ \hspace*{20\p@}}\r
3318 \def\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}}\r
3319 \def\indexspace{\par \vskip 10\p@ \@plus 5\p@ \@minus 3\p@\relax}\r
3320 \r
3321 % Footnote\r
3322 \def\footnoterule{%\r
3323     \kern-3\p@\r
3324     \hrule \@width 36\p@ \@height 0.25\p@\r
3325     \kern 3\p@\r
3326 }\r
3327 \long\def\@makefntext#1{%\r
3328     \parindent 1em\r
3329     \noindent $^{\@thefnmark}$#1%\r
3330 }\r
3331 \r
3332 % Figures and Tables\r
3333 \newlength\belowcaptionskip\r
3334 \newlength\abovecaptionskip\r
3335 \setlength\belowcaptionskip{3.5\p@}\r
3336 \setlength\abovecaptionskip{6\p@}\r
3337 \r
3338 \def\nocaption{\refstepcounter\@captype \par\r
3339  \vskip 1pc \hbox to\hsize{\hfil \figcaptionnumfont Figure \thefigure\r
3340  \hfil}}\r
3341 \r
3342 \def\FigName{figure}%\r
3343 \long\def\@caption#1[#2]#3{\par\begingroup\r
3344     \@parboxrestore\r
3345     \normalsize\r
3346     \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par\r
3347   \endgroup}\r
3348 \r
3349 \long\def\@makecaption#1#2{%\r
3350   \ifx\FigName\@captype\baselineskip10pt\r
3351     \vskip\abovecaptionskip\r
3352     \setbox\@tempboxa\hbox{\figcaptionfont{\figcaptionnumfont#1}.\hskip7.3pt\relax #2\par}%\r
3353     \ifdim \wd\@tempboxa >\hsize\r
3354         \figcaptionfont{\figcaptionnumfont#1}.\hskip7.3pt\relax #2\par\r
3355     \else\r
3356         \centerline{\box\@tempboxa}%\r
3357     \fi\r
3358   \else%\r
3359     \setbox\tbbox=\vbox{\hsize\tempdimen\tablecaptionfont{\tablenumfont #1.\ }{#2\par}}%\r
3360     \setbox\@tempboxa\hbox{\hsize\tempdimen\tablecaptionfont{\tablenumfont #1.}\ {#2\par}}%\r
3361     \ifdim \wd\@tempboxa >\tempdimen\r
3362         \centerline{\box\tbbox}%        \r
3363     \else\r
3364         \centerline{\box\@tempboxa}%\r
3365     \fi\r
3366     \vskip\belowcaptionskip\r
3367   \fi\r
3368 }\r
3369 %\r
3370 \newcounter{figure}\r
3371 \def\thefigure{\@arabic\c@figure}\r
3372 \def\fps@figure{tbp}\r
3373 \def\ftype@figure{1}\r
3374 \def\ext@figure{lof}\r
3375 %\r
3376 \newif\ifcontinued\r
3377 \global\continuedfalse\r
3378 %\r
3379 \def\continued{\global\continuedtrue}\r
3380 %\r
3381 \def\fnum@figure{\ifcontinued\global\continuedfalse\addtocounter{figure}{-1} Fig.~\thefigure---{\it Continued}\else Fig.~\thefigure\fi}%\r
3382 \newenvironment{figure}\r
3383                {\@float{figure}}\r
3384                {\end@float}\r
3385 \newenvironment{figure*}\r
3386                {\@dblfloat{figure}}\r
3387                {\end@dblfloat}\r
3388 %\r
3389 \newcounter{table}\r
3390 \renewcommand\thetable{\Roman{table}}\r
3391 \def\fps@table{tbp}\r
3392 \def\ftype@table{2}\r
3393 \def\ext@table{lot}\r
3394 \def\tablename{Table}\r
3395 \def\fnum@table{\ifcontinued\addtocounter{table}{-1} Table~\thetable---{\it Continued} \else Table~\thetable\fi}\r
3396 \newenvironment{table}\r
3397                {\@float{table}}\r
3398                {\end@float}\r
3399 \newenvironment{table*}\r
3400                {\@dblfloat{table}}\r
3401                {\end@dblfloat}\r
3402 \r
3403 \long\def\tbl#1#2{%\r
3404 \setbox\tempbox\hbox{\tablefont #2}%\r
3405 \tabledim\hsize\advance\tabledim by -\wd\tempbox\r
3406 \tempdimen\wd\tempbox\r
3407 \global\divide\tabledim\tw@\r
3408 \caption{#1\protect\vphantom{yp}}\r
3409 \centerline{\box\tempbox}}%\r
3410 \r
3411 \newenvironment{intexttable}{\par\addvspace{1.2pt plus2pt}\r
3412 \intexttablefont\r
3413 }{%\r
3414 \par\addvspace{7pt plus2pt}}\r
3415 \r
3416 \newenvironment{tabnote}{%\r
3417 \par\vskip5pt\r
3418 \tabnotefont\r
3419 \@ifnextchar[{\@tabnote}{\@tabnote[]}}{%\r
3420 \par}\r
3421 \def\@tabnote[#1]{\def\@Tempa{#1}\leftskip\tabledim\rightskip\leftskip\ifx\@Tempa\@empty\else{\it #1:}\ \fi\ignorespaces}\r
3422 \r
3423 \def\tabnoteentry#1#2{\parindent0pt\par{#1}{#2}}\r
3424 \def\Note#1#2{\parindent0pt\par{\it #1}\ #2}\r
3425 \r
3426 \newdimen\@narrowfig\r
3427 \newbox\@nfigbox\r
3428 \newbox\@nfcapbox\r
3429 \newif\if@nfeven\r
3430 \def\acmtable#1{%\r
3431     \@narrowfig #1\relax\r
3432     \let\caption\@atcap\r
3433     \let\nocaption\@atnocap\r
3434     \@ifnextchar[{\@ntab}{\@ntab[\fps@table]}%\r
3435 }\r
3436 \r
3437 \def\@ntab[#1]{%\r
3438     \expandafter\table\expandafter[#1]%\r
3439     \setbox\@nfigbox\vbox\bgroup\r
3440         \hsize \@narrowfig\r
3441         \@parboxrestore\r
3442 }\r
3443 \r
3444 \def\endacmtable{%\r
3445     \hb@xt@\textwidth{%\r
3446         \hfil\r
3447         \vbox{%\r
3448             \hsize \@narrowfig\r
3449             \box\@nfcapbox{%\r
3450                 \baselineskip 4\p@\r
3451                 \hbox{\vrule \@height .4\p@ \@width \hsize}%\r
3452 \r
3453             }%\r
3454             \vskip -\p@\r
3455             \box\@nfigbox\r
3456             \vskip -\p@\r
3457             \begingroup\r
3458                 \baselineskip 4\p@\r
3459                 \hbox{\vrule \@height .4\p@ \@width \hsize}%\r
3460             \endgroup\r
3461         }%\r
3462         \hfil\r
3463     }%\r
3464     \end@float\r
3465 }\r
3466 \def\@atmakecap#1#2{%\r
3467     \setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}%\r
3468     \ifdim \wd\@tempboxa >\hsize\r
3469         \sloppy #1.\hskip 1em\relax #2 \par\r
3470     \else\r
3471         \centerline{\box\@tempboxa}%\r
3472     \fi\r
3473 }\r
3474 \def\@atcap{%\r
3475         \par\r
3476     \egroup\r
3477     \refstepcounter\@captype\r
3478     \@dblarg{\@atcapx\@captype}%\r
3479 }\r
3480 \long\def\@atcapx#1[#2]#3{%\r
3481     \addcontentsline{\csname ext@#1\endcsname}{#1}{%\r
3482         \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%\r
3483     }%\r
3484     \setbox\@nfcapbox\vbox{%\r
3485         \hsize \wd\@nfigbox\r
3486         \@parboxrestore\r
3487         \@atmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}%\r
3488         \par\r
3489     }%\r
3490 }\r
3491 \def\@atnocap{%\r
3492     \egroup\r
3493     \refstepcounter\@captype\r
3494     \setbox\@nfcapbox\vbox{%\r
3495         \hsize \wd\@nfigbox\r
3496         \centerline{\footnotesize \fnum@table}\r
3497     }%\r
3498 }\r
3499 \def\narrowfig#1{%\r
3500     \@narrowfig #1\relax\r
3501     \let\caption\@nfcap\r
3502     \let\nocaption\@nfnocap\r
3503     \@ifnextchar[{\@nfig}{\@nfig[\fps@figure]}%\r
3504 }\r
3505 \r
3506 \def\@nfig[#1]{%\r
3507     \expandafter\figure\expandafter[#1]%\r
3508     \setbox\@nfigbox\vbox\bgroup\r
3509         \hsize\@narrowfig\r
3510         \@parboxrestore\r
3511 }\r
3512 \r
3513 \def\endnarrowfig{%\r
3514     \hb@xt@\textwidth{%\r
3515         \if@nfeven\r
3516             \box\@nfcapbox  \hfil   \box\@nfigbox\r
3517         \else\r
3518             \box\@nfigbox   \hfil   \box\@nfcapbox\r
3519         \fi\r
3520     }%\r
3521     \endfigure\r
3522 }\r
3523 \def\@nfcap{%\r
3524         \par\r
3525     \egroup\r
3526     \refstepcounter\@captype\r
3527     \@dblarg{\@nfcapx\@captype}%\r
3528 }\r
3529 \def\@nfmakecap #1#2{%\r
3530     \setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}%\r
3531     \ifdim \wd\@tempboxa >\hsize\r
3532         \sloppy #1.\hskip 1em\relax #2 \par\r
3533     \else\r
3534         \@@line{%\r
3535             \if@nfeven\else\hfil\fi\r
3536             \box\@tempboxa\r
3537             \if@nfeven\hfil\fi\r
3538         }%\r
3539     \fi\r
3540 }\r
3541 \long\def\@nfcapx#1[#2]#3{%\r
3542     \addcontentsline{\csname ext@#1\endcsname}{#1}{%\r
3543         \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%\r
3544     }%\r
3545     \@seteven\r
3546     \setbox\@nfcapbox\vbox to \ht\@nfigbox{%\r
3547         \hsize \textwidth\r
3548         \advance\hsize -2pc\r
3549         \advance\hsize -\wd\@nfigbox\r
3550         \@parboxrestore\r
3551         \vfil\r
3552         \@nfmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}%\r
3553         \par\r
3554         \vfil\r
3555     }%\r
3556 }\r
3557 \def\@nfnocap{%\r
3558     \egroup\r
3559     \refstepcounter\@captype\r
3560     \@seteven\r
3561     \setbox\@nfcapbox\vbox to \ht\@nfigbox{%\r
3562         \hsize \textwidth\r
3563         \advance\hsize -2pc\r
3564         \advance\hsize -\wd\@nfigbox\r
3565         \@parboxrestore\r
3566         \vfil\r
3567         \@@line{%\r
3568             \if@nfeven\else\hfil\fi\r
3569             \footnotesize \fnum@figure\r
3570             \if@nfeven\hfil\fi\r
3571         }%\r
3572         \vfil\r
3573     }%\r
3574 }\r
3575 \r
3576 \def\@seteven{%\r
3577     \@nfeventrue\r
3578     \@ifundefined{r@@nf\thefigure}{}{%\r
3579         \edef\@tmpnf{\csname r@@nf\thefigure\endcsname}%\r
3580         \edef\@tmpnf{\expandafter\@cdr\@tmpnf\@nil}%\r
3581         \ifodd\@tmpnf\relax\r
3582             \@nfevenfalse\r
3583         \fi\r
3584     }%\r
3585     \label{@nf\thefigure}%\r
3586     \edef\@tmpnfx{\if@nfeven e\else o\fi}%\r
3587     \edef\@tmpnf{%\r
3588         \write\@unused{%\r
3589             \noexpand\ifodd \noexpand\c@page\r
3590                 \noexpand\if \@tmpnfx e%\r
3591                     \noexpand\@nfmsg{\thefigure}\r
3592                 \noexpand\fi\r
3593             \noexpand\else\r
3594                 \noexpand\if \@tmpnfx o%\r
3595                     \noexpand\@nfmsg{\thefigure}%\r
3596                 \noexpand\fi\r
3597             \noexpand\fi\r
3598         }%\r
3599     }%\r
3600     \@tmpnf\r
3601 }\r
3602 \r
3603 \def\@nfmsg#1{Bad narrowfig: Figure #1 on page \thepage}\r
3604 \newbox\@nfigbox\r
3605 \newbox\@nfcapbox\r
3606 \newif\if@nfeven\r
3607 \r
3608 % Acknowledgments\r
3609 \newenvironment{ack}{%\r
3610 \refsection*{ACKNOWLEDGMENT}\r
3611 \ackfont\r
3612 }{\par}\r
3613 \r
3614 \newenvironment{acks}{%\r
3615 \refsection*{ACKNOWLEDGMENTS}\r
3616 \ackfont\r
3617 }{\par}\r
3618 \r
3619 % History Dates\r
3620 \def\received#1#2#3{\par\addvspace{14\p@}%\r
3621 {\noindent\fontfamily{\sfdefault}\fontsize{8}{9}\selectfont{Received\ #1;\ revised\ #2;\ accepted\ #3}%\r
3622 \par}}\r
3623 \r
3624 % provide both spellings of Acknowledgment(s)\r
3625 \let\acknowledgments\acks\r
3626 \let\endacknowledgments\endacks\r
3627 \let\acknowledgment\ack\r
3628 \let\endacknowledgment\endack\r
3629 \r
3630 \newcommand{\longpage}{\enlargethispage{\baselineskip}}\r
3631 \newcommand{\shortpage}{\enlargethispage{-\baselineskip}}\r
3632 \r
3633 % Appendices\r
3634 \newfont{\apbf}{cmbx9}\r
3635 \def\@withappendix#1{App--\number #1}\r
3636 \newcommand{\elecappendix}{\r
3637 }\r
3638 \r
3639 \def\appenheader{\global\@topnum\z@ \global\@botroom \textheight \begin{figure}\r
3640 \newfont{\sc}{cmcsc10}\r
3641 \parindent\z@\r
3642 \hbox{}\r
3643 \vskip -\textfloatsep\r
3644 \vskip 11pt\r
3645 \hrule height .2pt width 30pc\r
3646 \vskip 2pt\rule{0pt}{10pt}\ignorespaces}\r
3647 \def\endappenheader{\end{figure}\gdef\appendixhead{}}\r
3648 \r
3649 \def\@appsec{}\r
3650 \r
3651 \def\appendix{\par\r
3652  \setcounter{section}{0}\r
3653  \setcounter{subsection}{0}\r
3654  \def\@appsec{APPENDIX } \r
3655         \def\thesection{\Alph{section}}\r
3656         \def\theHsection{\Alph{section}}}\r
3657 \r
3658 % split electronic appendix into two parts:\r
3659 \r
3660 \def\appendixhead#1{\appendix\r
3661 \section*{ELECTRONIC APPENDIX}\r
3662 The electronic appendix for this article can be accessed in the ACM Digital Library.}\r
3663 \r
3664 \newif\ifelec@app\global\elec@appfalse\r
3665 \long\def\elecappendix{\immediate\write\@mainaux{\string\lastpage{\the\c@page}}%\r
3666 \clearpage\r
3667 \makeatletter\r
3668 \elec@apptrue\r
3669 \pagenumbering{withappendix}\r
3670 \pagestyle{appheadings}\r
3671 \thispagestyle{titlepage}%\r
3672 \makeatother\r
3673 \appendix\r
3674 {\vbox{\titlefont\parindent0pt\raggedright%\r
3675 Online Appendix to:\par\@title\par{}}}\vskip 12\p@\r
3676 \vbox{\authorfont\parindent0pt\@author{}}\vskip .5em\noindent\r
3677 \vskip 11pt\noindent\r
3678 \hrule height .2pt\r
3679 \par\r
3680 \def\endbottomstuff{%\r
3681 \copyrightline\par\r
3682 \doiline\r
3683 \vskip-13pt\r
3684 \strut\r
3685 \end@float\r
3686 }\r
3687 \bottomstuff\r
3688 \endbottomstuff\r
3689 }\r
3690 \r
3691 %-----------------------BIBLIOGRAPHY STUFF-------------------------\r
3692 % this is adapted (November 1993) by Andrew Appel and Rebecca Davies from\r
3693\r
3694 %%%     filename        = "chicago.sty",\r
3695 %%%     version         = "4",  % MODIFIED!\r
3696 %%%     date            = "31 August 1992",\r
3697 %%%     time            = "09:42:44 199",\r
3698 %%%     author          = "Glenn Paulley",\r
3699 %%%     address         = "Data Structuring Group\r
3700 %%%                        Department of Computer Science\r
3701 %%%                        University of Waterloo\r
3702 %%%                        Waterloo, Ontario, Canada\r
3703 %%%                        N2L 3G1",\r
3704 %%%     telephone       = "(519) 885-1211",\r
3705 %%%     FAX             = "(519) 885-1208",\r
3706 %%%     email           = "gnpaulle@bluebox.uwaterloo.ca",\r
3707 \r
3708 %%% ====================================================================\r
3709 %\r
3710 % this file: Modification of chicago.sty for new ACM bibliography\r
3711 % style, which is similar (but not identical) to the ``Chicago'' style.\r
3712 %\r
3713 % chicago.sty: Style file for use with bibtex style chicago.bst, for\r
3714 % bibliographies formatted according to the 13th Edition of the Chicago\r
3715 % Manual of Style.\r
3716 %\r
3717 % 'newapa.bst' was made from 'plain.bst', 'named.bst', and 'apalike.bst',\r
3718 % with lots of tweaking to make it look like APA style, along with tips\r
3719 % from Young Ryu and Brian Reiser's modifications of 'apalike.bst'.\r
3720 % newapa.sty formed the basis of this style, chicago.sty. Author-date\r
3721 % references in newapa.bst formed the basis for chicago.bst. Chicagoa.bst\r
3722 % supports annotations.\r
3723 %\r
3724 % Version 4 (August, 1992):\r
3725 % - fixed chicago.bst and chicagoa.bst to handle long author lists in\r
3726 %   sorting\r
3727 % - fixed chicago.bst and chicagoa.bst so that missing page numbers in\r
3728 %   ``article'' entries are handled correctly\r
3729 % - modified chicago.sty to format entries with 2nd and subsequent lines\r
3730 %   indented.\r
3731 %\r
3732 %   Citation format: (author-last-name year)\r
3733 %             (author-last-name and author-last-name year)\r
3734 %             (author-last-name et al. year)\r
3735 %             (author-last-name)\r
3736 %             author-last-name\r
3737 %             author-last-name (year)\r
3738 %             (author-last-name and author-last-name)\r
3739 %             (author-last-name et al.)\r
3740 %             (year) or (year,year)\r
3741 %             year or year,year\r
3742 %\r
3743 %   Reference list ordering: alphabetical by author or whatever passes\r
3744 %    for author in the absence of one.\r
3745 %\r
3746 % This BibTeX style has support for abbreviated author lists and for\r
3747 %    year-only citations.  This is done by having the citations\r
3748 %    actually look like\r
3749 %\r
3750 %    \citeauthoryear{full-author-info}{abbrev-author-info}{year}\r
3751 %\r
3752 % The LaTeX style has to have the following (or similar)\r
3753 %\r
3754 %     \let\@internalcite\cite\r
3755 %     \def\fullcite{\def\citeauthoryear##1##2##3{##1, ##3}\@internalcite}\r
3756 %     \def\fullciteA{\def\citeauthoryear##1##2##3{##1}\@internalcite}\r
3757 %     \def\shortcite{\def\citeauthoryear##1##2##3{##2, ##3}\@internalcite}\r
3758 %     \def\shortciteA{\def\citeauthoryear##1##2##3{##2}\@internalcite}\r
3759 %     \def\citeyear{\def\citeauthoryear##1##2##3{##3}\@internalcite}\r
3760 %\r
3761 %\r
3762 % -------------------------------------------------------------------------\r
3763 %\r
3764 % Citation macros (compatible with natbib package).\r
3765 %\r
3766 \AtBeginDocument{%\r
3767 \@ifpackageloaded{natbib}{% Natbib loaded\r
3768 \renewcommand\bibsection{%\r
3769     \refsection*{{\refname}%\r
3770         \@mkboth{\uppercase{\refname}}{\uppercase{\refname}}%\r
3771 }}%\r
3772 \bibpunct[, ]{[}{]}{;}{a}{}{,}\r
3773 \let\citeN\cite\r
3774 \let\cite\citep\r
3775 \let\citeANP\citeauthor\r
3776 \let\citeNN\citeyearpar\r
3777 \let\citeyearNP\citeyear\r
3778 \let\citeyear\citeyearpar\r
3779 \let\citeNP\citealt\r
3780 \def\shortcite#1{\citeyear{#1}}\r
3781 \DeclareRobustCommand\citeA\r
3782    {\begingroup\NAT@swafalse\let\NAT@ctype\@ne\NAT@partrue\NAT@fullfalse\NAT@open\NAT@citetp}\r
3783 \newcommand\newblock{}\r
3784 }{% Natbib not loaded\r
3785 \let\@internalcite\cite\r
3786 \def\cite{\def\@citeseppen{-1000}%\r
3787     \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%\r
3788     \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}\r
3789 \def\citeXNP#1#2{%\r
3790   \def\@cite@label{#2}%\r
3791   \def\@cite##1##2{##1\if@tempswa , ##2\fi}%\r
3792   \def\citeauthoryear##1##2##3{\@cite@label}\@internalcite{#1}}\r
3793 \def\citeNP{\def\@citeseppen{-1000}%\r
3794     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%\r
3795     \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}\r
3796 \def\citeN{\def\@citeseppen{-1000}%\r
3797     \def\@cite##1##2{##1\if@tempswa , ##2]\else{]}\fi}%\r
3798     \def\citeauthoryear##1##2##3{##2 [##3}\@citedata}\r
3799 \def\shortcite#1{\citeyear{#1}}\r
3800 \def\citeS#1{[\citeANP{#1} \citeyearNP{#1}]}\r
3801 \def\citeNS#1{\citeANP{#1} \citeyear{#1}}\r
3802 \def\citeNPS#1{\citeANP{#1} \citeyearNP{#1}}\r
3803 %testing year,year\r
3804 \def\citeNN{\def\@citeseppen{-1000}%\r
3805     \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%\r
3806     \def\citeauthoryear##1##2##3{##3}\@citedata}\r
3807 \r
3808 \def\citeA{\def\@citeseppen{-1000}%\r
3809     \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%\r
3810     \def\citeauthoryear##1##2##3{##2}\@internalcite}\r
3811 \def\citeANP{\def\@citeseppen{-1000}%\r
3812     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%\r
3813     \def\citeauthoryear##1##2##3{##2}\@internalcite}\r
3814 \r
3815 \def\citeyear{\def\@citeseppen{-1000}%\r
3816     \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%\r
3817     \def\citeauthoryear##1##2##3{##3}\@citedata}\r
3818 \def\citeyearNP{\def\@citeseppen{-1000}%\r
3819     \def\@cite##1##2{##1\if@tempswa , ##2\fi}%\r
3820     \def\citeauthoryear##1##2##3{##3}\@citedata}\r
3821 \r
3822 %\r
3823 % \@citedata and \@citedatax:\r
3824 %\r
3825 % Place commas in-between citations in the same \citeyear, \citeyearNP,\r
3826 % or \citeN command.\r
3827 % Use something like \citeN{ref1,ref2,ref3} and \citeN{ref4} for a list.\r
3828 %\r
3829 \def\@citedata{%\r
3830         \@ifnextchar [{\@tempswatrue\@citedatax}%\r
3831                                   {\@tempswafalse\@citedatax[]}%\r
3832 }\r
3833 \r
3834 \def\@citedatax[#1]#2{%\r
3835 \if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%\r
3836   \def\@citea{}\@cite{\@for\@citeb:=#2\do%\r
3837     {\@citea\def\@citea{; }\@ifundefined% by Young\r
3838        {b@\@citeb}{{\bf ?}%\r
3839        \@warning{Citation `\@citeb' on page \thepage \space undefined}}%\r
3840 {\csname b@\@citeb\endcsname}}}{#1}}%\r
3841 \r
3842 % don't box citations, separate with ; and a space\r
3843 % also, make the penalty between citations negative: a good place to break.\r
3844 %\r
3845 \def\@citex[#1]#2{%\r
3846 \if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%\r
3847   \def\@citea{}\@cite{\@for\@citeb:=#2\do%\r
3848     {\@citea\def\@citea{; }\@ifundefined% by Young\r
3849        {b@\@citeb}{{\bf ?}%\r
3850        \@warning{Citation `\@citeb' on page \thepage \space undefined}}%\r
3851 {\csname b@\@citeb\endcsname}}}{#1}}%\r
3852 \r
3853 % Fix cite so it doesn't repeat author lists in citations:\r
3854 \r
3855 \def\cite{\def\@citeseppen{-1000}%\r
3856     \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%\r
3857     \let\@lastauthor=\@noauthor\r
3858     \let\citeauthoryear=\citeauthoryear@no@repeats\@internalcite}\r
3859     %\def\citeauthoryear##1##2##3{##2 ##3}\@internalcite\r
3860 \r
3861 \def\@noauthor={\relax}\r
3862 \let\@lastauthor=\@noauthor\r
3863 \let\@currauthor=\@noauthor\r
3864 \r
3865 \def\citeauthoryear@no@repeats#1#2#3{%\r
3866   \def\@currauthor{\csname @author #1\endcsname}%\r
3867   \ifx\@lastauthor\@currauthor{#3}\else{#2 #3}\fi%\r
3868   \let\@lastauthor=\@currauthor}\r
3869 }}\r
3870 \r
3871 % Bibliography\r
3872 \let\@biblabel\@gobble\r
3873 \newdimen\bibindent\r
3874 \bibindent=16pt\r
3875 \newcommand\refname{REFERENCES}\r
3876 \def\thebibliography#1{%\r
3877     \footnotesize\r
3878     \refsection*{{\refname}\r
3879         \@mkboth{\uppercase{\refname}}{\uppercase{\refname}}%\r
3880     }\r
3881     \list{}{\r
3882         \settowidth\labelwidth{}\r
3883         \leftmargin0pt\r
3884         \advance\leftmargin\bibindent\r
3885         \itemindent -\bibindent\r
3886         \itemsep2pt\r
3887         \parsep \z@\r
3888         \usecounter{enumi}%\r
3889     }%\r
3890     \let\newblock\@empty\r
3891     \sloppy\r
3892     \sfcode`\.=1000\relax\r
3893 }\r
3894 \let\endthebibliography=\endlist\r
3895 \r
3896 % Blackboard font \r
3897 \DeclareFontFamily{OT1}{ams}{}\r
3898 \DeclareFontShape{OT1}{ams}{m}{n}{ <-> msam10 }{}\r
3899 \DeclareFontShape{OT1}{ams}{m}{it}{ <-> msam10 }{}\r
3900 \DeclareFontShape{OT1}{ams}{bx}{n}{ <-> msbm10 }{}\r
3901 \DeclareFontShape{OT1}{ams}{bx}{it}{ <-> msbm10 }{}\r
3902 \r
3903 \def\bb#1{\mathchoice\r
3904          {\mbox{\fontfamily{ams}\fontsize{\tf@size}{\tf@size}\selectfont\bf#1}}%\r
3905          {\mbox{\fontfamily{ams}\fontsize{\tf@size}{\tf@size}\selectfont\bf#1}}%\r
3906          {\mbox{\fontfamily{ams}\fontsize{\sf@size}{\sf@size}\selectfont\bf#1}}%\r
3907          {\mbox{\fontfamily{ams}\fontsize{\ssf@size}{\ssf@size}\selectfont\bf#1}}}\r
3908 \r
3909 \DeclareMathAlphabet{\mathbb}{OT1}{ams}{bx}{n}\r
3910 \SetMathAlphabet\mathbb{normal}{OT1}{ams}{bx}{n}\r
3911 \SetMathAlphabet\mathbb{bold}{OT1}{ams}{bx}{n}\r
3912 \def\bb{\mathbb}\r
3913 \r
3914 \def\text#1{\ifmmode\r
3915         \mathchoice\r
3916         {\hbox{\fontsize{\tf@size}{\tf@size}\selectfont#1}}%\r
3917         {\hbox{\fontsize{\tf@size}{\tf@size}\selectfont#1}}%\r
3918         {\hbox{\fontsize{\sf@size}{\sf@size}\selectfont#1}}%\r
3919         {\hbox{\fontsize{\ssf@size}{\ssf@size}\selectfont#1}}%\r
3920        \else\hbox{\rm#1}\fi}\r
3921 %\r
3922 % newdef need to take the optional parameters of newtheorem\r
3923 \def\newdef#1{\@ifnextchar[{\@xnewdef{#1}}{\@ynewdef{#1}}}\r
3924 \def\@xnewdef#1[#2]#3{\newtheorem{italic@#1}[#2]{{\em #3}}\@newdef{#1}}\r
3925 \def\@ynewdef#1#2{\@ifnextchar[{\@xynewdef{#1}{#2}}{\@yynewdef{#1}{#2}}}\r
3926 \def\@xynewdef#1#2[#3]{\newtheorem{italic@#1}{{\em #2}}[#3]\@newdef{#1}}\r
3927 \def\@yynewdef#1#2{\newtheorem{italic@#1}{{\em #2}}\@newdef{#1}}\r
3928\r
3929 \def\@newdef#1{\newenvironment{#1}{\@ifnextchar[{\@xstartdef{#1}}{\@ystartdef{#1}}}{\end{italic@#1}}}\r
3930 %\r
3931 \def\@xstartdef#1[#2]{\begin{italic@#1}[{\em #2}]\rm}\r
3932 \def\@ystartdef#1{\begin{italic@#1}\rm}\r
3933 %\r
3934 \newdef{remark}[theorem]{Remark}\r
3935 \r
3936 % Page number Panel\r
3937 \def\openartnum{\vbox to 1.125in{\vskip.125in\vfill\hbox to 26pt{\textcolor{white}{\fontfamily{\sfdefault}\fontsize{12}{7}\selectfont\bfseries\@acmArticle}\hfill}\vfill}}\r
3938 \def\closeartnum{\vbox to 1.125in{\vskip-.125in\vfill\hbox to 26pt{\textcolor{white}{\fontfamily{\sfdefault}\fontsize{12}{7}\selectfont\bfseries\@acmArticle}\hfill}\vfill}}\r
3939 \def\artnum{\vbox to 1in{\vfill\hbox to 26pt{\textcolor{white}{\fontfamily{\sfdefault}\fontsize{12}{7}\selectfont\bfseries\@acmArticle}\hfill}\vfill}}\r
3940 %\r
3941 \def\opentab{\hbox{\vrule width45.75pt depth0pt height1.125in\hspace*{-35.5pt}\openartnum}}\r
3942 \def\normtab{\hbox{\vrule width45.75pt depth0pt height1in\hspace*{-35.5pt}\artnum}}\r
3943 \def\closetab{\hbox{\vrule width45.75pt depth0pt height1.125in\hspace*{-35.5pt}\closeartnum}}\r
3944 %\r
3945 \newcommand\tab{\ifcase\@articleSeq\or\r
3946 \vbox{\vskip-.125in\opentab}\or \vbox{\vskip1in\normtab}\or \vbox{\vskip2in\normtab}\or \vbox{\vskip3in\normtab}\or \vbox{\vskip4in\normtab}\or \vbox{\vskip5in\normtab}\or \vbox{\vskip6in\normtab}\or \vbox{\vskip7in\normtab}\or \vbox{\vskip8in\normtab}\or \vbox{\vskip9in\closetab}\or\r
3947 \vbox{\vskip-.125in\opentab}\or \vbox{\vskip1in\normtab}\or \vbox{\vskip2in\normtab}\or \vbox{\vskip3in\normtab}\or \vbox{\vskip4in\normtab}\or \vbox{\vskip5in\normtab}\or \vbox{\vskip6in\normtab}\or \vbox{\vskip7in\normtab}\or \vbox{\vskip8in\normtab}\or \vbox{\vskip9in\closetab}\or\r
3948 \vbox{\vskip-.125in\opentab}\or \vbox{\vskip1in\normtab}\or \vbox{\vskip2in\normtab}\or \vbox{\vskip3in\normtab}\or \vbox{\vskip4in\normtab}\or \vbox{\vskip5in\normtab}\or \vbox{\vskip6in\normtab}\or \vbox{\vskip7in\normtab}\or \vbox{\vskip8in\normtab}\or \vbox{\vskip9in\closetab}\fi}\r
3949 \r
3950 % Output Routine\r
3951 \def\@outputpage{%\r
3952 \begingroup           % the \endgroup is put in by \aftergroup\r
3953   \let \protect \noexpand\r
3954   \@resetactivechars\r
3955   \@parboxrestore\r
3956   \shipout \vbox{%\r
3957     \set@typeset@protect\r
3958     \aftergroup \endgroup\r
3959     \aftergroup \set@typeset@protect\r
3960                                 % correct? or just restore by ending\r
3961                                 % the group?\r
3962   \if@specialpage\r
3963     \global\@specialpagefalse\@nameuse{ps@\@specialstyle}%\r
3964   \fi\r
3965   \if@twoside\r
3966     \ifodd\count\z@ \let\@thehead\@oddhead \let\@thefoot\@oddfoot\r
3967          \let\@themargin\oddsidemargin\r
3968     \else \let\@thehead\@evenhead\r
3969        \let\@thefoot\@evenfoot \let\@themargin\evensidemargin\r
3970     \fi\r
3971   \fi\r
3972   \reset@font\r
3973   \normalsize\r
3974   \normalsfcodes\r
3975   \let\label\@gobble\r
3976   \let\index\@gobble\r
3977   \let\glossary\@gobble\r
3978   \baselineskip\z@skip \lineskip\z@skip \lineskiplimit\z@\r
3979     \@begindvi\r
3980     \ifelec@app\else\ifnum\c@page=1\vbox to 0pt{\hbox to \trimwidth{\hfill\tab}}\fi\fi\r
3981     \vskip \topmargin\r
3982     \moveright\@themargin \vbox {%\r
3983       \setbox\@tempboxa \vbox to\headheight{%\r
3984         \vfil\r
3985         \color@hbox\r
3986           \normalcolor\r
3987           \hb@xt@\textwidth{\@thehead}%\r
3988         \color@endbox\r
3989         }%                        %% 22 Feb 87\r
3990       \dp\@tempboxa \z@\r
3991       \box\@tempboxa\r
3992       \vskip \headsep\r
3993       \box\@outputbox\r
3994       \baselineskip \footskip\r
3995       \color@hbox\r
3996         \normalcolor\r
3997         \hb@xt@\textwidth{\@thefoot}%\r
3998       \color@endbox\r
3999       }%\r
4000     }%\r
4001   \global \@colht \textheight\r
4002   \stepcounter{page}%\r
4003   \let\firstmark\botmark\r
4004 }\r
4005 %\r
4006 \ps@headings\r
4007 \pagenumbering{arabic}\r
4008 \onecolumn\r
4009 \r
4010 \frenchspacing\r
4011 \sloppy\r
4012 \widowpenalty10000\r
4013 \clubpenalty10000\r
4014 \r
4015 \endinput\r
4016 \r
4017 % End of file `acmsmall.cls' Version 1.4\r
4018 \r
4019 \r