summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-01-04 18:15:39 +0000
committerKarl Berry <karl@freefriends.org>2011-01-04 18:15:39 +0000
commit1eb1d9af3bab8ac49598e937021b51590465075e (patch)
tree57da05565266782a6172999b4c9e07ee4a46354b /Master/texmf-dist
parent2e9a288be91ea1e0ed18a091898c1e92251be9cb (diff)
rm acmtrans, nonfree (nosell) license
git-svn-id: svn://tug.org/texlive/trunk@20930 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/bibtex/bib/acmtrans/acmtr.bib116
-rw-r--r--Master/texmf-dist/bibtex/bst/acmtrans/acmtrans.bst1768
-rw-r--r--Master/texmf-dist/doc/latex/acmtrans/acmtr2e.pdfbin180516 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/acmtrans/acmtr2e.tex1000
-rw-r--r--Master/texmf-dist/tex/latex/acmtrans/acmtrans2e.cls1243
5 files changed, 0 insertions, 4127 deletions
diff --git a/Master/texmf-dist/bibtex/bib/acmtrans/acmtr.bib b/Master/texmf-dist/bibtex/bib/acmtrans/acmtr.bib
deleted file mode 100644
index 9d6d973579f..00000000000
--- a/Master/texmf-dist/bibtex/bib/acmtrans/acmtr.bib
+++ /dev/null
@@ -1,116 +0,0 @@
-% acmtr.bib
-% $Header: acmtr.bib,v 1.3 96/01/30 14:27:43 boyland Exp $
-
-@mastersthesis{ko94,
-author = "Jacob Kornerup",
-title = "Mapping Powerlists onto Hypercubes",
-school = "The University of Texas at Austin",
-note = "(In preparation)",
-year = "1994"}
-%month = "dec",}
-
-@PhdThesis{gerndt:89,
- author = "Michael Gerndt",
- title = "Automatic Parallelization for Distributed-Memory
- Multiprocessing Systems",
- school = "University of Bonn",
- year = 1989,
- address = "Bonn, Germany",
- month = dec
-}
-
-@article{6:1:1,
-author = "J. E. {Archer, Jr.} and R. Conway and F. B. Schneider",
-title = "User recovery and reversal in interactive systems",
-journal = "ACM Trans. Program. Lang. Syst.",
-volume = "6",
-number = "1",
-month = jan,
-year = 1984,
-pages = "1--19"}
-
-@article{7:1:137,
-author = "D. D. Dunlop and V. R. Basili",
-title = "Generalizing specifications for uniformly implemented loops",
-journal = "ACM Trans. Program. Lang. Syst.",
-volume = "7",
-number = "1",
-month = jan,
-year = 1985,
-pages = "137--158"}
-
-@article{7:2:183,
-author = "J. Heering and P. Klint",
-title = "Towards monolingual programming environments",
-journal = "ACM Trans. Program. Lang. Syst.",
-volume = "7",
-number = "2",
-month = apr,
-year = 1985,
-pages = "183--213"}
-
-@book{knuth:texbook,
-author = "Donald E. Knuth",
-title = "The {\TeX{}book}",
-publisher = "Addison-Wesley",
-address = "Reading, Mass.",
-year = 1984}
-
-@article{6:3:380,
-author = "E. Korach and D. Rotem and N. Santoro",
-title = "Distributed algorithms for finding centers and medians in networks",
-journal = "ACM Trans. Program. Lang. Syst.",
-volume = "6",
-number = "3",
-month = jul,
-year = 1984,
-pages = "380--401"}
-
-@book{lamport:latex,
-author = "Leslie Lamport",
-title = "\it {\LaTeX}: A Document Preparation System",
-publisher = "Addison-Wesley",
-address = "Reading, Mass.",
-year = 1986}
-
-@article{7:3:359,
-author = "F. Nielson",
-title = "Program transformations in a denotational setting",
-journal = "ACM Trans. Program. Lang. Syst.",
-volume = "7",
-number = "3",
-month = jul,
-year = 1985,
-pages = "359--379"}
-
-%testing
-@article{test,
-author = "F. Nielson",
-title = "Program transformations in a denotational setting",
-journal = "ACM Trans. Program. Lang. Syst.",
-volume = "7",
-number = "3",
-month = jul,
-year = 1986,
-pages = "359--379"}
-
-
-@inproceedings{reid:scribe,
-author = "Brian K. Reid",
-title = "A high-level approach to computer document formatting",
-booktitle = "Proceedings of the Seventh Annual Symposium on Principles of
- Programming Languages",
-month = jan,
-year = 1980,
-publisher = "ACM",
-address = "New York",
-pages = "24--31"}
-
-
-
-
-
-
-
-
-
diff --git a/Master/texmf-dist/bibtex/bst/acmtrans/acmtrans.bst b/Master/texmf-dist/bibtex/bst/acmtrans/acmtrans.bst
deleted file mode 100644
index f9720fd4a94..00000000000
--- a/Master/texmf-dist/bibtex/bst/acmtrans/acmtrans.bst
+++ /dev/null
@@ -1,1768 +0,0 @@
-% "ACM Transactions" BibTeX style, acmtrans.bst
-% for BibTeX version 0.99c, LaTeX version 3.141
-% Revised 28-MARCH-1996
-% Revised 30-JUNE-1995
-% Revised 15-JAN-1996
-% $Header: acmtrans.bst,v 1.2 96/01/17 09:05:38 boyland Exp $
-%
-% Hacked by John T. Boyland at University of California, Berkeley
-% (with assistance by John R. Hauser)
-% Hacked by Andrew W. Appel and Rebecca L. Davies at Princeton University,
-% based on a "chicago.bst" by Glenn Paulley at U. Waterloo,
-% which was based on "newapa.bst" found at ymir.claremont.edu.
-%
-% Citation format: [author-last-name year]
-% [author-last-name and author-last-name year]
-% [author-last-name, author-last-name, and author-last-name year]
-% [author-last-name et al. year]
-% [author-last-name]
-% author-last-name [year]
-% [author-last-name and author-last-name]
-% [author-last-name et al.]
-% [year] or [year,year]
-% year or year,year
-%
-% Reference list ordering: alphabetical by author or whatever passes
-% for author in the absence of one.
-%
-% This BibTeX style has support for abbreviated author lists and for
-% year-only citations. This is done by having the citations
-% actually look like
-%
-% \citeauthoryear{full-author-info}{abbrev-author-info}{year}
-%
-% The LaTeX style has to have the following (or similar)
-%
-% \let\@internalcite\cite
-% \def\fullcite{\def\citeauthoryear##1##2##3{##1, ##3}\@internalcite}
-% \def\fullciteA{\def\citeauthoryear##1##2##3{##1}\@internalcite}
-% \def\shortcite{\def\citeauthoryear##1##2##3{##2, ##3}\@internalcite}
-% \def\shortciteA{\def\citeauthoryear##1##2##3{##2}\@internalcite}
-% \def\citeyear{\def\citeauthoryear##1##2##3{##3}\@internalcite}
-%
-% These TeX macro definitions are found in acmtrans.sty. Additional
-% commands to manipulate different components of a citation can be defined
-% so that, for example, you can list author's names without parentheses
-% if using a citation as a noun or object in a sentence.
-%
-% Features of acmtrans.bst:
-% ========================
-%
-% - all authors appear last name first.
-% - all pages are listed xx-xx, (no pp.) and are at the end of the reference
-% - publishers are identified as publisher, address
-% - conferences papers (inproceedings) may give city of conference,
-% date of conference, and journal that the proceedings appear in.
-% - months abbreviated to max four letters (eg. Mar.)
-% - volume of a series indicated after the title of the series
-% - editors appear after edited title and are identified by a trailing "Eds."
-% not in parentheses. Editor names are not given in small caps.
-% (unless there is no author line)
-% - names terminated with a period even if there is no first name.
-% - editions are indicated trailing after the work, not in parentheses.
-% - "et al." citations have a protected period to avoid bad spacing (jrh)
-% - "address" required when publisher given
-% - series (roman) and volume are in a sentence separate from (book-)title
-%
-%
-% Features of chicago.bst:
-% =======================
-%
-% - full names used in citations, but abbreviated citations are available
-% (see above)
-% - if an entry has a "month", then the month and year are also printed
-% as part of that bibitem.
-% - all conjunctions use "and" instead of "\&"
-% - major modification from Chicago Manual of Style (13th ed.) is that
-% only the first author in a reference appears last name first-
-% additional authors appear as J. Q. Public.
-% - pages are listed as "pp. xx-xx" in all entry types except
-% article entries.
-% - book, inbook, and manual use "location: publisher" (or organization)
-% for address and publisher. All other types list publishers separately.
-% - "pp." are used to identify page numbers for all entry types except
-% articles.
-% - organization is used as a citation label if neither author nor editor
-% is present (for manuals).
-% - "et al." is used for long author and editor lists, or when "others"
-% is used.
-%
-% Modifications and bug fixes from newapa.bst:
-% ===========================================
-%
-% - added month, year to bib entries if month is present
-% - fixed bug with In proceedings, added necessary comma after title
-% - all conjunctions changed to "and" from "\&"
-% - fixed bug with author labels in my.full.label: "et al." now is
-% generated when "others" is an author name
-% - major modification from Chicago Manual of Style (13th ed.) is that
-% only the first author in a reference appears last name first-
-% additional authors appear as J. Q. Public.
-% - pages are listed as "pp. xx-xx" in all entry types except
-% article entries. Unnecessary (IMHO) "()" around page numbers
-% were removed, and page numbers now don't end with a period.
-% - created chicago.sty for use with this bibstyle (required).
-% - fixed bugs in FUNCTION {format.vol.num.pages} for missing volume,
-% number, and /or pages. Renamed to format.jour.vol.
-% - fixed bug in formatting booktitles: additional period an error if
-% book has a volume.
-% - fixed bug: editors usually given redundant period before next clause
-% (format.editors.dot) removed.
-% - added label support for organizations, if both author and editor
-% are missing (from alpha.bst). If organization is too long, then
-% the key field is used for abbreviated citations.
-% - In proceedings or books of several volumes, no comma was written
-% between the "Volume x" and the page numbers (this was intentional
-% in newapa.bst). Fixed.
-% - Some journals may not have volumes/numbers, only month/year (eg.
-% IEEE Computer). Fixed bug in article style that assumed volume/number
-% was always present.
-%
-% Original documentation for newapa.sty:
-% =====================================
-%
-% This version was made by modifying the master file made by
-% Oren Patashnik (PATASHNIK@SCORE.STANFORD.EDU), and the 'named' BibTeX
-% style of Peter F. Patel-Schneider.
-%
-% Copyright (C) 1985, all rights reserved.
-% Copying of this file is authorized only if either
-% (1) you make absolutely no changes to your copy, including name, or
-% (2) if you do make changes, you name it something other than 'newapa.bst'.
-% There are undoubtably bugs in this style. If you make bug fixes,
-% improvements, etc. please let me know. My e-mail address is:
-% spencer@cgrg.ohio.state.edu or 71160.3141@compuserve.com
-%
-% This style was made from 'plain.bst', 'named.bst', and 'apalike.bst',
-% with lots of tweaking to make it look like APA style, along with tips
-% from Young Ryu and Brian Reiser's modifications of 'apalike.bst'.
-
-ENTRY
- { address
- author
- booktitle
- chapter
- city % jtb: added
- date % jtb: added
- edition
- editor
- howpublished
- institution
- journal
- key
- month
- note
- number
- organization
- pages
- publisher
- school
- series
- title
- type
- volume
- year
- }
- {}
- { label.year extra.label sort.year sort.label }
-
-INTEGERS { output.state before.all mid.sentence after.sentence after.block }
-
-FUNCTION {init.state.consts}
-{ #0 'before.all :=
- #1 'mid.sentence :=
- #2 'after.sentence :=
- #3 'after.block :=
-}
-
-STRINGS { s t u }
-
-FUNCTION {output.nonnull}
-{ 's :=
- output.state mid.sentence =
- { ", " * write$ }
- { output.state after.block =
- { add.period$ write$
- newline$
- "\newblock " write$
- }
- { output.state before.all =
- 'write$
- { add.period$ " " * write$ }
- if$
- }
- if$
- mid.sentence 'output.state :=
- }
- if$
- s
-}
-
-% Use a colon to separate output. Used only for address/publisher
-% combination in book/inbook types, address/institution for manuals,
-% and organization:publisher for proceedings (inproceedings).
-%
-FUNCTION {output.nonnull.colon}
-{ 's :=
- output.state mid.sentence =
- { ": " * write$ }
- { output.state after.block =
- { add.period$ write$
- newline$
- "\newblock " write$
- }
- { output.state before.all =
- 'write$
- { add.period$ " " * write$ }
- if$
- }
- if$
- mid.sentence 'output.state :=
- }
- if$
- s
-}
-
-FUNCTION {output}
-{ duplicate$ empty$
- 'pop$
- 'output.nonnull
- if$
-}
-
-FUNCTION {output.colon}
-{ duplicate$ empty$
- 'pop$
- 'output.nonnull.colon
- if$
-}
-
-FUNCTION {output.check}
-{ 't :=
- duplicate$ empty$
- { pop$ "empty " t * " in " * cite$ * warning$ }
- 'output.nonnull
- if$
-}
-
-FUNCTION {output.check.colon}
-{ 't :=
- duplicate$ empty$
- { pop$ "empty " t * " in " * cite$ * warning$ }
- 'output.nonnull.colon
- if$
-}
-
-FUNCTION {output.year.check}
-{ year empty$
- { "empty year in " cite$ * warning$ }
- { write$
- " " year * extra.label *
- mid.sentence 'output.state :=
- }
- if$
-}
-
-
-FUNCTION {fin.entry}
-{ add.period$
- write$
- newline$
-}
-
-FUNCTION {new.block}
-{ output.state before.all =
- 'skip$
- { after.block 'output.state := }
- if$
-}
-
-FUNCTION {new.sentence}
-{ output.state after.block =
- 'skip$
- { output.state before.all =
- 'skip$
- { after.sentence 'output.state := }
- if$
- }
- if$
-}
-
-FUNCTION {not}
-{ { #0 }
- { #1 }
- if$
-}
-
-FUNCTION {and}
-{ 'skip$
- { pop$ #0 }
- if$
-}
-
-FUNCTION {or}
-{ { pop$ #1 }
- 'skip$
- if$
-}
-
-FUNCTION {new.block.checka}
-{ empty$
- 'skip$
- 'new.block
- if$
-}
-
-FUNCTION {new.block.checkb}
-{ empty$
- swap$ empty$
- and
- 'skip$
- 'new.block
- if$
-}
-
-FUNCTION {new.sentence.checka}
-{ empty$
- 'skip$
- 'new.sentence
- if$
-}
-
-FUNCTION {new.sentence.checkb}
-{ empty$
- swap$ empty$
- and
- 'skip$
- 'new.sentence
- if$
-}
-
-FUNCTION {field.or.null}
-{ duplicate$ empty$
- { pop$ "" }
- 'skip$
- if$
-}
-
-%
-% Emphasize the top string on the stack.
-%
-FUNCTION {emphasize}
-{ duplicate$ empty$
- { pop$ "" }
- { "{\em " swap$ * "}" * }
- if$
-}
-
-%
-% Emphasize the top string on the stack, but add a trailing space.
-%
-FUNCTION {emphasize.space}
-{ duplicate$ empty$
- { pop$ "" }
- { "{\em " swap$ * "\/}" * }
- if$
-}
-
-%
-% Emphasize the top string on stack, add a trailing comma and space.
-%
-FUNCTION {emphasize.comma}
-{ duplicate$ empty$
- { pop$ "" }
- { "{\em " swap$ * ",\/}" * }
- if$
-}
-
-INTEGERS { nameptr namesleft numnames }
-%
-% Format bibliographical entries with the first author last name first,
-% and subsequent authors with initials followed by last name.
-% All names are formatted in this routine.
-%
-
-FUNCTION {format.names}
-{ 's :=
- #1 'nameptr := % nameptr = 1;
- s num.names$ 'numnames := % numnames = num.name$(s);
- numnames 'namesleft :=
- { namesleft #0 > }
-
- { nameptr #1 =
- {"{\sc " s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ * "}" * 't := }
- {"{\sc " s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ * "}" * 't := }
- if$
- nameptr #1 >
- { namesleft #1 >
- { ", " * t * }
- { numnames #2 >
- { "," * }
- 'skip$
- if$
- t "{\sc others}" =
- { " {\sc et~al\mbox{.}}" * } % jrh: avoid spacing problems
- { " {\sc and} " * t * } % from Chicago Manual of Style
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr := % nameptr += 1;
- namesleft #1 - 'namesleft := % namesleft =- 1;
- }
- while$
-}
-
-FUNCTION {my.full.label}
-{ 's :=
- #1 'nameptr := % nameptr = 1;
- s num.names$ 'numnames := % numnames = num.name$(s);
- numnames 'namesleft :=
- { namesleft #0 > }
-
- { s nameptr "{vv~}{ll}" format.name$ 't := % get the next name
- nameptr #1 >
- { namesleft #1 >
- { ", " * t * }
- { numnames #2 >
- { "," * }
- 'skip$
- if$
- t "others" =
- { " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { " and " * t * } % from Chicago Manual of Style
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr := % nameptr += 1;
- namesleft #1 - 'namesleft := % namesleft =- 1;
- }
- while$
-
-}
-
-FUNCTION {format.names.fml}
-%
-% Format names in "familiar" format, with first initial followed by
-% last name. Like format.names, ALL names are formatted.
-% jtb: The names are NOT put in small caps
-%
-{ 's :=
- #1 'nameptr := % nameptr = 1;
- s num.names$ 'numnames := % numnames = num.name$(s);
- numnames 'namesleft :=
- { namesleft #0 > }
-
- { "{" s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ * "}" * 't :=
-
- nameptr #1 >
- { namesleft #1 >
- { ", " * t * }
- { numnames #2 >
- { "," * }
- 'skip$
- if$
- t "{others}" =
- { " {et~al\mbox{.}}" * }
- { " {and} " * t * }
-% { " {\&} " * t * }
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr := % nameptr += 1;
- namesleft #1 - 'namesleft := % namesleft =- 1;
- }
- while$
-}
-
-FUNCTION {format.authors}
-{ author empty$
- { "" }
- { author format.names add.period$} % jtb: add period if none before
- if$
-}
-
-FUNCTION {format.key}
-{ empty$
- { key field.or.null }
- { "" }
- if$
-}
-
-%
-% Format editor names for use in the "in" types: inbook, incollection,
-% inproceedings: first initial, then last names. When editors are the
-% LABEL for an entry, then format.editor is used which lists editors
-% by last name first.
-%
-FUNCTION {format.editors.fml}
-{ editor empty$
- { "" }
- { editor format.names.fml
- editor num.names$ #1 >
- { ", Eds." * } % jtb: removed parentheses
- { ", Ed." * } % jtb: removed parentheses
- if$
- }
- if$
-}
-
-%
-% Format editor names for use in labels, last names first.
-%
-FUNCTION {format.editors}
-{ editor empty$
- { "" }
- { editor format.names
- editor num.names$ #1 >
- { ", Eds." * } % jtb: removed parentheses
- { ", Ed." * } % jtb: removed parentheses
- if$
- }
- if$
-}
-
-FUNCTION {format.title}
-{ title empty$
- { "" }
- { title "t" change.case$ }
- if$
-}
-
-% Note that the APA style requres case changes
-% in article titles. The following does not
-% change cases. If you perfer it, uncomment the
-% following and comment out the above.
-
-%FUNCTION {format.title}
-%{ title empty$
-% { "" }
-% { title }
-% if$
-%}
-
-FUNCTION {n.dashify}
-{ 't :=
- ""
- { t empty$ not }
- { t #1 #1 substring$ "-" =
- { t #1 #2 substring$ "--" = not
- { "--" *
- t #2 global.max$ substring$ 't :=
- }
- { { t #1 #1 substring$ "-" = }
- { "-" *
- t #2 global.max$ substring$ 't :=
- }
- while$
- }
- if$
- }
- { t #1 #1 substring$ *
- t #2 global.max$ substring$ 't :=
- }
- if$
- }
- while$
-}
-
-FUNCTION {format.btitle}
-{ edition empty$
- { title emphasize }
- { title empty$
- { title emphasize } % jtb: what is this supposed to do ?!?
- { "{\em " title * "\/}, " * edition * " ed." * } % jtb: no parens for ed.
- if$
- }
- if$
-}
-
-FUNCTION {format.emphasize.booktitle}
-{ edition empty$
- { booktitle emphasize }
- { booktitle empty$
- { booktitle emphasize } % jtb: what is this supposed to do ?!?
- { "{\em " booktitle * "\/}, " * edition * " ed." * } % jtb: no ()s for ed.
- if$
- }
- if$
- }
-
-% jtb: if the preceding string (the title of the conference) is non-empty,
-% jtb: append the location, otherwise leave empty (so as to trigger the
-% jtb: error message in output.check
-FUNCTION {format.city}
-{ duplicate$ empty$
- { }
- { city empty$
- { date empty$
- { }
- { " (" * date * ")" * }
- if$
- }
- { date empty$
- { " (" * city * ")" * }
- { " (" * city * ", " * date * ")" * }
- if$
- }
- if$
- }
- if$
-}
-
-FUNCTION {tie.or.space.connect}
-{ duplicate$ text.length$ #3 <
- { "~" }
- { " " }
- if$
- swap$ * *
-}
-
-FUNCTION {either.or.check}
-{ empty$
- 'pop$
- { "can't use both " swap$ * " fields in " * cite$ * warning$ }
- if$
-}
-
-% jtb: If there is a series, this is added and the volume trails after it.
-% jtb: Otherwise, "Vol" is Capitalized.
-FUNCTION {format.bvolume}
-{ volume empty$
- { "" }
- { series empty$
- { "Vol." volume tie.or.space.connect}
- { series ", " * "vol." volume tie.or.space.connect *}
- if$
- "volume and number" number either.or.check
- }
- if$
-}
-
-FUNCTION {format.number.series}
-{ volume empty$
- { number empty$
- { series field.or.null }
- { output.state mid.sentence =
- { "Number" } % gnp - changed to mixed case always
- { "Number" }
- if$
- number tie.or.space.connect
- series empty$
- { "there's a number but no series in " cite$ * warning$ }
- { " in " * series * }
- if$
- }
- if$
- }
- { "" }
- if$
-}
-
-INTEGERS { multiresult }
-
-FUNCTION {multi.page.check}
-{ 't :=
- #0 'multiresult :=
- { multiresult not
- t empty$ not
- and
- }
- { t #1 #1 substring$
- duplicate$ "-" =
- swap$ duplicate$ "," =
- swap$ "+" =
- or or
- { #1 'multiresult := }
- { t #2 global.max$ substring$ 't := }
- if$
- }
- while$
- multiresult
-}
-
-FUNCTION {format.pages}
-{ pages empty$
- { "" }
- { pages multi.page.check
- { pages n.dashify } % gnp - removed () % jtb: removed pp.
- { pages }
- if$
- }
- if$
-}
-
-% By Young (and Spencer)
-% GNP - fixed bugs with missing volume, number, and/or pages
-%
-% Format journal, volume, number, pages for article types.
-%
-FUNCTION {format.jour.vol}
-{ journal empty$
- { "no journal in " cite$ * warning$
- "" }
- { journal emphasize.space }
- if$
- number empty$
- { volume empty$
- { "no number and no volume in " cite$ * warning$
- "" * }
- { "~{\em " * Volume * "}" * }
- if$
- }
- { volume empty$
- {"no volume for " cite$ * warning$
- "~" * number * }
- { "~" *
- volume emphasize.comma
- "~" * number * * }
- if$
- month empty$
- {}
- {" (" * month * ")" *}
- if$
- }
- if$
- pages empty$
- {"page numbers missing in " cite$ * warning$
- "" * } % gnp - place a null string on the stack for output
- { duplicate$ empty$
- { pop$ format.pages }
- { ", " * pages n.dashify * } % gnp - removed pp. for articles
- if$
- }
- if$
-}
-
-FUNCTION {format.chapter.pages}
-{ chapter empty$
- 'format.pages
- { type empty$
- { "Chapter" } % gnp - changed to mixed case
- { type "t" change.case$ }
- if$
- chapter tie.or.space.connect
- pages empty$
- {"page numbers missing in " cite$ * warning$} % gnp - added check
- { ", " * format.pages * }
- if$
- }
- if$
-}
-
-% jtb: format for collections or proceedings not appearing in a journal
-FUNCTION {format.in.emphasize.booktitle}
-{ booktitle empty$
- { "" }
- { "In " format.emphasize.booktitle * }
- if$
-}
-
-% jtb: format for proceedings appearing in a journal
-FUNCTION {format.in.booktitle}
-{ booktitle empty$
- { "" }
- { "In " booktitle * }
- if$
-}
-
-FUNCTION {format.in.ed.booktitle}
-{ booktitle empty$
- { "" }
- { editor empty$
- { "In " format.emphasize.booktitle * }
- % jtb: swapped editor location
- { "In " format.emphasize.booktitle * ", " * format.editors.fml * }
- if$
- }
- if$
-}
-
-FUNCTION {format.thesis.type}
-{ type empty$
- 'skip$
-% {pop$
- {{ "" }
- type "t" change.case$}
- if$
-}
-
-FUNCTION {format.tr.number}
-{ type empty$
- { "Tech. Rep." }
- 'type
- if$
- number empty$
- { "t" change.case$ }
- { number tie.or.space.connect }
- if$
-}
-
-FUNCTION {format.article.crossref}
-{ "See"
- "\citeN{" * crossref * "}" *
-}
-
-FUNCTION {format.crossref.editor}
-{ editor #1 "{vv~}{ll}" format.name$
- editor num.names$ duplicate$
- #2 >
- { pop$ " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { #2 <
- 'skip$
- { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
- { " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { " and " * editor #2 "{vv~}{ll}" format.name$ * }
- if$
- }
- if$
- }
- if$
-}
-
-FUNCTION {format.book.crossref}
-{ volume empty$
- { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
- "In "
- }
- { "Volume" volume tie.or.space.connect % gnp - changed to mixed case
- " of " *
- }
- if$
- editor empty$
- editor field.or.null author field.or.null =
- or
- { key empty$
- { series empty$
- { "need editor, key, or series for " cite$ * " to crossref " *
- crossref * warning$
- "" *
- }
- { "{\em " * series * "\/}" * }
- if$
- }
- { key * }
- if$
- }
- { format.crossref.editor * }
- if$
- " \citeN{" * crossref * "}" *
-}
-
-FUNCTION {format.incoll.inproc.crossref}
-{ "See"
- " \citeN{" * crossref * "}" *
-}
-
-% format.lab.names:
-%
-% determines "short" names for the abbreviated author information.
-% "Long" labels are created in calc.label, using the routine my.full.label
-% to format author and editor fields.
-%
-% There are 4 cases for labels. (n=3 in the example)
-% a) one author Foo
-% b) one to n Foo, Bar and Baz
-% c) use of "and others" Foo, Bar et al.
-% d) more than n Foo et al.
-%
-FUNCTION {format.lab.names}
-{ 's :=
- s num.names$ 'numnames :=
- numnames #2 > % change number to number of others allowed before
- % forcing "et al".
- { s #1 "{vv~}{ll}" format.name$ " et~al\mbox{.}" * } % jrh: \mbox{} added
- {
- numnames #1 - 'namesleft :=
- #2 'nameptr :=
- s #1 "{vv~}{ll}" format.name$
- { namesleft #0 > }
- { nameptr numnames =
- { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" =
- { " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { " and " * s nameptr "{vv~}{ll}" format.name$ * }
- if$
- }
- { ", " * s nameptr "{vv~}{ll}" format.name$ * }
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
- }
- if$
-}
-
-FUNCTION {author.key.label}
-{ author empty$
- { key empty$
- { "no key, author in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {editor.key.label}
-{ editor empty$
- { key empty$
- { "no key, editor in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.lab.names }
- if$
-}
-
-FUNCTION {author.key.organization.label}
-%
-% added - gnp. Provide label formatting by organization if author is null.
-%
-{ author empty$
- { organization empty$
- { key empty$
- { "no key, author or organization in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { organization }
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {editor.key.organization.label}
-%
-% added - gnp. Provide label formatting by organization if editor is null.
-%
-{ editor empty$
- { organization empty$
- { key empty$
- { "no key, editor or organization in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { organization }
- if$
- }
- { editor format.lab.names }
- if$
-}
-
-FUNCTION {author.editor.key.label}
-{ author empty$
- { editor empty$
- { key empty$
- { "no key, author, or editor in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.lab.names }
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {calc.label}
-%
-% Changed - GNP. See also author.organization.sort, editor.organization.sort
-% Form label for BibTeX entry. The classification of which fields are used
-% for which type of entry (book, inbook, etc.) are taken from alpha.bst.
-% The change here from newapa is to also include organization as a
-% citation label if author or editor is missing.
-%
-{ type$ "book" =
- type$ "inbook" =
- or
- 'author.editor.key.label
- { type$ "proceedings" =
- 'editor.key.organization.label
- { type$ "manual" =
- 'author.key.organization.label
- 'author.key.label
- if$
- }
- if$
- }
- if$
-
- author empty$ % generate the full label citation information.
- { editor empty$
- { organization empty$
- { "no author, editor, or organization in " cite$ * warning$
- "??" }
- { organization }
- if$
- }
- { editor my.full.label }
- if$
- }
- { author my.full.label }
- if$
-
-% leave label on the stack, to be popped when required.
-
- "}{" * swap$ * "}{" *
-% year field.or.null purify$ #-1 #4 substring$ *
-%
-% save the year for sort processing afterwards (adding a, b, c, etc.)
-%
- year field.or.null purify$ #-1 #4 substring$
- 'label.year :=
-}
-
-FUNCTION {output.bibitem}
-{ newline$
-
- "\bibitem[\protect\citeauthoryear{" write$
- calc.label write$
- sort.year write$
- "}]{" write$
-
- cite$ write$
- "}" write$
- newline$
- ""
- before.all 'output.state :=
-}
-
-FUNCTION {article}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- crossref missing$
- { format.jour.vol output
- }
- { format.article.crossref output.nonnull
- format.pages output
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {book}
-{ output.bibitem
- author empty$
- { format.editors
- "author and editor" output.check }
- { format.authors
- output.nonnull
- crossref missing$
- { "author and editor" editor either.or.check }
- 'skip$
- if$
- }
- if$
- output.year.check % added
- new.block
- format.btitle
- "title" output.check
- crossref missing$
- { new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- new.block
- format.number.series output
- new.sentence
- publisher "publisher" output.check
- address "address" output.check % jtb: require address
- }
- { new.block
- format.book.crossref output.nonnull
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {booklet}
-{ output.bibitem
- format.authors output
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- howpublished output
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {inbook}
-{ output.bibitem
- author empty$
- { format.editors
- "author and editor" output.check
- }
- { format.authors output.nonnull
- crossref missing$
- { "author and editor" editor either.or.check }
- 'skip$
- if$
- }
- if$
- output.year.check % added
- new.block
- format.btitle
- "title" output.check
- crossref missing$
- { new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- new.block
- format.number.series output
- new.sentence
- publisher "publisher" output.check
- address "address" output.check % jtb: require address
- format.chapter.pages
- "chapter and pages" output.check % jtb: moved from before publisher
- }
- { format.chapter.pages "chapter and pages" output.check
- new.block
- format.book.crossref output.nonnull
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {incollection}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- crossref missing$
- { format.in.ed.booktitle
- "booktitle" output.check
- new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- format.number.series output
- new.sentence
- publisher "publisher" output.check
- address "address" output.check % jtb: require address
- format.chapter.pages output % gnp - was special.output.nonnull
-% left out comma before page numbers
- % jtb: moved from before publisher
- }
- { format.incoll.inproc.crossref
- output.nonnull
- format.chapter.pages output
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {inproceedings}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- crossref missing$
- { journal missing$ % jtb: proceedings appearing in journals
- { format.in.emphasize.booktitle format.city "booktitle" output.check
- format.editors.fml output
- new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- format.number.series output
- new.sentence
- organization output
- publisher "publisher" output.check % jtb: require publisher (?)
- address "address" output.check % jtb: require address
- format.pages output % jtb: moved from before publisher
- }
- % jtb: new:
- { format.in.booktitle format.city "booktitle" output.check
- format.editors.fml output
- new.sentence
- format.jour.vol output
- }
- if$
- }
- { format.incoll.inproc.crossref output.nonnull
- format.pages output
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {conference} { inproceedings }
-
-FUNCTION {manual}
-{ output.bibitem
- author empty$
- { editor empty$
- { organization "organization" output.check
- organization format.key output } % if all else fails, use key
- { format.editors "author and editor" output.check }
- if$
- }
- { format.authors output.nonnull }
- if$
- output.year.check % added
- new.block
- format.btitle
- "title" output.check
- organization address new.block.checkb
- % jtb: back to normal style: organization, address
- organization "organization" output.check
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {mastersthesis}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- "M.S.\ thesis" format.thesis.type output.nonnull
- school "school" output.check
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {misc}
-{ output.bibitem
- format.authors output
- author format.key output % added
- output.year.check % added
- title howpublished new.block.checkb
- format.title output
- new.block
- howpublished output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {phdthesis}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- format.thesis.type "Ph.D. thesis" output.nonnull
- school "school" output.check
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {proceedings}
-{ output.bibitem
- editor empty$
- { organization output
- organization format.key output } % gnp - changed from author format.key
- { format.editors output.nonnull }
- if$
-% author format.key output % gnp - removed (should be either
-% editor or organization
- output.year.check % added (newapa)
- new.block
- format.btitle format.city "title" output.check % jtb: added city
- new.sentence
- format.bvolume output
- format.number.series output
- new.sentence
- organization output
- % jtb: normal order: publisher, address
- publisher output
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {techreport}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- format.tr.number output % jtb: moved month ...
- institution "institution" output.check
- address output
- new.sentence
- month output % jtb: ... to here (no parens)
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {unpublished}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- note "note" output.check
- fin.entry
-}
-
-FUNCTION {default.type} { misc }
-
-MACRO {jan} {"Jan."}
-
-MACRO {feb} {"Feb."}
-
-MACRO {mar} {"Mar."} % jtb: corrected: was "March"
-
-MACRO {apr} {"Apr."} % jtb: corrected: was "April"
-
-MACRO {may} {"May"}
-
-MACRO {jun} {"June"}
-
-MACRO {jul} {"July"}
-
-MACRO {aug} {"Aug."}
-
-MACRO {sep} {"Sept."}
-
-MACRO {oct} {"Oct."}
-
-MACRO {nov} {"Nov."}
-
-MACRO {dec} {"Dec."}
-
-MACRO {acmcs} {"ACM Comput. Surv."}
-
-MACRO {acmlett} {"ACM Lett. Program. Lang. Syst."}
-
-MACRO {acta} {"Acta Inf."}
-
-MACRO {ai} {"Artificial Intelligence"}
-
-MACRO {al} {"Ada Lett."}
-
-MACRO {acr} {"Adv. Comput. Res."}
-
-MACRO {bit} {"Bit"}
-
-MACRO {cacm} {"Commun. ACM"}
-
-MACRO {cj} {"Comput. J."}
-
-MACRO {cn} {"Comput. Netw."}
-
-MACRO {cl} {"Comput. Lang."}
-
-MACRO {ibmjrd} {"IBM J. Res. and Development"}
-
-MACRO {ibmsj} {"IBM Systems Journal"}
-
-MACRO {ict} {"Inf. Contr."}
-
-MACRO {ieebcs} {"IEE/BCS Softw. Eng. J."}
-
-MACRO {ieees} {"IEEE Softw."}
-
-MACRO {ieeese} {"IEEE Trans. Softw. Eng."}
-
-MACRO {ieeetc} {"IEEE Trans. Comput."}
-
-MACRO {ieeetcad}
- {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"}
-
-MACRO {ieeetpds} {"IEEE Trans. Parall. Distrib. Syst."}
-
-MACRO {ieeetit} {"IEEE Trans. Inf. Theory"}
-
-MACRO {ipl} {"Inf. Process. Lett."}
-
-MACRO {icp} {"Inf. Comput."}
-
-MACRO {ist} {"Inf. Softw. Tech."}
-
-MACRO {ijsa} {"Int. J. Supercomput. Appl."}
-
-MACRO {ijpp} {"Int. J. Parallel Program."}
-
-MACRO {jlp} {"J. Logic Program."}
-
-MACRO {jfp} {"J. Funct. Program."}
-
-MACRO {jcss} {"J. Comput. Syst. Sci."}
-
-MACRO {jsmrp} {"J. Softw. Maint. Res. Pract."}
-
-MACRO {jss} {"J. Syst. Softw."}
-
-MACRO {jlc} {"J. Logic and Comput."}
-
-MACRO {jlsc} {"J. Lisp Symb. Comput."}
-
-MACRO {lpls} {"Lett. Program. Lang. Syst."}
-
-MACRO {mor} {"Math. Oper. Res."}
-
-MACRO {mscs} {"Math. Struct. Comput. Sci."}
-
-MACRO {mst} {"Math. Syst. Theor."} % jtb: was Math. Syst. Theory
- % jtb: (if you ask me, I prefer the old way)
-MACRO {ngc} {"New Gen. Comput."}
-
-MACRO {scp} {"Sci. Comput. Program."}
-
-MACRO {sicomp} {"SIAM J. Comput."}
-
-MACRO {spe} {"Softw. Pract. Exper."}
-
-MACRO {tocs} {"ACM Trans. Comput. Syst."}
-
-MACRO {tods} {"ACM Trans. Database Syst."}
-
-MACRO {tog} {"ACM Trans. Graphics"}
-
-MACRO {toms} {"ACM Trans. Math. Softw."}
-
-MACRO {toois} {"ACM Trans. Office Inf. Syst."}
-
-MACRO {toplas} {"ACM Trans. Program. Lang. Syst."}
-
-MACRO {tcs} {"Theor. Comput. Sci."} % jtb: was Theor. Comp. Sci.
-
-MACRO {tr} {"Tech. Rep."}
-
-READ
-
-FUNCTION {sortify}
-{ purify$
- "l" change.case$
-}
-
-INTEGERS { len }
-
-FUNCTION {chop.word}
-{ 's :=
- 'len :=
- s #1 len substring$ =
- { s len #1 + global.max$ substring$ }
- 's
- if$
-}
-
-
-
-FUNCTION {sort.format.names}
-{ 's :=
- #1 'nameptr :=
- ""
- s num.names$ 'numnames :=
- numnames 'namesleft :=
- { namesleft #0 > }
- { nameptr #1 >
- { " " * }
- 'skip$
- if$
- s nameptr "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" format.name$ 't :=
- nameptr numnames = t "others" = and
- { " et~al" * }
- { t sortify * }
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
-}
-
-FUNCTION {sort.format.title}
-{ 't :=
- "A " #2
- "An " #3
- "The " #4 t chop.word
- chop.word
- chop.word
- sortify
- #1 global.max$ substring$
-}
-
-FUNCTION {author.sort}
-{ author empty$
- { key empty$
- { "to sort, need author or key in " cite$ * warning$
- "" }
- { key sortify }
- if$
- }
- { author sort.format.names }
- if$
-}
-
-FUNCTION {editor.sort}
-{ editor empty$
- { key empty$
- { "to sort, need editor or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { editor sort.format.names }
- if$
-}
-
-FUNCTION {author.editor.sort}
-{ author empty$
- { "missing author in " cite$ * warning$
- editor empty$
- { key empty$
- { "to sort, need author, editor, or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { editor sort.format.names }
- if$
- }
- { author sort.format.names }
- if$
-}
-
-FUNCTION {author.organization.sort}
-%
-% added - GNP. Stack author or organization for sorting (from alpha.bst).
-% Unlike alpha.bst, we need entire names, not abbreviations
-%
-{ author empty$
- { organization empty$
- { key empty$
- { "to sort, need author, organization, or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { organization sortify }
- if$
- }
- { author sort.format.names }
- if$
-}
-
-FUNCTION {editor.organization.sort}
-%
-% added - GNP. Stack editor or organization for sorting (from alpha.bst).
-% Unlike alpha.bst, we need entire names, not abbreviations
-%
-{ editor empty$
- { organization empty$
- { key empty$
- { "to sort, need editor, organization, or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { organization sortify }
- if$
- }
- { editor sort.format.names }
- if$
-}
-
-FUNCTION {presort}
-%
-% Presort creates the bibentry's label via a call to calc.label, and then
-% sorts the entries based on entry type. Chicago.bst adds support for
-% including organizations as the sort key; the following is stolen from
-% alpha.bst.
-%
-{ calc.label sortify % recalculate bibitem label
- year field.or.null purify$ #-1 #4 substring$ * % add year
- " "
- *
- type$ "book" =
- type$ "inbook" =
- or
- 'author.editor.sort
- { type$ "proceedings" =
- 'editor.organization.sort
- { type$ "manual" =
- 'author.organization.sort
- 'author.sort
- if$
- }
- if$
- }
- if$
- #1 entry.max$ substring$ % added for newapa
- 'sort.label := % added for newapa
- sort.label % added for newapa
- *
- " "
- *
- title field.or.null
- sort.format.title
- *
- #1 entry.max$ substring$
- 'sort.key$ :=
-}
-
-ITERATE {presort}
-
-SORT % by label, year, author/editor, title
-
-STRINGS { last.label next.extra }
-
-INTEGERS { last.extra.num }
-
-FUNCTION {initialize.extra.label.stuff}
-{ #0 int.to.chr$ 'last.label :=
- "" 'next.extra :=
- #0 'last.extra.num :=
-}
-
-FUNCTION {forward.pass}
-%
-% Pass through all entries, comparing current entry to last one.
-% Need to concatenate year to the stack (done by calc.label) to determine
-% if two entries are the same (see presort)
-%
-{ last.label
- calc.label year field.or.null purify$ #-1 #4 substring$ * % add year
- #1 entry.max$ substring$ = % are they equal?
- { last.extra.num #1 + 'last.extra.num :=
- last.extra.num int.to.chr$ 'extra.label :=
- }
- { "a" chr.to.int$ 'last.extra.num :=
- "" 'extra.label :=
- calc.label year field.or.null purify$ #-1 #4 substring$ * % add year
- #1 entry.max$ substring$ 'last.label := % assign to last.label
- }
- if$
-}
-
-FUNCTION {reverse.pass}
-{ next.extra "b" =
- { "a" 'extra.label := }
- 'skip$
- if$
- label.year extra.label * 'sort.year :=
- extra.label 'next.extra :=
-}
-
-EXECUTE {initialize.extra.label.stuff}
-
-ITERATE {forward.pass}
-
-REVERSE {reverse.pass}
-
-FUNCTION {bib.sort.order}
-{ sort.label
- " "
- *
- year field.or.null sortify
- *
- " "
- *
- title field.or.null
- sort.format.title
- *
- #1 entry.max$ substring$
- 'sort.key$ :=
-}
-
-ITERATE {bib.sort.order}
-
-SORT % by sort.label, year, title --- giving final bib. order.
-
-FUNCTION {begin.bib}
-
-{ preamble$ empty$
- 'skip$
- { preamble$ write$ newline$ }
- if$
- "\begin{thebibliography}{}" write$ newline$
-}
-
-
-EXECUTE {begin.bib}
-
-EXECUTE {init.state.consts}
-
-ITERATE {call.type$}
-
-FUNCTION {end.bib}
-{ newline$
- "\end{thebibliography}" write$ newline$
-}
-
-EXECUTE {end.bib}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Master/texmf-dist/doc/latex/acmtrans/acmtr2e.pdf b/Master/texmf-dist/doc/latex/acmtrans/acmtr2e.pdf
deleted file mode 100644
index dc70cf0de85..00000000000
--- a/Master/texmf-dist/doc/latex/acmtrans/acmtr2e.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/acmtrans/acmtr2e.tex b/Master/texmf-dist/doc/latex/acmtrans/acmtr2e.tex
deleted file mode 100644
index f6dd45ba738..00000000000
--- a/Master/texmf-dist/doc/latex/acmtrans/acmtr2e.tex
+++ /dev/null
@@ -1,1000 +0,0 @@
-% acmtr.tex
-% revised 1/20/97
-% $Header: acmtr.tex,v 1.5 2/14/96 11:07:57 boyland Exp $
-
-\documentclass[hyperref]{acmtrans2e}
-\usepackage[pdfmark]{hyperref}
-
-%&t&{\tt #}&
-%&v&\verb|#|&
-
-\newcommand{\BibTeX}{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
- T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
-
-\firstfoot{ACM Transactions on Document Formatting,
- Vol.\ 8, No.\ 1, January 1999, Pages \pages.}
-
-\runningfoot{ACM Transactions on Document Formatting,
- Vol.\ 8, No.\ 1, January 1999.}
-
-\markboth{Leslie Lamport et al.}{Preparing Articles for the ACM Transactions}
-
-\title{Preparing Articles for the ACM Transactions
-with \LaTeX}
-\author{LESLIE LAMPORT\\Digital Equipment Corporation\\
-ANDREW W. APPEL\\Princeton University \and
-JOHN TANG BOYLAND\\University of California, Berkeley}
-\begin{abstract}
-The \LaTeX\ {\tt acmtrans} document style formats articles in
-the style of the ACM transactions. Users who have prepared their
-document with \LaTeX\ can, with very little effort, produce
-camera-ready copy for these journals.
-%Then the ACM production department
-%will re-typeset from scratch anyway, introducing typographical errors.
-\end{abstract}
-
-\category{D.2.7}{Software Engineering}{Distribution and Main\-ten\-ance}%
-[documentation]
-
-\category{H.4.0}{Information Systems Applications}{General}
-
-\category{I.7.2}{Text Processing}{Document Preparation}[languages \and
- photocomposition]
-
-\terms{Documentation, Languages}
-
-\keywords{Document preparation, publications, typesetting}
-
-\begin{document}
-
-\setcounter{page}{111}
-
-\begin{bottomstuff}
-Author's address: L. Lamport, System Research Center,
-Digital Equipment Corporation, 130 Lytton Ave., Palo Alto, CA 94301.\newline
-Start of a second footnote ...
-\permission
-\copyright\ 1999 ACM 0164-0925/99/0100-0111 \$00.75
-\end{bottomstuff}
-\maketitle
-
-\section{Introduction}
-
-This article is a description of the \LaTeX\ {\tt acmtrans} document
-style for typesetting articles in the format of the ACM
-transactions---{\em Transactions on Programming Languages and
-Systems}, {\em Transactions on Database Systems}, etc. It has, of
-course, been typeset using this document style, so it is a
-self-illustrating article. The reader is assumed to be familiar
-with \LaTeX, as described by~\citeN{lamport:latex}.
-
-This document also describes the {\tt acmtrans} bibliography style.
-
-\LaTeX\ is a document preparation system
-implemented as a macro package in Donald Knuth's
-\TeX\ typesetting system~\cite{knuth:texbook}. It is based
-upon the premise that the user should describe the logical structure of
-his document and not how the document is to be formatted. Formatting
-is under the direction of a {\em document style} chosen by the user.
-The user can dramatically change the way the document is formatted by
-simply choosing a different document style. The idea of separating the
-logical structure from the formatting comes from Brian Reid's {\em
-Scribe\/} system~\cite{reid:scribe}.
-
-
-It is impossible to provide predefined logical structures to handle all
-situations that may arise in a document, so users must sometimes make
-their own formatting decisions. \LaTeX\ provides a number of features
-to assist in this task and, if necessary, the user can call upon the
-full power of \TeX, which is probably the most powerful typesetting
-system currently available. However, very little user formatting is
-necessary for the majority of documents that appear in journals such as
-the ACM transactions. Consequently, it is quite easy to convert
-an existing \LaTeX\ input file to the {\tt acmtrans} style.
-
-\section{The Title Page}
-
-\subsection{The Title, Author(s), and Abstract}
-
-Following order is mandatory to generate a correct title page:
-
-\begin{verbatim}
- \documentstyle{acmtrans}
- \markboth{}{}
- \title{}
- \author{}
- \begin{abstract} ... \end{abstract}
- \category{}{}{}
- \terms{}
- \keywords{}
- \begin{document}
- \begin{bottomstuff} ... \end{bottomstuff}
- \maketitle
-\end{verbatim}
-
-\subsubsection{Title and Author}
-The \LaTeX\ \verb|\title| and \verb|\author| declarations and the
-\verb|\maketitle| command are employed as usual. However, the user
-must format the author a little differently to match the ACM standard.
-The following example \cite{6:1:1} illustrates most features:
-\begin{quote}
-\begin{verbatim}
-\author{JAMES E. ARCHER, JR.\\ Rational Machines
- \and RICHARD CONWAY and FRED B. SCHNEIDER \\
- Cornell University}
-\end{verbatim}
-\end{quote}
-Note that authors' names are in uppercase letters, authors are
-separated from their affiliation by a \verb|\\| command, multiple
-authors with the same affiliation are separated by ``and'' (or commas
-and ``and'' if there are more than two), and authors with different
-affiliations are separated by an \verb|\and| command. The following
-example \cite{6:3:380} shows what to do if there are more than
-two affiliations:
-\begin{quote}
-\begin{verbatim}
-\author{E. KORACH \\ IBM Israel \\
- D. ROTEM \\ University of Waterloo
- \and N. SANTORO \\ Carleton University}
-\end{verbatim}
-\end{quote}
-In both the title and the author, you may have to insert \verb|\\|
-commands if lines need to be broken.
-
-\subsubsection{Abstract}
-The abstract is typed as usual with the {\tt abstract} environment.
-However, this environment must come before the \verb|\maketitle|
-command.
-
-
-\subsection{Content Indicators and Keywords}
-
-The content indicators and keywords are entered with \LaTeX\
-declarations. The CR categories are indicated with \verb|\category|
-declarations. The first CR category of this article, appearing
-right below the abstract, was entered with the following command:
-\begin{quote}
-\begin{verbatim}
-\category{D.2.7}{Software Engineering}{Distribution and
- Maintenance}[Documentation]
-\end{verbatim}
-\end{quote}
-Note that the last argument (which contains the subject descriptors)
-is optional, since some categories have none. Multiple subject descriptors
-are separated by \verb|\and| commands, as in the last category of
-this article:
-\begin{quote}
-\begin{verbatim}
-\category{I.7.2}{Text Processing}{Document Preparation}
- [Languages \and Photocomposition]
-\end{verbatim}
-\end{quote}
-Use a separate \verb|\category| declaration for each CR category;
-they will be listed in the order that the commands appear. The
-\verb|\category| commands must precede the \verb|\maketitle|
-command.
-
-The General Terms are declared with a (single) \verb|\terms|
-command as in the one for this article:
-\begin{quote}
-\begin{verbatim}
-\terms{Documentation, Languages}
-\end{verbatim}
-\end{quote}
-The \verb|\terms| declaration must come before the \verb|\maketitle|
-command. The terms {\it must} be chosen from the following list:
-\begin{quote}
-Algorithms;
-Design;
-Documentation;
-Economics;
-Experimentation;
-Human factors;
-Languages;
-Legal aspects;
-Management;
-Measurement;
-Performance;
-Reliability;
-Security;
-Standardization;
-Theory;
-Verification;
-\end{quote}
-The general terms are
-orthogonal to the Categories, at least theoretically, and so
-may be applied to any elements of the classification tree.
-
-Think of them as `perspectives' from which any topic may
-be approached. Thus you could use {\em Theory} or {\em Performance} for an
-article about {\em C.2.1 Distributed Networks}. However,
-some of these general terms actually slide over into
-content areas. Thus {\em Legal aspects} is a general term
-applicable to any category, but also an entire node in the tree,
-{\em K.5}, devoted to {\em Legal aspects of computing,} with many sub-topics.
-
-So, though perhaps not perfect, the General Terms are most useful
-in online searches when used in combination with categories.
-
-The ``Additional Keywords and Phrases'' item on the title page
-is provided by the \verb|\keywords| declaration, {\bf listed alphabetically\/}.
-For this article,
-they were produced by the following command:
-\begin{quote}
-\begin{verbatim}
-\keywords{Document preparation, publications, typesetting}
-\end{verbatim}
-\end{quote}
-There is no prescribed list of ``additional keywords;'' use any that
-you want.
-
-\subsection{The Bottom of the Title Page}
-
-The bottom of the article's title page contains acknowledgment of
-support, the author(s) address(es), a ``permission to copy'' statement,
-and a line containing a copyright symbol (\copyright) and a mysterious
-number. This is all entered with a {\tt bottomstuff} environment;
-there must be no blank line after the \verb|\begin{bottomstuff}|
-command. The permission to copy statement is produced by the
-\verb|\permission| command.
-
-\subsection{The Page Headers}
-
-\verb|\markboth{}{}| generates the left- and right-page headers. The first
-argument is the author's name(s):
-
-\begin{itemize}
-\item If there is one author, then use author's full name (ex. Leslie Lamport);
-\item If there are two authors, then abbreviate each author's first name
- (L.~Lamport and A.~Appel);
-\item If there are more than two authors, then the format is Leslie Lamport et al.
-\end{itemize}
-
-The second argument of \verb|markboth| is the title;
-if the title is too long,
-contract it by omitting subtitles and phrases, not by abbreviating words.
-
-
-\section{Ordinary Text}
-
-Most of the body of the text is typed just as in an ordinary
-document. This section lists the differences.
-
-\subsection{Lists}
-
-\subsubsection{Enumeration and Itemization}
-
-Let's begin with enumeration.
-\begin{longenum}
-\item The ACM style has two different formats for
-itemized lists, which I will call the {\em long\/} and {\em short\/}
-formats. The long format is generally used when the individual items
-are more than two or three lines long, but ACM has been inconsistent in
-their choice of format, sometimes using the long format for lists whose
-items are all one or two lines long and the short format for lists of
-long items. This list is an example of the long format.
-
-\item The ordinary {\tt enumerate} environment
-produces the short format. For the long format, use the
-{\tt longenum} environment.
-\begin{enumerate}\itemindent 10pt
-\item This inner enumeration uses the short format.
-\item It was produced using \LaTeX's ordinary {\tt enumerate}
- environment.
-\item ACM has no standard for enumerations nested more than
- two levels deep, so the {\tt acmtrans} style does not
- handle them well.
-\end{enumerate}
-\end{longenum}
-
-Itemized lists are similar to enumerated ones.
-\begin{longitem}
-\item As with enumerations, there is a long and a short
-format for itemized lists. This list is in the long format.
-
-\item The long format is produced by the {\tt longitem}
-environment. The ordinary {\tt itemize} environment
-uses the short format.
-\begin{itemize}
-\item This is an itemized list using the short format.
-
-\item It was produced with the {\tt itemize} environment
-that is used in ordinary \LaTeX\ input.
-\end{itemize}
-\end{longitem}
-
-It is interesting to observe that the style of tick mark used
-for an itemization changed around 1985 from an en dash
-(--) to an em dash (---). % jtb: changed!
-
-\subsubsection{Descriptions}
-
-A list is a sequence of displayed text elements, called items, each
-composed of the following two elements:
-\begin{describe}{{\em item body\/}:}
-\item[{\em label\/}:]
-A marker that identifies or sets off the item. It
-is a number in an enumerated list and a tick mark in an itemized list.
-
-\item[{\em item body\/}:] The text of the item. It is usually ordinary prose,
-but sometimes consists of an equation, a program statement, etc.
-
-Or another paragraph, which will be indented like normal paragraphs.
-\end{describe}
-
-When the labels of a list are names rather than numbers or tick marks,
-the list is called a {\em description\/} list.
-The ACM style
-has both long and short description lists. The above list is a short
-description list; the bodies of all the items are indented enough to
-accommodate the widest label.
-The following list is a long description list.
-The {\tt acmtrans} style provides both kinds of description lists:
-\begin{description}
-\item[short]
-The {\tt describe} environment
-%that works the
-%same as the {\tt description} environment except that it
-takes an argument, which should be the same as the argument of the \verb|\item|
-command that produces the widest label. Thus, the above description
-list was begun with the command
-\begin{quote}
-\begin{verbatim}
-\begin{describe}{{\em item body\/}:}
-\end{verbatim}
-\end{quote}
-
-A description label is often emphasized in some way; in this example I
-used the \LaTeX\ \verb|\em| command, italicized the label. The ACM
-appears to have no standard convention for formatting the labels of a
-description list, so the {\tt describe} environment leaves the label
-formatting up to you. An \verb|\hfill| command can be used to produce
-a label like ``{\em gnu \hfill --\/}'' where {\em gnu\/} is flush left
-against the margin and the ``--'' is aligned flush right next to the
-item body.
-
-\item[long]
-The standard \LaTeX\ {\tt description} environment produces a long
-description list. It italicizes the labels, and puts a period after
-them, which seems to be what is done in the ACM transactions.
-\end{description}
-
-\subsection{Theorems, Etc.}
-
-%\newtheorem{theorem}{Theorem}[subsection]
-%\begin{theorem}
-%testing section counter
-%\end{theorem}
-
-\LaTeX\ provides a single class of theorem-like environments, which are
-defined with the \verb|\newtheorem| command. The ACM transactions
-style divides this class into two subclasses that are formatted
-differently. The first class includes theorems, corollaries, lemmas,
-and propositions. It is produced with the \verb|\newtheorem| command.
-Such a theorem-like environment is often followed by a proof, for which
-the {\tt acmtrans} style provides a {\tt proof} environment.
-
-\newtheorem{subtheorem}{Theorem}[subsection]
-\begin{subtheorem}
-Notice that theorems are numbered inside the nearest section\newline subsection.
-\end{subtheorem}
-
-When listing within the theorem environment, this style will now produce
-roman parantheses. Thank you David Sands.
-
-\begin{proof}
-This theorem is an instance of {\tt subtheorem}, theorems nested in
-subsections.
-\end{proof}
-
-
-The second subclass of theorem-like environments includes ones for
-definitions, examples, and remarks. These environments are defined
-with the \verb|\newdef| command, which works the same as
-\verb|\newtheorem|. Here
-is an example of such an environment.
-
-\newdef{subexample}[subtheorem]{Definition}
-
-\begin{subexample}
-This is an example of a Definition, typed with an {\tt subexample}
-environment defined with \verb|\newdef|.
-As you can see theorems are italicized and definitions are not.
-\end{subexample}
-
-\newtheorem{subproperty}[subtheorem]{Property}
-
-Sometimes theorem-like environments are numbered in unusual ways, or
-are identified by a name. Consider the following example
-from~\citeN{7:3:359}.
-\begin{subproperty}[{\rm Ca}]
-Let syn $\in$ Syn, occ $\in$ Occ be maximal and sta $\in$ Sta. Then
-Tcol\/{\rm [[}syn\/{\rm ]]} occ sta\hspace{-2pt} $\downarrow\!1$ $=$
-Tsto\/{\rm [[}syn\/{\rm ]]} sta.
-\end{subproperty}
-\begin{proof}[of Property {\rm Ca}]
-By straightforward structural induction, and is \linebreak
-omitted.
-\end{proof}
-It was obtained by giving optional arguments to the
-{\tt property} environment (defined with \verb|\newtheorem|)
-and the {\tt proof} environment and was typed as follows.
-\begin{quote}
-\begin{verbatim}
-\begin{subproperty}[{\rm Ca}] Let ... \end{subproperty}
-\begin{proof}[of Property {\rm Ca}] By straightforward ...
-\end{verbatim}
-\end{quote}
-Notice that the optional argument to the {\tt property} environment
-suppresses the automatic numbering. If a null optional argument
-were given to this environment by typing ``{\tt []}'', then
-it would have produced the label ``{\sc Property.}'' This is
-how unnumbered theorems, etc.\ are produced.
-
-Environments defined by \verb|\newdef| use the optional
-argument the same way as those defined by \verb|\newtheorem|.
-
-\vskip10pt
-With this definition
-
-\begin{verbatim}
- \newtheorem{secthm}{Theorem}[section]
-\end{verbatim}
-\noindent
-one can solve the counter problems and counter and label problems for
-theorems, lemmas and definitions etc.
-
-With the above definition and with the following variations
-\begin{verbatim}
- \newdef{secdefn}[secthm]{Definition} or
- \newdef{seclem}[secthm]{Lemma} or
- \newdef{sectheo}{secthm]{Theorem} etc.
-\end{verbatim}
-\noindent
-one can achieve
-\begin{enumerate}
-\item correct counters in definitions, theorems etc. in \verb|\section| environment.
-For example, to generate ``Definition 4.1.''; without the above two definitions, it produces ``Definition 4.0.1.'' and
-\item correct counter and label associated with definitions, theorems etc. in any environment (section or subsection). For example,
-\begin{verbatim}
- \begin{secdefn}[\thesecthm\ (label)]
- text text text
- \end{secdefn}
-\end{verbatim}
-produces the correct definition counter + correct placement of the period as in
-``Definition 3.1 (label).''.
-\end{enumerate}
-
-\subsection{Overfull hbox - Stretching/filling one horizontal line}
-
-To solve a line break due to ``Overfull \verb|\hbox|'', here is a plain \TeX\
-solution; here \verb|\hsize| is the default setting of acmtrans.sty:
-
-\begin{center}
-\verb|\hbox to \hsize{line sentence to be stretched}|
-\end{center}
-
-This can be used in a list environment as well but \verb|\hsize| declared to a reduce
-dimension:
-
-\begin{verbatim}
- \hbox{\vbox{\hsize = less than the default setting
- \hbox to \hsize{line sentence to be stretched}}}
-\end{verbatim}
-
-\subsection{Programs}
-
-Good formatting of programs requires a knowledge of their semantics,
-and is beyond the scope of a document production system. While
-``pretty printers'' are useful for handling the many pages of a real
-program, the short examples that are published in articles should be
-formatted by hand to improve their clarity. The \LaTeX\ {\tt tabbing}
-environment makes the formatting of programs relatively easy,
-especially if the user defines commands for his particular language
-constructs.
-One may also use the {\tt verbatim} environment.
-
-The ACM transactions style requires that programs be formatted with
-different size fonts, depending upon whether they appear in the text or
-in a figure, but that is handled by the figure macro which
-automatically sets the correct font size.
-%The {\tt acmtrans} style provides a {\tt program}
-%environment that is exactly the same as the standard {\tt tabbing}
-%environment except for the size of the fonts it uses. This environment
-%should be used for formatting programs, whether they appear in the
-%running text or in a figure.
-Moreover, programs in running text should be indented two ems
-on each side (as provided by the {\tt quote} environment), and
-programs in regular figures should be centered.
-(Programs in ``narrow figures'' (q.v.) are left or right justified
-automatically).
-
-Here is an example of a program:
-\begin{quote}
-\begin{tabbing}
-{\bf type} date =\\
-\hspace*{1em}\= {\bf record} \= day: 1\,.\,.\,31;\+\+\\
- month: 1\,.\,.\,12;\\
- year: integer \-\\
- {\bf end} \-\\
-{\bf var} mybirth, today : date;\\
-{\bf var} myage : integer;
-\end{tabbing}
-\end{quote}
-Figure~\ref{fig:prog} shows how the same program looks in a figure.
-\begin{figure}
-\centerline{\parbox{104pt}{% it's safe to overestimate the size here
-\begin{tabbing}
-{\bf type} date =\\
-\hspace*{1em}\= {\bf record} \= day: 1\,.\,.\,31;\+\+\\
- month: 1\,.\,.\,12;\\
- year: integer \-\\
- {\bf end} \-\\
-{\bf var} mybirth, today : date;\\
-{\bf var} myage : integer;
-\end{tabbing}}}
-\caption{An example of a program centered in a figure}
-\label{fig:prog}
-\end{figure}
-
-%The ACM standard calls for the program to start flush at the left
-%margin, with each new level of nesting indented by a distance of one
-%em, and with the continuation of broken lines indented two ems. However,
-%this standard is not applied consistently.
-
-In addition to formatting programs, the {\tt tabbing} environment may be
-used for similar displayed material such as BNF syntax specifications
-and rewrite rules.
-
-\subsection{User-specified Formatting}
-
-If \LaTeX\ does not provide a particular text structure, the user must
-define it himself and specify how it is to be formatted. This is most
-easily done by defining the new structure in terms of existing ones;
-the \LaTeX\ {\tt list} and {\tt trivlist} environments are useful
-tools. However, it is occasionally necessary for the user to provide
-explicit formatting commands.
-
-The best guide to how something should be formatted is what has been
-done in the ACM transactions. While horizontal spacing tends to depend
-strongly upon the particular text, there is a standard amount of
-vertical space used to set off text. The ordinary \LaTeX\
-\verb|\medskip| command produces a vertical space of the appropriate
-size.
-
-\section{Figures and Tables}
-
-\subsection{Figures}
-
-The ordinary \LaTeX\ {\tt figure} environment works as usual.
-Figure~\ref{fig:ordinary}, which is Figure~6 of \citeN{7:3:359}, a bogus reference,
-\begin{figure}
-\centering
-\(\begin{array}{c|ccc}
- & \bot & F & T \\
-\hline
-\bot & \bot & \bot & T \\
-F & \bot & F & T \\
-T & \bot & T & T
-\end{array}\)
-\caption{The truth table for the parallel-or.}
-\label{fig:ordinary}
-\end{figure}
-was produced in this way.
-Note that figures should never appear in the text or at the bottom of
-a page. (If you use the figure placement optional argument, use only
-\verb"t" or \verb"p" or both; do not use \verb"h" or \verb"b").
-
-Some figures (and tables) have no caption except for the figure number.
-For such figures (and tables), one uses a \verb|\nocaption| command,
-which has no argument, instead of the \verb|\caption| command.
-
-\begin{narrowfig}{3in}
-\begin{tabbing}
-{\bf type} date =\\
-\hspace*{1em}\= {\bf record} \= day: 1\,.\,.\,31;\+\+\\
- month: 1\,.\,.\,12;\\
- year: integer \-\\
- {\bf end} \-\\
-{\bf var} mybirth, today : date;\\
-{\bf var} myage : integer;
-\end{tabbing}
-\caption{An example of a program displayed in a figure.}
-\label{fig:narrow}
-\end{narrowfig}
-
-In addition to this method of formatting figures, the ACM transactions
-also uses figures with side captions, as in Figure~\ref{fig:narrow}.
-Such a figure is produced with the {\tt narrowfig} environment. This
-environment has a single mandatory argument, which is the width of the
-figure.
-Note that if the figure is generated by {\tt tabbing} or {\tt
-tabular}, one can safely overestimate the size.
-It works just like the ordinary {\tt figure} environment,
-except it must contain only one \verb|\caption| or \verb|\nocaption|
-command, which must come after the figure itself.
-
-The {\tt narrowfig} environment should obviously not be used unless the
-figure is narrow enough to leave a reasonable amount of space beside it
-for the caption. The ACM seems to have no consistent policy for choosing
-which style of figure to employ.
-
-\subsection{Tables}
-
-The ordinary \LaTeX\ {\tt table} environment can be used, but it
-requires the user to add formatting commands to match the ACM
-transactions style. This formatting is performed automatically
-if the {\tt acmtable} environment is used instead, producing
-the result shown in Table~\ref{tab:table}, which shows the same
-table displayed in Figure~\ref{fig:ordinary}.
-\begin{acmtable}{100pt}
-\centering
-\(\begin{array}{c|ccc}
- & \bot & F & T \\
-\hline
-\bot & \bot & \bot & T \\
-F & \bot & F & T \\
-T & \bot & T & T
-\end{array}\)
-\caption{The truth table for the parallel-or.}
-\label{tab:table}
-\end{acmtable}
-This environment has a mandatory argument that equals the width
-of the table---more precisely, it specifies the width of the rules
-above and below the table. There must be only one
-\verb|\caption| or \verb|\nocaption|
-command, which must come after the text of the table.
-(Even though the table caption is printed above the table, the
-\verb|\caption| command comes after the table in the input file.)
-
-
-\section{The End of the Document}
-
-\subsection{Appendix}
-
-The appendix (if the article has one) should precede the
-acknowledgments (if any) and bibliography.
-If the appendix isn't broken into separate sections,
-then you should add the following commands after the \verb|\appendix|
-command:
-\begin{quote}
-\begin{verbatim}
-\section*{APPENDIX}
-\setcounter{section}{1}
-\end{verbatim}
-\end{quote}
-Setting the counter is necessary so that numbered subsections and
-theorems will have the names ``A.{\em N\/}'' in the text.
-
-For an article with multiple appendices, one begins
-the appendix with an \verb|\appendix| followed by
-\verb|\section*{APPENDIX}|, and then starts each
-appendix with an ordinary \verb|\section| command.
-
-Information about electronic appendices is given in
-Section~\ref{sec:elecappendix} and in the Appendix.
-
-\subsection{Acknowledgments}
-
-An optional acknowledgments section follows all the text of the
-article, including any appendices. It is produced with the
-{\tt acks} environment. (Since I can never remember how many
-{\em e\/}'s there are in {\em acknowledgments}, it seemed
-like an abbreviation was in order for the environment name.
-One may also spell out the name as {\tt acknowledgments}).
-Sometimes, there is just a single acknowledgment.
-This may be given using the {\tt ack} or {\tt acknowledgment}
-environment.
-
-\subsection{Bibliography}
-
-The bibliography follows the acknowledgments, and is the last
-significant body of text in the article. It is produced by the usual
-\LaTeX\ commands.
-
-In 1993 the ACM changed bibliography styles, from numerical citations [13]
-to author's name and year \cite{7:3:359}.
-The user is encouraged to let \LaTeX\ produce his bibliography
-with the \verb|\bibliography| command, letting \BibTeX\ handle the
-formatting of the entries.
-The \verb|acmtrans.sty|
-bibliography style file now generates citations in this format.
-Put
-\begin{quote}
-\begin{verbatim}
-\bibliographystyle{acmtrans}
-\end{verbatim}
-\end{quote}
-between the \verb|\begin{document}| and the \verb|\end{document}|.
-
-The conventional \verb|\cite| command will generate citations as usual in
-\LaTeX.
-Note that the style file automatically omits repeating author
-names~\cite{7:3:359,test}.
-If you mention the work explicitly in your prose, you should use
-\verb|\citeN| command. This command generates for example, \citeN{7:3:359}
-discusses denotational program transformations. Or, you use
-\verb|\citeyear| and say that Nielson \citeyear{7:3:359} discusses
-them.
-The command \verb|\shortcite| is an alias for \verb|\citeyear|.
-Either command may be used in cases where one refers to multiple
-works (of the same authors!).
-For example, \verb|Nielson~\shortcite{7:3:359,test}| generates
-Nielson~\shortcite{7:3:359,test}.
-%To generate author~[year1; year2], give the author's name and then use
-%the command \verb|\citeNN{year1,year2}|,
-%which generates ``Nielson~\citeNN{7:3:359,test}.''
-
-More variations of \verb|\cite| are discussed in comments in the
-\verb|acmtrans.sty| file. Here are some {\bf examples} on how to get
-
-\begin{enumerate}
-\item{Appel [1996]} $\rightarrow$ using either \verb|\citeN| or \verb|\citeyear|
-\item{[Kempe 1879]} $\rightarrow$ \verb|\cite{kempe79}|
-\item{Appel [1995; 1996]} $\rightarrow$ \verb|\shortcite{ref1-key,ref2-key}|
-\item{Fil\'e [1981a; 1981b]} $\rightarrow$ \verb|Fil\'{e}~\shortcite{engelfriet/file:81sweep,|\\
-\hbox{}\kern.2in\verb|engelfriet/file:81passes}| or simply \verb|\shortcite{ref1-key, ref2-key}|
-\item{[Appel and Shao 1992; Shao and Appel 1994]} $\rightarrow$
-\verb|\cite{appel-zhong-lsc92,|\\
-\hbox{}\kern3.5in\verb|shao94:clo}|
-\item{Chow and Harrison [1992; 1994]} $\rightarrow$
- Chow~and~Harrison~[\verb|\citeyearNP{CH-popl92};|
- \hbox{}\kern2in\verb|\citeyearNP{CH-iccl94}|]
-\item{[Chow and Harrison 1992; 1994; Cousot and Cousot 1984]} $\rightarrow$
-\verb|[\citeNP{CH-popl92};|\\
- \hbox{}\kern1.7in \verb|\citeyearNP{CH-iccl94}; \citeNP{CC-apct77}]|
-\item{[Cytron et al. 1991]} $\rightarrow$ \verb|\cite{cytron-et-al-toplas91}|
-\item{Briggs et al. [1994]} $\rightarrow$ \verb|\citeN{briggs-cooper-torczon-toplas94}| or
-\item{Duri et al. [1993]} $\rightarrow$ \verb|Duri~et~al.~\citeyear{DBDS-sigsoft93}|
-\item{[Chaitin 1982; Chaitin et al. 1981]} $\rightarrow$ \verb|\cite{chaitin-pldi82,chaitin-et-al-cl81}|
-\item{[Alblas 1991; Deransart et al. 1988; Knuth 1868]} $\rightarrow$
-\verb|\cite{alblas:91intro,|
-\hbox{}\kern1in\verb|deransart/jourdan/lorho:88ag,knuth:68semantics}|
-\item{[Gary and Johnson 1979]} $\rightarrow$ \verb|\cite{garey-johnson-bk79}|
-\item{[Brand and Zafiropulo 1983; Gouda et al. 1984;1987]} $\rightarrow$ \newline
-\verb|[\citeNP{brand83}; \citeNP{gouda84};\citeyearNP{gouda87}]|
-\end{enumerate}
-\noindent
-The list will be updated as we find unique cases.
-
-\subsection{Received Date}
-
-An ACM transactions article ends with the dates that the article and its
-revised versions were received and the date it was accepted for
-publication. In the {\tt acmtrans} document style, this information is
-produced with the {\tt received} environment. Type the body of the
-environment just as it should appear in the printed version.
-(Note that only \verb"Received" and the months should be capitalized,
-the entries should be separated by semicolons,
-and the whole ``sentence'' should {\em not} be terminated by a period.)
-You can get these dates from the editor-in-chief.
-
-\section{Running Heads and Feet}
-
-The running foot of all but the title page of the article is declared
-with the \linebreak
-\verb|\runningfoot| command. It contains the name of the
-journal, volume, number, and date. The foot for the title page
-contains this information plus the page numbers. It is declared
-with the \verb|\firstfoot| command.
-
-The \verb|\pages| command prints the page numbers of the article,
-producing something like ``123--132''. It is implemented with the
-\LaTeX\ \verb|\pageref| command, so it will not produce the correct
-page numbers the first time the file is run through \LaTeX, or if the
-number of the first or last page has changed since the last time.
-
-The default page style for the {\tt acmtrans} style is {\tt
-myheadings}. Thus, a \verb|\markboth| command is used to set the
-running heads. The left head contains the author's name (or authors'
-names) and the right head contains the title. For long titles,
-some contraction of the title is used.
-
-{\bf
-At present, the ACM prefers to strip in their own running heads and
-feet, so it is unnecessary to worry about them when producing
-camera-ready copy.
-}
-
-\section{Interacting with ACM's Production Staff}
-
-After your article is accepted, format your document and send
-a Postscript file to the editor-in-chief. An ACM copy editor will
-mark up a paper copy and send it back to you for corrections.
-If there are just a few corrections, they may be sent to you by e-mail.
-Iterate this process until the copy editor is satisfied (it may take
-one or two iterations).
-
-Then print your final camera-ready copy on a 1200-dpi phototypesetter
-(or a 600-dpi laser printer, if you must) and mail it to ACM.
-
-If you are using a laser printer for your final camera-ready copy,
-you may enjoy using special paper designed for this purpose (it gives
-a sharper image on a whiter background). One such paper
-(manufactured by Hammermill Papers) is:
-\begin{verse}
- Hammermill Laser Plus (Featuring Wax Holdout)\\
- 8$\frac{1}{2}$x11--12M--S24/60\\
- 10450--5\\
- For Prepress Proofing and Camera-Ready Masters.
-\end{verse}
-
-But the use of special paper is entirely optional; plain white laser-printer
-paper is fine.
-
-\subsection{ACM Copy Editors' Preferences}
-
-We wish to thank the authors who have mailed to us copies of their page proofs.
-From the page proofs (and explicit requests from ACM), here is a list of items most
-frequently marked up by the copy editors.
-
-\begin{description}\itemindent\labelsep % that is, no indentation
-\item[\bf Center] Displayed items like figures, pieces of program codes, and equations. Equation numbers to appear right flushed. Remember to add a period if the displayed equation ends in a sentence.
-\item[\bf Fonts] Following items in regular Roman font:
-\begin{itemize}
-\item such words like et al., e.g., i.e., ad hoc, and bona fide, and
-\item the body of the definition environment.
-\end{itemize}
-\item[\bf Etc] No double period when a sentence ends with ``etc.''
-\item[\bf Figure] Spell out the word ``figure'' when using in a sentence, as in Figure 1.
-Use a period as in ``Fig. 1.'' and not a colon as in ``Fig. 1:''
-\item[\bf Contractions] Avoid the use of contractions; for example, use
-{\em do not} instead of {\em don't}.
-(If you prefer to use contractions to avoid
-stuffiness, you'll have to tell the copy editor explicitly after you
-get the marked-up proofs.)
-\item[\bf Conference References] Please use {\it 4th International Conf. on
-Document Formatting}, not {\it Fourth International Conference ...}; that
-is, do not spell out the number.
-\item[\bf Journal References] Figure~\ref{fig:abbrev} gives common journal abbreviations; there is a duplicate list in the acmtrans.bst file for your convenience. Using the {\it abbreviation} feature of \BibTeX\ for journal
-names (and months!) makes it easy to follow the rules.
-\end{description}
-
-\begin{figure}\noindent
-\begin{tabular}{l|l||l|l}
-\footnotesize
-acmcs&ACM Comput. Surv.&jlp&J. Logic Program.\\
-acmlett&ACM Lett. Program. Lang. Syst.&jcss&J. Comput. Syst. Sci.\\
-acta&Acta Inf.&jsmrp&J. Softw. Maint. Res. Pract.\\
-al&Ada Lett.&jss&J. Syst. Softw.\\
-acr&Adv. Comput. Res.&jlsc&J. Lisp Symb. Comput.\\
-bit&Bit&lpls&Lett. Program. Lang. Syst.\\
-cacm&Commun. ACM&mscs&Math. Struct. Comput. Sci.\\
-cj&Comput. J.&mst&Math. Syst. Theor.\\
-cn&Comput. J.&ngc&New Gen. Comput.\\
-cl&Comput. Lang.&scp&Sci. Comput. Program.\\
-ict&Inf. Contr.&sicomp&SIAM J. Comput.\\
-ieebcs&IEE/BCS Softw. Eng. J.&spe&Softw. Pract. Exper.\\
-ieees&IEEE Softw.&tocs&ACM Trans. Comput. Syst.\\
-ieeese&IEEE Trans. Softw. Eng.&tods&ACM Trans. Database Syst.\\
-ieeetc&IEEE Trans. Comput.&tog&ACM Trans. Graphics\\
-ieeetpds&IEEE Trans. Parall. Distrib. Syst.&toms&ACM Trans. Math. Softw.\\
-ieeetit&IEEE Trans. Inf. Theory&toois&ACM Trans. Office Inf. Syst.\\
-ipl&Inf. Process. Lett.&toplas&ACM Trans. Program. Lang. Syst.\\
-icp&Inf. Comput.&tcs&Theor. Comput. Sci.\\
-ist&Inf. Softw. Tech.&tr&Tech. Rep.\\
-ijsa&Int. J. Supercomput. Appl.&jf&J. Funct. Program.\\
-ijpp&Int. J. Parallel Program.&jlc&J. Logic and Comput.\\
-\end{tabular}
-\caption{Common journal abbreviations.}
-\label{fig:abbrev}
-\end{figure}
-
-The best method of
-reducing the number of copy editorial markups is by using a recent ACM journal
-as a guide to typesetting your article.
-
-\section{Electronic Appendices}
-\label{sec:elecappendix}
-
-Because of severe constraints on how many pages it can print,
-{\it ACM Transactions on Programming Languages and Systems} (TOPLAS)
-accepts some articles with {\it electronic appendices:} appendices
-in Postscript format that will not appear in the printed article but
-will be available separately. If your article is accepted with an
-electronic appendix, you should put an appendix header where the
-appendix normally belongs (before the ``acknowledgments'').
-The body of the electronic appendix should be given after the
-references.
-The \verb|appendixhead| command is given
-\begin{quote}
-{\tt \verb|\|appendixhead\{{\it journal}\}\{{\it article-id}\}}
-\end{quote}
-where {\it journal} is the name of the journal (e.g. {\tt toplas} or
-{\tt todf}), and
-{\it article-id} is a number given to you by the Editor.
-The result of \verb|\appendixhead| looks like this:\footnote{%
-See the end of this document for the remainder of the explanation of
-electronic appendices}
-
-\appendix
-\section*{ONLINE-ONLY APPENDICES}
-\setcounter{secnumbookdepth}{-1}
-% \begin{NoHyper}
-\section{Splitting off the electronic appendix}
-\section{Single appendix}
-\section{Multiple appendices}
-% \end{NoHyper}
-\setcounter{secnumbookdepth}{3}
-
-\appendixhead{Appendix A is}{appendix}{http://www.acm.org/toplas}
-
-\begin{acks}
-We wish to thank Howard Trickey for providing the now-obsolete
-version of the {\tt acmtrans}
-bibliography style, and for giving advice on creating the new one;
-Rebecca Davies for helping to adapt
-Glenn Paulley's ``Chicago'' bibliography
-style to fit the new ACM style;
-and Marilyn Salmansohn and George Criscione for providing information
-on the official ACM transactions style.
-\end{acks}
-
-\bibliographystyle{acmtrans}
-\bibliography{acmtr}
-\begin{received}
-Received February 1986;
-November 1993;
-accepted January 1996
-\end{received}
-
-elecappendix{http://www.acm.org/toplas}{1998}{ACM Transactions on Document Formatting,
- Vol.~8, No.~1, January 1999, Pages \pages.}{
-\copyright\ 1999 ACM 0164-0925/98/0100-0208A \$5.00}
-
-The contents of the electronic appendix is written after the references
-and the ``received'' environment.
-The electronic appendix is started
-by an \verb|\elecappendix| command that takes two
-required arguments:
-\begin{quote}
-{\tt \verb|\|elecappendix\{{\it year}\}\{{\it ref\/}\}}
-\end{quote}
-where
-{\it year} is the year of appearance (or, if this not known, the year
-of acceptance), necessary for the copyright notice, and
-{\it ref\/} is a sentence provided by the Editor describing the
-publication reference
-information regarding your article.
-
-\section{Splitting off the electronic appendix}
-
-If you have an electronic appendix, only the main body of the
-article, up through and including the description of how to obtain
-the electronic appendix, will be printed in the journal.
-
-It will be necessary to split your dvi or Postscript file into
-two parts: one to be printed, the other to be available by
-FTP. Please split your Postscript into two separate postscript files
-using {\tt dvipages} or {\tt pslpr} and
-email them separately to the Editor.
-
-Note that the pages of the appendix are numbered A-1, A-2, etc.
-so as not to interfere with the normal journal pagination.
-
-\section{Single Appendix}
-
-When an article has a single electronic appendix, then after
-the \verb|\elecappendix| command, type the following.
-\begin{quote}
-\begin{verbatim}
-\setcounter{section}{1}
-\end{verbatim}
-\end{quote}
-If the text starts immediately, add a \verb|\medskip| to set off the
-text from the horizontal rule created by \verb|\elecappendix|.
-
-\section{Multiple appendices}
-
-For an article with multiple electronic appendices, one begins
-the appendix with an \verb|\elecappendix|
-command, then starts each
-appendix with an ordinary \verb|\section| command. Lower levels of
-sectioning are produced by the ordinary sectioning commands.
-
-\end{document}
-
-
-
-
-
diff --git a/Master/texmf-dist/tex/latex/acmtrans/acmtrans2e.cls b/Master/texmf-dist/tex/latex/acmtrans/acmtrans2e.cls
deleted file mode 100644
index 2a67feb3857..00000000000
--- a/Master/texmf-dist/tex/latex/acmtrans/acmtrans2e.cls
+++ /dev/null
@@ -1,1243 +0,0 @@
-% latex2e by nr 7/3/96
-% acmtrans.cls revised 4/19/96
-% revised again 31-JAN-1996 (see end of file)
-% revised 5-14-1997 :
-% Don't use sans-serif font in categories and descriptors
-% include latexsym by default
-% Define longpage and shortpage
-% $Header: acmtrans.sty,v 1.3 96/01/31 13:12:53 boyland Exp $
-% Here is the basic framework that is needed to convert your paper
-% into ACM TOPLAS format and bibliographic format. For a tutorial
-% introduction, see ``acmtr.tex'' (compile it with LaTeX) that
-% accompanies the distribution of this style file.
-%
-% -> \documentclass{acmtrans}
-% -> \markboth{}{}
-% takes 2 arguments and it is for the left- and right-page headers:
-% the first set of braces is assigned for author's name(s)
-% and
-% the second set of braces is assigned for the title
-% (if the title is too long, contraction may be needed
-% -> \title{}
-% if the title is too long, it can be separated by \\
-% -> \author{}
-% author1 \\ author1 affiliation
-% \and
-% author2 \\ author2 affiliation
-% -> \begin{abstract}
-% -> \end{abstract}
-%
-% -> \category{}{}{}
-% takes 3 arguments for the Computing Reviews Classification Scheme.
-% ex: \category{D.3.3}{Programming Languages}{Language Constructs and
-% Features}[data types and structures]
-% the last argument, in square brackets, is optional.
-% -> \terms{} (ex: \terms{Human Factors, Languages})
-% -> \keywords{} (in alphabetical order \keywords{document processing, sequences,
-% string searching, subsequences, substrings})
-% -> \begin{document}
-%
-% -> \begin{bottomstuff}
-% similar to \thanks
-% for authors' addresses; research/grant statements
-% -> \end{bottomstuff}
-% -> \maketitle
-%
-% Now you can start the body of the paper; your figures, tables and
-% use all the latex constructs.
-%
-% -> \begin{acks}
-% acknowledgements
-% -> \end{acks}
-%
-% -> \bibliographystyle{acmtrans}
-% -> \bibliography{mybib_file}
-%
-% ****
-% If your paper has been accepted with a separate (electronic only)
-% appendix, you need to add the following control sequence:
-%
-% -> \appendixhead{}{}{}{}
-% takes 4 arguments to identify your appendix section.
-% first = journal name (e.g. toplas )
-% second = paper-id (a four-digit number)
-% third = year of appearance, for copyright notice
-% (approximation will suffice)
-% fourth = journal, volume and year of publication if known
-%
-% body of appendix
-%!!!!!! \appendixhead has be cut into two: \appendixhead and \elecappendix
-%!!!!!! See end of file. (jtb)
-%
-% -> \end{document}
-%
-% Do not worry about the other definitions in this style file
-% Remember to compile: latex, bibtex, latex latex
-%
-% Bibliographic cite forms needed:
-%
-% \cite{key}
-% which produces citations with author list and year.
-% eg. [Brown 1978; Jarke, et al. 1985]
-% \citeA{key}
-% which produces citations with only the author list.
-% eg. [Brown; Jarke, et al.]
-% \citeN{key}
-% which produces citations with the author list and year, but
-% can be used as nouns in a sentence; no brackets appear around
-% the author names, but only around the year.
-% eg. Shneiderman [1978] states that......
-% \citeN should only be used for a single citation.
-% \citeNN{refkey1,refkey2} for author [ref1year; ref2year]
-% \citeyear{key}
-% which produces the year information only, within brackets.
-%
-% Abbreviated author lists use the ``et al.'' construct.
-%
-% The above are examples of required ACM bibliographic cite formats needed.
-% *******************
-% Here is the complete list of cite forms from the chicago bibliographic style
-%
-% \cite{key}
-% which produces citations with abbreviated author list and year.
-% \citeNP{key}
-% which produces citations with abbreviated author list and year.
-% \citeA{key}
-% which produces only the abbreviated author list.
-% \citeANP{key}
-% which produces only the abbreviated author list.
-% \citeN{key}
-% which produces the abbreviated author list and year, with only the
-% year in parentheses. Use with only one citation.
-% \citeyear{key}
-% which produces the year information only, within parentheses.
-% \citeyearNP{key}
-% which produces the year information only.
-%
-% Abbreviated author lists use the ``et al.'' construct.
-%
-% `NP' means `no parentheses'
-%
-
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{acmtrans2e} [1996/07/03 ACM Transactions class based on <23 April 96>]
-\RequirePackage{latexsym}
-
-
-\if@compatibility\else
-\DeclareOption{a4paper}
- {\setlength\paperheight {297mm}%
- \setlength\paperwidth {210mm}%
- \def\special@paper{210mm,297mm}}
-\DeclareOption{a5paper}
- {\setlength\paperheight {210mm}%
- \setlength\paperwidth {148mm}%
- \def\special@paper{148mm,210mm}}
-\DeclareOption{b5paper}
- {\setlength\paperheight {250mm}%
- \setlength\paperwidth {176mm}%
- \setlength\voffset {-15mm}%
- \setlength\hoffset {-20mm}%
- \def\special@paper{176mm,250mm}}
-\DeclareOption{letterpaper}
- {\setlength\paperheight {11in}%
- \setlength\paperwidth {8.5in}%
- \def\special@paper{8.5in,11in}}
-\DeclareOption{legalpaper}
- {\setlength\paperheight {14in}%
- \setlength\paperwidth {8.5in}%
- \def\special@paper{8.5in,14in}}
-\DeclareOption{executivepaper}
- {\setlength\paperheight {10.5in}%
- \setlength\paperwidth {7.25in}%
- \def\special@paper{7.25in,10.5in}}
-\DeclareOption{landscape}
- {\setlength\@tempdima {\paperheight}%
- \setlength\paperheight {\paperwidth}%
- \setlength\paperwidth {\@tempdima}}
-\fi
-
-\DeclareOption{checkMargin}{\setlength\overfullrule{5pt}}
-\DeclareOption{final}{\setlength\overfullrule{0pt}}
-
-\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
-\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
-
-\DeclareOption{10pt}{\def\@ptsize{0}} %needed for amssymbols.sty
-\DeclareOption{11pt}{\ClassError{acmtrans}{11pt style not supported}
- {ACM transactions doecuments can be set in 10pt only}}
-\DeclareOption{12pt}{\ClassError{acmtrans}{11pt style not supported}
- {ACM transactions doecuments can be set in 10pt only}}
-
-\DeclareOption{hyperref}{%
- \def\pages{\realpageref{@firstpg}--\realpageref{@lastpg}}%
- \def\mypage{\thepage}%
- \setlength{\bibitemindent}{-1em}
- \def\@getpagenum#1#2#3#4{#2}%
- \def\pdfinfo#1#2{\pdfmark{pdfmark=/DOCINFO,Title=#1,Author=#2}}
- }
-\DeclareOption{nohyperref}{
- \def\pages{\pageref{@firstpg}--\pageref{@lastpg}}%
- \def\@getpagenum#1#2{#2}%
- \def\mypage{\thepage}%
- \def\pdfinfo#1#2{}%
- \def\href#1#2{#2}%
- \def\pdfbookmark#1#2{}%
- }
-\DeclareOption{notfinal}{
- \def\pages{TBD}%
- \def\mypage{TBD}%
- \def\@getpagenum#1#2{#2}%
- \def\pdfinfo#1#2{}%
- \def\pdfbookmark#1#2{}%
- }
-\DeclareOption{omitline}{\def\@abstractbottom{\relax}}
-\DeclareOption{dontomitline}{\def\@abstractbottom{\hbox{\vrule height .2pt width 30pc}}}
-\newlength{\bibitemindent}
-\ExecuteOptions{twoside,final,10pt,dontomitline,nohyperref,letterpaper} % defaults
-
-
-
-\ProcessOptions
-
-
- \widowpenalty=5000
- \clubpenalty=5000
-
-
-\lineskip 1pt \normallineskip 1pt
-\def\baselinestretch{1}
-
-\renewcommand\normalsize{%
- \@setfontsize\normalsize\@xpt\@xiipt
- \abovedisplayskip 6pt plus2pt minus1pt\belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip 6pt plus0pt minus 3pt
- \belowdisplayshortskip 6pt plus0pt minus3pt\let\@listi\@listI}
-
-\newcommand\small{%
- \@setfontsize\small\@ixpt{11pt}%
- \abovedisplayskip 5pt plus 2pt minus 1pt\belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip 5pt plus0pt minus2pt\belowdisplayshortskip 5pt plus0pt
- minus 2pt
- \def\@listi{\leftmargin\leftmargini \topsep 5pt plus 2pt minus 1pt\parsep 0pt
- plus .7pt
- \itemsep 1.6pt plus .8pt}}
-\newcommand\footnotesize{%
-% \@setfontsize\footnotesize\@viiipt{10pt}
- \@setsize\footnotesize{10pt}\viiipt\@viiipt
- \abovedisplayskip 4pt plus 1pt minus 0pt\belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip 4pt plus 0pt minus 1pt\belowdisplayshortskip 4pt plus
- 0pt minus 1pt
- \def\@listi{\leftmargin\leftmargini \topsep 4pt plus 1pt minus
- 0pt\parsep 0pt plus .5pt
- \itemsep 1pt plus .7pt}}
-
-\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
-\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt}
-\newcommand\large{\@setfontsize\large\@xiipt{14}}
-\newcommand\Large{\@setfontsize\Large\@xivpt{18}}
-\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{20}}
-\newcommand\huge{\@setfontsize\huge\@xxpt{25}}
-\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
-
-\normalsize
-
- \oddsidemargin .75in \evensidemargin .75in \marginparwidth .5in
- \marginparsep .125in
- \topmargin .25in \headheight 12pt\headsep 16pt
- %% not in latex2e \footheight 10pt
- \footskip 15pt
-
-\textheight 47pc \textwidth 30pc \columnsep 10pt \columnseprule 0pt
-
-\footnotesep 7pt
-\skip\footins 15pt plus 4pt minus 3pt
-\floatsep 12pt plus 2pt minus 2pt
-\textfloatsep \floatsep
-\intextsep 1pc plus 1pc
-%%% not in 2e %% \@maxsep 1pc
-%%% not in 2e %% \@dblmaxsep 20pt
-\dblfloatsep 12pt plus 2pt minus 2pt
-\dbltextfloatsep 20pt plus 2pt minus 4pt
-\@fptop 0pt plus 1fil \@fpsep 1pc plus 2fil \@fpbot 0pt plus 1fil
-\@dblfptop 0pt plus 1fil \@dblfpsep 8pt plus 2fil \@dblfpbot 0pt plus 1fil
-\marginparpush 6pt
-
-\parskip 0pt plus .1pt \parindent 10pt \partopsep 0pt
-\@lowpenalty 51 \@medpenalty 151 \@highpenalty 301
-\@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty \@itempenalty
--\@lowpenalty
-
-
-\def\part{\@ucheadtrue
- \@startsection{part}{9}{\z@}{-10pt plus -4pt minus
- -2pt}{4pt}{\reset@font\normalsize\sffamily}}
-\def\section{\@ucheadtrue
- \@startsection{section}{1}{\z@}{-10pt plus -4pt minus
- -2pt}{4pt}{\reset@font\normalsize\sffamily}}
-\def\subsection{\@ucheadfalse
- \@startsection{subsection}{2}{\z@}{-8pt plus -2pt minus
- -1pt}{4pt}{\reset@font\normalsize\sffamily}}
-\def\subsubsection{\@ucheadfalse
- \@startsection{subsubsection}{3}{\parindent}{6pt plus
-1pt}{-5pt}{\reset@font\normalsize\itshape}}
-\def\paragraph{\@ucheadfalse
- \@startsection{paragraph}{3}{\parindent}{6pt plus
-1pt}{-5pt}{\reset@font\normalsize\itshape}}
-
-\renewcommand{\@seccntformat}[1]{\textup{\csname the#1\endcsname}}
-
-\gdef\@period{.}
-\def\@trivlist{\@topsepadd\topsep
-\if@noskipsec \gdef\@period{}\leavevmode\gdef\@period{.}\fi
- \ifvmode \advance\@topsepadd\partopsep \else \unskip\par\fi
- \if@inlabel \@noparitemtrue \@noparlisttrue
- \else \@noparlistfalse \@topsep\@topsepadd \fi
- \advance\@topsep \parskip
- \leftskip\z@\rightskip\@rightskip \parfillskip\@flushglue
- \@setpar{\if@newlist\else{\@@par}\fi} \global\@newlisttrue
-\@outerparskip\parskip}
-
-
-\def\@startsection#1#2#3#4#5#6{%
- \if@noskipsec \leavevmode \fi
- \par
- \@tempskipa #4\relax
- \@afterindenttrue
- \ifdim \@tempskipa <\z@
- \@tempskipa -\@tempskipa \@afterindentfalse
- \fi
- \if@nobreak
- \everypar{}%
- \else
- \addpenalty\@secpenalty\addvspace\@tempskipa
- \fi
- \@ifstar
- {\@ssect{#3}{#4}{#5}{#6}}%
- {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
-\def\@sect#1#2#3#4#5#6[#7]#8{%
- \ifnum #2>\c@secnumdepth
- \let\@svsec\@empty
- \else
- \refstepcounter{#1}%
- \if@uchead%
- \protected@edef\@svsec{\@seccntformat{#1}.\quad\relax}%
- \else%
- \protected@edef\@svsec{\@seccntformat{#1}\quad\relax}%
- \fi%
- \fi
- \@tempskipa #5\relax
- \ifdim \@tempskipa>\z@
- \begingroup
- #6{%
- \@hangfrom{\hskip #3\relax\@svsec}%
- \interlinepenalty \@M \if@uchead\MakeUppercase{#8}\else#8\fi \@@par}%
- \endgroup
- \csname #1mark\endcsname{#7}%
- \addcontentsline{toc}{#1}{%
- \ifnum #2>\c@secnumdepth \else
- \protect\numberline{\csname the#1\endcsname}%
- \fi
- #7}%
- \else
- \def\@svsechd{%
- #6{\hskip #3\relax
- \@svsec \if@uchead\Makeuppercase{#8}\else#8\fi}%
- \csname #1mark\endcsname{#7}%
- \addcontentsline{toc}{#1}{%
- \ifnum #2>\c@secnumdepth \else
- \protect\numberline{\csname the#1\endcsname}%
- \fi
- #7}}%
- \fi
- \@xsect{#5}}
-
-\def\@xsect#1{\@tempskipa #1\relax
- \ifdim \@tempskipa>\z@
- \par \nobreak
- \vskip \@tempskipa
- \@afterheading
- \else \global\@nobreakfalse \global\@noskipsectrue
- \everypar{\if@noskipsec \global\@noskipsecfalse
- \clubpenalty\@M \hskip -\parindent
- \begingroup \@svsechd\@period \endgroup \unskip
- \hskip -#1
- \else \clubpenalty \@clubpenalty
- \everypar{}\fi}\fi\ignorespaces}
-\newif\if@uchead\@ucheadfalse
-
-
-\setcounter{secnumdepth}{3}
-\newcounter{secnumbookdepth}
-\setcounter{secnumbookdepth}{3}
-
-\newfont{\apbf}{cmbx9}
-
-\def\@withappendix#1{App--\number #1}
-
-\newcommand{\elecappendix}{
-}
-
-\def\appenheader{\global\@topnum\z@ \global\@botroom \textheight \begin{figure}
-\newfont{\sc}{cmcsc10}
-\parindent\z@
-\hbox{}
-\vskip -\textfloatsep
-\vskip 11pt
-\hrule height .2pt width 30pc
-\vskip 2pt\rule{0pt}{10pt}\ignorespaces}
-\def\endappenheader{\end{figure}\gdef\appendixhead{}}
-
-\def\@appsec{}
-
-\def\appendix{\par
- \setcounter{section}{0}
- \setcounter{subsection}{0}
- \def\@appsec{APPENDIX }
- \def\thesection{\Alph{section}}
- \def\theHsection{\Alph{section}}}
-
-
-
-\labelsep 5pt
-\settowidth{\leftmargini}{(9)} \addtolength\leftmargini\labelsep
-\settowidth{\leftmarginii}{(b)} \addtolength\leftmarginii\labelsep
-\leftmarginiii \leftmarginii
-\leftmarginiv \leftmarginii
-\leftmarginv \leftmarginii
-\leftmarginvi \leftmarginii
-\leftmargin\leftmargini
-\labelwidth\leftmargini\advance\labelwidth-\labelsep
-\def\@listI{\leftmargin\leftmargini \parsep 0pt plus 1pt\topsep 6pt plus 2pt
-minus 2pt\itemsep 2pt plus 1pt minus .5pt}
-\let\@listi\@listI
-\@listi
-\def\@listii{\leftmargin\leftmarginii
- \labelwidth\leftmarginii\advance\labelwidth-\labelsep
- \topsep 0pt plus 1pt
- \parsep 0pt plus .5pt
- \itemsep \parsep}
-\def\@listiii{\leftmargin\leftmarginiii
- \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
- \topsep 0pt plus 1pt
- \parsep 0pt plus .5pt
- \itemsep \parsep}
-\def\@listiv{\leftmargin\leftmarginiv
- \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
-\def\@listv{\leftmargin\leftmarginv
- \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
-\def\@listvi{\leftmargin\leftmarginvi
- \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
-
-
-
-
-\def\enumerate{\ifnum \@enumdepth >3 \@toodeep\else
- \advance\@enumdepth \@ne
- \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list
- {\csname label\@enumctr\endcsname}{\usecounter
- {\@enumctr}\def\makelabel##1{##1\hss}}\fi}
-\def\longenum{\ifnum \@enumdepth >3 \@toodeep\else
- \advance\@enumdepth \@ne
- \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list
- {\csname label\@enumctr\endcsname}{\usecounter
- {\@enumctr}\labelwidth\z@}\fi}
-%\leftmargin\z@ \itemindent\parindent}\fi} - this indents each item in enumerate
-\let\endlongenum\endlist
-%%--------------------CHANGED: always roman parentheses. dave ---------------%%
-\def\labelenumi{{\rm (}\arabic{enumi}\/{\rm )}}
-\def\theenumi{\arabic{enumi}}
-\def\labelenumii{{\rm (}\alph{enumii}\rm{)}}
-\def\theenumii{\alph{enumii}}
-\def\p@enumii{\theenumi}
-\def\labelenumiii{\roman{enumiii}.}
-\def\theenumiii{\roman{enumiii}}
-\def\p@enumiii{\theenumi{\rm (}\theenumii{\rm )}}
-\def\labelenumiv{\Alph{enumiv}.}
-\def\theenumiv{\Alph{enumiv}}
-\def\p@enumiv{\p@enumiii\theenumiii}
-
-\def\p@enumiv{\p@enumiii\theenumiii}
-
-\def\itemize{\list{---\hskip -\labelsep}{\settowidth
- {\leftmargin}{---}\labelwidth\leftmargin
- \addtolength{\labelwidth}{-\labelsep}}}
-\let\enditemize\endlist
-\def\longitem{\list{---}{\labelwidth\z@
- \leftmargin\z@ \itemindent\parindent \advance\itemindent\labelsep}}
-\let\endlongitem\endlist
-\def\verse{\let\\=\@centercr
- \list{}{\leftmargin 2pc
- \itemindent -1.5em\listparindent \itemindent
- \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
-\let\endverse\endlist
-\def\quotation{\list{}{\leftmargin 2pc \listparindent .5em
- \itemindent\listparindent
- \rightmargin\leftmargin \parsep 0pt plus 1pt}\item[]}
-\let\endquotation=\endlist
-\def\quote{\list{}{\leftmargin 2pc \rightmargin\leftmargin}\item[]}
-\let\endquote=\endlist
-
-\def\description{\list{}{\listparindent\parindent\labelwidth\z@
- \leftmargin\z@ \itemindent\parindent\advance\itemindent\labelsep
- \def\makelabel##1{\it ##1.}}}
-\let\enddescription\endlist
-
-\def\describe#1{\list{}{\listparindent\parindent\settowidth{\labelwidth}{#1}\leftmargin
- \labelwidth\addtolength\leftmargin\labelsep\def\makelabel##1{##1\hfil}}}
-\let\enddescribe\endlist
-
-\def\program{\ifx\@currsize\normalsize\small \else \rm \fi\tabbing}
-\let\endprogram\endtabbing
- \def\@begintheorem#1#2{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\sc #1\hskip 5pt\relax#2.}] \itshape}
- \def\@opargbegintheorem#1#2#3{\trivlist
- \item[\hskip 10pt \hskip \labelsep{\sc #1\savebox\@tempboxa{#3}\ifdim
- \wd\@tempboxa>\z@ \hskip 5pt\relax \box\@tempboxa\fi.}] \itshape}
-
-\newif\if@qeded\global\@qededfalse
-\def\proof{\global\@qededfalse\@ifnextchar[{\@xproof}{\@proof}}
-\def\endproof{\if@qeded\else\qed\fi\endtrivlist}
-\def\qed{\unskip\kern 10pt{\unitlength1pt\linethickness{.4pt}\framebox(6,6){}}
-\global\@qededtrue}
-\def\@proof{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\sc Proof.}]\ignorespaces}
-\def\@xproof[#1]{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\sc Proof #1.}]\ignorespaces}
-
-\def\newdef#1#2{\expandafter\@ifdefinable\csname #1\endcsname
-{\@definecounter{#1}\expandafter\xdef\csname
-the#1\endcsname{\@thmcounter{#1}}\global
- \@namedef{#1}{\@defthm{#1}{#2}}\global
- \@namedef{end#1}{\@endtheorem}}}
-\def\@defthm#1#2{\refstepcounter
- {#1}\@ifnextchar[{\@ydefthm{#1}{#2}}{\@xdefthm{#1}{#2}}}
-\def\@xdefthm#1#2{\@begindef{#2}{\csname the#1\endcsname}\ignorespaces}
-\def\@ydefthm#1#2[#3]{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\it #2\savebox\@tempboxa{#3}\ifdim
- \wd\@tempboxa>\z@ \ \box\@tempboxa\fi.}]\ignorespaces}
-\def\@begindef#1#2{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\it #1\ \rm #2.}]}
-
-\def\theequation{\arabic{equation}}
-
-\def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
- \else \newpage \fi \thispagestyle{empty}\c@page\z@}
-\def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi}
-
-\arraycolsep 2.5pt \tabcolsep 6pt \arrayrulewidth .4pt \doublerulesep 2pt
-\tabbingsep \labelsep
-
-\skip\@mpfootins = \skip\footins
-\fboxsep = 3pt \fboxrule = .4pt
-
-\newcounter{part}
-\newcounter{section}
-\newcounter{subsection}[section]
-\newcounter{subsubsection}[subsection]
-\newcounter{paragraph}[subsubsection]
-
-\def\thepart{\Roman{part}}
-\def\thesection {\arabic{section}}
-\def\thesubsection {\thesection.\arabic{subsection}}
-\def\thesubsubsection {\thesubsection.\arabic{subsubsection}}
-\def\theparagraph {\thesubsubsection.\arabic{paragraph}}
-
-\def\@pnumwidth{1.55em}
-\def\@tocrmarg {2.55em}
-\def\@dotsep{4.5}
-\setcounter{tocdepth}{3}
-
-\def\tableofcontents{\section*{Contents\@mkboth{CONTENTS}{CONTENTS}}
- \@starttoc{toc}}
-\def\l@part#1#2{\addpenalty{\@secpenalty}
- \addvspace{2.25em plus 1pt} \begingroup
- \@tempdima 3em \parindent \z@ \rightskip \@pnumwidth \parfillskip
--\@pnumwidth
- {\large \bf \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
- \nobreak \endgroup}
-\def\l@section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
-\@tempdima 1.5em \begingroup
- \parindent \z@ \rightskip \@pnumwidth
- \parfillskip -\@pnumwidth
- \bf \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
- \endgroup}
-\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
-\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
-\def\listoffigures{\section*{List of Figures\@mkboth
- {LIST OF FIGURES}{LIST OF FIGURES}}\@starttoc{lof}}
-\def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
-\def\listoftables{\section*{List of Tables\@mkboth
- {LIST OF TABLES}{LIST OF TABLES}}\@starttoc{lot}}
-\let\l@table\l@figure
-
-
-\def\thebibliography#1{\par\footnotesize
-\@ucheadfalse
-\@startsection{subsection}{2}{\z@}{16pt plus 2pt minus
- 1pt}{2pt}{\sf}*{REFERENCES}%
-\list{\arabic{enumi}.}{%
- \settowidth{\labelwidth}{99.}%
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep \topsep \z@ \parsep 0pt plus .1pt
- \itemsep \parsep
- \usecounter{enumi}}%
- \def\newblock{\hskip .11em plus .33em minus .07em}
- \sloppy
- \widowpenalty=10000
- \clubpenalty=10000
- \sfcode`\.=1000\relax}
-\let\endthebibliography=\endlist
-
-
-\newif\if@restonecol
-\def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
-\columnseprule \z@
-\columnsep 35pt\twocolumn[\section*{Index}]
- \@mkboth{INDEX}{INDEX}\thispagestyle{plain}\parindent\z@
- \parskip\z@ plus .3pt\relax\let\item\@idxitem}
-\def\@idxitem{\par\hangindent 40pt}
-\def\subitem{\par\hangindent 40pt \hspace*{20pt}}
-\def\subsubitem{\par\hangindent 40pt \hspace*{30pt}}
-\def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
-\def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}
-
-\def\footnoterule{\kern-3\p@
- \hrule \@height 0.2\p@ \@width 47\p@
- \kern 2.6\p@
-}
-
-\long\def\@makefntext#1{\parindent 1em\noindent
- $^{\@thefnmark}$#1}
-
-
-\setcounter{topnumber}{3}
-\def\topfraction{.99}
-\setcounter{bottomnumber}{1}
-\def\bottomfraction{.5}
-\setcounter{totalnumber}{3}
-\def\textfraction{.01}
-\def\floatpagefraction{.85}
-\setcounter{dbltopnumber}{2}
-\def\dbltopfraction{.7}
-\def\dblfloatpagefraction{.5}
-
-\long\def\@makecaption#1#2{\vskip 1pc \setbox\@tempboxa\hbox{#1.\hskip
-1em\relax #2}
- \ifdim \wd\@tempboxa >\hsize #1. #2\par \else \hbox
-to\hsize{\hfil\box\@tempboxa\hfil}
- \fi}
-
-\def\nocaption{\refstepcounter\@captype \par
- \vskip 1pc \hbox to\hsize{\hfil \footnotesize Figure \thefigure
- \hfil}}
-
-
-\newcounter{figure}
-\def\thefigure{\@arabic\c@figure}
-\def\fps@figure{tbp}
-\def\ftype@figure{1}
-\def\ext@figure{lof}
-\def\fnum@figure{Fig.\ \thefigure}
-\def\figure{\let\normalsize\footnotesize \normalsize \@float{figure}}
-\let\endfigure\end@float
-\@namedef{figure*}{\@dblfloat{figure}}
-\@namedef{endfigure*}{\end@dblfloat}
-
-\newcounter{table}
-\def\thetable{\@Roman\c@table}
-\def\fps@table{tbp}
-\def\ftype@table{2}
-\def\ext@table{lot}
-\def\fnum@table{Table \thetable}
-\def\table{\let\normalsize\footnotesize \normalsize\@float{table}}
-\let\endtable\end@float
-\@namedef{table*}{\@dblfloat{table}}
-\@namedef{endtable*}{\end@dblfloat}
-\def\acmtable#1{\@narrowfig #1\relax
- \let\caption\@atcap \let\nocaption\@atnocap
- \def\@tmpnf{}\@ifnextchar[{\@xntab}{\@ntab}}
-\def\endacmtable{\hbox to \textwidth{\hfil
-\vbox{\hsize \@narrowfig
-\box\@nfcapbox
-{\baselineskip 4pt \hbox{\vrule height .4pt width \hsize}}
-\vskip -1pt
-\box\@nfigbox\vskip -1pt
-{\baselineskip 4pt \hbox{\vrule height .4pt width \hsize}}}\hfil}
-\end@float}
-\def\@xntab[#1]{\def\@tmpnf{[#1]}\@ntab}
-\def\@ntab{\expandafter\table\@tmpnf
- \setbox\@nfigbox\vbox\bgroup
- \hsize \@narrowfig \@parboxrestore}
-\def\@atmakecap #1#2{\setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}
- \ifdim \wd\@tempboxa >\hsize \sloppy #1.\hskip 1em\relax #2 \par \else \hbox
-to\hsize{\hfil\box\@tempboxa\hfil}
- \fi}
-\def\@atcap{\par\egroup\refstepcounter\@captype
- \@dblarg{\@atcapx\@captype}}
-\long\def\@atcapx#1[#2]#3{\setbox\@nfcapbox\vbox {\hsize \wd\@nfigbox
- \@parboxrestore
- \@atmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}\par}}
-\def\@atnocap{\egroup \refstepcounter\@captype
- \setbox\@nfcapbox\vbox {\hsize \wd\@nfigbox
- \hbox to\hsize{\hfil \footnotesize Table \thetable\hfil}}}
-
-%
-%% Narrow figures
-%
-\def\narrowfig#1{\@narrowfig #1\relax
- \let\caption\@nfcap \let\nocaption\@nfnocap
- \def\@tmpnf{}\@ifnextchar[{\@xnfig}{\@nfig}}
-\def\endnarrowfig{\hbox to \textwidth{\if@nfeven
- \box\@nfcapbox\hfil\box\@nfigbox
- \else \box\@nfigbox\hfil\box\@nfcapbox\fi}\end@float}
-\def\@xnfig[#1]{\def\@tmpnf{[#1]}\@nfig}
-\def\@nfig{\expandafter\figure\@tmpnf
- \setbox\@nfigbox\vbox\bgroup
- \hsize \@narrowfig \@parboxrestore}
-\def\@nfmakecap #1#2{\setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}
- \ifdim \wd\@tempboxa >\hsize \sloppy #1.\hskip 1em\relax #2 \par \else \hbox
-to\hsize{\if@nfeven\else\hfil\fi\box\@tempboxa\if@nfeven\hfil\fi}
- \fi}
-\def\@nfcap{\par\egroup\refstepcounter\@captype
- \@dblarg{\@nfcapx\@captype}}
-\long\def\@nfcapx#1[#2]#3{\@seteven
- \setbox\@nfcapbox\vbox to \ht\@nfigbox
- {\hsize \textwidth \advance\hsize -2pc \advance\hsize -\wd\@nfigbox
- \@parboxrestore
- \vfil
- \@nfmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
- \vfil}}
-\def\@nfnocap{\egroup \refstepcounter\@captype \@seteven
- \setbox\@nfcapbox\vbox to \ht\@nfigbox
- {\hsize \textwidth \advance\hsize -2pc \advance\hsize -\wd\@nfigbox
- \@parboxrestore
- \vfil
- \hbox to\hsize{\if@nfeven\else\hfil\fi
- \footnotesize Figure \thefigure
- \if@nfeven\hfil\fi}
- \vfil}}
-\def\@seteven{\@nfeventrue
- \@ifundefined{r@@nf\thefigure}{}{%
- \edef\@tmpnf{\csname r@@nf\thefigure\endcsname}%
- \edef\@tmpnf{\expandafter\@getpagenum\@tmpnf}%
- \ifodd\@tmpnf\relax\@nfevenfalse\fi}%
-\label{@nf\thefigure}\edef\@tmpnfx{\if@nfeven e\else o\fi}
-\edef\@tmpnf{\write\@unused {\noexpand\ifodd \noexpand\c@page
- \noexpand\if \@tmpnfx e\noexpand\@nfmsg{\thefigure} \noexpand\fi
- \noexpand\else
- \noexpand\if \@tmpnfx o\noexpand\@nfmsg{\thefigure}\noexpand\fi
- \noexpand\fi }}\@tmpnf}
-\def\@nfmsg#1{Bad narrowfig: Figure #1 on page \thepage}
-
-\newdimen\@narrowfig
-\newbox\@nfigbox
-\newbox\@nfcapbox
-\newif\if@nfeven
-
-\def\and{\\ and\\}
-\def\maketitle{\newpage \thispagestyle{titlepage}\par
- \begingroup \lineskip = \z@\null \vskip -30pt\relax
- \parindent\z@ \LARGE {\raggedright \hyphenpenalty\@M
- \sf \@title \par}
-\label{@firstpg}
-{ \vskip 13.5pt\relax \normalsize \sf %vskip 13.5pt between title and author
- \begingroup \addtolength{\baselineskip}{2pt}
- \@author\par \vskip -2pt
- \endgroup }
- {\ifx \@categories\@empty
- \else
- \baselineskip 17pt\relax
- \hbox{\vrule height .2pt width 30pc}}
- \vskip 8.5pt \footnotesize \box\@abstract \vskip 4pt\relax %vskip8.5 space above abstract
- {\def\and{\unskip\/{\rm ; }}
- Categories and Subject Descriptors: \@categories \fi}\par\vskip 4pt\relax
- \box\@terms \vskip 4pt\relax
- \box\@keywords \par
- {\baselineskip 14pt\relax
- \@abstractbottom
- }
- \vskip 23pt\relax
- \endgroup
-\let\maketitle\relax
- % \gdef\@author{}\gdef\@title{}
- \gdef\@categories{}}
-
-
-\newbox\@abstract
-\newbox\@terms
-\newbox\@keywords
-\def\abstract{\global\setbox\@abstract=\vbox\bgroup \everypar{}
- \footnotesize \hsize 30pc \parindent 10pt \noindent
- \rule{0pt}{10pt}\ignorespaces}
-\def\endabstract{\egroup}
-
-\def\terms#1{\setbox\@terms=\vbox{\everypar{}
- \footnotesize \hsize 30pc \parindent 0pt \noindent
- General Terms: \ignorespaces #1}}
-\def\keywords#1{\setbox\@keywords=\vbox{\everypar{}
- \footnotesize \hsize 30pc \parindent 0pt \noindent
- Additional Key Words and Phrases: \ignorespaces #1}
-}
-
-\def\category#1#2#3{\@ifnextchar
- [{\@category{#1}{#2}{#3}}{\@xcategory{#1}{#2}{#3}}}
-\def\@category#1#2#3[#4]{\edef\@tempa{\ifx \@categories\@empty
- \else ; \fi}{\def\protect{\noexpand\protect
- \noexpand}\def\and{\noexpand\and}\xdef\@categories{\@categories\@tempa #1
-[{\bf #2}]:
- #3\kern\z@---\hskip\z@{\it #4}}}}
-\def\@xcategory#1#2#3{\edef\@tempa{\ifx \@categories\@empty \else ;
-\fi}{\def\protect{\noexpand\protect\noexpand}\def\and{\noexpand
- \and}\xdef\@categories{\@categories\@tempa #1 [{\bf #2}]: #3}}}
-\def\@categories{}
-\def\bottomstuff{\global\@topnum\z@ \global\@botroom \textheight \begin{figure}
-\parindent\z@
-\hbox{}
-\vskip -\textfloatsep
-\vskip 10pt
-\hrule height .2pt width 30pc
-\vskip 2pt\rule{0pt}{10pt}\ignorespaces}
-\def\endbottomstuff{\end{figure}\gdef\permission{}}
-
-\newenvironment{ackslike}[1]
- {\par \footnotesize
- \@ucheadfalse
- \@startsection{subsection}{2}{\z@}{-16pt plus -2pt minus -1pt}{2pt}{\sf}*
- {\uppercase{#1}}\par\normalsize
- \pdfbookmark{Acknowledgments}{Ack}
- }
- {\par}
-\newenvironment{acks}{\begin{ackslike}{ACKNOWLEDGMENTS}}{\end{ackslike}}
-
-\def\received{\par\footnotesize\addvspace{18pt plus 0pt minus
-4pt}\parindent\z@}
-\def\endreceived{\label{@lastpg}\hskip-2pt\par}
-
-\mark{{}{}}
-
-\def\ps@myheadings{\let\@mkboth\@gobbletwo
-\def\@oddhead{\hbox{}\hfill \small\sf \rightmark\hskip
-19pt{\Large$\cdot$}\hskip 17pt\mypage}
-\def\@oddfoot{\hbox{}\hfill\tiny\@runningfoot}
-\def\@evenhead{\small\sf\mypage \hskip 17pt{\Large$\cdot$}\hskip 19pt\leftmark\hfill \hbox{}}
-\def\@evenfoot{\tiny\@runningfoot\hfill\hbox{}}
-\def\sectionmark##1{}\def\subsectionmark##1{}}
-\def\@runningfoot{}
-\def\runningfoot#1{\def\@runningfoot{#1}}
-\def\@firstfoot{}
-\def\firstfoot#1{\def\@firstfoot{#1}}
-\def\ps@titlepage{\let\@mkboth\@gobbletwo
-\def\@oddhead{}\def\@oddfoot{\hbox{}\hfill
-\tiny\@firstfoot}\def\@evenhead{}\def\@evenfoot{\tiny\@firstfoot\hfill\hbox{}}}
-
-\def\today{\ifcase\month\or
- January\or February\or March\or April\or May\or June\or
- July\or August\or September\or October\or November\or December\fi
- \space\number\day, \number\year}
-\def\@marrayclassiv{\@addtopreamble{$\displaystyle \@nextchar$}}
-\def\@marrayclassz{\ifcase \@lastchclass \@acolampacol \or \@ampacol \or
- \or \or \@addamp \or
- \@acolampacol \or \@firstampfalse \@acol \fi
-\edef\@preamble{\@preamble
- \ifcase \@chnum
- \hfil$\relax\displaystyle\@sharp$\hfil \or $\relax\displaystyle\@sharp$\hfil
- \or \hfil$\relax\displaystyle\@sharp$\fi}}
-\def\marray{\arraycolsep 2.5pt\let\@acol\@arrayacol \let\@classz\@marrayclassz
- \let\@classiv\@marrayclassiv \let\\\@arraycr\def\@halignto{}\@tabarray}
-\def\endmarray{\crcr\egroup\egroup}
-
-
-\ps@myheadings \pagenumbering{arabic} \onecolumn
-
-%-----------------------BIBLIOGRAPHY STUFF-------------------------
-% this is adapted (November 1993) by Andrew Appel and Rebecca Davies from
-%
-%%% filename = "chicago.sty",
-%%% version = "4", % MODIFIED!
-%%% date = "31 August 1992",
-%%% time = "09:42:44 199",
-%%% author = "Glenn Paulley",
-%%% address = "Data Structuring Group
-%%% Department of Computer Science
-%%% University of Waterloo
-%%% Waterloo, Ontario, Canada
-%%% N2L 3G1",
-%%% telephone = "(519) 885-1211",
-%%% FAX = "(519) 885-1208",
-%%% email = "gnpaulle@bluebox.uwaterloo.ca",
-
-%%% ====================================================================
-%
-% this file: Modification of chicago.sty for new ACM bibliography
-% style, which is similar (but not identical) to the ``Chicago'' style.
-%
-% chicago.sty: Style file for use with bibtex style chicago.bst, for
-% bibliographies formatted according to the 13th Edition of the Chicago
-% Manual of Style.
-%
-% 'newapa.bst' was made from 'plain.bst', 'named.bst', and 'apalike.bst',
-% with lots of tweaking to make it look like APA style, along with tips
-% from Young Ryu and Brian Reiser's modifications of 'apalike.bst'.
-% newapa.sty formed the basis of this style, chicago.sty. Author-date
-% references in newapa.bst formed the basis for chicago.bst. Chicagoa.bst
-% supports annotations.
-%
-% Version 4 (August, 1992):
-% - fixed chicago.bst and chicagoa.bst to handle long author lists in
-% sorting
-% - fixed chicago.bst and chicagoa.bst so that missing page numbers in
-% ``article'' entries are handled correctly
-% - modified chicago.sty to format entries with 2nd and subsequent lines
-% indented.
-%
-% Citation format: (author-last-name year)
-% (author-last-name and author-last-name year)
-% (author-last-name et al. year)
-% (author-last-name)
-% author-last-name
-% author-last-name (year)
-% (author-last-name and author-last-name)
-% (author-last-name et al.)
-% (year) or (year,year)
-% year or year,year
-%
-% Reference list ordering: alphabetical by author or whatever passes
-% for author in the absence of one.
-%
-% This BibTeX style has support for abbreviated author lists and for
-% year-only citations. This is done by having the citations
-% actually look like
-%
-% \citeauthoryear{full-author-info}{abbrev-author-info}{year}
-%
-% The LaTeX style has to have the following (or similar)
-%
-% \let\@internalcite\cite
-% \def\fullcite{\def\citeauthoryear##1##2##3{##1, ##3}\@internalcite}
-% \def\fullciteA{\def\citeauthoryear##1##2##3{##1}\@internalcite}
-% \def\shortcite{\def\citeauthoryear##1##2##3{##2, ##3}\@internalcite}
-% \def\shortciteA{\def\citeauthoryear##1##2##3{##2}\@internalcite}
-% \def\citeyear{\def\citeauthoryear##1##2##3{##3}\@internalcite}
-%
-%
-% -------------------------------------------------------------------------
-%
-% Citation macros.
-%
-\let\@internalcite\cite
-
-\def\cite{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
-\def\citeXNP#1#2{%
- \def\@cite@label{#2}%
- \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{\@cite@label}\@internalcite{#1}}
-% \def\@citeseppen{-1000}%
-% \def\@cite@label{#1}
-% \def\@cite##1##2{\if@tempswa ##2\fi}%
-% \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
-\def\citeNP{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
-\def\citeN{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if@tempswa , ##2]\else{]}\fi}%
- \def\citeauthoryear##1##2##3{##2 [##3}\@citedata}
-\def\shortciteN{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if@tempswa , ##2]\else{]}\fi}%
- \def\citeauthoryear##1##2##3{##2 [##3}\@citedata}
-\def\citeS#1{[\citeANP{#1} \citeyearNP{#1}]}
-\def\citeNS#1{\citeANP{#1} \citeyear{#1}}
-\def\citeNPS#1{\citeANP{#1} \citeyearNP{#1}}
-\def\citeNN{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##3}\@citedata}
-
-\def\citeA{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##2}\@internalcite}
-\def\citeANP{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{##2}\@internalcite}
-
-\def\citeyear{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##3}\@citedata}
-\def\citeyearNP{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{##3}\@citedata}
-
-%
-% \@citedata and \@citedatax:
-%
-% Place commas in-between citations in the same \citeyear, \citeyearNP,
-% or \citeN command.
-% Use something like \citeN{ref1,ref2,ref3} and \citeN{ref4} for a list.
-%
-\def\@citedata{%
- \@ifnextchar [{\@tempswatrue\@citedatax}%
- {\@tempswafalse\@citedatax[]}%
-}
-
-\def\@citedatax[#1]#2{%
-\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
- \def\@citea{}\@cite{\@for\@citeb:=#2\do%
- {\@citea\def\@citea{; }\@ifundefined% by Young
- {b@\@citeb}{{\bf ?}%
- \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
-{\csname b@\@citeb\endcsname}}}{#1}}%
-
-% don't box citations, separate with ; and a space
-% also, make the penalty between citations negative: a good place to break.
-%
-\def\@citex[#1]#2{%
-\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
- \def\@citea{}\@cite{\@for\@citeb:=#2\do%
- {\@citea\def\@citea{; }\@ifundefined% by Young
- {b@\@citeb}{{\bf ?}%
- \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
-{\csname b@\@citeb\endcsname}}}{#1}}%
-
-% (from apalike.sty)
-% No labels in the bibliography.
-%
-\def\@biblabel#1{}
-
-% (from apalike.sty)
-% Set length of hanging indentation for bibliography entries.
-%
-\newlength{\bibhang}
-\setlength{\bibhang}{2em}
-
-% Indent second and subsequent lines of bibliographic entries. Stolen
-% from openbib.sty: \newblock is set to {}.
-
-\newdimen\bibindent
-\bibindent=1em
-\@ifundefined{refname}%
- {\@ifundefined{chapter}%
- {\newcommand{\refname}{\footnotesize REFERENCES}}%
- {\newcommand{\refname}{\footnotesize BIBLIOGRAPHY}}%
- }%
- {}%
-\@ifundefined{chapter}%
- {\def\thebibliography#1{\footnotesize \section*{\refname\@mkboth
- {\uppercase{\refname}}{\uppercase{\refname}}}\list
- {[\arabic{enumi}]}{
- \settowidth\labelwidth{[#1]}
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep
- \advance\leftmargin\bibindent
- \itemindent -\bibindent
- \listparindent \itemindent
- \parsep \z@
- \usecounter{enumi}}
- \def\newblock{}
- \sloppy
- \sfcode`\.=1000\relax}}
- {\def\thebibliography#1{\footnotesize \chapter*{\refname\@mkboth
- {\uppercase{\refname}}{\uppercase{\refname}}}\list
- {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep
- \advance\leftmargin\bibindent
- \itemindent -\bibindent
- \listparindent \itemindent
- \parsep \z@
- \usecounter{enumi}}
- \def\newblock{}
- \sloppy
- \sfcode`\.=1000\relax}}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% fixes to acm trans macro package
-% 31-JAN-1996
-% John Tang Boyland
-
-% newdef need to take the optional parameters of newtheorem
-\def\newdef#1{\@ifnextchar[{\@xnewdef{#1}}{\@ynewdef{#1}}}
-\def\@xnewdef#1[#2]#3{\newtheorem{italic@#1}[#2]{{\em #3}}\@newdef{#1}}
-\def\@ynewdef#1#2{\@ifnextchar[{\@xynewdef{#1}{#2}}{\@yynewdef{#1}{#2}}}
-\def\@xynewdef#1#2[#3]{\newtheorem{italic@#1}{{\em #2}}[#3]\@newdef{#1}}
-\def\@yynewdef#1#2{\newtheorem{italic@#1}{{\em #2}}\@newdef{#1}}
-% and now fix up definition, to change body to use roman font:
-\def\@newdef#1{\newenvironment{#1}{\@ifnextchar[{\@xstartdef{#1}}{\@ystartdef{#1}}}{\end{italic@#1}}}
-\def\@xstartdef#1[#2]{\begin{italic@#1}[#2]\rm}
-\def\@ystartdef#1{\begin{italic@#1}\rm}
-
-% footers produced too small (vpt), when ACM typsets them at 7.5pt (!).
-% A better compromise is viipt.
-\def\@oddfoot{\hbox{}\hfill\scriptsize\@runningfoot}
-\def\@evenfoot{\scriptsize\@runningfoot\hfill\hbox{}}
-
-% first footer was set to (vpt), when ACM typesets them at 6.5pt (!).
-% A better compromise is vipt.
-\def\firstfootsize{\@setsize\firstfootsize{7pt}\vipt\@vipt}
-\def\ps@titlepage{\let\@mkboth\@gobbletwo
-\def\@oddhead{}\def\@oddfoot{\hbox{}\hfill\firstfootsize\@firstfoot}%
-\def\@evenhead{}\def\@evenfoot{\firstfootsize\@firstfoot\hfill\hbox{}}}
-
-% new permission statement
-\long\def\permission{\par
-% linebreaks added to conform to the current style
-Permission to make digital/hard copy of all or part of this material without
-fee
-for personal or classroom use
-provided that the copies are not made or distributed for profit
-or commercial advantage, the ACM copyright/server notice, the title of the
-publication, and its date appear, and notice is given that copying is by
-permission of the ACM, Inc. To copy
-otherwise, to republish, to post on servers, or to redistribute to lists
-requires prior specific
-permission and/or a fee.\par}
-
-% make sure \permission doesn't get trashed
-\def\endbottomstuff{\end{figure}}
-
-% alternate way of using citeyear
-\def\shortcite#1{\citeyear{#1}}
-
-% enumerations and longenums are wrong
-% 1. the second line in a paragraph of an enumerations in theorems
-% (or other trivlists) doesn't line up under the first
-% 1. the second line of a longenum doesn't properly wrap around
-% back to the left margin.
-
-% the original definition of \@listI doesn't set labelwidth
-\def\@listI{\leftmargin\leftmargini
- \labelwidth\leftmargini\advance\labelwidth-\labelsep
- \parsep 0pt plus 1pt
- \topsep 6pt plus 2pt minus 2pt
- \itemsep 2pt plus 1pt minus .5pt}
-\let\@listi\@listI
-\@listi
-
-% add set of \labelwidth and \itemindent
-\def\longenum{\ifnum \@enumdepth >3 \@toodeep\else
- \advance\@enumdepth \@ne
- \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list
- {\csname label\@enumctr\endcsname}{\usecounter
- {\@enumctr}\labelwidth\z@\leftmargin\z@
- \itemindent\parindent \advance\itemindent\labelsep}\fi}
-
-% split electronic appendix into two parts:
-
-\def\appendixhead#1#2#3{
-{#1} available only online.
-You should be able to get the online-only {#2} from the citation page
-for this article:
-\smallskip
-
-\quad \href{#3}{{\small #3}}
-\smallskip
-
-Alternative instructions on how to obtain online-only appendices
-are given on the back inside cover of current issues of ACM TOPLAS
-or on the ACM TOPLAS web page: \nopagebreak \smallskip
-
- \quad \href{http://www.acm.org/toplas}{{\small http://www.acm.org/toplas} }}
-
-\long\def\elecappendix#1#2#3#4{
-\clearpage
-\makeatletter
-\pagenumbering{withappendix}
-\makeatother
-\appendix
-\par\noindent{\sc This document is the online-only appendix to:}\hfill \vskip 1em
-{\vbox{\Large\sf \parindent0pt\@title{}}}\vskip .5em
-\vbox{\sf \parindent0pt\@author{}}\vskip .5em\noindent
-\vskip 10pt\noindent
-{\firstfootsize #3}
-\vskip 11pt\noindent
-\hrule height .2pt
-\par
-\bottomstuff
-\permission
-\par
-#4
-\par
-\endbottomstuff
-}
-
-% provide for a single acknowledgment
-\def\ack{ \par \footnotesize
-\@ucheadfalse
-\@startsection{subsection}{2}{\z@}{-16pt plus -2pt minus
- -1pt}{2pt}{\sf}*{ACKNOWLEDGMENT}\par\normalsize
-\pdfbookmark{Acknowledgment}{Ack}
-}
-\def\endack{\par}
-
-% provide both spellings of Acknowledgment(s)
-\let\acknowledgments\acks
-\let\endacknowledgments\endacks
-\let\acknowledgment\ack
-\let\endacknowledgment\endack
-
-\newcommand{\longpage}{\enlargethispage{\baselineskip}}
-\newcommand{\shortpage}{\enlargethispage{-\baselineskip}}
-
-
-% Don't indent bibliography and
-% override \refname (which sets fontsize):
-\def\thebibliography#1{
- \footnotesize\section*{\footnotesize\sf{REFERENCES}\@mkboth
- {\uppercase{\refname}}{\uppercase{\refname}}}\pdfbookmark{References}{Ref}\list
- {\@biblabel{\arabic{enumiv}}}{%
- %\settowidth\labelwidth{[#1]}
- \labelwidth 0pt
- \leftmargin \bibindent
- \labelsep 0pt
- \itemindent -\bibindent
- \listparindent -\bibindent
- \labelsep -\bibindent
- \usecounter{enumiv}%
- \let\p@enumiv\@empty
- \def\theenumiv{\arabic{enumiv}}}%
- \def\newblock{\hskip .11em plus.33em minus.07em}%
- \sloppy
- \clubpenalty=4500
- \widowpenalty=4500
- \frenchspacing}
-\def\endthebibliography{%
- \def\@noitemerr{\@warning{Empty `thebibliography' environment}}%
- \endlist}
-\def\@lbibitem[#1]#2{\item[]\if@filesw
- {\def\protect##1{\string ##1\space}\immediate
- \write\@auxout{\string\bibcite{#2}{#1}}}\fi\hspace{\bibitemindent}\ignorespaces}
-% Fix cite so it doesn't repeat author lists in citations:
-
-\def\cite{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if@tempswa , ##2\fi]}%
- \let\@lastauthor=\@noauthor
- \let\citeauthoryear=\citeauthoryear@no@repeats\@internalcite}
- %\def\citeauthoryear##1##2##3{##2 ##3}\@internalcite
-
-\def\@noauthor={\relax}
-\let\@lastauthor=\@noauthor
-\let\@currauthor=\@noauthor
-
-\def\citeauthoryear@no@repeats#1#2#3{%
- \def\@currauthor{\csname @author #1\endcsname}%
- \ifx\@lastauthor\@currauthor{#3}\else{#2 #3}\fi%
- \let\@lastauthor=\@currauthor}
-
-\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
-\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
-\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
-\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
-\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
-\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
-\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
-\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
-\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
-
-
-\firstfoot{ACM Transactions on Programming Languages and Systems,
- Vol.\ TBD, No.\ TDB, Month Year,
-Pages \pages.}
-
-\runningfoot{ACM Transactions on Programming Languages and Systems,
- Vol.\ TBD, No.\ TDB, Month Year.}