texlive[49672] Master/texmf-dist: revtex (11jan19)

commits+karl at tug.org commits+karl at tug.org
Fri Jan 11 23:30:04 CET 2019


Revision: 49672
          http://tug.org/svn/texlive?view=revision&revision=49672
Author:   karl
Date:     2019-01-11 23:30:04 +0100 (Fri, 11 Jan 2019)
Log Message:
-----------
revtex (11jan19)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/revtex/README
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aip/aipsamp.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aip/aipsamp.tex
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aip/aiptemplate.tex
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aps/apssamp.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aps/apssamp.tex
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aps/apstemplate.tex
    trunk/Master/texmf-dist/doc/latex/revtex/source/ltxdocext.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/source/ltxfront.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/source/ltxgrid.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/source/ltxutil.pdf
    trunk/Master/texmf-dist/source/latex/revtex/ltxdocext.dtx
    trunk/Master/texmf-dist/source/latex/revtex/ltxfront.dtx
    trunk/Master/texmf-dist/source/latex/revtex/ltxgrid.dtx
    trunk/Master/texmf-dist/source/latex/revtex/ltxutil.dtx
    trunk/Master/texmf-dist/tex/latex/revtex/ltxdocext.sty
    trunk/Master/texmf-dist/tex/latex/revtex/ltxfront.sty
    trunk/Master/texmf-dist/tex/latex/revtex/ltxgrid.sty
    trunk/Master/texmf-dist/tex/latex/revtex/ltxutil.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/bibtex/bst/revtex/aapmrev4-2.bst
    trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-2.bst
    trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-2.bst
    trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-2.bst
    trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-2.bst
    trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.tex
    trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.tex
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.tex
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/summary4-2.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/summary4-2.tex
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aapm/
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aapm/aapmsamp.bib
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aapm/aapmsamp.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aapm/aapmsamp.tex
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aapm/aapmtemplate.tex
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aapm/fig_1.eps
    trunk/Master/texmf-dist/doc/latex/revtex/sample/aapm/fig_2.eps
    trunk/Master/texmf-dist/doc/latex/revtex/sample/sor/
    trunk/Master/texmf-dist/doc/latex/revtex/sample/sor/fig_1.eps
    trunk/Master/texmf-dist/doc/latex/revtex/sample/sor/fig_2.eps
    trunk/Master/texmf-dist/doc/latex/revtex/sample/sor/sorsamp.bib
    trunk/Master/texmf-dist/doc/latex/revtex/sample/sor/sorsamp.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/sample/sor/sorsamp.tex
    trunk/Master/texmf-dist/doc/latex/revtex/sample/sor/sortemplate.tex
    trunk/Master/texmf-dist/doc/latex/revtex/source/aip4-2.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/source/revtex4-2.pdf
    trunk/Master/texmf-dist/source/latex/revtex/aip4-2.dtx
    trunk/Master/texmf-dist/source/latex/revtex/revtex4-2.dtx
    trunk/Master/texmf-dist/tex/latex/revtex/aapm4-2.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aip4-2.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps10pt4-2.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps11pt4-2.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps12pt4-2.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps4-2.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/apsrmp4-2.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/reftest4-2.tex
    trunk/Master/texmf-dist/tex/latex/revtex/revsymb4-2.sty
    trunk/Master/texmf-dist/tex/latex/revtex/revtex4-2.cls
    trunk/Master/texmf-dist/tex/latex/revtex/sor4-2.rtx

Removed Paths:
-------------
    trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-1.bst
    trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-1.bst
    trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-1.bst
    trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-1.bst
    trunk/Master/texmf-dist/doc/latex/revtex/00readme.tex
    trunk/Master/texmf-dist/doc/latex/revtex/DOWNLOAD
    trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-1.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-1.tex
    trunk/Master/texmf-dist/doc/latex/revtex/aip/docs.sty
    trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-1.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-1.tex
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-1.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-1.tex
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/summary4-1.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/summary4-1.tex
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/whatsnew4-1.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/auguide/whatsnew4-1.tex
    trunk/Master/texmf-dist/doc/latex/revtex/source/aip.pdf
    trunk/Master/texmf-dist/doc/latex/revtex/source/revtex4-1.pdf
    trunk/Master/texmf-dist/source/latex/revtex/aip.dtx
    trunk/Master/texmf-dist/source/latex/revtex/revtex4-1.dtx
    trunk/Master/texmf-dist/tex/latex/revtex/aip4-1.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps10pt4-1.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps11pt4-1.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps12pt4-1.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/aps4-1.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/apsrmp4-1.rtx
    trunk/Master/texmf-dist/tex/latex/revtex/reftest4-1.tex
    trunk/Master/texmf-dist/tex/latex/revtex/revsymb4-1.sty
    trunk/Master/texmf-dist/tex/latex/revtex/revtex4-1.cls

Added: trunk/Master/texmf-dist/bibtex/bst/revtex/aapmrev4-2.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/aapmrev4-2.bst	                        (rev 0)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/aapmrev4-2.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,3491 @@
+%%
+%% This is file `aapmrev4-2.bst', and is a hand-edited version of aapmrev4-1.bst
+ % ===============================================================
+ % IMPORTANT NOTICE:
+ % This file can be redistributed and/or modified under the terms
+ % of the LaTeX Project Public License Distributed from CTAN
+ % archives in directory macros/latex/base/lppl.txt; either
+ % version 1 of the License, or any later version.
+ % ===============================================================
+ %-------------------------------------------------------------------
+ % This bibliography style file is intended for texts in ENGLISH
+ % This is an author-year citation style bibliography. As such, it is
+ % non-standard LaTeX, and requires a special package file to function properly.
+ % Such a package is natbib.sty   by Patrick W. Daly
+ % The form of the \bibitem entries is
+ %   \bibitem[Jones et al.(1990)]{key}...
+ %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
+ % The essential feature is that the label (the part in brackets) consists
+ % of the author names, as they should appear in the citation, with the year
+ % in parentheses following. There must be no space before the opening
+ % parenthesis!
+ % With natbib v5.3, a full list of authors may also follow the year.
+ % In natbib.sty, it is possible to define the type of enclosures that is
+ % really wanted (brackets or parentheses), but in either case, there must
+ % be parentheses in the label.
+ % The \cite command functions as follows:
+ %   \citet{key} ==>>                Jones et al. (1990)
+ %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
+ %   \citep{key} ==>>                (Jones et al., 1990)
+ %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
+ %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
+ %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
+ %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
+ %   \citeauthor{key} ==>>           Jones et al.
+ %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
+ %   \citeyear{key} ==>>             1990
+ %---------------------------------------------------------------------
+
+FUNCTION {id.bst} {"aapmrev4-2.bst 2018-12-27 (MD) hand-edited version of aapmrev4-1.bst"}
+ENTRY
+{
+    address
+    archive
+    archivePrefix
+    author
+    bookaddress
+    booktitle
+    chapter
+    collaboration
+    doi
+    edition
+    editor
+    eid
+    eprint
+    howpublished
+    institution
+    isbn
+    issn
+    journal
+    key
+    language
+    month
+    note
+    number
+    organization
+    pages
+    primaryClass
+    publisher
+    school
+    SLACcitation
+    series
+    title
+    translation
+    type
+    url
+    volume
+    year
+}{
+}{
+    label
+    extra.label sort.label
+    short.list
+}
+
+INTEGERS
+{
+  output.state before.all
+  after.word after.punctuation
+  after.sentence after.block
+}
+
+INTEGERS
+{
+  punctuation.state punctuation.no punctuation.space punctuation.yes
+}
+
+STRINGS { bibfield output.bibfield }
+
+FUNCTION {not}
+{   { #0 }
+    { #1 }
+  if$
+}
+
+FUNCTION {and}
+{   'skip$
+    { pop$ #0 }
+  if$
+}
+
+FUNCTION {or}
+{   { pop$ #1 }
+    'skip$
+  if$
+}
+
+FUNCTION {non.stop}
+{ duplicate$
+   "}" * add.period$
+   #-1 #1 substring$ "." =
+}
+
+INTEGERS { arith.mulitplier arith.multiplicand }
+
+FUNCTION {multiply}
+{
+  'arith.multiplicand :=
+  'arith.mulitplier :=
+  #0
+    { arith.mulitplier #0 > }
+    { arith.multiplicand +
+      arith.mulitplier #1 - 'arith.mulitplier :=
+    }
+  while$
+}
+
+FUNCTION {chr.to.hex}
+{
+  chr.to.int$
+  duplicate$ "0" chr.to.int$ -
+  duplicate$ duplicate$ #0 < swap$ #9 > or not
+    { swap$ pop$ }
+    { pop$
+      duplicate$ "A" chr.to.int$ -
+      duplicate$ duplicate$ #0 < swap$ #5 > or not
+        { swap$ pop$ #10 + }
+        { pop$
+          duplicate$ "a" chr.to.int$ -
+          duplicate$ duplicate$ #0 < swap$ #5 > or not
+            { swap$ pop$ #10 + }
+            { pop$
+              pop$ #-1
+            }
+          if$
+        }
+      if$
+    }
+  if$
+}
+
+INTEGERS { arith.accumulator }
+
+FUNCTION {str.to.hex}
+{ #0 'arith.accumulator :=
+    { duplicate$ empty$ not }
+    { duplicate$ #1 #1 substring$ chr.to.hex
+      duplicate$ #0 <
+        { pop$ pop$ ""
+        }
+        { arith.accumulator #16 multiply + 'arith.accumulator :=
+          #2 global.max$ substring$
+        }
+      if$
+    }
+  while$
+  pop$ arith.accumulator
+}
+
+FUNCTION {diagn.cmntlog}
+{
+  duplicate$ top$ "%" swap$ * write$ newline$
+}
+
+INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
+
+INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
+
+FUNCTION { control.init }
+{
+  #0
+  'control.key             :=
+  #0
+  #8 +
+  'control.author :=
+  #0
+  'control.author.jnrlst   :=
+  #0
+  'control.author.dotless  :=
+  #0
+  'control.author.nospace  :=
+  #1
+  'control.author.initials :=
+  #0
+  'control.author.nocomma  :=
+  #0
+  'control.author.first    :=
+  #0
+  'control.author.reversed :=
+  #1
+  'control.editor :=
+  #-1
+  'control.title  :=
+  #0
+  'control.pages  :=
+  #0
+  'control.eprint :=
+  #1
+  'control.year   :=
+}
+
+FUNCTION {warning.dependency}
+{
+  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
+}
+
+FUNCTION {control.check}
+{
+  control.editor
+    {
+      "editor formatted same as author"
+      control.author.reversed {
+        duplicate$ #0 swap$ "reversed" warning.dependency
+        #0 'control.author.reversed :=
+      } 'skip$ if$
+      control.author.first {
+        duplicate$ #0 swap$ "first" warning.dependency
+        #0 'control.author.first :=
+      } 'skip$ if$
+      control.author.nocomma {
+        duplicate$ #0 swap$ "nocomma" warning.dependency
+        #0 'control.author.nocomma :=
+      } 'skip$ if$
+      pop$
+    } 'skip$ if$
+  control.author.reversed 'skip$
+    {
+      "not reversed"
+      control.author.nospace {
+        duplicate$ #0 swap$ "nospace" warning.dependency
+        #0 'control.author.nospace :=
+      } 'skip$ if$
+      control.author.jnrlst 'skip$ {
+        duplicate$ #1 swap$ "jnrlst" warning.dependency
+        #1 'control.author.jnrlst :=
+      } if$
+      control.author.initials {
+        duplicate$ ", initials" *
+        control.author.dotless {
+          duplicate$ #0 swap$ "dotless" warning.dependency
+          #0 'control.author.dotless :=
+        } 'skip$ if$
+        pop$
+      } 'skip$ if$
+      pop$
+    }
+  if$
+  control.author.initials 'skip$ {
+    "not initials"
+    control.author.nocomma {
+      duplicate$ #0 swap$ "nocomma" warning.dependency
+      #0 'control.author.nocomma :=
+    } 'skip$ if$
+    control.author.nospace {
+      duplicate$ #0 swap$ "nospace" warning.dependency
+      #0 'control.author.nospace :=
+    } 'skip$ if$
+    control.author.dotless 'skip$ {
+      duplicate$ #1 swap$ "dotless" warning.dependency
+      #1 'control.author.dotless :=
+    } if$
+    pop$
+  } if$
+}
+
+FUNCTION {control.parse}
+{
+  duplicate$ duplicate$ missing$
+    {
+      pop$ pop$ pop$
+    }
+    { empty$
+        {
+          pop$ #-1
+        }{
+          str.to.hex
+        }
+      if$
+      swap$ :=
+    }
+  if$
+}
+
+FUNCTION {control.dump}
+{
+  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
+  "{" swap$ * "}, " *
+  *
+}
+
+INTEGERS { decode.threshold }
+
+FUNCTION {control.decode}
+{
+  - duplicate$
+  #0 <
+    {
+      skip$ pop$ swap$ #0
+    }
+    {
+      swap$ pop$ swap$ #1
+    }
+  if$
+  swap$ :=
+}
+
+FUNCTION {control.author.decode}
+{
+  control.author
+  duplicate$ duplicate$ #0 < swap$ #128 < not or
+    {
+      int.to.str$ "(" swap$ * ")" *
+      "Control cannot interpret author " swap$ *
+      warning$
+    }{
+      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
+      'control.author.dotless  swap$ duplicate$ #32 control.decode
+      'control.author.nospace  swap$ duplicate$ #16 control.decode
+      'control.author.initials swap$ duplicate$  #8 control.decode
+      'control.author.nocomma  swap$ duplicate$  #4 control.decode
+      'control.author.first    swap$ duplicate$  #2 control.decode
+      'control.author.reversed swap$ duplicate$  #1 control.decode
+      duplicate$ #0 =
+        'skip$
+        {
+          "Control: residue of author"
+          "(" swap$ * ")" * *
+          warning$
+        }
+      if$
+      pop$
+    }
+  if$
+}
+
+FUNCTION {control.setup}
+{
+  type$ cite$ "{" swap$ * "}, " * *
+  "control.key"    key    control.dump *
+  "control.author" author control.dump *
+  "control.editor" editor control.dump *
+  "control.title"  title  control.dump *
+  "control.pages"  pages  control.dump *
+  "control.year"   year   control.dump *
+  "control.eprint" eprint control.dump *
+  top$
+  'control.key    key    control.parse
+  'control.author author control.parse
+  'control.editor editor control.parse
+  'control.title  title  control.parse
+  'control.pages  pages  control.parse
+  'control.year   year   control.parse
+  'control.eprint eprint control.parse
+  control.author.decode
+}
+
+FUNCTION {control.pass}
+{ type$ "control" = 'control.setup 'skip$ if$
+}
+
+FUNCTION {control.presort}
+{
+}
+
+FUNCTION {control.forward}
+{
+}
+
+FUNCTION {control.reverse}
+{
+}
+
+FUNCTION {control.sort}
+{
+}
+
+FUNCTION {control.longest.label}
+{
+}
+
+FUNCTION {control.key.bib}
+{
+  "Control: key "
+  control.key
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  pop$ *
+  diagn.cmntlog
+}
+
+FUNCTION {control.author.bib}
+{
+  "Control: author "
+  control.author "(" swap$ int.to.str$ * ")" * *
+  control.author.reversed { " reversed" * }{} if$
+  control.author.first    { " first"    * }{} if$
+  control.author.nocomma  { " nocomma"  * }{} if$
+  control.author.initials { " initials" * }{} if$
+  control.author.nospace  { " nospace"  * }{} if$
+  control.author.dotless  { " dotless"  * }{} if$
+  control.author.jnrlst   { " jnrlst"   * }{} if$
+  diagn.cmntlog
+}
+
+FUNCTION {control.editor.bib}
+{
+  "Control: editor formatted "
+  control.editor
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "identically to author"
+    } {
+      "differently from author"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.title.bib}
+{
+  "Control: production of article title "
+  control.title
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled"
+  } {
+    #0 > {
+      "required"
+    } {
+      "allowed"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.pages.bib}
+{
+  "Control: page "
+  control.pages
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "none"
+  } {
+    #0 > {
+      "range"
+    } {
+      "single"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.year.bib}
+{
+  "Control: year "
+  control.year
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "truncated"
+    } {
+      "verbatim"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.eprint.bib}
+{
+  "Control: production of eprint "
+  control.eprint
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  #0 < { "disabled" } { "enabled" } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.bib}
+{
+  control.key.bib
+  control.author.bib
+  control.editor.bib
+  control.title.bib
+  control.pages.bib
+  control.year.bib
+  control.eprint.bib
+}
+
+FUNCTION {init.state.consts}
+{
+  #0 'before.all        :=
+  #1 'after.word        :=
+  #2 'after.punctuation :=
+  #3 'after.sentence    :=
+  #4 'after.block       :=
+  #0 'punctuation.no    :=
+  #1 'punctuation.space :=
+  #2 'punctuation.yes   :=
+  "" 'bibfield          :=
+  "" 'output.bibfield   :=
+}
+
+STRINGS { s t}
+FUNCTION {block.punctuation}
+{ ""
+  "," *
+}
+
+FUNCTION {word.space}
+{
+  "\ "
+}
+
+FUNCTION {show.stackstring.one}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  duplicate$ "1(" swap$ * ")" * top$
+}
+
+FUNCTION {show.stackstring.two}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  swap$
+  duplicate$ "1(" swap$ * ")" * top$
+  swap$
+  duplicate$ "2(" swap$ * ")" * top$
+}
+
+FUNCTION {bibfield.command}{ "\bibfield "}
+
+FUNCTION {output.nonnull}
+{
+  swap$
+  output.state after.word =
+    {
+      block.punctuation *
+      word.space *
+    }
+    {
+      output.state after.punctuation =
+        {
+          word.space *
+        }
+        {
+          output.state after.block = output.state after.sentence = or
+            {
+              add.period$
+              "\EOS\ " *
+            }{
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  output.bibfield duplicate$ empty$ 'pop$
+    {
+      bibfield.command
+      " {" * swap$ * "} {" * swap$ * "}" *
+    }
+  if$
+  write$
+  bibfield 'output.bibfield := "" 'bibfield :=
+  output.state after.block =
+    {
+      newline$
+      "\newblock " write$
+    }
+    'skip$
+  if$
+  punctuation.state duplicate$
+  punctuation.yes 'punctuation.state :=
+  punctuation.no =
+    { pop$ before.all }
+    { punctuation.yes = { after.word }{ after.punctuation } if$ }
+  if$
+  'output.state :=
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+    {
+      pop$
+  "" 'bibfield :=
+    }
+    'output.nonnull
+  if$
+}
+
+FUNCTION {output.nopunct}
+{
+  punctuation.no 'punctuation.state :=
+  output.nonnull
+}
+
+FUNCTION {output.check}
+{ swap$
+  duplicate$ empty$
+    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
+    { swap$ pop$ output.nonnull }
+  if$
+}
+
+FUNCTION {bbl.open} { "\BibitemOpen " }
+
+FUNCTION {bbl.shut} { "\BibitemShut " }
+
+FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
+
+FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
+
+FUNCTION {bibitem.shut}
+{
+  non.stop
+    {
+  bibitem.shut.nostop *
+    }{
+  bibitem.shut.stop *
+    }
+  if$
+}
+
+FUNCTION {html.itag} {
+  "p"
+}
+
+FUNCTION {html.ltag} {
+  ""
+}
+
+FUNCTION {output.SLACcitation}
+{ SLACcitation empty$
+    'skip$
+    {
+      newline$
+      SLACcitation write$
+    }
+  if$
+}
+
+FUNCTION {fin.entry}
+{
+  bibitem.shut
+  write$
+    output.SLACcitation
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+    'skip$
+    { after.block 'output.state := }
+  if$
+}
+
+FUNCTION {new.block.comma}
+{
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block = output.state before.all = or
+    'skip$
+    { after.sentence 'output.state := }
+  if$
+}
+
+FUNCTION {new.sentence.comma}
+{
+}
+
+FUNCTION {sentence.or.colon}
+{
+  new.sentence
+}
+
+FUNCTION {add.blank}
+{
+  word.space *
+  before.all 'output.state :=
+}
+
+FUNCTION {no.blank.or.punct}
+{
+   "\hspace {0pt}" *
+   before.all 'output.state :=
+}
+
+FUNCTION {date.block}
+{
+  new.block.comma
+  skip$
+}
+
+STRINGS {z}
+FUNCTION {remove.dots}
+{
+  control.author.dotless {
+    'z :=
+    ""
+    { z empty$ not }
+    { z #1 #1 substring$
+      z #2 global.max$ substring$ 'z :=
+      duplicate$ "." = 'pop$
+        { * }
+      if$
+    }
+    while$
+  } 'skip$ if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+  swap$ empty$
+  and
+    'skip$
+    'new.block
+  if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+    { pop$ "" }
+    'skip$
+  if$
+}
+
+FUNCTION {emphasize}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+      "\emph {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bolden}
+{ duplicate$ empty$
+    { pop$ "" }
+    { "\textbf {" swap$ * "}" * }
+  if$
+}
+
+FUNCTION {bib.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bib.fname.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibfnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {cite.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\citenamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {tie.or.space.prefix}
+{ duplicate$ text.length$ #3 <
+    { "~" }
+    { word.space }
+  if$
+  swap$
+}
+
+FUNCTION {capitalize}
+{
+  "u" change.case$ "t" change.case$
+}
+
+FUNCTION {space.word}
+{ word.space swap$ * word.space * }
+
+ % Here are the language-specific definitions for explicit words.
+ % Each function has a name bbl.xxx where xxx is the English word.
+ % The language selected here is ENGLISH
+
+FUNCTION {bbl.and}
+{
+  "and"
+}
+
+FUNCTION {bbl.etal}
+{
+  "et~al."
+}
+
+FUNCTION {bbl.editors}
+{
+  "eds."
+}
+
+FUNCTION {bbl.editor}
+{
+  "ed."
+}
+
+FUNCTION {bbl.edby}
+{ "edited by" }
+
+FUNCTION {bbl.edition}
+{
+  "ed."
+}
+
+FUNCTION {bbl.volume}
+{
+  "vol."
+}
+
+FUNCTION {bbl.of}
+{ "of" }
+
+FUNCTION {bbl.number}
+{
+  "no."
+}
+
+FUNCTION {bbl.nr}
+{ "no." }
+
+FUNCTION {bbl.in}
+{ "in" }
+
+FUNCTION {bbl.pages}
+{
+  "pp."
+}
+
+FUNCTION {bbl.page}
+{
+  "p."
+}
+
+FUNCTION {bbl.eidpp}
+{ "pages" }
+
+FUNCTION {bbl.chapter}
+{
+  "chap."
+}
+
+FUNCTION {bbl.techrep}
+{
+  "Tech. Rep."
+}
+
+FUNCTION {bbl.mthesis}
+{ "Master's thesis" }
+
+FUNCTION {bbl.phdthesis}
+{ "Ph.D. thesis" }
+
+FUNCTION {bbl.first}
+{
+  "1st"
+}
+
+FUNCTION {bbl.second}
+{
+  "2nd"
+}
+
+FUNCTION {bbl.third}
+{
+  "3rd"
+}
+
+FUNCTION {bbl.fourth}
+{
+  "4th"
+}
+
+FUNCTION {bbl.fifth}
+{
+  "5th"
+}
+
+FUNCTION {bbl.st}
+{ "st" }
+
+FUNCTION {bbl.nd}
+{ "nd" }
+
+FUNCTION {bbl.rd}
+{ "rd" }
+
+FUNCTION {bbl.th}
+{ "th" }
+
+MACRO {jan} {"Jan."}
+
+MACRO {feb} {"Feb."}
+
+MACRO {mar} {"Mar."}
+
+MACRO {apr} {"Apr."}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"Jun."}
+
+MACRO {jul} {"Jul."}
+
+MACRO {aug} {"Aug."}
+
+MACRO {sep} {"Sep."}
+
+MACRO {oct} {"Oct."}
+
+MACRO {nov} {"Nov."}
+
+MACRO {dec} {"Dec."}
+
+FUNCTION {bbl.url.prefix}
+{
+  "\urlprefix "
+}
+
+FUNCTION {eng.ord}
+{ duplicate$ "1" swap$ *
+  #-2 #1 substring$ "1" =
+     { bbl.th * }
+     { duplicate$ #-1 #1 substring$
+       duplicate$ "1" =
+         { pop$ bbl.st * }
+         { duplicate$ "2" =
+             { pop$ bbl.nd * }
+             { "3" =
+                 { bbl.rd * }
+                 { bbl.th * }
+               if$
+             }
+           if$
+          }
+       if$
+     }
+   if$
+}
+
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
+MACRO {aa}{"Astron. \& Astrophys."}
+MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
+MACRO {aj} {"Astron. J."}
+MACRO {aph} {"Acta Phys."}
+MACRO {advp} {"Adv. Phys."}
+MACRO {ajp} {"Amer. J. Phys."}
+MACRO {ajm} {"Amer. J. Math."}
+MACRO {amsci} {"Amer. Sci."}
+MACRO {anofd} {"Ann. Fluid Dyn."}
+MACRO {am} {"Ann. Math."}
+MACRO {ap} {"Ann. Phys. (NY)"}
+MACRO {adp} {"Ann. Phys. (Leipzig)"}
+MACRO {ao} {"Appl. Opt."}
+MACRO {apl} {"Appl. Phys. Lett."}
+MACRO {app} {"Astroparticle Phys."}
+MACRO {apj} {"Astrophys. J."}
+MACRO {apjsup} {"Astrophys. J. Suppl."}
+MACRO {apss} {"Astrophys. Space Sci."}
+MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
+MACRO {baas} {"Bull. Amer. Astron. Soc."}
+MACRO {baps} {"Bull. Amer. Phys. Soc."}
+MACRO {cmp} {"Comm. Math. Phys."}
+MACRO {cpam} {"Commun. Pure Appl. Math."}
+MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
+MACRO {cpc} {"Comp. Phys. Comm."}
+MACRO {cqg} {"Class. Quant. Grav."}
+MACRO {cra} {"C. R. Acad. Sci. A"}
+MACRO {fed} {"Fusion Eng. \& Design"}
+MACRO {ft} {"Fusion Tech."}
+MACRO {grg} {"Gen. Relativ. Gravit."}
+MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
+MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
+MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
+MACRO {ip} {"Infrared Phys."}
+MACRO {irp} {"Infrared Phys."}
+MACRO {jap} {"J. Appl. Phys."}
+MACRO {jasa} {"J. Acoust. Soc. America"}
+MACRO {jcp} {"J. Comp. Phys."}
+MACRO {jetp} {"Sov. Phys.--JETP"}
+MACRO {jfe} {"J. Fusion Energy"}
+MACRO {jfm} {"J. Fluid Mech."}
+MACRO {jmp} {"J. Math. Phys."}
+MACRO {jne} {"J. Nucl. Energy"}
+MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
+MACRO {jnm} {"J. Nucl. Mat."}
+MACRO {jpc} {"J. Phys. Chem."}
+MACRO {jpp} {"J. Plasma Phys."}
+MACRO {jpsj} {"J. Phys. Soc. Japan"}
+MACRO {jsi} {"J. Sci. Instrum."}
+MACRO {jvst} {"J. Vac. Sci. \& Tech."}
+MACRO {nat} {"Nature"}
+MACRO {nature} {"Nature"}
+MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
+MACRO {nf} {"Nucl. Fusion"}
+MACRO {nim} {"Nucl. Inst. \& Meth."}
+MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
+MACRO {np} {"Nucl. Phys."}
+MACRO {npb} {"Nucl. Phys. B"}
+MACRO {nt/f} {"Nucl. Tech./Fusion"}
+MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
+MACRO {inc} {"Nuovo Cimento"}
+MACRO {nc} {"Nuovo Cimento"}
+MACRO {pf} {"Phys. Fluids"}
+MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
+MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
+MACRO {pl} {"Phys. Lett."}
+MACRO {pla} {"Phys. Lett. A"}
+MACRO {plb} {"Phys. Lett. B"}
+MACRO {prep} {"Phys. Rep."}
+MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
+MACRO {pp} {"Phys. Plasmas"}
+MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
+MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
+MACRO {prl} {"Phys. Rev. Lett."}
+MACRO {pr} {"Phys. Rev."}
+MACRO {physrev} {"Phys. Rev."}
+MACRO {pra} {"Phys. Rev. A"}
+MACRO {prb} {"Phys. Rev. B"}
+MACRO {prc} {"Phys. Rev. C"}
+MACRO {prd} {"Phys. Rev. D"}
+MACRO {pre} {"Phys. Rev. E"}
+MACRO {ps} {"Phys. Scripta"}
+MACRO {procrsl} {"Proc. Roy. Soc. London"}
+MACRO {rmp} {"Rev. Mod. Phys."}
+MACRO {rsi} {"Rev. Sci. Inst."}
+MACRO {science} {"Science"}
+MACRO {sciam} {"Sci. Am."}
+MACRO {sam} {"Stud. Appl. Math."}
+MACRO {sjpp} {"Sov. J. Plasma Phys."}
+MACRO {spd} {"Sov. Phys.--Doklady"}
+MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
+MACRO {spu} {"Sov. Phys.--Uspeki"}
+MACRO {st} {"Sky and Telesc."}
+ % End module: physjour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
+MACRO {aisr} {"Adv. Space Res."}
+MACRO {ag} {"Ann. Geophys."}
+MACRO {anigeo} {"Ann. Geofis."}
+MACRO {angl} {"Ann. Glaciol."}
+MACRO {andmet} {"Ann. d. Meteor."}
+MACRO {andgeo} {"Ann. d. Geophys."}
+MACRO {andphy} {"Ann. Phys.-Paris"}
+MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
+MACRO {atph} {"Atm\'osphera"}
+MACRO {aao} {"Atmos. Ocean"}
+MACRO {ass}{"Astrophys. Space Sci."}
+MACRO {atenv} {"Atmos. Environ."}
+MACRO {aujag} {"Aust. J. Agr. Res."}
+MACRO {aumet} {"Aust. Meteorol. Mag."}
+MACRO {blmet} {"Bound.-Lay. Meteorol."}
+MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
+MACRO {cch} {"Clim. Change"}
+MACRO {cdyn} {"Clim. Dynam."}
+MACRO {cbul} {"Climatol. Bull."}
+MACRO {cap} {"Contrib. Atmos. Phys."}
+MACRO {dsr} {"Deep-Sea Res."}
+MACRO {dhz} {"Dtsch. Hydrogr. Z."}
+MACRO {dao} {"Dynam. Atmos. Oceans"}
+MACRO {eco} {"Ecology"}
+MACRO {empl}{"Earth, Moon and Planets"}
+MACRO {envres} {"Environ. Res."}
+MACRO {envst} {"Environ. Sci. Technol."}
+MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
+MACRO {expa}{"Exper. Astron."}
+MACRO {geoint} {"Geofis. Int."}
+MACRO {geopub} {"Geofys. Publ."}
+MACRO {geogeo} {"Geol. Geofiz."}
+MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
+MACRO {gfd} {"Geophys. Fluid Dyn."}
+MACRO {geomag} {"Geophys. Mag."}
+MACRO {georl} {"Geophys. Res. Lett."}
+MACRO {grl} {"Geophys. Res. Lett."}
+MACRO {ga} {"Geophysica"}
+MACRO {gs} {"Geophysics"}
+MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
+MACRO {ijawp} {"Int. J. Air Water Pollut."}
+MACRO {ijc} {"Int. J. Climatol."}
+MACRO {ijrs} {"Int. J. Remote Sens."}
+MACRO {jam} {"J. Appl. Meteorol."}
+MACRO {jaot} {"J. Atmos. Ocean. Technol."}
+MACRO {jatp} {"J. Atmos. Terr. Phys."}
+MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
+MACRO {jce} {"J. Climate"}
+MACRO {jcam} {"J. Climate Appl. Meteor."}
+MACRO {jcm} {"J. Climate Meteor."}
+MACRO {jcy} {"J. Climatol."}
+MACRO {jgr} {"J. Geophys. Res."}
+MACRO {jga} {"J. Glaciol."}
+MACRO {jh} {"J. Hydrol."}
+MACRO {jmr} {"J. Mar. Res."}
+MACRO {jmrj} {"J. Meteor. Res. Japan"}
+MACRO {jm} {"J. Meteor."}
+MACRO {jpo} {"J. Phys. Oceanogr."}
+MACRO {jra} {"J. Rech. Atmos."}
+MACRO {jaes} {"J. Aeronaut. Sci."}
+MACRO {japca} {"J. Air Pollut. Control Assoc."}
+MACRO {jas} {"J. Atmos. Sci."}
+MACRO {jmts} {"J. Mar. Technol. Soc."}
+MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
+MACRO {josj} {"J. Oceanogr. Soc. Japan"}
+MACRO {jwm} {"J. Wea. Mod."}
+MACRO {lao} {"Limnol. Oceanogr."}
+MACRO {mwl} {"Mar. Wea. Log"}
+MACRO {mau} {"Mausam"}
+MACRO {meteor} {"``Meteor'' Forschungsergeb."}
+MACRO {map} {"Meteorol. Atmos. Phys."}
+MACRO {metmag} {"Meteor. Mag."}
+MACRO {metmon} {"Meteor. Monogr."}
+MACRO {metrun} {"Meteor. Rundsch."}
+MACRO {metzeit} {"Meteor. Z."}
+MACRO {metgid} {"Meteor. Gidrol."}
+MACRO {mwr} {"Mon. Weather Rev."}
+MACRO {nwd} {"Natl. Weather Dig."}
+MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
+MACRO {npg} {"Nonlin. Proc. Geophys."}
+MACRO {om} {"Oceanogr. Meteorol."}
+MACRO {ocac} {"Oceanol. Acta"}
+MACRO {oceanus} {"Oceanus"}
+MACRO {paleoc} {"Paleoceanography"}
+MACRO {pce} {"Phys. Chem. Earth"}
+MACRO {pmg} {"Pap. Meteor. Geophys."}
+MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
+MACRO {physzeit} {"Phys. Z."}
+MACRO {pps} {"Planet. Space Sci."}
+MACRO {pss} {"Planet. Space Sci."}
+MACRO {pag} {"Pure Appl. Geophys."}
+MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
+MACRO {quatres} {"Quat. Res."}
+MACRO {rsci} {"Radio Sci."}
+MACRO {rse} {"Remote Sens. Environ."}
+MACRO {rgeo} {"Rev. Geophys."}
+MACRO {rgsp} {"Rev. Geophys. Space Phys."}
+MACRO {rdgeo} {"Rev. Geofis."}
+MACRO {revmeta} {"Rev. Meteorol."}
+MACRO {sgp}{"Surveys in Geophys."}
+MACRO {sp} {"Solar Phys."}
+MACRO {ssr} {"Space Sci. Rev."}
+MACRO {tellus} {"Tellus"}
+MACRO {tac} {"Theor. Appl. Climatol."}
+MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
+MACRO {wrr} {"Water Resour. Res."}
+MACRO {weather} {"Weather"}
+MACRO {wafc} {"Weather Forecast."}
+MACRO {ww} {"Weatherwise"}
+MACRO {wmob} {"WMO Bull."}
+MACRO {zeitmet} {"Z. Meteorol."}
+ % End module: geojour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
+
+MACRO {appopt} {"Appl. Opt."}
+MACRO {bell} {"Bell Syst. Tech. J."}
+MACRO {ell} {"Electron. Lett."}
+MACRO {jasp} {"J. Appl. Spectr."}
+MACRO {jqe} {"IEEE J. Quantum Electron."}
+MACRO {jlwt} {"J. Lightwave Technol."}
+MACRO {jmo} {"J. Mod. Opt."}
+MACRO {josa} {"J. Opt. Soc. America"}
+MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
+MACRO {josab} {"J. Opt. Soc. Amer.~B"}
+MACRO {jdp} {"J. Phys. (Paris)"}
+MACRO {oc} {"Opt. Commun."}
+MACRO {ol} {"Opt. Lett."}
+MACRO {phtl} {"IEEE Photon. Technol. Lett."}
+MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
+MACRO {sse} {"Solid-State Electron."}
+MACRO {sjot} {"Sov. J. Opt. Technol."}
+MACRO {sjqe} {"Sov. J. Quantum Electron."}
+MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
+MACRO {stph} {"Sov. Phys.--Techn. Phys."}
+MACRO {stphl} {"Sov. Techn. Phys. Lett."}
+MACRO {vr} {"Vision Res."}
+MACRO {zph} {"Z. f. Physik"}
+MACRO {zphb} {"Z. f. Physik~B"}
+MACRO {zphd} {"Z. f. Physik~D"}
+
+MACRO {CLEO} {"CLEO"}
+MACRO {ASSL} {"Adv. Sol.-State Lasers"}
+MACRO {OSA}  {"OSA"}
+ % End module: photjour.mbs
+%% Copyright 1994-2007 Patrick W Daly
+MACRO {acmcs} {"ACM Comput. Surv."}
+MACRO {acta} {"Acta Inf."}
+MACRO {cacm} {"Commun. ACM"}
+MACRO {ibmjrd} {"IBM J. Res. Dev."}
+MACRO {ibmsj} {"IBM Syst.~J."}
+MACRO {ieeese} {"IEEE Trans. Software Eng."}
+MACRO {ieeetc} {"IEEE Trans. Comput."}
+MACRO {ieeetcad}
+ {"IEEE Trans. Comput. Aid. Des."}
+MACRO {ipl} {"Inf. Process. Lett."}
+MACRO {jacm} {"J.~ACM"}
+MACRO {jcss} {"J.~Comput. Syst. Sci."}
+MACRO {scp} {"Sci. Comput. Program."}
+MACRO {sicomp} {"SIAM J. Comput."}
+MACRO {tocs} {"ACM Trans. Comput. Syst."}
+MACRO {tods} {"ACM Trans. Database Syst."}
+MACRO {tog} {"ACM Trans. Graphic."}
+MACRO {toms} {"ACM Trans. Math. Software"}
+MACRO {toois} {"ACM Trans. Office Inf. Syst."}
+MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
+MACRO {tcs} {"Theor. Comput. Sci."}
+
+MACRO {jhep} {"J. High Energy Phys."}
+MACRO {jcap} {"J. Cosmol. Astropart. Phys."}
+MACRO {jinst} {"J. Instrum."}
+MACRO {jstat} {"J. Stat. Mech.: Theory Exp."}
+
+FUNCTION {bibinfo.command} { "\bibinfo " }
+
+FUNCTION {bibinfo.check}
+{ swap$
+  duplicate$ missing$
+    {
+      pop$
+      pop$ ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ pop$
+        }{
+          swap$
+          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {bibinfo.warn}
+{ swap$
+  duplicate$ missing$
+    {
+      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
+      ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ "empty " swap$ * " in " * cite$ * warning$
+        }{
+          swap$
+          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {archiv.base}
+{
+  "https://arxiv.org/abs"
+}
+
+FUNCTION {archiv.prefix.base}
+{
+  "arXiv"
+}
+
+FUNCTION {eprint.command}
+{
+  "\Eprint "
+}
+
+FUNCTION {format.eprint.controlled}
+{
+  eprint duplicate$ empty$
+  control.eprint #1 =
+  or
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.eprint}
+{
+  eprint duplicate$ empty$
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.translation}
+{ translation duplicate$ empty$
+    'skip$
+    { ""
+      "\translation{" * swap$ * "}" *
+      punctuation.space 'punctuation.state :=
+    }
+  if$
+}
+
+FUNCTION {format.url}
+{
+  url duplicate$ empty$
+    { pop$ "" }
+    {
+      "\url "
+      "{" * swap$ * "}" *
+    }
+  if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+FUNCTION {check.speaker}
+{ key empty$ 'skip$
+  { key nameptr int.to.str$ =
+    {
+      bolden
+    }
+      'skip$
+    if$
+  }
+  if$
+}
+
+
+STRINGS  { bibinfo}
+
+FUNCTION {format.names.fname}
+{
+  control.author.initials {
+    control.author.dotless {
+      control.author.nospace {
+        "f{}"
+      } {
+        "f{~}"
+      } if$
+    } {
+      control.author.nospace {
+        "f{.}."
+      } {
+        "f."
+      } if$
+    } if$
+  } {
+    "ff"
+  } if$
+}
+
+FUNCTION {bracify}
+{
+  "{" swap$ * "}" *
+}
+
+FUNCTION {name.comma}
+{
+  control.author.nocomma 'skip$ { "," swap$ * } if$
+}
+
+FUNCTION {format.names.format.onefont}
+{
+  "{vv~}{ll}"
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+    {
+      control.author.initials {
+        "f"
+        control.author.dotless 'skip$ {
+          "." *
+        } if$
+        "~" *
+      } {
+        "ff"
+      } if$
+      bracify
+      swap$
+    } {
+      format.names.fname
+      " " swap$ *
+      name.comma
+      bracify
+    }
+  if$
+  "jj"
+  " " swap$ *
+  name.comma
+  bracify
+  control.author.jnrlst 'skip$ 'swap$ if$
+  * *
+}
+
+FUNCTION {format.names.onefont}
+{
+  s nameptr format.names.format.onefont format.name$
+  remove.dots
+  bib.name.font
+}
+
+FUNCTION {format.names.morfont}
+{ s nameptr
+  "{vv~}{ll}" format.name$ bib.name.font
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+  {
+    s nameptr
+    control.author.initials {
+      "f"                        % default: name + surname + comma junior
+    } {
+      "ff"
+    } if$
+    control.author.dotless 'skip$ {
+      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
+    } if$
+    bracify
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    swap$
+    *
+    s nameptr
+    "{jj}" format.name$ duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } {
+    "," *
+    s nameptr
+    format.names.fname
+    "jj"
+    " "
+    name.comma
+    control.author.jnrlst {
+      swap$ * skip$
+    } {
+      skip$ * swap$
+    } if$
+    bracify swap$ bracify swap$
+    *
+    format.name$
+    remove.dots
+    duplicate$ empty$ 'skip$
+      { bib.fname.font " " swap$ * }
+      if$
+  } if$
+  *
+}
+
+FUNCTION {names.punctuate}
+{
+  "," *
+  " " *
+}
+
+FUNCTION {format.names}
+{ 'bibinfo :=
+  duplicate$ empty$ { pop$ "" } {
+    duplicate$ num.names$
+    duplicate$ 'numnames :=
+    'namesleft :=
+    's :=
+    #1 'nameptr :=
+    ""
+      { namesleft #0 > }
+      {
+      format.names.morfont
+        bibinfo bibinfo.check
+        type$ "presentation" =
+          'check.speaker
+          'skip$
+        if$
+        't :=
+        nameptr #1 > not
+          {
+            t *
+          } {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              } {
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " *
+                    bbl.etal
+                    emphasize
+                    *
+                  } {
+                    bbl.and
+                    word.space * *
+                    t *
+                  }
+                if$
+              }
+            if$
+          }
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+  } if$
+}
+
+FUNCTION {format.names.ed.onefont}
+{
+    s nameptr
+    control.author.initials {
+      control.author.dotless {
+        control.author.nospace {
+          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
+        } {
+          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
+        } if$
+      } {
+        control.author.nospace {
+          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
+        }{
+          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
+        } if$
+      } if$
+    } {
+      "{ff~}{vv~}{ll}{, jj}"
+    } if$
+    format.name$
+    remove.dots
+    bib.name.font
+}
+
+FUNCTION {format.names.ed.morfont}
+{
+  control.author.reversed { %
+    control.author.initials { %
+      control.author.dotless { %
+        s nameptr
+        control.author.nospace { % nm-rvx nm-rvcx
+          "{f{}}"
+        } { % nm-rv
+          "{f{~}}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        remove.dots
+        duplicate$ empty$ 'skip$
+          { bib.fname.font " " swap$ * }
+        if$
+      } { % !control.author.dotless
+        s nameptr
+        control.author.nospace { % nm-rvv
+          "{ff}"
+        } { % nm-rev nm-rev1
+          "{f.}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        duplicate$ empty$ 'skip$
+          { bib.fname.font ", " swap$ * }
+        if$
+      } if$
+    } { % Full names !control.author.initials  nm-revf nm-revv1
+      s nameptr
+      "{ff}"
+      format.name$ duplicate$ empty$ 'skip$
+        { tie.or.space.prefix bib.fname.font swap$ * }
+      if$
+      s nameptr
+      "{vv~}{ll}" format.name$ bib.name.font *
+      s nameptr
+      "{jj}" format.name$
+      duplicate$ empty$ 'skip$
+        { bib.fname.font ", " swap$ * }
+      if$
+    } if$
+  } { % !control.author.reversed nm-init
+    s nameptr
+    "{f.}"
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    s nameptr
+    "{vv~}{ll}" format.name$ bib.name.font *
+    s nameptr
+    "{jj}" format.name$
+    duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } if$
+  *
+}
+
+FUNCTION {format.names.ed}
+{
+  control.editor #0 > {
+    format.names
+  } {
+    'bibinfo :=
+    duplicate$ empty$ 'skip$ {
+    's :=
+    "" 't :=
+    #1 'nameptr :=
+    s num.names$ 'numnames :=
+    numnames 'namesleft :=
+      { namesleft #0 > }
+      {
+       format.names.ed.morfont
+        bibinfo bibinfo.check
+        't :=
+        nameptr #1 >
+          {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              }{
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " * bbl.etal emphasize *
+                  }{
+                   bbl.and
+                    space.word * t *
+                  }
+                if$
+              }
+            if$
+          }
+          't
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+    } if$
+  } if$
+}
+
+FUNCTION {format.key}
+{ empty$
+    { key field.or.null }
+    { "" }
+  if$
+}
+
+FUNCTION {format.authors}
+{ author "author" format.names
+  duplicate$ empty$ 'skip$
+    { collaboration "collaboration" bibinfo.check
+      duplicate$ empty$ 'skip$
+        { " (" swap$ * ")" * }
+      if$
+      *
+    }
+  if$
+  "author" 'bibfield :=
+}
+
+FUNCTION {get.bbl.editor}
+{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
+}
+
+FUNCTION {format.editors}
+{ editor "editor" format.names duplicate$ empty$ 'skip$
+    {
+      "," *
+      word.space *
+      get.bbl.editor
+      *
+    }
+  if$
+}
+
+FUNCTION {format.isbn.output}
+{
+}
+
+FUNCTION {format.issn.output}
+{ 
+}
+
+FUNCTION {doi.base}
+{
+  "https://doi.org/"
+}
+
+FUNCTION {doi.base.command}
+{
+  "\doibase "
+}
+
+FUNCTION {noop.command}
+{
+  "\href at noop "
+}
+
+FUNCTION {href.command}
+{
+  "\href "
+}
+
+FUNCTION {link.tag.open}
+{
+  doi duplicate$ empty$
+    {
+      pop$
+      url duplicate$ empty$
+        {
+          pop$ "" noop.command
+        }{
+          href.command
+        }
+      if$
+    }
+    {
+      "https://doi.org/" swap$ * 
+      href.command
+    }
+  if$
+  "{" * swap$ * "} {" *
+}
+
+FUNCTION {link.tag.shut}
+{
+  "}"
+}
+
+FUNCTION {link.open}
+{
+  link.tag.open output.nopunct
+}
+
+FUNCTION {link.shut}
+{
+  link.tag.shut *
+}
+
+FUNCTION {add.doi}
+{
+  link.tag.open swap$ * link.tag.shut *
+}
+
+FUNCTION {select.language}
+{ duplicate$ empty$
+    'pop$
+    { language empty$
+        'skip$
+        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
+      if$
+    }
+    if$
+}
+
+FUNCTION {format.note}
+{
+ note empty$
+    { "" }
+    { note #1 #1 substring$
+      duplicate$ "{" =
+        'skip$
+        {
+          output.state after.word = output.state after.punctuation = or
+            { "l" }
+            { "u" }
+          if$ change.case$
+        }
+      if$
+      note #2 global.max$ substring$ * "note" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {bbl.enquote}
+{
+  "\enquote "
+}
+
+FUNCTION {string.enquote}
+{
+  punctuation.no 'punctuation.state :=
+  non.stop {
+    block.punctuation
+  } { "" } if$
+   swap$ pop$
+  *
+  bbl.enquote "{" * swap$ * "}" *
+  word.space *
+}
+
+FUNCTION {format.title}
+{ title
+  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
+  duplicate$ "title" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      string.enquote
+      select.language
+    }
+  if$
+}
+
+FUNCTION {end.quote.title}
+{ title empty$
+    'skip$
+    { before.all 'output.state := }
+  if$
+}
+
+FUNCTION {format.name.apply}
+{
+  s nameptr
+  "{vv~}{ll}"
+  format.name$
+  cite.name.font
+}
+
+FUNCTION {format.full.names}
+{
+  's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                {
+                  't :=
+                }
+                'pop$
+              if$
+              t "others" =
+                {
+                  " " * bbl.etal
+                  emphasize *
+                }{
+                  numnames #2 > { "," * }{ skip$ } if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {make.full.names}
+{
+  key editor author
+  type$ "proceedings" =
+  type$ "book"        =
+  type$ "inbook"      =
+  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
+  duplicate$ empty$
+    { pop$
+      duplicate$ empty$
+        { pop$
+          duplicate$ empty$
+            { pop$
+              cite$ #1 #3 substring$
+            }{
+              skip$
+            }
+          if$
+        }
+        { swap$ pop$ format.full.names }
+      if$
+    }
+    { swap$ pop$ swap$ pop$ format.full.names }
+  if$
+}
+
+FUNCTION {year.bibitem}
+{
+  year duplicate$ empty$
+  { pop$ ""
+  }{
+    skip$
+  } if$
+  extra.label *
+}
+
+FUNCTION {output.bibitem}
+{
+  newline$
+  ""
+  label
+  * ")" *
+   make.full.names duplicate$ short.list =
+   { pop$ }{ * } if$
+   bracify
+  "[" swap$ * "]" *
+  cite$ bracify "%" *
+  *
+  "\bibitem "
+  swap$ *
+  write$ newline$
+  "  "
+  duplicate$ bbl.open * write$ newline$
+  before.all 'output.state :=
+  punctuation.yes 'punctuation.state :=
+}
+
+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 {word.in}
+{
+  bbl.in
+  word.space *
+}
+
+FUNCTION {date.encapsulate}
+{
+  duplicate$ empty$
+    'skip$
+    {
+      before.all 'output.state :=
+      " (" swap$ * ")" *
+    }
+  if$
+}
+
+FUNCTION {format.date}
+{
+  year "year" bibinfo.check duplicate$ empty$
+    {
+    }
+    'skip$
+  if$
+  extra.label *
+  date.encapsulate
+}
+
+FUNCTION {format.date.output.check}
+{
+ format.date
+ "year" output.check
+}
+
+FUNCTION {format.date.output}
+{
+  format.date.output.check
+}
+
+FUNCTION {format.btitle}
+{
+  booktitle duplicate$ empty$ { pop$
+      title
+  } 'skip$ if$
+  "title" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {either.or.check}
+{ empty$
+    'pop$
+    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+  if$
+}
+
+FUNCTION {editor.check.book}
+{ editor empty$ 'skip$
+    {
+      "can't use both author and editor fields in " cite$ *
+      ": try using @inbook instead" *
+      warning$
+    }
+  if$
+}
+
+FUNCTION {format.bvolume}
+{ volume duplicate$ empty$
+    { pop$ "" }
+    {
+      "volume and number" number either.or.check
+      bbl.volume
+      capitalize
+      swap$
+      tie.or.space.prefix "volume" bibinfo.check * *
+      series "series" bibinfo.check duplicate$ empty$ 'pop$
+        {
+          ", "
+          * swap$ *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.number}
+{
+  bbl.number
+  output.state after.word = output.state after.punctuation = or
+  #1 or
+  #0 and
+    'skip$
+    { capitalize }
+  if$
+  number tie.or.space.prefix "number" bibinfo.check * *
+}
+
+FUNCTION {format.number.series}
+{ volume empty$
+    { number empty$
+        { series field.or.null }
+        {
+          series empty$
+            {
+              number "number" bibinfo.check
+            }{
+              format.number
+              series "series" bibinfo.check
+              word.space * swap$ *
+            }
+          if$
+        }
+      if$
+    }
+    { "" }
+  if$
+}
+
+FUNCTION {is.num}
+{ chr.to.int$
+  duplicate$ "0" chr.to.int$ < not
+  swap$ "9" chr.to.int$ > not and
+}
+
+FUNCTION {extract.num}
+{ duplicate$ 't :=
+  "" 's :=
+  { t empty$ not }
+  { t #1 #1 substring$
+    t #2 global.max$ substring$ 't :=
+    duplicate$ is.num
+      { s swap$ * 's := }
+      { pop$ "" 't := }
+    if$
+  }
+  while$
+  s empty$
+    'skip$
+    { pop$ s }
+  if$
+}
+
+FUNCTION {convert.edition}
+{ extract.num "l" change.case$ 's :=
+  s "first" = s "1" = or
+    { bbl.first 't := }
+    { s "second" = s "2" = or
+        { bbl.second 't := }
+        { s "third" = s "3" = or
+            { bbl.third 't := }
+            { s "fourth" = s "4" = or
+                { bbl.fourth 't := }
+                { s "fifth" = s "5" = or
+                    { bbl.fifth 't := }
+                    { s #1 #1 substring$ is.num
+                        { s
+                            eng.ord
+                        't := }
+                        { edition 't := }
+                      if$
+                    }
+                  if$
+                }
+              if$
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  t
+}
+
+FUNCTION {format.edition}
+{ edition duplicate$ empty$ 'skip$
+    {
+      convert.edition
+      output.state after.word = output.state after.punctuation = or
+        { "l" }
+        { "t" }
+      if$ change.case$
+      "edition" bibinfo.check
+      word.space * bbl.edition *
+    }
+  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 duplicate$ empty$
+    'skip$
+    { duplicate$ multi.page.check
+        {
+          bbl.pages swap$
+          n.dashify
+        }{
+          bbl.page swap$
+        }
+      if$
+      tie.or.space.prefix
+      "pages" bibinfo.check
+      * *
+    }
+  if$
+}
+
+FUNCTION {first.page}
+{ 't :=
+  ""
+    {  t empty$ not t #1 #1 substring$ "-" = not and }
+    { t #1 #1 substring$ *
+      t #2 global.max$ substring$ 't :=
+    }
+  while$
+}
+
+FUNCTION {format.book.pages}
+{
+  pages duplicate$ empty$ 'skip$
+    {
+      "pages" bibinfo.check word.space bbl.pages * *
+    }
+  if$
+}
+
+FUNCTION {volnum.punct}
+{
+          ","
+  word.space *
+}
+
+FUNCTION {format.journal.pages}
+{ pages duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$
+        { pop$ pop$ format.pages }
+        { volnum.punct *
+          swap$
+          control.pages duplicate$ #0 < {
+            pop$ pop$
+          }{
+            #0 >
+            {
+              n.dashify
+            }{
+              first.page
+            } if$
+          } if$
+          "pages" bibinfo.check
+          *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.journal.eid}
+{ eid "eid" bibinfo.check
+  duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$ 'skip$
+        { volnum.punct * }
+      if$
+      swap$ *
+    }
+  if$
+}
+
+FUNCTION {eid.or.pages}
+{
+  eid empty$
+    { format.journal.pages }
+    { format.journal.eid }
+  if$
+}
+
+FUNCTION {format.ser.vol.num}
+{
+  series "series" bibinfo.check output
+  volume field.or.null
+  duplicate$ empty$ 'skip$
+    {
+      "volume" bibinfo.check
+    }
+  if$
+  bolden
+}
+
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+    {
+    format.pages
+    }
+    { type empty$
+        {
+          bbl.chapter
+          capitalize
+        }{
+          type
+          capitalize
+          "type" bibinfo.check
+        }
+      if$
+      chapter tie.or.space.prefix
+      "chapter" bibinfo.check
+      * *
+      pages empty$
+        'skip$
+        { ", " * format.pages * }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.booktitle}
+{
+  booktitle duplicate$ "booktitle" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      pop$ emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {format.editor.in}
+{
+  editor "editor" format.names.ed duplicate$ empty$ 'skip$
+    {
+      bbl.edby
+      word.space * swap$ *
+    }
+  if$
+}
+
+FUNCTION {output.article.booktitle}
+{
+  format.booktitle
+      "booktitle" 'bibfield :=
+  output
+  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
+    {
+      "address" 'bibfield :=
+      output.nonnull after.punctuation 'output.state :=
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      format.editor.in "editor" bibinfo.check output
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle.inbook}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      author empty$ 'skip$
+        { format.editor.in "editor" bibinfo.check output }
+    if$
+    }
+  if$
+}
+
+FUNCTION {format.thesis.type}
+{ type duplicate$ empty$
+    'pop$
+    { swap$ pop$
+      "t" change.case$ "type" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {format.tr.number}
+{ number "number" bibinfo.check
+  type duplicate$ empty$
+    { pop$ bbl.techrep }
+    'skip$
+  if$
+  "type" bibinfo.check
+  swap$ duplicate$ empty$
+    { pop$ "t" change.case$ }
+    { tie.or.space.prefix * * }
+  if$
+}
+
+FUNCTION {format.article.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.book.crossref}
+{ volume duplicate$ empty$
+    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+      pop$ word.in
+    }
+    { bbl.volume
+      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
+    }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.org.or.pub}
+{ 't :=
+  ""
+  address "address" bibinfo.check
+  duplicate$ empty$
+    { pop$ t }
+    { t duplicate$ empty$
+        { pop$ }
+        {
+          "," word.space *
+          * swap$ *
+        }
+      if$
+    }
+  if$
+  *
+  year duplicate$ empty$
+    {
+      "empty year in " cite$ *
+      warning$
+      pop$ ""
+    }
+    'skip$
+  if$
+  duplicate$ empty$
+    { pop$ }
+    {
+      "year" bibinfo.check
+      swap$
+      duplicate$ empty$
+        { pop$ }
+        {
+          "," *
+          word.space *
+          swap$ *
+        }
+      if$
+    }
+  if$
+  duplicate$ empty$ 'skip$ {
+    ""
+    "(" * swap$ * ")" *
+    after.punctuation 'output.state :=
+    punctuation.space 'punctuation.state :=
+  } if$
+}
+
+FUNCTION {format.publisher.address}
+{ publisher "publisher" bibinfo.warn format.org.or.pub
+}
+
+FUNCTION {format.organization.address}
+{ organization "organization" bibinfo.check format.org.or.pub
+}
+
+FUNCTION {format.organization.publisher.address}
+{
+  publisher empty$
+    { format.organization.address }
+    { organization "organization" bibinfo.check output
+      format.publisher.address
+    }
+  if$
+}
+
+FUNCTION {format.school.address.output}
+{
+  school  "school"  bibinfo.warn
+  address "address" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      swap$
+      duplicate$ empty$ 'skip$
+        {
+          ", " *
+        }
+      if$
+      swap$
+    }
+  if$
+  *
+  output
+}
+
+FUNCTION {article.title.produce}
+{
+  control.title duplicate$ #0 <
+  { pop$
+  }{
+    format.title
+    "title" 'bibfield :=
+    swap$ #0 >
+    {
+      "title" output.check
+    }{
+      output
+    } if$
+    new.block.comma
+  } if$
+}
+
+FUNCTION {control}
+{
+}
+
+FUNCTION {article}
+{ output.bibitem
+  format.authors
+  booktitle empty$ {
+      "author" output.check
+    }{ output } if$
+  author format.key output
+  new.block.comma
+  article.title.produce
+  output.article.booktitle
+  crossref missing$
+    {
+      link.open
+      journal
+      "journal" bibinfo.warn
+      "journal" 'bibfield :=
+      output
+      add.blank
+      format.ser.vol.num
+      output
+      eid.or.pages
+      format.date.output.check
+      pages empty$ {
+      doi output
+      } 'skip$ if$
+      link.shut
+    }{
+      format.article.crossref output.nonnull
+      format.pages output
+    }
+  if$
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint.controlled output
+  format.translation output
+  fin.entry
+}
+
+FUNCTION {book}
+{ output.bibitem
+  author empty$
+    {
+      format.editors "author and editor" output.check
+      editor format.key output
+    }{
+      format.authors output.nonnull
+%     crossref missing$ { editor.check.book } 'skip$ if$
+    }
+  if$
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+  format.edition output
+  author empty$
+    {
+    }
+    {
+      format.editor.in output
+      editor format.key output
+    }
+  if$
+  format.number.series output
+  crossref missing$
+    {
+      format.bvolume output
+      new.block.comma
+      format.publisher.address output
+    }{
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  format.isbn.output
+  format.chapter.pages
+  output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {booklet}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  address "address" bibinfo.check output
+  format.date.output
+  format.isbn.output
+  format.book.pages output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {footnote}
+{ output.bibitem
+  format.note output
+  fin.entry
+}
+
+FUNCTION {inbook}
+{ output.bibitem
+  author empty$
+    {
+       format.editors "editor" output.check
+       editor format.key output
+    }{
+       format.authors output.nonnull
+       author format.key output
+    }
+  if$
+  new.block.comma
+
+  format.title output
+  new.block.comma
+
+  crossref missing$
+    {
+      format.in.ed.booktitle.inbook
+      format.publisher.address output
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.edition output
+      new.block.comma
+    }{
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  crossref missing$
+    { format.isbn.output }
+    'skip$
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {incollection}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.publisher.address output
+      format.edition output
+      format.chapter.pages output
+      format.isbn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {inproceedings}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.organization.publisher.address output
+      format.chapter.pages output
+      format.isbn.output
+      format.issn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {conference} { inproceedings }
+FUNCTION {manual}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      organization "organization" bibinfo.check output
+      address "address" bibinfo.check output
+  format.edition output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {mastersthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.mthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {misc}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {phdthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.phdthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {presentation}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  format.organization.address "organization and address" output.check
+  month "month" output.check
+  year "year" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  new.sentence
+  type missing$ 'skip$
+    {"(" type capitalize * ")" * output}
+  if$
+  fin.entry
+}
+
+FUNCTION {proceedings}
+{ output.bibitem
+  format.editors output
+  editor format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      bookaddress "address" bibinfo.check output
+  format.number.series output
+  format.bvolume output
+  format.organization.publisher.address output
+  format.isbn.output
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {techreport}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  format.tr.number
+  output.nonnull
+  institution "institution" bibinfo.warn
+  format.org.or.pub output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {unpublished}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note "note" output.check
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {dataset}
+{ 
+  output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  article.title.produce
+  doi missing$
+  url missing$ not and
+  {
+    link.open
+    url "url" output.check
+    link.shut
+  }
+  {
+    link.open
+    doi "doi" output.check
+    link.shut
+  } if$
+  format.date.output
+  format.note output
+  fin.entry
+}
+
+FUNCTION {default.type} { misc }
+
+READ
+
+EXECUTE {control.init}
+
+ITERATE {control.pass}
+
+EXECUTE {control.check}
+
+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 {cite.name.font.apply}
+{
+  word.space * bbl.etal
+  emphasize
+  *
+}
+
+FUNCTION {format.lab.names}
+{ 's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { 
+      format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          nameptr
+          #2
+          =
+          numnames
+          #3
+          > and
+            { 
+              "others" 't :=
+              #1 'namesleft := 
+            }
+            'skip$
+          if$
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                { 't := }
+                { pop$ }
+              if$
+              t "others" =
+                {
+                  cite.name.font.apply
+                }{
+                  numnames #2 > { "," * } 'skip$ if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {author.key.label}
+{ author empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {author.editor.key.label}
+{ author empty$
+    { editor empty$
+        { key empty$
+            { cite$ #1 #3 substring$ }
+            'key
+          if$
+        }
+        { editor format.lab.names }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {editor.key.label}
+{ editor empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { editor format.lab.names }
+  if$
+}
+
+FUNCTION {calc.short.authors}
+{ type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.key.label
+    { type$ "proceedings" =
+        'editor.key.label
+        'author.key.label
+      if$
+    }
+  if$
+  'short.list :=
+}
+
+FUNCTION {calc.label}
+{
+  calc.short.authors
+  short.list
+  year duplicate$ empty$
+    {
+      pop$ ""
+    }{
+      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
+    }
+  if$
+  "(" swap$ *
+  * 'label :=
+}
+
+FUNCTION {sort.format.names}
+{ 's :=
+  #1 'nameptr :=
+  ""
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { s nameptr
+      "{ll{ }}"
+      control.author.initials {
+        "{  f{ }}"  *
+      }{
+        "{  ff{ }}" *
+      } if$
+      "{  jj{ }}" *
+      format.name$ 't :=
+      nameptr #1 >
+        {
+          "   "  *
+          namesleft #1 = t "others" = and
+            { "zzzzz" * }
+            {
+              t sortify *
+            }
+          if$
+        }
+        { 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 {author.editor.sort}
+{ author empty$
+    { 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 {year.sort.key}
+{
+  year
+}
+
+FUNCTION {editor.sort}
+{ editor empty$
+    { key empty$
+        { "to sort, need editor or key in " cite$ * warning$
+          ""
+        }
+        { key sortify }
+      if$
+    }
+    { editor sort.format.names }
+  if$
+}
+
+INTEGERS { seq.num }
+
+FUNCTION {init.seq}
+{ #0 'seq.num :=}
+
+EXECUTE {init.seq}
+
+FUNCTION {int.to.fix}
+{ "000000000" swap$ int.to.str$ *
+  #-1 #10 substring$
+}
+
+FUNCTION {label.presort}
+{
+  calc.label
+  label sortify
+  "    "
+  *
+  seq.num #1 + 'seq.num :=
+  seq.num  int.to.fix
+  'sort.label :=
+  sort.label
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {presort.pass}
+{ type$ "control" = 'control.presort 'label.presort if$
+}
+
+ITERATE {presort.pass}
+
+SORT
+
+STRINGS { last.label next.extra }
+
+INTEGERS { last.extra.num number.label }
+
+FUNCTION {initialize.extra.label.stuff}
+{ #0 int.to.chr$ 'last.label :=
+  "" 'next.extra :=
+  #0 'last.extra.num :=
+  #0 'number.label :=
+}
+
+FUNCTION {label.forward}
+{
+  last.label label =
+    { last.extra.num #1 + 'last.extra.num :=
+      last.extra.num int.to.chr$ 'extra.label :=
+    }
+    { "a" chr.to.int$ 'last.extra.num :=
+      "" 'extra.label :=
+      label 'last.label :=
+    }
+  if$
+  number.label #1 + 'number.label :=
+}
+
+FUNCTION {label.reverse}
+{ next.extra "b" =
+    { "a" 'extra.label := }
+    'skip$
+  if$
+  extra.label 'next.extra :=
+  extra.label
+  duplicate$ empty$
+    'skip$
+    { "{\natexlab{" swap$ * "}}" * }
+  if$
+  'extra.label :=
+  label extra.label * 'label :=
+}
+
+EXECUTE {initialize.extra.label.stuff}
+
+FUNCTION {forward.pass}
+{ type$ "control" = 'control.forward 'label.forward if$
+}
+
+ITERATE {forward.pass}
+
+FUNCTION {reverse.pass}
+{ type$ "control" = 'control.reverse 'label.reverse if$
+}
+
+REVERSE {reverse.pass}
+
+FUNCTION {sortkey.sort}
+{ sort.label
+  "    "
+  *
+  year.sort.key
+  field.or.null sortify
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {bib.sort.pass}
+{ type$ "control" = 'control.sort 'sortkey.sort if$
+}
+
+ITERATE {bib.sort.pass}
+
+SORT
+
+FUNCTION {init.bib.eprint}
+{
+    "\texttt {"
+  pop$
+  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
+  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
+  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
+  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
+}
+
+FUNCTION {init.bib.doi}
+{
+  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
+}
+
+FUNCTION {init.bib.hypertex}
+{
+  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
+  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
+  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
+  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
+  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
+  "\providecommand \@@startlink[1]{}%" write$ newline$
+  "\providecommand \@@endlink[0]{}%"   write$ newline$
+}
+
+FUNCTION {init.bib.namefont}
+{
+  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
+  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
+  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
+}
+
+FUNCTION {init.bib.quote}
+{
+  "\providecommand " bbl.enquote * " [1]{" *
+  "``" "''"
+  "#1" swap$ "}%" * * * * write$ newline$
+}
+
+FUNCTION {init.bib.ay}
+{
+  "\providecommand \natexlab [1]{#1}%"
+  write$ newline$
+}
+
+FUNCTION {init.bib.bibinfo}
+{
+  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+}
+
+FUNCTION {init.bib.lang}
+{
+  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
+}
+
+FUNCTION {init.bib.endbibitem}
+{
+  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
+  "\providecommand \bibitemStop [0]{}%"               write$ newline$
+  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
+  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
+}
+
+FUNCTION {init.bib.translation}
+{
+  "\providecommand \translation [1]{[#1]}%" write$ newline$
+}
+
+FUNCTION {warn.bib}
+{
+}
+
+FUNCTION {init.bib}
+{
+  warn.bib
+  "\makeatletter" write$ newline$
+  "\providecommand \@ifxundefined [1]{%"   write$ newline$
+  " \@ifx{#1\undefined}"                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifnum [1]{%"          write$ newline$
+  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifx [1]{%"            write$ newline$
+  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  init.bib.ay
+  init.bib.quote
+  init.bib.namefont
+  init.bib.hypertex
+  init.bib.eprint
+  init.bib.doi
+  init.bib.lang
+  init.bib.bibinfo
+  init.bib.translation
+  init.bib.endbibitem
+  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
+  "\let\auto at bib@innerbib\@empty"          write$ newline$
+  "%</preamble>" write$
+}
+
+FUNCTION {begin.bib}
+{
+  id.bst diagn.cmntlog
+  control.bib
+  preamble$ empty$
+    'skip$
+    { preamble$ write$ newline$ }
+  if$
+  "\begin{thebibliography}{"
+  number.label int.to.str$
+  * "}%" *
+  write$ newline$
+  init.bib
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+  "\end{thebibliography}%"
+  write$ newline$
+}
+
+EXECUTE {end.bib}
+
+%% End of customized bst file
+%%
+%% End of file `aapmrev4-2.bst'.


Property changes on: trunk/Master/texmf-dist/bibtex/bst/revtex/aapmrev4-2.bst
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-1.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-1.bst	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-1.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,3487 +0,0 @@
-%%
-%% This is file `aipauth4-1.bst',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% merlin.mbs  (with options: `head,ay,nat,lang,pres,pres-bf,vonx,nm-rev,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% physjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,vonx,nm-rev,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% geojour.mbs  (with options: `ay,nat,lang,pres,pres-bf,vonx,nm-rev,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% photjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,vonx,nm-rev,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% merlin.mbs  (with options: `tail,ay,nat,lang,pres,pres-bf,vonx,nm-rev,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% ----------------------------------------
-%% *** REVTeX-compatible aipauth4-1.bst 2010-07-25 ***
-%% 
-%% Copyright 1994-2007 Patrick W Daly
- % ===============================================================
- % IMPORTANT NOTICE:
- % This bibliographic style (bst) file has been generated from one or
- % more master bibliographic style (mbs) files, listed above.
- %
- % This generated file can be redistributed and/or modified under the terms
- % of the LaTeX Project Public License Distributed from CTAN
- % archives in directory macros/latex/base/lppl.txt; either
- % version 1 of the License, or any later version.
- % ===============================================================
- % Name and version information of the main mbs file:
- %   For use with BibTeX version 0.99a or later
- %-------------------------------------------------------------------
- % This bibliography style file is intended for texts in ENGLISH
- % This is an author-year citation style bibliography. As such, it is
- % non-standard LaTeX, and requires a special package file to function properly.
- % Such a package is    natbib.sty   by Patrick W. Daly
- % The form of the \bibitem entries is
- %   \bibitem[Jones et al.(1990)]{key}...
- %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
- % The essential feature is that the label (the part in brackets) consists
- % of the author names, as they should appear in the citation, with the year
- % in parentheses following. There must be no space before the opening
- % parenthesis!
- % With natbib v5.3, a full list of authors may also follow the year.
- % In natbib.sty, it is possible to define the type of enclosures that is
- % really wanted (brackets or parentheses), but in either case, there must
- % be parentheses in the label.
- % The \cite command functions as follows:
- %   \citet{key} ==>>                Jones et al. (1990)
- %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
- %   \citep{key} ==>>                (Jones et al., 1990)
- %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
- %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
- %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
- %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
- %   \citeauthor{key} ==>>           Jones et al.
- %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
- %   \citeyear{key} ==>>             1990
- %---------------------------------------------------------------------
-
-FUNCTION {id.bst} {"merlin.mbs aipauth4-1.bst 2010-07-25 4.21a (PWD, AO, DPC) hacked"}
-ENTRY
-{
-    address
-    archive
-    archivePrefix
-    author
-    bookaddress
-    booktitle
-    chapter
-    collaboration
-    doi
-    edition
-    editor
-    eid
-    eprint
-    howpublished
-    institution
-    isbn
-    issn
-    journal
-    key
-    language
-    month
-    note
-    number
-    organization
-    pages
-    primaryClass
-    publisher
-    school
-    SLACcitation
-    series
-    title
-    translation
-    type
-    url
-    volume
-    year
-}{
-}{
-    label
-    extra.label sort.label
-    short.list
-}
-
-INTEGERS
-{
-  output.state before.all
-  after.word after.punctuation
-  after.sentence after.block
-}
-
-INTEGERS
-{
-  punctuation.state punctuation.no punctuation.space punctuation.yes
-}
-
-STRINGS { bibfield output.bibfield }
-
-FUNCTION {not}
-{   { #0 }
-    { #1 }
-  if$
-}
-
-FUNCTION {and}
-{   'skip$
-    { pop$ #0 }
-  if$
-}
-
-FUNCTION {or}
-{   { pop$ #1 }
-    'skip$
-  if$
-}
-
-FUNCTION {non.stop}
-{ duplicate$
-   "}" * add.period$
-   #-1 #1 substring$ "." =
-}
-
-INTEGERS { arith.mulitplier arith.multiplicand }
-
-FUNCTION {multiply}
-{
-  'arith.multiplicand :=
-  'arith.mulitplier :=
-  #0
-    { arith.mulitplier #0 > }
-    { arith.multiplicand +
-      arith.mulitplier #1 - 'arith.mulitplier :=
-    }
-  while$
-}
-
-FUNCTION {chr.to.hex}
-{
-  chr.to.int$
-  duplicate$ "0" chr.to.int$ -
-  duplicate$ duplicate$ #0 < swap$ #9 > or not
-    { swap$ pop$ }
-    { pop$
-      duplicate$ "A" chr.to.int$ -
-      duplicate$ duplicate$ #0 < swap$ #5 > or not
-        { swap$ pop$ #10 + }
-        { pop$
-          duplicate$ "a" chr.to.int$ -
-          duplicate$ duplicate$ #0 < swap$ #5 > or not
-            { swap$ pop$ #10 + }
-            { pop$
-              pop$ #-1
-            }
-          if$
-        }
-      if$
-    }
-  if$
-}
-
-INTEGERS { arith.accumulator }
-
-FUNCTION {str.to.hex}
-{ #0 'arith.accumulator :=
-    { duplicate$ empty$ not }
-    { duplicate$ #1 #1 substring$ chr.to.hex
-      duplicate$ #0 <
-        { pop$ pop$ ""
-        }
-        { arith.accumulator #16 multiply + 'arith.accumulator :=
-          #2 global.max$ substring$
-        }
-      if$
-    }
-  while$
-  pop$ arith.accumulator
-}
-
-FUNCTION {diagn.cmntlog}
-{
-  duplicate$ top$ "%" swap$ * write$ newline$
-}
-
-INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
-
-INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
-
-FUNCTION { control.init }
-{
-  #0
-  'control.key             :=
-  #0
-  #1 +
-  #8 +
-  'control.author :=
-  #0
-  'control.author.jnrlst   :=
-  #0
-  'control.author.dotless  :=
-  #0
-  'control.author.nospace  :=
-  #1
-  'control.author.initials :=
-  #0
-  'control.author.nocomma  :=
-  #0
-  'control.author.first    :=
-  #1
-  'control.author.reversed :=
-  #0
-  'control.editor :=
-  #-1
-  'control.title  :=
-  #0
-  'control.pages  :=
-  #0
-  'control.eprint :=
-  #1
-  'control.year   :=
-}
-
-FUNCTION {warning.dependency}
-{
-  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
-}
-
-FUNCTION {control.check}
-{
-  control.editor
-    {
-      "editor formatted same as author"
-      control.author.reversed {
-        duplicate$ #0 swap$ "reversed" warning.dependency
-        #0 'control.author.reversed :=
-      } 'skip$ if$
-      control.author.first {
-        duplicate$ #0 swap$ "first" warning.dependency
-        #0 'control.author.first :=
-      } 'skip$ if$
-      control.author.nocomma {
-        duplicate$ #0 swap$ "nocomma" warning.dependency
-        #0 'control.author.nocomma :=
-      } 'skip$ if$
-      pop$
-    } 'skip$ if$
-  control.author.reversed 'skip$
-    {
-      "not reversed"
-      control.author.nospace {
-        duplicate$ #0 swap$ "nospace" warning.dependency
-        #0 'control.author.nospace :=
-      } 'skip$ if$
-      control.author.jnrlst 'skip$ {
-        duplicate$ #1 swap$ "jnrlst" warning.dependency
-        #1 'control.author.jnrlst :=
-      } if$
-      control.author.initials {
-        duplicate$ ", initials" *
-        control.author.dotless {
-          duplicate$ #0 swap$ "dotless" warning.dependency
-          #0 'control.author.dotless :=
-        } 'skip$ if$
-        pop$
-      } 'skip$ if$
-      pop$
-    }
-  if$
-  control.author.initials 'skip$ {
-    "not initials"
-    control.author.nocomma {
-      duplicate$ #0 swap$ "nocomma" warning.dependency
-      #0 'control.author.nocomma :=
-    } 'skip$ if$
-    control.author.nospace {
-      duplicate$ #0 swap$ "nospace" warning.dependency
-      #0 'control.author.nospace :=
-    } 'skip$ if$
-    control.author.dotless 'skip$ {
-      duplicate$ #1 swap$ "dotless" warning.dependency
-      #1 'control.author.dotless :=
-    } if$
-    pop$
-  } if$
-}
-
-FUNCTION {control.parse}
-{
-  duplicate$ duplicate$ missing$
-    {
-      pop$ pop$ pop$
-    }
-    { empty$
-        {
-          pop$ #-1
-        }{
-          str.to.hex
-        }
-      if$
-      swap$ :=
-    }
-  if$
-}
-
-FUNCTION {control.dump}
-{
-  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
-  "{" swap$ * "}, " *
-  *
-}
-
-INTEGERS { decode.threshold }
-
-FUNCTION {control.decode}
-{
-  - duplicate$
-  #0 <
-    {
-      skip$ pop$ swap$ #0
-    }
-    {
-      swap$ pop$ swap$ #1
-    }
-  if$
-  swap$ :=
-}
-
-FUNCTION {control.author.decode}
-{
-  control.author
-  duplicate$ duplicate$ #0 < swap$ #128 < not or
-    {
-      int.to.str$ "(" swap$ * ")" *
-      "Control cannot interpret author " swap$ *
-      warning$
-    }{
-      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
-      'control.author.dotless  swap$ duplicate$ #32 control.decode
-      'control.author.nospace  swap$ duplicate$ #16 control.decode
-      'control.author.initials swap$ duplicate$  #8 control.decode
-      'control.author.nocomma  swap$ duplicate$  #4 control.decode
-      'control.author.first    swap$ duplicate$  #2 control.decode
-      'control.author.reversed swap$ duplicate$  #1 control.decode
-      duplicate$ #0 =
-        'skip$
-        {
-          "Control: residue of author"
-          "(" swap$ * ")" * *
-          warning$
-        }
-      if$
-      pop$
-    }
-  if$
-}
-
-FUNCTION {control.setup}
-{
-  type$ cite$ "{" swap$ * "}, " * *
-  "control.key"    key    control.dump *
-  "control.author" author control.dump *
-  "control.editor" editor control.dump *
-  "control.title"  title  control.dump *
-  "control.pages"  pages  control.dump *
-  "control.year"   year   control.dump *
-  "control.eprint" eprint control.dump *
-  top$
-  'control.key    key    control.parse
-  'control.author author control.parse
-  'control.editor editor control.parse
-  'control.title  title  control.parse
-  'control.pages  pages  control.parse
-  'control.year   year   control.parse
-  'control.eprint eprint control.parse
-  control.author.decode
-}
-
-FUNCTION {control.pass}
-{ type$ "control" = 'control.setup 'skip$ if$
-}
-
-FUNCTION {control.presort}
-{
-}
-
-FUNCTION {control.forward}
-{
-}
-
-FUNCTION {control.reverse}
-{
-}
-
-FUNCTION {control.sort}
-{
-}
-
-FUNCTION {control.longest.label}
-{
-}
-
-FUNCTION {control.key.bib}
-{
-  "Control: key "
-  control.key
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  pop$ *
-  diagn.cmntlog
-}
-
-FUNCTION {control.author.bib}
-{
-  "Control: author "
-  control.author "(" swap$ int.to.str$ * ")" * *
-  control.author.reversed { " reversed" * }{} if$
-  control.author.first    { " first"    * }{} if$
-  control.author.nocomma  { " nocomma"  * }{} if$
-  control.author.initials { " initials" * }{} if$
-  control.author.nospace  { " nospace"  * }{} if$
-  control.author.dotless  { " dotless"  * }{} if$
-  control.author.jnrlst   { " jnrlst"   * }{} if$
-  diagn.cmntlog
-}
-
-FUNCTION {control.editor.bib}
-{
-  "Control: editor formatted "
-  control.editor
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "identically to author"
-    } {
-      "differently from author"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.title.bib}
-{
-  "Control: production of article title "
-  control.title
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled"
-  } {
-    #0 > {
-      "required"
-    } {
-      "allowed"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.pages.bib}
-{
-  "Control: page "
-  control.pages
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "none"
-  } {
-    #0 > {
-      "range"
-    } {
-      "single"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.year.bib}
-{
-  "Control: year "
-  control.year
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "truncated"
-    } {
-      "verbatim"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.eprint.bib}
-{
-  "Control: production of eprint "
-  control.eprint
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  #0 < { "disabled" } { "enabled" } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.bib}
-{
-  control.key.bib
-  control.author.bib
-  control.editor.bib
-  control.title.bib
-  control.pages.bib
-  control.year.bib
-  control.eprint.bib
-}
-
-FUNCTION {init.state.consts}
-{
-  #0 'before.all        :=
-  #1 'after.word        :=
-  #2 'after.punctuation :=
-  #3 'after.sentence    :=
-  #4 'after.block       :=
-  #0 'punctuation.no    :=
-  #1 'punctuation.space :=
-  #2 'punctuation.yes   :=
-  "" 'bibfield          :=
-  "" 'output.bibfield   :=
-}
-
-STRINGS { s t}
-FUNCTION {block.punctuation}
-{ ""
-  "," *
-}
-
-FUNCTION {word.space}
-{
-  "\ "
-}
-
-FUNCTION {show.stackstring.one}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  duplicate$ "1(" swap$ * ")" * top$
-}
-
-FUNCTION {show.stackstring.two}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  swap$
-  duplicate$ "1(" swap$ * ")" * top$
-  swap$
-  duplicate$ "2(" swap$ * ")" * top$
-}
-
-FUNCTION {bibfield.command}{ "\bibfield "}
-
-FUNCTION {output.nonnull}
-{
-  swap$
-  output.state after.word =
-    {
-      block.punctuation *
-      word.space *
-    }
-    {
-      output.state after.punctuation =
-        {
-          word.space *
-        }
-        {
-          output.state after.block = output.state after.sentence = or
-            {
-              add.period$
-              "\EOS\ " *
-            }{
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  output.bibfield duplicate$ empty$ 'pop$
-    {
-      bibfield.command
-      " {" * swap$ * "} {" * swap$ * "}" *
-    }
-  if$
-  write$
-  bibfield 'output.bibfield := "" 'bibfield :=
-  output.state after.block =
-    {
-      newline$
-      "\newblock " write$
-    }
-    'skip$
-  if$
-  punctuation.state duplicate$
-  punctuation.yes 'punctuation.state :=
-  punctuation.no =
-    { pop$ before.all }
-    { punctuation.yes = { after.word }{ after.punctuation } if$ }
-  if$
-  'output.state :=
-}
-
-FUNCTION {output}
-{ duplicate$ empty$
-    {
-      pop$
-  "" 'bibfield :=
-    }
-    'output.nonnull
-  if$
-}
-
-FUNCTION {output.nopunct}
-{
-  punctuation.no 'punctuation.state :=
-  output.nonnull
-}
-
-FUNCTION {output.check}
-{ swap$
-  duplicate$ empty$
-    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
-    { swap$ pop$ output.nonnull }
-  if$
-}
-
-FUNCTION {bbl.open} { "\BibitemOpen " }
-
-FUNCTION {bbl.shut} { "\BibitemShut " }
-
-FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
-
-FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
-
-FUNCTION {bibitem.shut}
-{
-  non.stop
-    {
-  bibitem.shut.nostop *
-    }{
-  bibitem.shut.stop *
-    }
-  if$
-}
-
-FUNCTION {html.itag} {
-  "p"
-}
-
-FUNCTION {html.ltag} {
-  ""
-}
-
-FUNCTION {output.SLACcitation}
-{ SLACcitation empty$
-    'skip$
-    {
-      newline$
-      SLACcitation write$
-    }
-  if$
-}
-
-FUNCTION {fin.entry}
-{
-  bibitem.shut
-  write$
-    output.SLACcitation
-}
-
-FUNCTION {new.block}
-{ output.state before.all =
-    'skip$
-    { after.block 'output.state := }
-  if$
-}
-
-FUNCTION {new.block.comma}
-{
-}
-
-FUNCTION {new.sentence}
-{ output.state after.block = output.state before.all = or
-    'skip$
-    { after.sentence 'output.state := }
-  if$
-}
-
-FUNCTION {new.sentence.comma}
-{
-}
-
-FUNCTION {sentence.or.colon}
-{
-  new.sentence
-}
-
-FUNCTION {add.blank}
-{
-  word.space *
-  before.all 'output.state :=
-}
-
-FUNCTION {no.blank.or.punct}
-{
-   "\hspace {0pt}" *
-   before.all 'output.state :=
-}
-
-FUNCTION {date.block}
-{
-  new.block.comma
-  skip$
-}
-
-STRINGS {z}
-FUNCTION {remove.dots}
-{
-  control.author.dotless {
-    'z :=
-    ""
-    { z empty$ not }
-    { z #1 #1 substring$
-      z #2 global.max$ substring$ 'z :=
-      duplicate$ "." = 'pop$
-        { * }
-      if$
-    }
-    while$
-  } 'skip$ if$
-}
-
-FUNCTION {new.block.checkb}
-{ empty$
-  swap$ empty$
-  and
-    'skip$
-    'new.block
-  if$
-}
-
-FUNCTION {field.or.null}
-{ duplicate$ empty$
-    { pop$ "" }
-    'skip$
-  if$
-}
-
-FUNCTION {emphasize}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-      "\emph {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bolden}
-{ duplicate$ empty$
-    { pop$ "" }
-    { "\textbf {" swap$ * "}" * }
-  if$
-}
-
-FUNCTION {bib.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bib.fname.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibfnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {cite.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\citenamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {tie.or.space.prefix}
-{ duplicate$ text.length$ #3 <
-    { "~" }
-    { word.space }
-  if$
-  swap$
-}
-
-FUNCTION {capitalize}
-{
-  "u" change.case$ "t" change.case$
-}
-
-FUNCTION {space.word}
-{ word.space swap$ * word.space * }
-
- % Here are the language-specific definitions for explicit words.
- % Each function has a name bbl.xxx where xxx is the English word.
- % The language selected here is ENGLISH
-
-FUNCTION {bbl.and}
-{
-  "and"
-}
-
-FUNCTION {bbl.etal}
-{
-  "et~al."
-}
-
-FUNCTION {bbl.editors}
-{
-  "eds."
-}
-
-FUNCTION {bbl.editor}
-{
-  "ed."
-}
-
-FUNCTION {bbl.edby}
-{ "edited by" }
-
-FUNCTION {bbl.edition}
-{
-  "ed."
-}
-
-FUNCTION {bbl.volume}
-{
-  "vol."
-}
-
-FUNCTION {bbl.of}
-{ "of" }
-
-FUNCTION {bbl.number}
-{
-  "no."
-}
-
-FUNCTION {bbl.nr}
-{ "no." }
-
-FUNCTION {bbl.in}
-{ "in" }
-
-FUNCTION {bbl.pages}
-{
-  "pp."
-}
-
-FUNCTION {bbl.page}
-{
-  "p."
-}
-
-FUNCTION {bbl.eidpp}
-{ "pages" }
-
-FUNCTION {bbl.chapter}
-{
-  "chap."
-}
-
-FUNCTION {bbl.techrep}
-{
-  "Tech. Rep."
-}
-
-FUNCTION {bbl.mthesis}
-{ "Master's thesis" }
-
-FUNCTION {bbl.phdthesis}
-{ "Ph.D. thesis" }
-
-FUNCTION {bbl.first}
-{
-  "1st"
-}
-
-FUNCTION {bbl.second}
-{
-  "2nd"
-}
-
-FUNCTION {bbl.third}
-{
-  "3rd"
-}
-
-FUNCTION {bbl.fourth}
-{
-  "4th"
-}
-
-FUNCTION {bbl.fifth}
-{
-  "5th"
-}
-
-FUNCTION {bbl.st}
-{ "st" }
-
-FUNCTION {bbl.nd}
-{ "nd" }
-
-FUNCTION {bbl.rd}
-{ "rd" }
-
-FUNCTION {bbl.th}
-{ "th" }
-
-MACRO {jan} {"Jan."}
-
-MACRO {feb} {"Feb."}
-
-MACRO {mar} {"Mar."}
-
-MACRO {apr} {"Apr."}
-
-MACRO {may} {"May"}
-
-MACRO {jun} {"Jun."}
-
-MACRO {jul} {"Jul."}
-
-MACRO {aug} {"Aug."}
-
-MACRO {sep} {"Sep."}
-
-MACRO {oct} {"Oct."}
-
-MACRO {nov} {"Nov."}
-
-MACRO {dec} {"Dec."}
-
-FUNCTION {bbl.url.prefix}
-{
-  "\urlprefix "
-}
-
-FUNCTION {eng.ord}
-{ duplicate$ "1" swap$ *
-  #-2 #1 substring$ "1" =
-     { bbl.th * }
-     { duplicate$ #-1 #1 substring$
-       duplicate$ "1" =
-         { pop$ bbl.st * }
-         { duplicate$ "2" =
-             { pop$ bbl.nd * }
-             { "3" =
-                 { bbl.rd * }
-                 { bbl.th * }
-               if$
-             }
-           if$
-          }
-       if$
-     }
-   if$
-}
-
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
-MACRO {aa}{"Astron. \& Astrophys."}
-MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
-MACRO {aj} {"Astron. J."}
-MACRO {aph} {"Acta Phys."}
-MACRO {advp} {"Adv. Phys."}
-MACRO {ajp} {"Amer. J. Phys."}
-MACRO {ajm} {"Amer. J. Math."}
-MACRO {amsci} {"Amer. Sci."}
-MACRO {anofd} {"Ann. Fluid Dyn."}
-MACRO {am} {"Ann. Math."}
-MACRO {ap} {"Ann. Phys. (NY)"}
-MACRO {adp} {"Ann. Phys. (Leipzig)"}
-MACRO {ao} {"Appl. Opt."}
-MACRO {apl} {"Appl. Phys. Lett."}
-MACRO {app} {"Astroparticle Phys."}
-MACRO {apj} {"Astrophys. J."}
-MACRO {apjsup} {"Astrophys. J. Suppl."}
-MACRO {apss} {"Astrophys. Space Sci."}
-MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
-MACRO {baas} {"Bull. Amer. Astron. Soc."}
-MACRO {baps} {"Bull. Amer. Phys. Soc."}
-MACRO {cmp} {"Comm. Math. Phys."}
-MACRO {cpam} {"Commun. Pure Appl. Math."}
-MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
-MACRO {cpc} {"Comp. Phys. Comm."}
-MACRO {cqg} {"Class. Quant. Grav."}
-MACRO {cra} {"C. R. Acad. Sci. A"}
-MACRO {fed} {"Fusion Eng. \& Design"}
-MACRO {ft} {"Fusion Tech."}
-MACRO {grg} {"Gen. Relativ. Gravit."}
-MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
-MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
-MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
-MACRO {ip} {"Infrared Phys."}
-MACRO {irp} {"Infrared Phys."}
-MACRO {jap} {"J. Appl. Phys."}
-MACRO {jasa} {"J. Acoust. Soc. America"}
-MACRO {jcp} {"J. Comp. Phys."}
-MACRO {jetp} {"Sov. Phys.--JETP"}
-MACRO {jfe} {"J. Fusion Energy"}
-MACRO {jfm} {"J. Fluid Mech."}
-MACRO {jmp} {"J. Math. Phys."}
-MACRO {jne} {"J. Nucl. Energy"}
-MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
-MACRO {jnm} {"J. Nucl. Mat."}
-MACRO {jpc} {"J. Phys. Chem."}
-MACRO {jpp} {"J. Plasma Phys."}
-MACRO {jpsj} {"J. Phys. Soc. Japan"}
-MACRO {jsi} {"J. Sci. Instrum."}
-MACRO {jvst} {"J. Vac. Sci. \& Tech."}
-MACRO {nat} {"Nature"}
-MACRO {nature} {"Nature"}
-MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
-MACRO {nf} {"Nucl. Fusion"}
-MACRO {nim} {"Nucl. Inst. \& Meth."}
-MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
-MACRO {np} {"Nucl. Phys."}
-MACRO {npb} {"Nucl. Phys. B"}
-MACRO {nt/f} {"Nucl. Tech./Fusion"}
-MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
-MACRO {inc} {"Nuovo Cimento"}
-MACRO {nc} {"Nuovo Cimento"}
-MACRO {pf} {"Phys. Fluids"}
-MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
-MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
-MACRO {pl} {"Phys. Lett."}
-MACRO {pla} {"Phys. Lett. A"}
-MACRO {plb} {"Phys. Lett. B"}
-MACRO {prep} {"Phys. Rep."}
-MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
-MACRO {pp} {"Phys. Plasmas"}
-MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
-MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
-MACRO {prl} {"Phys. Rev. Lett."}
-MACRO {pr} {"Phys. Rev."}
-MACRO {physrev} {"Phys. Rev."}
-MACRO {pra} {"Phys. Rev. A"}
-MACRO {prb} {"Phys. Rev. B"}
-MACRO {prc} {"Phys. Rev. C"}
-MACRO {prd} {"Phys. Rev. D"}
-MACRO {pre} {"Phys. Rev. E"}
-MACRO {ps} {"Phys. Scripta"}
-MACRO {procrsl} {"Proc. Roy. Soc. London"}
-MACRO {rmp} {"Rev. Mod. Phys."}
-MACRO {rsi} {"Rev. Sci. Inst."}
-MACRO {science} {"Science"}
-MACRO {sciam} {"Sci. Am."}
-MACRO {sam} {"Stud. Appl. Math."}
-MACRO {sjpp} {"Sov. J. Plasma Phys."}
-MACRO {spd} {"Sov. Phys.--Doklady"}
-MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
-MACRO {spu} {"Sov. Phys.--Uspeki"}
-MACRO {st} {"Sky and Telesc."}
- % End module: physjour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
-MACRO {aisr} {"Adv. Space Res."}
-MACRO {ag} {"Ann. Geophys."}
-MACRO {anigeo} {"Ann. Geofis."}
-MACRO {angl} {"Ann. Glaciol."}
-MACRO {andmet} {"Ann. d. Meteor."}
-MACRO {andgeo} {"Ann. d. Geophys."}
-MACRO {andphy} {"Ann. Phys.-Paris"}
-MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
-MACRO {atph} {"Atm\'osphera"}
-MACRO {aao} {"Atmos. Ocean"}
-MACRO {ass}{"Astrophys. Space Sci."}
-MACRO {atenv} {"Atmos. Environ."}
-MACRO {aujag} {"Aust. J. Agr. Res."}
-MACRO {aumet} {"Aust. Meteorol. Mag."}
-MACRO {blmet} {"Bound.-Lay. Meteorol."}
-MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
-MACRO {cch} {"Clim. Change"}
-MACRO {cdyn} {"Clim. Dynam."}
-MACRO {cbul} {"Climatol. Bull."}
-MACRO {cap} {"Contrib. Atmos. Phys."}
-MACRO {dsr} {"Deep-Sea Res."}
-MACRO {dhz} {"Dtsch. Hydrogr. Z."}
-MACRO {dao} {"Dynam. Atmos. Oceans"}
-MACRO {eco} {"Ecology"}
-MACRO {empl}{"Earth, Moon and Planets"}
-MACRO {envres} {"Environ. Res."}
-MACRO {envst} {"Environ. Sci. Technol."}
-MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
-MACRO {expa}{"Exper. Astron."}
-MACRO {geoint} {"Geofis. Int."}
-MACRO {geopub} {"Geofys. Publ."}
-MACRO {geogeo} {"Geol. Geofiz."}
-MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
-MACRO {gfd} {"Geophys. Fluid Dyn."}
-MACRO {geomag} {"Geophys. Mag."}
-MACRO {georl} {"Geophys. Res. Lett."}
-MACRO {grl} {"Geophys. Res. Lett."}
-MACRO {ga} {"Geophysica"}
-MACRO {gs} {"Geophysics"}
-MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
-MACRO {ijawp} {"Int. J. Air Water Pollut."}
-MACRO {ijc} {"Int. J. Climatol."}
-MACRO {ijrs} {"Int. J. Remote Sens."}
-MACRO {jam} {"J. Appl. Meteorol."}
-MACRO {jaot} {"J. Atmos. Ocean. Technol."}
-MACRO {jatp} {"J. Atmos. Terr. Phys."}
-MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
-MACRO {jce} {"J. Climate"}
-MACRO {jcam} {"J. Climate Appl. Meteor."}
-MACRO {jcm} {"J. Climate Meteor."}
-MACRO {jcy} {"J. Climatol."}
-MACRO {jgr} {"J. Geophys. Res."}
-MACRO {jga} {"J. Glaciol."}
-MACRO {jh} {"J. Hydrol."}
-MACRO {jmr} {"J. Mar. Res."}
-MACRO {jmrj} {"J. Meteor. Res. Japan"}
-MACRO {jm} {"J. Meteor."}
-MACRO {jpo} {"J. Phys. Oceanogr."}
-MACRO {jra} {"J. Rech. Atmos."}
-MACRO {jaes} {"J. Aeronaut. Sci."}
-MACRO {japca} {"J. Air Pollut. Control Assoc."}
-MACRO {jas} {"J. Atmos. Sci."}
-MACRO {jmts} {"J. Mar. Technol. Soc."}
-MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
-MACRO {josj} {"J. Oceanogr. Soc. Japan"}
-MACRO {jwm} {"J. Wea. Mod."}
-MACRO {lao} {"Limnol. Oceanogr."}
-MACRO {mwl} {"Mar. Wea. Log"}
-MACRO {mau} {"Mausam"}
-MACRO {meteor} {"``Meteor'' Forschungsergeb."}
-MACRO {map} {"Meteorol. Atmos. Phys."}
-MACRO {metmag} {"Meteor. Mag."}
-MACRO {metmon} {"Meteor. Monogr."}
-MACRO {metrun} {"Meteor. Rundsch."}
-MACRO {metzeit} {"Meteor. Z."}
-MACRO {metgid} {"Meteor. Gidrol."}
-MACRO {mwr} {"Mon. Weather Rev."}
-MACRO {nwd} {"Natl. Weather Dig."}
-MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
-MACRO {npg} {"Nonlin. Proc. Geophys."}
-MACRO {om} {"Oceanogr. Meteorol."}
-MACRO {ocac} {"Oceanol. Acta"}
-MACRO {oceanus} {"Oceanus"}
-MACRO {paleoc} {"Paleoceanography"}
-MACRO {pce} {"Phys. Chem. Earth"}
-MACRO {pmg} {"Pap. Meteor. Geophys."}
-MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
-MACRO {physzeit} {"Phys. Z."}
-MACRO {pps} {"Planet. Space Sci."}
-MACRO {pss} {"Planet. Space Sci."}
-MACRO {pag} {"Pure Appl. Geophys."}
-MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
-MACRO {quatres} {"Quat. Res."}
-MACRO {rsci} {"Radio Sci."}
-MACRO {rse} {"Remote Sens. Environ."}
-MACRO {rgeo} {"Rev. Geophys."}
-MACRO {rgsp} {"Rev. Geophys. Space Phys."}
-MACRO {rdgeo} {"Rev. Geofis."}
-MACRO {revmeta} {"Rev. Meteorol."}
-MACRO {sgp}{"Surveys in Geophys."}
-MACRO {sp} {"Solar Phys."}
-MACRO {ssr} {"Space Sci. Rev."}
-MACRO {tellus} {"Tellus"}
-MACRO {tac} {"Theor. Appl. Climatol."}
-MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
-MACRO {wrr} {"Water Resour. Res."}
-MACRO {weather} {"Weather"}
-MACRO {wafc} {"Weather Forecast."}
-MACRO {ww} {"Weatherwise"}
-MACRO {wmob} {"WMO Bull."}
-MACRO {zeitmet} {"Z. Meteorol."}
- % End module: geojour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
-
-MACRO {appopt} {"Appl. Opt."}
-MACRO {bell} {"Bell Syst. Tech. J."}
-MACRO {ell} {"Electron. Lett."}
-MACRO {jasp} {"J. Appl. Spectr."}
-MACRO {jqe} {"IEEE J. Quantum Electron."}
-MACRO {jlwt} {"J. Lightwave Technol."}
-MACRO {jmo} {"J. Mod. Opt."}
-MACRO {josa} {"J. Opt. Soc. America"}
-MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
-MACRO {josab} {"J. Opt. Soc. Amer.~B"}
-MACRO {jdp} {"J. Phys. (Paris)"}
-MACRO {oc} {"Opt. Commun."}
-MACRO {ol} {"Opt. Lett."}
-MACRO {phtl} {"IEEE Photon. Technol. Lett."}
-MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
-MACRO {sse} {"Solid-State Electron."}
-MACRO {sjot} {"Sov. J. Opt. Technol."}
-MACRO {sjqe} {"Sov. J. Quantum Electron."}
-MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
-MACRO {stph} {"Sov. Phys.--Techn. Phys."}
-MACRO {stphl} {"Sov. Techn. Phys. Lett."}
-MACRO {vr} {"Vision Res."}
-MACRO {zph} {"Z. f. Physik"}
-MACRO {zphb} {"Z. f. Physik~B"}
-MACRO {zphd} {"Z. f. Physik~D"}
-
-MACRO {CLEO} {"CLEO"}
-MACRO {ASSL} {"Adv. Sol.-State Lasers"}
-MACRO {OSA}  {"OSA"}
- % End module: photjour.mbs
-%% Copyright 1994-2007 Patrick W Daly
-MACRO {acmcs} {"ACM Comput. Surv."}
-
-MACRO {acta} {"Acta Inf."}
-
-MACRO {cacm} {"Commun. ACM"}
-
-MACRO {ibmjrd} {"IBM J. Res. Dev."}
-
-MACRO {ibmsj} {"IBM Syst.~J."}
-
-MACRO {ieeese} {"IEEE Trans. Software Eng."}
-
-MACRO {ieeetc} {"IEEE Trans. Comput."}
-
-MACRO {ieeetcad}
- {"IEEE Trans. Comput. Aid. Des."}
-
-MACRO {ipl} {"Inf. Process. Lett."}
-
-MACRO {jacm} {"J.~ACM"}
-
-MACRO {jcss} {"J.~Comput. Syst. Sci."}
-
-MACRO {scp} {"Sci. Comput. Program."}
-
-MACRO {sicomp} {"SIAM J. Comput."}
-
-MACRO {tocs} {"ACM Trans. Comput. Syst."}
-
-MACRO {tods} {"ACM Trans. Database Syst."}
-
-MACRO {tog} {"ACM Trans. Graphic."}
-
-MACRO {toms} {"ACM Trans. Math. Software"}
-
-MACRO {toois} {"ACM Trans. Office Inf. Syst."}
-
-MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
-
-MACRO {tcs} {"Theor. Comput. Sci."}
-
-FUNCTION {bibinfo.command} { "\bibinfo " }
-
-FUNCTION {bibinfo.check}
-{ swap$
-  duplicate$ missing$
-    {
-      pop$
-      pop$ ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ pop$
-        }{
-          swap$
-          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {bibinfo.warn}
-{ swap$
-  duplicate$ missing$
-    {
-      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
-      ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ "empty " swap$ * " in " * cite$ * warning$
-        }{
-          swap$
-          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {archiv.base}
-{
-  "http://arxiv.org/abs"
-}
-
-FUNCTION {archiv.prefix.base}
-{
-  "arXiv"
-}
-
-FUNCTION {eprint.command}
-{
-  "\Eprint "
-}
-
-FUNCTION {format.eprint}
-{
-  eprint duplicate$ empty$
-  control.eprint #0 <
-  or
-    { pop$ "" }
-    {
-      duplicate$
-      ""
-        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
-        "/" *
-        swap$ *
-        "{" swap$ * "} " *
-      swap$
-      ""
-        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
-        swap$ *
-        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
-        "{" swap$ * "} " *
-      *
-      eprint.command swap$ *
-    }
-  if$
-}
-
-FUNCTION {format.translation}
-{ translation duplicate$ empty$
-    'skip$
-    { ""
-      "\translation{" * swap$ * "}" *
-      punctuation.space 'punctuation.state :=
-    }
-  if$
-}
-
-FUNCTION {format.url}
-{
-  url duplicate$ empty$
-    { pop$ "" }
-    {
-      "\url "
-      "{" * swap$ * "}" *
-    }
-  if$
-}
-
-INTEGERS { nameptr namesleft numnames }
-
-FUNCTION {check.speaker}
-{ key empty$ 'skip$
-  { key nameptr int.to.str$ =
-    {
-      bolden
-    }
-      'skip$
-    if$
-  }
-  if$
-}
-
-
-STRINGS  { bibinfo}
-
-FUNCTION {format.names.fname}
-{
-  control.author.initials {
-    control.author.dotless {
-      control.author.nospace {
-        "f{}"
-      } {
-        "f{~}"
-      } if$
-    } {
-      control.author.nospace {
-        "f{.}."
-      } {
-        "f."
-      } if$
-    } if$
-  } {
-    "ff"
-  } if$
-}
-
-FUNCTION {bracify}
-{
-  "{" swap$ * "}" *
-}
-
-FUNCTION {name.comma}
-{
-  control.author.nocomma 'skip$ { "," swap$ * } if$
-}
-
-FUNCTION {format.names.format.onefont}
-{
-  "{vv~}{ll}"
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-    {
-      control.author.initials {
-        "f"
-        control.author.dotless 'skip$ {
-          "." *
-        } if$
-        "~" *
-      } {
-        "ff"
-      } if$
-      bracify
-      swap$
-    } {
-      format.names.fname
-      " " swap$ *
-      name.comma
-      bracify
-    }
-  if$
-  "jj"
-  " " swap$ *
-  name.comma
-  bracify
-  control.author.jnrlst 'skip$ 'swap$ if$
-  * *
-}
-
-FUNCTION {format.names.onefont}
-{
-  s nameptr format.names.format.onefont format.name$
-  remove.dots
-  bib.name.font
-}
-
-FUNCTION {format.names.morfont}
-{ s nameptr
-  "{vv~}{ll}" format.name$ bib.name.font
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-  {
-    s nameptr
-    control.author.initials {
-      "f"                        % default: name + surname + comma junior
-    } {
-      "ff"
-    } if$
-    control.author.dotless 'skip$ {
-      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
-    } if$
-    bracify
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    swap$
-    *
-    s nameptr
-    "{jj}" format.name$ duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } {
-    "," *
-    s nameptr
-    format.names.fname
-    "jj"
-    " "
-    name.comma
-    control.author.jnrlst {
-      swap$ * skip$
-    } {
-      skip$ * swap$
-    } if$
-    bracify swap$ bracify swap$
-    *
-    format.name$
-    remove.dots
-    duplicate$ empty$ 'skip$
-      { bib.fname.font " " swap$ * }
-      if$
-  } if$
-  *
-}
-
-FUNCTION {names.punctuate}
-{
-  "," *
-  " " *
-}
-
-FUNCTION {format.names}
-{ 'bibinfo :=
-  duplicate$ empty$ { pop$ "" } {
-    duplicate$ num.names$
-    duplicate$ 'numnames :=
-    'namesleft :=
-    's :=
-    #1 'nameptr :=
-    ""
-      { namesleft #0 > }
-      {
-      format.names.morfont
-        bibinfo bibinfo.check
-        type$ "presentation" =
-          'check.speaker
-          'skip$
-        if$
-        't :=
-        nameptr #1 > not
-          {
-            t *
-          } {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              } {
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-                numnames #2 >
-                  'names.punctuate
-                  'skip$
-                if$
-                t "others" =
-                  {
-                    " " *
-                    bbl.etal
-                    emphasize
-                    *
-                  } {
-                    bbl.and
-                    space.word *
-                    t *
-                  }
-                if$
-              }
-            if$
-          }
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-  } if$
-}
-
-FUNCTION {format.names.ed.onefont}
-{
-    s nameptr
-    control.author.initials {
-      control.author.dotless {
-        control.author.nospace {
-          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
-        } {
-          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
-        } if$
-      } {
-        control.author.nospace {
-          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
-        }{
-          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
-        } if$
-      } if$
-    } {
-      "{ff~}{vv~}{ll}{, jj}"
-    } if$
-    format.name$
-    remove.dots
-    bib.name.font
-}
-
-FUNCTION {format.names.ed.morfont}
-{
-  control.author.reversed { %
-    control.author.initials { %
-      control.author.dotless { %
-        s nameptr
-        control.author.nospace { % nm-rvx nm-rvcx
-          "{f{}}"
-        } { % nm-rv
-          "{f{~}}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        remove.dots
-        duplicate$ empty$ 'skip$
-          { bib.fname.font " " swap$ * }
-        if$
-      } { % !control.author.dotless
-        s nameptr
-        control.author.nospace { % nm-rvv
-          "{ff}"
-        } { % nm-rev nm-rev1
-          "{f.}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        duplicate$ empty$ 'skip$
-          { bib.fname.font ", " swap$ * }
-        if$
-      } if$
-    } { % Full names !control.author.initials  nm-revf nm-revv1
-      s nameptr
-      "{ff}"
-      format.name$ duplicate$ empty$ 'skip$
-        { tie.or.space.prefix bib.fname.font swap$ * }
-      if$
-      s nameptr
-      "{vv~}{ll}" format.name$ bib.name.font *
-      s nameptr
-      "{jj}" format.name$
-      duplicate$ empty$ 'skip$
-        { bib.fname.font ", " swap$ * }
-      if$
-    } if$
-  } { % !control.author.reversed nm-init
-    s nameptr
-    "{f.}"
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    s nameptr
-    "{vv~}{ll}" format.name$ bib.name.font *
-    s nameptr
-    "{jj}" format.name$
-    duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } if$
-  *
-}
-
-FUNCTION {format.names.ed}
-{
-  control.editor #0 > {
-    format.names
-  } {
-    'bibinfo :=
-    duplicate$ empty$ 'skip$ {
-    's :=
-    "" 't :=
-    #1 'nameptr :=
-    s num.names$ 'numnames :=
-    numnames 'namesleft :=
-      { namesleft #0 > }
-      {
-       format.names.ed.morfont
-        bibinfo bibinfo.check
-        't :=
-        nameptr #1 >
-          {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              }{
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-                numnames #2 >
-                  'names.punctuate
-                  'skip$
-                if$
-                t "others" =
-                  {
-                    " " * bbl.etal emphasize *
-                  }{
-                   bbl.and
-                    space.word * t *
-                  }
-                if$
-              }
-            if$
-          }
-          't
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-    } if$
-  } if$
-}
-
-FUNCTION {format.key}
-{ empty$
-    { key field.or.null }
-    { "" }
-  if$
-}
-
-FUNCTION {format.authors}
-{ author "author" format.names
-  duplicate$ empty$ 'skip$
-    { collaboration "collaboration" bibinfo.check
-      duplicate$ empty$ 'skip$
-        { " (" swap$ * ")" * }
-      if$
-      *
-    }
-  if$
-  "author" 'bibfield :=
-}
-
-FUNCTION {get.bbl.editor}
-{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
-}
-
-FUNCTION {format.editors}
-{ editor "editor" format.names duplicate$ empty$ 'skip$
-    {
-      "," *
-      word.space *
-      get.bbl.editor
-      *
-    }
-  if$
-}
-
-FUNCTION {format.isbn.output}
-{
-}
-
-FUNCTION {format.issn.output}
-{ 
-}
-
-FUNCTION {doi.base}
-{
-  "http://dx.doi.org/"
-}
-
-FUNCTION {doi.base.command}
-{
-  "\doibase "
-}
-
-FUNCTION {noop.command}
-{
-  "\href at noop "
-}
-
-FUNCTION {href.command}
-{
-  "\href "
-}
-
-FUNCTION {link.tag.open}
-{
-  doi duplicate$ empty$
-    {
-      pop$
-      url duplicate$ empty$
-        {
-          pop$ "" noop.command
-        }{
-          href.command
-        }
-      if$
-    }
-    {
-      doi.base.command swap$ * 
-      href.command
-    }
-  if$
-  "{" * swap$ * "} {" *
-}
-
-FUNCTION {link.tag.shut}
-{
-  "}"
-}
-
-FUNCTION {link.open}
-{
-  link.tag.open output.nopunct
-}
-
-FUNCTION {link.shut}
-{
-  link.tag.shut *
-}
-
-FUNCTION {add.doi}
-{
-  link.tag.open swap$ * link.tag.shut *
-}
-
-FUNCTION {select.language}
-{ duplicate$ empty$
-    'pop$
-    { language empty$
-        'skip$
-        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
-      if$
-    }
-    if$
-}
-
-FUNCTION {format.note}
-{
- note empty$
-    { "" }
-    { note #1 #1 substring$
-      duplicate$ "{" =
-        'skip$
-        {
-          output.state after.word = output.state after.punctuation = or
-            { "l" }
-            { "u" }
-          if$ change.case$
-        }
-      if$
-      note #2 global.max$ substring$ * "note" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {bbl.enquote}
-{
-  "\enquote "
-}
-
-FUNCTION {string.enquote}
-{
-  punctuation.no 'punctuation.state :=
-  non.stop {
-    block.punctuation
-  } { "" } if$
-   swap$ pop$
-  *
-  bbl.enquote "{" * swap$ * "}" *
-  word.space *
-}
-
-FUNCTION {format.title}
-{ title
-  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
-  duplicate$ "title" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      string.enquote
-      select.language
-    }
-  if$
-}
-
-FUNCTION {end.quote.title}
-{ title empty$
-    'skip$
-    { before.all 'output.state := }
-  if$
-}
-
-FUNCTION {format.name.apply}
-{
-  s nameptr
-  "{vv~}{ll}"
-  format.name$
-  cite.name.font
-}
-
-FUNCTION {format.full.names}
-{
-  's :=
-  "" 't :=
-  #1 'nameptr :=
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { format.name.apply
-      't :=
-      nameptr #1 >
-        {
-          namesleft #1 >
-            { ", " * t * }
-            {
-              s nameptr "{ll}" format.name$ duplicate$ "others" =
-                {
-                  't :=
-                }
-                'pop$
-              if$
-              t "others" =
-                {
-                  " " * bbl.etal
-                  emphasize *
-                }{
-                  numnames #2 > { "," * }{ skip$ } if$
-                  bbl.and
-                  space.word * t *
-                }
-              if$
-            }
-          if$
-        }
-        't
-      if$
-      nameptr #1 + 'nameptr :=
-      namesleft #1 - 'namesleft :=
-    }
-  while$
-}
-
-FUNCTION {make.full.names}
-{
-  key editor author
-  type$ "proceedings" =
-  type$ "book"        =
-  type$ "inbook"      =
-  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
-  duplicate$ empty$
-    { pop$
-      duplicate$ empty$
-        { pop$
-          duplicate$ empty$
-            { pop$
-              cite$ #1 #3 substring$
-            }{
-              skip$
-            }
-          if$
-        }
-        { swap$ pop$ format.full.names }
-      if$
-    }
-    { swap$ pop$ swap$ pop$ format.full.names }
-  if$
-}
-
-FUNCTION {year.bibitem}
-{
-  year duplicate$ empty$
-  { pop$ ""
-  }{
-    skip$
-  } if$
-  extra.label *
-}
-
-FUNCTION {output.bibitem}
-{
-  newline$
-  ""
-  label
-  * ")" *
-   make.full.names duplicate$ short.list =
-   { pop$ }{ * } if$
-   bracify
-  "[" swap$ * "]" *
-  cite$ bracify "%" *
-  *
-  "\bibitem "
-  swap$ *
-  write$ newline$
-  "  "
-  duplicate$ bbl.open * write$ newline$
-  before.all 'output.state :=
-  punctuation.yes 'punctuation.state :=
-}
-
-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 {word.in}
-{
-  bbl.in
-  word.space *
-}
-
-FUNCTION {date.encapsulate}
-{
-  duplicate$ empty$
-    'skip$
-    {
-      before.all 'output.state :=
-      " (" swap$ * ")" *
-    }
-  if$
-}
-
-FUNCTION {format.date}
-{
-  year "year" bibinfo.check duplicate$ empty$
-    {
-    }
-    'skip$
-  if$
-  extra.label *
-  date.encapsulate
-}
-
-FUNCTION {format.date.output.check}
-{
- format.date
- "year" output.check
-}
-
-FUNCTION {format.date.output}
-{
-  format.date.output.check
-}
-
-FUNCTION {format.btitle}
-{
-  booktitle duplicate$ empty$ { pop$
-      title
-  } 'skip$ if$
-  "title" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {either.or.check}
-{ empty$
-    'pop$
-    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
-  if$
-}
-
-FUNCTION {editor.check.book}
-{ editor empty$ 'skip$
-    {
-      "can't use both author and editor fields in " cite$ *
-      ": try using @inbook instead" *
-      warning$
-    }
-  if$
-}
-
-FUNCTION {format.bvolume}
-{ volume duplicate$ empty$
-    { pop$ "" }
-    {
-      "volume and number" number either.or.check
-      bbl.volume
-      capitalize
-      swap$
-      tie.or.space.prefix "volume" bibinfo.check * *
-      series "series" bibinfo.check duplicate$ empty$ 'pop$
-        {
-          ", "
-          * swap$ *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.number}
-{
-  bbl.number
-  output.state after.word = output.state after.punctuation = or
-  #1 or
-  #0 and
-    'skip$
-    { capitalize }
-  if$
-  number tie.or.space.prefix "number" bibinfo.check * *
-}
-
-FUNCTION {format.number.series}
-{ volume empty$
-    { number empty$
-        { series field.or.null }
-        {
-          series empty$
-            {
-              number "number" bibinfo.check
-            }{
-              format.number
-              series "series" bibinfo.check
-              word.space * swap$ *
-            }
-          if$
-        }
-      if$
-    }
-    { "" }
-  if$
-}
-
-FUNCTION {is.num}
-{ chr.to.int$
-  duplicate$ "0" chr.to.int$ < not
-  swap$ "9" chr.to.int$ > not and
-}
-
-FUNCTION {extract.num}
-{ duplicate$ 't :=
-  "" 's :=
-  { t empty$ not }
-  { t #1 #1 substring$
-    t #2 global.max$ substring$ 't :=
-    duplicate$ is.num
-      { s swap$ * 's := }
-      { pop$ "" 't := }
-    if$
-  }
-  while$
-  s empty$
-    'skip$
-    { pop$ s }
-  if$
-}
-
-FUNCTION {convert.edition}
-{ extract.num "l" change.case$ 's :=
-  s "first" = s "1" = or
-    { bbl.first 't := }
-    { s "second" = s "2" = or
-        { bbl.second 't := }
-        { s "third" = s "3" = or
-            { bbl.third 't := }
-            { s "fourth" = s "4" = or
-                { bbl.fourth 't := }
-                { s "fifth" = s "5" = or
-                    { bbl.fifth 't := }
-                    { s #1 #1 substring$ is.num
-                        { s
-                            eng.ord
-                        't := }
-                        { edition 't := }
-                      if$
-                    }
-                  if$
-                }
-              if$
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  t
-}
-
-FUNCTION {format.edition}
-{ edition duplicate$ empty$ 'skip$
-    {
-      convert.edition
-      output.state after.word = output.state after.punctuation = or
-        { "l" }
-        { "t" }
-      if$ change.case$
-      "edition" bibinfo.check
-      word.space * bbl.edition *
-    }
-  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 duplicate$ empty$
-    'skip$
-    { duplicate$ multi.page.check
-        {
-          bbl.pages swap$
-          n.dashify
-        }{
-          bbl.page swap$
-        }
-      if$
-      tie.or.space.prefix
-      "pages" bibinfo.check
-      * *
-    }
-  if$
-}
-
-FUNCTION {first.page}
-{ 't :=
-  ""
-    {  t empty$ not t #1 #1 substring$ "-" = not and }
-    { t #1 #1 substring$ *
-      t #2 global.max$ substring$ 't :=
-    }
-  while$
-}
-
-FUNCTION {format.book.pages}
-{
-  pages duplicate$ empty$ 'skip$
-    {
-      "pages" bibinfo.check word.space bbl.pages * *
-    }
-  if$
-}
-
-FUNCTION {volnum.punct}
-{
-          ","
-  word.space *
-}
-
-FUNCTION {format.journal.pages}
-{ pages duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$
-        { pop$ pop$ format.pages }
-        { volnum.punct *
-          swap$
-          control.pages duplicate$ #0 < {
-            pop$ pop$
-          }{
-            #0 >
-            {
-              n.dashify
-            }{
-              first.page
-            } if$
-          } if$
-          "pages" bibinfo.check
-          *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.journal.eid}
-{ eid "eid" bibinfo.check
-  duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$ 'skip$
-        { volnum.punct * }
-      if$
-      swap$ *
-    }
-  if$
-}
-
-FUNCTION {eid.or.pages}
-{
-  eid empty$
-    { format.journal.pages }
-    { format.journal.eid }
-  if$
-}
-
-FUNCTION {format.ser.vol.num}
-{
-  series "series" bibinfo.check output
-  volume field.or.null
-  duplicate$ empty$ 'skip$
-    {
-      "volume" bibinfo.check
-    }
-  if$
-  bolden
-}
-
-FUNCTION {format.chapter.pages}
-{ chapter empty$
-    {
-    format.pages
-    }
-    { type empty$
-        {
-          bbl.chapter
-          capitalize
-        }{
-          type
-          capitalize
-          "type" bibinfo.check
-        }
-      if$
-      chapter tie.or.space.prefix
-      "chapter" bibinfo.check
-      * *
-      pages empty$
-        'skip$
-        { ", " * format.pages * }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.booktitle}
-{
-  booktitle duplicate$ "booktitle" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      pop$ emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {format.editor.in}
-{
-  editor "editor" format.names.ed duplicate$ empty$ 'skip$
-    {
-      bbl.edby
-      word.space * swap$ *
-    }
-  if$
-}
-
-FUNCTION {output.article.booktitle}
-{
-  format.booktitle
-      "booktitle" 'bibfield :=
-  output
-  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
-    {
-      "address" 'bibfield :=
-      output.nonnull after.punctuation 'output.state :=
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      format.editor.in "editor" bibinfo.check output
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle.inbook}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      author empty$ 'skip$
-        { format.editor.in "editor" bibinfo.check output }
-    if$
-    }
-  if$
-}
-
-FUNCTION {format.thesis.type}
-{ type duplicate$ empty$
-    'pop$
-    { swap$ pop$
-      "t" change.case$ "type" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {format.tr.number}
-{ number "number" bibinfo.check
-  type duplicate$ empty$
-    { pop$ bbl.techrep }
-    'skip$
-  if$
-  "type" bibinfo.check
-  swap$ duplicate$ empty$
-    { pop$ "t" change.case$ }
-    { tie.or.space.prefix * * }
-  if$
-}
-
-FUNCTION {format.article.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.book.crossref}
-{ volume duplicate$ empty$
-    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
-      pop$ word.in
-    }
-    { bbl.volume
-      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
-    }
-  if$
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.incoll.inproc.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.org.or.pub}
-{ 't :=
-  ""
-  address "address" bibinfo.check
-  duplicate$ empty$
-    { pop$ t }
-    { t duplicate$ empty$
-        { pop$ }
-        {
-          "," word.space *
-          * swap$ *
-        }
-      if$
-    }
-  if$
-  *
-  year duplicate$ empty$
-    {
-      "empty year in " cite$ *
-      warning$
-      pop$ ""
-    }
-    'skip$
-  if$
-  duplicate$ empty$
-    { pop$ }
-    {
-      "year" bibinfo.check
-      swap$
-      duplicate$ empty$
-        { pop$ }
-        {
-          "," *
-          word.space *
-          swap$ *
-        }
-      if$
-    }
-  if$
-  duplicate$ empty$ 'skip$ {
-    ""
-    "(" * swap$ * ")" *
-    after.punctuation 'output.state :=
-    punctuation.space 'punctuation.state :=
-  } if$
-}
-
-FUNCTION {format.publisher.address}
-{ publisher "publisher" bibinfo.warn format.org.or.pub
-}
-
-FUNCTION {format.organization.address}
-{ organization "organization" bibinfo.check format.org.or.pub
-}
-
-FUNCTION {format.organization.publisher.address}
-{
-  publisher empty$
-    { format.organization.address }
-    { organization "organization" bibinfo.check output
-      format.publisher.address
-    }
-  if$
-}
-
-FUNCTION {format.school.address.output}
-{
-  school  "school"  bibinfo.warn
-  address "address" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      swap$
-      duplicate$ empty$ 'skip$
-        {
-          ", " *
-        }
-      if$
-      swap$
-    }
-  if$
-  *
-  output
-}
-
-FUNCTION {article.title.produce}
-{
-  control.title duplicate$ #0 <
-  { pop$
-  }{
-    format.title
-    "title" 'bibfield :=
-    swap$ #0 >
-    {
-      "title" output.check
-    }{
-      output
-    } if$
-    new.block.comma
-  } if$
-}
-
-FUNCTION {control}
-{
-}
-
-FUNCTION {article}
-{ output.bibitem
-  format.authors
-  booktitle empty$ {
-      "author" output.check
-    }{ output } if$
-  author format.key output
-  new.block.comma
-  article.title.produce
-  output.article.booktitle
-  crossref missing$
-    {
-      link.open
-      journal
-      "journal" bibinfo.warn
-      "journal" 'bibfield :=
-      output
-      add.blank
-      format.ser.vol.num
-      output
-      eid.or.pages
-      format.date.output.check
-      pages empty$ {
-      doi output
-      } 'skip$ if$
-      link.shut
-    }{
-      format.article.crossref output.nonnull
-      format.pages output
-    }
-  if$
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  format.translation output
-  fin.entry
-}
-
-FUNCTION {book}
-{ output.bibitem
-  author empty$
-    {
-      format.editors "author and editor" output.check
-      editor format.key output
-    }{
-      format.authors output.nonnull
-%     crossref missing$ { editor.check.book } 'skip$ if$
-    }
-  if$
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-  format.edition output
-  author empty$
-    {
-    }
-    {
-      format.editor.in output
-      editor format.key output
-    }
-  if$
-  format.number.series output
-  crossref missing$
-    {
-      format.bvolume output
-      new.block.comma
-      format.publisher.address output
-    }{
-      new.block.comma
-      format.book.crossref output.nonnull
-      format.date.output.check
-    }
-  if$
-  format.isbn.output
-  format.chapter.pages
-  output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {booklet}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  address "address" bibinfo.check output
-  format.date.output
-  format.isbn.output
-  format.book.pages output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {footnote}
-{ output.bibitem
-  format.note output
-  fin.entry
-}
-
-FUNCTION {inbook}
-{ output.bibitem
-  author empty$
-    {
-       format.editors "editor" output.check
-       editor format.key output
-    }{
-       format.authors output.nonnull
-       author format.key output
-    }
-  if$
-  new.block.comma
-
-  format.title output
-  new.block.comma
-
-  crossref missing$
-    {
-      format.in.ed.booktitle.inbook
-      format.publisher.address output
-      format.chapter.pages
-      "chapter and pages"
-      output.check
-      new.block.comma
-      format.edition output
-      new.block.comma
-    }{
-      format.chapter.pages
-      "chapter and pages"
-      output.check
-      new.block.comma
-      format.book.crossref output.nonnull
-      format.date.output.check
-    }
-  if$
-  crossref missing$
-    { format.isbn.output }
-    'skip$
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {incollection}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.publisher.address output
-      format.edition output
-      format.chapter.pages output
-      format.isbn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-      format.chapter.pages output
-    }
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {inproceedings}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.organization.publisher.address output
-      format.chapter.pages output
-      format.isbn.output
-      format.issn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-      format.chapter.pages output
-    }
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {conference} { inproceedings }
-FUNCTION {manual}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      organization "organization" bibinfo.check output
-      address "address" bibinfo.check output
-  format.edition output
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {mastersthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.mthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  format.date.output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {misc}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {phdthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.phdthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  format.date.output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {presentation}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  format.organization.address "organization and address" output.check
-  month "month" output.check
-  year "year" output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  new.sentence
-  type missing$ 'skip$
-    {"(" type capitalize * ")" * output}
-  if$
-  fin.entry
-}
-
-FUNCTION {proceedings}
-{ output.bibitem
-  format.editors output
-  editor format.key output
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      bookaddress "address" bibinfo.check output
-  format.number.series output
-  format.bvolume output
-  format.organization.publisher.address output
-  format.isbn.output
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {techreport}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  new.block.comma
-  format.tr.number
-  output.nonnull
-  institution "institution" bibinfo.warn
-  format.org.or.pub output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {unpublished}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note "note" output.check
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {default.type} { misc }
-
-READ
-
-EXECUTE {control.init}
-
-ITERATE {control.pass}
-
-EXECUTE {control.check}
-
-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 {cite.name.font.apply}
-{
-  word.space * bbl.etal
-  emphasize
-  *
-}
-
-FUNCTION {format.lab.names}
-{ 's :=
-  "" 't :=
-  #1 'nameptr :=
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { 
-      format.name.apply
-      't :=
-      nameptr #1 >
-        {
-          nameptr
-          #2
-          =
-          numnames
-          #3
-          > and
-            { 
-              "others" 't :=
-              #1 'namesleft := 
-            }
-            'skip$
-          if$
-          namesleft #1 >
-            { ", " * t * }
-            {
-              s nameptr "{ll}" format.name$ duplicate$ "others" =
-                { 't := }
-                { pop$ }
-              if$
-              t "others" =
-                {
-                  cite.name.font.apply
-                }{
-                  numnames #2 > { "," * } 'skip$ if$
-                  bbl.and
-                  space.word * t *
-                }
-              if$
-            }
-          if$
-        }
-        't
-      if$
-      nameptr #1 + 'nameptr :=
-      namesleft #1 - 'namesleft :=
-    }
-  while$
-}
-
-FUNCTION {author.key.label}
-{ author empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {author.editor.key.label}
-{ author empty$
-    { editor empty$
-        { key empty$
-            { cite$ #1 #3 substring$ }
-            'key
-          if$
-        }
-        { editor format.lab.names }
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {editor.key.label}
-{ editor empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { editor format.lab.names }
-  if$
-}
-
-FUNCTION {calc.short.authors}
-{ type$ "book" =
-  type$ "inbook" =
-  or
-    'author.editor.key.label
-    { type$ "proceedings" =
-        'editor.key.label
-        'author.key.label
-      if$
-    }
-  if$
-  'short.list :=
-}
-
-FUNCTION {calc.label}
-{
-  calc.short.authors
-  short.list
-  year duplicate$ empty$
-    {
-      pop$ ""
-    }{
-      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
-    }
-  if$
-  "(" swap$ *
-  * 'label :=
-}
-
-FUNCTION {sort.format.names}
-{ 's :=
-  #1 'nameptr :=
-  ""
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { s nameptr
-      "{ll{ }}"
-      control.author.initials {
-        "{  f{ }}"  *
-      }{
-        "{  ff{ }}" *
-      } if$
-      "{  jj{ }}" *
-      format.name$ 't :=
-      nameptr #1 >
-        {
-          "   "  *
-          namesleft #1 = t "others" = and
-            { "zzzzz" * }
-            {
-              t sortify *
-            }
-          if$
-        }
-        { 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 {author.editor.sort}
-{ author empty$
-    { 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 {year.sort.key}
-{
-  year
-}
-
-FUNCTION {editor.sort}
-{ editor empty$
-    { key empty$
-        { "to sort, need editor or key in " cite$ * warning$
-          ""
-        }
-        { key sortify }
-      if$
-    }
-    { editor sort.format.names }
-  if$
-}
-
-INTEGERS { seq.num }
-
-FUNCTION {init.seq}
-{ #0 'seq.num :=}
-
-EXECUTE {init.seq}
-
-FUNCTION {int.to.fix}
-{ "000000000" swap$ int.to.str$ *
-  #-1 #10 substring$
-}
-
-FUNCTION {label.presort}
-{
-  calc.label
-  label sortify
-  "    "
-  *
-  type$ "book" =
-  type$ "inbook" =
-  or
-    'author.editor.sort
-    { type$ "proceedings" =
-        'editor.sort
-        'author.sort
-      if$
-    }
-  if$
-  #1 entry.max$ substring$
-  'sort.label :=
-  sort.label
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {presort.pass}
-{ type$ "control" = 'control.presort 'label.presort if$
-}
-
-ITERATE {presort.pass}
-
-SORT
-
-STRINGS { last.label next.extra }
-
-INTEGERS { last.extra.num number.label }
-
-FUNCTION {initialize.extra.label.stuff}
-{ #0 int.to.chr$ 'last.label :=
-  "" 'next.extra :=
-  #0 'last.extra.num :=
-  #0 'number.label :=
-}
-
-FUNCTION {label.forward}
-{
-  last.label label =
-    { last.extra.num #1 + 'last.extra.num :=
-      last.extra.num int.to.chr$ 'extra.label :=
-    }
-    { "a" chr.to.int$ 'last.extra.num :=
-      "" 'extra.label :=
-      label 'last.label :=
-    }
-  if$
-  number.label #1 + 'number.label :=
-}
-
-FUNCTION {label.reverse}
-{ next.extra "b" =
-    { "a" 'extra.label := }
-    'skip$
-  if$
-  extra.label 'next.extra :=
-  extra.label
-  duplicate$ empty$
-    'skip$
-    { "{\natexlab{" swap$ * "}}" * }
-  if$
-  'extra.label :=
-  label extra.label * 'label :=
-}
-
-EXECUTE {initialize.extra.label.stuff}
-
-FUNCTION {forward.pass}
-{ type$ "control" = 'control.forward 'label.forward if$
-}
-
-ITERATE {forward.pass}
-
-FUNCTION {reverse.pass}
-{ type$ "control" = 'control.reverse 'label.reverse if$
-}
-
-REVERSE {reverse.pass}
-
-FUNCTION {sortkey.sort}
-{ sort.label
-  "    "
-  *
-  year.sort.key
-  field.or.null sortify
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {bib.sort.pass}
-{ type$ "control" = 'control.sort 'sortkey.sort if$
-}
-
-ITERATE {bib.sort.pass}
-
-SORT
-
-FUNCTION {init.bib.eprint}
-{
-    "\texttt {"
-  pop$
-  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
-  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
-  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
-  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
-}
-
-FUNCTION {init.bib.doi}
-{
-  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
-}
-
-FUNCTION {init.bib.hypertex}
-{
-  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
-  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
-  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
-  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
-  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
-  "\providecommand \@@startlink[1]{}%" write$ newline$
-  "\providecommand \@@endlink[0]{}%"   write$ newline$
-}
-
-FUNCTION {init.bib.namefont}
-{
-  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
-  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
-  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
-}
-
-FUNCTION {init.bib.quote}
-{
-  "\providecommand " bbl.enquote * " [1]{" *
-  "``" "''"
-  "#1" swap$ "}%" * * * * write$ newline$
-}
-
-FUNCTION {init.bib.ay}
-{
-  "\providecommand \natexlab [1]{#1}%"
-  write$ newline$
-}
-
-FUNCTION {init.bib.bibinfo}
-{
-  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-}
-
-FUNCTION {init.bib.lang}
-{
-  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
-}
-
-FUNCTION {init.bib.endbibitem}
-{
-  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
-  "\providecommand \bibitemStop [0]{}%"               write$ newline$
-  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
-  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
-}
-
-FUNCTION {init.bib.translation}
-{
-  "\providecommand \translation [1]{[#1]}%" write$ newline$
-}
-
-FUNCTION {warn.bib}
-{
-}
-
-FUNCTION {init.bib}
-{
-  warn.bib
-  "\makeatletter" write$ newline$
-  "\providecommand \@ifxundefined [1]{%"   write$ newline$
-  " \@ifx{#1\undefined}"                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifnum [1]{%"          write$ newline$
-  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifx [1]{%"            write$ newline$
-  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  init.bib.ay
-  init.bib.quote
-  init.bib.namefont
-  init.bib.hypertex
-  init.bib.eprint
-  init.bib.doi
-  init.bib.lang
-  init.bib.bibinfo
-  init.bib.translation
-  init.bib.endbibitem
-  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
-  "\let\auto at bib@innerbib\@empty"          write$ newline$
-  "%</preamble>" write$
-}
-
-FUNCTION {begin.bib}
-{
-  id.bst diagn.cmntlog
-  control.bib
-  preamble$ empty$
-    'skip$
-    { preamble$ write$ newline$ }
-  if$
-  "\begin{thebibliography}{"
-  number.label int.to.str$
-  * "}%" *
-  write$ newline$
-  init.bib
-}
-
-EXECUTE {begin.bib}
-
-EXECUTE {init.state.consts}
-
-ITERATE {call.type$}
-
-FUNCTION {end.bib}
-{ newline$
-  "\end{thebibliography}%"
-  write$ newline$
-}
-
-EXECUTE {end.bib}
-
-%% End of customized bst file
-%%
-%% End of file `aipauth4-1.bst'.

Added: trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-2.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-2.bst	                        (rev 0)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-2.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,3501 @@
+%%
+%% This is file `aipauth4-2.bst', and is a hand-edited version of aipauth4-1.bst
+ % ===============================================================
+ % IMPORTANT NOTICE:
+ % This file can be redistributed and/or modified under the terms
+ % of the LaTeX Project Public License Distributed from CTAN
+ % archives in directory macros/latex/base/lppl.txt; either
+ % version 1 of the License, or any later version.
+ % ===============================================================
+ %-------------------------------------------------------------------
+ % This bibliography style file is intended for texts in ENGLISH
+ % This is an author-year citation style bibliography. As such, it is
+ % non-standard LaTeX, and requires a special package file to function properly.
+ % Such a package is natbib.sty   by Patrick W. Daly
+ % The form of the \bibitem entries is
+ %   \bibitem[Jones et al.(1990)]{key}...
+ %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
+ % The essential feature is that the label (the part in brackets) consists
+ % of the author names, as they should appear in the citation, with the year
+ % in parentheses following. There must be no space before the opening
+ % parenthesis!
+ % With natbib v5.3, a full list of authors may also follow the year.
+ % In natbib.sty, it is possible to define the type of enclosures that is
+ % really wanted (brackets or parentheses), but in either case, there must
+ % be parentheses in the label.
+ % The \cite command functions as follows:
+ %   \citet{key} ==>>                Jones et al. (1990)
+ %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
+ %   \citep{key} ==>>                (Jones et al., 1990)
+ %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
+ %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
+ %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
+ %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
+ %   \citeauthor{key} ==>>           Jones et al.
+ %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
+ %   \citeyear{key} ==>>             1990
+ %---------------------------------------------------------------------
+
+FUNCTION {id.bst} {"aipnauth4-2.bst 2018-12-27 (MD) hand-edited version of apsauth4-1.bst"}
+ENTRY
+{
+    address
+    archive
+    archivePrefix
+    author
+    bookaddress
+    booktitle
+    chapter
+    collaboration
+    doi
+    edition
+    editor
+    eid
+    eprint
+    howpublished
+    institution
+    isbn
+    issn
+    journal
+    key
+    language
+    month
+    note
+    number
+    organization
+    pages
+    primaryClass
+    publisher
+    school
+    SLACcitation
+    series
+    title
+    translation
+    type
+    url
+    volume
+    year
+}{
+}{
+    label
+    extra.label sort.label
+    short.list
+}
+
+INTEGERS
+{
+  output.state before.all
+  after.word after.punctuation
+  after.sentence after.block
+}
+
+INTEGERS
+{
+  punctuation.state punctuation.no punctuation.space punctuation.yes
+}
+
+STRINGS { bibfield output.bibfield }
+
+FUNCTION {not}
+{   { #0 }
+    { #1 }
+  if$
+}
+
+FUNCTION {and}
+{   'skip$
+    { pop$ #0 }
+  if$
+}
+
+FUNCTION {or}
+{   { pop$ #1 }
+    'skip$
+  if$
+}
+
+FUNCTION {non.stop}
+{ duplicate$
+   "}" * add.period$
+   #-1 #1 substring$ "." =
+}
+
+INTEGERS { arith.mulitplier arith.multiplicand }
+
+FUNCTION {multiply}
+{
+  'arith.multiplicand :=
+  'arith.mulitplier :=
+  #0
+    { arith.mulitplier #0 > }
+    { arith.multiplicand +
+      arith.mulitplier #1 - 'arith.mulitplier :=
+    }
+  while$
+}
+
+FUNCTION {chr.to.hex}
+{
+  chr.to.int$
+  duplicate$ "0" chr.to.int$ -
+  duplicate$ duplicate$ #0 < swap$ #9 > or not
+    { swap$ pop$ }
+    { pop$
+      duplicate$ "A" chr.to.int$ -
+      duplicate$ duplicate$ #0 < swap$ #5 > or not
+        { swap$ pop$ #10 + }
+        { pop$
+          duplicate$ "a" chr.to.int$ -
+          duplicate$ duplicate$ #0 < swap$ #5 > or not
+            { swap$ pop$ #10 + }
+            { pop$
+              pop$ #-1
+            }
+          if$
+        }
+      if$
+    }
+  if$
+}
+
+INTEGERS { arith.accumulator }
+
+FUNCTION {str.to.hex}
+{ #0 'arith.accumulator :=
+    { duplicate$ empty$ not }
+    { duplicate$ #1 #1 substring$ chr.to.hex
+      duplicate$ #0 <
+        { pop$ pop$ ""
+        }
+        { arith.accumulator #16 multiply + 'arith.accumulator :=
+          #2 global.max$ substring$
+        }
+      if$
+    }
+  while$
+  pop$ arith.accumulator
+}
+
+FUNCTION {diagn.cmntlog}
+{
+  duplicate$ top$ "%" swap$ * write$ newline$
+}
+
+INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
+
+INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
+
+FUNCTION { control.init }
+{
+  #0
+  'control.key             :=
+  #0
+  #1 +
+  #8 +
+  'control.author :=
+  #0
+  'control.author.jnrlst   :=
+  #0
+  'control.author.dotless  :=
+  #0
+  'control.author.nospace  :=
+  #1
+  'control.author.initials :=
+  #0
+  'control.author.nocomma  :=
+  #0
+  'control.author.first    :=
+  #1
+  'control.author.reversed :=
+  #0
+  'control.editor :=
+  #-1
+  'control.title  :=
+  #0
+  'control.pages  :=
+  #0
+  'control.eprint :=
+  #1
+  'control.year   :=
+}
+
+FUNCTION {warning.dependency}
+{
+  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
+}
+
+FUNCTION {control.check}
+{
+  control.editor
+    {
+      "editor formatted same as author"
+      control.author.reversed {
+        duplicate$ #0 swap$ "reversed" warning.dependency
+        #0 'control.author.reversed :=
+      } 'skip$ if$
+      control.author.first {
+        duplicate$ #0 swap$ "first" warning.dependency
+        #0 'control.author.first :=
+      } 'skip$ if$
+      control.author.nocomma {
+        duplicate$ #0 swap$ "nocomma" warning.dependency
+        #0 'control.author.nocomma :=
+      } 'skip$ if$
+      pop$
+    } 'skip$ if$
+  control.author.reversed 'skip$
+    {
+      "not reversed"
+      control.author.nospace {
+        duplicate$ #0 swap$ "nospace" warning.dependency
+        #0 'control.author.nospace :=
+      } 'skip$ if$
+      control.author.jnrlst 'skip$ {
+        duplicate$ #1 swap$ "jnrlst" warning.dependency
+        #1 'control.author.jnrlst :=
+      } if$
+      control.author.initials {
+        duplicate$ ", initials" *
+        control.author.dotless {
+          duplicate$ #0 swap$ "dotless" warning.dependency
+          #0 'control.author.dotless :=
+        } 'skip$ if$
+        pop$
+      } 'skip$ if$
+      pop$
+    }
+  if$
+  control.author.initials 'skip$ {
+    "not initials"
+    control.author.nocomma {
+      duplicate$ #0 swap$ "nocomma" warning.dependency
+      #0 'control.author.nocomma :=
+    } 'skip$ if$
+    control.author.nospace {
+      duplicate$ #0 swap$ "nospace" warning.dependency
+      #0 'control.author.nospace :=
+    } 'skip$ if$
+    control.author.dotless 'skip$ {
+      duplicate$ #1 swap$ "dotless" warning.dependency
+      #1 'control.author.dotless :=
+    } if$
+    pop$
+  } if$
+}
+
+FUNCTION {control.parse}
+{
+  duplicate$ duplicate$ missing$
+    {
+      pop$ pop$ pop$
+    }
+    { empty$
+        {
+          pop$ #-1
+        }{
+          str.to.hex
+        }
+      if$
+      swap$ :=
+    }
+  if$
+}
+
+FUNCTION {control.dump}
+{
+  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
+  "{" swap$ * "}, " *
+  *
+}
+
+INTEGERS { decode.threshold }
+
+FUNCTION {control.decode}
+{
+  - duplicate$
+  #0 <
+    {
+      skip$ pop$ swap$ #0
+    }
+    {
+      swap$ pop$ swap$ #1
+    }
+  if$
+  swap$ :=
+}
+
+FUNCTION {control.author.decode}
+{
+  control.author
+  duplicate$ duplicate$ #0 < swap$ #128 < not or
+    {
+      int.to.str$ "(" swap$ * ")" *
+      "Control cannot interpret author " swap$ *
+      warning$
+    }{
+      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
+      'control.author.dotless  swap$ duplicate$ #32 control.decode
+      'control.author.nospace  swap$ duplicate$ #16 control.decode
+      'control.author.initials swap$ duplicate$  #8 control.decode
+      'control.author.nocomma  swap$ duplicate$  #4 control.decode
+      'control.author.first    swap$ duplicate$  #2 control.decode
+      'control.author.reversed swap$ duplicate$  #1 control.decode
+      duplicate$ #0 =
+        'skip$
+        {
+          "Control: residue of author"
+          "(" swap$ * ")" * *
+          warning$
+        }
+      if$
+      pop$
+    }
+  if$
+}
+
+FUNCTION {control.setup}
+{
+  type$ cite$ "{" swap$ * "}, " * *
+  "control.key"    key    control.dump *
+  "control.author" author control.dump *
+  "control.editor" editor control.dump *
+  "control.title"  title  control.dump *
+  "control.pages"  pages  control.dump *
+  "control.year"   year   control.dump *
+  "control.eprint" eprint control.dump *
+  top$
+  'control.key    key    control.parse
+  'control.author author control.parse
+  'control.editor editor control.parse
+  'control.title  title  control.parse
+  'control.pages  pages  control.parse
+  'control.year   year   control.parse
+  'control.eprint eprint control.parse
+  control.author.decode
+}
+
+FUNCTION {control.pass}
+{ type$ "control" = 'control.setup 'skip$ if$
+}
+
+FUNCTION {control.presort}
+{
+}
+
+FUNCTION {control.forward}
+{
+}
+
+FUNCTION {control.reverse}
+{
+}
+
+FUNCTION {control.sort}
+{
+}
+
+FUNCTION {control.longest.label}
+{
+}
+
+FUNCTION {control.key.bib}
+{
+  "Control: key "
+  control.key
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  pop$ *
+  diagn.cmntlog
+}
+
+FUNCTION {control.author.bib}
+{
+  "Control: author "
+  control.author "(" swap$ int.to.str$ * ")" * *
+  control.author.reversed { " reversed" * }{} if$
+  control.author.first    { " first"    * }{} if$
+  control.author.nocomma  { " nocomma"  * }{} if$
+  control.author.initials { " initials" * }{} if$
+  control.author.nospace  { " nospace"  * }{} if$
+  control.author.dotless  { " dotless"  * }{} if$
+  control.author.jnrlst   { " jnrlst"   * }{} if$
+  diagn.cmntlog
+}
+
+FUNCTION {control.editor.bib}
+{
+  "Control: editor formatted "
+  control.editor
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "identically to author"
+    } {
+      "differently from author"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.title.bib}
+{
+  "Control: production of article title "
+  control.title
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled"
+  } {
+    #0 > {
+      "required"
+    } {
+      "allowed"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.pages.bib}
+{
+  "Control: page "
+  control.pages
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "none"
+  } {
+    #0 > {
+      "range"
+    } {
+      "single"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.year.bib}
+{
+  "Control: year "
+  control.year
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "truncated"
+    } {
+      "verbatim"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.eprint.bib}
+{
+  "Control: production of eprint "
+  control.eprint
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  #0 < { "disabled" } { "enabled" } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.bib}
+{
+  control.key.bib
+  control.author.bib
+  control.editor.bib
+  control.title.bib
+  control.pages.bib
+  control.year.bib
+  control.eprint.bib
+}
+
+FUNCTION {init.state.consts}
+{
+  #0 'before.all        :=
+  #1 'after.word        :=
+  #2 'after.punctuation :=
+  #3 'after.sentence    :=
+  #4 'after.block       :=
+  #0 'punctuation.no    :=
+  #1 'punctuation.space :=
+  #2 'punctuation.yes   :=
+  "" 'bibfield          :=
+  "" 'output.bibfield   :=
+}
+
+STRINGS { s t}
+FUNCTION {block.punctuation}
+{ ""
+  "," *
+}
+
+FUNCTION {word.space}
+{
+  "\ "
+}
+
+FUNCTION {show.stackstring.one}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  duplicate$ "1(" swap$ * ")" * top$
+}
+
+FUNCTION {show.stackstring.two}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  swap$
+  duplicate$ "1(" swap$ * ")" * top$
+  swap$
+  duplicate$ "2(" swap$ * ")" * top$
+}
+
+FUNCTION {bibfield.command}{ "\bibfield "}
+
+FUNCTION {output.nonnull}
+{
+  swap$
+  output.state after.word =
+    {
+      block.punctuation *
+      word.space *
+    }
+    {
+      output.state after.punctuation =
+        {
+          word.space *
+        }
+        {
+          output.state after.block = output.state after.sentence = or
+            {
+              add.period$
+              "\EOS\ " *
+            }{
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  output.bibfield duplicate$ empty$ 'pop$
+    {
+      bibfield.command
+      " {" * swap$ * "} {" * swap$ * "}" *
+    }
+  if$
+  write$
+  bibfield 'output.bibfield := "" 'bibfield :=
+  output.state after.block =
+    {
+      newline$
+      "\newblock " write$
+    }
+    'skip$
+  if$
+  punctuation.state duplicate$
+  punctuation.yes 'punctuation.state :=
+  punctuation.no =
+    { pop$ before.all }
+    { punctuation.yes = { after.word }{ after.punctuation } if$ }
+  if$
+  'output.state :=
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+    {
+      pop$
+  "" 'bibfield :=
+    }
+    'output.nonnull
+  if$
+}
+
+FUNCTION {output.nopunct}
+{
+  punctuation.no 'punctuation.state :=
+  output.nonnull
+}
+
+FUNCTION {output.check}
+{ swap$
+  duplicate$ empty$
+    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
+    { swap$ pop$ output.nonnull }
+  if$
+}
+
+FUNCTION {bbl.open} { "\BibitemOpen " }
+
+FUNCTION {bbl.shut} { "\BibitemShut " }
+
+FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
+
+FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
+
+FUNCTION {bibitem.shut}
+{
+  non.stop
+    {
+  bibitem.shut.nostop *
+    }{
+  bibitem.shut.stop *
+    }
+  if$
+}
+
+FUNCTION {html.itag} {
+  "p"
+}
+
+FUNCTION {html.ltag} {
+  ""
+}
+
+FUNCTION {output.SLACcitation}
+{ SLACcitation empty$
+    'skip$
+    {
+      newline$
+      SLACcitation write$
+    }
+  if$
+}
+
+FUNCTION {fin.entry}
+{
+  bibitem.shut
+  write$
+    output.SLACcitation
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+    'skip$
+    { after.block 'output.state := }
+  if$
+}
+
+FUNCTION {new.block.comma}
+{
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block = output.state before.all = or
+    'skip$
+    { after.sentence 'output.state := }
+  if$
+}
+
+FUNCTION {new.sentence.comma}
+{
+}
+
+FUNCTION {sentence.or.colon}
+{
+  new.sentence
+}
+
+FUNCTION {add.blank}
+{
+  word.space *
+  before.all 'output.state :=
+}
+
+FUNCTION {no.blank.or.punct}
+{
+   "\hspace {0pt}" *
+   before.all 'output.state :=
+}
+
+FUNCTION {date.block}
+{
+  new.block.comma
+  skip$
+}
+
+STRINGS {z}
+FUNCTION {remove.dots}
+{
+  control.author.dotless {
+    'z :=
+    ""
+    { z empty$ not }
+    { z #1 #1 substring$
+      z #2 global.max$ substring$ 'z :=
+      duplicate$ "." = 'pop$
+        { * }
+      if$
+    }
+    while$
+  } 'skip$ if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+  swap$ empty$
+  and
+    'skip$
+    'new.block
+  if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+    { pop$ "" }
+    'skip$
+  if$
+}
+
+FUNCTION {emphasize}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+      "\emph {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bolden}
+{ duplicate$ empty$
+    { pop$ "" }
+    { "\textbf {" swap$ * "}" * }
+  if$
+}
+
+FUNCTION {bib.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bib.fname.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibfnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {cite.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\citenamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {tie.or.space.prefix}
+{ duplicate$ text.length$ #3 <
+    { "~" }
+    { word.space }
+  if$
+  swap$
+}
+
+FUNCTION {capitalize}
+{
+  "u" change.case$ "t" change.case$
+}
+
+FUNCTION {space.word}
+{ word.space swap$ * word.space * }
+
+ % Here are the language-specific definitions for explicit words.
+ % Each function has a name bbl.xxx where xxx is the English word.
+ % The language selected here is ENGLISH
+
+FUNCTION {bbl.and}
+{
+  "and"
+}
+
+FUNCTION {bbl.etal}
+{
+  "et~al."
+}
+
+FUNCTION {bbl.editors}
+{
+  "eds."
+}
+
+FUNCTION {bbl.editor}
+{
+  "ed."
+}
+
+FUNCTION {bbl.edby}
+{ "edited by" }
+
+FUNCTION {bbl.edition}
+{
+  "ed."
+}
+
+FUNCTION {bbl.volume}
+{
+  "vol."
+}
+
+FUNCTION {bbl.of}
+{ "of" }
+
+FUNCTION {bbl.number}
+{
+  "no."
+}
+
+FUNCTION {bbl.nr}
+{ "no." }
+
+FUNCTION {bbl.in}
+{ "in" }
+
+FUNCTION {bbl.pages}
+{
+  "pp."
+}
+
+FUNCTION {bbl.page}
+{
+  "p."
+}
+
+FUNCTION {bbl.eidpp}
+{ "pages" }
+
+FUNCTION {bbl.chapter}
+{
+  "chap."
+}
+
+FUNCTION {bbl.techrep}
+{
+  "Tech. Rep."
+}
+
+FUNCTION {bbl.mthesis}
+{ "Master's thesis" }
+
+FUNCTION {bbl.phdthesis}
+{ "Ph.D. thesis" }
+
+FUNCTION {bbl.first}
+{
+  "1st"
+}
+
+FUNCTION {bbl.second}
+{
+  "2nd"
+}
+
+FUNCTION {bbl.third}
+{
+  "3rd"
+}
+
+FUNCTION {bbl.fourth}
+{
+  "4th"
+}
+
+FUNCTION {bbl.fifth}
+{
+  "5th"
+}
+
+FUNCTION {bbl.st}
+{ "st" }
+
+FUNCTION {bbl.nd}
+{ "nd" }
+
+FUNCTION {bbl.rd}
+{ "rd" }
+
+FUNCTION {bbl.th}
+{ "th" }
+
+MACRO {jan} {"Jan."}
+
+MACRO {feb} {"Feb."}
+
+MACRO {mar} {"Mar."}
+
+MACRO {apr} {"Apr."}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"Jun."}
+
+MACRO {jul} {"Jul."}
+
+MACRO {aug} {"Aug."}
+
+MACRO {sep} {"Sep."}
+
+MACRO {oct} {"Oct."}
+
+MACRO {nov} {"Nov."}
+
+MACRO {dec} {"Dec."}
+
+FUNCTION {bbl.url.prefix}
+{
+  "\urlprefix "
+}
+
+FUNCTION {eng.ord}
+{ duplicate$ "1" swap$ *
+  #-2 #1 substring$ "1" =
+     { bbl.th * }
+     { duplicate$ #-1 #1 substring$
+       duplicate$ "1" =
+         { pop$ bbl.st * }
+         { duplicate$ "2" =
+             { pop$ bbl.nd * }
+             { "3" =
+                 { bbl.rd * }
+                 { bbl.th * }
+               if$
+             }
+           if$
+          }
+       if$
+     }
+   if$
+}
+
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
+MACRO {aa}{"Astron. \& Astrophys."}
+MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
+MACRO {aj} {"Astron. J."}
+MACRO {aph} {"Acta Phys."}
+MACRO {advp} {"Adv. Phys."}
+MACRO {ajp} {"Amer. J. Phys."}
+MACRO {ajm} {"Amer. J. Math."}
+MACRO {amsci} {"Amer. Sci."}
+MACRO {anofd} {"Ann. Fluid Dyn."}
+MACRO {am} {"Ann. Math."}
+MACRO {ap} {"Ann. Phys. (NY)"}
+MACRO {adp} {"Ann. Phys. (Leipzig)"}
+MACRO {ao} {"Appl. Opt."}
+MACRO {apl} {"Appl. Phys. Lett."}
+MACRO {app} {"Astroparticle Phys."}
+MACRO {apj} {"Astrophys. J."}
+MACRO {apjsup} {"Astrophys. J. Suppl."}
+MACRO {apss} {"Astrophys. Space Sci."}
+MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
+MACRO {baas} {"Bull. Amer. Astron. Soc."}
+MACRO {baps} {"Bull. Amer. Phys. Soc."}
+MACRO {cmp} {"Comm. Math. Phys."}
+MACRO {cpam} {"Commun. Pure Appl. Math."}
+MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
+MACRO {cpc} {"Comp. Phys. Comm."}
+MACRO {cqg} {"Class. Quant. Grav."}
+MACRO {cra} {"C. R. Acad. Sci. A"}
+MACRO {fed} {"Fusion Eng. \& Design"}
+MACRO {ft} {"Fusion Tech."}
+MACRO {grg} {"Gen. Relativ. Gravit."}
+MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
+MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
+MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
+MACRO {ip} {"Infrared Phys."}
+MACRO {irp} {"Infrared Phys."}
+MACRO {jap} {"J. Appl. Phys."}
+MACRO {jasa} {"J. Acoust. Soc. America"}
+MACRO {jcp} {"J. Comp. Phys."}
+MACRO {jetp} {"Sov. Phys.--JETP"}
+MACRO {jfe} {"J. Fusion Energy"}
+MACRO {jfm} {"J. Fluid Mech."}
+MACRO {jmp} {"J. Math. Phys."}
+MACRO {jne} {"J. Nucl. Energy"}
+MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
+MACRO {jnm} {"J. Nucl. Mat."}
+MACRO {jpc} {"J. Phys. Chem."}
+MACRO {jpp} {"J. Plasma Phys."}
+MACRO {jpsj} {"J. Phys. Soc. Japan"}
+MACRO {jsi} {"J. Sci. Instrum."}
+MACRO {jvst} {"J. Vac. Sci. \& Tech."}
+MACRO {nat} {"Nature"}
+MACRO {nature} {"Nature"}
+MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
+MACRO {nf} {"Nucl. Fusion"}
+MACRO {nim} {"Nucl. Inst. \& Meth."}
+MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
+MACRO {np} {"Nucl. Phys."}
+MACRO {npb} {"Nucl. Phys. B"}
+MACRO {nt/f} {"Nucl. Tech./Fusion"}
+MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
+MACRO {inc} {"Nuovo Cimento"}
+MACRO {nc} {"Nuovo Cimento"}
+MACRO {pf} {"Phys. Fluids"}
+MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
+MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
+MACRO {pl} {"Phys. Lett."}
+MACRO {pla} {"Phys. Lett. A"}
+MACRO {plb} {"Phys. Lett. B"}
+MACRO {prep} {"Phys. Rep."}
+MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
+MACRO {pp} {"Phys. Plasmas"}
+MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
+MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
+MACRO {prl} {"Phys. Rev. Lett."}
+MACRO {pr} {"Phys. Rev."}
+MACRO {physrev} {"Phys. Rev."}
+MACRO {pra} {"Phys. Rev. A"}
+MACRO {prb} {"Phys. Rev. B"}
+MACRO {prc} {"Phys. Rev. C"}
+MACRO {prd} {"Phys. Rev. D"}
+MACRO {pre} {"Phys. Rev. E"}
+MACRO {ps} {"Phys. Scripta"}
+MACRO {procrsl} {"Proc. Roy. Soc. London"}
+MACRO {rmp} {"Rev. Mod. Phys."}
+MACRO {rsi} {"Rev. Sci. Inst."}
+MACRO {science} {"Science"}
+MACRO {sciam} {"Sci. Am."}
+MACRO {sam} {"Stud. Appl. Math."}
+MACRO {sjpp} {"Sov. J. Plasma Phys."}
+MACRO {spd} {"Sov. Phys.--Doklady"}
+MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
+MACRO {spu} {"Sov. Phys.--Uspeki"}
+MACRO {st} {"Sky and Telesc."}
+ % End module: physjour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
+MACRO {aisr} {"Adv. Space Res."}
+MACRO {ag} {"Ann. Geophys."}
+MACRO {anigeo} {"Ann. Geofis."}
+MACRO {angl} {"Ann. Glaciol."}
+MACRO {andmet} {"Ann. d. Meteor."}
+MACRO {andgeo} {"Ann. d. Geophys."}
+MACRO {andphy} {"Ann. Phys.-Paris"}
+MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
+MACRO {atph} {"Atm\'osphera"}
+MACRO {aao} {"Atmos. Ocean"}
+MACRO {ass}{"Astrophys. Space Sci."}
+MACRO {atenv} {"Atmos. Environ."}
+MACRO {aujag} {"Aust. J. Agr. Res."}
+MACRO {aumet} {"Aust. Meteorol. Mag."}
+MACRO {blmet} {"Bound.-Lay. Meteorol."}
+MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
+MACRO {cch} {"Clim. Change"}
+MACRO {cdyn} {"Clim. Dynam."}
+MACRO {cbul} {"Climatol. Bull."}
+MACRO {cap} {"Contrib. Atmos. Phys."}
+MACRO {dsr} {"Deep-Sea Res."}
+MACRO {dhz} {"Dtsch. Hydrogr. Z."}
+MACRO {dao} {"Dynam. Atmos. Oceans"}
+MACRO {eco} {"Ecology"}
+MACRO {empl}{"Earth, Moon and Planets"}
+MACRO {envres} {"Environ. Res."}
+MACRO {envst} {"Environ. Sci. Technol."}
+MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
+MACRO {expa}{"Exper. Astron."}
+MACRO {geoint} {"Geofis. Int."}
+MACRO {geopub} {"Geofys. Publ."}
+MACRO {geogeo} {"Geol. Geofiz."}
+MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
+MACRO {gfd} {"Geophys. Fluid Dyn."}
+MACRO {geomag} {"Geophys. Mag."}
+MACRO {georl} {"Geophys. Res. Lett."}
+MACRO {grl} {"Geophys. Res. Lett."}
+MACRO {ga} {"Geophysica"}
+MACRO {gs} {"Geophysics"}
+MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
+MACRO {ijawp} {"Int. J. Air Water Pollut."}
+MACRO {ijc} {"Int. J. Climatol."}
+MACRO {ijrs} {"Int. J. Remote Sens."}
+MACRO {jam} {"J. Appl. Meteorol."}
+MACRO {jaot} {"J. Atmos. Ocean. Technol."}
+MACRO {jatp} {"J. Atmos. Terr. Phys."}
+MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
+MACRO {jce} {"J. Climate"}
+MACRO {jcam} {"J. Climate Appl. Meteor."}
+MACRO {jcm} {"J. Climate Meteor."}
+MACRO {jcy} {"J. Climatol."}
+MACRO {jgr} {"J. Geophys. Res."}
+MACRO {jga} {"J. Glaciol."}
+MACRO {jh} {"J. Hydrol."}
+MACRO {jmr} {"J. Mar. Res."}
+MACRO {jmrj} {"J. Meteor. Res. Japan"}
+MACRO {jm} {"J. Meteor."}
+MACRO {jpo} {"J. Phys. Oceanogr."}
+MACRO {jra} {"J. Rech. Atmos."}
+MACRO {jaes} {"J. Aeronaut. Sci."}
+MACRO {japca} {"J. Air Pollut. Control Assoc."}
+MACRO {jas} {"J. Atmos. Sci."}
+MACRO {jmts} {"J. Mar. Technol. Soc."}
+MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
+MACRO {josj} {"J. Oceanogr. Soc. Japan"}
+MACRO {jwm} {"J. Wea. Mod."}
+MACRO {lao} {"Limnol. Oceanogr."}
+MACRO {mwl} {"Mar. Wea. Log"}
+MACRO {mau} {"Mausam"}
+MACRO {meteor} {"``Meteor'' Forschungsergeb."}
+MACRO {map} {"Meteorol. Atmos. Phys."}
+MACRO {metmag} {"Meteor. Mag."}
+MACRO {metmon} {"Meteor. Monogr."}
+MACRO {metrun} {"Meteor. Rundsch."}
+MACRO {metzeit} {"Meteor. Z."}
+MACRO {metgid} {"Meteor. Gidrol."}
+MACRO {mwr} {"Mon. Weather Rev."}
+MACRO {nwd} {"Natl. Weather Dig."}
+MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
+MACRO {npg} {"Nonlin. Proc. Geophys."}
+MACRO {om} {"Oceanogr. Meteorol."}
+MACRO {ocac} {"Oceanol. Acta"}
+MACRO {oceanus} {"Oceanus"}
+MACRO {paleoc} {"Paleoceanography"}
+MACRO {pce} {"Phys. Chem. Earth"}
+MACRO {pmg} {"Pap. Meteor. Geophys."}
+MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
+MACRO {physzeit} {"Phys. Z."}
+MACRO {pps} {"Planet. Space Sci."}
+MACRO {pss} {"Planet. Space Sci."}
+MACRO {pag} {"Pure Appl. Geophys."}
+MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
+MACRO {quatres} {"Quat. Res."}
+MACRO {rsci} {"Radio Sci."}
+MACRO {rse} {"Remote Sens. Environ."}
+MACRO {rgeo} {"Rev. Geophys."}
+MACRO {rgsp} {"Rev. Geophys. Space Phys."}
+MACRO {rdgeo} {"Rev. Geofis."}
+MACRO {revmeta} {"Rev. Meteorol."}
+MACRO {sgp}{"Surveys in Geophys."}
+MACRO {sp} {"Solar Phys."}
+MACRO {ssr} {"Space Sci. Rev."}
+MACRO {tellus} {"Tellus"}
+MACRO {tac} {"Theor. Appl. Climatol."}
+MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
+MACRO {wrr} {"Water Resour. Res."}
+MACRO {weather} {"Weather"}
+MACRO {wafc} {"Weather Forecast."}
+MACRO {ww} {"Weatherwise"}
+MACRO {wmob} {"WMO Bull."}
+MACRO {zeitmet} {"Z. Meteorol."}
+ % End module: geojour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
+
+MACRO {appopt} {"Appl. Opt."}
+MACRO {bell} {"Bell Syst. Tech. J."}
+MACRO {ell} {"Electron. Lett."}
+MACRO {jasp} {"J. Appl. Spectr."}
+MACRO {jqe} {"IEEE J. Quantum Electron."}
+MACRO {jlwt} {"J. Lightwave Technol."}
+MACRO {jmo} {"J. Mod. Opt."}
+MACRO {josa} {"J. Opt. Soc. America"}
+MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
+MACRO {josab} {"J. Opt. Soc. Amer.~B"}
+MACRO {jdp} {"J. Phys. (Paris)"}
+MACRO {oc} {"Opt. Commun."}
+MACRO {ol} {"Opt. Lett."}
+MACRO {phtl} {"IEEE Photon. Technol. Lett."}
+MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
+MACRO {sse} {"Solid-State Electron."}
+MACRO {sjot} {"Sov. J. Opt. Technol."}
+MACRO {sjqe} {"Sov. J. Quantum Electron."}
+MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
+MACRO {stph} {"Sov. Phys.--Techn. Phys."}
+MACRO {stphl} {"Sov. Techn. Phys. Lett."}
+MACRO {vr} {"Vision Res."}
+MACRO {zph} {"Z. f. Physik"}
+MACRO {zphb} {"Z. f. Physik~B"}
+MACRO {zphd} {"Z. f. Physik~D"}
+
+MACRO {CLEO} {"CLEO"}
+MACRO {ASSL} {"Adv. Sol.-State Lasers"}
+MACRO {OSA}  {"OSA"}
+ % End module: photjour.mbs
+%% Copyright 1994-2007 Patrick W Daly
+MACRO {acmcs} {"ACM Comput. Surv."}
+MACRO {acta} {"Acta Inf."}
+MACRO {cacm} {"Commun. ACM"}
+MACRO {ibmjrd} {"IBM J. Res. Dev."}
+MACRO {ibmsj} {"IBM Syst.~J."}
+MACRO {ieeese} {"IEEE Trans. Software Eng."}
+MACRO {ieeetc} {"IEEE Trans. Comput."}
+MACRO {ieeetcad}
+ {"IEEE Trans. Comput. Aid. Des."}
+MACRO {ipl} {"Inf. Process. Lett."}
+MACRO {jacm} {"J.~ACM"}
+MACRO {jcss} {"J.~Comput. Syst. Sci."}
+MACRO {scp} {"Sci. Comput. Program."}
+MACRO {sicomp} {"SIAM J. Comput."}
+MACRO {tocs} {"ACM Trans. Comput. Syst."}
+MACRO {tods} {"ACM Trans. Database Syst."}
+MACRO {tog} {"ACM Trans. Graphic."}
+MACRO {toms} {"ACM Trans. Math. Software"}
+MACRO {toois} {"ACM Trans. Office Inf. Syst."}
+MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
+MACRO {tcs} {"Theor. Comput. Sci."}
+
+MACRO {jhep} {"J. High Energy Phys."}
+MACRO {jcap} {"J. Cosmol. Astropart. Phys."}
+MACRO {jinst} {"J. Instrum."}
+MACRO {jstat} {"J. Stat. Mech.: Theory Exp."}
+
+FUNCTION {bibinfo.command} { "\bibinfo " }
+
+FUNCTION {bibinfo.check}
+{ swap$
+  duplicate$ missing$
+    {
+      pop$
+      pop$ ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ pop$
+        }{
+          swap$
+          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {bibinfo.warn}
+{ swap$
+  duplicate$ missing$
+    {
+      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
+      ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ "empty " swap$ * " in " * cite$ * warning$
+        }{
+          swap$
+          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {archiv.base}
+{
+  "https://arxiv.org/abs"
+}
+
+FUNCTION {archiv.prefix.base}
+{
+  "arXiv"
+}
+
+FUNCTION {eprint.command}
+{
+  "\Eprint "
+}
+
+FUNCTION {format.eprint.controlled}
+{
+  eprint duplicate$ empty$
+  control.eprint #1 =
+  or
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.eprint}
+{
+  eprint duplicate$ empty$
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.translation}
+{ translation duplicate$ empty$
+    'skip$
+    { ""
+      "\translation{" * swap$ * "}" *
+      punctuation.space 'punctuation.state :=
+    }
+  if$
+}
+
+FUNCTION {format.url}
+{
+  url duplicate$ empty$
+    { pop$ "" }
+    {
+      "\url "
+      "{" * swap$ * "}" *
+    }
+  if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+FUNCTION {check.speaker}
+{ key empty$ 'skip$
+  { key nameptr int.to.str$ =
+    {
+      bolden
+    }
+      'skip$
+    if$
+  }
+  if$
+}
+
+
+STRINGS  { bibinfo}
+
+FUNCTION {format.names.fname}
+{
+  control.author.initials {
+    control.author.dotless {
+      control.author.nospace {
+        "f{}"
+      } {
+        "f{~}"
+      } if$
+    } {
+      control.author.nospace {
+        "f{.}."
+      } {
+        "f."
+      } if$
+    } if$
+  } {
+    "ff"
+  } if$
+}
+
+FUNCTION {bracify}
+{
+  "{" swap$ * "}" *
+}
+
+FUNCTION {name.comma}
+{
+  control.author.nocomma 'skip$ { "," swap$ * } if$
+}
+
+FUNCTION {format.names.format.onefont}
+{
+  "{vv~}{ll}"
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+    {
+      control.author.initials {
+        "f"
+        control.author.dotless 'skip$ {
+          "." *
+        } if$
+        "~" *
+      } {
+        "ff"
+      } if$
+      bracify
+      swap$
+    } {
+      format.names.fname
+      " " swap$ *
+      name.comma
+      bracify
+    }
+  if$
+  "jj"
+  " " swap$ *
+  name.comma
+  bracify
+  control.author.jnrlst 'skip$ 'swap$ if$
+  * *
+}
+
+FUNCTION {format.names.onefont}
+{
+  s nameptr format.names.format.onefont format.name$
+  remove.dots
+  bib.name.font
+}
+
+FUNCTION {format.names.morfont}
+{ s nameptr
+  "{vv~}{ll}" format.name$ bib.name.font
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+  {
+    s nameptr
+    control.author.initials {
+      "f"                        % default: name + surname + comma junior
+    } {
+      "ff"
+    } if$
+    control.author.dotless 'skip$ {
+      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
+    } if$
+    bracify
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    swap$
+    *
+    s nameptr
+    "{jj}" format.name$ duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } {
+    "," *
+    s nameptr
+    format.names.fname
+    "jj"
+    " "
+    name.comma
+    control.author.jnrlst {
+      swap$ * skip$
+    } {
+      skip$ * swap$
+    } if$
+    bracify swap$ bracify swap$
+    *
+    format.name$
+    remove.dots
+    duplicate$ empty$ 'skip$
+      { bib.fname.font " " swap$ * }
+      if$
+  } if$
+  *
+}
+
+FUNCTION {names.punctuate}
+{
+  "," *
+  " " *
+}
+
+FUNCTION {format.names}
+{ 'bibinfo :=
+  duplicate$ empty$ { pop$ "" } {
+    duplicate$ num.names$
+    duplicate$ 'numnames :=
+    'namesleft :=
+    's :=
+    #1 'nameptr :=
+    ""
+      { namesleft #0 > }
+      {
+      format.names.morfont
+        bibinfo bibinfo.check
+        type$ "presentation" =
+          'check.speaker
+          'skip$
+        if$
+        't :=
+        nameptr #1 > not
+          {
+            t *
+          } {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              } {
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " *
+                    bbl.etal
+                    emphasize
+                    *
+                  } {
+                    bbl.and
+                    word.space * *
+                    t *
+                  }
+                if$
+              }
+            if$
+          }
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+  } if$
+}
+
+FUNCTION {format.names.ed.onefont}
+{
+    s nameptr
+    control.author.initials {
+      control.author.dotless {
+        control.author.nospace {
+          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
+        } {
+          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
+        } if$
+      } {
+        control.author.nospace {
+          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
+        }{
+          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
+        } if$
+      } if$
+    } {
+      "{ff~}{vv~}{ll}{, jj}"
+    } if$
+    format.name$
+    remove.dots
+    bib.name.font
+}
+
+FUNCTION {format.names.ed.morfont}
+{
+  control.author.reversed { %
+    control.author.initials { %
+      control.author.dotless { %
+        s nameptr
+        control.author.nospace { % nm-rvx nm-rvcx
+          "{f{}}"
+        } { % nm-rv
+          "{f{~}}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        remove.dots
+        duplicate$ empty$ 'skip$
+          { bib.fname.font " " swap$ * }
+        if$
+      } { % !control.author.dotless
+        s nameptr
+        control.author.nospace { % nm-rvv
+          "{ff}"
+        } { % nm-rev nm-rev1
+          "{f.}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        duplicate$ empty$ 'skip$
+          { bib.fname.font ", " swap$ * }
+        if$
+      } if$
+    } { % Full names !control.author.initials  nm-revf nm-revv1
+      s nameptr
+      "{ff}"
+      format.name$ duplicate$ empty$ 'skip$
+        { tie.or.space.prefix bib.fname.font swap$ * }
+      if$
+      s nameptr
+      "{vv~}{ll}" format.name$ bib.name.font *
+      s nameptr
+      "{jj}" format.name$
+      duplicate$ empty$ 'skip$
+        { bib.fname.font ", " swap$ * }
+      if$
+    } if$
+  } { % !control.author.reversed nm-init
+    s nameptr
+    "{f.}"
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    s nameptr
+    "{vv~}{ll}" format.name$ bib.name.font *
+    s nameptr
+    "{jj}" format.name$
+    duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } if$
+  *
+}
+
+FUNCTION {format.names.ed}
+{
+  control.editor #0 > {
+    format.names
+  } {
+    'bibinfo :=
+    duplicate$ empty$ 'skip$ {
+    's :=
+    "" 't :=
+    #1 'nameptr :=
+    s num.names$ 'numnames :=
+    numnames 'namesleft :=
+      { namesleft #0 > }
+      {
+       format.names.ed.morfont
+        bibinfo bibinfo.check
+        't :=
+        nameptr #1 >
+          {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              }{
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " * bbl.etal emphasize *
+                  }{
+                   bbl.and
+                    space.word * t *
+                  }
+                if$
+              }
+            if$
+          }
+          't
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+    } if$
+  } if$
+}
+
+FUNCTION {format.key}
+{ empty$
+    { key field.or.null }
+    { "" }
+  if$
+}
+
+FUNCTION {format.authors}
+{ author "author" format.names
+  duplicate$ empty$ 'skip$
+    { collaboration "collaboration" bibinfo.check
+      duplicate$ empty$ 'skip$
+        { " (" swap$ * ")" * }
+      if$
+      *
+    }
+  if$
+  "author" 'bibfield :=
+}
+
+FUNCTION {get.bbl.editor}
+{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
+}
+
+FUNCTION {format.editors}
+{ editor "editor" format.names duplicate$ empty$ 'skip$
+    {
+      "," *
+      word.space *
+      get.bbl.editor
+      *
+    }
+  if$
+}
+
+FUNCTION {format.isbn.output}
+{
+}
+
+FUNCTION {format.issn.output}
+{ 
+}
+
+FUNCTION {doi.base}
+{
+  "https://doi.org/"
+}
+
+FUNCTION {doi.base.command}
+{
+  "\doibase "
+}
+
+FUNCTION {noop.command}
+{
+  "\href at noop "
+}
+
+FUNCTION {href.command}
+{
+  "\href "
+}
+
+FUNCTION {link.tag.open}
+{
+  doi duplicate$ empty$
+    {
+      pop$
+      url duplicate$ empty$
+        {
+          pop$ "" noop.command
+        }{
+          href.command
+        }
+      if$
+    }
+    {
+      "https://doi.org/" swap$ * 
+      href.command
+    }
+  if$
+  "{" * swap$ * "} {" *
+}
+
+FUNCTION {link.tag.shut}
+{
+  "}"
+}
+
+FUNCTION {link.open}
+{
+  link.tag.open output.nopunct
+}
+
+FUNCTION {link.shut}
+{
+  link.tag.shut *
+}
+
+FUNCTION {add.doi}
+{
+  link.tag.open swap$ * link.tag.shut *
+}
+
+FUNCTION {select.language}
+{ duplicate$ empty$
+    'pop$
+    { language empty$
+        'skip$
+        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
+      if$
+    }
+    if$
+}
+
+FUNCTION {format.note}
+{
+ note empty$
+    { "" }
+    { note #1 #1 substring$
+      duplicate$ "{" =
+        'skip$
+        {
+          output.state after.word = output.state after.punctuation = or
+            { "l" }
+            { "u" }
+          if$ change.case$
+        }
+      if$
+      note #2 global.max$ substring$ * "note" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {bbl.enquote}
+{
+  "\enquote "
+}
+
+FUNCTION {string.enquote}
+{
+  punctuation.no 'punctuation.state :=
+  non.stop {
+    block.punctuation
+  } { "" } if$
+   swap$ pop$
+  *
+  bbl.enquote "{" * swap$ * "}" *
+  word.space *
+}
+
+FUNCTION {format.title}
+{ title
+  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
+  duplicate$ "title" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      string.enquote
+      select.language
+    }
+  if$
+}
+
+FUNCTION {end.quote.title}
+{ title empty$
+    'skip$
+    { before.all 'output.state := }
+  if$
+}
+
+FUNCTION {format.name.apply}
+{
+  s nameptr
+  "{vv~}{ll}"
+  format.name$
+  cite.name.font
+}
+
+FUNCTION {format.full.names}
+{
+  's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                {
+                  't :=
+                }
+                'pop$
+              if$
+              t "others" =
+                {
+                  " " * bbl.etal
+                  emphasize *
+                }{
+                  numnames #2 > { "," * }{ skip$ } if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {make.full.names}
+{
+  key editor author
+  type$ "proceedings" =
+  type$ "book"        =
+  type$ "inbook"      =
+  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
+  duplicate$ empty$
+    { pop$
+      duplicate$ empty$
+        { pop$
+          duplicate$ empty$
+            { pop$
+              cite$ #1 #3 substring$
+            }{
+              skip$
+            }
+          if$
+        }
+        { swap$ pop$ format.full.names }
+      if$
+    }
+    { swap$ pop$ swap$ pop$ format.full.names }
+  if$
+}
+
+FUNCTION {year.bibitem}
+{
+  year duplicate$ empty$
+  { pop$ ""
+  }{
+    skip$
+  } if$
+  extra.label *
+}
+
+FUNCTION {output.bibitem}
+{
+  newline$
+  ""
+  label
+  * ")" *
+   make.full.names duplicate$ short.list =
+   { pop$ }{ * } if$
+   bracify
+  "[" swap$ * "]" *
+  cite$ bracify "%" *
+  *
+  "\bibitem "
+  swap$ *
+  write$ newline$
+  "  "
+  duplicate$ bbl.open * write$ newline$
+  before.all 'output.state :=
+  punctuation.yes 'punctuation.state :=
+}
+
+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 {word.in}
+{
+  bbl.in
+  word.space *
+}
+
+FUNCTION {date.encapsulate}
+{
+  duplicate$ empty$
+    'skip$
+    {
+      before.all 'output.state :=
+      " (" swap$ * ")" *
+    }
+  if$
+}
+
+FUNCTION {format.date}
+{
+  year "year" bibinfo.check duplicate$ empty$
+    {
+    }
+    'skip$
+  if$
+  extra.label *
+  date.encapsulate
+}
+
+FUNCTION {format.date.output.check}
+{
+ format.date
+ "year" output.check
+}
+
+FUNCTION {format.date.output}
+{
+  format.date.output.check
+}
+
+FUNCTION {format.btitle}
+{
+  booktitle duplicate$ empty$ { pop$
+      title
+  } 'skip$ if$
+  "title" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {either.or.check}
+{ empty$
+    'pop$
+    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+  if$
+}
+
+FUNCTION {editor.check.book}
+{ editor empty$ 'skip$
+    {
+      "can't use both author and editor fields in " cite$ *
+      ": try using @inbook instead" *
+      warning$
+    }
+  if$
+}
+
+FUNCTION {format.bvolume}
+{ volume duplicate$ empty$
+    { pop$ "" }
+    {
+      "volume and number" number either.or.check
+      bbl.volume
+      capitalize
+      swap$
+      tie.or.space.prefix "volume" bibinfo.check * *
+      series "series" bibinfo.check duplicate$ empty$ 'pop$
+        {
+          ", "
+          * swap$ *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.number}
+{
+  bbl.number
+  output.state after.word = output.state after.punctuation = or
+  #1 or
+  #0 and
+    'skip$
+    { capitalize }
+  if$
+  number tie.or.space.prefix "number" bibinfo.check * *
+}
+
+FUNCTION {format.number.series}
+{ volume empty$
+    { number empty$
+        { series field.or.null }
+        {
+          series empty$
+            {
+              number "number" bibinfo.check
+            }{
+              format.number
+              series "series" bibinfo.check
+              word.space * swap$ *
+            }
+          if$
+        }
+      if$
+    }
+    { "" }
+  if$
+}
+
+FUNCTION {is.num}
+{ chr.to.int$
+  duplicate$ "0" chr.to.int$ < not
+  swap$ "9" chr.to.int$ > not and
+}
+
+FUNCTION {extract.num}
+{ duplicate$ 't :=
+  "" 's :=
+  { t empty$ not }
+  { t #1 #1 substring$
+    t #2 global.max$ substring$ 't :=
+    duplicate$ is.num
+      { s swap$ * 's := }
+      { pop$ "" 't := }
+    if$
+  }
+  while$
+  s empty$
+    'skip$
+    { pop$ s }
+  if$
+}
+
+FUNCTION {convert.edition}
+{ extract.num "l" change.case$ 's :=
+  s "first" = s "1" = or
+    { bbl.first 't := }
+    { s "second" = s "2" = or
+        { bbl.second 't := }
+        { s "third" = s "3" = or
+            { bbl.third 't := }
+            { s "fourth" = s "4" = or
+                { bbl.fourth 't := }
+                { s "fifth" = s "5" = or
+                    { bbl.fifth 't := }
+                    { s #1 #1 substring$ is.num
+                        { s
+                            eng.ord
+                        't := }
+                        { edition 't := }
+                      if$
+                    }
+                  if$
+                }
+              if$
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  t
+}
+
+FUNCTION {format.edition}
+{ edition duplicate$ empty$ 'skip$
+    {
+      convert.edition
+      output.state after.word = output.state after.punctuation = or
+        { "l" }
+        { "t" }
+      if$ change.case$
+      "edition" bibinfo.check
+      word.space * bbl.edition *
+    }
+  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 duplicate$ empty$
+    'skip$
+    { duplicate$ multi.page.check
+        {
+          bbl.pages swap$
+          n.dashify
+        }{
+          bbl.page swap$
+        }
+      if$
+      tie.or.space.prefix
+      "pages" bibinfo.check
+      * *
+    }
+  if$
+}
+
+FUNCTION {first.page}
+{ 't :=
+  ""
+    {  t empty$ not t #1 #1 substring$ "-" = not and }
+    { t #1 #1 substring$ *
+      t #2 global.max$ substring$ 't :=
+    }
+  while$
+}
+
+FUNCTION {format.book.pages}
+{
+  pages duplicate$ empty$ 'skip$
+    {
+      "pages" bibinfo.check word.space bbl.pages * *
+    }
+  if$
+}
+
+FUNCTION {volnum.punct}
+{
+          ","
+  word.space *
+}
+
+FUNCTION {format.journal.pages}
+{ pages duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$
+        { pop$ pop$ format.pages }
+        { volnum.punct *
+          swap$
+          control.pages duplicate$ #0 < {
+            pop$ pop$
+          }{
+            #0 >
+            {
+              n.dashify
+            }{
+              first.page
+            } if$
+          } if$
+          "pages" bibinfo.check
+          *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.journal.eid}
+{ eid "eid" bibinfo.check
+  duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$ 'skip$
+        { volnum.punct * }
+      if$
+      swap$ *
+    }
+  if$
+}
+
+FUNCTION {eid.or.pages}
+{
+  eid empty$
+    { format.journal.pages }
+    { format.journal.eid }
+  if$
+}
+
+FUNCTION {format.ser.vol.num}
+{
+  series "series" bibinfo.check output
+  volume field.or.null
+  duplicate$ empty$ 'skip$
+    {
+      "volume" bibinfo.check
+    }
+  if$
+  bolden
+}
+
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+    {
+    format.pages
+    }
+    { type empty$
+        {
+          bbl.chapter
+          capitalize
+        }{
+          type
+          capitalize
+          "type" bibinfo.check
+        }
+      if$
+      chapter tie.or.space.prefix
+      "chapter" bibinfo.check
+      * *
+      pages empty$
+        'skip$
+        { ", " * format.pages * }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.booktitle}
+{
+  booktitle duplicate$ "booktitle" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      pop$ emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {format.editor.in}
+{
+  editor "editor" format.names.ed duplicate$ empty$ 'skip$
+    {
+      bbl.edby
+      word.space * swap$ *
+    }
+  if$
+}
+
+FUNCTION {output.article.booktitle}
+{
+  format.booktitle
+      "booktitle" 'bibfield :=
+  output
+  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
+    {
+      "address" 'bibfield :=
+      output.nonnull after.punctuation 'output.state :=
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      format.editor.in "editor" bibinfo.check output
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle.inbook}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      author empty$ 'skip$
+        { format.editor.in "editor" bibinfo.check output }
+    if$
+    }
+  if$
+}
+
+FUNCTION {format.thesis.type}
+{ type duplicate$ empty$
+    'pop$
+    { swap$ pop$
+      "t" change.case$ "type" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {format.tr.number}
+{ number "number" bibinfo.check
+  type duplicate$ empty$
+    { pop$ bbl.techrep }
+    'skip$
+  if$
+  "type" bibinfo.check
+  swap$ duplicate$ empty$
+    { pop$ "t" change.case$ }
+    { tie.or.space.prefix * * }
+  if$
+}
+
+FUNCTION {format.article.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.book.crossref}
+{ volume duplicate$ empty$
+    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+      pop$ word.in
+    }
+    { bbl.volume
+      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
+    }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.org.or.pub}
+{ 't :=
+  ""
+  address "address" bibinfo.check
+  duplicate$ empty$
+    { pop$ t }
+    { t duplicate$ empty$
+        { pop$ }
+        {
+          "," word.space *
+          * swap$ *
+        }
+      if$
+    }
+  if$
+  *
+  year duplicate$ empty$
+    {
+      "empty year in " cite$ *
+      warning$
+      pop$ ""
+    }
+    'skip$
+  if$
+  duplicate$ empty$
+    { pop$ }
+    {
+      "year" bibinfo.check
+      swap$
+      duplicate$ empty$
+        { pop$ }
+        {
+          "," *
+          word.space *
+          swap$ *
+        }
+      if$
+    }
+  if$
+  duplicate$ empty$ 'skip$ {
+    ""
+    "(" * swap$ * ")" *
+    after.punctuation 'output.state :=
+    punctuation.space 'punctuation.state :=
+  } if$
+}
+
+FUNCTION {format.publisher.address}
+{ publisher "publisher" bibinfo.warn format.org.or.pub
+}
+
+FUNCTION {format.organization.address}
+{ organization "organization" bibinfo.check format.org.or.pub
+}
+
+FUNCTION {format.organization.publisher.address}
+{
+  publisher empty$
+    { format.organization.address }
+    { organization "organization" bibinfo.check output
+      format.publisher.address
+    }
+  if$
+}
+
+FUNCTION {format.school.address.output}
+{
+  school  "school"  bibinfo.warn
+  address "address" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      swap$
+      duplicate$ empty$ 'skip$
+        {
+          ", " *
+        }
+      if$
+      swap$
+    }
+  if$
+  *
+  output
+}
+
+FUNCTION {article.title.produce}
+{
+  control.title duplicate$ #0 <
+  { pop$
+  }{
+    format.title
+    "title" 'bibfield :=
+    swap$ #0 >
+    {
+      "title" output.check
+    }{
+      output
+    } if$
+    new.block.comma
+  } if$
+}
+
+FUNCTION {control}
+{
+}
+
+FUNCTION {article}
+{ output.bibitem
+  format.authors
+  booktitle empty$ {
+      "author" output.check
+    }{ output } if$
+  author format.key output
+  new.block.comma
+  article.title.produce
+  output.article.booktitle
+  crossref missing$
+    {
+      link.open
+      journal
+      "journal" bibinfo.warn
+      "journal" 'bibfield :=
+      output
+      add.blank
+      format.ser.vol.num
+      output
+      eid.or.pages
+      format.date.output.check
+      pages empty$ {
+      doi output
+      } 'skip$ if$
+      link.shut
+    }{
+      format.article.crossref output.nonnull
+      format.pages output
+    }
+  if$
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint.controlled output
+  format.translation output
+  fin.entry
+}
+
+FUNCTION {book}
+{ output.bibitem
+  author empty$
+    {
+      format.editors "author and editor" output.check
+      editor format.key output
+    }{
+      format.authors output.nonnull
+%     crossref missing$ { editor.check.book } 'skip$ if$
+    }
+  if$
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+  format.edition output
+  author empty$
+    {
+    }
+    {
+      format.editor.in output
+      editor format.key output
+    }
+  if$
+  format.number.series output
+  crossref missing$
+    {
+      format.bvolume output
+      new.block.comma
+      format.publisher.address output
+    }{
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  format.isbn.output
+  format.chapter.pages
+  output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {booklet}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  address "address" bibinfo.check output
+  format.date.output
+  format.isbn.output
+  format.book.pages output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {footnote}
+{ output.bibitem
+  format.note output
+  fin.entry
+}
+
+FUNCTION {inbook}
+{ output.bibitem
+  author empty$
+    {
+       format.editors "editor" output.check
+       editor format.key output
+    }{
+       format.authors output.nonnull
+       author format.key output
+    }
+  if$
+  new.block.comma
+
+  format.title output
+  new.block.comma
+
+  crossref missing$
+    {
+      format.in.ed.booktitle.inbook
+      format.publisher.address output
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.edition output
+      new.block.comma
+    }{
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  crossref missing$
+    { format.isbn.output }
+    'skip$
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {incollection}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.publisher.address output
+      format.edition output
+      format.chapter.pages output
+      format.isbn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {inproceedings}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.organization.publisher.address output
+      format.chapter.pages output
+      format.isbn.output
+      format.issn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {conference} { inproceedings }
+FUNCTION {manual}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      organization "organization" bibinfo.check output
+      address "address" bibinfo.check output
+  format.edition output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {mastersthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.mthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {misc}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {phdthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.phdthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {presentation}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  format.organization.address "organization and address" output.check
+  month "month" output.check
+  year "year" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  new.sentence
+  type missing$ 'skip$
+    {"(" type capitalize * ")" * output}
+  if$
+  fin.entry
+}
+
+FUNCTION {proceedings}
+{ output.bibitem
+  format.editors output
+  editor format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      bookaddress "address" bibinfo.check output
+  format.number.series output
+  format.bvolume output
+  format.organization.publisher.address output
+  format.isbn.output
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {techreport}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  format.tr.number
+  output.nonnull
+  institution "institution" bibinfo.warn
+  format.org.or.pub output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {unpublished}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note "note" output.check
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {dataset}
+{ 
+  output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  article.title.produce
+  doi missing$
+  url missing$ not and
+  {
+    link.open
+    url "url" output.check
+    link.shut
+  }
+  {
+    link.open
+    doi "doi" output.check
+    link.shut
+  } if$
+  format.date.output
+  format.note output
+  fin.entry
+}
+
+FUNCTION {default.type} { misc }
+
+READ
+
+EXECUTE {control.init}
+
+ITERATE {control.pass}
+
+EXECUTE {control.check}
+
+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 {cite.name.font.apply}
+{
+  word.space * bbl.etal
+  emphasize
+  *
+}
+
+FUNCTION {format.lab.names}
+{ 's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { 
+      format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          nameptr
+          #2
+          =
+          numnames
+          #3
+          > and
+            { 
+              "others" 't :=
+              #1 'namesleft := 
+            }
+            'skip$
+          if$
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                { 't := }
+                { pop$ }
+              if$
+              t "others" =
+                {
+                  cite.name.font.apply
+                }{
+                  numnames #2 > { "," * } 'skip$ if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {author.key.label}
+{ author empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {author.editor.key.label}
+{ author empty$
+    { editor empty$
+        { key empty$
+            { cite$ #1 #3 substring$ }
+            'key
+          if$
+        }
+        { editor format.lab.names }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {editor.key.label}
+{ editor empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { editor format.lab.names }
+  if$
+}
+
+FUNCTION {calc.short.authors}
+{ type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.key.label
+    { type$ "proceedings" =
+        'editor.key.label
+        'author.key.label
+      if$
+    }
+  if$
+  'short.list :=
+}
+
+FUNCTION {calc.label}
+{
+  calc.short.authors
+  short.list
+  year duplicate$ empty$
+    {
+      pop$ ""
+    }{
+      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
+    }
+  if$
+  "(" swap$ *
+  * 'label :=
+}
+
+FUNCTION {sort.format.names}
+{ 's :=
+  #1 'nameptr :=
+  ""
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { s nameptr
+      "{ll{ }}"
+      control.author.initials {
+        "{  f{ }}"  *
+      }{
+        "{  ff{ }}" *
+      } if$
+      "{  jj{ }}" *
+      format.name$ 't :=
+      nameptr #1 >
+        {
+          "   "  *
+          namesleft #1 = t "others" = and
+            { "zzzzz" * }
+            {
+              t sortify *
+            }
+          if$
+        }
+        { 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 {author.editor.sort}
+{ author empty$
+    { 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 {year.sort.key}
+{
+  year
+}
+
+FUNCTION {editor.sort}
+{ editor empty$
+    { key empty$
+        { "to sort, need editor or key in " cite$ * warning$
+          ""
+        }
+        { key sortify }
+      if$
+    }
+    { editor sort.format.names }
+  if$
+}
+
+INTEGERS { seq.num }
+
+FUNCTION {init.seq}
+{ #0 'seq.num :=}
+
+EXECUTE {init.seq}
+
+FUNCTION {int.to.fix}
+{ "000000000" swap$ int.to.str$ *
+  #-1 #10 substring$
+}
+
+FUNCTION {label.presort}
+{
+  calc.label
+  label sortify
+  "    "
+  *
+  type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.sort
+    { type$ "proceedings" =
+        'editor.sort
+        'author.sort
+      if$
+    }
+  if$
+  #1 entry.max$ substring$
+  'sort.label :=
+  sort.label
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {presort.pass}
+{ type$ "control" = 'control.presort 'label.presort if$
+}
+
+ITERATE {presort.pass}
+
+SORT
+
+STRINGS { last.label next.extra }
+
+INTEGERS { last.extra.num number.label }
+
+FUNCTION {initialize.extra.label.stuff}
+{ #0 int.to.chr$ 'last.label :=
+  "" 'next.extra :=
+  #0 'last.extra.num :=
+  #0 'number.label :=
+}
+
+FUNCTION {label.forward}
+{
+  last.label label =
+    { last.extra.num #1 + 'last.extra.num :=
+      last.extra.num int.to.chr$ 'extra.label :=
+    }
+    { "a" chr.to.int$ 'last.extra.num :=
+      "" 'extra.label :=
+      label 'last.label :=
+    }
+  if$
+  number.label #1 + 'number.label :=
+}
+
+FUNCTION {label.reverse}
+{ next.extra "b" =
+    { "a" 'extra.label := }
+    'skip$
+  if$
+  extra.label 'next.extra :=
+  extra.label
+  duplicate$ empty$
+    'skip$
+    { "{\natexlab{" swap$ * "}}" * }
+  if$
+  'extra.label :=
+  label extra.label * 'label :=
+}
+
+EXECUTE {initialize.extra.label.stuff}
+
+FUNCTION {forward.pass}
+{ type$ "control" = 'control.forward 'label.forward if$
+}
+
+ITERATE {forward.pass}
+
+FUNCTION {reverse.pass}
+{ type$ "control" = 'control.reverse 'label.reverse if$
+}
+
+REVERSE {reverse.pass}
+
+FUNCTION {sortkey.sort}
+{ sort.label
+  "    "
+  *
+  year.sort.key
+  field.or.null sortify
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {bib.sort.pass}
+{ type$ "control" = 'control.sort 'sortkey.sort if$
+}
+
+ITERATE {bib.sort.pass}
+
+SORT
+
+FUNCTION {init.bib.eprint}
+{
+    "\texttt {"
+  pop$
+  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
+  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
+  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
+  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
+}
+
+FUNCTION {init.bib.doi}
+{
+  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
+}
+
+FUNCTION {init.bib.hypertex}
+{
+  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
+  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
+  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
+  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
+  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
+  "\providecommand \@@startlink[1]{}%" write$ newline$
+  "\providecommand \@@endlink[0]{}%"   write$ newline$
+}
+
+FUNCTION {init.bib.namefont}
+{
+  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
+  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
+  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
+}
+
+FUNCTION {init.bib.quote}
+{
+  "\providecommand " bbl.enquote * " [1]{" *
+  "``" "''"
+  "#1" swap$ "}%" * * * * write$ newline$
+}
+
+FUNCTION {init.bib.ay}
+{
+  "\providecommand \natexlab [1]{#1}%"
+  write$ newline$
+}
+
+FUNCTION {init.bib.bibinfo}
+{
+  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+}
+
+FUNCTION {init.bib.lang}
+{
+  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
+}
+
+FUNCTION {init.bib.endbibitem}
+{
+  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
+  "\providecommand \bibitemStop [0]{}%"               write$ newline$
+  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
+  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
+}
+
+FUNCTION {init.bib.translation}
+{
+  "\providecommand \translation [1]{[#1]}%" write$ newline$
+}
+
+FUNCTION {warn.bib}
+{
+}
+
+FUNCTION {init.bib}
+{
+  warn.bib
+  "\makeatletter" write$ newline$
+  "\providecommand \@ifxundefined [1]{%"   write$ newline$
+  " \@ifx{#1\undefined}"                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifnum [1]{%"          write$ newline$
+  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifx [1]{%"            write$ newline$
+  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  init.bib.ay
+  init.bib.quote
+  init.bib.namefont
+  init.bib.hypertex
+  init.bib.eprint
+  init.bib.doi
+  init.bib.lang
+  init.bib.bibinfo
+  init.bib.translation
+  init.bib.endbibitem
+  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
+  "\let\auto at bib@innerbib\@empty"          write$ newline$
+  "%</preamble>" write$
+}
+
+FUNCTION {begin.bib}
+{
+  id.bst diagn.cmntlog
+  control.bib
+  preamble$ empty$
+    'skip$
+    { preamble$ write$ newline$ }
+  if$
+  "\begin{thebibliography}{"
+  number.label int.to.str$
+  * "}%" *
+  write$ newline$
+  init.bib
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+  "\end{thebibliography}%"
+  write$ newline$
+}
+
+EXECUTE {end.bib}
+
+%% End of customized bst file
+%%
+%% End of file `aipauth4-2.bst'.


Property changes on: trunk/Master/texmf-dist/bibtex/bst/revtex/aipauth4-2.bst
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-1.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-1.bst	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-1.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,3477 +0,0 @@
-%%
-%% This is file `aipnum4-1.bst',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% merlin.mbs  (with options: `head,ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% physjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% geojour.mbs  (with options: `ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% photjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% merlin.mbs  (with options: `tail,ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,mcite,mct-1,mct-x3,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,blkyear,yr-par,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% ----------------------------------------
-%% *** REVTeX-compatible aipnum4-1.bst 2010-07-25 ***
-%% 
-%% Copyright 1994-2007 Patrick W Daly
- % ===============================================================
- % IMPORTANT NOTICE:
- % This bibliographic style (bst) file has been generated from one or
- % more master bibliographic style (mbs) files, listed above.
- %
- % This generated file can be redistributed and/or modified under the terms
- % of the LaTeX Project Public License Distributed from CTAN
- % archives in directory macros/latex/base/lppl.txt; either
- % version 1 of the License, or any later version.
- % ===============================================================
- % Name and version information of the main mbs file:
- %   For use with BibTeX version 0.99a or later
- %-------------------------------------------------------------------
- % This bibliography style file is intended for texts in ENGLISH
- % This is an author-year citation style bibliography. As such, it is
- % non-standard LaTeX, and requires a special package file to function properly.
- % Such a package is    natbib.sty   by Patrick W. Daly
- % The form of the \bibitem entries is
- %   \bibitem[Jones et al.(1990)]{key}...
- %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
- % The essential feature is that the label (the part in brackets) consists
- % of the author names, as they should appear in the citation, with the year
- % in parentheses following. There must be no space before the opening
- % parenthesis!
- % With natbib v5.3, a full list of authors may also follow the year.
- % In natbib.sty, it is possible to define the type of enclosures that is
- % really wanted (brackets or parentheses), but in either case, there must
- % be parentheses in the label.
- % The \cite command functions as follows:
- %   \citet{key} ==>>                Jones et al. (1990)
- %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
- %   \citep{key} ==>>                (Jones et al., 1990)
- %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
- %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
- %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
- %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
- %   \citeauthor{key} ==>>           Jones et al.
- %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
- %   \citeyear{key} ==>>             1990
- %---------------------------------------------------------------------
-
-FUNCTION {id.bst} {"merlin.mbs aipnum4-1.bst 2010-07-25 4.21a (PWD, AO, DPC) hacked"}
-ENTRY
-{
-    address
-    archive
-    archivePrefix
-    author
-    bookaddress
-    booktitle
-    chapter
-    collaboration
-    doi
-    edition
-    editor
-    eid
-    eprint
-    howpublished
-    institution
-    isbn
-    issn
-    journal
-    key
-    language
-    month
-    note
-    number
-    organization
-    pages
-    primaryClass
-    publisher
-    school
-    SLACcitation
-    series
-    title
-    translation
-    type
-    url
-    volume
-    year
-}{
-}{
-    label
-    extra.label sort.label
-    short.list
-}
-
-INTEGERS
-{
-  output.state before.all
-  after.word after.punctuation
-  after.sentence after.block
-}
-
-INTEGERS
-{
-  punctuation.state punctuation.no punctuation.space punctuation.yes
-}
-
-STRINGS { bibfield output.bibfield }
-
-FUNCTION {not}
-{   { #0 }
-    { #1 }
-  if$
-}
-
-FUNCTION {and}
-{   'skip$
-    { pop$ #0 }
-  if$
-}
-
-FUNCTION {or}
-{   { pop$ #1 }
-    'skip$
-  if$
-}
-
-FUNCTION {non.stop}
-{ duplicate$
-   "}" * add.period$
-   #-1 #1 substring$ "." =
-}
-
-INTEGERS { arith.mulitplier arith.multiplicand }
-
-FUNCTION {multiply}
-{
-  'arith.multiplicand :=
-  'arith.mulitplier :=
-  #0
-    { arith.mulitplier #0 > }
-    { arith.multiplicand +
-      arith.mulitplier #1 - 'arith.mulitplier :=
-    }
-  while$
-}
-
-FUNCTION {chr.to.hex}
-{
-  chr.to.int$
-  duplicate$ "0" chr.to.int$ -
-  duplicate$ duplicate$ #0 < swap$ #9 > or not
-    { swap$ pop$ }
-    { pop$
-      duplicate$ "A" chr.to.int$ -
-      duplicate$ duplicate$ #0 < swap$ #5 > or not
-        { swap$ pop$ #10 + }
-        { pop$
-          duplicate$ "a" chr.to.int$ -
-          duplicate$ duplicate$ #0 < swap$ #5 > or not
-            { swap$ pop$ #10 + }
-            { pop$
-              pop$ #-1
-            }
-          if$
-        }
-      if$
-    }
-  if$
-}
-
-INTEGERS { arith.accumulator }
-
-FUNCTION {str.to.hex}
-{ #0 'arith.accumulator :=
-    { duplicate$ empty$ not }
-    { duplicate$ #1 #1 substring$ chr.to.hex
-      duplicate$ #0 <
-        { pop$ pop$ ""
-        }
-        { arith.accumulator #16 multiply + 'arith.accumulator :=
-          #2 global.max$ substring$
-        }
-      if$
-    }
-  while$
-  pop$ arith.accumulator
-}
-
-FUNCTION {diagn.cmntlog}
-{
-  duplicate$ top$ "%" swap$ * write$ newline$
-}
-
-INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
-
-INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
-
-FUNCTION { control.init }
-{
-  #0
-  'control.key             :=
-  #0
-  #8 +
-  'control.author :=
-  #0
-  'control.author.jnrlst   :=
-  #0
-  'control.author.dotless  :=
-  #0
-  'control.author.nospace  :=
-  #1
-  'control.author.initials :=
-  #0
-  'control.author.nocomma  :=
-  #0
-  'control.author.first    :=
-  #0
-  'control.author.reversed :=
-  #1
-  'control.editor :=
-  #-1
-  'control.title  :=
-  #0
-  'control.pages  :=
-  #0
-  'control.eprint :=
-  #1
-  'control.year   :=
-}
-
-FUNCTION {warning.dependency}
-{
-  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
-}
-
-FUNCTION {control.check}
-{
-  control.editor
-    {
-      "editor formatted same as author"
-      control.author.reversed {
-        duplicate$ #0 swap$ "reversed" warning.dependency
-        #0 'control.author.reversed :=
-      } 'skip$ if$
-      control.author.first {
-        duplicate$ #0 swap$ "first" warning.dependency
-        #0 'control.author.first :=
-      } 'skip$ if$
-      control.author.nocomma {
-        duplicate$ #0 swap$ "nocomma" warning.dependency
-        #0 'control.author.nocomma :=
-      } 'skip$ if$
-      pop$
-    } 'skip$ if$
-  control.author.reversed 'skip$
-    {
-      "not reversed"
-      control.author.nospace {
-        duplicate$ #0 swap$ "nospace" warning.dependency
-        #0 'control.author.nospace :=
-      } 'skip$ if$
-      control.author.jnrlst 'skip$ {
-        duplicate$ #1 swap$ "jnrlst" warning.dependency
-        #1 'control.author.jnrlst :=
-      } if$
-      control.author.initials {
-        duplicate$ ", initials" *
-        control.author.dotless {
-          duplicate$ #0 swap$ "dotless" warning.dependency
-          #0 'control.author.dotless :=
-        } 'skip$ if$
-        pop$
-      } 'skip$ if$
-      pop$
-    }
-  if$
-  control.author.initials 'skip$ {
-    "not initials"
-    control.author.nocomma {
-      duplicate$ #0 swap$ "nocomma" warning.dependency
-      #0 'control.author.nocomma :=
-    } 'skip$ if$
-    control.author.nospace {
-      duplicate$ #0 swap$ "nospace" warning.dependency
-      #0 'control.author.nospace :=
-    } 'skip$ if$
-    control.author.dotless 'skip$ {
-      duplicate$ #1 swap$ "dotless" warning.dependency
-      #1 'control.author.dotless :=
-    } if$
-    pop$
-  } if$
-}
-
-FUNCTION {control.parse}
-{
-  duplicate$ duplicate$ missing$
-    {
-      pop$ pop$ pop$
-    }
-    { empty$
-        {
-          pop$ #-1
-        }{
-          str.to.hex
-        }
-      if$
-      swap$ :=
-    }
-  if$
-}
-
-FUNCTION {control.dump}
-{
-  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
-  "{" swap$ * "}, " *
-  *
-}
-
-INTEGERS { decode.threshold }
-
-FUNCTION {control.decode}
-{
-  - duplicate$
-  #0 <
-    {
-      skip$ pop$ swap$ #0
-    }
-    {
-      swap$ pop$ swap$ #1
-    }
-  if$
-  swap$ :=
-}
-
-FUNCTION {control.author.decode}
-{
-  control.author
-  duplicate$ duplicate$ #0 < swap$ #128 < not or
-    {
-      int.to.str$ "(" swap$ * ")" *
-      "Control cannot interpret author " swap$ *
-      warning$
-    }{
-      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
-      'control.author.dotless  swap$ duplicate$ #32 control.decode
-      'control.author.nospace  swap$ duplicate$ #16 control.decode
-      'control.author.initials swap$ duplicate$  #8 control.decode
-      'control.author.nocomma  swap$ duplicate$  #4 control.decode
-      'control.author.first    swap$ duplicate$  #2 control.decode
-      'control.author.reversed swap$ duplicate$  #1 control.decode
-      duplicate$ #0 =
-        'skip$
-        {
-          "Control: residue of author"
-          "(" swap$ * ")" * *
-          warning$
-        }
-      if$
-      pop$
-    }
-  if$
-}
-
-FUNCTION {control.setup}
-{
-  type$ cite$ "{" swap$ * "}, " * *
-  "control.key"    key    control.dump *
-  "control.author" author control.dump *
-  "control.editor" editor control.dump *
-  "control.title"  title  control.dump *
-  "control.pages"  pages  control.dump *
-  "control.year"   year   control.dump *
-  "control.eprint" eprint control.dump *
-  top$
-  'control.key    key    control.parse
-  'control.author author control.parse
-  'control.editor editor control.parse
-  'control.title  title  control.parse
-  'control.pages  pages  control.parse
-  'control.year   year   control.parse
-  'control.eprint eprint control.parse
-  control.author.decode
-}
-
-FUNCTION {control.pass}
-{ type$ "control" = 'control.setup 'skip$ if$
-}
-
-FUNCTION {control.presort}
-{
-}
-
-FUNCTION {control.forward}
-{
-}
-
-FUNCTION {control.reverse}
-{
-}
-
-FUNCTION {control.sort}
-{
-}
-
-FUNCTION {control.longest.label}
-{
-}
-
-FUNCTION {control.key.bib}
-{
-  "Control: key "
-  control.key
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  pop$ *
-  diagn.cmntlog
-}
-
-FUNCTION {control.author.bib}
-{
-  "Control: author "
-  control.author "(" swap$ int.to.str$ * ")" * *
-  control.author.reversed { " reversed" * }{} if$
-  control.author.first    { " first"    * }{} if$
-  control.author.nocomma  { " nocomma"  * }{} if$
-  control.author.initials { " initials" * }{} if$
-  control.author.nospace  { " nospace"  * }{} if$
-  control.author.dotless  { " dotless"  * }{} if$
-  control.author.jnrlst   { " jnrlst"   * }{} if$
-  diagn.cmntlog
-}
-
-FUNCTION {control.editor.bib}
-{
-  "Control: editor formatted "
-  control.editor
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "identically to author"
-    } {
-      "differently from author"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.title.bib}
-{
-  "Control: production of article title "
-  control.title
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled"
-  } {
-    #0 > {
-      "required"
-    } {
-      "allowed"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.pages.bib}
-{
-  "Control: page "
-  control.pages
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "none"
-  } {
-    #0 > {
-      "range"
-    } {
-      "single"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.year.bib}
-{
-  "Control: year "
-  control.year
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "truncated"
-    } {
-      "verbatim"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.eprint.bib}
-{
-  "Control: production of eprint "
-  control.eprint
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  #0 < { "disabled" } { "enabled" } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.bib}
-{
-  control.key.bib
-  control.author.bib
-  control.editor.bib
-  control.title.bib
-  control.pages.bib
-  control.year.bib
-  control.eprint.bib
-}
-
-FUNCTION {init.state.consts}
-{
-  #0 'before.all        :=
-  #1 'after.word        :=
-  #2 'after.punctuation :=
-  #3 'after.sentence    :=
-  #4 'after.block       :=
-  #0 'punctuation.no    :=
-  #1 'punctuation.space :=
-  #2 'punctuation.yes   :=
-  "" 'bibfield          :=
-  "" 'output.bibfield   :=
-}
-
-STRINGS { s t}
-FUNCTION {block.punctuation}
-{ ""
-  "," *
-}
-
-FUNCTION {word.space}
-{
-  "\ "
-}
-
-FUNCTION {show.stackstring.one}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  duplicate$ "1(" swap$ * ")" * top$
-}
-
-FUNCTION {show.stackstring.two}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  swap$
-  duplicate$ "1(" swap$ * ")" * top$
-  swap$
-  duplicate$ "2(" swap$ * ")" * top$
-}
-
-FUNCTION {bibfield.command}{ "\bibfield "}
-
-FUNCTION {output.nonnull}
-{
-  swap$
-  output.state after.word =
-    {
-      block.punctuation *
-      word.space *
-    }
-    {
-      output.state after.punctuation =
-        {
-          word.space *
-        }
-        {
-          output.state after.block = output.state after.sentence = or
-            {
-              add.period$
-              "\EOS\ " *
-            }{
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  output.bibfield duplicate$ empty$ 'pop$
-    {
-      bibfield.command
-      " {" * swap$ * "} {" * swap$ * "}" *
-    }
-  if$
-  write$
-  bibfield 'output.bibfield := "" 'bibfield :=
-  output.state after.block =
-    {
-      newline$
-      "\newblock " write$
-    }
-    'skip$
-  if$
-  punctuation.state duplicate$
-  punctuation.yes 'punctuation.state :=
-  punctuation.no =
-    { pop$ before.all }
-    { punctuation.yes = { after.word }{ after.punctuation } if$ }
-  if$
-  'output.state :=
-}
-
-FUNCTION {output}
-{ duplicate$ empty$
-    {
-      pop$
-  "" 'bibfield :=
-    }
-    'output.nonnull
-  if$
-}
-
-FUNCTION {output.nopunct}
-{
-  punctuation.no 'punctuation.state :=
-  output.nonnull
-}
-
-FUNCTION {output.check}
-{ swap$
-  duplicate$ empty$
-    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
-    { swap$ pop$ output.nonnull }
-  if$
-}
-
-FUNCTION {bbl.open} { "\BibitemOpen " }
-
-FUNCTION {bbl.shut} { "\BibitemShut " }
-
-FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
-
-FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
-
-FUNCTION {bibitem.shut}
-{
-  non.stop
-    {
-  bibitem.shut.nostop *
-    }{
-  bibitem.shut.stop *
-    }
-  if$
-}
-
-FUNCTION {html.itag} {
-  "p"
-}
-
-FUNCTION {html.ltag} {
-  ""
-}
-
-FUNCTION {output.SLACcitation}
-{ SLACcitation empty$
-    'skip$
-    {
-      newline$
-      SLACcitation write$
-    }
-  if$
-}
-
-FUNCTION {fin.entry}
-{
-  bibitem.shut
-  write$
-    output.SLACcitation
-}
-
-FUNCTION {new.block}
-{ output.state before.all =
-    'skip$
-    { after.block 'output.state := }
-  if$
-}
-
-FUNCTION {new.block.comma}
-{
-}
-
-FUNCTION {new.sentence}
-{ output.state after.block = output.state before.all = or
-    'skip$
-    { after.sentence 'output.state := }
-  if$
-}
-
-FUNCTION {new.sentence.comma}
-{
-}
-
-FUNCTION {sentence.or.colon}
-{
-  new.sentence
-}
-
-FUNCTION {add.blank}
-{
-  word.space *
-  before.all 'output.state :=
-}
-
-FUNCTION {no.blank.or.punct}
-{
-   "\hspace {0pt}" *
-   before.all 'output.state :=
-}
-
-FUNCTION {date.block}
-{
-  new.block.comma
-  skip$
-}
-
-STRINGS {z}
-FUNCTION {remove.dots}
-{
-  control.author.dotless {
-    'z :=
-    ""
-    { z empty$ not }
-    { z #1 #1 substring$
-      z #2 global.max$ substring$ 'z :=
-      duplicate$ "." = 'pop$
-        { * }
-      if$
-    }
-    while$
-  } 'skip$ if$
-}
-
-FUNCTION {new.block.checkb}
-{ empty$
-  swap$ empty$
-  and
-    'skip$
-    'new.block
-  if$
-}
-
-FUNCTION {field.or.null}
-{ duplicate$ empty$
-    { pop$ "" }
-    'skip$
-  if$
-}
-
-FUNCTION {emphasize}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-      "\emph {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bolden}
-{ duplicate$ empty$
-    { pop$ "" }
-    { "\textbf {" swap$ * "}" * }
-  if$
-}
-
-FUNCTION {bib.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bib.fname.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibfnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {cite.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\citenamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {tie.or.space.prefix}
-{ duplicate$ text.length$ #3 <
-    { "~" }
-    { word.space }
-  if$
-  swap$
-}
-
-FUNCTION {capitalize}
-{
-  "u" change.case$ "t" change.case$
-}
-
-FUNCTION {space.word}
-{ word.space swap$ * word.space * }
-
- % Here are the language-specific definitions for explicit words.
- % Each function has a name bbl.xxx where xxx is the English word.
- % The language selected here is ENGLISH
-
-FUNCTION {bbl.and}
-{
-  "and"
-}
-
-FUNCTION {bbl.etal}
-{
-  "et~al."
-}
-
-FUNCTION {bbl.editors}
-{
-  "eds."
-}
-
-FUNCTION {bbl.editor}
-{
-  "ed."
-}
-
-FUNCTION {bbl.edby}
-{ "edited by" }
-
-FUNCTION {bbl.edition}
-{
-  "ed."
-}
-
-FUNCTION {bbl.volume}
-{
-  "vol."
-}
-
-FUNCTION {bbl.of}
-{ "of" }
-
-FUNCTION {bbl.number}
-{
-  "no."
-}
-
-FUNCTION {bbl.nr}
-{ "no." }
-
-FUNCTION {bbl.in}
-{ "in" }
-
-FUNCTION {bbl.pages}
-{
-  "pp."
-}
-
-FUNCTION {bbl.page}
-{
-  "p."
-}
-
-FUNCTION {bbl.eidpp}
-{ "pages" }
-
-FUNCTION {bbl.chapter}
-{
-  "chap."
-}
-
-FUNCTION {bbl.techrep}
-{
-  "Tech. Rep."
-}
-
-FUNCTION {bbl.mthesis}
-{ "Master's thesis" }
-
-FUNCTION {bbl.phdthesis}
-{ "Ph.D. thesis" }
-
-FUNCTION {bbl.first}
-{
-  "1st"
-}
-
-FUNCTION {bbl.second}
-{
-  "2nd"
-}
-
-FUNCTION {bbl.third}
-{
-  "3rd"
-}
-
-FUNCTION {bbl.fourth}
-{
-  "4th"
-}
-
-FUNCTION {bbl.fifth}
-{
-  "5th"
-}
-
-FUNCTION {bbl.st}
-{ "st" }
-
-FUNCTION {bbl.nd}
-{ "nd" }
-
-FUNCTION {bbl.rd}
-{ "rd" }
-
-FUNCTION {bbl.th}
-{ "th" }
-
-MACRO {jan} {"Jan."}
-
-MACRO {feb} {"Feb."}
-
-MACRO {mar} {"Mar."}
-
-MACRO {apr} {"Apr."}
-
-MACRO {may} {"May"}
-
-MACRO {jun} {"Jun."}
-
-MACRO {jul} {"Jul."}
-
-MACRO {aug} {"Aug."}
-
-MACRO {sep} {"Sep."}
-
-MACRO {oct} {"Oct."}
-
-MACRO {nov} {"Nov."}
-
-MACRO {dec} {"Dec."}
-
-FUNCTION {bbl.url.prefix}
-{
-  "\urlprefix "
-}
-
-FUNCTION {eng.ord}
-{ duplicate$ "1" swap$ *
-  #-2 #1 substring$ "1" =
-     { bbl.th * }
-     { duplicate$ #-1 #1 substring$
-       duplicate$ "1" =
-         { pop$ bbl.st * }
-         { duplicate$ "2" =
-             { pop$ bbl.nd * }
-             { "3" =
-                 { bbl.rd * }
-                 { bbl.th * }
-               if$
-             }
-           if$
-          }
-       if$
-     }
-   if$
-}
-
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
-MACRO {aa}{"Astron. \& Astrophys."}
-MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
-MACRO {aj} {"Astron. J."}
-MACRO {aph} {"Acta Phys."}
-MACRO {advp} {"Adv. Phys."}
-MACRO {ajp} {"Amer. J. Phys."}
-MACRO {ajm} {"Amer. J. Math."}
-MACRO {amsci} {"Amer. Sci."}
-MACRO {anofd} {"Ann. Fluid Dyn."}
-MACRO {am} {"Ann. Math."}
-MACRO {ap} {"Ann. Phys. (NY)"}
-MACRO {adp} {"Ann. Phys. (Leipzig)"}
-MACRO {ao} {"Appl. Opt."}
-MACRO {apl} {"Appl. Phys. Lett."}
-MACRO {app} {"Astroparticle Phys."}
-MACRO {apj} {"Astrophys. J."}
-MACRO {apjsup} {"Astrophys. J. Suppl."}
-MACRO {apss} {"Astrophys. Space Sci."}
-MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
-MACRO {baas} {"Bull. Amer. Astron. Soc."}
-MACRO {baps} {"Bull. Amer. Phys. Soc."}
-MACRO {cmp} {"Comm. Math. Phys."}
-MACRO {cpam} {"Commun. Pure Appl. Math."}
-MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
-MACRO {cpc} {"Comp. Phys. Comm."}
-MACRO {cqg} {"Class. Quant. Grav."}
-MACRO {cra} {"C. R. Acad. Sci. A"}
-MACRO {fed} {"Fusion Eng. \& Design"}
-MACRO {ft} {"Fusion Tech."}
-MACRO {grg} {"Gen. Relativ. Gravit."}
-MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
-MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
-MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
-MACRO {ip} {"Infrared Phys."}
-MACRO {irp} {"Infrared Phys."}
-MACRO {jap} {"J. Appl. Phys."}
-MACRO {jasa} {"J. Acoust. Soc. America"}
-MACRO {jcp} {"J. Comp. Phys."}
-MACRO {jetp} {"Sov. Phys.--JETP"}
-MACRO {jfe} {"J. Fusion Energy"}
-MACRO {jfm} {"J. Fluid Mech."}
-MACRO {jmp} {"J. Math. Phys."}
-MACRO {jne} {"J. Nucl. Energy"}
-MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
-MACRO {jnm} {"J. Nucl. Mat."}
-MACRO {jpc} {"J. Phys. Chem."}
-MACRO {jpp} {"J. Plasma Phys."}
-MACRO {jpsj} {"J. Phys. Soc. Japan"}
-MACRO {jsi} {"J. Sci. Instrum."}
-MACRO {jvst} {"J. Vac. Sci. \& Tech."}
-MACRO {nat} {"Nature"}
-MACRO {nature} {"Nature"}
-MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
-MACRO {nf} {"Nucl. Fusion"}
-MACRO {nim} {"Nucl. Inst. \& Meth."}
-MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
-MACRO {np} {"Nucl. Phys."}
-MACRO {npb} {"Nucl. Phys. B"}
-MACRO {nt/f} {"Nucl. Tech./Fusion"}
-MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
-MACRO {inc} {"Nuovo Cimento"}
-MACRO {nc} {"Nuovo Cimento"}
-MACRO {pf} {"Phys. Fluids"}
-MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
-MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
-MACRO {pl} {"Phys. Lett."}
-MACRO {pla} {"Phys. Lett. A"}
-MACRO {plb} {"Phys. Lett. B"}
-MACRO {prep} {"Phys. Rep."}
-MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
-MACRO {pp} {"Phys. Plasmas"}
-MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
-MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
-MACRO {prl} {"Phys. Rev. Lett."}
-MACRO {pr} {"Phys. Rev."}
-MACRO {physrev} {"Phys. Rev."}
-MACRO {pra} {"Phys. Rev. A"}
-MACRO {prb} {"Phys. Rev. B"}
-MACRO {prc} {"Phys. Rev. C"}
-MACRO {prd} {"Phys. Rev. D"}
-MACRO {pre} {"Phys. Rev. E"}
-MACRO {ps} {"Phys. Scripta"}
-MACRO {procrsl} {"Proc. Roy. Soc. London"}
-MACRO {rmp} {"Rev. Mod. Phys."}
-MACRO {rsi} {"Rev. Sci. Inst."}
-MACRO {science} {"Science"}
-MACRO {sciam} {"Sci. Am."}
-MACRO {sam} {"Stud. Appl. Math."}
-MACRO {sjpp} {"Sov. J. Plasma Phys."}
-MACRO {spd} {"Sov. Phys.--Doklady"}
-MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
-MACRO {spu} {"Sov. Phys.--Uspeki"}
-MACRO {st} {"Sky and Telesc."}
- % End module: physjour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
-MACRO {aisr} {"Adv. Space Res."}
-MACRO {ag} {"Ann. Geophys."}
-MACRO {anigeo} {"Ann. Geofis."}
-MACRO {angl} {"Ann. Glaciol."}
-MACRO {andmet} {"Ann. d. Meteor."}
-MACRO {andgeo} {"Ann. d. Geophys."}
-MACRO {andphy} {"Ann. Phys.-Paris"}
-MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
-MACRO {atph} {"Atm\'osphera"}
-MACRO {aao} {"Atmos. Ocean"}
-MACRO {ass}{"Astrophys. Space Sci."}
-MACRO {atenv} {"Atmos. Environ."}
-MACRO {aujag} {"Aust. J. Agr. Res."}
-MACRO {aumet} {"Aust. Meteorol. Mag."}
-MACRO {blmet} {"Bound.-Lay. Meteorol."}
-MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
-MACRO {cch} {"Clim. Change"}
-MACRO {cdyn} {"Clim. Dynam."}
-MACRO {cbul} {"Climatol. Bull."}
-MACRO {cap} {"Contrib. Atmos. Phys."}
-MACRO {dsr} {"Deep-Sea Res."}
-MACRO {dhz} {"Dtsch. Hydrogr. Z."}
-MACRO {dao} {"Dynam. Atmos. Oceans"}
-MACRO {eco} {"Ecology"}
-MACRO {empl}{"Earth, Moon and Planets"}
-MACRO {envres} {"Environ. Res."}
-MACRO {envst} {"Environ. Sci. Technol."}
-MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
-MACRO {expa}{"Exper. Astron."}
-MACRO {geoint} {"Geofis. Int."}
-MACRO {geopub} {"Geofys. Publ."}
-MACRO {geogeo} {"Geol. Geofiz."}
-MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
-MACRO {gfd} {"Geophys. Fluid Dyn."}
-MACRO {geomag} {"Geophys. Mag."}
-MACRO {georl} {"Geophys. Res. Lett."}
-MACRO {grl} {"Geophys. Res. Lett."}
-MACRO {ga} {"Geophysica"}
-MACRO {gs} {"Geophysics"}
-MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
-MACRO {ijawp} {"Int. J. Air Water Pollut."}
-MACRO {ijc} {"Int. J. Climatol."}
-MACRO {ijrs} {"Int. J. Remote Sens."}
-MACRO {jam} {"J. Appl. Meteorol."}
-MACRO {jaot} {"J. Atmos. Ocean. Technol."}
-MACRO {jatp} {"J. Atmos. Terr. Phys."}
-MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
-MACRO {jce} {"J. Climate"}
-MACRO {jcam} {"J. Climate Appl. Meteor."}
-MACRO {jcm} {"J. Climate Meteor."}
-MACRO {jcy} {"J. Climatol."}
-MACRO {jgr} {"J. Geophys. Res."}
-MACRO {jga} {"J. Glaciol."}
-MACRO {jh} {"J. Hydrol."}
-MACRO {jmr} {"J. Mar. Res."}
-MACRO {jmrj} {"J. Meteor. Res. Japan"}
-MACRO {jm} {"J. Meteor."}
-MACRO {jpo} {"J. Phys. Oceanogr."}
-MACRO {jra} {"J. Rech. Atmos."}
-MACRO {jaes} {"J. Aeronaut. Sci."}
-MACRO {japca} {"J. Air Pollut. Control Assoc."}
-MACRO {jas} {"J. Atmos. Sci."}
-MACRO {jmts} {"J. Mar. Technol. Soc."}
-MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
-MACRO {josj} {"J. Oceanogr. Soc. Japan"}
-MACRO {jwm} {"J. Wea. Mod."}
-MACRO {lao} {"Limnol. Oceanogr."}
-MACRO {mwl} {"Mar. Wea. Log"}
-MACRO {mau} {"Mausam"}
-MACRO {meteor} {"``Meteor'' Forschungsergeb."}
-MACRO {map} {"Meteorol. Atmos. Phys."}
-MACRO {metmag} {"Meteor. Mag."}
-MACRO {metmon} {"Meteor. Monogr."}
-MACRO {metrun} {"Meteor. Rundsch."}
-MACRO {metzeit} {"Meteor. Z."}
-MACRO {metgid} {"Meteor. Gidrol."}
-MACRO {mwr} {"Mon. Weather Rev."}
-MACRO {nwd} {"Natl. Weather Dig."}
-MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
-MACRO {npg} {"Nonlin. Proc. Geophys."}
-MACRO {om} {"Oceanogr. Meteorol."}
-MACRO {ocac} {"Oceanol. Acta"}
-MACRO {oceanus} {"Oceanus"}
-MACRO {paleoc} {"Paleoceanography"}
-MACRO {pce} {"Phys. Chem. Earth"}
-MACRO {pmg} {"Pap. Meteor. Geophys."}
-MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
-MACRO {physzeit} {"Phys. Z."}
-MACRO {pps} {"Planet. Space Sci."}
-MACRO {pss} {"Planet. Space Sci."}
-MACRO {pag} {"Pure Appl. Geophys."}
-MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
-MACRO {quatres} {"Quat. Res."}
-MACRO {rsci} {"Radio Sci."}
-MACRO {rse} {"Remote Sens. Environ."}
-MACRO {rgeo} {"Rev. Geophys."}
-MACRO {rgsp} {"Rev. Geophys. Space Phys."}
-MACRO {rdgeo} {"Rev. Geofis."}
-MACRO {revmeta} {"Rev. Meteorol."}
-MACRO {sgp}{"Surveys in Geophys."}
-MACRO {sp} {"Solar Phys."}
-MACRO {ssr} {"Space Sci. Rev."}
-MACRO {tellus} {"Tellus"}
-MACRO {tac} {"Theor. Appl. Climatol."}
-MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
-MACRO {wrr} {"Water Resour. Res."}
-MACRO {weather} {"Weather"}
-MACRO {wafc} {"Weather Forecast."}
-MACRO {ww} {"Weatherwise"}
-MACRO {wmob} {"WMO Bull."}
-MACRO {zeitmet} {"Z. Meteorol."}
- % End module: geojour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
-
-MACRO {appopt} {"Appl. Opt."}
-MACRO {bell} {"Bell Syst. Tech. J."}
-MACRO {ell} {"Electron. Lett."}
-MACRO {jasp} {"J. Appl. Spectr."}
-MACRO {jqe} {"IEEE J. Quantum Electron."}
-MACRO {jlwt} {"J. Lightwave Technol."}
-MACRO {jmo} {"J. Mod. Opt."}
-MACRO {josa} {"J. Opt. Soc. America"}
-MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
-MACRO {josab} {"J. Opt. Soc. Amer.~B"}
-MACRO {jdp} {"J. Phys. (Paris)"}
-MACRO {oc} {"Opt. Commun."}
-MACRO {ol} {"Opt. Lett."}
-MACRO {phtl} {"IEEE Photon. Technol. Lett."}
-MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
-MACRO {sse} {"Solid-State Electron."}
-MACRO {sjot} {"Sov. J. Opt. Technol."}
-MACRO {sjqe} {"Sov. J. Quantum Electron."}
-MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
-MACRO {stph} {"Sov. Phys.--Techn. Phys."}
-MACRO {stphl} {"Sov. Techn. Phys. Lett."}
-MACRO {vr} {"Vision Res."}
-MACRO {zph} {"Z. f. Physik"}
-MACRO {zphb} {"Z. f. Physik~B"}
-MACRO {zphd} {"Z. f. Physik~D"}
-
-MACRO {CLEO} {"CLEO"}
-MACRO {ASSL} {"Adv. Sol.-State Lasers"}
-MACRO {OSA}  {"OSA"}
- % End module: photjour.mbs
-%% Copyright 1994-2007 Patrick W Daly
-MACRO {acmcs} {"ACM Comput. Surv."}
-
-MACRO {acta} {"Acta Inf."}
-
-MACRO {cacm} {"Commun. ACM"}
-
-MACRO {ibmjrd} {"IBM J. Res. Dev."}
-
-MACRO {ibmsj} {"IBM Syst.~J."}
-
-MACRO {ieeese} {"IEEE Trans. Software Eng."}
-
-MACRO {ieeetc} {"IEEE Trans. Comput."}
-
-MACRO {ieeetcad}
- {"IEEE Trans. Comput. Aid. Des."}
-
-MACRO {ipl} {"Inf. Process. Lett."}
-
-MACRO {jacm} {"J.~ACM"}
-
-MACRO {jcss} {"J.~Comput. Syst. Sci."}
-
-MACRO {scp} {"Sci. Comput. Program."}
-
-MACRO {sicomp} {"SIAM J. Comput."}
-
-MACRO {tocs} {"ACM Trans. Comput. Syst."}
-
-MACRO {tods} {"ACM Trans. Database Syst."}
-
-MACRO {tog} {"ACM Trans. Graphic."}
-
-MACRO {toms} {"ACM Trans. Math. Software"}
-
-MACRO {toois} {"ACM Trans. Office Inf. Syst."}
-
-MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
-
-MACRO {tcs} {"Theor. Comput. Sci."}
-
-FUNCTION {bibinfo.command} { "\bibinfo " }
-
-FUNCTION {bibinfo.check}
-{ swap$
-  duplicate$ missing$
-    {
-      pop$
-      pop$ ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ pop$
-        }{
-          swap$
-          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {bibinfo.warn}
-{ swap$
-  duplicate$ missing$
-    {
-      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
-      ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ "empty " swap$ * " in " * cite$ * warning$
-        }{
-          swap$
-          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {archiv.base}
-{
-  "http://arxiv.org/abs"
-}
-
-FUNCTION {archiv.prefix.base}
-{
-  "arXiv"
-}
-
-FUNCTION {eprint.command}
-{
-  "\Eprint "
-}
-
-FUNCTION {format.eprint}
-{
-  eprint duplicate$ empty$
-  control.eprint #0 <
-  or
-    { pop$ "" }
-    {
-      duplicate$
-      ""
-        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
-        "/" *
-        swap$ *
-        "{" swap$ * "} " *
-      swap$
-      ""
-        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
-        swap$ *
-        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
-        "{" swap$ * "} " *
-      *
-      eprint.command swap$ *
-    }
-  if$
-}
-
-FUNCTION {format.translation}
-{ translation duplicate$ empty$
-    'skip$
-    { ""
-      "\translation{" * swap$ * "}" *
-      punctuation.space 'punctuation.state :=
-    }
-  if$
-}
-
-FUNCTION {format.url}
-{
-  url duplicate$ empty$
-    { pop$ "" }
-    {
-      "\url "
-      "{" * swap$ * "}" *
-    }
-  if$
-}
-
-INTEGERS { nameptr namesleft numnames }
-
-FUNCTION {check.speaker}
-{ key empty$ 'skip$
-  { key nameptr int.to.str$ =
-    {
-      bolden
-    }
-      'skip$
-    if$
-  }
-  if$
-}
-
-
-STRINGS  { bibinfo}
-
-FUNCTION {format.names.fname}
-{
-  control.author.initials {
-    control.author.dotless {
-      control.author.nospace {
-        "f{}"
-      } {
-        "f{~}"
-      } if$
-    } {
-      control.author.nospace {
-        "f{.}."
-      } {
-        "f."
-      } if$
-    } if$
-  } {
-    "ff"
-  } if$
-}
-
-FUNCTION {bracify}
-{
-  "{" swap$ * "}" *
-}
-
-FUNCTION {name.comma}
-{
-  control.author.nocomma 'skip$ { "," swap$ * } if$
-}
-
-FUNCTION {format.names.format.onefont}
-{
-  "{vv~}{ll}"
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-    {
-      control.author.initials {
-        "f"
-        control.author.dotless 'skip$ {
-          "." *
-        } if$
-        "~" *
-      } {
-        "ff"
-      } if$
-      bracify
-      swap$
-    } {
-      format.names.fname
-      " " swap$ *
-      name.comma
-      bracify
-    }
-  if$
-  "jj"
-  " " swap$ *
-  name.comma
-  bracify
-  control.author.jnrlst 'skip$ 'swap$ if$
-  * *
-}
-
-FUNCTION {format.names.onefont}
-{
-  s nameptr format.names.format.onefont format.name$
-  remove.dots
-  bib.name.font
-}
-
-FUNCTION {format.names.morfont}
-{ s nameptr
-  "{vv~}{ll}" format.name$ bib.name.font
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-  {
-    s nameptr
-    control.author.initials {
-      "f"                        % default: name + surname + comma junior
-    } {
-      "ff"
-    } if$
-    control.author.dotless 'skip$ {
-      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
-    } if$
-    bracify
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    swap$
-    *
-    s nameptr
-    "{jj}" format.name$ duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } {
-    "," *
-    s nameptr
-    format.names.fname
-    "jj"
-    " "
-    name.comma
-    control.author.jnrlst {
-      swap$ * skip$
-    } {
-      skip$ * swap$
-    } if$
-    bracify swap$ bracify swap$
-    *
-    format.name$
-    remove.dots
-    duplicate$ empty$ 'skip$
-      { bib.fname.font " " swap$ * }
-      if$
-  } if$
-  *
-}
-
-FUNCTION {names.punctuate}
-{
-  "," *
-  " " *
-}
-
-FUNCTION {format.names}
-{ 'bibinfo :=
-  duplicate$ empty$ { pop$ "" } {
-    duplicate$ num.names$
-    duplicate$ 'numnames :=
-    'namesleft :=
-    's :=
-    #1 'nameptr :=
-    ""
-      { namesleft #0 > }
-      {
-      format.names.morfont
-        bibinfo bibinfo.check
-        type$ "presentation" =
-          'check.speaker
-          'skip$
-        if$
-        't :=
-        nameptr #1 > not
-          {
-            t *
-          } {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              } {
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-                numnames #2 >
-                  'names.punctuate
-                  'skip$
-                if$
-                t "others" =
-                  {
-                    " " *
-                    bbl.etal
-                    emphasize
-                    *
-                  } {
-                    bbl.and
-                    space.word *
-                    t *
-                  }
-                if$
-              }
-            if$
-          }
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-  } if$
-}
-
-FUNCTION {format.names.ed.onefont}
-{
-    s nameptr
-    control.author.initials {
-      control.author.dotless {
-        control.author.nospace {
-          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
-        } {
-          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
-        } if$
-      } {
-        control.author.nospace {
-          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
-        }{
-          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
-        } if$
-      } if$
-    } {
-      "{ff~}{vv~}{ll}{, jj}"
-    } if$
-    format.name$
-    remove.dots
-    bib.name.font
-}
-
-FUNCTION {format.names.ed.morfont}
-{
-  control.author.reversed { %
-    control.author.initials { %
-      control.author.dotless { %
-        s nameptr
-        control.author.nospace { % nm-rvx nm-rvcx
-          "{f{}}"
-        } { % nm-rv
-          "{f{~}}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        remove.dots
-        duplicate$ empty$ 'skip$
-          { bib.fname.font " " swap$ * }
-        if$
-      } { % !control.author.dotless
-        s nameptr
-        control.author.nospace { % nm-rvv
-          "{ff}"
-        } { % nm-rev nm-rev1
-          "{f.}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        duplicate$ empty$ 'skip$
-          { bib.fname.font ", " swap$ * }
-        if$
-      } if$
-    } { % Full names !control.author.initials  nm-revf nm-revv1
-      s nameptr
-      "{ff}"
-      format.name$ duplicate$ empty$ 'skip$
-        { tie.or.space.prefix bib.fname.font swap$ * }
-      if$
-      s nameptr
-      "{vv~}{ll}" format.name$ bib.name.font *
-      s nameptr
-      "{jj}" format.name$
-      duplicate$ empty$ 'skip$
-        { bib.fname.font ", " swap$ * }
-      if$
-    } if$
-  } { % !control.author.reversed nm-init
-    s nameptr
-    "{f.}"
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    s nameptr
-    "{vv~}{ll}" format.name$ bib.name.font *
-    s nameptr
-    "{jj}" format.name$
-    duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } if$
-  *
-}
-
-FUNCTION {format.names.ed}
-{
-  control.editor #0 > {
-    format.names
-  } {
-    'bibinfo :=
-    duplicate$ empty$ 'skip$ {
-    's :=
-    "" 't :=
-    #1 'nameptr :=
-    s num.names$ 'numnames :=
-    numnames 'namesleft :=
-      { namesleft #0 > }
-      {
-       format.names.ed.morfont
-        bibinfo bibinfo.check
-        't :=
-        nameptr #1 >
-          {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              }{
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-                numnames #2 >
-                  'names.punctuate
-                  'skip$
-                if$
-                t "others" =
-                  {
-                    " " * bbl.etal emphasize *
-                  }{
-                   bbl.and
-                    space.word * t *
-                  }
-                if$
-              }
-            if$
-          }
-          't
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-    } if$
-  } if$
-}
-
-FUNCTION {format.key}
-{ empty$
-    { key field.or.null }
-    { "" }
-  if$
-}
-
-FUNCTION {format.authors}
-{ author "author" format.names
-  duplicate$ empty$ 'skip$
-    { collaboration "collaboration" bibinfo.check
-      duplicate$ empty$ 'skip$
-        { " (" swap$ * ")" * }
-      if$
-      *
-    }
-  if$
-  "author" 'bibfield :=
-}
-
-FUNCTION {get.bbl.editor}
-{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
-}
-
-FUNCTION {format.editors}
-{ editor "editor" format.names duplicate$ empty$ 'skip$
-    {
-      "," *
-      word.space *
-      get.bbl.editor
-      *
-    }
-  if$
-}
-
-FUNCTION {format.isbn.output}
-{
-}
-
-FUNCTION {format.issn.output}
-{ 
-}
-
-FUNCTION {doi.base}
-{
-  "http://dx.doi.org/"
-}
-
-FUNCTION {doi.base.command}
-{
-  "\doibase "
-}
-
-FUNCTION {noop.command}
-{
-  "\href at noop "
-}
-
-FUNCTION {href.command}
-{
-  "\href "
-}
-
-FUNCTION {link.tag.open}
-{
-  doi duplicate$ empty$
-    {
-      pop$
-      url duplicate$ empty$
-        {
-          pop$ "" noop.command
-        }{
-          href.command
-        }
-      if$
-    }
-    {
-      doi.base.command swap$ * 
-      href.command
-    }
-  if$
-  "{" * swap$ * "} {" *
-}
-
-FUNCTION {link.tag.shut}
-{
-  "}"
-}
-
-FUNCTION {link.open}
-{
-  link.tag.open output.nopunct
-}
-
-FUNCTION {link.shut}
-{
-  link.tag.shut *
-}
-
-FUNCTION {add.doi}
-{
-  link.tag.open swap$ * link.tag.shut *
-}
-
-FUNCTION {select.language}
-{ duplicate$ empty$
-    'pop$
-    { language empty$
-        'skip$
-        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
-      if$
-    }
-    if$
-}
-
-FUNCTION {format.note}
-{
- note empty$
-    { "" }
-    { note #1 #1 substring$
-      duplicate$ "{" =
-        'skip$
-        {
-          output.state after.word = output.state after.punctuation = or
-            { "l" }
-            { "u" }
-          if$ change.case$
-        }
-      if$
-      note #2 global.max$ substring$ * "note" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {bbl.enquote}
-{
-  "\enquote "
-}
-
-FUNCTION {string.enquote}
-{
-  punctuation.no 'punctuation.state :=
-  non.stop {
-    block.punctuation
-  } { "" } if$
-   swap$ pop$
-  *
-  bbl.enquote "{" * swap$ * "}" *
-  word.space *
-}
-
-FUNCTION {format.title}
-{ title
-  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
-  duplicate$ "title" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      string.enquote
-      select.language
-    }
-  if$
-}
-
-FUNCTION {end.quote.title}
-{ title empty$
-    'skip$
-    { before.all 'output.state := }
-  if$
-}
-
-FUNCTION {format.name.apply}
-{
-  s nameptr
-  "{vv~}{ll}"
-  format.name$
-  cite.name.font
-}
-
-FUNCTION {format.full.names}
-{
-  's :=
-  "" 't :=
-  #1 'nameptr :=
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { format.name.apply
-      't :=
-      nameptr #1 >
-        {
-          namesleft #1 >
-            { ", " * t * }
-            {
-              s nameptr "{ll}" format.name$ duplicate$ "others" =
-                {
-                  't :=
-                }
-                'pop$
-              if$
-              t "others" =
-                {
-                  " " * bbl.etal
-                  emphasize *
-                }{
-                  numnames #2 > { "," * }{ skip$ } if$
-                  bbl.and
-                  space.word * t *
-                }
-              if$
-            }
-          if$
-        }
-        't
-      if$
-      nameptr #1 + 'nameptr :=
-      namesleft #1 - 'namesleft :=
-    }
-  while$
-}
-
-FUNCTION {make.full.names}
-{
-  key editor author
-  type$ "proceedings" =
-  type$ "book"        =
-  type$ "inbook"      =
-  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
-  duplicate$ empty$
-    { pop$
-      duplicate$ empty$
-        { pop$
-          duplicate$ empty$
-            { pop$
-              cite$ #1 #3 substring$
-            }{
-              skip$
-            }
-          if$
-        }
-        { swap$ pop$ format.full.names }
-      if$
-    }
-    { swap$ pop$ swap$ pop$ format.full.names }
-  if$
-}
-
-FUNCTION {year.bibitem}
-{
-  year duplicate$ empty$
-  { pop$ ""
-  }{
-    skip$
-  } if$
-  extra.label *
-}
-
-FUNCTION {output.bibitem}
-{
-  newline$
-  ""
-  label
-  * ")" *
-   make.full.names duplicate$ short.list =
-   { pop$ }{ * } if$
-   bracify
-  "[" swap$ * "]" *
-  cite$ bracify "%" *
-  *
-  "\bibitem "
-  swap$ *
-  write$ newline$
-  "  "
-  duplicate$ bbl.open * write$ newline$
-  before.all 'output.state :=
-  punctuation.yes 'punctuation.state :=
-}
-
-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 {word.in}
-{
-  bbl.in
-  word.space *
-}
-
-FUNCTION {date.encapsulate}
-{
-  duplicate$ empty$
-    'skip$
-    {
-      before.all 'output.state :=
-      " (" swap$ * ")" *
-    }
-  if$
-}
-
-FUNCTION {format.date}
-{
-  year "year" bibinfo.check duplicate$ empty$
-    {
-    }
-    'skip$
-  if$
-  extra.label *
-  date.encapsulate
-}
-
-FUNCTION {format.date.output.check}
-{
- format.date
- "year" output.check
-}
-
-FUNCTION {format.date.output}
-{
-  format.date.output.check
-}
-
-FUNCTION {format.btitle}
-{
-  booktitle duplicate$ empty$ { pop$
-      title
-  } 'skip$ if$
-  "title" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {either.or.check}
-{ empty$
-    'pop$
-    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
-  if$
-}
-
-FUNCTION {editor.check.book}
-{ editor empty$ 'skip$
-    {
-      "can't use both author and editor fields in " cite$ *
-      ": try using @inbook instead" *
-      warning$
-    }
-  if$
-}
-
-FUNCTION {format.bvolume}
-{ volume duplicate$ empty$
-    { pop$ "" }
-    {
-      "volume and number" number either.or.check
-      bbl.volume
-      capitalize
-      swap$
-      tie.or.space.prefix "volume" bibinfo.check * *
-      series "series" bibinfo.check duplicate$ empty$ 'pop$
-        {
-          ", "
-          * swap$ *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.number}
-{
-  bbl.number
-  output.state after.word = output.state after.punctuation = or
-  #1 or
-  #0 and
-    'skip$
-    { capitalize }
-  if$
-  number tie.or.space.prefix "number" bibinfo.check * *
-}
-
-FUNCTION {format.number.series}
-{ volume empty$
-    { number empty$
-        { series field.or.null }
-        {
-          series empty$
-            {
-              number "number" bibinfo.check
-            }{
-              format.number
-              series "series" bibinfo.check
-              word.space * swap$ *
-            }
-          if$
-        }
-      if$
-    }
-    { "" }
-  if$
-}
-
-FUNCTION {is.num}
-{ chr.to.int$
-  duplicate$ "0" chr.to.int$ < not
-  swap$ "9" chr.to.int$ > not and
-}
-
-FUNCTION {extract.num}
-{ duplicate$ 't :=
-  "" 's :=
-  { t empty$ not }
-  { t #1 #1 substring$
-    t #2 global.max$ substring$ 't :=
-    duplicate$ is.num
-      { s swap$ * 's := }
-      { pop$ "" 't := }
-    if$
-  }
-  while$
-  s empty$
-    'skip$
-    { pop$ s }
-  if$
-}
-
-FUNCTION {convert.edition}
-{ extract.num "l" change.case$ 's :=
-  s "first" = s "1" = or
-    { bbl.first 't := }
-    { s "second" = s "2" = or
-        { bbl.second 't := }
-        { s "third" = s "3" = or
-            { bbl.third 't := }
-            { s "fourth" = s "4" = or
-                { bbl.fourth 't := }
-                { s "fifth" = s "5" = or
-                    { bbl.fifth 't := }
-                    { s #1 #1 substring$ is.num
-                        { s
-                            eng.ord
-                        't := }
-                        { edition 't := }
-                      if$
-                    }
-                  if$
-                }
-              if$
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  t
-}
-
-FUNCTION {format.edition}
-{ edition duplicate$ empty$ 'skip$
-    {
-      convert.edition
-      output.state after.word = output.state after.punctuation = or
-        { "l" }
-        { "t" }
-      if$ change.case$
-      "edition" bibinfo.check
-      word.space * bbl.edition *
-    }
-  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 duplicate$ empty$
-    'skip$
-    { duplicate$ multi.page.check
-        {
-          bbl.pages swap$
-          n.dashify
-        }{
-          bbl.page swap$
-        }
-      if$
-      tie.or.space.prefix
-      "pages" bibinfo.check
-      * *
-    }
-  if$
-}
-
-FUNCTION {first.page}
-{ 't :=
-  ""
-    {  t empty$ not t #1 #1 substring$ "-" = not and }
-    { t #1 #1 substring$ *
-      t #2 global.max$ substring$ 't :=
-    }
-  while$
-}
-
-FUNCTION {format.book.pages}
-{
-  pages duplicate$ empty$ 'skip$
-    {
-      "pages" bibinfo.check word.space bbl.pages * *
-    }
-  if$
-}
-
-FUNCTION {volnum.punct}
-{
-          ","
-  word.space *
-}
-
-FUNCTION {format.journal.pages}
-{ pages duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$
-        { pop$ pop$ format.pages }
-        { volnum.punct *
-          swap$
-          control.pages duplicate$ #0 < {
-            pop$ pop$
-          }{
-            #0 >
-            {
-              n.dashify
-            }{
-              first.page
-            } if$
-          } if$
-          "pages" bibinfo.check
-          *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.journal.eid}
-{ eid "eid" bibinfo.check
-  duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$ 'skip$
-        { volnum.punct * }
-      if$
-      swap$ *
-    }
-  if$
-}
-
-FUNCTION {eid.or.pages}
-{
-  eid empty$
-    { format.journal.pages }
-    { format.journal.eid }
-  if$
-}
-
-FUNCTION {format.ser.vol.num}
-{
-  series "series" bibinfo.check output
-  volume field.or.null
-  duplicate$ empty$ 'skip$
-    {
-      "volume" bibinfo.check
-    }
-  if$
-  bolden
-}
-
-FUNCTION {format.chapter.pages}
-{ chapter empty$
-    {
-    format.pages
-    }
-    { type empty$
-        {
-          bbl.chapter
-          capitalize
-        }{
-          type
-          capitalize
-          "type" bibinfo.check
-        }
-      if$
-      chapter tie.or.space.prefix
-      "chapter" bibinfo.check
-      * *
-      pages empty$
-        'skip$
-        { ", " * format.pages * }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.booktitle}
-{
-  booktitle duplicate$ "booktitle" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      pop$ emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {format.editor.in}
-{
-  editor "editor" format.names.ed duplicate$ empty$ 'skip$
-    {
-      bbl.edby
-      word.space * swap$ *
-    }
-  if$
-}
-
-FUNCTION {output.article.booktitle}
-{
-  format.booktitle
-      "booktitle" 'bibfield :=
-  output
-  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
-    {
-      "address" 'bibfield :=
-      output.nonnull after.punctuation 'output.state :=
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      format.editor.in "editor" bibinfo.check output
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle.inbook}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      author empty$ 'skip$
-        { format.editor.in "editor" bibinfo.check output }
-    if$
-    }
-  if$
-}
-
-FUNCTION {format.thesis.type}
-{ type duplicate$ empty$
-    'pop$
-    { swap$ pop$
-      "t" change.case$ "type" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {format.tr.number}
-{ number "number" bibinfo.check
-  type duplicate$ empty$
-    { pop$ bbl.techrep }
-    'skip$
-  if$
-  "type" bibinfo.check
-  swap$ duplicate$ empty$
-    { pop$ "t" change.case$ }
-    { tie.or.space.prefix * * }
-  if$
-}
-
-FUNCTION {format.article.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.book.crossref}
-{ volume duplicate$ empty$
-    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
-      pop$ word.in
-    }
-    { bbl.volume
-      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
-    }
-  if$
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.incoll.inproc.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.org.or.pub}
-{ 't :=
-  ""
-  address "address" bibinfo.check
-  duplicate$ empty$
-    { pop$ t }
-    { t duplicate$ empty$
-        { pop$ }
-        {
-          "," word.space *
-          * swap$ *
-        }
-      if$
-    }
-  if$
-  *
-  year duplicate$ empty$
-    {
-      "empty year in " cite$ *
-      warning$
-      pop$ ""
-    }
-    'skip$
-  if$
-  duplicate$ empty$
-    { pop$ }
-    {
-      "year" bibinfo.check
-      swap$
-      duplicate$ empty$
-        { pop$ }
-        {
-          "," *
-          word.space *
-          swap$ *
-        }
-      if$
-    }
-  if$
-  duplicate$ empty$ 'skip$ {
-    ""
-    "(" * swap$ * ")" *
-    after.punctuation 'output.state :=
-    punctuation.space 'punctuation.state :=
-  } if$
-}
-
-FUNCTION {format.publisher.address}
-{ publisher "publisher" bibinfo.warn format.org.or.pub
-}
-
-FUNCTION {format.organization.address}
-{ organization "organization" bibinfo.check format.org.or.pub
-}
-
-FUNCTION {format.organization.publisher.address}
-{
-  publisher empty$
-    { format.organization.address }
-    { organization "organization" bibinfo.check output
-      format.publisher.address
-    }
-  if$
-}
-
-FUNCTION {format.school.address.output}
-{
-  school  "school"  bibinfo.warn
-  address "address" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      swap$
-      duplicate$ empty$ 'skip$
-        {
-          ", " *
-        }
-      if$
-      swap$
-    }
-  if$
-  *
-  output
-}
-
-FUNCTION {article.title.produce}
-{
-  control.title duplicate$ #0 <
-  { pop$
-  }{
-    format.title
-    "title" 'bibfield :=
-    swap$ #0 >
-    {
-      "title" output.check
-    }{
-      output
-    } if$
-    new.block.comma
-  } if$
-}
-
-FUNCTION {control}
-{
-}
-
-FUNCTION {article}
-{ output.bibitem
-  format.authors
-  booktitle empty$ {
-      "author" output.check
-    }{ output } if$
-  author format.key output
-  new.block.comma
-  article.title.produce
-  output.article.booktitle
-  crossref missing$
-    {
-      link.open
-      journal
-      "journal" bibinfo.warn
-      "journal" 'bibfield :=
-      output
-      add.blank
-      format.ser.vol.num
-      output
-      eid.or.pages
-      format.date.output.check
-      pages empty$ {
-      doi output
-      } 'skip$ if$
-      link.shut
-    }{
-      format.article.crossref output.nonnull
-      format.pages output
-    }
-  if$
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  format.translation output
-  fin.entry
-}
-
-FUNCTION {book}
-{ output.bibitem
-  author empty$
-    {
-      format.editors "author and editor" output.check
-      editor format.key output
-    }{
-      format.authors output.nonnull
-%     crossref missing$ { editor.check.book } 'skip$ if$
-    }
-  if$
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-  format.edition output
-  author empty$
-    {
-    }
-    {
-      format.editor.in output
-      editor format.key output
-    }
-  if$
-  format.number.series output
-  crossref missing$
-    {
-      format.bvolume output
-      new.block.comma
-      format.publisher.address output
-    }{
-      new.block.comma
-      format.book.crossref output.nonnull
-      format.date.output.check
-    }
-  if$
-  format.isbn.output
-  format.chapter.pages
-  output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {booklet}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  address "address" bibinfo.check output
-  format.date.output
-  format.isbn.output
-  format.book.pages output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {footnote}
-{ output.bibitem
-  format.note output
-  fin.entry
-}
-
-FUNCTION {inbook}
-{ output.bibitem
-  author empty$
-    {
-       format.editors "editor" output.check
-       editor format.key output
-    }{
-       format.authors output.nonnull
-       author format.key output
-    }
-  if$
-  new.block.comma
-
-  format.title output
-  new.block.comma
-
-  crossref missing$
-    {
-      format.in.ed.booktitle.inbook
-      format.publisher.address output
-      format.chapter.pages
-      "chapter and pages"
-      output.check
-      new.block.comma
-      format.edition output
-      new.block.comma
-    }{
-      format.chapter.pages
-      "chapter and pages"
-      output.check
-      new.block.comma
-      format.book.crossref output.nonnull
-      format.date.output.check
-    }
-  if$
-  crossref missing$
-    { format.isbn.output }
-    'skip$
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {incollection}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.publisher.address output
-      format.edition output
-      format.chapter.pages output
-      format.isbn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-      format.chapter.pages output
-    }
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {inproceedings}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.organization.publisher.address output
-      format.chapter.pages output
-      format.isbn.output
-      format.issn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-      format.chapter.pages output
-    }
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {conference} { inproceedings }
-FUNCTION {manual}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      organization "organization" bibinfo.check output
-      address "address" bibinfo.check output
-  format.edition output
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {mastersthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.mthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  format.date.output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {misc}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {phdthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.phdthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  format.date.output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {presentation}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  format.organization.address "organization and address" output.check
-  month "month" output.check
-  year "year" output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  new.sentence
-  type missing$ 'skip$
-    {"(" type capitalize * ")" * output}
-  if$
-  fin.entry
-}
-
-FUNCTION {proceedings}
-{ output.bibitem
-  format.editors output
-  editor format.key output
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      bookaddress "address" bibinfo.check output
-  format.number.series output
-  format.bvolume output
-  format.organization.publisher.address output
-  format.isbn.output
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {techreport}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  new.block.comma
-  format.tr.number
-  output.nonnull
-  institution "institution" bibinfo.warn
-  format.org.or.pub output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {unpublished}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note "note" output.check
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {default.type} { misc }
-
-READ
-
-EXECUTE {control.init}
-
-ITERATE {control.pass}
-
-EXECUTE {control.check}
-
-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 {cite.name.font.apply}
-{
-  word.space * bbl.etal
-  emphasize
-  *
-}
-
-FUNCTION {format.lab.names}
-{ 's :=
-  "" 't :=
-  #1 'nameptr :=
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { 
-      format.name.apply
-      't :=
-      nameptr #1 >
-        {
-          nameptr
-          #2
-          =
-          numnames
-          #3
-          > and
-            { 
-              "others" 't :=
-              #1 'namesleft := 
-            }
-            'skip$
-          if$
-          namesleft #1 >
-            { ", " * t * }
-            {
-              s nameptr "{ll}" format.name$ duplicate$ "others" =
-                { 't := }
-                { pop$ }
-              if$
-              t "others" =
-                {
-                  cite.name.font.apply
-                }{
-                  numnames #2 > { "," * } 'skip$ if$
-                  bbl.and
-                  space.word * t *
-                }
-              if$
-            }
-          if$
-        }
-        't
-      if$
-      nameptr #1 + 'nameptr :=
-      namesleft #1 - 'namesleft :=
-    }
-  while$
-}
-
-FUNCTION {author.key.label}
-{ author empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {author.editor.key.label}
-{ author empty$
-    { editor empty$
-        { key empty$
-            { cite$ #1 #3 substring$ }
-            'key
-          if$
-        }
-        { editor format.lab.names }
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {editor.key.label}
-{ editor empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { editor format.lab.names }
-  if$
-}
-
-FUNCTION {calc.short.authors}
-{ type$ "book" =
-  type$ "inbook" =
-  or
-    'author.editor.key.label
-    { type$ "proceedings" =
-        'editor.key.label
-        'author.key.label
-      if$
-    }
-  if$
-  'short.list :=
-}
-
-FUNCTION {calc.label}
-{
-  calc.short.authors
-  short.list
-  year duplicate$ empty$
-    {
-      pop$ ""
-    }{
-      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
-    }
-  if$
-  "(" swap$ *
-  * 'label :=
-}
-
-FUNCTION {sort.format.names}
-{ 's :=
-  #1 'nameptr :=
-  ""
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { s nameptr
-      "{ll{ }}"
-      control.author.initials {
-        "{  f{ }}"  *
-      }{
-        "{  ff{ }}" *
-      } if$
-      "{  jj{ }}" *
-      format.name$ 't :=
-      nameptr #1 >
-        {
-          "   "  *
-          namesleft #1 = t "others" = and
-            { "zzzzz" * }
-            {
-              t sortify *
-            }
-          if$
-        }
-        { 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 {author.editor.sort}
-{ author empty$
-    { 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 {year.sort.key}
-{
-  year
-}
-
-FUNCTION {editor.sort}
-{ editor empty$
-    { key empty$
-        { "to sort, need editor or key in " cite$ * warning$
-          ""
-        }
-        { key sortify }
-      if$
-    }
-    { editor sort.format.names }
-  if$
-}
-
-INTEGERS { seq.num }
-
-FUNCTION {init.seq}
-{ #0 'seq.num :=}
-
-EXECUTE {init.seq}
-
-FUNCTION {int.to.fix}
-{ "000000000" swap$ int.to.str$ *
-  #-1 #10 substring$
-}
-
-FUNCTION {label.presort}
-{
-  calc.label
-  label sortify
-  "    "
-  *
-  seq.num #1 + 'seq.num :=
-  seq.num  int.to.fix
-  'sort.label :=
-  sort.label
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {presort.pass}
-{ type$ "control" = 'control.presort 'label.presort if$
-}
-
-ITERATE {presort.pass}
-
-SORT
-
-STRINGS { last.label next.extra }
-
-INTEGERS { last.extra.num number.label }
-
-FUNCTION {initialize.extra.label.stuff}
-{ #0 int.to.chr$ 'last.label :=
-  "" 'next.extra :=
-  #0 'last.extra.num :=
-  #0 'number.label :=
-}
-
-FUNCTION {label.forward}
-{
-  last.label label =
-    { last.extra.num #1 + 'last.extra.num :=
-      last.extra.num int.to.chr$ 'extra.label :=
-    }
-    { "a" chr.to.int$ 'last.extra.num :=
-      "" 'extra.label :=
-      label 'last.label :=
-    }
-  if$
-  number.label #1 + 'number.label :=
-}
-
-FUNCTION {label.reverse}
-{ next.extra "b" =
-    { "a" 'extra.label := }
-    'skip$
-  if$
-  extra.label 'next.extra :=
-  extra.label
-  duplicate$ empty$
-    'skip$
-    { "{\natexlab{" swap$ * "}}" * }
-  if$
-  'extra.label :=
-  label extra.label * 'label :=
-}
-
-EXECUTE {initialize.extra.label.stuff}
-
-FUNCTION {forward.pass}
-{ type$ "control" = 'control.forward 'label.forward if$
-}
-
-ITERATE {forward.pass}
-
-FUNCTION {reverse.pass}
-{ type$ "control" = 'control.reverse 'label.reverse if$
-}
-
-REVERSE {reverse.pass}
-
-FUNCTION {sortkey.sort}
-{ sort.label
-  "    "
-  *
-  year.sort.key
-  field.or.null sortify
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {bib.sort.pass}
-{ type$ "control" = 'control.sort 'sortkey.sort if$
-}
-
-ITERATE {bib.sort.pass}
-
-SORT
-
-FUNCTION {init.bib.eprint}
-{
-    "\texttt {"
-  pop$
-  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
-  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
-  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
-  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
-}
-
-FUNCTION {init.bib.doi}
-{
-  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
-}
-
-FUNCTION {init.bib.hypertex}
-{
-  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
-  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
-  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
-  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
-  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
-  "\providecommand \@@startlink[1]{}%" write$ newline$
-  "\providecommand \@@endlink[0]{}%"   write$ newline$
-}
-
-FUNCTION {init.bib.namefont}
-{
-  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
-  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
-  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
-}
-
-FUNCTION {init.bib.quote}
-{
-  "\providecommand " bbl.enquote * " [1]{" *
-  "``" "''"
-  "#1" swap$ "}%" * * * * write$ newline$
-}
-
-FUNCTION {init.bib.ay}
-{
-  "\providecommand \natexlab [1]{#1}%"
-  write$ newline$
-}
-
-FUNCTION {init.bib.bibinfo}
-{
-  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-}
-
-FUNCTION {init.bib.lang}
-{
-  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
-}
-
-FUNCTION {init.bib.endbibitem}
-{
-  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
-  "\providecommand \bibitemStop [0]{}%"               write$ newline$
-  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
-  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
-}
-
-FUNCTION {init.bib.translation}
-{
-  "\providecommand \translation [1]{[#1]}%" write$ newline$
-}
-
-FUNCTION {warn.bib}
-{
-}
-
-FUNCTION {init.bib}
-{
-  warn.bib
-  "\makeatletter" write$ newline$
-  "\providecommand \@ifxundefined [1]{%"   write$ newline$
-  " \@ifx{#1\undefined}"                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifnum [1]{%"          write$ newline$
-  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifx [1]{%"            write$ newline$
-  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  init.bib.ay
-  init.bib.quote
-  init.bib.namefont
-  init.bib.hypertex
-  init.bib.eprint
-  init.bib.doi
-  init.bib.lang
-  init.bib.bibinfo
-  init.bib.translation
-  init.bib.endbibitem
-  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
-  "\let\auto at bib@innerbib\@empty"          write$ newline$
-  "%</preamble>" write$
-}
-
-FUNCTION {begin.bib}
-{
-  id.bst diagn.cmntlog
-  control.bib
-  preamble$ empty$
-    'skip$
-    { preamble$ write$ newline$ }
-  if$
-  "\begin{thebibliography}{"
-  number.label int.to.str$
-  * "}%" *
-  write$ newline$
-  init.bib
-}
-
-EXECUTE {begin.bib}
-
-EXECUTE {init.state.consts}
-
-ITERATE {call.type$}
-
-FUNCTION {end.bib}
-{ newline$
-  "\end{thebibliography}%"
-  write$ newline$
-}
-
-EXECUTE {end.bib}
-
-%% End of customized bst file
-%%
-%% End of file `aipnum4-1.bst'.

Added: trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-2.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-2.bst	                        (rev 0)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-2.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,3491 @@
+%%
+%% This is file `aipnum4-2.bst', and is a hand-edited version of aipnum4-1.bst
+ % ===============================================================
+ % IMPORTANT NOTICE:
+ % This file can be redistributed and/or modified under the terms
+ % of the LaTeX Project Public License Distributed from CTAN
+ % archives in directory macros/latex/base/lppl.txt; either
+ % version 1 of the License, or any later version.
+ % ===============================================================
+ %-------------------------------------------------------------------
+ % This bibliography style file is intended for texts in ENGLISH
+ % This is an author-year citation style bibliography. As such, it is
+ % non-standard LaTeX, and requires a special package file to function properly.
+ % Such a package is natbib.sty   by Patrick W. Daly
+ % The form of the \bibitem entries is
+ %   \bibitem[Jones et al.(1990)]{key}...
+ %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
+ % The essential feature is that the label (the part in brackets) consists
+ % of the author names, as they should appear in the citation, with the year
+ % in parentheses following. There must be no space before the opening
+ % parenthesis!
+ % With natbib v5.3, a full list of authors may also follow the year.
+ % In natbib.sty, it is possible to define the type of enclosures that is
+ % really wanted (brackets or parentheses), but in either case, there must
+ % be parentheses in the label.
+ % The \cite command functions as follows:
+ %   \citet{key} ==>>                Jones et al. (1990)
+ %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
+ %   \citep{key} ==>>                (Jones et al., 1990)
+ %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
+ %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
+ %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
+ %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
+ %   \citeauthor{key} ==>>           Jones et al.
+ %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
+ %   \citeyear{key} ==>>             1990
+ %---------------------------------------------------------------------
+
+FUNCTION {id.bst} {"aipnum4-2.bst 2018-12-27 (MD) hand-edited version of apsrev4-1.bst"}
+ENTRY
+{
+    address
+    archive
+    archivePrefix
+    author
+    bookaddress
+    booktitle
+    chapter
+    collaboration
+    doi
+    edition
+    editor
+    eid
+    eprint
+    howpublished
+    institution
+    isbn
+    issn
+    journal
+    key
+    language
+    month
+    note
+    number
+    organization
+    pages
+    primaryClass
+    publisher
+    school
+    SLACcitation
+    series
+    title
+    translation
+    type
+    url
+    volume
+    year
+}{
+}{
+    label
+    extra.label sort.label
+    short.list
+}
+
+INTEGERS
+{
+  output.state before.all
+  after.word after.punctuation
+  after.sentence after.block
+}
+
+INTEGERS
+{
+  punctuation.state punctuation.no punctuation.space punctuation.yes
+}
+
+STRINGS { bibfield output.bibfield }
+
+FUNCTION {not}
+{   { #0 }
+    { #1 }
+  if$
+}
+
+FUNCTION {and}
+{   'skip$
+    { pop$ #0 }
+  if$
+}
+
+FUNCTION {or}
+{   { pop$ #1 }
+    'skip$
+  if$
+}
+
+FUNCTION {non.stop}
+{ duplicate$
+   "}" * add.period$
+   #-1 #1 substring$ "." =
+}
+
+INTEGERS { arith.mulitplier arith.multiplicand }
+
+FUNCTION {multiply}
+{
+  'arith.multiplicand :=
+  'arith.mulitplier :=
+  #0
+    { arith.mulitplier #0 > }
+    { arith.multiplicand +
+      arith.mulitplier #1 - 'arith.mulitplier :=
+    }
+  while$
+}
+
+FUNCTION {chr.to.hex}
+{
+  chr.to.int$
+  duplicate$ "0" chr.to.int$ -
+  duplicate$ duplicate$ #0 < swap$ #9 > or not
+    { swap$ pop$ }
+    { pop$
+      duplicate$ "A" chr.to.int$ -
+      duplicate$ duplicate$ #0 < swap$ #5 > or not
+        { swap$ pop$ #10 + }
+        { pop$
+          duplicate$ "a" chr.to.int$ -
+          duplicate$ duplicate$ #0 < swap$ #5 > or not
+            { swap$ pop$ #10 + }
+            { pop$
+              pop$ #-1
+            }
+          if$
+        }
+      if$
+    }
+  if$
+}
+
+INTEGERS { arith.accumulator }
+
+FUNCTION {str.to.hex}
+{ #0 'arith.accumulator :=
+    { duplicate$ empty$ not }
+    { duplicate$ #1 #1 substring$ chr.to.hex
+      duplicate$ #0 <
+        { pop$ pop$ ""
+        }
+        { arith.accumulator #16 multiply + 'arith.accumulator :=
+          #2 global.max$ substring$
+        }
+      if$
+    }
+  while$
+  pop$ arith.accumulator
+}
+
+FUNCTION {diagn.cmntlog}
+{
+  duplicate$ top$ "%" swap$ * write$ newline$
+}
+
+INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
+
+INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
+
+FUNCTION { control.init }
+{
+  #0
+  'control.key             :=
+  #0
+  #8 +
+  'control.author :=
+  #0
+  'control.author.jnrlst   :=
+  #0
+  'control.author.dotless  :=
+  #0
+  'control.author.nospace  :=
+  #1
+  'control.author.initials :=
+  #0
+  'control.author.nocomma  :=
+  #0
+  'control.author.first    :=
+  #0
+  'control.author.reversed :=
+  #1
+  'control.editor :=
+  #-1
+  'control.title  :=
+  #0
+  'control.pages  :=
+  #0
+  'control.eprint :=
+  #1
+  'control.year   :=
+}
+
+FUNCTION {warning.dependency}
+{
+  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
+}
+
+FUNCTION {control.check}
+{
+  control.editor
+    {
+      "editor formatted same as author"
+      control.author.reversed {
+        duplicate$ #0 swap$ "reversed" warning.dependency
+        #0 'control.author.reversed :=
+      } 'skip$ if$
+      control.author.first {
+        duplicate$ #0 swap$ "first" warning.dependency
+        #0 'control.author.first :=
+      } 'skip$ if$
+      control.author.nocomma {
+        duplicate$ #0 swap$ "nocomma" warning.dependency
+        #0 'control.author.nocomma :=
+      } 'skip$ if$
+      pop$
+    } 'skip$ if$
+  control.author.reversed 'skip$
+    {
+      "not reversed"
+      control.author.nospace {
+        duplicate$ #0 swap$ "nospace" warning.dependency
+        #0 'control.author.nospace :=
+      } 'skip$ if$
+      control.author.jnrlst 'skip$ {
+        duplicate$ #1 swap$ "jnrlst" warning.dependency
+        #1 'control.author.jnrlst :=
+      } if$
+      control.author.initials {
+        duplicate$ ", initials" *
+        control.author.dotless {
+          duplicate$ #0 swap$ "dotless" warning.dependency
+          #0 'control.author.dotless :=
+        } 'skip$ if$
+        pop$
+      } 'skip$ if$
+      pop$
+    }
+  if$
+  control.author.initials 'skip$ {
+    "not initials"
+    control.author.nocomma {
+      duplicate$ #0 swap$ "nocomma" warning.dependency
+      #0 'control.author.nocomma :=
+    } 'skip$ if$
+    control.author.nospace {
+      duplicate$ #0 swap$ "nospace" warning.dependency
+      #0 'control.author.nospace :=
+    } 'skip$ if$
+    control.author.dotless 'skip$ {
+      duplicate$ #1 swap$ "dotless" warning.dependency
+      #1 'control.author.dotless :=
+    } if$
+    pop$
+  } if$
+}
+
+FUNCTION {control.parse}
+{
+  duplicate$ duplicate$ missing$
+    {
+      pop$ pop$ pop$
+    }
+    { empty$
+        {
+          pop$ #-1
+        }{
+          str.to.hex
+        }
+      if$
+      swap$ :=
+    }
+  if$
+}
+
+FUNCTION {control.dump}
+{
+  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
+  "{" swap$ * "}, " *
+  *
+}
+
+INTEGERS { decode.threshold }
+
+FUNCTION {control.decode}
+{
+  - duplicate$
+  #0 <
+    {
+      skip$ pop$ swap$ #0
+    }
+    {
+      swap$ pop$ swap$ #1
+    }
+  if$
+  swap$ :=
+}
+
+FUNCTION {control.author.decode}
+{
+  control.author
+  duplicate$ duplicate$ #0 < swap$ #128 < not or
+    {
+      int.to.str$ "(" swap$ * ")" *
+      "Control cannot interpret author " swap$ *
+      warning$
+    }{
+      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
+      'control.author.dotless  swap$ duplicate$ #32 control.decode
+      'control.author.nospace  swap$ duplicate$ #16 control.decode
+      'control.author.initials swap$ duplicate$  #8 control.decode
+      'control.author.nocomma  swap$ duplicate$  #4 control.decode
+      'control.author.first    swap$ duplicate$  #2 control.decode
+      'control.author.reversed swap$ duplicate$  #1 control.decode
+      duplicate$ #0 =
+        'skip$
+        {
+          "Control: residue of author"
+          "(" swap$ * ")" * *
+          warning$
+        }
+      if$
+      pop$
+    }
+  if$
+}
+
+FUNCTION {control.setup}
+{
+  type$ cite$ "{" swap$ * "}, " * *
+  "control.key"    key    control.dump *
+  "control.author" author control.dump *
+  "control.editor" editor control.dump *
+  "control.title"  title  control.dump *
+  "control.pages"  pages  control.dump *
+  "control.year"   year   control.dump *
+  "control.eprint" eprint control.dump *
+  top$
+  'control.key    key    control.parse
+  'control.author author control.parse
+  'control.editor editor control.parse
+  'control.title  title  control.parse
+  'control.pages  pages  control.parse
+  'control.year   year   control.parse
+  'control.eprint eprint control.parse
+  control.author.decode
+}
+
+FUNCTION {control.pass}
+{ type$ "control" = 'control.setup 'skip$ if$
+}
+
+FUNCTION {control.presort}
+{
+}
+
+FUNCTION {control.forward}
+{
+}
+
+FUNCTION {control.reverse}
+{
+}
+
+FUNCTION {control.sort}
+{
+}
+
+FUNCTION {control.longest.label}
+{
+}
+
+FUNCTION {control.key.bib}
+{
+  "Control: key "
+  control.key
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  pop$ *
+  diagn.cmntlog
+}
+
+FUNCTION {control.author.bib}
+{
+  "Control: author "
+  control.author "(" swap$ int.to.str$ * ")" * *
+  control.author.reversed { " reversed" * }{} if$
+  control.author.first    { " first"    * }{} if$
+  control.author.nocomma  { " nocomma"  * }{} if$
+  control.author.initials { " initials" * }{} if$
+  control.author.nospace  { " nospace"  * }{} if$
+  control.author.dotless  { " dotless"  * }{} if$
+  control.author.jnrlst   { " jnrlst"   * }{} if$
+  diagn.cmntlog
+}
+
+FUNCTION {control.editor.bib}
+{
+  "Control: editor formatted "
+  control.editor
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "identically to author"
+    } {
+      "differently from author"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.title.bib}
+{
+  "Control: production of article title "
+  control.title
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled"
+  } {
+    #0 > {
+      "required"
+    } {
+      "allowed"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.pages.bib}
+{
+  "Control: page "
+  control.pages
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "none"
+  } {
+    #0 > {
+      "range"
+    } {
+      "single"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.year.bib}
+{
+  "Control: year "
+  control.year
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "truncated"
+    } {
+      "verbatim"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.eprint.bib}
+{
+  "Control: production of eprint "
+  control.eprint
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  #0 < { "disabled" } { "enabled" } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.bib}
+{
+  control.key.bib
+  control.author.bib
+  control.editor.bib
+  control.title.bib
+  control.pages.bib
+  control.year.bib
+  control.eprint.bib
+}
+
+FUNCTION {init.state.consts}
+{
+  #0 'before.all        :=
+  #1 'after.word        :=
+  #2 'after.punctuation :=
+  #3 'after.sentence    :=
+  #4 'after.block       :=
+  #0 'punctuation.no    :=
+  #1 'punctuation.space :=
+  #2 'punctuation.yes   :=
+  "" 'bibfield          :=
+  "" 'output.bibfield   :=
+}
+
+STRINGS { s t}
+FUNCTION {block.punctuation}
+{ ""
+  "," *
+}
+
+FUNCTION {word.space}
+{
+  "\ "
+}
+
+FUNCTION {show.stackstring.one}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  duplicate$ "1(" swap$ * ")" * top$
+}
+
+FUNCTION {show.stackstring.two}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  swap$
+  duplicate$ "1(" swap$ * ")" * top$
+  swap$
+  duplicate$ "2(" swap$ * ")" * top$
+}
+
+FUNCTION {bibfield.command}{ "\bibfield "}
+
+FUNCTION {output.nonnull}
+{
+  swap$
+  output.state after.word =
+    {
+      block.punctuation *
+      word.space *
+    }
+    {
+      output.state after.punctuation =
+        {
+          word.space *
+        }
+        {
+          output.state after.block = output.state after.sentence = or
+            {
+              add.period$
+              "\EOS\ " *
+            }{
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  output.bibfield duplicate$ empty$ 'pop$
+    {
+      bibfield.command
+      " {" * swap$ * "} {" * swap$ * "}" *
+    }
+  if$
+  write$
+  bibfield 'output.bibfield := "" 'bibfield :=
+  output.state after.block =
+    {
+      newline$
+      "\newblock " write$
+    }
+    'skip$
+  if$
+  punctuation.state duplicate$
+  punctuation.yes 'punctuation.state :=
+  punctuation.no =
+    { pop$ before.all }
+    { punctuation.yes = { after.word }{ after.punctuation } if$ }
+  if$
+  'output.state :=
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+    {
+      pop$
+  "" 'bibfield :=
+    }
+    'output.nonnull
+  if$
+}
+
+FUNCTION {output.nopunct}
+{
+  punctuation.no 'punctuation.state :=
+  output.nonnull
+}
+
+FUNCTION {output.check}
+{ swap$
+  duplicate$ empty$
+    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
+    { swap$ pop$ output.nonnull }
+  if$
+}
+
+FUNCTION {bbl.open} { "\BibitemOpen " }
+
+FUNCTION {bbl.shut} { "\BibitemShut " }
+
+FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
+
+FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
+
+FUNCTION {bibitem.shut}
+{
+  non.stop
+    {
+  bibitem.shut.nostop *
+    }{
+  bibitem.shut.stop *
+    }
+  if$
+}
+
+FUNCTION {html.itag} {
+  "p"
+}
+
+FUNCTION {html.ltag} {
+  ""
+}
+
+FUNCTION {output.SLACcitation}
+{ SLACcitation empty$
+    'skip$
+    {
+      newline$
+      SLACcitation write$
+    }
+  if$
+}
+
+FUNCTION {fin.entry}
+{
+  bibitem.shut
+  write$
+    output.SLACcitation
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+    'skip$
+    { after.block 'output.state := }
+  if$
+}
+
+FUNCTION {new.block.comma}
+{
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block = output.state before.all = or
+    'skip$
+    { after.sentence 'output.state := }
+  if$
+}
+
+FUNCTION {new.sentence.comma}
+{
+}
+
+FUNCTION {sentence.or.colon}
+{
+  new.sentence
+}
+
+FUNCTION {add.blank}
+{
+  word.space *
+  before.all 'output.state :=
+}
+
+FUNCTION {no.blank.or.punct}
+{
+   "\hspace {0pt}" *
+   before.all 'output.state :=
+}
+
+FUNCTION {date.block}
+{
+  new.block.comma
+  skip$
+}
+
+STRINGS {z}
+FUNCTION {remove.dots}
+{
+  control.author.dotless {
+    'z :=
+    ""
+    { z empty$ not }
+    { z #1 #1 substring$
+      z #2 global.max$ substring$ 'z :=
+      duplicate$ "." = 'pop$
+        { * }
+      if$
+    }
+    while$
+  } 'skip$ if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+  swap$ empty$
+  and
+    'skip$
+    'new.block
+  if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+    { pop$ "" }
+    'skip$
+  if$
+}
+
+FUNCTION {emphasize}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+      "\emph {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bolden}
+{ duplicate$ empty$
+    { pop$ "" }
+    { "\textbf {" swap$ * "}" * }
+  if$
+}
+
+FUNCTION {bib.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bib.fname.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibfnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {cite.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\citenamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {tie.or.space.prefix}
+{ duplicate$ text.length$ #3 <
+    { "~" }
+    { word.space }
+  if$
+  swap$
+}
+
+FUNCTION {capitalize}
+{
+  "u" change.case$ "t" change.case$
+}
+
+FUNCTION {space.word}
+{ word.space swap$ * word.space * }
+
+ % Here are the language-specific definitions for explicit words.
+ % Each function has a name bbl.xxx where xxx is the English word.
+ % The language selected here is ENGLISH
+
+FUNCTION {bbl.and}
+{
+  "and"
+}
+
+FUNCTION {bbl.etal}
+{
+  "et~al."
+}
+
+FUNCTION {bbl.editors}
+{
+  "eds."
+}
+
+FUNCTION {bbl.editor}
+{
+  "ed."
+}
+
+FUNCTION {bbl.edby}
+{ "edited by" }
+
+FUNCTION {bbl.edition}
+{
+  "ed."
+}
+
+FUNCTION {bbl.volume}
+{
+  "vol."
+}
+
+FUNCTION {bbl.of}
+{ "of" }
+
+FUNCTION {bbl.number}
+{
+  "no."
+}
+
+FUNCTION {bbl.nr}
+{ "no." }
+
+FUNCTION {bbl.in}
+{ "in" }
+
+FUNCTION {bbl.pages}
+{
+  "pp."
+}
+
+FUNCTION {bbl.page}
+{
+  "p."
+}
+
+FUNCTION {bbl.eidpp}
+{ "pages" }
+
+FUNCTION {bbl.chapter}
+{
+  "chap."
+}
+
+FUNCTION {bbl.techrep}
+{
+  "Tech. Rep."
+}
+
+FUNCTION {bbl.mthesis}
+{ "Master's thesis" }
+
+FUNCTION {bbl.phdthesis}
+{ "Ph.D. thesis" }
+
+FUNCTION {bbl.first}
+{
+  "1st"
+}
+
+FUNCTION {bbl.second}
+{
+  "2nd"
+}
+
+FUNCTION {bbl.third}
+{
+  "3rd"
+}
+
+FUNCTION {bbl.fourth}
+{
+  "4th"
+}
+
+FUNCTION {bbl.fifth}
+{
+  "5th"
+}
+
+FUNCTION {bbl.st}
+{ "st" }
+
+FUNCTION {bbl.nd}
+{ "nd" }
+
+FUNCTION {bbl.rd}
+{ "rd" }
+
+FUNCTION {bbl.th}
+{ "th" }
+
+MACRO {jan} {"Jan."}
+
+MACRO {feb} {"Feb."}
+
+MACRO {mar} {"Mar."}
+
+MACRO {apr} {"Apr."}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"Jun."}
+
+MACRO {jul} {"Jul."}
+
+MACRO {aug} {"Aug."}
+
+MACRO {sep} {"Sep."}
+
+MACRO {oct} {"Oct."}
+
+MACRO {nov} {"Nov."}
+
+MACRO {dec} {"Dec."}
+
+FUNCTION {bbl.url.prefix}
+{
+  "\urlprefix "
+}
+
+FUNCTION {eng.ord}
+{ duplicate$ "1" swap$ *
+  #-2 #1 substring$ "1" =
+     { bbl.th * }
+     { duplicate$ #-1 #1 substring$
+       duplicate$ "1" =
+         { pop$ bbl.st * }
+         { duplicate$ "2" =
+             { pop$ bbl.nd * }
+             { "3" =
+                 { bbl.rd * }
+                 { bbl.th * }
+               if$
+             }
+           if$
+          }
+       if$
+     }
+   if$
+}
+
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
+MACRO {aa}{"Astron. \& Astrophys."}
+MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
+MACRO {aj} {"Astron. J."}
+MACRO {aph} {"Acta Phys."}
+MACRO {advp} {"Adv. Phys."}
+MACRO {ajp} {"Amer. J. Phys."}
+MACRO {ajm} {"Amer. J. Math."}
+MACRO {amsci} {"Amer. Sci."}
+MACRO {anofd} {"Ann. Fluid Dyn."}
+MACRO {am} {"Ann. Math."}
+MACRO {ap} {"Ann. Phys. (NY)"}
+MACRO {adp} {"Ann. Phys. (Leipzig)"}
+MACRO {ao} {"Appl. Opt."}
+MACRO {apl} {"Appl. Phys. Lett."}
+MACRO {app} {"Astroparticle Phys."}
+MACRO {apj} {"Astrophys. J."}
+MACRO {apjsup} {"Astrophys. J. Suppl."}
+MACRO {apss} {"Astrophys. Space Sci."}
+MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
+MACRO {baas} {"Bull. Amer. Astron. Soc."}
+MACRO {baps} {"Bull. Amer. Phys. Soc."}
+MACRO {cmp} {"Comm. Math. Phys."}
+MACRO {cpam} {"Commun. Pure Appl. Math."}
+MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
+MACRO {cpc} {"Comp. Phys. Comm."}
+MACRO {cqg} {"Class. Quant. Grav."}
+MACRO {cra} {"C. R. Acad. Sci. A"}
+MACRO {fed} {"Fusion Eng. \& Design"}
+MACRO {ft} {"Fusion Tech."}
+MACRO {grg} {"Gen. Relativ. Gravit."}
+MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
+MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
+MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
+MACRO {ip} {"Infrared Phys."}
+MACRO {irp} {"Infrared Phys."}
+MACRO {jap} {"J. Appl. Phys."}
+MACRO {jasa} {"J. Acoust. Soc. America"}
+MACRO {jcp} {"J. Comp. Phys."}
+MACRO {jetp} {"Sov. Phys.--JETP"}
+MACRO {jfe} {"J. Fusion Energy"}
+MACRO {jfm} {"J. Fluid Mech."}
+MACRO {jmp} {"J. Math. Phys."}
+MACRO {jne} {"J. Nucl. Energy"}
+MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
+MACRO {jnm} {"J. Nucl. Mat."}
+MACRO {jpc} {"J. Phys. Chem."}
+MACRO {jpp} {"J. Plasma Phys."}
+MACRO {jpsj} {"J. Phys. Soc. Japan"}
+MACRO {jsi} {"J. Sci. Instrum."}
+MACRO {jvst} {"J. Vac. Sci. \& Tech."}
+MACRO {nat} {"Nature"}
+MACRO {nature} {"Nature"}
+MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
+MACRO {nf} {"Nucl. Fusion"}
+MACRO {nim} {"Nucl. Inst. \& Meth."}
+MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
+MACRO {np} {"Nucl. Phys."}
+MACRO {npb} {"Nucl. Phys. B"}
+MACRO {nt/f} {"Nucl. Tech./Fusion"}
+MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
+MACRO {inc} {"Nuovo Cimento"}
+MACRO {nc} {"Nuovo Cimento"}
+MACRO {pf} {"Phys. Fluids"}
+MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
+MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
+MACRO {pl} {"Phys. Lett."}
+MACRO {pla} {"Phys. Lett. A"}
+MACRO {plb} {"Phys. Lett. B"}
+MACRO {prep} {"Phys. Rep."}
+MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
+MACRO {pp} {"Phys. Plasmas"}
+MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
+MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
+MACRO {prl} {"Phys. Rev. Lett."}
+MACRO {pr} {"Phys. Rev."}
+MACRO {physrev} {"Phys. Rev."}
+MACRO {pra} {"Phys. Rev. A"}
+MACRO {prb} {"Phys. Rev. B"}
+MACRO {prc} {"Phys. Rev. C"}
+MACRO {prd} {"Phys. Rev. D"}
+MACRO {pre} {"Phys. Rev. E"}
+MACRO {ps} {"Phys. Scripta"}
+MACRO {procrsl} {"Proc. Roy. Soc. London"}
+MACRO {rmp} {"Rev. Mod. Phys."}
+MACRO {rsi} {"Rev. Sci. Inst."}
+MACRO {science} {"Science"}
+MACRO {sciam} {"Sci. Am."}
+MACRO {sam} {"Stud. Appl. Math."}
+MACRO {sjpp} {"Sov. J. Plasma Phys."}
+MACRO {spd} {"Sov. Phys.--Doklady"}
+MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
+MACRO {spu} {"Sov. Phys.--Uspeki"}
+MACRO {st} {"Sky and Telesc."}
+ % End module: physjour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
+MACRO {aisr} {"Adv. Space Res."}
+MACRO {ag} {"Ann. Geophys."}
+MACRO {anigeo} {"Ann. Geofis."}
+MACRO {angl} {"Ann. Glaciol."}
+MACRO {andmet} {"Ann. d. Meteor."}
+MACRO {andgeo} {"Ann. d. Geophys."}
+MACRO {andphy} {"Ann. Phys.-Paris"}
+MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
+MACRO {atph} {"Atm\'osphera"}
+MACRO {aao} {"Atmos. Ocean"}
+MACRO {ass}{"Astrophys. Space Sci."}
+MACRO {atenv} {"Atmos. Environ."}
+MACRO {aujag} {"Aust. J. Agr. Res."}
+MACRO {aumet} {"Aust. Meteorol. Mag."}
+MACRO {blmet} {"Bound.-Lay. Meteorol."}
+MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
+MACRO {cch} {"Clim. Change"}
+MACRO {cdyn} {"Clim. Dynam."}
+MACRO {cbul} {"Climatol. Bull."}
+MACRO {cap} {"Contrib. Atmos. Phys."}
+MACRO {dsr} {"Deep-Sea Res."}
+MACRO {dhz} {"Dtsch. Hydrogr. Z."}
+MACRO {dao} {"Dynam. Atmos. Oceans"}
+MACRO {eco} {"Ecology"}
+MACRO {empl}{"Earth, Moon and Planets"}
+MACRO {envres} {"Environ. Res."}
+MACRO {envst} {"Environ. Sci. Technol."}
+MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
+MACRO {expa}{"Exper. Astron."}
+MACRO {geoint} {"Geofis. Int."}
+MACRO {geopub} {"Geofys. Publ."}
+MACRO {geogeo} {"Geol. Geofiz."}
+MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
+MACRO {gfd} {"Geophys. Fluid Dyn."}
+MACRO {geomag} {"Geophys. Mag."}
+MACRO {georl} {"Geophys. Res. Lett."}
+MACRO {grl} {"Geophys. Res. Lett."}
+MACRO {ga} {"Geophysica"}
+MACRO {gs} {"Geophysics"}
+MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
+MACRO {ijawp} {"Int. J. Air Water Pollut."}
+MACRO {ijc} {"Int. J. Climatol."}
+MACRO {ijrs} {"Int. J. Remote Sens."}
+MACRO {jam} {"J. Appl. Meteorol."}
+MACRO {jaot} {"J. Atmos. Ocean. Technol."}
+MACRO {jatp} {"J. Atmos. Terr. Phys."}
+MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
+MACRO {jce} {"J. Climate"}
+MACRO {jcam} {"J. Climate Appl. Meteor."}
+MACRO {jcm} {"J. Climate Meteor."}
+MACRO {jcy} {"J. Climatol."}
+MACRO {jgr} {"J. Geophys. Res."}
+MACRO {jga} {"J. Glaciol."}
+MACRO {jh} {"J. Hydrol."}
+MACRO {jmr} {"J. Mar. Res."}
+MACRO {jmrj} {"J. Meteor. Res. Japan"}
+MACRO {jm} {"J. Meteor."}
+MACRO {jpo} {"J. Phys. Oceanogr."}
+MACRO {jra} {"J. Rech. Atmos."}
+MACRO {jaes} {"J. Aeronaut. Sci."}
+MACRO {japca} {"J. Air Pollut. Control Assoc."}
+MACRO {jas} {"J. Atmos. Sci."}
+MACRO {jmts} {"J. Mar. Technol. Soc."}
+MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
+MACRO {josj} {"J. Oceanogr. Soc. Japan"}
+MACRO {jwm} {"J. Wea. Mod."}
+MACRO {lao} {"Limnol. Oceanogr."}
+MACRO {mwl} {"Mar. Wea. Log"}
+MACRO {mau} {"Mausam"}
+MACRO {meteor} {"``Meteor'' Forschungsergeb."}
+MACRO {map} {"Meteorol. Atmos. Phys."}
+MACRO {metmag} {"Meteor. Mag."}
+MACRO {metmon} {"Meteor. Monogr."}
+MACRO {metrun} {"Meteor. Rundsch."}
+MACRO {metzeit} {"Meteor. Z."}
+MACRO {metgid} {"Meteor. Gidrol."}
+MACRO {mwr} {"Mon. Weather Rev."}
+MACRO {nwd} {"Natl. Weather Dig."}
+MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
+MACRO {npg} {"Nonlin. Proc. Geophys."}
+MACRO {om} {"Oceanogr. Meteorol."}
+MACRO {ocac} {"Oceanol. Acta"}
+MACRO {oceanus} {"Oceanus"}
+MACRO {paleoc} {"Paleoceanography"}
+MACRO {pce} {"Phys. Chem. Earth"}
+MACRO {pmg} {"Pap. Meteor. Geophys."}
+MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
+MACRO {physzeit} {"Phys. Z."}
+MACRO {pps} {"Planet. Space Sci."}
+MACRO {pss} {"Planet. Space Sci."}
+MACRO {pag} {"Pure Appl. Geophys."}
+MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
+MACRO {quatres} {"Quat. Res."}
+MACRO {rsci} {"Radio Sci."}
+MACRO {rse} {"Remote Sens. Environ."}
+MACRO {rgeo} {"Rev. Geophys."}
+MACRO {rgsp} {"Rev. Geophys. Space Phys."}
+MACRO {rdgeo} {"Rev. Geofis."}
+MACRO {revmeta} {"Rev. Meteorol."}
+MACRO {sgp}{"Surveys in Geophys."}
+MACRO {sp} {"Solar Phys."}
+MACRO {ssr} {"Space Sci. Rev."}
+MACRO {tellus} {"Tellus"}
+MACRO {tac} {"Theor. Appl. Climatol."}
+MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
+MACRO {wrr} {"Water Resour. Res."}
+MACRO {weather} {"Weather"}
+MACRO {wafc} {"Weather Forecast."}
+MACRO {ww} {"Weatherwise"}
+MACRO {wmob} {"WMO Bull."}
+MACRO {zeitmet} {"Z. Meteorol."}
+ % End module: geojour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
+
+MACRO {appopt} {"Appl. Opt."}
+MACRO {bell} {"Bell Syst. Tech. J."}
+MACRO {ell} {"Electron. Lett."}
+MACRO {jasp} {"J. Appl. Spectr."}
+MACRO {jqe} {"IEEE J. Quantum Electron."}
+MACRO {jlwt} {"J. Lightwave Technol."}
+MACRO {jmo} {"J. Mod. Opt."}
+MACRO {josa} {"J. Opt. Soc. America"}
+MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
+MACRO {josab} {"J. Opt. Soc. Amer.~B"}
+MACRO {jdp} {"J. Phys. (Paris)"}
+MACRO {oc} {"Opt. Commun."}
+MACRO {ol} {"Opt. Lett."}
+MACRO {phtl} {"IEEE Photon. Technol. Lett."}
+MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
+MACRO {sse} {"Solid-State Electron."}
+MACRO {sjot} {"Sov. J. Opt. Technol."}
+MACRO {sjqe} {"Sov. J. Quantum Electron."}
+MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
+MACRO {stph} {"Sov. Phys.--Techn. Phys."}
+MACRO {stphl} {"Sov. Techn. Phys. Lett."}
+MACRO {vr} {"Vision Res."}
+MACRO {zph} {"Z. f. Physik"}
+MACRO {zphb} {"Z. f. Physik~B"}
+MACRO {zphd} {"Z. f. Physik~D"}
+
+MACRO {CLEO} {"CLEO"}
+MACRO {ASSL} {"Adv. Sol.-State Lasers"}
+MACRO {OSA}  {"OSA"}
+ % End module: photjour.mbs
+%% Copyright 1994-2007 Patrick W Daly
+MACRO {acmcs} {"ACM Comput. Surv."}
+MACRO {acta} {"Acta Inf."}
+MACRO {cacm} {"Commun. ACM"}
+MACRO {ibmjrd} {"IBM J. Res. Dev."}
+MACRO {ibmsj} {"IBM Syst.~J."}
+MACRO {ieeese} {"IEEE Trans. Software Eng."}
+MACRO {ieeetc} {"IEEE Trans. Comput."}
+MACRO {ieeetcad}
+ {"IEEE Trans. Comput. Aid. Des."}
+MACRO {ipl} {"Inf. Process. Lett."}
+MACRO {jacm} {"J.~ACM"}
+MACRO {jcss} {"J.~Comput. Syst. Sci."}
+MACRO {scp} {"Sci. Comput. Program."}
+MACRO {sicomp} {"SIAM J. Comput."}
+MACRO {tocs} {"ACM Trans. Comput. Syst."}
+MACRO {tods} {"ACM Trans. Database Syst."}
+MACRO {tog} {"ACM Trans. Graphic."}
+MACRO {toms} {"ACM Trans. Math. Software"}
+MACRO {toois} {"ACM Trans. Office Inf. Syst."}
+MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
+MACRO {tcs} {"Theor. Comput. Sci."}
+
+MACRO {jhep} {"J. High Energy Phys."}
+MACRO {jcap} {"J. Cosmol. Astropart. Phys."}
+MACRO {jinst} {"J. Instrum."}
+MACRO {jstat} {"J. Stat. Mech.: Theory Exp."}
+
+FUNCTION {bibinfo.command} { "\bibinfo " }
+
+FUNCTION {bibinfo.check}
+{ swap$
+  duplicate$ missing$
+    {
+      pop$
+      pop$ ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ pop$
+        }{
+          swap$
+          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {bibinfo.warn}
+{ swap$
+  duplicate$ missing$
+    {
+      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
+      ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ "empty " swap$ * " in " * cite$ * warning$
+        }{
+          swap$
+          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {archiv.base}
+{
+  "https://arxiv.org/abs"
+}
+
+FUNCTION {archiv.prefix.base}
+{
+  "arXiv"
+}
+
+FUNCTION {eprint.command}
+{
+  "\Eprint "
+}
+
+FUNCTION {format.eprint.controlled}
+{
+  eprint duplicate$ empty$
+  control.eprint #1 =
+  or
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.eprint}
+{
+  eprint duplicate$ empty$
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.translation}
+{ translation duplicate$ empty$
+    'skip$
+    { ""
+      "\translation{" * swap$ * "}" *
+      punctuation.space 'punctuation.state :=
+    }
+  if$
+}
+
+FUNCTION {format.url}
+{
+  url duplicate$ empty$
+    { pop$ "" }
+    {
+      "\url "
+      "{" * swap$ * "}" *
+    }
+  if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+FUNCTION {check.speaker}
+{ key empty$ 'skip$
+  { key nameptr int.to.str$ =
+    {
+      bolden
+    }
+      'skip$
+    if$
+  }
+  if$
+}
+
+
+STRINGS  { bibinfo}
+
+FUNCTION {format.names.fname}
+{
+  control.author.initials {
+    control.author.dotless {
+      control.author.nospace {
+        "f{}"
+      } {
+        "f{~}"
+      } if$
+    } {
+      control.author.nospace {
+        "f{.}."
+      } {
+        "f."
+      } if$
+    } if$
+  } {
+    "ff"
+  } if$
+}
+
+FUNCTION {bracify}
+{
+  "{" swap$ * "}" *
+}
+
+FUNCTION {name.comma}
+{
+  control.author.nocomma 'skip$ { "," swap$ * } if$
+}
+
+FUNCTION {format.names.format.onefont}
+{
+  "{vv~}{ll}"
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+    {
+      control.author.initials {
+        "f"
+        control.author.dotless 'skip$ {
+          "." *
+        } if$
+        "~" *
+      } {
+        "ff"
+      } if$
+      bracify
+      swap$
+    } {
+      format.names.fname
+      " " swap$ *
+      name.comma
+      bracify
+    }
+  if$
+  "jj"
+  " " swap$ *
+  name.comma
+  bracify
+  control.author.jnrlst 'skip$ 'swap$ if$
+  * *
+}
+
+FUNCTION {format.names.onefont}
+{
+  s nameptr format.names.format.onefont format.name$
+  remove.dots
+  bib.name.font
+}
+
+FUNCTION {format.names.morfont}
+{ s nameptr
+  "{vv~}{ll}" format.name$ bib.name.font
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+  {
+    s nameptr
+    control.author.initials {
+      "f"                        % default: name + surname + comma junior
+    } {
+      "ff"
+    } if$
+    control.author.dotless 'skip$ {
+      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
+    } if$
+    bracify
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    swap$
+    *
+    s nameptr
+    "{jj}" format.name$ duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } {
+    "," *
+    s nameptr
+    format.names.fname
+    "jj"
+    " "
+    name.comma
+    control.author.jnrlst {
+      swap$ * skip$
+    } {
+      skip$ * swap$
+    } if$
+    bracify swap$ bracify swap$
+    *
+    format.name$
+    remove.dots
+    duplicate$ empty$ 'skip$
+      { bib.fname.font " " swap$ * }
+      if$
+  } if$
+  *
+}
+
+FUNCTION {names.punctuate}
+{
+  "," *
+  " " *
+}
+
+FUNCTION {format.names}
+{ 'bibinfo :=
+  duplicate$ empty$ { pop$ "" } {
+    duplicate$ num.names$
+    duplicate$ 'numnames :=
+    'namesleft :=
+    's :=
+    #1 'nameptr :=
+    ""
+      { namesleft #0 > }
+      {
+      format.names.morfont
+        bibinfo bibinfo.check
+        type$ "presentation" =
+          'check.speaker
+          'skip$
+        if$
+        't :=
+        nameptr #1 > not
+          {
+            t *
+          } {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              } {
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " *
+                    bbl.etal
+                    emphasize
+                    *
+                  } {
+                    bbl.and
+                    word.space * *
+                    t *
+                  }
+                if$
+              }
+            if$
+          }
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+  } if$
+}
+
+FUNCTION {format.names.ed.onefont}
+{
+    s nameptr
+    control.author.initials {
+      control.author.dotless {
+        control.author.nospace {
+          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
+        } {
+          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
+        } if$
+      } {
+        control.author.nospace {
+          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
+        }{
+          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
+        } if$
+      } if$
+    } {
+      "{ff~}{vv~}{ll}{, jj}"
+    } if$
+    format.name$
+    remove.dots
+    bib.name.font
+}
+
+FUNCTION {format.names.ed.morfont}
+{
+  control.author.reversed { %
+    control.author.initials { %
+      control.author.dotless { %
+        s nameptr
+        control.author.nospace { % nm-rvx nm-rvcx
+          "{f{}}"
+        } { % nm-rv
+          "{f{~}}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        remove.dots
+        duplicate$ empty$ 'skip$
+          { bib.fname.font " " swap$ * }
+        if$
+      } { % !control.author.dotless
+        s nameptr
+        control.author.nospace { % nm-rvv
+          "{ff}"
+        } { % nm-rev nm-rev1
+          "{f.}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        duplicate$ empty$ 'skip$
+          { bib.fname.font ", " swap$ * }
+        if$
+      } if$
+    } { % Full names !control.author.initials  nm-revf nm-revv1
+      s nameptr
+      "{ff}"
+      format.name$ duplicate$ empty$ 'skip$
+        { tie.or.space.prefix bib.fname.font swap$ * }
+      if$
+      s nameptr
+      "{vv~}{ll}" format.name$ bib.name.font *
+      s nameptr
+      "{jj}" format.name$
+      duplicate$ empty$ 'skip$
+        { bib.fname.font ", " swap$ * }
+      if$
+    } if$
+  } { % !control.author.reversed nm-init
+    s nameptr
+    "{f.}"
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    s nameptr
+    "{vv~}{ll}" format.name$ bib.name.font *
+    s nameptr
+    "{jj}" format.name$
+    duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } if$
+  *
+}
+
+FUNCTION {format.names.ed}
+{
+  control.editor #0 > {
+    format.names
+  } {
+    'bibinfo :=
+    duplicate$ empty$ 'skip$ {
+    's :=
+    "" 't :=
+    #1 'nameptr :=
+    s num.names$ 'numnames :=
+    numnames 'namesleft :=
+      { namesleft #0 > }
+      {
+       format.names.ed.morfont
+        bibinfo bibinfo.check
+        't :=
+        nameptr #1 >
+          {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              }{
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " * bbl.etal emphasize *
+                  }{
+                   bbl.and
+                    space.word * t *
+                  }
+                if$
+              }
+            if$
+          }
+          't
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+    } if$
+  } if$
+}
+
+FUNCTION {format.key}
+{ empty$
+    { key field.or.null }
+    { "" }
+  if$
+}
+
+FUNCTION {format.authors}
+{ author "author" format.names
+  duplicate$ empty$ 'skip$
+    { collaboration "collaboration" bibinfo.check
+      duplicate$ empty$ 'skip$
+        { " (" swap$ * ")" * }
+      if$
+      *
+    }
+  if$
+  "author" 'bibfield :=
+}
+
+FUNCTION {get.bbl.editor}
+{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
+}
+
+FUNCTION {format.editors}
+{ editor "editor" format.names duplicate$ empty$ 'skip$
+    {
+      "," *
+      word.space *
+      get.bbl.editor
+      *
+    }
+  if$
+}
+
+FUNCTION {format.isbn.output}
+{
+}
+
+FUNCTION {format.issn.output}
+{ 
+}
+
+FUNCTION {doi.base}
+{
+  "https://doi.org/"
+}
+
+FUNCTION {doi.base.command}
+{
+  "\doibase "
+}
+
+FUNCTION {noop.command}
+{
+  "\href at noop "
+}
+
+FUNCTION {href.command}
+{
+  "\href "
+}
+
+FUNCTION {link.tag.open}
+{
+  doi duplicate$ empty$
+    {
+      pop$
+      url duplicate$ empty$
+        {
+          pop$ "" noop.command
+        }{
+          href.command
+        }
+      if$
+    }
+    {
+      "https://doi.org/" swap$ * 
+      href.command
+    }
+  if$
+  "{" * swap$ * "} {" *
+}
+
+FUNCTION {link.tag.shut}
+{
+  "}"
+}
+
+FUNCTION {link.open}
+{
+  link.tag.open output.nopunct
+}
+
+FUNCTION {link.shut}
+{
+  link.tag.shut *
+}
+
+FUNCTION {add.doi}
+{
+  link.tag.open swap$ * link.tag.shut *
+}
+
+FUNCTION {select.language}
+{ duplicate$ empty$
+    'pop$
+    { language empty$
+        'skip$
+        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
+      if$
+    }
+    if$
+}
+
+FUNCTION {format.note}
+{
+ note empty$
+    { "" }
+    { note #1 #1 substring$
+      duplicate$ "{" =
+        'skip$
+        {
+          output.state after.word = output.state after.punctuation = or
+            { "l" }
+            { "u" }
+          if$ change.case$
+        }
+      if$
+      note #2 global.max$ substring$ * "note" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {bbl.enquote}
+{
+  "\enquote "
+}
+
+FUNCTION {string.enquote}
+{
+  punctuation.no 'punctuation.state :=
+  non.stop {
+    block.punctuation
+  } { "" } if$
+   swap$ pop$
+  *
+  bbl.enquote "{" * swap$ * "}" *
+  word.space *
+}
+
+FUNCTION {format.title}
+{ title
+  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
+  duplicate$ "title" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      string.enquote
+      select.language
+    }
+  if$
+}
+
+FUNCTION {end.quote.title}
+{ title empty$
+    'skip$
+    { before.all 'output.state := }
+  if$
+}
+
+FUNCTION {format.name.apply}
+{
+  s nameptr
+  "{vv~}{ll}"
+  format.name$
+  cite.name.font
+}
+
+FUNCTION {format.full.names}
+{
+  's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                {
+                  't :=
+                }
+                'pop$
+              if$
+              t "others" =
+                {
+                  " " * bbl.etal
+                  emphasize *
+                }{
+                  numnames #2 > { "," * }{ skip$ } if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {make.full.names}
+{
+  key editor author
+  type$ "proceedings" =
+  type$ "book"        =
+  type$ "inbook"      =
+  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
+  duplicate$ empty$
+    { pop$
+      duplicate$ empty$
+        { pop$
+          duplicate$ empty$
+            { pop$
+              cite$ #1 #3 substring$
+            }{
+              skip$
+            }
+          if$
+        }
+        { swap$ pop$ format.full.names }
+      if$
+    }
+    { swap$ pop$ swap$ pop$ format.full.names }
+  if$
+}
+
+FUNCTION {year.bibitem}
+{
+  year duplicate$ empty$
+  { pop$ ""
+  }{
+    skip$
+  } if$
+  extra.label *
+}
+
+FUNCTION {output.bibitem}
+{
+  newline$
+  ""
+  label
+  * ")" *
+   make.full.names duplicate$ short.list =
+   { pop$ }{ * } if$
+   bracify
+  "[" swap$ * "]" *
+  cite$ bracify "%" *
+  *
+  "\bibitem "
+  swap$ *
+  write$ newline$
+  "  "
+  duplicate$ bbl.open * write$ newline$
+  before.all 'output.state :=
+  punctuation.yes 'punctuation.state :=
+}
+
+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 {word.in}
+{
+  bbl.in
+  word.space *
+}
+
+FUNCTION {date.encapsulate}
+{
+  duplicate$ empty$
+    'skip$
+    {
+      before.all 'output.state :=
+      " (" swap$ * ")" *
+    }
+  if$
+}
+
+FUNCTION {format.date}
+{
+  year "year" bibinfo.check duplicate$ empty$
+    {
+    }
+    'skip$
+  if$
+  extra.label *
+  date.encapsulate
+}
+
+FUNCTION {format.date.output.check}
+{
+ format.date
+ "year" output.check
+}
+
+FUNCTION {format.date.output}
+{
+  format.date.output.check
+}
+
+FUNCTION {format.btitle}
+{
+  booktitle duplicate$ empty$ { pop$
+      title
+  } 'skip$ if$
+  "title" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {either.or.check}
+{ empty$
+    'pop$
+    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+  if$
+}
+
+FUNCTION {editor.check.book}
+{ editor empty$ 'skip$
+    {
+      "can't use both author and editor fields in " cite$ *
+      ": try using @inbook instead" *
+      warning$
+    }
+  if$
+}
+
+FUNCTION {format.bvolume}
+{ volume duplicate$ empty$
+    { pop$ "" }
+    {
+      "volume and number" number either.or.check
+      bbl.volume
+      capitalize
+      swap$
+      tie.or.space.prefix "volume" bibinfo.check * *
+      series "series" bibinfo.check duplicate$ empty$ 'pop$
+        {
+          ", "
+          * swap$ *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.number}
+{
+  bbl.number
+  output.state after.word = output.state after.punctuation = or
+  #1 or
+  #0 and
+    'skip$
+    { capitalize }
+  if$
+  number tie.or.space.prefix "number" bibinfo.check * *
+}
+
+FUNCTION {format.number.series}
+{ volume empty$
+    { number empty$
+        { series field.or.null }
+        {
+          series empty$
+            {
+              number "number" bibinfo.check
+            }{
+              format.number
+              series "series" bibinfo.check
+              word.space * swap$ *
+            }
+          if$
+        }
+      if$
+    }
+    { "" }
+  if$
+}
+
+FUNCTION {is.num}
+{ chr.to.int$
+  duplicate$ "0" chr.to.int$ < not
+  swap$ "9" chr.to.int$ > not and
+}
+
+FUNCTION {extract.num}
+{ duplicate$ 't :=
+  "" 's :=
+  { t empty$ not }
+  { t #1 #1 substring$
+    t #2 global.max$ substring$ 't :=
+    duplicate$ is.num
+      { s swap$ * 's := }
+      { pop$ "" 't := }
+    if$
+  }
+  while$
+  s empty$
+    'skip$
+    { pop$ s }
+  if$
+}
+
+FUNCTION {convert.edition}
+{ extract.num "l" change.case$ 's :=
+  s "first" = s "1" = or
+    { bbl.first 't := }
+    { s "second" = s "2" = or
+        { bbl.second 't := }
+        { s "third" = s "3" = or
+            { bbl.third 't := }
+            { s "fourth" = s "4" = or
+                { bbl.fourth 't := }
+                { s "fifth" = s "5" = or
+                    { bbl.fifth 't := }
+                    { s #1 #1 substring$ is.num
+                        { s
+                            eng.ord
+                        't := }
+                        { edition 't := }
+                      if$
+                    }
+                  if$
+                }
+              if$
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  t
+}
+
+FUNCTION {format.edition}
+{ edition duplicate$ empty$ 'skip$
+    {
+      convert.edition
+      output.state after.word = output.state after.punctuation = or
+        { "l" }
+        { "t" }
+      if$ change.case$
+      "edition" bibinfo.check
+      word.space * bbl.edition *
+    }
+  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 duplicate$ empty$
+    'skip$
+    { duplicate$ multi.page.check
+        {
+          bbl.pages swap$
+          n.dashify
+        }{
+          bbl.page swap$
+        }
+      if$
+      tie.or.space.prefix
+      "pages" bibinfo.check
+      * *
+    }
+  if$
+}
+
+FUNCTION {first.page}
+{ 't :=
+  ""
+    {  t empty$ not t #1 #1 substring$ "-" = not and }
+    { t #1 #1 substring$ *
+      t #2 global.max$ substring$ 't :=
+    }
+  while$
+}
+
+FUNCTION {format.book.pages}
+{
+  pages duplicate$ empty$ 'skip$
+    {
+      "pages" bibinfo.check word.space bbl.pages * *
+    }
+  if$
+}
+
+FUNCTION {volnum.punct}
+{
+          ","
+  word.space *
+}
+
+FUNCTION {format.journal.pages}
+{ pages duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$
+        { pop$ pop$ format.pages }
+        { volnum.punct *
+          swap$
+          control.pages duplicate$ #0 < {
+            pop$ pop$
+          }{
+            #0 >
+            {
+              n.dashify
+            }{
+              first.page
+            } if$
+          } if$
+          "pages" bibinfo.check
+          *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.journal.eid}
+{ eid "eid" bibinfo.check
+  duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$ 'skip$
+        { volnum.punct * }
+      if$
+      swap$ *
+    }
+  if$
+}
+
+FUNCTION {eid.or.pages}
+{
+  eid empty$
+    { format.journal.pages }
+    { format.journal.eid }
+  if$
+}
+
+FUNCTION {format.ser.vol.num}
+{
+  series "series" bibinfo.check output
+  volume field.or.null
+  duplicate$ empty$ 'skip$
+    {
+      "volume" bibinfo.check
+    }
+  if$
+  bolden
+}
+
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+    {
+    format.pages
+    }
+    { type empty$
+        {
+          bbl.chapter
+          capitalize
+        }{
+          type
+          capitalize
+          "type" bibinfo.check
+        }
+      if$
+      chapter tie.or.space.prefix
+      "chapter" bibinfo.check
+      * *
+      pages empty$
+        'skip$
+        { ", " * format.pages * }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.booktitle}
+{
+  booktitle duplicate$ "booktitle" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      pop$ emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {format.editor.in}
+{
+  editor "editor" format.names.ed duplicate$ empty$ 'skip$
+    {
+      bbl.edby
+      word.space * swap$ *
+    }
+  if$
+}
+
+FUNCTION {output.article.booktitle}
+{
+  format.booktitle
+      "booktitle" 'bibfield :=
+  output
+  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
+    {
+      "address" 'bibfield :=
+      output.nonnull after.punctuation 'output.state :=
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      format.editor.in "editor" bibinfo.check output
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle.inbook}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      author empty$ 'skip$
+        { format.editor.in "editor" bibinfo.check output }
+    if$
+    }
+  if$
+}
+
+FUNCTION {format.thesis.type}
+{ type duplicate$ empty$
+    'pop$
+    { swap$ pop$
+      "t" change.case$ "type" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {format.tr.number}
+{ number "number" bibinfo.check
+  type duplicate$ empty$
+    { pop$ bbl.techrep }
+    'skip$
+  if$
+  "type" bibinfo.check
+  swap$ duplicate$ empty$
+    { pop$ "t" change.case$ }
+    { tie.or.space.prefix * * }
+  if$
+}
+
+FUNCTION {format.article.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.book.crossref}
+{ volume duplicate$ empty$
+    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+      pop$ word.in
+    }
+    { bbl.volume
+      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
+    }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.org.or.pub}
+{ 't :=
+  ""
+  address "address" bibinfo.check
+  duplicate$ empty$
+    { pop$ t }
+    { t duplicate$ empty$
+        { pop$ }
+        {
+          "," word.space *
+          * swap$ *
+        }
+      if$
+    }
+  if$
+  *
+  year duplicate$ empty$
+    {
+      "empty year in " cite$ *
+      warning$
+      pop$ ""
+    }
+    'skip$
+  if$
+  duplicate$ empty$
+    { pop$ }
+    {
+      "year" bibinfo.check
+      swap$
+      duplicate$ empty$
+        { pop$ }
+        {
+          "," *
+          word.space *
+          swap$ *
+        }
+      if$
+    }
+  if$
+  duplicate$ empty$ 'skip$ {
+    ""
+    "(" * swap$ * ")" *
+    after.punctuation 'output.state :=
+    punctuation.space 'punctuation.state :=
+  } if$
+}
+
+FUNCTION {format.publisher.address}
+{ publisher "publisher" bibinfo.warn format.org.or.pub
+}
+
+FUNCTION {format.organization.address}
+{ organization "organization" bibinfo.check format.org.or.pub
+}
+
+FUNCTION {format.organization.publisher.address}
+{
+  publisher empty$
+    { format.organization.address }
+    { organization "organization" bibinfo.check output
+      format.publisher.address
+    }
+  if$
+}
+
+FUNCTION {format.school.address.output}
+{
+  school  "school"  bibinfo.warn
+  address "address" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      swap$
+      duplicate$ empty$ 'skip$
+        {
+          ", " *
+        }
+      if$
+      swap$
+    }
+  if$
+  *
+  output
+}
+
+FUNCTION {article.title.produce}
+{
+  control.title duplicate$ #0 <
+  { pop$
+  }{
+    format.title
+    "title" 'bibfield :=
+    swap$ #0 >
+    {
+      "title" output.check
+    }{
+      output
+    } if$
+    new.block.comma
+  } if$
+}
+
+FUNCTION {control}
+{
+}
+
+FUNCTION {article}
+{ output.bibitem
+  format.authors
+  booktitle empty$ {
+      "author" output.check
+    }{ output } if$
+  author format.key output
+  new.block.comma
+  article.title.produce
+  output.article.booktitle
+  crossref missing$
+    {
+      link.open
+      journal
+      "journal" bibinfo.warn
+      "journal" 'bibfield :=
+      output
+      add.blank
+      format.ser.vol.num
+      output
+      eid.or.pages
+      format.date.output.check
+      pages empty$ {
+      doi output
+      } 'skip$ if$
+      link.shut
+    }{
+      format.article.crossref output.nonnull
+      format.pages output
+    }
+  if$
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint.controlled output
+  format.translation output
+  fin.entry
+}
+
+FUNCTION {book}
+{ output.bibitem
+  author empty$
+    {
+      format.editors "author and editor" output.check
+      editor format.key output
+    }{
+      format.authors output.nonnull
+%     crossref missing$ { editor.check.book } 'skip$ if$
+    }
+  if$
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+  format.edition output
+  author empty$
+    {
+    }
+    {
+      format.editor.in output
+      editor format.key output
+    }
+  if$
+  format.number.series output
+  crossref missing$
+    {
+      format.bvolume output
+      new.block.comma
+      format.publisher.address output
+    }{
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  format.isbn.output
+  format.chapter.pages
+  output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {booklet}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  address "address" bibinfo.check output
+  format.date.output
+  format.isbn.output
+  format.book.pages output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {footnote}
+{ output.bibitem
+  format.note output
+  fin.entry
+}
+
+FUNCTION {inbook}
+{ output.bibitem
+  author empty$
+    {
+       format.editors "editor" output.check
+       editor format.key output
+    }{
+       format.authors output.nonnull
+       author format.key output
+    }
+  if$
+  new.block.comma
+
+  format.title output
+  new.block.comma
+
+  crossref missing$
+    {
+      format.in.ed.booktitle.inbook
+      format.publisher.address output
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.edition output
+      new.block.comma
+    }{
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  crossref missing$
+    { format.isbn.output }
+    'skip$
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {incollection}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.publisher.address output
+      format.edition output
+      format.chapter.pages output
+      format.isbn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {inproceedings}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.organization.publisher.address output
+      format.chapter.pages output
+      format.isbn.output
+      format.issn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {conference} { inproceedings }
+FUNCTION {manual}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      organization "organization" bibinfo.check output
+      address "address" bibinfo.check output
+  format.edition output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {mastersthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.mthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {misc}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {phdthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.phdthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {presentation}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  format.organization.address "organization and address" output.check
+  month "month" output.check
+  year "year" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  new.sentence
+  type missing$ 'skip$
+    {"(" type capitalize * ")" * output}
+  if$
+  fin.entry
+}
+
+FUNCTION {proceedings}
+{ output.bibitem
+  format.editors output
+  editor format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      bookaddress "address" bibinfo.check output
+  format.number.series output
+  format.bvolume output
+  format.organization.publisher.address output
+  format.isbn.output
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {techreport}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  format.tr.number
+  output.nonnull
+  institution "institution" bibinfo.warn
+  format.org.or.pub output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {unpublished}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note "note" output.check
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {dataset}
+{ 
+  output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  article.title.produce
+  doi missing$
+  url missing$ not and
+  {
+    link.open
+    url "url" output.check
+    link.shut
+  }
+  {
+    link.open
+    doi "doi" output.check
+    link.shut
+  } if$
+  format.date.output
+  format.note output
+  fin.entry
+}
+
+FUNCTION {default.type} { misc }
+
+READ
+
+EXECUTE {control.init}
+
+ITERATE {control.pass}
+
+EXECUTE {control.check}
+
+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 {cite.name.font.apply}
+{
+  word.space * bbl.etal
+  emphasize
+  *
+}
+
+FUNCTION {format.lab.names}
+{ 's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { 
+      format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          nameptr
+          #2
+          =
+          numnames
+          #3
+          > and
+            { 
+              "others" 't :=
+              #1 'namesleft := 
+            }
+            'skip$
+          if$
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                { 't := }
+                { pop$ }
+              if$
+              t "others" =
+                {
+                  cite.name.font.apply
+                }{
+                  numnames #2 > { "," * } 'skip$ if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {author.key.label}
+{ author empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {author.editor.key.label}
+{ author empty$
+    { editor empty$
+        { key empty$
+            { cite$ #1 #3 substring$ }
+            'key
+          if$
+        }
+        { editor format.lab.names }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {editor.key.label}
+{ editor empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { editor format.lab.names }
+  if$
+}
+
+FUNCTION {calc.short.authors}
+{ type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.key.label
+    { type$ "proceedings" =
+        'editor.key.label
+        'author.key.label
+      if$
+    }
+  if$
+  'short.list :=
+}
+
+FUNCTION {calc.label}
+{
+  calc.short.authors
+  short.list
+  year duplicate$ empty$
+    {
+      pop$ ""
+    }{
+      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
+    }
+  if$
+  "(" swap$ *
+  * 'label :=
+}
+
+FUNCTION {sort.format.names}
+{ 's :=
+  #1 'nameptr :=
+  ""
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { s nameptr
+      "{ll{ }}"
+      control.author.initials {
+        "{  f{ }}"  *
+      }{
+        "{  ff{ }}" *
+      } if$
+      "{  jj{ }}" *
+      format.name$ 't :=
+      nameptr #1 >
+        {
+          "   "  *
+          namesleft #1 = t "others" = and
+            { "zzzzz" * }
+            {
+              t sortify *
+            }
+          if$
+        }
+        { 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 {author.editor.sort}
+{ author empty$
+    { 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 {year.sort.key}
+{
+  year
+}
+
+FUNCTION {editor.sort}
+{ editor empty$
+    { key empty$
+        { "to sort, need editor or key in " cite$ * warning$
+          ""
+        }
+        { key sortify }
+      if$
+    }
+    { editor sort.format.names }
+  if$
+}
+
+INTEGERS { seq.num }
+
+FUNCTION {init.seq}
+{ #0 'seq.num :=}
+
+EXECUTE {init.seq}
+
+FUNCTION {int.to.fix}
+{ "000000000" swap$ int.to.str$ *
+  #-1 #10 substring$
+}
+
+FUNCTION {label.presort}
+{
+  calc.label
+  label sortify
+  "    "
+  *
+  seq.num #1 + 'seq.num :=
+  seq.num  int.to.fix
+  'sort.label :=
+  sort.label
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {presort.pass}
+{ type$ "control" = 'control.presort 'label.presort if$
+}
+
+ITERATE {presort.pass}
+
+SORT
+
+STRINGS { last.label next.extra }
+
+INTEGERS { last.extra.num number.label }
+
+FUNCTION {initialize.extra.label.stuff}
+{ #0 int.to.chr$ 'last.label :=
+  "" 'next.extra :=
+  #0 'last.extra.num :=
+  #0 'number.label :=
+}
+
+FUNCTION {label.forward}
+{
+  last.label label =
+    { last.extra.num #1 + 'last.extra.num :=
+      last.extra.num int.to.chr$ 'extra.label :=
+    }
+    { "a" chr.to.int$ 'last.extra.num :=
+      "" 'extra.label :=
+      label 'last.label :=
+    }
+  if$
+  number.label #1 + 'number.label :=
+}
+
+FUNCTION {label.reverse}
+{ next.extra "b" =
+    { "a" 'extra.label := }
+    'skip$
+  if$
+  extra.label 'next.extra :=
+  extra.label
+  duplicate$ empty$
+    'skip$
+    { "{\natexlab{" swap$ * "}}" * }
+  if$
+  'extra.label :=
+  label extra.label * 'label :=
+}
+
+EXECUTE {initialize.extra.label.stuff}
+
+FUNCTION {forward.pass}
+{ type$ "control" = 'control.forward 'label.forward if$
+}
+
+ITERATE {forward.pass}
+
+FUNCTION {reverse.pass}
+{ type$ "control" = 'control.reverse 'label.reverse if$
+}
+
+REVERSE {reverse.pass}
+
+FUNCTION {sortkey.sort}
+{ sort.label
+  "    "
+  *
+  year.sort.key
+  field.or.null sortify
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {bib.sort.pass}
+{ type$ "control" = 'control.sort 'sortkey.sort if$
+}
+
+ITERATE {bib.sort.pass}
+
+SORT
+
+FUNCTION {init.bib.eprint}
+{
+    "\texttt {"
+  pop$
+  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
+  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
+  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
+  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
+}
+
+FUNCTION {init.bib.doi}
+{
+  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
+}
+
+FUNCTION {init.bib.hypertex}
+{
+  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
+  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
+  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
+  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
+  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
+  "\providecommand \@@startlink[1]{}%" write$ newline$
+  "\providecommand \@@endlink[0]{}%"   write$ newline$
+}
+
+FUNCTION {init.bib.namefont}
+{
+  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
+  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
+  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
+}
+
+FUNCTION {init.bib.quote}
+{
+  "\providecommand " bbl.enquote * " [1]{" *
+  "``" "''"
+  "#1" swap$ "}%" * * * * write$ newline$
+}
+
+FUNCTION {init.bib.ay}
+{
+  "\providecommand \natexlab [1]{#1}%"
+  write$ newline$
+}
+
+FUNCTION {init.bib.bibinfo}
+{
+  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+}
+
+FUNCTION {init.bib.lang}
+{
+  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
+}
+
+FUNCTION {init.bib.endbibitem}
+{
+  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
+  "\providecommand \bibitemStop [0]{}%"               write$ newline$
+  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
+  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
+}
+
+FUNCTION {init.bib.translation}
+{
+  "\providecommand \translation [1]{[#1]}%" write$ newline$
+}
+
+FUNCTION {warn.bib}
+{
+}
+
+FUNCTION {init.bib}
+{
+  warn.bib
+  "\makeatletter" write$ newline$
+  "\providecommand \@ifxundefined [1]{%"   write$ newline$
+  " \@ifx{#1\undefined}"                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifnum [1]{%"          write$ newline$
+  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifx [1]{%"            write$ newline$
+  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  init.bib.ay
+  init.bib.quote
+  init.bib.namefont
+  init.bib.hypertex
+  init.bib.eprint
+  init.bib.doi
+  init.bib.lang
+  init.bib.bibinfo
+  init.bib.translation
+  init.bib.endbibitem
+  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
+  "\let\auto at bib@innerbib\@empty"          write$ newline$
+  "%</preamble>" write$
+}
+
+FUNCTION {begin.bib}
+{
+  id.bst diagn.cmntlog
+  control.bib
+  preamble$ empty$
+    'skip$
+    { preamble$ write$ newline$ }
+  if$
+  "\begin{thebibliography}{"
+  number.label int.to.str$
+  * "}%" *
+  write$ newline$
+  init.bib
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+  "\end{thebibliography}%"
+  write$ newline$
+}
+
+EXECUTE {end.bib}
+
+%% End of customized bst file
+%%
+%% End of file `aipnum4-2.bst'.


Property changes on: trunk/Master/texmf-dist/bibtex/bst/revtex/aipnum4-2.bst
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-1.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-1.bst	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-1.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,3457 +0,0 @@
-%%
-%% This is file `apsrev4-1.bst',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% merlin.mbs  (with options: `head,ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,blkyear,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% physjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,blkyear,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% geojour.mbs  (with options: `ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,blkyear,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% photjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,blkyear,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% merlin.mbs  (with options: `tail,ay,nat,lang,pres,pres-bf,seq-no,vonx,nm-init,ed-au,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,blkyear,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-x,volp-com,jpg-1,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-date,ay-empty-pub-parens-x,pre-pub,pre-edn,doi-link,doi,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% ----------------------------------------
-%% *** REVTeX-compatible Phys Rev 2010-07-25 ***
-%% 
-%% Copyright 1994-2007 Patrick W Daly
- % ===============================================================
- % IMPORTANT NOTICE:
- % This bibliographic style (bst) file has been generated from one or
- % more master bibliographic style (mbs) files, listed above.
- %
- % This generated file can be redistributed and/or modified under the terms
- % of the LaTeX Project Public License Distributed from CTAN
- % archives in directory macros/latex/base/lppl.txt; either
- % version 1 of the License, or any later version.
- % ===============================================================
- % Name and version information of the main mbs file:
- %   For use with BibTeX version 0.99a or later
- %-------------------------------------------------------------------
- % This bibliography style file is intended for texts in ENGLISH
- % This is an author-year citation style bibliography. As such, it is
- % non-standard LaTeX, and requires a special package file to function properly.
- % Such a package is    natbib.sty   by Patrick W. Daly
- % The form of the \bibitem entries is
- %   \bibitem[Jones et al.(1990)]{key}...
- %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
- % The essential feature is that the label (the part in brackets) consists
- % of the author names, as they should appear in the citation, with the year
- % in parentheses following. There must be no space before the opening
- % parenthesis!
- % With natbib v5.3, a full list of authors may also follow the year.
- % In natbib.sty, it is possible to define the type of enclosures that is
- % really wanted (brackets or parentheses), but in either case, there must
- % be parentheses in the label.
- % The \cite command functions as follows:
- %   \citet{key} ==>>                Jones et al. (1990)
- %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
- %   \citep{key} ==>>                (Jones et al., 1990)
- %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
- %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
- %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
- %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
- %   \citeauthor{key} ==>>           Jones et al.
- %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
- %   \citeyear{key} ==>>             1990
- %---------------------------------------------------------------------
-
-FUNCTION {id.bst} {"merlin.mbs apsrev4-1.bst 2010-07-25 4.21a (PWD, AO, DPC) hacked"}
-ENTRY
-{
-    address
-    archive
-    archivePrefix
-    author
-    bookaddress
-    booktitle
-    chapter
-    collaboration
-    doi
-    edition
-    editor
-    eid
-    eprint
-    howpublished
-    institution
-    isbn
-    issn
-    journal
-    key
-    language
-    month
-    note
-    number
-    organization
-    pages
-    primaryClass
-    publisher
-    school
-    SLACcitation
-    series
-    title
-    translation
-    type
-    url
-    volume
-    year
-}{
-}{
-    label
-    extra.label sort.label
-    short.list
-}
-
-INTEGERS
-{
-  output.state before.all
-  after.word after.punctuation
-  after.sentence after.block
-}
-
-INTEGERS
-{
-  punctuation.state punctuation.no punctuation.space punctuation.yes
-}
-
-STRINGS { bibfield output.bibfield }
-
-FUNCTION {not}
-{   { #0 }
-    { #1 }
-  if$
-}
-
-FUNCTION {and}
-{   'skip$
-    { pop$ #0 }
-  if$
-}
-
-FUNCTION {or}
-{   { pop$ #1 }
-    'skip$
-  if$
-}
-
-FUNCTION {non.stop}
-{ duplicate$
-   "}" * add.period$
-   #-1 #1 substring$ "." =
-}
-
-INTEGERS { arith.mulitplier arith.multiplicand }
-
-FUNCTION {multiply}
-{
-  'arith.multiplicand :=
-  'arith.mulitplier :=
-  #0
-    { arith.mulitplier #0 > }
-    { arith.multiplicand +
-      arith.mulitplier #1 - 'arith.mulitplier :=
-    }
-  while$
-}
-
-FUNCTION {chr.to.hex}
-{
-  chr.to.int$
-  duplicate$ "0" chr.to.int$ -
-  duplicate$ duplicate$ #0 < swap$ #9 > or not
-    { swap$ pop$ }
-    { pop$
-      duplicate$ "A" chr.to.int$ -
-      duplicate$ duplicate$ #0 < swap$ #5 > or not
-        { swap$ pop$ #10 + }
-        { pop$
-          duplicate$ "a" chr.to.int$ -
-          duplicate$ duplicate$ #0 < swap$ #5 > or not
-            { swap$ pop$ #10 + }
-            { pop$
-              pop$ #-1
-            }
-          if$
-        }
-      if$
-    }
-  if$
-}
-
-INTEGERS { arith.accumulator }
-
-FUNCTION {str.to.hex}
-{ #0 'arith.accumulator :=
-    { duplicate$ empty$ not }
-    { duplicate$ #1 #1 substring$ chr.to.hex
-      duplicate$ #0 <
-        { pop$ pop$ ""
-        }
-        { arith.accumulator #16 multiply + 'arith.accumulator :=
-          #2 global.max$ substring$
-        }
-      if$
-    }
-  while$
-  pop$ arith.accumulator
-}
-
-FUNCTION {diagn.cmntlog}
-{
-  duplicate$ top$ "%" swap$ * write$ newline$
-}
-
-INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
-
-INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
-
-FUNCTION { control.init }
-{
-  #0
-  'control.key             :=
-  #0
-  #8 +
-  #64 +
-  'control.author :=
-  #1
-  'control.author.jnrlst   :=
-  #0
-  'control.author.dotless  :=
-  #0
-  'control.author.nospace  :=
-  #1
-  'control.author.initials :=
-  #0
-  'control.author.nocomma  :=
-  #0
-  'control.author.first    :=
-  #0
-  'control.author.reversed :=
-  #1
-  'control.editor :=
-  #-1
-  'control.title  :=
-  #0
-  'control.pages  :=
-  #0
-  'control.eprint :=
-  #1
-  'control.year   :=
-}
-
-FUNCTION {warning.dependency}
-{
-  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
-}
-
-FUNCTION {control.check}
-{
-  control.editor
-    {
-      "editor formatted same as author"
-      control.author.reversed {
-        duplicate$ #0 swap$ "reversed" warning.dependency
-        #0 'control.author.reversed :=
-      } 'skip$ if$
-      control.author.first {
-        duplicate$ #0 swap$ "first" warning.dependency
-        #0 'control.author.first :=
-      } 'skip$ if$
-      control.author.nocomma {
-        duplicate$ #0 swap$ "nocomma" warning.dependency
-        #0 'control.author.nocomma :=
-      } 'skip$ if$
-      pop$
-    } 'skip$ if$
-  control.author.reversed 'skip$
-    {
-      "not reversed"
-      control.author.nospace {
-        duplicate$ #0 swap$ "nospace" warning.dependency
-        #0 'control.author.nospace :=
-      } 'skip$ if$
-      control.author.jnrlst 'skip$ {
-        duplicate$ #1 swap$ "jnrlst" warning.dependency
-        #1 'control.author.jnrlst :=
-      } if$
-      control.author.initials {
-        duplicate$ ", initials" *
-        control.author.dotless {
-          duplicate$ #0 swap$ "dotless" warning.dependency
-          #0 'control.author.dotless :=
-        } 'skip$ if$
-        pop$
-      } 'skip$ if$
-      pop$
-    }
-  if$
-  control.author.initials 'skip$ {
-    "not initials"
-    control.author.nocomma {
-      duplicate$ #0 swap$ "nocomma" warning.dependency
-      #0 'control.author.nocomma :=
-    } 'skip$ if$
-    control.author.nospace {
-      duplicate$ #0 swap$ "nospace" warning.dependency
-      #0 'control.author.nospace :=
-    } 'skip$ if$
-    control.author.dotless 'skip$ {
-      duplicate$ #1 swap$ "dotless" warning.dependency
-      #1 'control.author.dotless :=
-    } if$
-    pop$
-  } if$
-}
-
-FUNCTION {control.parse}
-{
-  duplicate$ duplicate$ missing$
-    {
-      pop$ pop$ pop$
-    }
-    { empty$
-        {
-          pop$ #-1
-        }{
-          str.to.hex
-        }
-      if$
-      swap$ :=
-    }
-  if$
-}
-
-FUNCTION {control.dump}
-{
-  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
-  "{" swap$ * "}, " *
-  *
-}
-
-INTEGERS { decode.threshold }
-
-FUNCTION {control.decode}
-{
-  - duplicate$
-  #0 <
-    {
-      skip$ pop$ swap$ #0
-    }
-    {
-      swap$ pop$ swap$ #1
-    }
-  if$
-  swap$ :=
-}
-
-FUNCTION {control.author.decode}
-{
-  control.author
-  duplicate$ duplicate$ #0 < swap$ #128 < not or
-    {
-      int.to.str$ "(" swap$ * ")" *
-      "Control cannot interpret author " swap$ *
-      warning$
-    }{
-      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
-      'control.author.dotless  swap$ duplicate$ #32 control.decode
-      'control.author.nospace  swap$ duplicate$ #16 control.decode
-      'control.author.initials swap$ duplicate$  #8 control.decode
-      'control.author.nocomma  swap$ duplicate$  #4 control.decode
-      'control.author.first    swap$ duplicate$  #2 control.decode
-      'control.author.reversed swap$ duplicate$  #1 control.decode
-      duplicate$ #0 =
-        'skip$
-        {
-          "Control: residue of author"
-          "(" swap$ * ")" * *
-          warning$
-        }
-      if$
-      pop$
-    }
-  if$
-}
-
-FUNCTION {control.setup}
-{
-  type$ cite$ "{" swap$ * "}, " * *
-  "control.key"    key    control.dump *
-  "control.author" author control.dump *
-  "control.editor" editor control.dump *
-  "control.title"  title  control.dump *
-  "control.pages"  pages  control.dump *
-  "control.year"   year   control.dump *
-  "control.eprint" eprint control.dump *
-  top$
-  'control.key    key    control.parse
-  'control.author author control.parse
-  'control.editor editor control.parse
-  'control.title  title  control.parse
-  'control.pages  pages  control.parse
-  'control.year   year   control.parse
-  'control.eprint eprint control.parse
-  control.author.decode
-}
-
-FUNCTION {control.pass}
-{ type$ "control" = 'control.setup 'skip$ if$
-}
-
-FUNCTION {control.presort}
-{
-}
-
-FUNCTION {control.forward}
-{
-}
-
-FUNCTION {control.reverse}
-{
-}
-
-FUNCTION {control.sort}
-{
-}
-
-FUNCTION {control.longest.label}
-{
-}
-
-FUNCTION {control.key.bib}
-{
-  "Control: key "
-  control.key
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  pop$ *
-  diagn.cmntlog
-}
-
-FUNCTION {control.author.bib}
-{
-  "Control: author "
-  control.author "(" swap$ int.to.str$ * ")" * *
-  control.author.reversed { " reversed" * }{} if$
-  control.author.first    { " first"    * }{} if$
-  control.author.nocomma  { " nocomma"  * }{} if$
-  control.author.initials { " initials" * }{} if$
-  control.author.nospace  { " nospace"  * }{} if$
-  control.author.dotless  { " dotless"  * }{} if$
-  control.author.jnrlst   { " jnrlst"   * }{} if$
-  diagn.cmntlog
-}
-
-FUNCTION {control.editor.bib}
-{
-  "Control: editor formatted "
-  control.editor
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "identically to author"
-    } {
-      "differently from author"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.title.bib}
-{
-  "Control: production of article title "
-  control.title
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled"
-  } {
-    #0 > {
-      "required"
-    } {
-      "allowed"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.pages.bib}
-{
-  "Control: page "
-  control.pages
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "none"
-  } {
-    #0 > {
-      "range"
-    } {
-      "single"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.year.bib}
-{
-  "Control: year "
-  control.year
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "truncated"
-    } {
-      "verbatim"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.eprint.bib}
-{
-  "Control: production of eprint "
-  control.eprint
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  #0 < { "disabled" } { "enabled" } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.bib}
-{
-  control.key.bib
-  control.author.bib
-  control.editor.bib
-  control.title.bib
-  control.pages.bib
-  control.year.bib
-  control.eprint.bib
-}
-
-FUNCTION {init.state.consts}
-{
-  #0 'before.all        :=
-  #1 'after.word        :=
-  #2 'after.punctuation :=
-  #3 'after.sentence    :=
-  #4 'after.block       :=
-  #0 'punctuation.no    :=
-  #1 'punctuation.space :=
-  #2 'punctuation.yes   :=
-  "" 'bibfield          :=
-  "" 'output.bibfield   :=
-}
-
-STRINGS { s t}
-FUNCTION {block.punctuation}
-{ ""
-  "," *
-}
-
-FUNCTION {word.space}
-{
-  "\ "
-}
-
-FUNCTION {show.stackstring.one}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  duplicate$ "1(" swap$ * ")" * top$
-}
-
-FUNCTION {show.stackstring.two}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  swap$
-  duplicate$ "1(" swap$ * ")" * top$
-  swap$
-  duplicate$ "2(" swap$ * ")" * top$
-}
-
-FUNCTION {bibfield.command}{ "\bibfield "}
-
-FUNCTION {output.nonnull}
-{
-  swap$
-  output.state after.word =
-    {
-      block.punctuation *
-      word.space *
-    }
-    {
-      output.state after.punctuation =
-        {
-          word.space *
-        }
-        {
-          output.state after.block = output.state after.sentence = or
-            {
-              add.period$
-              "\EOS\ " *
-            }{
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  output.bibfield duplicate$ empty$ 'pop$
-    {
-      bibfield.command
-      " {" * swap$ * "} {" * swap$ * "}" *
-    }
-  if$
-  write$
-  bibfield 'output.bibfield := "" 'bibfield :=
-  output.state after.block =
-    {
-      newline$
-      "\newblock " write$
-    }
-    'skip$
-  if$
-  punctuation.state duplicate$
-  punctuation.yes 'punctuation.state :=
-  punctuation.no =
-    { pop$ before.all }
-    { punctuation.yes = { after.word }{ after.punctuation } if$ }
-  if$
-  'output.state :=
-}
-
-FUNCTION {output}
-{ duplicate$ empty$
-    {
-      pop$
-  "" 'bibfield :=
-    }
-    'output.nonnull
-  if$
-}
-
-FUNCTION {output.nopunct}
-{
-  punctuation.no 'punctuation.state :=
-  output.nonnull
-}
-
-FUNCTION {output.check}
-{ swap$
-  duplicate$ empty$
-    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
-    { swap$ pop$ output.nonnull }
-  if$
-}
-
-FUNCTION {bbl.open} { "\BibitemOpen " }
-
-FUNCTION {bbl.shut} { "\BibitemShut " }
-
-FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
-
-FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
-
-FUNCTION {bibitem.shut}
-{
-  non.stop
-    {
-  bibitem.shut.nostop *
-    }{
-  bibitem.shut.stop *
-    }
-  if$
-}
-
-FUNCTION {html.itag} {
-  "p"
-}
-
-FUNCTION {html.ltag} {
-  ""
-}
-
-FUNCTION {output.SLACcitation}
-{ SLACcitation empty$
-    'skip$
-    {
-      newline$
-      SLACcitation write$
-    }
-  if$
-}
-
-FUNCTION {fin.entry}
-{
-  bibitem.shut
-  write$
-    output.SLACcitation
-}
-
-FUNCTION {new.block}
-{ output.state before.all =
-    'skip$
-    { after.block 'output.state := }
-  if$
-}
-
-FUNCTION {new.block.comma}
-{
-}
-
-FUNCTION {new.sentence}
-{ output.state after.block = output.state before.all = or
-    'skip$
-    { after.sentence 'output.state := }
-  if$
-}
-
-FUNCTION {new.sentence.comma}
-{
-}
-
-FUNCTION {sentence.or.colon}
-{
-  new.sentence
-}
-
-FUNCTION {add.blank}
-{
-  word.space *
-  before.all 'output.state :=
-}
-
-FUNCTION {no.blank.or.punct}
-{
-   "\hspace {0pt}" *
-   before.all 'output.state :=
-}
-
-FUNCTION {date.block}
-{
-  new.block.comma
-  skip$
-}
-
-STRINGS {z}
-FUNCTION {remove.dots}
-{
-  control.author.dotless {
-    'z :=
-    ""
-    { z empty$ not }
-    { z #1 #1 substring$
-      z #2 global.max$ substring$ 'z :=
-      duplicate$ "." = 'pop$
-        { * }
-      if$
-    }
-    while$
-  } 'skip$ if$
-}
-
-FUNCTION {new.block.checkb}
-{ empty$
-  swap$ empty$
-  and
-    'skip$
-    'new.block
-  if$
-}
-
-FUNCTION {field.or.null}
-{ duplicate$ empty$
-    { pop$ "" }
-    'skip$
-  if$
-}
-
-FUNCTION {emphasize}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-      "\emph {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bolden}
-{ duplicate$ empty$
-    { pop$ "" }
-    { "\textbf {" swap$ * "}" * }
-  if$
-}
-
-FUNCTION {bib.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bib.fname.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibfnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {cite.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\citenamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {tie.or.space.prefix}
-{ duplicate$ text.length$ #3 <
-    { "~" }
-    { word.space }
-  if$
-  swap$
-}
-
-FUNCTION {capitalize}
-{
-  "u" change.case$ "t" change.case$
-}
-
-FUNCTION {space.word}
-{ word.space swap$ * word.space * }
-
- % Here are the language-specific definitions for explicit words.
- % Each function has a name bbl.xxx where xxx is the English word.
- % The language selected here is ENGLISH
-
-FUNCTION {bbl.and}
-{
-  "and"
-}
-
-FUNCTION {bbl.etal}
-{
-  "et~al."
-}
-
-FUNCTION {bbl.editors}
-{
-  "eds."
-}
-
-FUNCTION {bbl.editor}
-{
-  "ed."
-}
-
-FUNCTION {bbl.edby}
-{ "edited by" }
-
-FUNCTION {bbl.edition}
-{
-  "ed."
-}
-
-FUNCTION {bbl.volume}
-{
-  "vol."
-}
-
-FUNCTION {bbl.of}
-{ "of" }
-
-FUNCTION {bbl.number}
-{
-  "no."
-}
-
-FUNCTION {bbl.nr}
-{ "no." }
-
-FUNCTION {bbl.in}
-{ "in" }
-
-FUNCTION {bbl.pages}
-{
-  "pp."
-}
-
-FUNCTION {bbl.page}
-{
-  "p."
-}
-
-FUNCTION {bbl.eidpp}
-{ "pages" }
-
-FUNCTION {bbl.chapter}
-{
-  "chap."
-}
-
-FUNCTION {bbl.techrep}
-{
-  "Tech. Rep."
-}
-
-FUNCTION {bbl.mthesis}
-{ "Master's thesis" }
-
-FUNCTION {bbl.phdthesis}
-{ "Ph.D. thesis" }
-
-FUNCTION {bbl.first}
-{
-  "1st"
-}
-
-FUNCTION {bbl.second}
-{
-  "2nd"
-}
-
-FUNCTION {bbl.third}
-{
-  "3rd"
-}
-
-FUNCTION {bbl.fourth}
-{
-  "4th"
-}
-
-FUNCTION {bbl.fifth}
-{
-  "5th"
-}
-
-FUNCTION {bbl.st}
-{ "st" }
-
-FUNCTION {bbl.nd}
-{ "nd" }
-
-FUNCTION {bbl.rd}
-{ "rd" }
-
-FUNCTION {bbl.th}
-{ "th" }
-
-MACRO {jan} {"Jan."}
-
-MACRO {feb} {"Feb."}
-
-MACRO {mar} {"Mar."}
-
-MACRO {apr} {"Apr."}
-
-MACRO {may} {"May"}
-
-MACRO {jun} {"Jun."}
-
-MACRO {jul} {"Jul."}
-
-MACRO {aug} {"Aug."}
-
-MACRO {sep} {"Sep."}
-
-MACRO {oct} {"Oct."}
-
-MACRO {nov} {"Nov."}
-
-MACRO {dec} {"Dec."}
-
-FUNCTION {bbl.url.prefix}
-{
-  "\urlprefix "
-}
-
-FUNCTION {eng.ord}
-{ duplicate$ "1" swap$ *
-  #-2 #1 substring$ "1" =
-     { bbl.th * }
-     { duplicate$ #-1 #1 substring$
-       duplicate$ "1" =
-         { pop$ bbl.st * }
-         { duplicate$ "2" =
-             { pop$ bbl.nd * }
-             { "3" =
-                 { bbl.rd * }
-                 { bbl.th * }
-               if$
-             }
-           if$
-          }
-       if$
-     }
-   if$
-}
-
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
-MACRO {aa}{"Astron. \& Astrophys."}
-MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
-MACRO {aj} {"Astron. J."}
-MACRO {aph} {"Acta Phys."}
-MACRO {advp} {"Adv. Phys."}
-MACRO {ajp} {"Amer. J. Phys."}
-MACRO {ajm} {"Amer. J. Math."}
-MACRO {amsci} {"Amer. Sci."}
-MACRO {anofd} {"Ann. Fluid Dyn."}
-MACRO {am} {"Ann. Math."}
-MACRO {ap} {"Ann. Phys. (NY)"}
-MACRO {adp} {"Ann. Phys. (Leipzig)"}
-MACRO {ao} {"Appl. Opt."}
-MACRO {apl} {"Appl. Phys. Lett."}
-MACRO {app} {"Astroparticle Phys."}
-MACRO {apj} {"Astrophys. J."}
-MACRO {apjsup} {"Astrophys. J. Suppl."}
-MACRO {apss} {"Astrophys. Space Sci."}
-MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
-MACRO {baas} {"Bull. Amer. Astron. Soc."}
-MACRO {baps} {"Bull. Amer. Phys. Soc."}
-MACRO {cmp} {"Comm. Math. Phys."}
-MACRO {cpam} {"Commun. Pure Appl. Math."}
-MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
-MACRO {cpc} {"Comp. Phys. Comm."}
-MACRO {cqg} {"Class. Quant. Grav."}
-MACRO {cra} {"C. R. Acad. Sci. A"}
-MACRO {fed} {"Fusion Eng. \& Design"}
-MACRO {ft} {"Fusion Tech."}
-MACRO {grg} {"Gen. Relativ. Gravit."}
-MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
-MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
-MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
-MACRO {ip} {"Infrared Phys."}
-MACRO {irp} {"Infrared Phys."}
-MACRO {jap} {"J. Appl. Phys."}
-MACRO {jasa} {"J. Acoust. Soc. America"}
-MACRO {jcp} {"J. Comp. Phys."}
-MACRO {jetp} {"Sov. Phys.--JETP"}
-MACRO {jfe} {"J. Fusion Energy"}
-MACRO {jfm} {"J. Fluid Mech."}
-MACRO {jmp} {"J. Math. Phys."}
-MACRO {jne} {"J. Nucl. Energy"}
-MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
-MACRO {jnm} {"J. Nucl. Mat."}
-MACRO {jpc} {"J. Phys. Chem."}
-MACRO {jpp} {"J. Plasma Phys."}
-MACRO {jpsj} {"J. Phys. Soc. Japan"}
-MACRO {jsi} {"J. Sci. Instrum."}
-MACRO {jvst} {"J. Vac. Sci. \& Tech."}
-MACRO {nat} {"Nature"}
-MACRO {nature} {"Nature"}
-MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
-MACRO {nf} {"Nucl. Fusion"}
-MACRO {nim} {"Nucl. Inst. \& Meth."}
-MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
-MACRO {np} {"Nucl. Phys."}
-MACRO {npb} {"Nucl. Phys. B"}
-MACRO {nt/f} {"Nucl. Tech./Fusion"}
-MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
-MACRO {inc} {"Nuovo Cimento"}
-MACRO {nc} {"Nuovo Cimento"}
-MACRO {pf} {"Phys. Fluids"}
-MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
-MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
-MACRO {pl} {"Phys. Lett."}
-MACRO {pla} {"Phys. Lett. A"}
-MACRO {plb} {"Phys. Lett. B"}
-MACRO {prep} {"Phys. Rep."}
-MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
-MACRO {pp} {"Phys. Plasmas"}
-MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
-MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
-MACRO {prl} {"Phys. Rev. Lett."}
-MACRO {pr} {"Phys. Rev."}
-MACRO {physrev} {"Phys. Rev."}
-MACRO {pra} {"Phys. Rev. A"}
-MACRO {prb} {"Phys. Rev. B"}
-MACRO {prc} {"Phys. Rev. C"}
-MACRO {prd} {"Phys. Rev. D"}
-MACRO {pre} {"Phys. Rev. E"}
-MACRO {ps} {"Phys. Scripta"}
-MACRO {procrsl} {"Proc. Roy. Soc. London"}
-MACRO {rmp} {"Rev. Mod. Phys."}
-MACRO {rsi} {"Rev. Sci. Inst."}
-MACRO {science} {"Science"}
-MACRO {sciam} {"Sci. Am."}
-MACRO {sam} {"Stud. Appl. Math."}
-MACRO {sjpp} {"Sov. J. Plasma Phys."}
-MACRO {spd} {"Sov. Phys.--Doklady"}
-MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
-MACRO {spu} {"Sov. Phys.--Uspeki"}
-MACRO {st} {"Sky and Telesc."}
- % End module: physjour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
-MACRO {aisr} {"Adv. Space Res."}
-MACRO {ag} {"Ann. Geophys."}
-MACRO {anigeo} {"Ann. Geofis."}
-MACRO {angl} {"Ann. Glaciol."}
-MACRO {andmet} {"Ann. d. Meteor."}
-MACRO {andgeo} {"Ann. d. Geophys."}
-MACRO {andphy} {"Ann. Phys.-Paris"}
-MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
-MACRO {atph} {"Atm\'osphera"}
-MACRO {aao} {"Atmos. Ocean"}
-MACRO {ass}{"Astrophys. Space Sci."}
-MACRO {atenv} {"Atmos. Environ."}
-MACRO {aujag} {"Aust. J. Agr. Res."}
-MACRO {aumet} {"Aust. Meteorol. Mag."}
-MACRO {blmet} {"Bound.-Lay. Meteorol."}
-MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
-MACRO {cch} {"Clim. Change"}
-MACRO {cdyn} {"Clim. Dynam."}
-MACRO {cbul} {"Climatol. Bull."}
-MACRO {cap} {"Contrib. Atmos. Phys."}
-MACRO {dsr} {"Deep-Sea Res."}
-MACRO {dhz} {"Dtsch. Hydrogr. Z."}
-MACRO {dao} {"Dynam. Atmos. Oceans"}
-MACRO {eco} {"Ecology"}
-MACRO {empl}{"Earth, Moon and Planets"}
-MACRO {envres} {"Environ. Res."}
-MACRO {envst} {"Environ. Sci. Technol."}
-MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
-MACRO {expa}{"Exper. Astron."}
-MACRO {geoint} {"Geofis. Int."}
-MACRO {geopub} {"Geofys. Publ."}
-MACRO {geogeo} {"Geol. Geofiz."}
-MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
-MACRO {gfd} {"Geophys. Fluid Dyn."}
-MACRO {geomag} {"Geophys. Mag."}
-MACRO {georl} {"Geophys. Res. Lett."}
-MACRO {grl} {"Geophys. Res. Lett."}
-MACRO {ga} {"Geophysica"}
-MACRO {gs} {"Geophysics"}
-MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
-MACRO {ijawp} {"Int. J. Air Water Pollut."}
-MACRO {ijc} {"Int. J. Climatol."}
-MACRO {ijrs} {"Int. J. Remote Sens."}
-MACRO {jam} {"J. Appl. Meteorol."}
-MACRO {jaot} {"J. Atmos. Ocean. Technol."}
-MACRO {jatp} {"J. Atmos. Terr. Phys."}
-MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
-MACRO {jce} {"J. Climate"}
-MACRO {jcam} {"J. Climate Appl. Meteor."}
-MACRO {jcm} {"J. Climate Meteor."}
-MACRO {jcy} {"J. Climatol."}
-MACRO {jgr} {"J. Geophys. Res."}
-MACRO {jga} {"J. Glaciol."}
-MACRO {jh} {"J. Hydrol."}
-MACRO {jmr} {"J. Mar. Res."}
-MACRO {jmrj} {"J. Meteor. Res. Japan"}
-MACRO {jm} {"J. Meteor."}
-MACRO {jpo} {"J. Phys. Oceanogr."}
-MACRO {jra} {"J. Rech. Atmos."}
-MACRO {jaes} {"J. Aeronaut. Sci."}
-MACRO {japca} {"J. Air Pollut. Control Assoc."}
-MACRO {jas} {"J. Atmos. Sci."}
-MACRO {jmts} {"J. Mar. Technol. Soc."}
-MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
-MACRO {josj} {"J. Oceanogr. Soc. Japan"}
-MACRO {jwm} {"J. Wea. Mod."}
-MACRO {lao} {"Limnol. Oceanogr."}
-MACRO {mwl} {"Mar. Wea. Log"}
-MACRO {mau} {"Mausam"}
-MACRO {meteor} {"``Meteor'' Forschungsergeb."}
-MACRO {map} {"Meteorol. Atmos. Phys."}
-MACRO {metmag} {"Meteor. Mag."}
-MACRO {metmon} {"Meteor. Monogr."}
-MACRO {metrun} {"Meteor. Rundsch."}
-MACRO {metzeit} {"Meteor. Z."}
-MACRO {metgid} {"Meteor. Gidrol."}
-MACRO {mwr} {"Mon. Weather Rev."}
-MACRO {nwd} {"Natl. Weather Dig."}
-MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
-MACRO {npg} {"Nonlin. Proc. Geophys."}
-MACRO {om} {"Oceanogr. Meteorol."}
-MACRO {ocac} {"Oceanol. Acta"}
-MACRO {oceanus} {"Oceanus"}
-MACRO {paleoc} {"Paleoceanography"}
-MACRO {pce} {"Phys. Chem. Earth"}
-MACRO {pmg} {"Pap. Meteor. Geophys."}
-MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
-MACRO {physzeit} {"Phys. Z."}
-MACRO {pps} {"Planet. Space Sci."}
-MACRO {pss} {"Planet. Space Sci."}
-MACRO {pag} {"Pure Appl. Geophys."}
-MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
-MACRO {quatres} {"Quat. Res."}
-MACRO {rsci} {"Radio Sci."}
-MACRO {rse} {"Remote Sens. Environ."}
-MACRO {rgeo} {"Rev. Geophys."}
-MACRO {rgsp} {"Rev. Geophys. Space Phys."}
-MACRO {rdgeo} {"Rev. Geofis."}
-MACRO {revmeta} {"Rev. Meteorol."}
-MACRO {sgp}{"Surveys in Geophys."}
-MACRO {sp} {"Solar Phys."}
-MACRO {ssr} {"Space Sci. Rev."}
-MACRO {tellus} {"Tellus"}
-MACRO {tac} {"Theor. Appl. Climatol."}
-MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
-MACRO {wrr} {"Water Resour. Res."}
-MACRO {weather} {"Weather"}
-MACRO {wafc} {"Weather Forecast."}
-MACRO {ww} {"Weatherwise"}
-MACRO {wmob} {"WMO Bull."}
-MACRO {zeitmet} {"Z. Meteorol."}
- % End module: geojour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
-
-MACRO {appopt} {"Appl. Opt."}
-MACRO {bell} {"Bell Syst. Tech. J."}
-MACRO {ell} {"Electron. Lett."}
-MACRO {jasp} {"J. Appl. Spectr."}
-MACRO {jqe} {"IEEE J. Quantum Electron."}
-MACRO {jlwt} {"J. Lightwave Technol."}
-MACRO {jmo} {"J. Mod. Opt."}
-MACRO {josa} {"J. Opt. Soc. America"}
-MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
-MACRO {josab} {"J. Opt. Soc. Amer.~B"}
-MACRO {jdp} {"J. Phys. (Paris)"}
-MACRO {oc} {"Opt. Commun."}
-MACRO {ol} {"Opt. Lett."}
-MACRO {phtl} {"IEEE Photon. Technol. Lett."}
-MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
-MACRO {sse} {"Solid-State Electron."}
-MACRO {sjot} {"Sov. J. Opt. Technol."}
-MACRO {sjqe} {"Sov. J. Quantum Electron."}
-MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
-MACRO {stph} {"Sov. Phys.--Techn. Phys."}
-MACRO {stphl} {"Sov. Techn. Phys. Lett."}
-MACRO {vr} {"Vision Res."}
-MACRO {zph} {"Z. f. Physik"}
-MACRO {zphb} {"Z. f. Physik~B"}
-MACRO {zphd} {"Z. f. Physik~D"}
-
-MACRO {CLEO} {"CLEO"}
-MACRO {ASSL} {"Adv. Sol.-State Lasers"}
-MACRO {OSA}  {"OSA"}
- % End module: photjour.mbs
-%% Copyright 1994-2007 Patrick W Daly
-MACRO {acmcs} {"ACM Comput. Surv."}
-
-MACRO {acta} {"Acta Inf."}
-
-MACRO {cacm} {"Commun. ACM"}
-
-MACRO {ibmjrd} {"IBM J. Res. Dev."}
-
-MACRO {ibmsj} {"IBM Syst.~J."}
-
-MACRO {ieeese} {"IEEE Trans. Software Eng."}
-
-MACRO {ieeetc} {"IEEE Trans. Comput."}
-
-MACRO {ieeetcad}
- {"IEEE Trans. Comput. Aid. Des."}
-
-MACRO {ipl} {"Inf. Process. Lett."}
-
-MACRO {jacm} {"J.~ACM"}
-
-MACRO {jcss} {"J.~Comput. Syst. Sci."}
-
-MACRO {scp} {"Sci. Comput. Program."}
-
-MACRO {sicomp} {"SIAM J. Comput."}
-
-MACRO {tocs} {"ACM Trans. Comput. Syst."}
-
-MACRO {tods} {"ACM Trans. Database Syst."}
-
-MACRO {tog} {"ACM Trans. Graphic."}
-
-MACRO {toms} {"ACM Trans. Math. Software"}
-
-MACRO {toois} {"ACM Trans. Office Inf. Syst."}
-
-MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
-
-MACRO {tcs} {"Theor. Comput. Sci."}
-
-FUNCTION {bibinfo.command} { "\bibinfo " }
-
-FUNCTION {bibinfo.check}
-{ swap$
-  duplicate$ missing$
-    {
-      pop$
-      pop$ ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ pop$
-        }{
-          swap$
-          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {bibinfo.warn}
-{ swap$
-  duplicate$ missing$
-    {
-      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
-      ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ "empty " swap$ * " in " * cite$ * warning$
-        }{
-          swap$
-          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {archiv.base}
-{
-  "http://arxiv.org/abs"
-}
-
-FUNCTION {archiv.prefix.base}
-{
-  "arXiv"
-}
-
-FUNCTION {eprint.command}
-{
-  "\Eprint "
-}
-
-FUNCTION {format.eprint}
-{
-  eprint duplicate$ empty$
-  control.eprint #0 <
-  or
-    { pop$ "" }
-    {
-      duplicate$
-      ""
-        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
-        "/" *
-        swap$ *
-        "{" swap$ * "} " *
-      swap$
-      ""
-        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
-        swap$ *
-        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
-        "{" swap$ * "} " *
-      *
-      eprint.command swap$ *
-    }
-  if$
-}
-
-FUNCTION {format.translation}
-{ translation duplicate$ empty$
-    'skip$
-    { ""
-      "\translation{" * swap$ * "}" *
-      punctuation.space 'punctuation.state :=
-    }
-  if$
-}
-
-FUNCTION {format.url}
-{
-  url duplicate$ empty$
-    { pop$ "" }
-    {
-      "\url "
-      "{" * swap$ * "}" *
-    }
-  if$
-}
-
-INTEGERS { nameptr namesleft numnames }
-
-FUNCTION {check.speaker}
-{ key empty$ 'skip$
-  { key nameptr int.to.str$ =
-    {
-      bolden
-    }
-      'skip$
-    if$
-  }
-  if$
-}
-
-
-STRINGS  { bibinfo}
-
-FUNCTION {format.names.fname}
-{
-  control.author.initials {
-    control.author.dotless {
-      control.author.nospace {
-        "f{}"
-      } {
-        "f{~}"
-      } if$
-    } {
-      control.author.nospace {
-        "f{.}."
-      } {
-        "f."
-      } if$
-    } if$
-  } {
-    "ff"
-  } if$
-}
-
-FUNCTION {bracify}
-{
-  "{" swap$ * "}" *
-}
-
-FUNCTION {name.comma}
-{
-  control.author.nocomma 'skip$ { "," swap$ * } if$
-}
-
-FUNCTION {format.names.format.onefont}
-{
-  "{vv~}{ll}"
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-    {
-      control.author.initials {
-        "f"
-        control.author.dotless 'skip$ {
-          "." *
-        } if$
-        "~" *
-      } {
-        "ff"
-      } if$
-      bracify
-      swap$
-    } {
-      format.names.fname
-      " " swap$ *
-      name.comma
-      bracify
-    }
-  if$
-  "jj"
-  " " swap$ *
-  name.comma
-  bracify
-  control.author.jnrlst 'skip$ 'swap$ if$
-  * *
-}
-
-FUNCTION {format.names.onefont}
-{
-  s nameptr format.names.format.onefont format.name$
-  remove.dots
-  bib.name.font
-}
-
-FUNCTION {format.names.morfont}
-{ s nameptr
-  "{vv~}{ll}" format.name$ bib.name.font
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-  {
-    s nameptr
-    control.author.initials {
-      "f"                        % default: name + surname + comma junior
-    } {
-      "ff"
-    } if$
-    control.author.dotless 'skip$ {
-      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
-    } if$
-    bracify
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    swap$
-    *
-    s nameptr
-    "{jj}" format.name$ duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } {
-    "," *
-    s nameptr
-    format.names.fname
-    "jj"
-    " "
-    name.comma
-    control.author.jnrlst {
-      swap$ * skip$
-    } {
-      skip$ * swap$
-    } if$
-    bracify swap$ bracify swap$
-    *
-    format.name$
-    remove.dots
-    duplicate$ empty$ 'skip$
-      { bib.fname.font " " swap$ * }
-      if$
-  } if$
-  *
-}
-
-FUNCTION {names.punctuate}
-{
-  "," *
-  " " *
-}
-
-FUNCTION {format.names}
-{ 'bibinfo :=
-  duplicate$ empty$ { pop$ "" } {
-    duplicate$ num.names$
-    duplicate$ 'numnames :=
-    'namesleft :=
-    's :=
-    #1 'nameptr :=
-    ""
-      { namesleft #0 > }
-      {
-      format.names.morfont
-        bibinfo bibinfo.check
-        type$ "presentation" =
-          'check.speaker
-          'skip$
-        if$
-        't :=
-        nameptr #1 > not
-          {
-            t *
-          } {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              } {
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-                numnames #2 >
-                  'names.punctuate
-                  'skip$
-                if$
-                t "others" =
-                  {
-                    " " *
-                    bbl.etal
-                    emphasize
-                    *
-                  } {
-                    bbl.and
-                    space.word *
-                    t *
-                  }
-                if$
-              }
-            if$
-          }
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-  } if$
-}
-
-FUNCTION {format.names.ed.onefont}
-{
-    s nameptr
-    control.author.initials {
-      control.author.dotless {
-        control.author.nospace {
-          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
-        } {
-          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
-        } if$
-      } {
-        control.author.nospace {
-          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
-        }{
-          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
-        } if$
-      } if$
-    } {
-      "{ff~}{vv~}{ll}{, jj}"
-    } if$
-    format.name$
-    remove.dots
-    bib.name.font
-}
-
-FUNCTION {format.names.ed.morfont}
-{
-  control.author.reversed { %
-    control.author.initials { %
-      control.author.dotless { %
-        s nameptr
-        control.author.nospace { % nm-rvx nm-rvcx
-          "{f{}}"
-        } { % nm-rv
-          "{f{~}}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        remove.dots
-        duplicate$ empty$ 'skip$
-          { bib.fname.font " " swap$ * }
-        if$
-      } { % !control.author.dotless
-        s nameptr
-        control.author.nospace { % nm-rvv
-          "{ff}"
-        } { % nm-rev nm-rev1
-          "{f.}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        duplicate$ empty$ 'skip$
-          { bib.fname.font ", " swap$ * }
-        if$
-      } if$
-    } { % Full names !control.author.initials  nm-revf nm-revv1
-      s nameptr
-      "{ff}"
-      format.name$ duplicate$ empty$ 'skip$
-        { tie.or.space.prefix bib.fname.font swap$ * }
-      if$
-      s nameptr
-      "{vv~}{ll}" format.name$ bib.name.font *
-      s nameptr
-      "{jj}" format.name$
-      duplicate$ empty$ 'skip$
-        { bib.fname.font ", " swap$ * }
-      if$
-    } if$
-  } { % !control.author.reversed nm-init
-    s nameptr
-    "{f.}"
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    s nameptr
-    "{vv~}{ll}" format.name$ bib.name.font *
-    s nameptr
-    "{jj}" format.name$
-    duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } if$
-  *
-}
-
-FUNCTION {format.names.ed}
-{
-  control.editor #0 > {
-    format.names
-  } {
-    'bibinfo :=
-    duplicate$ empty$ 'skip$ {
-    's :=
-    "" 't :=
-    #1 'nameptr :=
-    s num.names$ 'numnames :=
-    numnames 'namesleft :=
-      { namesleft #0 > }
-      {
-       format.names.ed.morfont
-        bibinfo bibinfo.check
-        't :=
-        nameptr #1 >
-          {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              }{
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-                numnames #2 >
-                  'names.punctuate
-                  'skip$
-                if$
-                t "others" =
-                  {
-                    " " * bbl.etal emphasize *
-                  }{
-                   bbl.and
-                    space.word * t *
-                  }
-                if$
-              }
-            if$
-          }
-          't
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-    } if$
-  } if$
-}
-
-FUNCTION {format.key}
-{ empty$
-    { key field.or.null }
-    { "" }
-  if$
-}
-
-FUNCTION {format.authors}
-{ author "author" format.names
-  duplicate$ empty$ 'skip$
-    { collaboration "collaboration" bibinfo.check
-      duplicate$ empty$ 'skip$
-        { " (" swap$ * ")" * }
-      if$
-      *
-    }
-  if$
-  "author" 'bibfield :=
-}
-
-FUNCTION {get.bbl.editor}
-{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
-}
-
-FUNCTION {format.editors}
-{ editor "editor" format.names duplicate$ empty$ 'skip$
-    {
-      "," *
-      word.space *
-      get.bbl.editor
-      *
-    }
-  if$
-}
-
-FUNCTION {format.isbn.output}
-{
-}
-
-FUNCTION {format.issn.output}
-{ 
-}
-
-FUNCTION {doi.base}
-{
-  "http://dx.doi.org/"
-}
-
-FUNCTION {doi.base.command}
-{
-  "\doibase "
-}
-
-FUNCTION {noop.command}
-{
-  "\href at noop "
-}
-
-FUNCTION {href.command}
-{
-  "\href "
-}
-
-FUNCTION {link.tag.open}
-{
-  doi duplicate$ empty$
-    {
-      pop$
-      url duplicate$ empty$
-        {
-          pop$ "" noop.command
-        }{
-          href.command
-        }
-      if$
-    }
-    {
-      doi.base.command swap$ * 
-      href.command
-    }
-  if$
-  "{" * swap$ * "} {" *
-}
-
-FUNCTION {link.tag.shut}
-{
-  "}"
-}
-
-FUNCTION {link.open}
-{
-  link.tag.open output.nopunct
-}
-
-FUNCTION {link.shut}
-{
-  link.tag.shut *
-}
-
-FUNCTION {add.doi}
-{
-  link.tag.open swap$ * link.tag.shut *
-}
-
-FUNCTION {select.language}
-{ duplicate$ empty$
-    'pop$
-    { language empty$
-        'skip$
-        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
-      if$
-    }
-    if$
-}
-
-FUNCTION {format.note}
-{
- note empty$
-    { "" }
-    { note #1 #1 substring$
-      duplicate$ "{" =
-        'skip$
-        {
-          output.state after.word = output.state after.punctuation = or
-            { "l" }
-            { "u" }
-          if$ change.case$
-        }
-      if$
-      note #2 global.max$ substring$ * "note" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {bbl.enquote}
-{
-  "\enquote "
-}
-
-FUNCTION {string.enquote}
-{
-  punctuation.no 'punctuation.state :=
-  non.stop {
-    block.punctuation
-  } { "" } if$
-   swap$ pop$
-  *
-  bbl.enquote "{" * swap$ * "}" *
-  word.space *
-}
-
-FUNCTION {format.title}
-{ title
-  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
-  duplicate$ "title" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      string.enquote
-      select.language
-    }
-  if$
-}
-
-FUNCTION {end.quote.title}
-{ title empty$
-    'skip$
-    { before.all 'output.state := }
-  if$
-}
-
-FUNCTION {format.name.apply}
-{
-  s nameptr
-  "{vv~}{ll}"
-  format.name$
-  cite.name.font
-}
-
-FUNCTION {format.full.names}
-{
-  's :=
-  "" 't :=
-  #1 'nameptr :=
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { format.name.apply
-      't :=
-      nameptr #1 >
-        {
-          namesleft #1 >
-            { ", " * t * }
-            {
-              s nameptr "{ll}" format.name$ duplicate$ "others" =
-                {
-                  't :=
-                }
-                'pop$
-              if$
-              t "others" =
-                {
-                  " " * bbl.etal
-                  emphasize *
-                }{
-                  numnames #2 > { "," * }{ skip$ } if$
-                  bbl.and
-                  space.word * t *
-                }
-              if$
-            }
-          if$
-        }
-        't
-      if$
-      nameptr #1 + 'nameptr :=
-      namesleft #1 - 'namesleft :=
-    }
-  while$
-}
-
-FUNCTION {make.full.names}
-{
-  key editor author
-  type$ "proceedings" =
-  type$ "book"        =
-  type$ "inbook"      =
-  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
-  duplicate$ empty$
-    { pop$
-      duplicate$ empty$
-        { pop$
-          duplicate$ empty$
-            { pop$
-              cite$ #1 #3 substring$
-            }{
-              skip$
-            }
-          if$
-        }
-        { swap$ pop$ format.full.names }
-      if$
-    }
-    { swap$ pop$ swap$ pop$ format.full.names }
-  if$
-}
-
-FUNCTION {year.bibitem}
-{
-  year duplicate$ empty$
-  { pop$ ""
-  }{
-    skip$
-  } if$
-  extra.label *
-}
-
-FUNCTION {output.bibitem}
-{
-  newline$
-  ""
-  label
-  * ")" *
-   make.full.names duplicate$ short.list =
-   { pop$ }{ * } if$
-   bracify
-  "[" swap$ * "]" *
-  cite$ bracify "%" *
-  *
-  "\bibitem "
-  swap$ *
-  write$ newline$
-  "  "
-  duplicate$ bbl.open * write$ newline$
-  before.all 'output.state :=
-  punctuation.yes 'punctuation.state :=
-}
-
-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 {word.in}
-{
-  bbl.in
-  word.space *
-}
-
-FUNCTION {date.encapsulate}
-{
-  duplicate$ empty$
-    'skip$
-    {
-      before.all 'output.state :=
-      " (" swap$ * ")" *
-    }
-  if$
-}
-
-FUNCTION {format.date}
-{
-  year "year" bibinfo.check duplicate$ empty$
-    {
-    }
-    'skip$
-  if$
-  extra.label *
-  date.encapsulate
-}
-
-FUNCTION {format.date.output.check}
-{
- format.date
- "year" output.check
-}
-
-FUNCTION {format.date.output}
-{
-  format.date.output.check
-}
-
-FUNCTION {format.btitle}
-{
-  booktitle duplicate$ empty$ { pop$
-      title
-  } 'skip$ if$
-  "title" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {either.or.check}
-{ empty$
-    'pop$
-    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
-  if$
-}
-
-FUNCTION {editor.check.book}
-{ editor empty$ 'skip$
-    {
-      "can't use both author and editor fields in " cite$ *
-      ": try using @inbook instead" *
-      warning$
-    }
-  if$
-}
-
-FUNCTION {format.bvolume}
-{ volume duplicate$ empty$
-    { pop$ "" }
-    {
-      "volume and number" number either.or.check
-      bbl.volume
-      capitalize
-      swap$
-      tie.or.space.prefix "volume" bibinfo.check * *
-      series "series" bibinfo.check duplicate$ empty$ 'pop$
-        {
-          ", "
-          * swap$ *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.number}
-{
-  bbl.number
-  output.state after.word = output.state after.punctuation = or
-  #1 or
-  #0 and
-    'skip$
-    { capitalize }
-  if$
-  number tie.or.space.prefix "number" bibinfo.check * *
-}
-
-FUNCTION {format.number.series}
-{ volume empty$
-    { number empty$
-        { series field.or.null }
-        {
-          series empty$
-            {
-              number "number" bibinfo.check
-            }{
-              format.number
-              series "series" bibinfo.check
-              word.space * swap$ *
-            }
-          if$
-        }
-      if$
-    }
-    { "" }
-  if$
-}
-
-FUNCTION {is.num}
-{ chr.to.int$
-  duplicate$ "0" chr.to.int$ < not
-  swap$ "9" chr.to.int$ > not and
-}
-
-FUNCTION {extract.num}
-{ duplicate$ 't :=
-  "" 's :=
-  { t empty$ not }
-  { t #1 #1 substring$
-    t #2 global.max$ substring$ 't :=
-    duplicate$ is.num
-      { s swap$ * 's := }
-      { pop$ "" 't := }
-    if$
-  }
-  while$
-  s empty$
-    'skip$
-    { pop$ s }
-  if$
-}
-
-FUNCTION {convert.edition}
-{ extract.num "l" change.case$ 's :=
-  s "first" = s "1" = or
-    { bbl.first 't := }
-    { s "second" = s "2" = or
-        { bbl.second 't := }
-        { s "third" = s "3" = or
-            { bbl.third 't := }
-            { s "fourth" = s "4" = or
-                { bbl.fourth 't := }
-                { s "fifth" = s "5" = or
-                    { bbl.fifth 't := }
-                    { s #1 #1 substring$ is.num
-                        { s
-                            eng.ord
-                        't := }
-                        { edition 't := }
-                      if$
-                    }
-                  if$
-                }
-              if$
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  t
-}
-
-FUNCTION {format.edition}
-{ edition duplicate$ empty$ 'skip$
-    {
-      convert.edition
-      output.state after.word = output.state after.punctuation = or
-        { "l" }
-        { "t" }
-      if$ change.case$
-      "edition" bibinfo.check
-      word.space * bbl.edition *
-    }
-  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 duplicate$ empty$
-    'skip$
-    { duplicate$ multi.page.check
-        {
-          bbl.pages swap$
-          n.dashify
-        }{
-          bbl.page swap$
-        }
-      if$
-      tie.or.space.prefix
-      "pages" bibinfo.check
-      * *
-    }
-  if$
-}
-
-FUNCTION {first.page}
-{ 't :=
-  ""
-    {  t empty$ not t #1 #1 substring$ "-" = not and }
-    { t #1 #1 substring$ *
-      t #2 global.max$ substring$ 't :=
-    }
-  while$
-}
-
-FUNCTION {format.book.pages}
-{
-  pages duplicate$ empty$ 'skip$
-    {
-      "pages" bibinfo.check word.space bbl.pages * *
-    }
-  if$
-}
-
-FUNCTION {volnum.punct}
-{
-          ","
-  word.space *
-}
-
-FUNCTION {format.journal.pages}
-{ pages duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$
-        { pop$ pop$ format.pages }
-        { volnum.punct *
-          swap$
-          control.pages duplicate$ #0 < {
-            pop$ pop$
-          }{
-            #0 >
-            {
-              n.dashify
-            }{
-              first.page
-            } if$
-          } if$
-          "pages" bibinfo.check
-          *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.journal.eid}
-{ eid "eid" bibinfo.check
-  duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$ 'skip$
-        { volnum.punct * }
-      if$
-      swap$ *
-    }
-  if$
-}
-
-FUNCTION {eid.or.pages}
-{
-  eid empty$
-    { format.journal.pages }
-    { format.journal.eid }
-  if$
-}
-
-FUNCTION {format.ser.vol.num}
-{
-  series "series" bibinfo.check output
-  volume field.or.null
-  duplicate$ empty$ 'skip$
-    {
-      "volume" bibinfo.check
-    }
-  if$
-  bolden
-}
-
-FUNCTION {format.chapter.pages}
-{ chapter empty$
-    {
-    format.pages
-    }
-    { type empty$
-        {
-          bbl.chapter
-          capitalize
-        }{
-          type
-          capitalize
-          "type" bibinfo.check
-        }
-      if$
-      chapter tie.or.space.prefix
-      "chapter" bibinfo.check
-      * *
-      pages empty$
-        'skip$
-        { ", " * format.pages * }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.booktitle}
-{
-  booktitle duplicate$ "booktitle" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      pop$ emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {format.editor.in}
-{
-  editor "editor" format.names.ed duplicate$ empty$ 'skip$
-    {
-      bbl.edby
-      word.space * swap$ *
-    }
-  if$
-}
-
-FUNCTION {output.article.booktitle}
-{
-  format.booktitle
-      "booktitle" 'bibfield :=
-  output
-  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
-    {
-      "address" 'bibfield :=
-      output.nonnull after.punctuation 'output.state :=
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      format.editor.in "editor" bibinfo.check output
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle.inbook}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      author empty$ 'skip$
-        { format.editor.in "editor" bibinfo.check output }
-    if$
-    }
-  if$
-}
-
-FUNCTION {format.thesis.type}
-{ type duplicate$ empty$
-    'pop$
-    { swap$ pop$
-      "t" change.case$ "type" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {format.tr.number}
-{ number "number" bibinfo.check
-  type duplicate$ empty$
-    { pop$ bbl.techrep }
-    'skip$
-  if$
-  "type" bibinfo.check
-  swap$ duplicate$ empty$
-    { pop$ "t" change.case$ }
-    { tie.or.space.prefix * * }
-  if$
-}
-
-FUNCTION {format.article.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.book.crossref}
-{ volume duplicate$ empty$
-    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
-      pop$ word.in
-    }
-    { bbl.volume
-      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
-    }
-  if$
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.incoll.inproc.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.org.or.pub}
-{ 't :=
-  ""
-  address "address" bibinfo.check
-  duplicate$ empty$
-    { pop$ t }
-    { t duplicate$ empty$
-        { pop$ }
-        {
-          "," word.space *
-          * swap$ *
-        }
-      if$
-    }
-  if$
-  *
-  year duplicate$ empty$
-    {
-      "empty year in " cite$ *
-      warning$
-      pop$ ""
-    }
-    'skip$
-  if$
-  duplicate$ empty$
-    { pop$ }
-    {
-      "year" bibinfo.check
-      swap$
-      duplicate$ empty$
-        { pop$ }
-        {
-          "," *
-          word.space *
-          swap$ *
-        }
-      if$
-    }
-  if$
-  duplicate$ empty$ 'skip$ {
-    ""
-    "(" * swap$ * ")" *
-    after.punctuation 'output.state :=
-    punctuation.space 'punctuation.state :=
-  } if$
-}
-
-FUNCTION {format.publisher.address}
-{ publisher "publisher" bibinfo.warn format.org.or.pub
-}
-
-FUNCTION {format.organization.address}
-{ organization "organization" bibinfo.check format.org.or.pub
-}
-
-FUNCTION {format.organization.publisher.address}
-{
-  publisher empty$
-    { format.organization.address }
-    { organization "organization" bibinfo.check output
-      format.publisher.address
-    }
-  if$
-}
-
-FUNCTION {format.school.address.output}
-{
-  school  "school"  bibinfo.warn
-  address "address" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      swap$
-      duplicate$ empty$ 'skip$
-        {
-          ", " *
-        }
-      if$
-      swap$
-    }
-  if$
-  *
-  output
-}
-
-FUNCTION {article.title.produce}
-{
-  control.title duplicate$ #0 <
-  { pop$
-  }{
-    format.title
-    "title" 'bibfield :=
-    swap$ #0 >
-    {
-      "title" output.check
-    }{
-      output
-    } if$
-    new.block.comma
-  } if$
-}
-
-FUNCTION {control}
-{
-}
-
-FUNCTION {article}
-{ output.bibitem
-  format.authors
-  booktitle empty$ {
-      "author" output.check
-    }{ output } if$
-  author format.key output
-  new.block.comma
-  article.title.produce
-  output.article.booktitle
-  crossref missing$
-    {
-      link.open
-      journal
-      "journal" bibinfo.warn
-      "journal" 'bibfield :=
-      output
-      add.blank
-      format.ser.vol.num
-      output
-      eid.or.pages
-      format.date.output.check
-      pages empty$ {
-      doi output
-      } 'skip$ if$
-      link.shut
-    }{
-      format.article.crossref output.nonnull
-      format.pages output
-    }
-  if$
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  format.translation output
-  fin.entry
-}
-
-FUNCTION {book}
-{ output.bibitem
-  author empty$
-    {
-      format.editors "author and editor" output.check
-      editor format.key output
-    }{
-      format.authors output.nonnull
-%     crossref missing$ { editor.check.book } 'skip$ if$
-    }
-  if$
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-  format.edition output
-  author empty$
-    {
-    }
-    {
-      format.editor.in output
-      editor format.key output
-    }
-  if$
-  format.number.series output
-  crossref missing$
-    {
-      format.bvolume output
-      new.block.comma
-      format.publisher.address output
-    }{
-      new.block.comma
-      format.book.crossref output.nonnull
-      format.date.output.check
-    }
-  if$
-  format.isbn.output
-  format.chapter.pages
-  output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {booklet}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  address "address" bibinfo.check output
-  format.date.output
-  format.isbn.output
-  format.book.pages output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {footnote}
-{ output.bibitem
-  format.note output
-  fin.entry
-}
-
-FUNCTION {inbook}
-{ output.bibitem
-  author empty$
-    {
-       format.editors "editor" output.check
-       editor format.key output
-    }{
-       format.authors output.nonnull
-       author format.key output
-    }
-  if$
-  new.block.comma
-
-  format.title output
-  new.block.comma
-
-  crossref missing$
-    {
-      format.in.ed.booktitle.inbook
-      format.publisher.address output
-      format.chapter.pages
-      "chapter and pages"
-      output.check
-      new.block.comma
-      format.edition output
-      new.block.comma
-    }{
-      format.chapter.pages
-      "chapter and pages"
-      output.check
-      new.block.comma
-      format.book.crossref output.nonnull
-      format.date.output.check
-    }
-  if$
-  crossref missing$
-    { format.isbn.output }
-    'skip$
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {incollection}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.publisher.address output
-      format.edition output
-      format.chapter.pages output
-      format.isbn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-      format.chapter.pages output
-    }
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {inproceedings}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.organization.publisher.address output
-      format.chapter.pages output
-      format.isbn.output
-      format.issn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-      format.chapter.pages output
-    }
-  if$
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {conference} { inproceedings }
-FUNCTION {manual}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      organization "organization" bibinfo.check output
-      address "address" bibinfo.check output
-  format.edition output
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {mastersthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.mthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  format.date.output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {misc}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {phdthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.phdthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  format.date.output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {presentation}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  format.organization.address "organization and address" output.check
-  month "month" output.check
-  year "year" output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  new.sentence
-  type missing$ 'skip$
-    {"(" type capitalize * ")" * output}
-  if$
-  fin.entry
-}
-
-FUNCTION {proceedings}
-{ output.bibitem
-  format.editors output
-  editor format.key output
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      bookaddress "address" bibinfo.check output
-  format.number.series output
-  format.bvolume output
-  format.organization.publisher.address output
-  format.isbn.output
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {techreport}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-  new.block.comma
-  format.tr.number
-  output.nonnull
-  institution "institution" bibinfo.warn
-  format.org.or.pub output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {unpublished}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  format.date.output
-  new.block.comma
-  new.sentence.comma
-  format.note "note" output.check
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {default.type} { misc }
-
-READ
-
-EXECUTE {control.init}
-
-ITERATE {control.pass}
-
-EXECUTE {control.check}
-
-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 {cite.name.font.apply}
-{
-  word.space * bbl.etal
-  emphasize
-  *
-}
-
-FUNCTION {format.lab.names}
-{ 's :=
-  "" 't :=
-  #1 'nameptr :=
-  format.name.apply
-  s num.names$ duplicate$
-  #2 >
-    { pop$
-      cite.name.font.apply
-    }{
-      #2 <
-        'skip$
-        {
-          s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
-            {
-              cite.name.font.apply
-            }{
-              bbl.and space.word *
-              s #2 "{vv~}{ll}" format.name$
-              cite.name.font
-              *
-            }
-          if$
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {author.key.label}
-{ author empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {author.editor.key.label}
-{ author empty$
-    { editor empty$
-        { key empty$
-            { cite$ #1 #3 substring$ }
-            'key
-          if$
-        }
-        { editor format.lab.names }
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {editor.key.label}
-{ editor empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { editor format.lab.names }
-  if$
-}
-
-FUNCTION {calc.short.authors}
-{ type$ "book" =
-  type$ "inbook" =
-  or
-    'author.editor.key.label
-    { type$ "proceedings" =
-        'editor.key.label
-        'author.key.label
-      if$
-    }
-  if$
-  'short.list :=
-}
-
-FUNCTION {calc.label}
-{
-  calc.short.authors
-  short.list
-  year duplicate$ empty$
-  short.list key field.or.null = or
-    {
-      pop$ ""
-    }{
-      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
-    }
-  if$
-  "(" swap$ *
-  * 'label :=
-}
-
-FUNCTION {sort.format.names}
-{ 's :=
-  #1 'nameptr :=
-  ""
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { s nameptr
-      "{ll{ }}"
-      control.author.initials {
-        "{  f{ }}"  *
-      }{
-        "{  ff{ }}" *
-      } if$
-      "{  jj{ }}" *
-      format.name$ 't :=
-      nameptr #1 >
-        {
-          "   "  *
-          namesleft #1 = t "others" = and
-            { "zzzzz" * }
-            {
-              t sortify *
-            }
-          if$
-        }
-        { 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 {author.editor.sort}
-{ author empty$
-    { 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 {year.sort.key}
-{
-  year
-}
-
-FUNCTION {editor.sort}
-{ editor empty$
-    { key empty$
-        { "to sort, need editor or key in " cite$ * warning$
-          ""
-        }
-        { key sortify }
-      if$
-    }
-    { editor sort.format.names }
-  if$
-}
-
-INTEGERS { seq.num }
-
-FUNCTION {init.seq}
-{ #0 'seq.num :=}
-
-EXECUTE {init.seq}
-
-FUNCTION {int.to.fix}
-{ "000000000" swap$ int.to.str$ *
-  #-1 #10 substring$
-}
-
-FUNCTION {label.presort}
-{
-  calc.label
-  label sortify
-  "    "
-  *
-  seq.num #1 + 'seq.num :=
-  seq.num  int.to.fix
-  'sort.label :=
-  sort.label
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {presort.pass}
-{ type$ "control" = 'control.presort 'label.presort if$
-}
-
-ITERATE {presort.pass}
-
-SORT
-
-STRINGS { last.label next.extra }
-
-INTEGERS { last.extra.num number.label }
-
-FUNCTION {initialize.extra.label.stuff}
-{ #0 int.to.chr$ 'last.label :=
-  "" 'next.extra :=
-  #0 'last.extra.num :=
-  #0 'number.label :=
-}
-
-FUNCTION {label.forward}
-{
-  last.label label =
-    { last.extra.num #1 + 'last.extra.num :=
-      last.extra.num int.to.chr$ 'extra.label :=
-    }
-    { "a" chr.to.int$ 'last.extra.num :=
-      "" 'extra.label :=
-      label 'last.label :=
-    }
-  if$
-  number.label #1 + 'number.label :=
-}
-
-FUNCTION {label.reverse}
-{ next.extra "b" =
-    { "a" 'extra.label := }
-    'skip$
-  if$
-  extra.label 'next.extra :=
-  extra.label
-  duplicate$ empty$
-    'skip$
-    { "{\natexlab{" swap$ * "}}" * }
-  if$
-  'extra.label :=
-  label extra.label * 'label :=
-}
-
-EXECUTE {initialize.extra.label.stuff}
-
-FUNCTION {forward.pass}
-{ type$ "control" = 'control.forward 'label.forward if$
-}
-
-ITERATE {forward.pass}
-
-FUNCTION {reverse.pass}
-{ type$ "control" = 'control.reverse 'label.reverse if$
-}
-
-REVERSE {reverse.pass}
-
-FUNCTION {sortkey.sort}
-{ sort.label
-  "    "
-  *
-  year.sort.key
-  field.or.null sortify
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {bib.sort.pass}
-{ type$ "control" = 'control.sort 'sortkey.sort if$
-}
-
-ITERATE {bib.sort.pass}
-
-SORT
-
-FUNCTION {init.bib.eprint}
-{
-    "\texttt {"
-  pop$
-  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
-  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
-  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
-  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
-}
-
-FUNCTION {init.bib.doi}
-{
-  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
-}
-
-FUNCTION {init.bib.hypertex}
-{
-  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
-  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
-  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
-  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
-  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
-  "\providecommand \@@startlink[1]{}%" write$ newline$
-  "\providecommand \@@endlink[0]{}%"   write$ newline$
-}
-
-FUNCTION {init.bib.namefont}
-{
-  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
-  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
-  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
-}
-
-FUNCTION {init.bib.quote}
-{
-  "\providecommand " bbl.enquote * " [1]{" *
-  "``" "''"
-  "#1" swap$ "}%" * * * * write$ newline$
-}
-
-FUNCTION {init.bib.ay}
-{
-  "\providecommand \natexlab [1]{#1}%"
-  write$ newline$
-}
-
-FUNCTION {init.bib.bibinfo}
-{
-  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-}
-
-FUNCTION {init.bib.lang}
-{
-  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
-}
-
-FUNCTION {init.bib.endbibitem}
-{
-  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
-  "\providecommand \bibitemStop [0]{}%"               write$ newline$
-  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
-  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
-}
-
-FUNCTION {init.bib.translation}
-{
-  "\providecommand \translation [1]{[#1]}%" write$ newline$
-}
-
-FUNCTION {warn.bib}
-{
-}
-
-FUNCTION {init.bib}
-{
-  warn.bib
-  "\makeatletter" write$ newline$
-  "\providecommand \@ifxundefined [1]{%"   write$ newline$
-  " \@ifx{#1\undefined}"                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifnum [1]{%"          write$ newline$
-  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifx [1]{%"            write$ newline$
-  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  init.bib.ay
-  init.bib.quote
-  init.bib.namefont
-  init.bib.hypertex
-  init.bib.eprint
-  init.bib.doi
-  init.bib.lang
-  init.bib.bibinfo
-  init.bib.translation
-  init.bib.endbibitem
-  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
-  "\let\auto at bib@innerbib\@empty"          write$ newline$
-  "%</preamble>" write$
-}
-
-FUNCTION {begin.bib}
-{
-  id.bst diagn.cmntlog
-  control.bib
-  preamble$ empty$
-    'skip$
-    { preamble$ write$ newline$ }
-  if$
-  "\begin{thebibliography}{"
-  number.label int.to.str$
-  * "}%" *
-  write$ newline$
-  init.bib
-}
-
-EXECUTE {begin.bib}
-
-EXECUTE {init.state.consts}
-
-ITERATE {call.type$}
-
-FUNCTION {end.bib}
-{ newline$
-  "\end{thebibliography}%"
-  write$ newline$
-}
-
-EXECUTE {end.bib}
-
-%% End of customized bst file
-%%
-%% End of file `apsrev4-1.bst'.

Added: trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-2.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-2.bst	                        (rev 0)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-2.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,3523 @@
+%%
+%% This is file `apsrev4-2.bst', and is a hand-edited version of apsrev4-1.bst
+ % ===============================================================
+ % IMPORTANT NOTICE:
+ % This file can be redistributed and/or modified under the terms
+ % of the LaTeX Project Public License Distributed from CTAN
+ % archives in directory macros/latex/base/lppl.txt; either
+ % version 1 of the License, or any later version.
+ % ===============================================================
+ %-------------------------------------------------------------------
+ % This bibliography style file is intended for texts in ENGLISH
+ % This is an author-year citation style bibliography. As such, it is
+ % non-standard LaTeX, and requires a special package file to function properly.
+ % Such a package is natbib.sty   by Patrick W. Daly
+ % The form of the \bibitem entries is
+ %   \bibitem[Jones et al.(1990)]{key}...
+ %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
+ % The essential feature is that the label (the part in brackets) consists
+ % of the author names, as they should appear in the citation, with the year
+ % in parentheses following. There must be no space before the opening
+ % parenthesis!
+ % With natbib v5.3, a full list of authors may also follow the year.
+ % In natbib.sty, it is possible to define the type of enclosures that is
+ % really wanted (brackets or parentheses), but in either case, there must
+ % be parentheses in the label.
+ % The \cite command functions as follows:
+ %   \citet{key} ==>>                Jones et al. (1990)
+ %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
+ %   \citep{key} ==>>                (Jones et al., 1990)
+ %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
+ %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
+ %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
+ %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
+ %   \citeauthor{key} ==>>           Jones et al.
+ %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
+ %   \citeyear{key} ==>>             1990
+ %---------------------------------------------------------------------
+
+FUNCTION {id.bst} {"apsrev4-2.bst 2018-12-27 (MD) hand-edited version of apsrev4-1.bst"}
+ENTRY
+{
+    address
+    archive
+    archivePrefix
+    author
+    bookaddress
+    booktitle
+    chapter
+    collaboration
+    doi
+    edition
+    editor
+    eid
+    eprint
+    howpublished
+    institution
+    isbn
+    issn
+    journal
+    key
+    language
+    month
+    note
+    number
+    organization
+    pages
+    primaryClass
+    publisher
+    school
+    SLACcitation
+    series
+    title
+    translation
+    type
+    url
+    volume
+    year
+}{
+}{
+    label
+    extra.label sort.label
+    short.list
+}
+
+INTEGERS
+{
+  output.state before.all
+  after.word after.punctuation
+  after.sentence after.block
+}
+
+INTEGERS
+{
+  punctuation.state punctuation.no punctuation.space punctuation.yes
+}
+
+STRINGS { bibfield output.bibfield }
+
+FUNCTION {not}
+{   { #0 }
+    { #1 }
+  if$
+}
+
+FUNCTION {and}
+{   'skip$
+    { pop$ #0 }
+  if$
+}
+
+FUNCTION {or}
+{   { pop$ #1 }
+    'skip$
+  if$
+}
+
+FUNCTION {non.stop}
+{ duplicate$
+   "}" * add.period$
+   #-1 #1 substring$ "." =
+}
+
+INTEGERS { arith.mulitplier arith.multiplicand }
+
+FUNCTION {multiply}
+{
+  'arith.multiplicand :=
+  'arith.mulitplier :=
+  #0
+    { arith.mulitplier #0 > }
+    { arith.multiplicand +
+      arith.mulitplier #1 - 'arith.mulitplier :=
+    }
+  while$
+}
+
+FUNCTION {chr.to.hex}
+{
+  chr.to.int$
+  duplicate$ "0" chr.to.int$ -
+  duplicate$ duplicate$ #0 < swap$ #9 > or not
+    { swap$ pop$ }
+    { pop$
+      duplicate$ "A" chr.to.int$ -
+      duplicate$ duplicate$ #0 < swap$ #5 > or not
+        { swap$ pop$ #10 + }
+        { pop$
+          duplicate$ "a" chr.to.int$ -
+          duplicate$ duplicate$ #0 < swap$ #5 > or not
+            { swap$ pop$ #10 + }
+            { pop$
+              pop$ #-1
+            }
+          if$
+        }
+      if$
+    }
+  if$
+}
+
+INTEGERS { arith.accumulator }
+
+FUNCTION {str.to.hex}
+{ #0 'arith.accumulator :=
+    { duplicate$ empty$ not }
+    { duplicate$ #1 #1 substring$ chr.to.hex
+      duplicate$ #0 <
+        { pop$ pop$ ""
+        }
+        { arith.accumulator #16 multiply + 'arith.accumulator :=
+          #2 global.max$ substring$
+        }
+      if$
+    }
+  while$
+  pop$ arith.accumulator
+}
+
+FUNCTION {diagn.cmntlog}
+{
+  duplicate$ top$ "%" swap$ * write$ newline$
+}
+
+INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
+
+INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
+
+FUNCTION { control.init }
+{
+  #0
+  'control.key             :=
+  #0
+  #8 +
+  #64 +
+  'control.author :=
+  #1
+  'control.author.jnrlst   :=
+  #0
+  'control.author.dotless  :=
+  #0
+  'control.author.nospace  :=
+  #1
+  'control.author.initials :=
+  #0
+  'control.author.nocomma  :=
+  #0
+  'control.author.first    :=
+  #0
+  'control.author.reversed :=
+  #1
+  'control.editor :=
+  #-1
+  'control.title  :=
+  #0
+  'control.pages  :=
+  #0
+  'control.eprint :=
+  #1
+  'control.year   :=
+}
+
+FUNCTION {warning.dependency}
+{
+  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
+}
+
+FUNCTION {control.check}
+{
+  control.editor
+    {
+      "editor formatted same as author"
+      control.author.reversed {
+        duplicate$ #0 swap$ "reversed" warning.dependency
+        #0 'control.author.reversed :=
+      } 'skip$ if$
+      control.author.first {
+        duplicate$ #0 swap$ "first" warning.dependency
+        #0 'control.author.first :=
+      } 'skip$ if$
+      control.author.nocomma {
+        duplicate$ #0 swap$ "nocomma" warning.dependency
+        #0 'control.author.nocomma :=
+      } 'skip$ if$
+      pop$
+    } 'skip$ if$
+  control.author.reversed 'skip$
+    {
+      "not reversed"
+      control.author.nospace {
+        duplicate$ #0 swap$ "nospace" warning.dependency
+        #0 'control.author.nospace :=
+      } 'skip$ if$
+      control.author.jnrlst 'skip$ {
+        duplicate$ #1 swap$ "jnrlst" warning.dependency
+        #1 'control.author.jnrlst :=
+      } if$
+      control.author.initials {
+        duplicate$ ", initials" *
+        control.author.dotless {
+          duplicate$ #0 swap$ "dotless" warning.dependency
+          #0 'control.author.dotless :=
+        } 'skip$ if$
+        pop$
+      } 'skip$ if$
+      pop$
+    }
+  if$
+  control.author.initials 'skip$ {
+    "not initials"
+    control.author.nocomma {
+      duplicate$ #0 swap$ "nocomma" warning.dependency
+      #0 'control.author.nocomma :=
+    } 'skip$ if$
+    control.author.nospace {
+      duplicate$ #0 swap$ "nospace" warning.dependency
+      #0 'control.author.nospace :=
+    } 'skip$ if$
+    control.author.dotless 'skip$ {
+      duplicate$ #1 swap$ "dotless" warning.dependency
+      #1 'control.author.dotless :=
+    } if$
+    pop$
+  } if$
+}
+
+FUNCTION {control.parse}
+{
+  duplicate$ duplicate$ missing$
+    {
+      pop$ pop$ pop$
+    }
+    { empty$
+        {
+          pop$ #-1
+        }{
+          str.to.hex
+        }
+      if$
+      swap$ :=
+    }
+  if$
+}
+
+FUNCTION {control.dump}
+{
+  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
+  "{" swap$ * "}, " *
+  *
+}
+
+INTEGERS { decode.threshold }
+
+FUNCTION {control.decode}
+{
+  - duplicate$
+  #0 <
+    {
+      skip$ pop$ swap$ #0
+    }
+    {
+      swap$ pop$ swap$ #1
+    }
+  if$
+  swap$ :=
+}
+
+FUNCTION {control.author.decode}
+{
+  control.author
+  duplicate$ duplicate$ #0 < swap$ #128 < not or
+    {
+      int.to.str$ "(" swap$ * ")" *
+      "Control cannot interpret author " swap$ *
+      warning$
+    }{
+      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
+      'control.author.dotless  swap$ duplicate$ #32 control.decode
+      'control.author.nospace  swap$ duplicate$ #16 control.decode
+      'control.author.initials swap$ duplicate$  #8 control.decode
+      'control.author.nocomma  swap$ duplicate$  #4 control.decode
+      'control.author.first    swap$ duplicate$  #2 control.decode
+      'control.author.reversed swap$ duplicate$  #1 control.decode
+      duplicate$ #0 =
+        'skip$
+        {
+          "Control: residue of author"
+          "(" swap$ * ")" * *
+          warning$
+        }
+      if$
+      pop$
+    }
+  if$
+}
+
+FUNCTION {control.setup}
+{
+  type$ cite$ "{" swap$ * "}, " * *
+  "control.key"    key    control.dump *
+  "control.author" author control.dump *
+  "control.editor" editor control.dump *
+  "control.title"  title  control.dump *
+  "control.pages"  pages  control.dump *
+  "control.year"   year   control.dump *
+  "control.eprint" eprint control.dump *
+  top$
+  'control.key    key    control.parse
+  'control.author author control.parse
+  'control.editor editor control.parse
+  'control.title  title  control.parse
+  'control.pages  pages  control.parse
+  'control.year   year   control.parse
+  'control.eprint eprint control.parse
+  control.author.decode
+}
+
+FUNCTION {control.pass}
+{ type$ "control" = 'control.setup 'skip$ if$
+}
+
+FUNCTION {control.presort}
+{
+}
+
+FUNCTION {control.forward}
+{
+}
+
+FUNCTION {control.reverse}
+{
+}
+
+FUNCTION {control.sort}
+{
+}
+
+FUNCTION {control.longest.label}
+{
+}
+
+FUNCTION {control.key.bib}
+{
+  "Control: key "
+  control.key
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  pop$ *
+  diagn.cmntlog
+}
+
+FUNCTION {control.author.bib}
+{
+  "Control: author "
+  control.author "(" swap$ int.to.str$ * ")" * *
+  control.author.reversed { " reversed" * }{} if$
+  control.author.first    { " first"    * }{} if$
+  control.author.nocomma  { " nocomma"  * }{} if$
+  control.author.initials { " initials" * }{} if$
+  control.author.nospace  { " nospace"  * }{} if$
+  control.author.dotless  { " dotless"  * }{} if$
+  control.author.jnrlst   { " jnrlst"   * }{} if$
+  diagn.cmntlog
+}
+
+FUNCTION {control.editor.bib}
+{
+  "Control: editor formatted "
+  control.editor
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "identically to author"
+    } {
+      "differently from author"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.title.bib}
+{
+  "Control: production of article title "
+  control.title
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled"
+  } {
+    #0 > {
+      "required"
+    } {
+      "allowed"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.pages.bib}
+{
+  "Control: page "
+  control.pages
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "none"
+  } {
+    #0 > {
+      "range"
+    } {
+      "single"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.year.bib}
+{
+  "Control: year "
+  control.year
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "truncated"
+    } {
+      "verbatim"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.eprint.bib}
+{
+  "Control: production of eprint "
+  control.eprint
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  #0 < { "disabled" } { "enabled" } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.bib}
+{
+  control.key.bib
+  control.author.bib
+  control.editor.bib
+  control.title.bib
+  control.pages.bib
+  control.year.bib
+  control.eprint.bib
+}
+
+FUNCTION {init.state.consts}
+{
+  #0 'before.all        :=
+  #1 'after.word        :=
+  #2 'after.punctuation :=
+  #3 'after.sentence    :=
+  #4 'after.block       :=
+  #0 'punctuation.no    :=
+  #1 'punctuation.space :=
+  #2 'punctuation.yes   :=
+  "" 'bibfield          :=
+  "" 'output.bibfield   :=
+}
+
+STRINGS { s t}
+FUNCTION {block.punctuation}
+{ ""
+  "," *
+}
+
+FUNCTION {word.space}
+{
+  "\ "
+}
+
+FUNCTION {show.stackstring.one}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  duplicate$ "1(" swap$ * ")" * top$
+}
+
+FUNCTION {show.stackstring.two}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  swap$
+  duplicate$ "1(" swap$ * ")" * top$
+  swap$
+  duplicate$ "2(" swap$ * ")" * top$
+}
+
+FUNCTION {bibfield.command}{ "\bibfield "}
+
+FUNCTION {output.nonnull}
+{
+  swap$
+  output.state after.word =
+    {
+      block.punctuation *
+      word.space *
+    }
+    {
+      output.state after.punctuation =
+        {
+          word.space *
+        }
+        {
+          output.state after.block = output.state after.sentence = or
+            {
+              add.period$
+              "\EOS\ " *
+            }{
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  output.bibfield duplicate$ empty$ 'pop$
+    {
+      bibfield.command
+      " {" * swap$ * "} {" * swap$ * "}" *
+    }
+  if$
+  write$
+  bibfield 'output.bibfield := "" 'bibfield :=
+  output.state after.block =
+    {
+      newline$
+      "\newblock " write$
+    }
+    'skip$
+  if$
+  punctuation.state duplicate$
+  punctuation.yes 'punctuation.state :=
+  punctuation.no =
+    { pop$ before.all }
+    { punctuation.yes = { after.word }{ after.punctuation } if$ }
+  if$
+  'output.state :=
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+    {
+      pop$
+  "" 'bibfield :=
+    }
+    'output.nonnull
+  if$
+}
+
+FUNCTION {output.nopunct}
+{
+  punctuation.no 'punctuation.state :=
+  output.nonnull
+}
+
+FUNCTION {output.check}
+{ swap$
+  duplicate$ empty$
+    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
+    { swap$ pop$ output.nonnull }
+  if$
+}
+
+FUNCTION {bbl.open} { "\BibitemOpen " }
+
+FUNCTION {bbl.shut} { "\BibitemShut " }
+
+FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
+
+FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
+
+FUNCTION {bibitem.shut}
+{
+  non.stop
+    {
+  bibitem.shut.nostop *
+    }{
+  bibitem.shut.stop *
+    }
+  if$
+}
+
+FUNCTION {html.itag} {
+  "p"
+}
+
+FUNCTION {html.ltag} {
+  ""
+}
+
+FUNCTION {output.SLACcitation}
+{ SLACcitation empty$
+    'skip$
+    {
+      newline$
+      SLACcitation write$
+    }
+  if$
+}
+
+FUNCTION {fin.entry}
+{
+  bibitem.shut
+  write$
+    output.SLACcitation
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+    'skip$
+    { after.block 'output.state := }
+  if$
+}
+
+FUNCTION {new.block.comma}
+{
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block = output.state before.all = or
+    'skip$
+    { after.sentence 'output.state := }
+  if$
+}
+
+FUNCTION {new.sentence.comma}
+{
+}
+
+FUNCTION {sentence.or.colon}
+{
+  new.sentence
+}
+
+FUNCTION {add.blank}
+{
+  word.space *
+  before.all 'output.state :=
+}
+
+FUNCTION {no.blank.or.punct}
+{
+   "\hspace {0pt}" *
+   before.all 'output.state :=
+}
+
+FUNCTION {date.block}
+{
+  new.block.comma
+  skip$
+}
+
+STRINGS {z}
+FUNCTION {remove.dots}
+{
+  control.author.dotless {
+    'z :=
+    ""
+    { z empty$ not }
+    { z #1 #1 substring$
+      z #2 global.max$ substring$ 'z :=
+      duplicate$ "." = 'pop$
+        { * }
+      if$
+    }
+    while$
+  } 'skip$ if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+  swap$ empty$
+  and
+    'skip$
+    'new.block
+  if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+    { pop$ "" }
+    'skip$
+  if$
+}
+
+FUNCTION {emphasize}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+      "\emph {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bolden}
+{ duplicate$ empty$
+    { pop$ "" }
+    { "\textbf {" swap$ * "}" * }
+  if$
+}
+
+FUNCTION {bib.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bib.fname.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibfnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {cite.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\citenamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {tie.or.space.prefix}
+{ duplicate$ text.length$ #3 <
+    { "~" }
+    { word.space }
+  if$
+  swap$
+}
+
+FUNCTION {capitalize}
+{
+  "u" change.case$ "t" change.case$
+}
+
+FUNCTION {space.word}
+{ word.space swap$ * word.space * }
+
+ % Here are the language-specific definitions for explicit words.
+ % Each function has a name bbl.xxx where xxx is the English word.
+ % The language selected here is ENGLISH
+
+FUNCTION {bbl.and}
+{
+  "and"
+}
+
+FUNCTION {bbl.etal}
+{
+  "et~al."
+}
+
+FUNCTION {bbl.editors}
+{
+  "eds."
+}
+
+FUNCTION {bbl.editor}
+{
+  "ed."
+}
+
+FUNCTION {bbl.edby}
+{ "edited by" }
+
+FUNCTION {bbl.edition}
+{
+  "ed."
+}
+
+FUNCTION {bbl.volume}
+{
+  "vol."
+}
+
+FUNCTION {bbl.of}
+{ "of" }
+
+FUNCTION {bbl.number}
+{
+  "no."
+}
+
+FUNCTION {bbl.nr}
+{ "no." }
+
+FUNCTION {bbl.in}
+{ "in" }
+
+FUNCTION {bbl.pages}
+{
+  "pp."
+}
+
+FUNCTION {bbl.page}
+{
+  "p."
+}
+
+FUNCTION {bbl.eidpp}
+{ "pages" }
+
+FUNCTION {bbl.chapter}
+{
+  "chap."
+}
+
+FUNCTION {bbl.techrep}
+{
+  "Tech. Rep."
+}
+
+FUNCTION {bbl.mthesis}
+{ "Master's thesis" }
+
+FUNCTION {bbl.phdthesis}
+{ "Ph.D. thesis" }
+
+FUNCTION {bbl.first}
+{
+  "1st"
+}
+
+FUNCTION {bbl.second}
+{
+  "2nd"
+}
+
+FUNCTION {bbl.third}
+{
+  "3rd"
+}
+
+FUNCTION {bbl.fourth}
+{
+  "4th"
+}
+
+FUNCTION {bbl.fifth}
+{
+  "5th"
+}
+
+FUNCTION {bbl.st}
+{ "st" }
+
+FUNCTION {bbl.nd}
+{ "nd" }
+
+FUNCTION {bbl.rd}
+{ "rd" }
+
+FUNCTION {bbl.th}
+{ "th" }
+
+MACRO {jan} {"Jan."}
+
+MACRO {feb} {"Feb."}
+
+MACRO {mar} {"Mar."}
+
+MACRO {apr} {"Apr."}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"Jun."}
+
+MACRO {jul} {"Jul."}
+
+MACRO {aug} {"Aug."}
+
+MACRO {sep} {"Sep."}
+
+MACRO {oct} {"Oct."}
+
+MACRO {nov} {"Nov."}
+
+MACRO {dec} {"Dec."}
+
+FUNCTION {bbl.url.prefix}
+{
+  "\urlprefix "
+}
+
+FUNCTION {eng.ord}
+{ duplicate$ "1" swap$ *
+  #-2 #1 substring$ "1" =
+     { bbl.th * }
+     { duplicate$ #-1 #1 substring$
+       duplicate$ "1" =
+         { pop$ bbl.st * }
+         { duplicate$ "2" =
+             { pop$ bbl.nd * }
+             { "3" =
+                 { bbl.rd * }
+                 { bbl.th * }
+               if$
+             }
+           if$
+          }
+       if$
+     }
+   if$
+}
+
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
+MACRO {aa}{"Astron. \& Astrophys."}
+MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
+MACRO {aj} {"Astron. J."}
+MACRO {aph} {"Acta Phys."}
+MACRO {advp} {"Adv. Phys."}
+MACRO {ajp} {"Amer. J. Phys."}
+MACRO {ajm} {"Amer. J. Math."}
+MACRO {amsci} {"Amer. Sci."}
+MACRO {anofd} {"Ann. Fluid Dyn."}
+MACRO {am} {"Ann. Math."}
+MACRO {ap} {"Ann. Phys. (NY)"}
+MACRO {adp} {"Ann. Phys. (Leipzig)"}
+MACRO {ao} {"Appl. Opt."}
+MACRO {apl} {"Appl. Phys. Lett."}
+MACRO {app} {"Astroparticle Phys."}
+MACRO {apj} {"Astrophys. J."}
+MACRO {apjsup} {"Astrophys. J. Suppl."}
+MACRO {apss} {"Astrophys. Space Sci."}
+MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
+MACRO {baas} {"Bull. Amer. Astron. Soc."}
+MACRO {baps} {"Bull. Amer. Phys. Soc."}
+MACRO {cmp} {"Comm. Math. Phys."}
+MACRO {cpam} {"Commun. Pure Appl. Math."}
+MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
+MACRO {cpc} {"Comp. Phys. Comm."}
+MACRO {cqg} {"Class. Quant. Grav."}
+MACRO {cra} {"C. R. Acad. Sci. A"}
+MACRO {fed} {"Fusion Eng. \& Design"}
+MACRO {ft} {"Fusion Tech."}
+MACRO {grg} {"Gen. Relativ. Gravit."}
+MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
+MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
+MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
+MACRO {ip} {"Infrared Phys."}
+MACRO {irp} {"Infrared Phys."}
+MACRO {jap} {"J. Appl. Phys."}
+MACRO {jasa} {"J. Acoust. Soc. America"}
+MACRO {jcp} {"J. Comp. Phys."}
+MACRO {jetp} {"Sov. Phys.--JETP"}
+MACRO {jfe} {"J. Fusion Energy"}
+MACRO {jfm} {"J. Fluid Mech."}
+MACRO {jmp} {"J. Math. Phys."}
+MACRO {jne} {"J. Nucl. Energy"}
+MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
+MACRO {jnm} {"J. Nucl. Mat."}
+MACRO {jpc} {"J. Phys. Chem."}
+MACRO {jpp} {"J. Plasma Phys."}
+MACRO {jpsj} {"J. Phys. Soc. Japan"}
+MACRO {jsi} {"J. Sci. Instrum."}
+MACRO {jvst} {"J. Vac. Sci. \& Tech."}
+MACRO {nat} {"Nature"}
+MACRO {nature} {"Nature"}
+MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
+MACRO {nf} {"Nucl. Fusion"}
+MACRO {nim} {"Nucl. Inst. \& Meth."}
+MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
+MACRO {np} {"Nucl. Phys."}
+MACRO {npb} {"Nucl. Phys. B"}
+MACRO {nt/f} {"Nucl. Tech./Fusion"}
+MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
+MACRO {inc} {"Nuovo Cimento"}
+MACRO {nc} {"Nuovo Cimento"}
+MACRO {pf} {"Phys. Fluids"}
+MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
+MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
+MACRO {pl} {"Phys. Lett."}
+MACRO {pla} {"Phys. Lett. A"}
+MACRO {plb} {"Phys. Lett. B"}
+MACRO {prep} {"Phys. Rep."}
+MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
+MACRO {pp} {"Phys. Plasmas"}
+MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
+MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
+MACRO {prl} {"Phys. Rev. Lett."}
+MACRO {pr} {"Phys. Rev."}
+MACRO {physrev} {"Phys. Rev."}
+MACRO {pra} {"Phys. Rev. A"}
+MACRO {prb} {"Phys. Rev. B"}
+MACRO {prc} {"Phys. Rev. C"}
+MACRO {prd} {"Phys. Rev. D"}
+MACRO {pre} {"Phys. Rev. E"}
+MACRO {ps} {"Phys. Scripta"}
+MACRO {procrsl} {"Proc. Roy. Soc. London"}
+MACRO {rmp} {"Rev. Mod. Phys."}
+MACRO {rsi} {"Rev. Sci. Inst."}
+MACRO {science} {"Science"}
+MACRO {sciam} {"Sci. Am."}
+MACRO {sam} {"Stud. Appl. Math."}
+MACRO {sjpp} {"Sov. J. Plasma Phys."}
+MACRO {spd} {"Sov. Phys.--Doklady"}
+MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
+MACRO {spu} {"Sov. Phys.--Uspeki"}
+MACRO {st} {"Sky and Telesc."}
+ % End module: physjour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
+MACRO {aisr} {"Adv. Space Res."}
+MACRO {ag} {"Ann. Geophys."}
+MACRO {anigeo} {"Ann. Geofis."}
+MACRO {angl} {"Ann. Glaciol."}
+MACRO {andmet} {"Ann. d. Meteor."}
+MACRO {andgeo} {"Ann. d. Geophys."}
+MACRO {andphy} {"Ann. Phys.-Paris"}
+MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
+MACRO {atph} {"Atm\'osphera"}
+MACRO {aao} {"Atmos. Ocean"}
+MACRO {ass}{"Astrophys. Space Sci."}
+MACRO {atenv} {"Atmos. Environ."}
+MACRO {aujag} {"Aust. J. Agr. Res."}
+MACRO {aumet} {"Aust. Meteorol. Mag."}
+MACRO {blmet} {"Bound.-Lay. Meteorol."}
+MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
+MACRO {cch} {"Clim. Change"}
+MACRO {cdyn} {"Clim. Dynam."}
+MACRO {cbul} {"Climatol. Bull."}
+MACRO {cap} {"Contrib. Atmos. Phys."}
+MACRO {dsr} {"Deep-Sea Res."}
+MACRO {dhz} {"Dtsch. Hydrogr. Z."}
+MACRO {dao} {"Dynam. Atmos. Oceans"}
+MACRO {eco} {"Ecology"}
+MACRO {empl}{"Earth, Moon and Planets"}
+MACRO {envres} {"Environ. Res."}
+MACRO {envst} {"Environ. Sci. Technol."}
+MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
+MACRO {expa}{"Exper. Astron."}
+MACRO {geoint} {"Geofis. Int."}
+MACRO {geopub} {"Geofys. Publ."}
+MACRO {geogeo} {"Geol. Geofiz."}
+MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
+MACRO {gfd} {"Geophys. Fluid Dyn."}
+MACRO {geomag} {"Geophys. Mag."}
+MACRO {georl} {"Geophys. Res. Lett."}
+MACRO {grl} {"Geophys. Res. Lett."}
+MACRO {ga} {"Geophysica"}
+MACRO {gs} {"Geophysics"}
+MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
+MACRO {ijawp} {"Int. J. Air Water Pollut."}
+MACRO {ijc} {"Int. J. Climatol."}
+MACRO {ijrs} {"Int. J. Remote Sens."}
+MACRO {jam} {"J. Appl. Meteorol."}
+MACRO {jaot} {"J. Atmos. Ocean. Technol."}
+MACRO {jatp} {"J. Atmos. Terr. Phys."}
+MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
+MACRO {jce} {"J. Climate"}
+MACRO {jcam} {"J. Climate Appl. Meteor."}
+MACRO {jcm} {"J. Climate Meteor."}
+MACRO {jcy} {"J. Climatol."}
+MACRO {jgr} {"J. Geophys. Res."}
+MACRO {jga} {"J. Glaciol."}
+MACRO {jh} {"J. Hydrol."}
+MACRO {jmr} {"J. Mar. Res."}
+MACRO {jmrj} {"J. Meteor. Res. Japan"}
+MACRO {jm} {"J. Meteor."}
+MACRO {jpo} {"J. Phys. Oceanogr."}
+MACRO {jra} {"J. Rech. Atmos."}
+MACRO {jaes} {"J. Aeronaut. Sci."}
+MACRO {japca} {"J. Air Pollut. Control Assoc."}
+MACRO {jas} {"J. Atmos. Sci."}
+MACRO {jmts} {"J. Mar. Technol. Soc."}
+MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
+MACRO {josj} {"J. Oceanogr. Soc. Japan"}
+MACRO {jwm} {"J. Wea. Mod."}
+MACRO {lao} {"Limnol. Oceanogr."}
+MACRO {mwl} {"Mar. Wea. Log"}
+MACRO {mau} {"Mausam"}
+MACRO {meteor} {"``Meteor'' Forschungsergeb."}
+MACRO {map} {"Meteorol. Atmos. Phys."}
+MACRO {metmag} {"Meteor. Mag."}
+MACRO {metmon} {"Meteor. Monogr."}
+MACRO {metrun} {"Meteor. Rundsch."}
+MACRO {metzeit} {"Meteor. Z."}
+MACRO {metgid} {"Meteor. Gidrol."}
+MACRO {mwr} {"Mon. Weather Rev."}
+MACRO {nwd} {"Natl. Weather Dig."}
+MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
+MACRO {npg} {"Nonlin. Proc. Geophys."}
+MACRO {om} {"Oceanogr. Meteorol."}
+MACRO {ocac} {"Oceanol. Acta"}
+MACRO {oceanus} {"Oceanus"}
+MACRO {paleoc} {"Paleoceanography"}
+MACRO {pce} {"Phys. Chem. Earth"}
+MACRO {pmg} {"Pap. Meteor. Geophys."}
+MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
+MACRO {physzeit} {"Phys. Z."}
+MACRO {pps} {"Planet. Space Sci."}
+MACRO {pss} {"Planet. Space Sci."}
+MACRO {pag} {"Pure Appl. Geophys."}
+MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
+MACRO {quatres} {"Quat. Res."}
+MACRO {rsci} {"Radio Sci."}
+MACRO {rse} {"Remote Sens. Environ."}
+MACRO {rgeo} {"Rev. Geophys."}
+MACRO {rgsp} {"Rev. Geophys. Space Phys."}
+MACRO {rdgeo} {"Rev. Geofis."}
+MACRO {revmeta} {"Rev. Meteorol."}
+MACRO {sgp}{"Surveys in Geophys."}
+MACRO {sp} {"Solar Phys."}
+MACRO {ssr} {"Space Sci. Rev."}
+MACRO {tellus} {"Tellus"}
+MACRO {tac} {"Theor. Appl. Climatol."}
+MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
+MACRO {wrr} {"Water Resour. Res."}
+MACRO {weather} {"Weather"}
+MACRO {wafc} {"Weather Forecast."}
+MACRO {ww} {"Weatherwise"}
+MACRO {wmob} {"WMO Bull."}
+MACRO {zeitmet} {"Z. Meteorol."}
+ % End module: geojour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
+
+MACRO {appopt} {"Appl. Opt."}
+MACRO {bell} {"Bell Syst. Tech. J."}
+MACRO {ell} {"Electron. Lett."}
+MACRO {jasp} {"J. Appl. Spectr."}
+MACRO {jqe} {"IEEE J. Quantum Electron."}
+MACRO {jlwt} {"J. Lightwave Technol."}
+MACRO {jmo} {"J. Mod. Opt."}
+MACRO {josa} {"J. Opt. Soc. America"}
+MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
+MACRO {josab} {"J. Opt. Soc. Amer.~B"}
+MACRO {jdp} {"J. Phys. (Paris)"}
+MACRO {oc} {"Opt. Commun."}
+MACRO {ol} {"Opt. Lett."}
+MACRO {phtl} {"IEEE Photon. Technol. Lett."}
+MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
+MACRO {sse} {"Solid-State Electron."}
+MACRO {sjot} {"Sov. J. Opt. Technol."}
+MACRO {sjqe} {"Sov. J. Quantum Electron."}
+MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
+MACRO {stph} {"Sov. Phys.--Techn. Phys."}
+MACRO {stphl} {"Sov. Techn. Phys. Lett."}
+MACRO {vr} {"Vision Res."}
+MACRO {zph} {"Z. f. Physik"}
+MACRO {zphb} {"Z. f. Physik~B"}
+MACRO {zphd} {"Z. f. Physik~D"}
+
+MACRO {CLEO} {"CLEO"}
+MACRO {ASSL} {"Adv. Sol.-State Lasers"}
+MACRO {OSA}  {"OSA"}
+ % End module: photjour.mbs
+%% Copyright 1994-2007 Patrick W Daly
+MACRO {acmcs} {"ACM Comput. Surv."}
+MACRO {acta} {"Acta Inf."}
+MACRO {cacm} {"Commun. ACM"}
+MACRO {ibmjrd} {"IBM J. Res. Dev."}
+MACRO {ibmsj} {"IBM Syst.~J."}
+MACRO {ieeese} {"IEEE Trans. Software Eng."}
+MACRO {ieeetc} {"IEEE Trans. Comput."}
+MACRO {ieeetcad}
+ {"IEEE Trans. Comput. Aid. Des."}
+MACRO {ipl} {"Inf. Process. Lett."}
+MACRO {jacm} {"J.~ACM"}
+MACRO {jcss} {"J.~Comput. Syst. Sci."}
+MACRO {scp} {"Sci. Comput. Program."}
+MACRO {sicomp} {"SIAM J. Comput."}
+MACRO {tocs} {"ACM Trans. Comput. Syst."}
+MACRO {tods} {"ACM Trans. Database Syst."}
+MACRO {tog} {"ACM Trans. Graphic."}
+MACRO {toms} {"ACM Trans. Math. Software"}
+MACRO {toois} {"ACM Trans. Office Inf. Syst."}
+MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
+MACRO {tcs} {"Theor. Comput. Sci."}
+
+MACRO {jhep} {"J. High Energy Phys."}
+MACRO {jcap} {"J. Cosmol. Astropart. Phys."}
+MACRO {jinst} {"J. Instrum."}
+MACRO {jstat} {"J. Stat. Mech.: Theory Exp."}
+
+FUNCTION {bibinfo.command} { "\bibinfo " }
+
+FUNCTION {bibinfo.check}
+{ swap$
+  duplicate$ missing$
+    {
+      pop$
+      pop$ ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ pop$
+        }{
+          swap$
+          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {bibinfo.warn}
+{ swap$
+  duplicate$ missing$
+    {
+      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
+      ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ "empty " swap$ * " in " * cite$ * warning$
+        }{
+          swap$
+          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {archiv.base}
+{
+  "https://arxiv.org/abs"
+}
+
+FUNCTION {archiv.prefix.base}
+{
+  "arXiv"
+}
+
+FUNCTION {eprint.command}
+{
+  "\Eprint "
+}
+
+FUNCTION {format.eprint.controlled}
+{
+  eprint duplicate$ empty$
+  control.eprint #1 =
+  or
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.eprint}
+{
+  eprint duplicate$ empty$
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.translation}
+{ translation duplicate$ empty$
+    'skip$
+    { ""
+      "\translation{" * swap$ * "}" *
+      punctuation.space 'punctuation.state :=
+    }
+  if$
+}
+
+FUNCTION {format.url}
+{
+  url duplicate$ empty$
+    { pop$ "" }
+    {
+      "\url "
+      "{" * swap$ * "}" *
+    }
+  if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+FUNCTION {check.speaker}
+{ key empty$ 'skip$
+  { key nameptr int.to.str$ =
+    {
+      bolden
+    }
+      'skip$
+    if$
+  }
+  if$
+}
+
+
+STRINGS  { bibinfo}
+
+FUNCTION {format.names.fname}
+{
+  control.author.initials {
+    control.author.dotless {
+      control.author.nospace {
+        "f{}"
+      } {
+        "f{~}"
+      } if$
+    } {
+      control.author.nospace {
+        "f{.}."
+      } {
+        "f."
+      } if$
+    } if$
+  } {
+    "ff"
+  } if$
+}
+
+FUNCTION {bracify}
+{
+  "{" swap$ * "}" *
+}
+
+FUNCTION {name.comma}
+{
+  control.author.nocomma 'skip$ { "," swap$ * } if$
+}
+
+FUNCTION {format.names.format.onefont}
+{
+  "{vv~}{ll}"
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+    {
+      control.author.initials {
+        "f"
+        control.author.dotless 'skip$ {
+          "." *
+        } if$
+        "~" *
+      } {
+        "ff"
+      } if$
+      bracify
+      swap$
+    } {
+      format.names.fname
+      " " swap$ *
+      name.comma
+      bracify
+    }
+  if$
+  "jj"
+  " " swap$ *
+  name.comma
+  bracify
+  control.author.jnrlst 'skip$ 'swap$ if$
+  * *
+}
+
+FUNCTION {format.names.onefont}
+{
+  s nameptr format.names.format.onefont format.name$
+  remove.dots
+  bib.name.font
+}
+
+FUNCTION {format.names.morfont}
+{ s nameptr
+  "{vv~}{ll}" format.name$ bib.name.font
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+  {
+    s nameptr
+    control.author.initials {
+      "f"                        % default: name + surname + comma junior
+    } {
+      "ff"
+    } if$
+    control.author.dotless 'skip$ {
+      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
+    } if$
+    bracify
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    swap$
+    *
+    s nameptr
+    "{jj}" format.name$ duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } {
+    "," *
+    s nameptr
+    format.names.fname
+    "jj"
+    " "
+    name.comma
+    control.author.jnrlst {
+      swap$ * skip$
+    } {
+      skip$ * swap$
+    } if$
+    bracify swap$ bracify swap$
+    *
+    format.name$
+    remove.dots
+    duplicate$ empty$ 'skip$
+      { bib.fname.font " " swap$ * }
+      if$
+  } if$
+  *
+}
+
+FUNCTION {names.punctuate}
+{
+  "," *
+  " " *
+}
+
+FUNCTION {format.names}
+{ 'bibinfo :=
+  duplicate$ empty$ { pop$ "" } {
+    duplicate$ num.names$
+    duplicate$ 'numnames :=
+    'namesleft :=
+    's :=
+    #1 'nameptr :=
+    ""
+      { namesleft #0 > }
+      {
+      format.names.morfont
+        bibinfo bibinfo.check
+        type$ "presentation" =
+          'check.speaker
+          'skip$
+        if$
+        't :=
+        nameptr #1 > not
+          {
+            t *
+          } {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              } {
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " *
+                    bbl.etal
+                    emphasize
+                    *
+                  } {
+                    bbl.and
+                    word.space * *
+                    t *
+                  }
+                if$
+              }
+            if$
+          }
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+  } if$
+}
+
+FUNCTION {format.names.ed.onefont}
+{
+    s nameptr
+    control.author.initials {
+      control.author.dotless {
+        control.author.nospace {
+          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
+        } {
+          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
+        } if$
+      } {
+        control.author.nospace {
+          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
+        }{
+          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
+        } if$
+      } if$
+    } {
+      "{ff~}{vv~}{ll}{, jj}"
+    } if$
+    format.name$
+    remove.dots
+    bib.name.font
+}
+
+FUNCTION {format.names.ed.morfont}
+{
+  control.author.reversed { %
+    control.author.initials { %
+      control.author.dotless { %
+        s nameptr
+        control.author.nospace { % nm-rvx nm-rvcx
+          "{f{}}"
+        } { % nm-rv
+          "{f{~}}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        remove.dots
+        duplicate$ empty$ 'skip$
+          { bib.fname.font " " swap$ * }
+        if$
+      } { % !control.author.dotless
+        s nameptr
+        control.author.nospace { % nm-rvv
+          "{ff}"
+        } { % nm-rev nm-rev1
+          "{f.}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        duplicate$ empty$ 'skip$
+          { bib.fname.font ", " swap$ * }
+        if$
+      } if$
+    } { % Full names !control.author.initials  nm-revf nm-revv1
+      s nameptr
+      "{ff}"
+      format.name$ duplicate$ empty$ 'skip$
+        { tie.or.space.prefix bib.fname.font swap$ * }
+      if$
+      s nameptr
+      "{vv~}{ll}" format.name$ bib.name.font *
+      s nameptr
+      "{jj}" format.name$
+      duplicate$ empty$ 'skip$
+        { bib.fname.font ", " swap$ * }
+      if$
+    } if$
+  } { % !control.author.reversed nm-init
+    s nameptr
+    "{f.}"
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    s nameptr
+    "{vv~}{ll}" format.name$ bib.name.font *
+    s nameptr
+    "{jj}" format.name$
+    duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } if$
+  *
+}
+
+FUNCTION {format.names.ed}
+{
+  control.editor #0 > {
+    format.names
+  } {
+    'bibinfo :=
+    duplicate$ empty$ 'skip$ {
+    's :=
+    "" 't :=
+    #1 'nameptr :=
+    s num.names$ 'numnames :=
+    numnames 'namesleft :=
+      { namesleft #0 > }
+      {
+       format.names.ed.morfont
+        bibinfo bibinfo.check
+        't :=
+        nameptr #1 >
+          {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              }{
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " * bbl.etal emphasize *
+                  }{
+                   bbl.and
+                    space.word * t *
+                  }
+                if$
+              }
+            if$
+          }
+          't
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+    } if$
+  } if$
+}
+
+FUNCTION {format.key}
+{ empty$
+    { key field.or.null }
+    { "" }
+  if$
+}
+
+FUNCTION {format.authors}
+{ author "author" format.names
+  duplicate$ empty$ 'skip$
+    { collaboration "collaboration" bibinfo.check
+      duplicate$ empty$ 'skip$
+        { " (" swap$ * ")" * }
+      if$
+      *
+    }
+  if$
+  "author" 'bibfield :=
+}
+
+FUNCTION {get.bbl.editor}
+{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
+}
+
+FUNCTION {format.editors}
+{ editor "editor" format.names duplicate$ empty$ 'skip$
+    {
+      "," *
+      word.space *
+      get.bbl.editor
+      *
+    }
+  if$
+}
+
+FUNCTION {format.isbn.output}
+{
+}
+
+FUNCTION {format.issn.output}
+{ 
+}
+
+FUNCTION {doi.base}
+{
+  "https://doi.org/"
+}
+
+FUNCTION {doi.base.command}
+{
+  "\doibase "
+}
+
+FUNCTION {noop.command}
+{
+  "\href at noop "
+}
+
+FUNCTION {href.command}
+{
+  "\href "
+}
+
+FUNCTION {link.tag.open}
+{
+  doi duplicate$ empty$
+    {
+      pop$
+      url duplicate$ empty$
+        {
+          pop$ "" noop.command
+        }{
+          href.command
+        }
+      if$
+    }
+    {
+      "https://doi.org/" swap$ * 
+      href.command
+    }
+  if$
+  "{" * swap$ * "} {" *
+}
+
+FUNCTION {link.tag.shut}
+{
+  "}"
+}
+
+FUNCTION {link.open}
+{
+  link.tag.open output.nopunct
+}
+
+FUNCTION {link.shut}
+{
+  link.tag.shut *
+}
+
+FUNCTION {add.doi}
+{
+  link.tag.open swap$ * link.tag.shut *
+}
+
+FUNCTION {select.language}
+{ duplicate$ empty$
+    'pop$
+    { language empty$
+        'skip$
+        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
+      if$
+    }
+    if$
+}
+
+FUNCTION {format.note}
+{
+ note empty$
+    { "" }
+    { note #1 #1 substring$
+      duplicate$ "{" =
+        'skip$
+        {
+          output.state after.word = output.state after.punctuation = or
+            { "l" }
+            { "u" }
+          if$ change.case$
+        }
+      if$
+      note #2 global.max$ substring$ * "note" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {bbl.enquote}
+{
+  "\enquote "
+}
+
+FUNCTION {string.enquote}
+{
+  punctuation.no 'punctuation.state :=
+  non.stop {
+    block.punctuation
+  } { "" } if$
+   swap$ pop$
+  *
+  bbl.enquote "{" * swap$ * "}" *
+  word.space *
+}
+
+FUNCTION {format.title}
+{ title
+  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
+  duplicate$ "title" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      pop$
+      select.language
+    }
+  if$
+}
+
+FUNCTION {end.quote.title}
+{ title empty$
+    'skip$
+    { before.all 'output.state := }
+  if$
+}
+
+FUNCTION {format.name.apply}
+{
+  s nameptr
+  "{vv~}{ll}"
+  format.name$
+  cite.name.font
+}
+
+FUNCTION {format.full.names}
+{
+  's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                {
+                  't :=
+                }
+                'pop$
+              if$
+              t "others" =
+                {
+                  " " * bbl.etal
+                  emphasize *
+                }{
+                  numnames #2 > { "," * }{ skip$ } if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {make.full.names}
+{
+  key editor author
+  type$ "proceedings" =
+  type$ "book"        =
+  type$ "inbook"      =
+  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
+  duplicate$ empty$
+    { pop$
+      duplicate$ empty$
+        { pop$
+          duplicate$ empty$
+            { pop$
+              cite$ #1 #3 substring$
+            }{
+              skip$
+            }
+          if$
+        }
+        { swap$ pop$ format.full.names }
+      if$
+    }
+    { swap$ pop$ swap$ pop$ format.full.names }
+  if$
+}
+
+FUNCTION {year.bibitem}
+{
+  year duplicate$ empty$
+  { pop$ ""
+  }{
+    skip$
+  } if$
+  extra.label *
+}
+
+FUNCTION {output.bibitem}
+{
+  newline$
+  ""
+  label
+  * ")" *
+   make.full.names duplicate$ short.list =
+   { pop$ }{ * } if$
+   bracify
+  "[" swap$ * "]" *
+  cite$ bracify "%" *
+  *
+  "\bibitem "
+  swap$ *
+  write$ newline$
+  "  "
+  duplicate$ bbl.open * write$ newline$
+  before.all 'output.state :=
+  punctuation.yes 'punctuation.state :=
+}
+
+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 {word.in}
+{
+  bbl.in
+  word.space *
+}
+
+FUNCTION {parenthesize}
+{
+  duplicate$ empty$
+    'skip$
+    {
+      before.all 'output.state :=
+      " (" swap$ * ")" *
+    }
+  if$
+}
+
+FUNCTION {format.date}
+{
+  year "year" bibinfo.check duplicate$ empty$
+    {
+    }
+    'skip$
+  if$
+  extra.label *
+  parenthesize
+}
+
+FUNCTION {format.date.output.check}
+{
+ format.date
+ "year" output.check
+}
+
+FUNCTION {format.date.output}
+{
+  format.date.output.check
+}
+
+FUNCTION {format.btitle}
+{
+  booktitle duplicate$ empty$ { pop$
+      title
+  } 'skip$ if$
+  "title" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {either.or.check}
+{ empty$
+    'pop$
+    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+  if$
+}
+
+FUNCTION {editor.check.book}
+{ editor empty$ 'skip$
+    {
+      "can't use both author and editor fields in " cite$ *
+      ": try using @inbook instead" *
+      warning$
+    }
+  if$
+}
+
+FUNCTION {format.bvolume}
+{ volume duplicate$ empty$
+    { pop$ "" }
+    {
+      "volume and number" number either.or.check
+      bbl.volume
+      capitalize
+      swap$
+      tie.or.space.prefix "volume" bibinfo.check * *
+      series "series" bibinfo.check duplicate$ empty$ 'pop$
+        {
+          ", "
+          * swap$ *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.number}
+{
+  bbl.number
+  output.state after.word = output.state after.punctuation = or
+  #1 or
+  #0 and
+    'skip$
+    { capitalize }
+  if$
+  number tie.or.space.prefix "number" bibinfo.check * *
+}
+
+FUNCTION {format.number.series}
+{ volume empty$
+    { number empty$
+        { series field.or.null }
+        {
+          series empty$
+            {
+              number "number" bibinfo.check
+            }{
+              format.number
+              series "series" bibinfo.check
+              word.space * swap$ *
+            }
+          if$
+        }
+      if$
+    }
+    { "" }
+  if$
+}
+
+FUNCTION {is.num}
+{ chr.to.int$
+  duplicate$ "0" chr.to.int$ < not
+  swap$ "9" chr.to.int$ > not and
+}
+
+FUNCTION {extract.num}
+{ duplicate$ 't :=
+  "" 's :=
+  { t empty$ not }
+  { t #1 #1 substring$
+    t #2 global.max$ substring$ 't :=
+    duplicate$ is.num
+      { s swap$ * 's := }
+      { pop$ "" 't := }
+    if$
+  }
+  while$
+  s empty$
+    'skip$
+    { pop$ s }
+  if$
+}
+
+FUNCTION {convert.edition}
+{ extract.num "l" change.case$ 's :=
+  s "first" = s "1" = or
+    { bbl.first 't := }
+    { s "second" = s "2" = or
+        { bbl.second 't := }
+        { s "third" = s "3" = or
+            { bbl.third 't := }
+            { s "fourth" = s "4" = or
+                { bbl.fourth 't := }
+                { s "fifth" = s "5" = or
+                    { bbl.fifth 't := }
+                    { s #1 #1 substring$ is.num
+                        { s
+                            eng.ord
+                        't := }
+                        { edition 't := }
+                      if$
+                    }
+                  if$
+                }
+              if$
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  t
+}
+
+FUNCTION {format.edition}
+{ edition duplicate$ empty$ 'skip$
+    {
+      convert.edition
+      output.state after.word = output.state after.punctuation = or
+        { "l" }
+        { "t" }
+      if$ change.case$
+      "edition" bibinfo.check
+      word.space * bbl.edition *
+    }
+  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 duplicate$ empty$
+    'skip$
+    { duplicate$ multi.page.check
+        {
+          bbl.pages swap$
+          n.dashify
+        }{
+          bbl.page swap$
+        }
+      if$
+      tie.or.space.prefix
+      "pages" bibinfo.check
+      * *
+    }
+  if$
+}
+
+FUNCTION {first.page}
+{ 't :=
+  ""
+    {  t empty$ not t #1 #1 substring$ "-" = not and }
+    { t #1 #1 substring$ *
+      t #2 global.max$ substring$ 't :=
+    }
+  while$
+}
+
+FUNCTION {format.book.pages}
+{
+  pages duplicate$ empty$ 'skip$
+    {
+      "pages" bibinfo.check word.space bbl.pages * *
+    }
+  if$
+}
+
+FUNCTION {volnum.punct}
+{
+          ","
+  word.space *
+}
+
+FUNCTION {format.journal.pages}
+{ pages duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$
+        { pop$ pop$ format.pages }
+        { volnum.punct *
+          swap$
+          control.pages duplicate$ #0 < {
+            pop$ pop$
+          }{
+            #0 >
+            {
+              n.dashify
+            }{
+              first.page
+            } if$
+          } if$
+          "pages" bibinfo.check
+          *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.journal.eid}
+{ eid "eid" bibinfo.check
+  duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$ 'skip$
+        { volnum.punct * }
+      if$
+      swap$ *
+    }
+  if$
+}
+
+FUNCTION {eid.or.pages}
+{
+  eid empty$
+    { format.journal.pages }
+    { format.journal.eid }
+  if$
+}
+
+FUNCTION {format.ser.vol.num}
+{
+  series "series" bibinfo.check output
+  volume field.or.null
+  duplicate$ empty$ 'skip$
+    {
+      "volume" bibinfo.check
+    }
+  if$
+  bolden
+}
+
+FUNCTION {format.vol.num}
+{
+  volume field.or.null
+  duplicate$ empty$ 'skip$
+    {
+      "volume" bibinfo.check
+    }
+  if$
+  bolden
+}
+
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+    {
+    format.pages
+    }
+    { type empty$
+        {
+          bbl.chapter
+          capitalize
+        }{
+          type
+          capitalize
+          "type" bibinfo.check
+        }
+      if$
+      chapter tie.or.space.prefix
+      "chapter" bibinfo.check
+      * *
+      pages empty$
+        'skip$
+        { ", " * format.pages * }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.booktitle}
+{
+  booktitle duplicate$ "booktitle" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      pop$ emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {format.editor.in}
+{
+  editor "editor" format.names.ed duplicate$ empty$ 'skip$
+    {
+      bbl.edby
+      word.space * swap$ *
+    }
+  if$
+}
+
+FUNCTION {output.article.booktitle}
+{
+  format.booktitle
+      "booktitle" 'bibfield :=
+  output
+  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
+    {
+      "address" 'bibfield :=
+      output.nonnull after.punctuation 'output.state :=
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      format.editor.in "editor" bibinfo.check output
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle.inbook}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      author empty$ 'skip$
+        { format.editor.in "editor" bibinfo.check output }
+    if$
+    }
+  if$
+}
+
+FUNCTION {format.thesis.type}
+{ type duplicate$ empty$
+    'pop$
+    { swap$ pop$
+      "t" change.case$ "type" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {format.tr.number}
+{ number "number" bibinfo.check
+  type duplicate$ empty$
+    { pop$ bbl.techrep }
+    'skip$
+  if$
+  "type" bibinfo.check
+  swap$ duplicate$ empty$
+    { pop$ "t" change.case$ }
+    { tie.or.space.prefix * * }
+  if$
+}
+
+FUNCTION {format.article.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.book.crossref}
+{ volume duplicate$ empty$
+    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+      pop$ word.in
+    }
+    { bbl.volume
+      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
+    }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.org.or.pub}
+{ 't :=
+  ""
+  address "address" bibinfo.check
+  duplicate$ empty$
+    { pop$ t }
+    { t duplicate$ empty$
+        { pop$ }
+        {
+          "," word.space *
+          * swap$ *
+        }
+      if$
+    }
+  if$
+  *
+  year duplicate$ empty$
+    {
+      "empty year in " cite$ *
+      warning$
+      pop$ ""
+    }
+    'skip$
+  if$
+  duplicate$ empty$
+    { pop$ }
+    {
+      "year" bibinfo.check
+      swap$
+      duplicate$ empty$
+        { pop$ }
+        {
+          "," *
+          word.space *
+          swap$ *
+        }
+      if$
+    }
+  if$
+  duplicate$ empty$ 'skip$ {
+    ""
+    "(" * swap$ * ")" *
+    after.punctuation 'output.state :=
+    punctuation.space 'punctuation.state :=
+  } if$
+}
+
+FUNCTION {format.publisher.address}
+{ publisher "publisher" bibinfo.warn format.org.or.pub
+}
+
+FUNCTION {format.organization.address}
+{ organization "organization" bibinfo.check format.org.or.pub
+}
+
+FUNCTION {format.organization.publisher.address}
+{
+  publisher empty$
+    { format.organization.address }
+    { organization "organization" bibinfo.check output
+      format.publisher.address
+    }
+  if$
+}
+
+FUNCTION {format.school.address.output}
+{
+  school  "school"  bibinfo.warn
+  address "address" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      swap$
+      duplicate$ empty$ 'skip$
+        {
+          ", " *
+        }
+      if$
+      swap$
+    }
+  if$
+  *
+  output
+}
+
+FUNCTION {article.title.produce}
+{
+  control.title duplicate$ #0 <
+  { pop$
+  }{
+    format.title
+    "title" 'bibfield :=
+    swap$ #0 >
+    {
+      "title" output.check
+    }{
+      output
+    } if$
+    new.block.comma
+  } if$
+}
+
+FUNCTION {control}
+{
+}
+
+FUNCTION {article}
+{ output.bibitem
+  format.authors
+  booktitle empty$ {
+      "author" output.check
+    }{ output } if$
+  author format.key output
+  new.block.comma
+  article.title.produce
+  output.article.booktitle
+  crossref missing$
+%% Handle special case of SISSA journals which require an issue number for unique citations and use volume/year interchangably
+    {
+      journal "J. High Energy Phys." =
+      journal "J. High Energ. Phys." = or
+      journal "JHEP" = or
+      journal "Journal of Cosmology and Astroparticle Physics" = or
+      journal "J. Cosmol. Astropart. Phys." = or
+      journal "JCAP" = or
+      journal "Journal of Instrumentation" = or
+      journal "J. Instrum." = or
+      journal "JINST" = or
+      journal "Journal of Statistical Mechanics" = or
+      journal "J. of Stat. Mech." = or
+      journal "J. Stat. Mech.: Theory Exp." = or
+      journal "JSTAT" = or
+      {
+          link.open
+          journal
+          "journal" bibinfo.warn
+          "journal" 'bibfield :=
+          output
+          add.blank
+          format.vol.num output
+          number parenthesize
+          "number" bibinfo.warn
+          "number" 'bibfield :=
+          output
+          eid.or.pages
+          link.shut
+      }
+      {
+          eid missing$
+          pages missing$ and
+          doi missing$ not and
+          {
+            journal
+            "journal" bibinfo.warn
+            "journal" 'bibfield :=
+            output
+            add.blank
+            format.ser.vol.num
+            output
+            link.open
+            doi output
+            link.shut
+            format.date.output.check
+          }
+          {
+            link.open
+            journal
+            "journal" bibinfo.warn
+            "journal" 'bibfield :=
+            output
+            add.blank
+            format.ser.vol.num
+            output
+            eid.or.pages
+            format.date.output.check
+            link.shut
+          } if$
+      } if$
+    }{
+      format.article.crossref output.nonnull
+      format.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint.controlled output
+  format.translation output
+  fin.entry
+}
+
+FUNCTION {book}
+{ output.bibitem
+  author empty$
+    {
+      format.editors "author and editor" output.check
+      editor format.key output
+    }{
+      format.authors output.nonnull
+%     crossref missing$ { editor.check.book } 'skip$ if$
+    }
+  if$
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+  format.edition output
+  author empty$
+    {
+    }
+    {
+      format.editor.in output
+      editor format.key output
+    }
+  if$
+  format.number.series output
+  crossref missing$
+    {
+      format.bvolume output
+      new.block.comma
+      format.publisher.address output
+    }{
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  format.isbn.output
+  format.chapter.pages
+  output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {booklet}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  address "address" bibinfo.check output
+  format.date.output
+  format.isbn.output
+  format.book.pages output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {footnote}
+{ output.bibitem
+  format.note output
+  fin.entry
+}
+
+FUNCTION {inbook}
+{ output.bibitem
+  author empty$
+    {
+       format.editors "editor" output.check
+       editor format.key output
+    }{
+       format.authors output.nonnull
+       author format.key output
+    }
+  if$
+  new.block.comma
+
+  format.title output
+  new.block.comma
+
+  crossref missing$
+    {
+      format.in.ed.booktitle.inbook
+      format.publisher.address output
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.edition output
+      new.block.comma
+    }{
+      format.chapter.pages
+      "chapter and pages"
+      output.check
+      new.block.comma
+      format.book.crossref output.nonnull
+      format.date.output.check
+    }
+  if$
+  crossref missing$
+    { format.isbn.output }
+    'skip$
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {incollection}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.publisher.address output
+      format.edition output
+      format.chapter.pages output
+      format.isbn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {inproceedings}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.organization.publisher.address output
+      format.chapter.pages output
+      format.isbn.output
+      format.issn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {conference} { inproceedings }
+FUNCTION {manual}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      organization "organization" bibinfo.check output
+      address "address" bibinfo.check output
+  format.edition output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {mastersthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.mthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {misc}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {phdthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.phdthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  format.date.output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {presentation}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  format.organization.address "organization and address" output.check
+  month "month" output.check
+  year "year" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  new.sentence
+  type missing$ 'skip$
+    {"(" type capitalize * ")" * output}
+  if$
+  fin.entry
+}
+
+FUNCTION {proceedings}
+{ output.bibitem
+  format.editors output
+  editor format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      bookaddress "address" bibinfo.check output
+  format.number.series output
+  format.bvolume output
+  format.organization.publisher.address output
+  format.isbn.output
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {techreport}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  new.block.comma
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+  new.block.comma
+  format.tr.number
+  output.nonnull
+  institution "institution" bibinfo.warn
+  format.org.or.pub output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {unpublished}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  article.title.produce
+  format.eprint output
+  format.date.output
+  new.block.comma
+  new.sentence.comma
+  format.note "note" output.check
+  fin.entry
+}
+
+FUNCTION {dataset}
+{ 
+  output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  article.title.produce
+  doi missing$
+  url missing$ not and
+  {
+    link.open
+    url "url" output.check
+    link.shut
+  }
+  {
+    link.open
+    doi "doi" output.check
+    link.shut
+  } if$
+  format.date.output
+  format.note output
+  fin.entry
+}
+
+FUNCTION {default.type} { misc }
+
+READ
+
+EXECUTE {control.init}
+
+ITERATE {control.pass}
+
+EXECUTE {control.check}
+
+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 {cite.name.font.apply}
+{
+  word.space * bbl.etal
+  emphasize
+  *
+}
+
+FUNCTION {format.lab.names}
+{ 's :=
+  "" 't :=
+  #1 'nameptr :=
+  format.name.apply
+  s num.names$ duplicate$
+  #2 >
+    { pop$
+      cite.name.font.apply
+    }{
+      #2 <
+        'skip$
+        {
+          s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+            {
+              cite.name.font.apply
+            }{
+              bbl.and space.word *
+              s #2 "{vv~}{ll}" format.name$
+              cite.name.font
+              *
+            }
+          if$
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {author.key.label}
+{ author empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {author.editor.key.label}
+{ author empty$
+    { editor empty$
+        { key empty$
+            { cite$ #1 #3 substring$ }
+            'key
+          if$
+        }
+        { editor format.lab.names }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {editor.key.label}
+{ editor empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { editor format.lab.names }
+  if$
+}
+
+FUNCTION {calc.short.authors}
+{ type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.key.label
+    { type$ "proceedings" =
+        'editor.key.label
+        'author.key.label
+      if$
+    }
+  if$
+  'short.list :=
+}
+
+FUNCTION {calc.label}
+{
+  calc.short.authors
+  short.list
+  year duplicate$ empty$
+  short.list key field.or.null = or
+    {
+      pop$ ""
+    }{
+      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
+    }
+  if$
+  "(" swap$ *
+  * 'label :=
+}
+
+FUNCTION {sort.format.names}
+{ 's :=
+  #1 'nameptr :=
+  ""
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { s nameptr
+      "{ll{ }}"
+      control.author.initials {
+        "{  f{ }}"  *
+      }{
+        "{  ff{ }}" *
+      } if$
+      "{  jj{ }}" *
+      format.name$ 't :=
+      nameptr #1 >
+        {
+          "   "  *
+          namesleft #1 = t "others" = and
+            { "zzzzz" * }
+            {
+              t sortify *
+            }
+          if$
+        }
+        { 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 {author.editor.sort}
+{ author empty$
+    { 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 {year.sort.key}
+{
+  year
+}
+
+FUNCTION {editor.sort}
+{ editor empty$
+    { key empty$
+        { "to sort, need editor or key in " cite$ * warning$
+          ""
+        }
+        { key sortify }
+      if$
+    }
+    { editor sort.format.names }
+  if$
+}
+
+INTEGERS { seq.num }
+
+FUNCTION {init.seq}
+{ #0 'seq.num :=}
+
+EXECUTE {init.seq}
+
+FUNCTION {int.to.fix}
+{ "000000000" swap$ int.to.str$ *
+  #-1 #10 substring$
+}
+
+FUNCTION {label.presort}
+{
+  calc.label
+  label sortify
+  "    "
+  *
+  seq.num #1 + 'seq.num :=
+  seq.num  int.to.fix
+  'sort.label :=
+  sort.label
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {presort.pass}
+{ type$ "control" = 'control.presort 'label.presort if$
+}
+
+ITERATE {presort.pass}
+
+SORT
+
+STRINGS { last.label next.extra }
+
+INTEGERS { last.extra.num number.label }
+
+FUNCTION {initialize.extra.label.stuff}
+{ #0 int.to.chr$ 'last.label :=
+  "" 'next.extra :=
+  #0 'last.extra.num :=
+  #0 'number.label :=
+}
+
+FUNCTION {label.forward}
+{
+  last.label label =
+    { last.extra.num #1 + 'last.extra.num :=
+      last.extra.num int.to.chr$ 'extra.label :=
+    }
+    { "a" chr.to.int$ 'last.extra.num :=
+      "" 'extra.label :=
+      label 'last.label :=
+    }
+  if$
+  number.label #1 + 'number.label :=
+}
+
+FUNCTION {label.reverse}
+{ next.extra "b" =
+    { "a" 'extra.label := }
+    'skip$
+  if$
+  extra.label 'next.extra :=
+  extra.label
+  duplicate$ empty$
+    'skip$
+    { "{\natexlab{" swap$ * "}}" * }
+  if$
+  'extra.label :=
+  label extra.label * 'label :=
+}
+
+EXECUTE {initialize.extra.label.stuff}
+
+FUNCTION {forward.pass}
+{ type$ "control" = 'control.forward 'label.forward if$
+}
+
+ITERATE {forward.pass}
+
+FUNCTION {reverse.pass}
+{ type$ "control" = 'control.reverse 'label.reverse if$
+}
+
+REVERSE {reverse.pass}
+
+FUNCTION {sortkey.sort}
+{ sort.label
+  "    "
+  *
+  year.sort.key
+  field.or.null sortify
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {bib.sort.pass}
+{ type$ "control" = 'control.sort 'sortkey.sort if$
+}
+
+ITERATE {bib.sort.pass}
+
+SORT
+
+FUNCTION {init.bib.eprint}
+{
+    "\texttt {"
+  pop$
+  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
+  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
+  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
+  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
+}
+
+FUNCTION {init.bib.doi}
+{
+  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
+}
+
+FUNCTION {init.bib.hypertex}
+{
+  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
+  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
+  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
+  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
+  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
+  "\providecommand \@@startlink[1]{}%" write$ newline$
+  "\providecommand \@@endlink[0]{}%"   write$ newline$
+}
+
+FUNCTION {init.bib.namefont}
+{
+  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
+  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
+  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
+}
+
+FUNCTION {init.bib.quote}
+{
+  "\providecommand " bbl.enquote * " [1]{" *
+  "``" "''"
+  "#1" swap$ "}%" * * * * write$ newline$
+}
+
+FUNCTION {init.bib.ay}
+{
+  "\providecommand \natexlab [1]{#1}%"
+  write$ newline$
+}
+
+FUNCTION {init.bib.bibinfo}
+{
+  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+}
+
+FUNCTION {init.bib.lang}
+{
+  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
+}
+
+FUNCTION {init.bib.endbibitem}
+{
+  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
+  "\providecommand \bibitemStop [0]{}%"               write$ newline$
+  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
+  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
+}
+
+FUNCTION {init.bib.translation}
+{
+  "\providecommand \translation [1]{[#1]}%" write$ newline$
+}
+
+FUNCTION {warn.bib}
+{
+}
+
+FUNCTION {init.bib}
+{
+  warn.bib
+  "\makeatletter" write$ newline$
+  "\providecommand \@ifxundefined [1]{%"   write$ newline$
+  " \@ifx{#1\undefined}"                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifnum [1]{%"          write$ newline$
+  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifx [1]{%"            write$ newline$
+  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  init.bib.ay
+  init.bib.quote
+  init.bib.namefont
+  init.bib.hypertex
+  init.bib.eprint
+  init.bib.doi
+  init.bib.lang
+  init.bib.bibinfo
+  init.bib.translation
+  init.bib.endbibitem
+  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
+  "\let\auto at bib@innerbib\@empty"          write$ newline$
+  "%</preamble>" write$
+}
+
+FUNCTION {begin.bib}
+{
+  id.bst diagn.cmntlog
+  control.bib
+  preamble$ empty$
+    'skip$
+    { preamble$ write$ newline$ }
+  if$
+  "\begin{thebibliography}{"
+  number.label int.to.str$
+  * "}%" *
+  write$ newline$
+  init.bib
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+  "\end{thebibliography}%"
+  write$ newline$
+}
+
+EXECUTE {end.bib}
+
+%% End of customized bst file
+%%
+%% End of file `apsrev4-2.bst'.


Property changes on: trunk/Master/texmf-dist/bibtex/bst/revtex/apsrev4-2.bst
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-1.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-1.bst	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-1.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,3448 +0,0 @@
-%%
-%% This is file `apsrmp4-1.bst',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% merlin.mbs  (with options: `head,ay,nat,lang,pres,pres-bf,vonx,nm-rev1,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,dt-beg,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-sp,volp-com,jpg-1,pp-last,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-par,ay-empty-pub-parens-x,pre-edn,school-par,doi-link,doi,bkedcap,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,and-com,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% physjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,vonx,nm-rev1,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,dt-beg,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-sp,volp-com,jpg-1,pp-last,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-par,ay-empty-pub-parens-x,pre-edn,school-par,doi-link,doi,bkedcap,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,and-com,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% geojour.mbs  (with options: `ay,nat,lang,pres,pres-bf,vonx,nm-rev1,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,dt-beg,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-sp,volp-com,jpg-1,pp-last,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-par,ay-empty-pub-parens-x,pre-edn,school-par,doi-link,doi,bkedcap,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,and-com,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% photjour.mbs  (with options: `ay,nat,lang,pres,pres-bf,vonx,nm-rev1,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,dt-beg,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-sp,volp-com,jpg-1,pp-last,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-par,ay-empty-pub-parens-x,pre-edn,school-par,doi-link,doi,bkedcap,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,and-com,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% merlin.mbs  (with options: `tail,ay,nat,lang,pres,pres-bf,vonx,nm-rev1,jnrlst,nmft,nmft-def,fnm-def,nmfted,nmand-rm,lab,lab-def,and-rm,keyxyr,dt-beg,yr-par,dtrev,date-nil-x,tit-qq,inproceedings-chapter,jtit-x,inproceedings-chapter,article-booktitle,article-series,jttl-rm,journal-address,book-bt,thesis-title-o,trtit-b,techreport-institution-par,vol-bf,vnum-sp,volp-com,jpg-1,pp-last,book-editor-booktitle,inbook-editor-booktitle,bookaddress,num-xser,number-cap,chapter-cap,series-number,numser-booktitle,ser-vol,ser-rm,volume-cap,ser-ed,jnm-x,pg-bk,book-chapter-pages,pub-par,ay-empty-pub-parens-x,pre-edn,school-par,doi-link,doi,bkedcap,edby,blk-com,fin-endbibitem,pp,ed,abr,ednx,ord,jabr,and-com,etal-it,revdata,eprint,url,url-blk,translation,SLACcitation,numpages-x,url,url-prefix-x,bibinfo,bibfield,nfss,,{}')
-%% ----------------------------------------
-%% *** REVTeX-compatible RMP 2010-07-25 ***
-%% 
-%% Copyright 1994-2007 Patrick W Daly
- % ===============================================================
- % IMPORTANT NOTICE:
- % This bibliographic style (bst) file has been generated from one or
- % more master bibliographic style (mbs) files, listed above.
- %
- % This generated file can be redistributed and/or modified under the terms
- % of the LaTeX Project Public License Distributed from CTAN
- % archives in directory macros/latex/base/lppl.txt; either
- % version 1 of the License, or any later version.
- % ===============================================================
- % Name and version information of the main mbs file:
- %   For use with BibTeX version 0.99a or later
- %-------------------------------------------------------------------
- % This bibliography style file is intended for texts in ENGLISH
- % This is an author-year citation style bibliography. As such, it is
- % non-standard LaTeX, and requires a special package file to function properly.
- % Such a package is    natbib.sty   by Patrick W. Daly
- % The form of the \bibitem entries is
- %   \bibitem[Jones et al.(1990)]{key}...
- %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
- % The essential feature is that the label (the part in brackets) consists
- % of the author names, as they should appear in the citation, with the year
- % in parentheses following. There must be no space before the opening
- % parenthesis!
- % With natbib v5.3, a full list of authors may also follow the year.
- % In natbib.sty, it is possible to define the type of enclosures that is
- % really wanted (brackets or parentheses), but in either case, there must
- % be parentheses in the label.
- % The \cite command functions as follows:
- %   \citet{key} ==>>                Jones et al. (1990)
- %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
- %   \citep{key} ==>>                (Jones et al., 1990)
- %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
- %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
- %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
- %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
- %   \citeauthor{key} ==>>           Jones et al.
- %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
- %   \citeyear{key} ==>>             1990
- %---------------------------------------------------------------------
-
-FUNCTION {id.bst} {"merlin.mbs apsrmp4-1.bst 2010-07-25 4.21a (PWD, AO, DPC) hacked"}
-ENTRY
-{
-    address
-    archive
-    archivePrefix
-    author
-    bookaddress
-    booktitle
-    chapter
-    collaboration
-    doi
-    edition
-    editor
-    eid
-    eprint
-    howpublished
-    institution
-    isbn
-    issn
-    journal
-    key
-    language
-    month
-    note
-    number
-    organization
-    pages
-    primaryClass
-    publisher
-    school
-    SLACcitation
-    series
-    title
-    translation
-    type
-    url
-    volume
-    year
-}{
-}{
-    label
-    extra.label sort.label
-    short.list
-}
-
-INTEGERS
-{
-  output.state before.all
-  after.word after.punctuation
-  after.sentence after.block
-}
-
-INTEGERS
-{
-  punctuation.state punctuation.no punctuation.space punctuation.yes
-}
-
-STRINGS { bibfield output.bibfield }
-
-FUNCTION {not}
-{   { #0 }
-    { #1 }
-  if$
-}
-
-FUNCTION {and}
-{   'skip$
-    { pop$ #0 }
-  if$
-}
-
-FUNCTION {or}
-{   { pop$ #1 }
-    'skip$
-  if$
-}
-
-FUNCTION {non.stop}
-{ duplicate$
-   "}" * add.period$
-   #-1 #1 substring$ "." =
-}
-
-INTEGERS { arith.mulitplier arith.multiplicand }
-
-FUNCTION {multiply}
-{
-  'arith.multiplicand :=
-  'arith.mulitplier :=
-  #0
-    { arith.mulitplier #0 > }
-    { arith.multiplicand +
-      arith.mulitplier #1 - 'arith.mulitplier :=
-    }
-  while$
-}
-
-FUNCTION {chr.to.hex}
-{
-  chr.to.int$
-  duplicate$ "0" chr.to.int$ -
-  duplicate$ duplicate$ #0 < swap$ #9 > or not
-    { swap$ pop$ }
-    { pop$
-      duplicate$ "A" chr.to.int$ -
-      duplicate$ duplicate$ #0 < swap$ #5 > or not
-        { swap$ pop$ #10 + }
-        { pop$
-          duplicate$ "a" chr.to.int$ -
-          duplicate$ duplicate$ #0 < swap$ #5 > or not
-            { swap$ pop$ #10 + }
-            { pop$
-              pop$ #-1
-            }
-          if$
-        }
-      if$
-    }
-  if$
-}
-
-INTEGERS { arith.accumulator }
-
-FUNCTION {str.to.hex}
-{ #0 'arith.accumulator :=
-    { duplicate$ empty$ not }
-    { duplicate$ #1 #1 substring$ chr.to.hex
-      duplicate$ #0 <
-        { pop$ pop$ ""
-        }
-        { arith.accumulator #16 multiply + 'arith.accumulator :=
-          #2 global.max$ substring$
-        }
-      if$
-    }
-  while$
-  pop$ arith.accumulator
-}
-
-FUNCTION {diagn.cmntlog}
-{
-  duplicate$ top$ "%" swap$ * write$ newline$
-}
-
-INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
-
-INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
-
-FUNCTION { control.init }
-{
-  #0
-  'control.key             :=
-  #0
-  #1 +
-  #2 +
-  #8 +
-  #64 +
-  'control.author :=
-  #1
-  'control.author.jnrlst   :=
-  #0
-  'control.author.dotless  :=
-  #0
-  'control.author.nospace  :=
-  #1
-  'control.author.initials :=
-  #0
-  'control.author.nocomma  :=
-  #1
-  'control.author.first    :=
-  #1
-  'control.author.reversed :=
-  #0
-  'control.editor :=
-  #-1
-  'control.title  :=
-  #0
-  'control.pages  :=
-  #0
-  'control.eprint :=
-  #1
-  'control.year   :=
-}
-
-FUNCTION {warning.dependency}
-{
-  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
-}
-
-FUNCTION {control.check}
-{
-  control.editor
-    {
-      "editor formatted same as author"
-      control.author.reversed {
-        duplicate$ #0 swap$ "reversed" warning.dependency
-        #0 'control.author.reversed :=
-      } 'skip$ if$
-      control.author.first {
-        duplicate$ #0 swap$ "first" warning.dependency
-        #0 'control.author.first :=
-      } 'skip$ if$
-      control.author.nocomma {
-        duplicate$ #0 swap$ "nocomma" warning.dependency
-        #0 'control.author.nocomma :=
-      } 'skip$ if$
-      pop$
-    } 'skip$ if$
-  control.author.reversed 'skip$
-    {
-      "not reversed"
-      control.author.nospace {
-        duplicate$ #0 swap$ "nospace" warning.dependency
-        #0 'control.author.nospace :=
-      } 'skip$ if$
-      control.author.jnrlst 'skip$ {
-        duplicate$ #1 swap$ "jnrlst" warning.dependency
-        #1 'control.author.jnrlst :=
-      } if$
-      control.author.initials {
-        duplicate$ ", initials" *
-        control.author.dotless {
-          duplicate$ #0 swap$ "dotless" warning.dependency
-          #0 'control.author.dotless :=
-        } 'skip$ if$
-        pop$
-      } 'skip$ if$
-      pop$
-    }
-  if$
-  control.author.initials 'skip$ {
-    "not initials"
-    control.author.nocomma {
-      duplicate$ #0 swap$ "nocomma" warning.dependency
-      #0 'control.author.nocomma :=
-    } 'skip$ if$
-    control.author.nospace {
-      duplicate$ #0 swap$ "nospace" warning.dependency
-      #0 'control.author.nospace :=
-    } 'skip$ if$
-    control.author.dotless 'skip$ {
-      duplicate$ #1 swap$ "dotless" warning.dependency
-      #1 'control.author.dotless :=
-    } if$
-    pop$
-  } if$
-}
-
-FUNCTION {control.parse}
-{
-  duplicate$ duplicate$ missing$
-    {
-      pop$ pop$ pop$
-    }
-    { empty$
-        {
-          pop$ #-1
-        }{
-          str.to.hex
-        }
-      if$
-      swap$ :=
-    }
-  if$
-}
-
-FUNCTION {control.dump}
-{
-  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
-  "{" swap$ * "}, " *
-  *
-}
-
-INTEGERS { decode.threshold }
-
-FUNCTION {control.decode}
-{
-  - duplicate$
-  #0 <
-    {
-      skip$ pop$ swap$ #0
-    }
-    {
-      swap$ pop$ swap$ #1
-    }
-  if$
-  swap$ :=
-}
-
-FUNCTION {control.author.decode}
-{
-  control.author
-  duplicate$ duplicate$ #0 < swap$ #128 < not or
-    {
-      int.to.str$ "(" swap$ * ")" *
-      "Control cannot interpret author " swap$ *
-      warning$
-    }{
-      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
-      'control.author.dotless  swap$ duplicate$ #32 control.decode
-      'control.author.nospace  swap$ duplicate$ #16 control.decode
-      'control.author.initials swap$ duplicate$  #8 control.decode
-      'control.author.nocomma  swap$ duplicate$  #4 control.decode
-      'control.author.first    swap$ duplicate$  #2 control.decode
-      'control.author.reversed swap$ duplicate$  #1 control.decode
-      duplicate$ #0 =
-        'skip$
-        {
-          "Control: residue of author"
-          "(" swap$ * ")" * *
-          warning$
-        }
-      if$
-      pop$
-    }
-  if$
-}
-
-FUNCTION {control.setup}
-{
-  type$ cite$ "{" swap$ * "}, " * *
-  "control.key"    key    control.dump *
-  "control.author" author control.dump *
-  "control.editor" editor control.dump *
-  "control.title"  title  control.dump *
-  "control.pages"  pages  control.dump *
-  "control.year"   year   control.dump *
-  "control.eprint" eprint control.dump *
-  top$
-  'control.key    key    control.parse
-  'control.author author control.parse
-  'control.editor editor control.parse
-  'control.title  title  control.parse
-  'control.pages  pages  control.parse
-  'control.year   year   control.parse
-  'control.eprint eprint control.parse
-  control.author.decode
-}
-
-FUNCTION {control.pass}
-{ type$ "control" = 'control.setup 'skip$ if$
-}
-
-FUNCTION {control.presort}
-{
-}
-
-FUNCTION {control.forward}
-{
-}
-
-FUNCTION {control.reverse}
-{
-}
-
-FUNCTION {control.sort}
-{
-}
-
-FUNCTION {control.longest.label}
-{
-}
-
-FUNCTION {control.key.bib}
-{
-  "Control: key "
-  control.key
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  pop$ *
-  diagn.cmntlog
-}
-
-FUNCTION {control.author.bib}
-{
-  "Control: author "
-  control.author "(" swap$ int.to.str$ * ")" * *
-  control.author.reversed { " reversed" * }{} if$
-  control.author.first    { " first"    * }{} if$
-  control.author.nocomma  { " nocomma"  * }{} if$
-  control.author.initials { " initials" * }{} if$
-  control.author.nospace  { " nospace"  * }{} if$
-  control.author.dotless  { " dotless"  * }{} if$
-  control.author.jnrlst   { " jnrlst"   * }{} if$
-  diagn.cmntlog
-}
-
-FUNCTION {control.editor.bib}
-{
-  "Control: editor formatted "
-  control.editor
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "identically to author"
-    } {
-      "differently from author"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.title.bib}
-{
-  "Control: production of article title "
-  control.title
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled"
-  } {
-    #0 > {
-      "required"
-    } {
-      "allowed"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.pages.bib}
-{
-  "Control: page "
-  control.pages
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "none"
-  } {
-    #0 > {
-      "range"
-    } {
-      "single"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.year.bib}
-{
-  "Control: year "
-  control.year
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  duplicate$ #0 <  {
-    pop$
-    "disabled!"
-  } {
-    #0 > {
-      "truncated"
-    } {
-      "verbatim"
-    } if$
-  } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.eprint.bib}
-{
-  "Control: production of eprint "
-  control.eprint
-  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
-  #0 < { "disabled" } { "enabled" } if$ * *
-  diagn.cmntlog
-}
-
-FUNCTION {control.bib}
-{
-  control.key.bib
-  control.author.bib
-  control.editor.bib
-  control.title.bib
-  control.pages.bib
-  control.year.bib
-  control.eprint.bib
-}
-
-FUNCTION {init.state.consts}
-{
-  #0 'before.all        :=
-  #1 'after.word        :=
-  #2 'after.punctuation :=
-  #3 'after.sentence    :=
-  #4 'after.block       :=
-  #0 'punctuation.no    :=
-  #1 'punctuation.space :=
-  #2 'punctuation.yes   :=
-  "" 'bibfield          :=
-  "" 'output.bibfield   :=
-}
-
-STRINGS { s t}
-FUNCTION {block.punctuation}
-{ ""
-  "," *
-}
-
-FUNCTION {word.space}
-{
-  "\ "
-}
-
-FUNCTION {show.stackstring.one}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  duplicate$ "1(" swap$ * ")" * top$
-}
-
-FUNCTION {show.stackstring.two}{
-  "(" *
-  output.state int.to.str$ *
-    "," * punctuation.state int.to.str$ *
-  ")" * top$
-  swap$
-  duplicate$ "1(" swap$ * ")" * top$
-  swap$
-  duplicate$ "2(" swap$ * ")" * top$
-}
-
-FUNCTION {bibfield.command}{ "\bibfield "}
-
-FUNCTION {output.nonnull}
-{
-  swap$
-  output.state after.word =
-    {
-      block.punctuation *
-      word.space *
-    }
-    {
-      output.state after.punctuation =
-        {
-          word.space *
-        }
-        {
-          output.state after.block = output.state after.sentence = or
-            {
-              add.period$
-              "\EOS\ " *
-            }{
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  output.bibfield duplicate$ empty$ 'pop$
-    {
-      bibfield.command
-      " {" * swap$ * "} {" * swap$ * "}" *
-    }
-  if$
-  write$
-  bibfield 'output.bibfield := "" 'bibfield :=
-  output.state after.block =
-    {
-      newline$
-      "\newblock " write$
-    }
-    'skip$
-  if$
-  punctuation.state duplicate$
-  punctuation.yes 'punctuation.state :=
-  punctuation.no =
-    { pop$ before.all }
-    { punctuation.yes = { after.word }{ after.punctuation } if$ }
-  if$
-  'output.state :=
-}
-
-FUNCTION {output}
-{ duplicate$ empty$
-    {
-      pop$
-  "" 'bibfield :=
-    }
-    'output.nonnull
-  if$
-}
-
-FUNCTION {output.nopunct}
-{
-  punctuation.no 'punctuation.state :=
-  output.nonnull
-}
-
-FUNCTION {output.check}
-{ swap$
-  duplicate$ empty$
-    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
-    { swap$ pop$ output.nonnull }
-  if$
-}
-
-FUNCTION {bbl.open} { "\BibitemOpen " }
-
-FUNCTION {bbl.shut} { "\BibitemShut " }
-
-FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
-
-FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
-
-FUNCTION {bibitem.shut}
-{
-  non.stop
-    {
-  bibitem.shut.nostop *
-    }{
-  bibitem.shut.stop *
-    }
-  if$
-}
-
-FUNCTION {html.itag} {
-  "p"
-}
-
-FUNCTION {html.ltag} {
-  ""
-}
-
-FUNCTION {output.SLACcitation}
-{ SLACcitation empty$
-    'skip$
-    {
-      newline$
-      SLACcitation write$
-    }
-  if$
-}
-
-FUNCTION {fin.entry}
-{
-  bibitem.shut
-  write$
-    output.SLACcitation
-}
-
-FUNCTION {new.block}
-{ output.state before.all =
-    'skip$
-    { after.block 'output.state := }
-  if$
-}
-
-FUNCTION {new.block.comma}
-{
-}
-
-FUNCTION {new.sentence}
-{ output.state after.block = output.state before.all = or
-    'skip$
-    { after.sentence 'output.state := }
-  if$
-}
-
-FUNCTION {new.sentence.comma}
-{
-}
-
-FUNCTION {sentence.or.colon}
-{
-  new.sentence
-}
-
-FUNCTION {add.blank}
-{
-  word.space *
-  before.all 'output.state :=
-}
-
-FUNCTION {no.blank.or.punct}
-{
-   "\hspace {0pt}" *
-   before.all 'output.state :=
-}
-
-FUNCTION {date.block}
-{
-  new.block.comma
-  skip$
-}
-
-STRINGS {z}
-FUNCTION {remove.dots}
-{
-  control.author.dotless {
-    'z :=
-    ""
-    { z empty$ not }
-    { z #1 #1 substring$
-      z #2 global.max$ substring$ 'z :=
-      duplicate$ "." = 'pop$
-        { * }
-      if$
-    }
-    while$
-  } 'skip$ if$
-}
-
-FUNCTION {new.block.checkb}
-{ empty$
-  swap$ empty$
-  and
-    'skip$
-    'new.block
-  if$
-}
-
-FUNCTION {field.or.null}
-{ duplicate$ empty$
-    { pop$ "" }
-    'skip$
-  if$
-}
-
-FUNCTION {emphasize}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-      "\emph {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bolden}
-{ duplicate$ empty$
-    { pop$ "" }
-    { "\textbf {" swap$ * "}" * }
-  if$
-}
-
-FUNCTION {bib.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {bib.fname.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\bibfnamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {cite.name.font}
-{
-  duplicate$ empty$
-    { pop$ "" }
-    {
-    "\citenamefont {" swap$ * "}" *
-    }
-  if$
-}
-
-FUNCTION {tie.or.space.prefix}
-{ duplicate$ text.length$ #3 <
-    { "~" }
-    { word.space }
-  if$
-  swap$
-}
-
-FUNCTION {capitalize}
-{
-  "u" change.case$ "t" change.case$
-}
-
-FUNCTION {space.word}
-{ word.space swap$ * word.space * }
-
- % Here are the language-specific definitions for explicit words.
- % Each function has a name bbl.xxx where xxx is the English word.
- % The language selected here is ENGLISH
-
-FUNCTION {bbl.and}
-{
-  "and"
-}
-
-FUNCTION {bbl.etal}
-{
-  "et~al."
-}
-
-FUNCTION {bbl.editors}
-{
-  "eds."
-}
-
-FUNCTION {bbl.editor}
-{
-  "ed."
-}
-
-FUNCTION {bbl.edby}
-{ "edited by" }
-
-FUNCTION {bbl.edition}
-{
-  "ed."
-}
-
-FUNCTION {bbl.volume}
-{
-  "vol."
-}
-
-FUNCTION {bbl.of}
-{ "of" }
-
-FUNCTION {bbl.number}
-{
-  "no."
-}
-
-FUNCTION {bbl.nr}
-{ "no." }
-
-FUNCTION {bbl.in}
-{ "in" }
-
-FUNCTION {bbl.pages}
-{
-  "pp."
-}
-
-FUNCTION {bbl.page}
-{
-  "p."
-}
-
-FUNCTION {bbl.eidpp}
-{ "pages" }
-
-FUNCTION {bbl.chapter}
-{
-  "chap."
-}
-
-FUNCTION {bbl.techrep}
-{
-  "Tech. Rep."
-}
-
-FUNCTION {bbl.mthesis}
-{ "Master's thesis" }
-
-FUNCTION {bbl.phdthesis}
-{ "Ph.D. thesis" }
-
-FUNCTION {bbl.first}
-{
-  "1st"
-}
-
-FUNCTION {bbl.second}
-{
-  "2nd"
-}
-
-FUNCTION {bbl.third}
-{
-  "3rd"
-}
-
-FUNCTION {bbl.fourth}
-{
-  "4th"
-}
-
-FUNCTION {bbl.fifth}
-{
-  "5th"
-}
-
-FUNCTION {bbl.st}
-{ "st" }
-
-FUNCTION {bbl.nd}
-{ "nd" }
-
-FUNCTION {bbl.rd}
-{ "rd" }
-
-FUNCTION {bbl.th}
-{ "th" }
-
-MACRO {jan} {"Jan."}
-
-MACRO {feb} {"Feb."}
-
-MACRO {mar} {"Mar."}
-
-MACRO {apr} {"Apr."}
-
-MACRO {may} {"May"}
-
-MACRO {jun} {"Jun."}
-
-MACRO {jul} {"Jul."}
-
-MACRO {aug} {"Aug."}
-
-MACRO {sep} {"Sep."}
-
-MACRO {oct} {"Oct."}
-
-MACRO {nov} {"Nov."}
-
-MACRO {dec} {"Dec."}
-
-FUNCTION {bbl.url.prefix}
-{
-  "\urlprefix "
-}
-
-FUNCTION {eng.ord}
-{ duplicate$ "1" swap$ *
-  #-2 #1 substring$ "1" =
-     { bbl.th * }
-     { duplicate$ #-1 #1 substring$
-       duplicate$ "1" =
-         { pop$ bbl.st * }
-         { duplicate$ "2" =
-             { pop$ bbl.nd * }
-             { "3" =
-                 { bbl.rd * }
-                 { bbl.th * }
-               if$
-             }
-           if$
-          }
-       if$
-     }
-   if$
-}
-
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
-MACRO {aa}{"Astron. \& Astrophys."}
-MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
-MACRO {aj} {"Astron. J."}
-MACRO {aph} {"Acta Phys."}
-MACRO {advp} {"Adv. Phys."}
-MACRO {ajp} {"Amer. J. Phys."}
-MACRO {ajm} {"Amer. J. Math."}
-MACRO {amsci} {"Amer. Sci."}
-MACRO {anofd} {"Ann. Fluid Dyn."}
-MACRO {am} {"Ann. Math."}
-MACRO {ap} {"Ann. Phys. (NY)"}
-MACRO {adp} {"Ann. Phys. (Leipzig)"}
-MACRO {ao} {"Appl. Opt."}
-MACRO {apl} {"Appl. Phys. Lett."}
-MACRO {app} {"Astroparticle Phys."}
-MACRO {apj} {"Astrophys. J."}
-MACRO {apjsup} {"Astrophys. J. Suppl."}
-MACRO {apss} {"Astrophys. Space Sci."}
-MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
-MACRO {baas} {"Bull. Amer. Astron. Soc."}
-MACRO {baps} {"Bull. Amer. Phys. Soc."}
-MACRO {cmp} {"Comm. Math. Phys."}
-MACRO {cpam} {"Commun. Pure Appl. Math."}
-MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
-MACRO {cpc} {"Comp. Phys. Comm."}
-MACRO {cqg} {"Class. Quant. Grav."}
-MACRO {cra} {"C. R. Acad. Sci. A"}
-MACRO {fed} {"Fusion Eng. \& Design"}
-MACRO {ft} {"Fusion Tech."}
-MACRO {grg} {"Gen. Relativ. Gravit."}
-MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
-MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
-MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
-MACRO {ip} {"Infrared Phys."}
-MACRO {irp} {"Infrared Phys."}
-MACRO {jap} {"J. Appl. Phys."}
-MACRO {jasa} {"J. Acoust. Soc. America"}
-MACRO {jcp} {"J. Comp. Phys."}
-MACRO {jetp} {"Sov. Phys.--JETP"}
-MACRO {jfe} {"J. Fusion Energy"}
-MACRO {jfm} {"J. Fluid Mech."}
-MACRO {jmp} {"J. Math. Phys."}
-MACRO {jne} {"J. Nucl. Energy"}
-MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
-MACRO {jnm} {"J. Nucl. Mat."}
-MACRO {jpc} {"J. Phys. Chem."}
-MACRO {jpp} {"J. Plasma Phys."}
-MACRO {jpsj} {"J. Phys. Soc. Japan"}
-MACRO {jsi} {"J. Sci. Instrum."}
-MACRO {jvst} {"J. Vac. Sci. \& Tech."}
-MACRO {nat} {"Nature"}
-MACRO {nature} {"Nature"}
-MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
-MACRO {nf} {"Nucl. Fusion"}
-MACRO {nim} {"Nucl. Inst. \& Meth."}
-MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
-MACRO {np} {"Nucl. Phys."}
-MACRO {npb} {"Nucl. Phys. B"}
-MACRO {nt/f} {"Nucl. Tech./Fusion"}
-MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
-MACRO {inc} {"Nuovo Cimento"}
-MACRO {nc} {"Nuovo Cimento"}
-MACRO {pf} {"Phys. Fluids"}
-MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
-MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
-MACRO {pl} {"Phys. Lett."}
-MACRO {pla} {"Phys. Lett. A"}
-MACRO {plb} {"Phys. Lett. B"}
-MACRO {prep} {"Phys. Rep."}
-MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
-MACRO {pp} {"Phys. Plasmas"}
-MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
-MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
-MACRO {prl} {"Phys. Rev. Lett."}
-MACRO {pr} {"Phys. Rev."}
-MACRO {physrev} {"Phys. Rev."}
-MACRO {pra} {"Phys. Rev. A"}
-MACRO {prb} {"Phys. Rev. B"}
-MACRO {prc} {"Phys. Rev. C"}
-MACRO {prd} {"Phys. Rev. D"}
-MACRO {pre} {"Phys. Rev. E"}
-MACRO {ps} {"Phys. Scripta"}
-MACRO {procrsl} {"Proc. Roy. Soc. London"}
-MACRO {rmp} {"Rev. Mod. Phys."}
-MACRO {rsi} {"Rev. Sci. Inst."}
-MACRO {science} {"Science"}
-MACRO {sciam} {"Sci. Am."}
-MACRO {sam} {"Stud. Appl. Math."}
-MACRO {sjpp} {"Sov. J. Plasma Phys."}
-MACRO {spd} {"Sov. Phys.--Doklady"}
-MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
-MACRO {spu} {"Sov. Phys.--Uspeki"}
-MACRO {st} {"Sky and Telesc."}
- % End module: physjour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
-MACRO {aisr} {"Adv. Space Res."}
-MACRO {ag} {"Ann. Geophys."}
-MACRO {anigeo} {"Ann. Geofis."}
-MACRO {angl} {"Ann. Glaciol."}
-MACRO {andmet} {"Ann. d. Meteor."}
-MACRO {andgeo} {"Ann. d. Geophys."}
-MACRO {andphy} {"Ann. Phys.-Paris"}
-MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
-MACRO {atph} {"Atm\'osphera"}
-MACRO {aao} {"Atmos. Ocean"}
-MACRO {ass}{"Astrophys. Space Sci."}
-MACRO {atenv} {"Atmos. Environ."}
-MACRO {aujag} {"Aust. J. Agr. Res."}
-MACRO {aumet} {"Aust. Meteorol. Mag."}
-MACRO {blmet} {"Bound.-Lay. Meteorol."}
-MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
-MACRO {cch} {"Clim. Change"}
-MACRO {cdyn} {"Clim. Dynam."}
-MACRO {cbul} {"Climatol. Bull."}
-MACRO {cap} {"Contrib. Atmos. Phys."}
-MACRO {dsr} {"Deep-Sea Res."}
-MACRO {dhz} {"Dtsch. Hydrogr. Z."}
-MACRO {dao} {"Dynam. Atmos. Oceans"}
-MACRO {eco} {"Ecology"}
-MACRO {empl}{"Earth, Moon and Planets"}
-MACRO {envres} {"Environ. Res."}
-MACRO {envst} {"Environ. Sci. Technol."}
-MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
-MACRO {expa}{"Exper. Astron."}
-MACRO {geoint} {"Geofis. Int."}
-MACRO {geopub} {"Geofys. Publ."}
-MACRO {geogeo} {"Geol. Geofiz."}
-MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
-MACRO {gfd} {"Geophys. Fluid Dyn."}
-MACRO {geomag} {"Geophys. Mag."}
-MACRO {georl} {"Geophys. Res. Lett."}
-MACRO {grl} {"Geophys. Res. Lett."}
-MACRO {ga} {"Geophysica"}
-MACRO {gs} {"Geophysics"}
-MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
-MACRO {ijawp} {"Int. J. Air Water Pollut."}
-MACRO {ijc} {"Int. J. Climatol."}
-MACRO {ijrs} {"Int. J. Remote Sens."}
-MACRO {jam} {"J. Appl. Meteorol."}
-MACRO {jaot} {"J. Atmos. Ocean. Technol."}
-MACRO {jatp} {"J. Atmos. Terr. Phys."}
-MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
-MACRO {jce} {"J. Climate"}
-MACRO {jcam} {"J. Climate Appl. Meteor."}
-MACRO {jcm} {"J. Climate Meteor."}
-MACRO {jcy} {"J. Climatol."}
-MACRO {jgr} {"J. Geophys. Res."}
-MACRO {jga} {"J. Glaciol."}
-MACRO {jh} {"J. Hydrol."}
-MACRO {jmr} {"J. Mar. Res."}
-MACRO {jmrj} {"J. Meteor. Res. Japan"}
-MACRO {jm} {"J. Meteor."}
-MACRO {jpo} {"J. Phys. Oceanogr."}
-MACRO {jra} {"J. Rech. Atmos."}
-MACRO {jaes} {"J. Aeronaut. Sci."}
-MACRO {japca} {"J. Air Pollut. Control Assoc."}
-MACRO {jas} {"J. Atmos. Sci."}
-MACRO {jmts} {"J. Mar. Technol. Soc."}
-MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
-MACRO {josj} {"J. Oceanogr. Soc. Japan"}
-MACRO {jwm} {"J. Wea. Mod."}
-MACRO {lao} {"Limnol. Oceanogr."}
-MACRO {mwl} {"Mar. Wea. Log"}
-MACRO {mau} {"Mausam"}
-MACRO {meteor} {"``Meteor'' Forschungsergeb."}
-MACRO {map} {"Meteorol. Atmos. Phys."}
-MACRO {metmag} {"Meteor. Mag."}
-MACRO {metmon} {"Meteor. Monogr."}
-MACRO {metrun} {"Meteor. Rundsch."}
-MACRO {metzeit} {"Meteor. Z."}
-MACRO {metgid} {"Meteor. Gidrol."}
-MACRO {mwr} {"Mon. Weather Rev."}
-MACRO {nwd} {"Natl. Weather Dig."}
-MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
-MACRO {npg} {"Nonlin. Proc. Geophys."}
-MACRO {om} {"Oceanogr. Meteorol."}
-MACRO {ocac} {"Oceanol. Acta"}
-MACRO {oceanus} {"Oceanus"}
-MACRO {paleoc} {"Paleoceanography"}
-MACRO {pce} {"Phys. Chem. Earth"}
-MACRO {pmg} {"Pap. Meteor. Geophys."}
-MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
-MACRO {physzeit} {"Phys. Z."}
-MACRO {pps} {"Planet. Space Sci."}
-MACRO {pss} {"Planet. Space Sci."}
-MACRO {pag} {"Pure Appl. Geophys."}
-MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
-MACRO {quatres} {"Quat. Res."}
-MACRO {rsci} {"Radio Sci."}
-MACRO {rse} {"Remote Sens. Environ."}
-MACRO {rgeo} {"Rev. Geophys."}
-MACRO {rgsp} {"Rev. Geophys. Space Phys."}
-MACRO {rdgeo} {"Rev. Geofis."}
-MACRO {revmeta} {"Rev. Meteorol."}
-MACRO {sgp}{"Surveys in Geophys."}
-MACRO {sp} {"Solar Phys."}
-MACRO {ssr} {"Space Sci. Rev."}
-MACRO {tellus} {"Tellus"}
-MACRO {tac} {"Theor. Appl. Climatol."}
-MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
-MACRO {wrr} {"Water Resour. Res."}
-MACRO {weather} {"Weather"}
-MACRO {wafc} {"Weather Forecast."}
-MACRO {ww} {"Weatherwise"}
-MACRO {wmob} {"WMO Bull."}
-MACRO {zeitmet} {"Z. Meteorol."}
- % End module: geojour.mbs
- %-------------------------------------------------------------------
- % Begin module:
- % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
-
-MACRO {appopt} {"Appl. Opt."}
-MACRO {bell} {"Bell Syst. Tech. J."}
-MACRO {ell} {"Electron. Lett."}
-MACRO {jasp} {"J. Appl. Spectr."}
-MACRO {jqe} {"IEEE J. Quantum Electron."}
-MACRO {jlwt} {"J. Lightwave Technol."}
-MACRO {jmo} {"J. Mod. Opt."}
-MACRO {josa} {"J. Opt. Soc. America"}
-MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
-MACRO {josab} {"J. Opt. Soc. Amer.~B"}
-MACRO {jdp} {"J. Phys. (Paris)"}
-MACRO {oc} {"Opt. Commun."}
-MACRO {ol} {"Opt. Lett."}
-MACRO {phtl} {"IEEE Photon. Technol. Lett."}
-MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
-MACRO {sse} {"Solid-State Electron."}
-MACRO {sjot} {"Sov. J. Opt. Technol."}
-MACRO {sjqe} {"Sov. J. Quantum Electron."}
-MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
-MACRO {stph} {"Sov. Phys.--Techn. Phys."}
-MACRO {stphl} {"Sov. Techn. Phys. Lett."}
-MACRO {vr} {"Vision Res."}
-MACRO {zph} {"Z. f. Physik"}
-MACRO {zphb} {"Z. f. Physik~B"}
-MACRO {zphd} {"Z. f. Physik~D"}
-
-MACRO {CLEO} {"CLEO"}
-MACRO {ASSL} {"Adv. Sol.-State Lasers"}
-MACRO {OSA}  {"OSA"}
- % End module: photjour.mbs
-%% Copyright 1994-2007 Patrick W Daly
-MACRO {acmcs} {"ACM Comput. Surv."}
-
-MACRO {acta} {"Acta Inf."}
-
-MACRO {cacm} {"Commun. ACM"}
-
-MACRO {ibmjrd} {"IBM J. Res. Dev."}
-
-MACRO {ibmsj} {"IBM Syst.~J."}
-
-MACRO {ieeese} {"IEEE Trans. Software Eng."}
-
-MACRO {ieeetc} {"IEEE Trans. Comput."}
-
-MACRO {ieeetcad}
- {"IEEE Trans. Comput. Aid. Des."}
-
-MACRO {ipl} {"Inf. Process. Lett."}
-
-MACRO {jacm} {"J.~ACM"}
-
-MACRO {jcss} {"J.~Comput. Syst. Sci."}
-
-MACRO {scp} {"Sci. Comput. Program."}
-
-MACRO {sicomp} {"SIAM J. Comput."}
-
-MACRO {tocs} {"ACM Trans. Comput. Syst."}
-
-MACRO {tods} {"ACM Trans. Database Syst."}
-
-MACRO {tog} {"ACM Trans. Graphic."}
-
-MACRO {toms} {"ACM Trans. Math. Software"}
-
-MACRO {toois} {"ACM Trans. Office Inf. Syst."}
-
-MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
-
-MACRO {tcs} {"Theor. Comput. Sci."}
-
-FUNCTION {bibinfo.command} { "\bibinfo " }
-
-FUNCTION {bibinfo.check}
-{ swap$
-  duplicate$ missing$
-    {
-      pop$
-      pop$ ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ pop$
-        }{
-          swap$
-          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {bibinfo.warn}
-{ swap$
-  duplicate$ missing$
-    {
-      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
-      ""
-    }{
-      duplicate$ empty$
-        {
-          swap$ "empty " swap$ * " in " * cite$ * warning$
-        }{
-          swap$
-          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {archiv.base}
-{
-  "http://arxiv.org/abs"
-}
-
-FUNCTION {archiv.prefix.base}
-{
-  "arXiv"
-}
-
-FUNCTION {eprint.command}
-{
-  "\Eprint "
-}
-
-FUNCTION {format.eprint}
-{
-  eprint duplicate$ empty$
-  control.eprint #0 <
-  or
-    { pop$ "" }
-    {
-      duplicate$
-      ""
-        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
-        "/" *
-        swap$ *
-        "{" swap$ * "} " *
-      swap$
-      ""
-        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
-        swap$ *
-        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
-        "{" swap$ * "} " *
-      *
-      eprint.command swap$ *
-    }
-  if$
-}
-
-FUNCTION {format.translation}
-{ translation duplicate$ empty$
-    'skip$
-    { ""
-      "\translation{" * swap$ * "}" *
-      punctuation.space 'punctuation.state :=
-    }
-  if$
-}
-
-FUNCTION {format.url}
-{
-  url duplicate$ empty$
-    { pop$ "" }
-    {
-      "\url "
-      "{" * swap$ * "}" *
-    }
-  if$
-}
-
-INTEGERS { nameptr namesleft numnames }
-
-FUNCTION {check.speaker}
-{ key empty$ 'skip$
-  { key nameptr int.to.str$ =
-    {
-      bolden
-    }
-      'skip$
-    if$
-  }
-  if$
-}
-
-
-STRINGS  { bibinfo}
-
-FUNCTION {format.names.fname}
-{
-  control.author.initials {
-    control.author.dotless {
-      control.author.nospace {
-        "f{}"
-      } {
-        "f{~}"
-      } if$
-    } {
-      control.author.nospace {
-        "f{.}."
-      } {
-        "f."
-      } if$
-    } if$
-  } {
-    "ff"
-  } if$
-}
-
-FUNCTION {bracify}
-{
-  "{" swap$ * "}" *
-}
-
-FUNCTION {name.comma}
-{
-  control.author.nocomma 'skip$ { "," swap$ * } if$
-}
-
-FUNCTION {format.names.format.onefont}
-{
-  "{vv~}{ll}"
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-    {
-      control.author.initials {
-        "f"
-        control.author.dotless 'skip$ {
-          "." *
-        } if$
-        "~" *
-      } {
-        "ff"
-      } if$
-      bracify
-      swap$
-    } {
-      format.names.fname
-      " " swap$ *
-      name.comma
-      bracify
-    }
-  if$
-  "jj"
-  " " swap$ *
-  name.comma
-  bracify
-  control.author.jnrlst 'skip$ 'swap$ if$
-  * *
-}
-
-FUNCTION {format.names.onefont}
-{
-  s nameptr format.names.format.onefont format.name$
-  remove.dots
-  bib.name.font
-}
-
-FUNCTION {format.names.morfont}
-{ s nameptr
-  "{vv~}{ll}" format.name$ bib.name.font
-  nameptr #1 >
-  control.author.first
-  and
-  control.author.reversed not
-  or
-  {
-    s nameptr
-    control.author.initials {
-      "f"                        % default: name + surname + comma junior
-    } {
-      "ff"
-    } if$
-    control.author.dotless 'skip$ {
-      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
-    } if$
-    bracify
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    swap$
-    *
-    s nameptr
-    "{jj}" format.name$ duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } {
-    "," *
-    s nameptr
-    format.names.fname
-    "jj"
-    " "
-    name.comma
-    control.author.jnrlst {
-      swap$ * skip$
-    } {
-      skip$ * swap$
-    } if$
-    bracify swap$ bracify swap$
-    *
-    format.name$
-    remove.dots
-    duplicate$ empty$ 'skip$
-      { bib.fname.font " " swap$ * }
-      if$
-  } if$
-  *
-}
-
-FUNCTION {names.punctuate}
-{
-  "," *
-  " " *
-}
-
-FUNCTION {format.names}
-{ 'bibinfo :=
-  duplicate$ empty$ { pop$ "" } {
-    duplicate$ num.names$
-    duplicate$ 'numnames :=
-    'namesleft :=
-    's :=
-    #1 'nameptr :=
-    ""
-      { namesleft #0 > }
-      {
-      format.names.morfont
-        bibinfo bibinfo.check
-        type$ "presentation" =
-          'check.speaker
-          'skip$
-        if$
-        't :=
-        nameptr #1 > not
-          {
-            t *
-          } {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              } {
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-              names.punctuate
-                t "others" =
-                  {
-                    " " *
-                    bbl.etal
-                    emphasize
-                    *
-                  } {
-                    bbl.and
-                    space.word *
-                    t *
-                  }
-                if$
-              }
-            if$
-          }
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-  } if$
-}
-
-FUNCTION {format.names.ed.onefont}
-{
-    s nameptr
-    control.author.initials {
-      control.author.dotless {
-        control.author.nospace {
-          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
-        } {
-          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
-        } if$
-      } {
-        control.author.nospace {
-          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
-        }{
-          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
-        } if$
-      } if$
-    } {
-      "{ff~}{vv~}{ll}{, jj}"
-    } if$
-    format.name$
-    remove.dots
-    bib.name.font
-}
-
-FUNCTION {format.names.ed.morfont}
-{
-  control.author.reversed { %
-    control.author.initials { %
-      control.author.dotless { %
-        s nameptr
-        control.author.nospace { % nm-rvx nm-rvcx
-          "{f{}}"
-        } { % nm-rv
-          "{f{~}}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        remove.dots
-        duplicate$ empty$ 'skip$
-          { bib.fname.font " " swap$ * }
-        if$
-      } { % !control.author.dotless
-        s nameptr
-        control.author.nospace { % nm-rvv
-          "{ff}"
-        } { % nm-rev nm-rev1
-          "{f.}"
-        } if$
-        format.name$ duplicate$ empty$ 'skip$
-          { tie.or.space.prefix bib.fname.font swap$ * }
-        if$
-        s nameptr
-        "{vv~}{ll}" format.name$ bib.name.font *
-        s nameptr
-        "{jj}" format.name$
-        duplicate$ empty$ 'skip$
-          { bib.fname.font ", " swap$ * }
-        if$
-      } if$
-    } { % Full names !control.author.initials  nm-revf nm-revv1
-      s nameptr
-      "{ff}"
-      format.name$ duplicate$ empty$ 'skip$
-        { tie.or.space.prefix bib.fname.font swap$ * }
-      if$
-      s nameptr
-      "{vv~}{ll}" format.name$ bib.name.font *
-      s nameptr
-      "{jj}" format.name$
-      duplicate$ empty$ 'skip$
-        { bib.fname.font ", " swap$ * }
-      if$
-    } if$
-  } { % !control.author.reversed nm-init
-    s nameptr
-    "{f.}"
-    format.name$ duplicate$ empty$ 'skip$
-      { tie.or.space.prefix bib.fname.font swap$ * }
-    if$
-    s nameptr
-    "{vv~}{ll}" format.name$ bib.name.font *
-    s nameptr
-    "{jj}" format.name$
-    duplicate$ empty$ 'skip$
-      { bib.fname.font ", " swap$ * }
-    if$
-  } if$
-  *
-}
-
-FUNCTION {format.names.ed}
-{
-  control.editor #0 > {
-    format.names
-  } {
-    'bibinfo :=
-    duplicate$ empty$ 'skip$ {
-    's :=
-    "" 't :=
-    #1 'nameptr :=
-    s num.names$ 'numnames :=
-    numnames 'namesleft :=
-      { namesleft #0 > }
-      {
-       format.names.ed.morfont
-        bibinfo bibinfo.check
-        't :=
-        nameptr #1 >
-          {
-            namesleft #1 >
-              {
-                names.punctuate
-                t *
-              }{
-                s nameptr "{ll}" format.name$ duplicate$ "others" =
-                  { 't := }
-                  { pop$ }
-                if$
-                numnames #2 >
-                  'names.punctuate
-                  'skip$
-                if$
-                t "others" =
-                  {
-                    " " * bbl.etal emphasize *
-                  }{
-                   bbl.and
-                    space.word * t *
-                  }
-                if$
-              }
-            if$
-          }
-          't
-        if$
-        nameptr #1 + 'nameptr :=
-        namesleft #1 - 'namesleft :=
-      }
-    while$
-    } if$
-  } if$
-}
-
-FUNCTION {format.key}
-{ empty$
-    { key field.or.null }
-    { "" }
-  if$
-}
-
-FUNCTION {format.authors}
-{ author "author" format.names
-  duplicate$ empty$ 'skip$
-    { collaboration "collaboration" bibinfo.check
-      duplicate$ empty$ 'skip$
-        { " (" swap$ * ")" * }
-      if$
-      *
-    }
-  if$
-  "author" 'bibfield :=
-}
-
-FUNCTION {get.bbl.editor}
-{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
-}
-
-FUNCTION {format.editors}
-{ editor "editor" format.names duplicate$ empty$ 'skip$
-    {
-      "," *
-      word.space *
-      get.bbl.editor
-      capitalize
-      *
-    }
-  if$
-}
-
-FUNCTION {format.isbn.output}
-{
-}
-
-FUNCTION {format.issn.output}
-{ 
-}
-
-FUNCTION {doi.base}
-{
-  "http://dx.doi.org/"
-}
-
-FUNCTION {doi.base.command}
-{
-  "\doibase "
-}
-
-FUNCTION {noop.command}
-{
-  "\href at noop "
-}
-
-FUNCTION {href.command}
-{
-  "\href "
-}
-
-FUNCTION {link.tag.open}
-{
-  doi duplicate$ empty$
-    {
-      pop$
-      url duplicate$ empty$
-        {
-          pop$ "" noop.command
-        }{
-          href.command
-        }
-      if$
-    }
-    {
-      doi.base.command swap$ * 
-      href.command
-    }
-  if$
-  "{" * swap$ * "} {" *
-}
-
-FUNCTION {link.tag.shut}
-{
-  "}"
-}
-
-FUNCTION {link.open}
-{
-  link.tag.open output.nopunct
-}
-
-FUNCTION {link.shut}
-{
-  link.tag.shut *
-}
-
-FUNCTION {add.doi}
-{
-  link.tag.open swap$ * link.tag.shut *
-}
-
-FUNCTION {select.language}
-{ duplicate$ empty$
-    'pop$
-    { language empty$
-        'skip$
-        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
-      if$
-    }
-    if$
-}
-
-FUNCTION {format.note}
-{
- note empty$
-    { "" }
-    { note #1 #1 substring$
-      duplicate$ "{" =
-        'skip$
-        {
-          output.state after.word = output.state after.punctuation = or
-            { "l" }
-            { "u" }
-          if$ change.case$
-        }
-      if$
-      note #2 global.max$ substring$ * "note" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {bbl.enquote}
-{
-  "\enquote "
-}
-
-FUNCTION {string.enquote}
-{
-  punctuation.no 'punctuation.state :=
-  non.stop {
-    block.punctuation
-  } { "" } if$
-   swap$ pop$
-  *
-  bbl.enquote "{" * swap$ * "}" *
-  word.space *
-}
-
-FUNCTION {format.title}
-{ title
-  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
-  duplicate$ "title" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      string.enquote
-      select.language
-    }
-  if$
-}
-
-FUNCTION {end.quote.title}
-{ title empty$
-    'skip$
-    { before.all 'output.state := }
-  if$
-}
-
-FUNCTION {format.name.apply}
-{
-  s nameptr
-  "{vv~}{ll}"
-  format.name$
-  cite.name.font
-}
-
-FUNCTION {format.full.names}
-{
-  's :=
-  "" 't :=
-  #1 'nameptr :=
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { format.name.apply
-      't :=
-      nameptr #1 >
-        {
-          namesleft #1 >
-            { ", " * t * }
-            {
-              s nameptr "{ll}" format.name$ duplicate$ "others" =
-                {
-                  't :=
-                }
-                'pop$
-              if$
-              t "others" =
-                {
-                  " " * bbl.etal
-                  emphasize *
-                }{
-                  numnames #2 > { "," * }{ skip$ } if$
-                  bbl.and
-                  space.word * t *
-                }
-              if$
-            }
-          if$
-        }
-        't
-      if$
-      nameptr #1 + 'nameptr :=
-      namesleft #1 - 'namesleft :=
-    }
-  while$
-}
-
-FUNCTION {make.full.names}
-{
-  key editor author
-  type$ "proceedings" =
-  type$ "book"        =
-  type$ "inbook"      =
-  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
-  duplicate$ empty$
-    { pop$
-      duplicate$ empty$
-        { pop$
-          duplicate$ empty$
-            { pop$
-              cite$ #1 #3 substring$
-            }{
-              skip$
-            }
-          if$
-        }
-        { swap$ pop$ format.full.names }
-      if$
-    }
-    { swap$ pop$ swap$ pop$ format.full.names }
-  if$
-}
-
-FUNCTION {year.bibitem}
-{
-  year duplicate$ empty$
-  { pop$ ""
-    "????" *
-  }{
-    skip$
-  } if$
-  extra.label *
-}
-
-FUNCTION {output.bibitem}
-{
-  newline$
-  ""
-  label
-  * ")" *
-   make.full.names duplicate$ short.list =
-   { pop$ }{ * } if$
-   bracify
-  "[" swap$ * "]" *
-  cite$ bracify "%" *
-  *
-  "\bibitem "
-  swap$ *
-  write$ newline$
-  "  "
-  duplicate$ bbl.open * write$ newline$
-  before.all 'output.state :=
-  punctuation.yes 'punctuation.state :=
-}
-
-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 {word.in}
-{
-  bbl.in
-  word.space *
-}
-
-FUNCTION {date.encapsulate}
-{
-  duplicate$ empty$
-    'skip$
-    {
-      before.all 'output.state :=
-      " (" swap$ * ")" *
-    }
-  if$
-}
-
-FUNCTION {format.date}
-{
-  year "year" bibinfo.check duplicate$ empty$
-    {
-      "empty year in " cite$ * "; set to ????" * warning$
-       pop$ "????"
-    }
-    'skip$
-  if$
-  extra.label *
-  date.encapsulate
-}
-
-FUNCTION {format.date.output.check}
-{
- format.date
- "year" output.check
-}
-
-FUNCTION {format.date.output}
-{
-  format.date.output.check
-}
-
-FUNCTION {format.btitle}
-{
-  booktitle duplicate$ empty$ { pop$
-      title
-  } 'skip$ if$
-  "title" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {either.or.check}
-{ empty$
-    'pop$
-    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
-  if$
-}
-
-FUNCTION {editor.check.book}
-{ editor empty$ 'skip$
-    {
-      "can't use both author and editor fields in " cite$ *
-      ": try using @inbook instead" *
-      warning$
-    }
-  if$
-}
-
-FUNCTION {format.bvolume}
-{ volume duplicate$ empty$
-    { pop$ "" }
-    {
-      "volume and number" number either.or.check
-      bbl.volume
-      capitalize
-      swap$
-      tie.or.space.prefix "volume" bibinfo.check * *
-      series "series" bibinfo.check duplicate$ empty$ 'pop$
-        {
-          ", "
-          * swap$ *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.number}
-{
-  bbl.number
-  output.state after.word = output.state after.punctuation = or
-  #1 or
-  #0 and
-    'skip$
-    { capitalize }
-  if$
-  number tie.or.space.prefix "number" bibinfo.check * *
-}
-
-FUNCTION {format.number.series}
-{ volume empty$
-    { number empty$
-        { series field.or.null }
-        {
-          series empty$
-            {
-              number "number" bibinfo.check
-            }{
-              format.number
-              series "series" bibinfo.check
-              word.space * swap$ *
-            }
-          if$
-        }
-      if$
-    }
-    { "" }
-  if$
-}
-
-FUNCTION {is.num}
-{ chr.to.int$
-  duplicate$ "0" chr.to.int$ < not
-  swap$ "9" chr.to.int$ > not and
-}
-
-FUNCTION {extract.num}
-{ duplicate$ 't :=
-  "" 's :=
-  { t empty$ not }
-  { t #1 #1 substring$
-    t #2 global.max$ substring$ 't :=
-    duplicate$ is.num
-      { s swap$ * 's := }
-      { pop$ "" 't := }
-    if$
-  }
-  while$
-  s empty$
-    'skip$
-    { pop$ s }
-  if$
-}
-
-FUNCTION {convert.edition}
-{ extract.num "l" change.case$ 's :=
-  s "first" = s "1" = or
-    { bbl.first 't := }
-    { s "second" = s "2" = or
-        { bbl.second 't := }
-        { s "third" = s "3" = or
-            { bbl.third 't := }
-            { s "fourth" = s "4" = or
-                { bbl.fourth 't := }
-                { s "fifth" = s "5" = or
-                    { bbl.fifth 't := }
-                    { s #1 #1 substring$ is.num
-                        { s
-                            eng.ord
-                        't := }
-                        { edition 't := }
-                      if$
-                    }
-                  if$
-                }
-              if$
-            }
-          if$
-        }
-      if$
-    }
-  if$
-  t
-}
-
-FUNCTION {format.edition}
-{ edition duplicate$ empty$ 'skip$
-    {
-      convert.edition
-      output.state after.word = output.state after.punctuation = or
-        { "l" }
-        { "t" }
-      if$ change.case$
-      "edition" bibinfo.check
-      word.space * bbl.edition *
-    }
-  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 duplicate$ empty$
-    'skip$
-    { duplicate$ multi.page.check
-        {
-          bbl.pages swap$
-          n.dashify
-        }{
-          bbl.page swap$
-        }
-      if$
-      tie.or.space.prefix
-      "pages" bibinfo.check
-      * *
-    }
-  if$
-}
-
-FUNCTION {first.page}
-{ 't :=
-  ""
-    {  t empty$ not t #1 #1 substring$ "-" = not and }
-    { t #1 #1 substring$ *
-      t #2 global.max$ substring$ 't :=
-    }
-  while$
-}
-
-FUNCTION {format.book.pages}
-{
-  pages duplicate$ empty$ 'skip$
-    {
-      "pages" bibinfo.check word.space bbl.pages * *
-    }
-  if$
-}
-
-FUNCTION {volnum.punct}
-{
-          ","
-  word.space *
-}
-
-FUNCTION {format.journal.pages}
-{ pages duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$
-        { pop$ pop$ format.pages }
-        { volnum.punct *
-          swap$
-          control.pages duplicate$ #0 < {
-            pop$ pop$
-          }{
-            #0 >
-            {
-              n.dashify
-            }{
-              first.page
-            } if$
-          } if$
-          "pages" bibinfo.check
-          *
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {format.journal.eid}
-{ eid "eid" bibinfo.check
-  duplicate$ empty$ 'pop$
-    { swap$ duplicate$ empty$ 'skip$
-        { volnum.punct * }
-      if$
-      swap$ *
-    }
-  if$
-}
-
-FUNCTION {eid.or.pages}
-{
-  eid empty$
-    { format.journal.pages }
-    { format.journal.eid }
-  if$
-}
-
-FUNCTION {format.ser.vol.num}
-{
-  series "series" bibinfo.check output
-  volume field.or.null
-  duplicate$ empty$ 'skip$
-    {
-      "volume" bibinfo.check
-    }
-  if$
-  bolden
-  number "number" bibinfo.check duplicate$ empty$ 'skip$
-    {
-      swap$ duplicate$ empty$
-        { "there's a number but no volume in " cite$ * warning$ }
-        'skip$
-      if$
-      swap$
-      "~(" swap$ * ")" *
-    }
-  if$ *
-}
-
-FUNCTION {format.chapter.pages}
-{ chapter empty$
-    {
-      ""
-    }
-    { type empty$
-        {
-          bbl.chapter
-          capitalize
-        }{
-          type
-          capitalize
-          "type" bibinfo.check
-        }
-      if$
-      chapter tie.or.space.prefix
-      "chapter" bibinfo.check
-      * *
-    }
-  if$
-}
-
-FUNCTION {format.booktitle}
-{
-  booktitle duplicate$ "booktitle" bibinfo.check swap$
-  duplicate$ empty$ 'pop$
-    {
-      punctuation.yes 'punctuation.state :=
-      pop$ emphasize
-      select.language
-    }
-  if$
-}
-
-FUNCTION {format.editor.in}
-{
-  editor "editor" format.names.ed duplicate$ empty$ 'skip$
-    {
-      bbl.edby
-      word.space * swap$ *
-    }
-  if$
-}
-
-FUNCTION {output.article.booktitle}
-{
-  format.booktitle
-      "booktitle" 'bibfield :=
-  output
-  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
-    {
-      "address" 'bibfield :=
-      output.nonnull after.punctuation 'output.state :=
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      format.editor.in "editor" bibinfo.check output
-    }
-  if$
-}
-
-FUNCTION {format.in.ed.booktitle.inbook}
-{
-  format.booktitle duplicate$ empty$ 'pop$
-    {
-      add.doi
-      word.in swap$ * output.nonnull
-      bookaddress "address" bibinfo.check output
-      format.number.series "series and number" bibinfo.check output
-      format.bvolume output
-      author empty$ 'skip$
-        { format.editor.in "editor" bibinfo.check output }
-    if$
-    }
-  if$
-}
-
-FUNCTION {format.thesis.type}
-{ type duplicate$ empty$
-    'pop$
-    { swap$ pop$
-      "t" change.case$ "type" bibinfo.check
-    }
-  if$
-}
-
-FUNCTION {format.tr.number}
-{ number "number" bibinfo.check
-  type duplicate$ empty$
-    { pop$ bbl.techrep }
-    'skip$
-  if$
-  "type" bibinfo.check
-  swap$ duplicate$ empty$
-    { pop$ "t" change.case$ }
-    { tie.or.space.prefix * * }
-  if$
-}
-
-FUNCTION {format.article.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.book.crossref}
-{ volume duplicate$ empty$
-    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
-      pop$ word.in
-    }
-    { bbl.volume
-      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
-    }
-  if$
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.incoll.inproc.crossref}
-{
-  word.in
-  " \cite{" * crossref * "}" *
-}
-
-FUNCTION {format.org.or.pub}
-{ 't :=
-  ""
-  address "address" bibinfo.check
-  duplicate$ empty$
-    { pop$ t }
-    { t duplicate$ empty$
-        { pop$ }
-        {
-          "," word.space *
-          * swap$ *
-        }
-      if$
-    }
-  if$
-  *
-  duplicate$ empty$ 'skip$ {
-    ""
-    "(" * swap$ * ")" *
-    after.punctuation 'output.state :=
-    punctuation.space 'punctuation.state :=
-  } if$
-}
-
-FUNCTION {format.publisher.address}
-{ publisher "publisher" bibinfo.warn format.org.or.pub
-}
-
-FUNCTION {format.organization.address}
-{ organization "organization" bibinfo.check format.org.or.pub
-}
-
-FUNCTION {format.organization.publisher.address}
-{
-  publisher empty$
-    { format.organization.address }
-    { organization "organization" bibinfo.check output
-      format.publisher.address
-    }
-  if$
-}
-
-FUNCTION {format.school.address.output}
-{
-  school  "school"  bibinfo.warn
-  address "address" bibinfo.check
-  duplicate$ empty$ 'skip$
-    {
-      swap$
-      duplicate$ empty$ 'skip$
-        {
-          ", " *
-        }
-      if$
-      swap$
-    }
-  if$
-  *
-  duplicate$ empty$ 'skip$ { "(" swap$ * ")" * } if$ after.punctuation 'output.state :=
-  output
-}
-
-FUNCTION {article.title.produce}
-{
-  control.title duplicate$ #0 <
-  { pop$
-  }{
-    format.title
-    "title" 'bibfield :=
-    swap$ #0 >
-    {
-      "title" output.check
-    }{
-      output
-    } if$
-    new.block.comma
-  } if$
-}
-
-FUNCTION {control}
-{
-}
-
-FUNCTION {article}
-{ output.bibitem
-  format.authors
-  booktitle empty$ {
-      "author" output.check
-    }{ output } if$
-  author format.key output
-  format.date.output.check date.block
-  article.title.produce
-  output.article.booktitle
-  crossref missing$
-    {
-      link.open
-      journal
-      "journal" bibinfo.warn
-      "journal" 'bibfield :=
-      output
-      add.blank
-      format.ser.vol.num
-      output
-      eid.or.pages
-      pages empty$ {
-      doi output
-      } 'skip$ if$
-      link.shut
-    }{
-      format.article.crossref output.nonnull
-      eid.or.pages
-    }
-  if$
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  format.translation output
-  fin.entry
-}
-
-FUNCTION {book}
-{ output.bibitem
-  author empty$
-    {
-      format.editors "author and editor" output.check
-      editor format.key output
-    }{
-      format.authors output.nonnull
-%     crossref missing$ { editor.check.book } 'skip$ if$
-    }
-  if$
-  format.date.output.check date.block
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-  format.edition output
-  author empty$
-    {
-    }
-    {
-      format.editor.in output
-      editor format.key output
-    }
-  if$
-  format.number.series output
-  crossref missing$
-    {
-      format.bvolume output
-      new.block.comma
-      format.publisher.address output
-    }{
-      new.block.comma
-      format.book.crossref output.nonnull
-    }
-  if$
-  format.isbn.output
-  format.chapter.pages
-  output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {booklet}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  format.date.output date.block
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  address "address" bibinfo.check output
-  format.isbn.output
-  format.book.pages output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {footnote}
-{ output.bibitem
-  format.note output
-  fin.entry
-}
-
-FUNCTION {inbook}
-{ output.bibitem
-  author empty$
-    {
-       format.editors "editor" output.check
-       editor format.key output
-    }{
-       format.authors output.nonnull
-       author format.key output
-    }
-  if$
-  format.date.output.check date.block
-
-  format.title output
-  new.block.comma
-
-  crossref missing$
-    {
-      format.in.ed.booktitle.inbook
-      format.chapter.pages
-      "chapter"
-      output.check
-      new.block.comma
-      format.edition output
-      new.block.comma
-      format.publisher.address output
-    }{
-      format.chapter.pages
-      "chapter"
-      output.check
-      new.block.comma
-      format.book.crossref output.nonnull
-    }
-  if$
-  crossref missing$
-    { format.isbn.output }
-    'skip$
-  if$
-  format.pages "pages" output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {incollection}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  format.date.output.check date.block
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.edition output
-      format.chapter.pages output
-      format.publisher.address output
-      format.isbn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-      format.chapter.pages output
-    }
-  if$
-  format.pages "pages" output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {inproceedings}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  format.date.output.check date.block
-  article.title.produce
-  crossref missing$
-    {
-      format.in.ed.booktitle
-      format.organization.publisher.address output
-      format.isbn.output
-      format.issn.output
-    }{
-      format.incoll.inproc.crossref output.nonnull
-    }
-  if$
-  format.chapter.pages "chapter and pages" output.check
-  format.pages "pages" output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {conference} { inproceedings }
-FUNCTION {manual}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  format.date.output date.block
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      organization "organization" bibinfo.check output
-      address "address" bibinfo.check output
-  format.edition output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {mastersthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  format.date.output.check date.block
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.mthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {misc}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  format.date.output
-  date.block
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  howpublished "howpublished" bibinfo.check output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {phdthesis}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  format.date.output.check date.block
-  format.btitle
-  output
-  new.block.comma
-  link.open
-  bbl.phdthesis
-  format.thesis.type
-  output.nonnull
-  link.shut
-  format.school.address.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {presentation}
-{ output.bibitem
-  format.authors output
-  author format.key output
-  new.block.comma
-  link.open
-  format.title
-  output
-  link.shut
-  new.block.comma
-  format.organization.address "organization and address" output.check
-  month "month" output.check
-  year "year" output.check
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  new.sentence
-  type missing$ 'skip$
-    {"(" type capitalize * ")" * output}
-  if$
-  fin.entry
-}
-
-FUNCTION {proceedings}
-{ output.bibitem
-  format.editors output
-  editor format.key output
-  format.date.output.check date.block
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-      bookaddress "address" bibinfo.check output
-  format.number.series output
-  format.bvolume output
-  format.organization.publisher.address output
-  format.isbn.output
-  format.issn.output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {techreport}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  format.date.output.check date.block
-  link.open
-  format.btitle
-  "title" output.check
-  link.shut
-  new.block.comma
-  format.tr.number
-  output.nonnull
-  institution "institution" bibinfo.warn
-  format.org.or.pub output
-  new.block.comma
-  new.sentence.comma
-  format.note output
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {unpublished}
-{ output.bibitem
-  format.authors "author" output.check
-  author format.key output
-  format.date.output date.block
-  link.open
-  format.title
-  "title" output.check
-  link.shut
-  new.block.comma
-  new.sentence.comma
-  format.note "note" output.check
-  format.eprint output
-  fin.entry
-}
-
-FUNCTION {default.type} { misc }
-
-READ
-
-EXECUTE {control.init}
-
-ITERATE {control.pass}
-
-EXECUTE {control.check}
-
-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 {cite.name.font.apply}
-{
-  word.space * bbl.etal
-  emphasize
-  *
-}
-
-FUNCTION {format.lab.names}
-{ 's :=
-  "" 't :=
-  #1 'nameptr :=
-  format.name.apply
-  s num.names$ duplicate$
-  #2 >
-    { pop$
-      cite.name.font.apply
-    }{
-      #2 <
-        'skip$
-        {
-          s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
-            {
-              cite.name.font.apply
-            }{
-              bbl.and space.word *
-              s #2 "{vv~}{ll}" format.name$
-              cite.name.font
-              *
-            }
-          if$
-        }
-      if$
-    }
-  if$
-}
-
-FUNCTION {author.key.label}
-{ author empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {author.editor.key.label}
-{ author empty$
-    { editor empty$
-        { key empty$
-            { cite$ #1 #3 substring$ }
-            'key
-          if$
-        }
-        { editor format.lab.names }
-      if$
-    }
-    { author format.lab.names }
-  if$
-}
-
-FUNCTION {editor.key.label}
-{ editor empty$
-    { key empty$
-        { cite$ #1 #3 substring$ }
-        'key
-      if$
-    }
-    { editor format.lab.names }
-  if$
-}
-
-FUNCTION {calc.short.authors}
-{ type$ "book" =
-  type$ "inbook" =
-  or
-    'author.editor.key.label
-    { type$ "proceedings" =
-        'editor.key.label
-        'author.key.label
-      if$
-    }
-  if$
-  'short.list :=
-}
-
-FUNCTION {calc.label}
-{
-  calc.short.authors
-  short.list
-  year duplicate$ empty$
-  short.list key field.or.null = or
-    {
-      pop$ ""
-       "????" *
-    }{
-      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
-    }
-  if$
-  "(" swap$ * 
-  * 'label :=
-}
-
-FUNCTION {sort.format.names}
-{ 's :=
-  #1 'nameptr :=
-  ""
-  s num.names$ 'numnames :=
-  numnames 'namesleft :=
-    { namesleft #0 > }
-    { s nameptr
-      "{ll{ }}"
-      control.author.initials {
-        "{  f{ }}"  *
-      }{
-        "{  ff{ }}" *
-      } if$
-      "{  jj{ }}" *
-      format.name$ 't :=
-      nameptr #1 >
-        {
-          "   "  *
-          namesleft #1 = t "others" = and
-            { "zzzzz" * }
-            {
-              t sortify *
-            }
-          if$
-        }
-        { 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 {author.editor.sort}
-{ author empty$
-    { 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 {year.sort.key}
-{
-  year
-}
-
-FUNCTION {editor.sort}
-{ editor empty$
-    { key empty$
-        { "to sort, need editor or key in " cite$ * warning$
-          ""
-        }
-        { key sortify }
-      if$
-    }
-    { editor sort.format.names }
-  if$
-}
-
-INTEGERS { seq.num }
-
-FUNCTION {init.seq}
-{ #0 'seq.num :=}
-
-EXECUTE {init.seq}
-
-FUNCTION {int.to.fix}
-{ "000000000" swap$ int.to.str$ *
-  #-1 #10 substring$
-}
-
-FUNCTION {label.presort}
-{
-  calc.label
-  label sortify
-  "    "
-  *
-  type$ "book" =
-  type$ "inbook" =
-  or
-    'author.editor.sort
-    { type$ "proceedings" =
-        'editor.sort
-        'author.sort
-      if$
-    }
-  if$
-  #1 entry.max$ substring$
-  'sort.label :=
-  sort.label
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {presort.pass}
-{ type$ "control" = 'control.presort 'label.presort if$
-}
-
-ITERATE {presort.pass}
-
-SORT
-
-STRINGS { last.label next.extra }
-
-INTEGERS { last.extra.num number.label }
-
-FUNCTION {initialize.extra.label.stuff}
-{ #0 int.to.chr$ 'last.label :=
-  "" 'next.extra :=
-  #0 'last.extra.num :=
-  #0 'number.label :=
-}
-
-FUNCTION {label.forward}
-{
-  last.label label =
-    { last.extra.num #1 + 'last.extra.num :=
-      last.extra.num int.to.chr$ 'extra.label :=
-    }
-    { "a" chr.to.int$ 'last.extra.num :=
-      "" 'extra.label :=
-      label 'last.label :=
-    }
-  if$
-  number.label #1 + 'number.label :=
-}
-
-FUNCTION {label.reverse}
-{ next.extra "b" =
-    { "a" 'extra.label := }
-    'skip$
-  if$
-  extra.label 'next.extra :=
-  extra.label
-  duplicate$ empty$
-    'skip$
-    { "{\natexlab{" swap$ * "}}" * }
-  if$
-  'extra.label :=
-  label extra.label * 'label :=
-}
-
-EXECUTE {initialize.extra.label.stuff}
-
-FUNCTION {forward.pass}
-{ type$ "control" = 'control.forward 'label.forward if$
-}
-
-ITERATE {forward.pass}
-
-FUNCTION {reverse.pass}
-{ type$ "control" = 'control.reverse 'label.reverse if$
-}
-
-REVERSE {reverse.pass}
-
-FUNCTION {sortkey.sort}
-{ sort.label
-  "    "
-  *
-  year.sort.key
-  field.or.null sortify
-  *
-  "    "
-  *
-  title field.or.null sort.format.title
-  *
-  #1 entry.max$ substring$
-  'sort.key$ :=
-}
-
-FUNCTION {bib.sort.pass}
-{ type$ "control" = 'control.sort 'sortkey.sort if$
-}
-
-ITERATE {bib.sort.pass}
-
-SORT
-
-FUNCTION {init.bib.eprint}
-{
-    "\texttt {"
-  pop$
-  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
-  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
-  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
-  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
-}
-
-FUNCTION {init.bib.doi}
-{
-  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
-}
-
-FUNCTION {init.bib.hypertex}
-{
-  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
-  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
-  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
-  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
-  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
-  "\providecommand \@@startlink[1]{}%" write$ newline$
-  "\providecommand \@@endlink[0]{}%"   write$ newline$
-}
-
-FUNCTION {init.bib.namefont}
-{
-  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
-  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
-  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
-}
-
-FUNCTION {init.bib.quote}
-{
-  "\providecommand " bbl.enquote * " [1]{" *
-  "``" "''"
-  "#1" swap$ "}%" * * * * write$ newline$
-}
-
-FUNCTION {init.bib.ay}
-{
-  "\providecommand \natexlab [1]{#1}%"
-  write$ newline$
-}
-
-FUNCTION {init.bib.bibinfo}
-{
-  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
-}
-
-FUNCTION {init.bib.lang}
-{
-  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
-}
-
-FUNCTION {init.bib.endbibitem}
-{
-  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
-  "\providecommand \bibitemStop [0]{}%"               write$ newline$
-  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
-  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
-}
-
-FUNCTION {init.bib.translation}
-{
-  "\providecommand \translation [1]{[#1]}%" write$ newline$
-}
-
-FUNCTION {warn.bib}
-{
-}
-
-FUNCTION {init.bib}
-{
-  warn.bib
-  "\makeatletter" write$ newline$
-  "\providecommand \@ifxundefined [1]{%"   write$ newline$
-  " \@ifx{#1\undefined}"                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifnum [1]{%"          write$ newline$
-  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  "\providecommand \@ifx [1]{%"            write$ newline$
-  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
-  " \else \expandafter \@secondoftwo"      write$ newline$
-  " \fi"                                   write$ newline$
-  "}%"                                     write$ newline$
-  init.bib.ay
-  init.bib.quote
-  init.bib.namefont
-  init.bib.hypertex
-  init.bib.eprint
-  init.bib.doi
-  init.bib.lang
-  init.bib.bibinfo
-  init.bib.translation
-  init.bib.endbibitem
-  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
-  "\let\auto at bib@innerbib\@empty"          write$ newline$
-  "%</preamble>" write$
-}
-
-FUNCTION {begin.bib}
-{
-  id.bst diagn.cmntlog
-  control.bib
-  preamble$ empty$
-    'skip$
-    { preamble$ write$ newline$ }
-  if$
-  "\begin{thebibliography}{"
-  number.label int.to.str$
-  * "}%" *
-  write$ newline$
-  init.bib
-}
-
-EXECUTE {begin.bib}
-
-EXECUTE {init.state.consts}
-
-ITERATE {call.type$}
-
-FUNCTION {end.bib}
-{ newline$
-  "\end{thebibliography}%"
-  write$ newline$
-}
-
-EXECUTE {end.bib}
-
-%% End of customized bst file
-%%
-%% End of file `apsrmp4-1.bst'.

Added: trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-2.bst
===================================================================
--- trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-2.bst	                        (rev 0)
+++ trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-2.bst	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,3461 @@
+%%
+%% This is file `apsrmp4-2.bst', and is a hand-edited version of apsrmp4-1.bst
+ % ===============================================================
+ % IMPORTANT NOTICE:
+ % This file can be redistributed and/or modified under the terms
+ % of the LaTeX Project Public License Distributed from CTAN
+ % archives in directory macros/latex/base/lppl.txt; either
+ % version 1 of the License, or any later version.
+ % ===============================================================
+ %-------------------------------------------------------------------
+ % This bibliography style file is intended for texts in ENGLISH
+ % This is an author-year citation style bibliography. As such, it is
+ % non-standard LaTeX, and requires a special package file to function properly.
+ % Such a package is natbib.sty   by Patrick W. Daly
+ % The form of the \bibitem entries is
+ %   \bibitem[Jones et al.(1990)]{key}...
+ %   \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}...
+ % The essential feature is that the label (the part in brackets) consists
+ % of the author names, as they should appear in the citation, with the year
+ % in parentheses following. There must be no space before the opening
+ % parenthesis!
+ % With natbib v5.3, a full list of authors may also follow the year.
+ % In natbib.sty, it is possible to define the type of enclosures that is
+ % really wanted (brackets or parentheses), but in either case, there must
+ % be parentheses in the label.
+ % The \cite command functions as follows:
+ %   \citet{key} ==>>                Jones et al. (1990)
+ %   \citet*{key} ==>>               Jones, Baker, and Smith (1990)
+ %   \citep{key} ==>>                (Jones et al., 1990)
+ %   \citep*{key} ==>>               (Jones, Baker, and Smith, 1990)
+ %   \citep[chap. 2]{key} ==>>       (Jones et al., 1990, chap. 2)
+ %   \citep[e.g.][]{key} ==>>        (e.g. Jones et al., 1990)
+ %   \citep[e.g.][p. 32]{key} ==>>   (e.g. Jones et al., p. 32)
+ %   \citeauthor{key} ==>>           Jones et al.
+ %   \citeauthor*{key} ==>>          Jones, Baker, and Smith
+ %   \citeyear{key} ==>>             1990
+ %---------------------------------------------------------------------
+
+FUNCTION {id.bst} {"apsrmp4-2.bst 2018-12-27 (MD) hand-edited version of apsrmp4-1.bst"}
+ENTRY
+{
+    address
+    archive
+    archivePrefix
+    author
+    bookaddress
+    booktitle
+    chapter
+    collaboration
+    doi
+    edition
+    editor
+    eid
+    eprint
+    howpublished
+    institution
+    isbn
+    issn
+    journal
+    key
+    language
+    month
+    note
+    number
+    organization
+    pages
+    primaryClass
+    publisher
+    school
+    SLACcitation
+    series
+    title
+    translation
+    type
+    url
+    volume
+    year
+}{
+}{
+    label
+    extra.label sort.label
+    short.list
+}
+
+INTEGERS
+{
+  output.state before.all
+  after.word after.punctuation
+  after.sentence after.block
+}
+
+INTEGERS
+{
+  punctuation.state punctuation.no punctuation.space punctuation.yes
+}
+
+STRINGS { bibfield output.bibfield }
+
+FUNCTION {not}
+{   { #0 }
+    { #1 }
+  if$
+}
+
+FUNCTION {and}
+{   'skip$
+    { pop$ #0 }
+  if$
+}
+
+FUNCTION {or}
+{   { pop$ #1 }
+    'skip$
+  if$
+}
+
+FUNCTION {non.stop}
+{ duplicate$
+   "}" * add.period$
+   #-1 #1 substring$ "." =
+}
+
+INTEGERS { arith.mulitplier arith.multiplicand }
+
+FUNCTION {multiply}
+{
+  'arith.multiplicand :=
+  'arith.mulitplier :=
+  #0
+    { arith.mulitplier #0 > }
+    { arith.multiplicand +
+      arith.mulitplier #1 - 'arith.mulitplier :=
+    }
+  while$
+}
+
+FUNCTION {chr.to.hex}
+{
+  chr.to.int$
+  duplicate$ "0" chr.to.int$ -
+  duplicate$ duplicate$ #0 < swap$ #9 > or not
+    { swap$ pop$ }
+    { pop$
+      duplicate$ "A" chr.to.int$ -
+      duplicate$ duplicate$ #0 < swap$ #5 > or not
+        { swap$ pop$ #10 + }
+        { pop$
+          duplicate$ "a" chr.to.int$ -
+          duplicate$ duplicate$ #0 < swap$ #5 > or not
+            { swap$ pop$ #10 + }
+            { pop$
+              pop$ #-1
+            }
+          if$
+        }
+      if$
+    }
+  if$
+}
+
+INTEGERS { arith.accumulator }
+
+FUNCTION {str.to.hex}
+{ #0 'arith.accumulator :=
+    { duplicate$ empty$ not }
+    { duplicate$ #1 #1 substring$ chr.to.hex
+      duplicate$ #0 <
+        { pop$ pop$ ""
+        }
+        { arith.accumulator #16 multiply + 'arith.accumulator :=
+          #2 global.max$ substring$
+        }
+      if$
+    }
+  while$
+  pop$ arith.accumulator
+}
+
+FUNCTION {diagn.cmntlog}
+{
+  duplicate$ top$ "%" swap$ * write$ newline$
+}
+
+INTEGERS { control.key control.author control.editor control.title control.pages control.eprint control.year }
+
+INTEGERS { control.author.jnrlst control.author.dotless control.author.nospace control.author.initials control.author.nocomma control.author.first control.author.reversed }
+
+FUNCTION { control.init }
+{
+  #0
+  'control.key             :=
+  #0
+  #1 +
+  #2 +
+  #8 +
+  #64 +
+  'control.author :=
+  #1
+  'control.author.jnrlst   :=
+  #0
+  'control.author.dotless  :=
+  #0
+  'control.author.nospace  :=
+  #1
+  'control.author.initials :=
+  #0
+  'control.author.nocomma  :=
+  #1
+  'control.author.first    :=
+  #1
+  'control.author.reversed :=
+  #0
+  'control.editor :=
+  #-1
+  'control.title  :=
+  #0
+  'control.pages  :=
+  #0
+  'control.eprint :=
+  #1
+  'control.year   :=
+}
+
+FUNCTION {warning.dependency}
+{
+  " (dependency: " * swap$ * ") set " * swap$ int.to.str$ * warning$
+}
+
+FUNCTION {control.check}
+{
+  control.editor
+    {
+      "editor formatted same as author"
+      control.author.reversed {
+        duplicate$ #0 swap$ "reversed" warning.dependency
+        #0 'control.author.reversed :=
+      } 'skip$ if$
+      control.author.first {
+        duplicate$ #0 swap$ "first" warning.dependency
+        #0 'control.author.first :=
+      } 'skip$ if$
+      control.author.nocomma {
+        duplicate$ #0 swap$ "nocomma" warning.dependency
+        #0 'control.author.nocomma :=
+      } 'skip$ if$
+      pop$
+    } 'skip$ if$
+  control.author.reversed 'skip$
+    {
+      "not reversed"
+      control.author.nospace {
+        duplicate$ #0 swap$ "nospace" warning.dependency
+        #0 'control.author.nospace :=
+      } 'skip$ if$
+      control.author.jnrlst 'skip$ {
+        duplicate$ #1 swap$ "jnrlst" warning.dependency
+        #1 'control.author.jnrlst :=
+      } if$
+      control.author.initials {
+        duplicate$ ", initials" *
+        control.author.dotless {
+          duplicate$ #0 swap$ "dotless" warning.dependency
+          #0 'control.author.dotless :=
+        } 'skip$ if$
+        pop$
+      } 'skip$ if$
+      pop$
+    }
+  if$
+  control.author.initials 'skip$ {
+    "not initials"
+    control.author.nocomma {
+      duplicate$ #0 swap$ "nocomma" warning.dependency
+      #0 'control.author.nocomma :=
+    } 'skip$ if$
+    control.author.nospace {
+      duplicate$ #0 swap$ "nospace" warning.dependency
+      #0 'control.author.nospace :=
+    } 'skip$ if$
+    control.author.dotless 'skip$ {
+      duplicate$ #1 swap$ "dotless" warning.dependency
+      #1 'control.author.dotless :=
+    } if$
+    pop$
+  } if$
+}
+
+FUNCTION {control.parse}
+{
+  duplicate$ duplicate$ missing$
+    {
+      pop$ pop$ pop$
+    }
+    { empty$
+        {
+          pop$ #-1
+        }{
+          str.to.hex
+        }
+      if$
+      swap$ :=
+    }
+  if$
+}
+
+FUNCTION {control.dump}
+{
+  duplicate$ missing$ { pop$ "N/A" } 'skip$ if$
+  "{" swap$ * "}, " *
+  *
+}
+
+INTEGERS { decode.threshold }
+
+FUNCTION {control.decode}
+{
+  - duplicate$
+  #0 <
+    {
+      skip$ pop$ swap$ #0
+    }
+    {
+      swap$ pop$ swap$ #1
+    }
+  if$
+  swap$ :=
+}
+
+FUNCTION {control.author.decode}
+{
+  control.author
+  duplicate$ duplicate$ #0 < swap$ #128 < not or
+    {
+      int.to.str$ "(" swap$ * ")" *
+      "Control cannot interpret author " swap$ *
+      warning$
+    }{
+      'control.author.jnrlst   swap$ duplicate$ #64 control.decode
+      'control.author.dotless  swap$ duplicate$ #32 control.decode
+      'control.author.nospace  swap$ duplicate$ #16 control.decode
+      'control.author.initials swap$ duplicate$  #8 control.decode
+      'control.author.nocomma  swap$ duplicate$  #4 control.decode
+      'control.author.first    swap$ duplicate$  #2 control.decode
+      'control.author.reversed swap$ duplicate$  #1 control.decode
+      duplicate$ #0 =
+        'skip$
+        {
+          "Control: residue of author"
+          "(" swap$ * ")" * *
+          warning$
+        }
+      if$
+      pop$
+    }
+  if$
+}
+
+FUNCTION {control.setup}
+{
+  type$ cite$ "{" swap$ * "}, " * *
+  "control.key"    key    control.dump *
+  "control.author" author control.dump *
+  "control.editor" editor control.dump *
+  "control.title"  title  control.dump *
+  "control.pages"  pages  control.dump *
+  "control.year"   year   control.dump *
+  "control.eprint" eprint control.dump *
+  top$
+  'control.key    key    control.parse
+  'control.author author control.parse
+  'control.editor editor control.parse
+  'control.title  title  control.parse
+  'control.pages  pages  control.parse
+  'control.year   year   control.parse
+  'control.eprint eprint control.parse
+  control.author.decode
+}
+
+FUNCTION {control.pass}
+{ type$ "control" = 'control.setup 'skip$ if$
+}
+
+FUNCTION {control.presort}
+{
+}
+
+FUNCTION {control.forward}
+{
+}
+
+FUNCTION {control.reverse}
+{
+}
+
+FUNCTION {control.sort}
+{
+}
+
+FUNCTION {control.longest.label}
+{
+}
+
+FUNCTION {control.key.bib}
+{
+  "Control: key "
+  control.key
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  pop$ *
+  diagn.cmntlog
+}
+
+FUNCTION {control.author.bib}
+{
+  "Control: author "
+  control.author "(" swap$ int.to.str$ * ")" * *
+  control.author.reversed { " reversed" * }{} if$
+  control.author.first    { " first"    * }{} if$
+  control.author.nocomma  { " nocomma"  * }{} if$
+  control.author.initials { " initials" * }{} if$
+  control.author.nospace  { " nospace"  * }{} if$
+  control.author.dotless  { " dotless"  * }{} if$
+  control.author.jnrlst   { " jnrlst"   * }{} if$
+  diagn.cmntlog
+}
+
+FUNCTION {control.editor.bib}
+{
+  "Control: editor formatted "
+  control.editor
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "identically to author"
+    } {
+      "differently from author"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.title.bib}
+{
+  "Control: production of article title "
+  control.title
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled"
+  } {
+    #0 > {
+      "required"
+    } {
+      "allowed"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.pages.bib}
+{
+  "Control: page "
+  control.pages
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "none"
+  } {
+    #0 > {
+      "range"
+    } {
+      "single"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.year.bib}
+{
+  "Control: year "
+  control.year
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  duplicate$ #0 <  {
+    pop$
+    "disabled!"
+  } {
+    #0 > {
+      "truncated"
+    } {
+      "verbatim"
+    } if$
+  } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.eprint.bib}
+{
+  "Control: production of eprint "
+  control.eprint
+  duplicate$ "(" swap$ int.to.str$ * ") " * swap$
+  #0 < { "disabled" } { "enabled" } if$ * *
+  diagn.cmntlog
+}
+
+FUNCTION {control.bib}
+{
+  control.key.bib
+  control.author.bib
+  control.editor.bib
+  control.title.bib
+  control.pages.bib
+  control.year.bib
+  control.eprint.bib
+}
+
+FUNCTION {init.state.consts}
+{
+  #0 'before.all        :=
+  #1 'after.word        :=
+  #2 'after.punctuation :=
+  #3 'after.sentence    :=
+  #4 'after.block       :=
+  #0 'punctuation.no    :=
+  #1 'punctuation.space :=
+  #2 'punctuation.yes   :=
+  "" 'bibfield          :=
+  "" 'output.bibfield   :=
+}
+
+STRINGS { s t}
+FUNCTION {block.punctuation}
+{ ""
+  "," *
+}
+
+FUNCTION {word.space}
+{
+  "\ "
+}
+
+FUNCTION {show.stackstring.one}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  duplicate$ "1(" swap$ * ")" * top$
+}
+
+FUNCTION {show.stackstring.two}{
+  "(" *
+  output.state int.to.str$ *
+    "," * punctuation.state int.to.str$ *
+  ")" * top$
+  swap$
+  duplicate$ "1(" swap$ * ")" * top$
+  swap$
+  duplicate$ "2(" swap$ * ")" * top$
+}
+
+FUNCTION {bibfield.command}{ "\bibfield "}
+
+FUNCTION {output.nonnull}
+{
+  swap$
+  output.state after.word =
+    {
+      block.punctuation *
+      word.space *
+    }
+    {
+      output.state after.punctuation =
+        {
+          word.space *
+        }
+        {
+          output.state after.block = output.state after.sentence = or
+            {
+              add.period$
+              "\EOS\ " *
+            }{
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  output.bibfield duplicate$ empty$ 'pop$
+    {
+      bibfield.command
+      " {" * swap$ * "} {" * swap$ * "}" *
+    }
+  if$
+  write$
+  bibfield 'output.bibfield := "" 'bibfield :=
+  output.state after.block =
+    {
+      newline$
+      "\newblock " write$
+    }
+    'skip$
+  if$
+  punctuation.state duplicate$
+  punctuation.yes 'punctuation.state :=
+  punctuation.no =
+    { pop$ before.all }
+    { punctuation.yes = { after.word }{ after.punctuation } if$ }
+  if$
+  'output.state :=
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+    {
+      pop$
+  "" 'bibfield :=
+    }
+    'output.nonnull
+  if$
+}
+
+FUNCTION {output.nopunct}
+{
+  punctuation.no 'punctuation.state :=
+  output.nonnull
+}
+
+FUNCTION {output.check}
+{ swap$
+  duplicate$ empty$
+    { pop$ "empty " swap$ * " in " * cite$ * warning$ }
+    { swap$ pop$ output.nonnull }
+  if$
+}
+
+FUNCTION {bbl.open} { "\BibitemOpen " }
+
+FUNCTION {bbl.shut} { "\BibitemShut " }
+
+FUNCTION {bibitem.shut.stop} { bbl.shut "{Stop}%" * }
+
+FUNCTION {bibitem.shut.nostop} { bbl.shut "{NoStop}%" * }
+
+FUNCTION {bibitem.shut}
+{
+  non.stop
+    {
+  bibitem.shut.nostop *
+    }{
+  bibitem.shut.stop *
+    }
+  if$
+}
+
+FUNCTION {html.itag} {
+  "p"
+}
+
+FUNCTION {html.ltag} {
+  ""
+}
+
+FUNCTION {output.SLACcitation}
+{ SLACcitation empty$
+    'skip$
+    {
+      newline$
+      SLACcitation write$
+    }
+  if$
+}
+
+FUNCTION {fin.entry}
+{
+  bibitem.shut
+  write$
+    output.SLACcitation
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+    'skip$
+    { after.block 'output.state := }
+  if$
+}
+
+FUNCTION {new.block.comma}
+{
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block = output.state before.all = or
+    'skip$
+    { after.sentence 'output.state := }
+  if$
+}
+
+FUNCTION {new.sentence.comma}
+{
+}
+
+FUNCTION {sentence.or.colon}
+{
+  new.sentence
+}
+
+FUNCTION {add.blank}
+{
+  word.space *
+  before.all 'output.state :=
+}
+
+FUNCTION {no.blank.or.punct}
+{
+   "\hspace {0pt}" *
+   before.all 'output.state :=
+}
+
+FUNCTION {date.block}
+{
+  new.block.comma
+  skip$
+}
+
+STRINGS {z}
+FUNCTION {remove.dots}
+{
+  control.author.dotless {
+    'z :=
+    ""
+    { z empty$ not }
+    { z #1 #1 substring$
+      z #2 global.max$ substring$ 'z :=
+      duplicate$ "." = 'pop$
+        { * }
+      if$
+    }
+    while$
+  } 'skip$ if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+  swap$ empty$
+  and
+    'skip$
+    'new.block
+  if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+    { pop$ "" }
+    'skip$
+  if$
+}
+
+FUNCTION {emphasize}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+      "\emph {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bolden}
+{ duplicate$ empty$
+    { pop$ "" }
+    { "\textbf {" swap$ * "}" * }
+  if$
+}
+
+FUNCTION {bib.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {bib.fname.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\bibfnamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {cite.name.font}
+{
+  duplicate$ empty$
+    { pop$ "" }
+    {
+    "\citenamefont {" swap$ * "}" *
+    }
+  if$
+}
+
+FUNCTION {tie.or.space.prefix}
+{ duplicate$ text.length$ #3 <
+    { "~" }
+    { word.space }
+  if$
+  swap$
+}
+
+FUNCTION {capitalize}
+{
+  "u" change.case$ "t" change.case$
+}
+
+FUNCTION {space.word}
+{ word.space swap$ * word.space * }
+
+ % Here are the language-specific definitions for explicit words.
+ % Each function has a name bbl.xxx where xxx is the English word.
+ % The language selected here is ENGLISH
+
+FUNCTION {bbl.and}
+{
+  "and"
+}
+
+FUNCTION {bbl.etal}
+{
+  "et~al."
+}
+
+FUNCTION {bbl.editors}
+{
+  "eds."
+}
+
+FUNCTION {bbl.editor}
+{
+  "ed."
+}
+
+FUNCTION {bbl.edby}
+{ "edited by" }
+
+FUNCTION {bbl.edition}
+{
+  "ed."
+}
+
+FUNCTION {bbl.volume}
+{
+  "vol."
+}
+
+FUNCTION {bbl.of}
+{ "of" }
+
+FUNCTION {bbl.number}
+{
+  "no."
+}
+
+FUNCTION {bbl.nr}
+{ "no." }
+
+FUNCTION {bbl.in}
+{ "in" }
+
+FUNCTION {bbl.pages}
+{
+  "pp."
+}
+
+FUNCTION {bbl.page}
+{
+  "p."
+}
+
+FUNCTION {bbl.eidpp}
+{ "pages" }
+
+FUNCTION {bbl.chapter}
+{
+  "chap."
+}
+
+FUNCTION {bbl.techrep}
+{
+  "Tech. Rep."
+}
+
+FUNCTION {bbl.mthesis}
+{ "Master's thesis" }
+
+FUNCTION {bbl.phdthesis}
+{ "Ph.D. thesis" }
+
+FUNCTION {bbl.first}
+{
+  "1st"
+}
+
+FUNCTION {bbl.second}
+{
+  "2nd"
+}
+
+FUNCTION {bbl.third}
+{
+  "3rd"
+}
+
+FUNCTION {bbl.fourth}
+{
+  "4th"
+}
+
+FUNCTION {bbl.fifth}
+{
+  "5th"
+}
+
+FUNCTION {bbl.st}
+{ "st" }
+
+FUNCTION {bbl.nd}
+{ "nd" }
+
+FUNCTION {bbl.rd}
+{ "rd" }
+
+FUNCTION {bbl.th}
+{ "th" }
+
+MACRO {jan} {"Jan."}
+
+MACRO {feb} {"Feb."}
+
+MACRO {mar} {"Mar."}
+
+MACRO {apr} {"Apr."}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"Jun."}
+
+MACRO {jul} {"Jul."}
+
+MACRO {aug} {"Aug."}
+
+MACRO {sep} {"Sep."}
+
+MACRO {oct} {"Oct."}
+
+MACRO {nov} {"Nov."}
+
+MACRO {dec} {"Dec."}
+
+FUNCTION {bbl.url.prefix}
+{
+  "\urlprefix "
+}
+
+FUNCTION {eng.ord}
+{ duplicate$ "1" swap$ *
+  #-2 #1 substring$ "1" =
+     { bbl.th * }
+     { duplicate$ #-1 #1 substring$
+       duplicate$ "1" =
+         { pop$ bbl.st * }
+         { duplicate$ "2" =
+             { pop$ bbl.nd * }
+             { "3" =
+                 { bbl.rd * }
+                 { bbl.th * }
+               if$
+             }
+           if$
+          }
+       if$
+     }
+   if$
+}
+
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)]
+MACRO {aa}{"Astron. \& Astrophys."}
+MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."}
+MACRO {aj} {"Astron. J."}
+MACRO {aph} {"Acta Phys."}
+MACRO {advp} {"Adv. Phys."}
+MACRO {ajp} {"Amer. J. Phys."}
+MACRO {ajm} {"Amer. J. Math."}
+MACRO {amsci} {"Amer. Sci."}
+MACRO {anofd} {"Ann. Fluid Dyn."}
+MACRO {am} {"Ann. Math."}
+MACRO {ap} {"Ann. Phys. (NY)"}
+MACRO {adp} {"Ann. Phys. (Leipzig)"}
+MACRO {ao} {"Appl. Opt."}
+MACRO {apl} {"Appl. Phys. Lett."}
+MACRO {app} {"Astroparticle Phys."}
+MACRO {apj} {"Astrophys. J."}
+MACRO {apjsup} {"Astrophys. J. Suppl."}
+MACRO {apss} {"Astrophys. Space Sci."}
+MACRO {araa} {"Ann. Rev. Astron. Astrophys."}
+MACRO {baas} {"Bull. Amer. Astron. Soc."}
+MACRO {baps} {"Bull. Amer. Phys. Soc."}
+MACRO {cmp} {"Comm. Math. Phys."}
+MACRO {cpam} {"Commun. Pure Appl. Math."}
+MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"}
+MACRO {cpc} {"Comp. Phys. Comm."}
+MACRO {cqg} {"Class. Quant. Grav."}
+MACRO {cra} {"C. R. Acad. Sci. A"}
+MACRO {fed} {"Fusion Eng. \& Design"}
+MACRO {ft} {"Fusion Tech."}
+MACRO {grg} {"Gen. Relativ. Gravit."}
+MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
+MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
+MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"}
+MACRO {ip} {"Infrared Phys."}
+MACRO {irp} {"Infrared Phys."}
+MACRO {jap} {"J. Appl. Phys."}
+MACRO {jasa} {"J. Acoust. Soc. America"}
+MACRO {jcp} {"J. Comp. Phys."}
+MACRO {jetp} {"Sov. Phys.--JETP"}
+MACRO {jfe} {"J. Fusion Energy"}
+MACRO {jfm} {"J. Fluid Mech."}
+MACRO {jmp} {"J. Math. Phys."}
+MACRO {jne} {"J. Nucl. Energy"}
+MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."}
+MACRO {jnm} {"J. Nucl. Mat."}
+MACRO {jpc} {"J. Phys. Chem."}
+MACRO {jpp} {"J. Plasma Phys."}
+MACRO {jpsj} {"J. Phys. Soc. Japan"}
+MACRO {jsi} {"J. Sci. Instrum."}
+MACRO {jvst} {"J. Vac. Sci. \& Tech."}
+MACRO {nat} {"Nature"}
+MACRO {nature} {"Nature"}
+MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"}
+MACRO {nf} {"Nucl. Fusion"}
+MACRO {nim} {"Nucl. Inst. \& Meth."}
+MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."}
+MACRO {np} {"Nucl. Phys."}
+MACRO {npb} {"Nucl. Phys. B"}
+MACRO {nt/f} {"Nucl. Tech./Fusion"}
+MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"}
+MACRO {inc} {"Nuovo Cimento"}
+MACRO {nc} {"Nuovo Cimento"}
+MACRO {pf} {"Phys. Fluids"}
+MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."}
+MACRO {pfb} {"Phys. Fluids B: Plasma Phys."}
+MACRO {pl} {"Phys. Lett."}
+MACRO {pla} {"Phys. Lett. A"}
+MACRO {plb} {"Phys. Lett. B"}
+MACRO {prep} {"Phys. Rep."}
+MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
+MACRO {pp} {"Phys. Plasmas"}
+MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"}
+MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"}
+MACRO {prl} {"Phys. Rev. Lett."}
+MACRO {pr} {"Phys. Rev."}
+MACRO {physrev} {"Phys. Rev."}
+MACRO {pra} {"Phys. Rev. A"}
+MACRO {prb} {"Phys. Rev. B"}
+MACRO {prc} {"Phys. Rev. C"}
+MACRO {prd} {"Phys. Rev. D"}
+MACRO {pre} {"Phys. Rev. E"}
+MACRO {ps} {"Phys. Scripta"}
+MACRO {procrsl} {"Proc. Roy. Soc. London"}
+MACRO {rmp} {"Rev. Mod. Phys."}
+MACRO {rsi} {"Rev. Sci. Inst."}
+MACRO {science} {"Science"}
+MACRO {sciam} {"Sci. Am."}
+MACRO {sam} {"Stud. Appl. Math."}
+MACRO {sjpp} {"Sov. J. Plasma Phys."}
+MACRO {spd} {"Sov. Phys.--Doklady"}
+MACRO {sptp} {"Sov. Phys.--Tech. Phys."}
+MACRO {spu} {"Sov. Phys.--Uspeki"}
+MACRO {st} {"Sky and Telesc."}
+ % End module: physjour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)]
+MACRO {aisr} {"Adv. Space Res."}
+MACRO {ag} {"Ann. Geophys."}
+MACRO {anigeo} {"Ann. Geofis."}
+MACRO {angl} {"Ann. Glaciol."}
+MACRO {andmet} {"Ann. d. Meteor."}
+MACRO {andgeo} {"Ann. d. Geophys."}
+MACRO {andphy} {"Ann. Phys.-Paris"}
+MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."}
+MACRO {atph} {"Atm\'osphera"}
+MACRO {aao} {"Atmos. Ocean"}
+MACRO {ass}{"Astrophys. Space Sci."}
+MACRO {atenv} {"Atmos. Environ."}
+MACRO {aujag} {"Aust. J. Agr. Res."}
+MACRO {aumet} {"Aust. Meteorol. Mag."}
+MACRO {blmet} {"Bound.-Lay. Meteorol."}
+MACRO {bams} {"Bull. Amer. Meteorol. Soc."}
+MACRO {cch} {"Clim. Change"}
+MACRO {cdyn} {"Clim. Dynam."}
+MACRO {cbul} {"Climatol. Bull."}
+MACRO {cap} {"Contrib. Atmos. Phys."}
+MACRO {dsr} {"Deep-Sea Res."}
+MACRO {dhz} {"Dtsch. Hydrogr. Z."}
+MACRO {dao} {"Dynam. Atmos. Oceans"}
+MACRO {eco} {"Ecology"}
+MACRO {empl}{"Earth, Moon and Planets"}
+MACRO {envres} {"Environ. Res."}
+MACRO {envst} {"Environ. Sci. Technol."}
+MACRO {ecms} {"Estuarine Coastal Mar. Sci."}
+MACRO {expa}{"Exper. Astron."}
+MACRO {geoint} {"Geofis. Int."}
+MACRO {geopub} {"Geofys. Publ."}
+MACRO {geogeo} {"Geol. Geofiz."}
+MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."}
+MACRO {gfd} {"Geophys. Fluid Dyn."}
+MACRO {geomag} {"Geophys. Mag."}
+MACRO {georl} {"Geophys. Res. Lett."}
+MACRO {grl} {"Geophys. Res. Lett."}
+MACRO {ga} {"Geophysica"}
+MACRO {gs} {"Geophysics"}
+MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."}
+MACRO {ijawp} {"Int. J. Air Water Pollut."}
+MACRO {ijc} {"Int. J. Climatol."}
+MACRO {ijrs} {"Int. J. Remote Sens."}
+MACRO {jam} {"J. Appl. Meteorol."}
+MACRO {jaot} {"J. Atmos. Ocean. Technol."}
+MACRO {jatp} {"J. Atmos. Terr. Phys."}
+MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."}
+MACRO {jce} {"J. Climate"}
+MACRO {jcam} {"J. Climate Appl. Meteor."}
+MACRO {jcm} {"J. Climate Meteor."}
+MACRO {jcy} {"J. Climatol."}
+MACRO {jgr} {"J. Geophys. Res."}
+MACRO {jga} {"J. Glaciol."}
+MACRO {jh} {"J. Hydrol."}
+MACRO {jmr} {"J. Mar. Res."}
+MACRO {jmrj} {"J. Meteor. Res. Japan"}
+MACRO {jm} {"J. Meteor."}
+MACRO {jpo} {"J. Phys. Oceanogr."}
+MACRO {jra} {"J. Rech. Atmos."}
+MACRO {jaes} {"J. Aeronaut. Sci."}
+MACRO {japca} {"J. Air Pollut. Control Assoc."}
+MACRO {jas} {"J. Atmos. Sci."}
+MACRO {jmts} {"J. Mar. Technol. Soc."}
+MACRO {jmsj} {"J. Meteorol. Soc. Japan"}
+MACRO {josj} {"J. Oceanogr. Soc. Japan"}
+MACRO {jwm} {"J. Wea. Mod."}
+MACRO {lao} {"Limnol. Oceanogr."}
+MACRO {mwl} {"Mar. Wea. Log"}
+MACRO {mau} {"Mausam"}
+MACRO {meteor} {"``Meteor'' Forschungsergeb."}
+MACRO {map} {"Meteorol. Atmos. Phys."}
+MACRO {metmag} {"Meteor. Mag."}
+MACRO {metmon} {"Meteor. Monogr."}
+MACRO {metrun} {"Meteor. Rundsch."}
+MACRO {metzeit} {"Meteor. Z."}
+MACRO {metgid} {"Meteor. Gidrol."}
+MACRO {mwr} {"Mon. Weather Rev."}
+MACRO {nwd} {"Natl. Weather Dig."}
+MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."}
+MACRO {npg} {"Nonlin. Proc. Geophys."}
+MACRO {om} {"Oceanogr. Meteorol."}
+MACRO {ocac} {"Oceanol. Acta"}
+MACRO {oceanus} {"Oceanus"}
+MACRO {paleoc} {"Paleoceanography"}
+MACRO {pce} {"Phys. Chem. Earth"}
+MACRO {pmg} {"Pap. Meteor. Geophys."}
+MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."}
+MACRO {physzeit} {"Phys. Z."}
+MACRO {pps} {"Planet. Space Sci."}
+MACRO {pss} {"Planet. Space Sci."}
+MACRO {pag} {"Pure Appl. Geophys."}
+MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."}
+MACRO {quatres} {"Quat. Res."}
+MACRO {rsci} {"Radio Sci."}
+MACRO {rse} {"Remote Sens. Environ."}
+MACRO {rgeo} {"Rev. Geophys."}
+MACRO {rgsp} {"Rev. Geophys. Space Phys."}
+MACRO {rdgeo} {"Rev. Geofis."}
+MACRO {revmeta} {"Rev. Meteorol."}
+MACRO {sgp}{"Surveys in Geophys."}
+MACRO {sp} {"Solar Phys."}
+MACRO {ssr} {"Space Sci. Rev."}
+MACRO {tellus} {"Tellus"}
+MACRO {tac} {"Theor. Appl. Climatol."}
+MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"}
+MACRO {wrr} {"Water Resour. Res."}
+MACRO {weather} {"Weather"}
+MACRO {wafc} {"Weather Forecast."}
+MACRO {ww} {"Weatherwise"}
+MACRO {wmob} {"WMO Bull."}
+MACRO {zeitmet} {"Z. Meteorol."}
+ % End module: geojour.mbs
+ %-------------------------------------------------------------------
+ % Begin module:
+ % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)]
+
+MACRO {appopt} {"Appl. Opt."}
+MACRO {bell} {"Bell Syst. Tech. J."}
+MACRO {ell} {"Electron. Lett."}
+MACRO {jasp} {"J. Appl. Spectr."}
+MACRO {jqe} {"IEEE J. Quantum Electron."}
+MACRO {jlwt} {"J. Lightwave Technol."}
+MACRO {jmo} {"J. Mod. Opt."}
+MACRO {josa} {"J. Opt. Soc. America"}
+MACRO {josaa} {"J. Opt. Soc. Amer.~A"}
+MACRO {josab} {"J. Opt. Soc. Amer.~B"}
+MACRO {jdp} {"J. Phys. (Paris)"}
+MACRO {oc} {"Opt. Commun."}
+MACRO {ol} {"Opt. Lett."}
+MACRO {phtl} {"IEEE Photon. Technol. Lett."}
+MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."}
+MACRO {sse} {"Solid-State Electron."}
+MACRO {sjot} {"Sov. J. Opt. Technol."}
+MACRO {sjqe} {"Sov. J. Quantum Electron."}
+MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."}
+MACRO {stph} {"Sov. Phys.--Techn. Phys."}
+MACRO {stphl} {"Sov. Techn. Phys. Lett."}
+MACRO {vr} {"Vision Res."}
+MACRO {zph} {"Z. f. Physik"}
+MACRO {zphb} {"Z. f. Physik~B"}
+MACRO {zphd} {"Z. f. Physik~D"}
+
+MACRO {CLEO} {"CLEO"}
+MACRO {ASSL} {"Adv. Sol.-State Lasers"}
+MACRO {OSA}  {"OSA"}
+ % End module: photjour.mbs
+%% Copyright 1994-2007 Patrick W Daly
+MACRO {acmcs} {"ACM Comput. Surv."}
+MACRO {acta} {"Acta Inf."}
+MACRO {cacm} {"Commun. ACM"}
+MACRO {ibmjrd} {"IBM J. Res. Dev."}
+MACRO {ibmsj} {"IBM Syst.~J."}
+MACRO {ieeese} {"IEEE Trans. Software Eng."}
+MACRO {ieeetc} {"IEEE Trans. Comput."}
+MACRO {ieeetcad}
+ {"IEEE Trans. Comput. Aid. Des."}
+MACRO {ipl} {"Inf. Process. Lett."}
+MACRO {jacm} {"J.~ACM"}
+MACRO {jcss} {"J.~Comput. Syst. Sci."}
+MACRO {scp} {"Sci. Comput. Program."}
+MACRO {sicomp} {"SIAM J. Comput."}
+MACRO {tocs} {"ACM Trans. Comput. Syst."}
+MACRO {tods} {"ACM Trans. Database Syst."}
+MACRO {tog} {"ACM Trans. Graphic."}
+MACRO {toms} {"ACM Trans. Math. Software"}
+MACRO {toois} {"ACM Trans. Office Inf. Syst."}
+MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."}
+MACRO {tcs} {"Theor. Comput. Sci."}
+
+MACRO {jhep} {"J. High Energy Phys."}
+MACRO {jcap} {"J. Cosmol. Astropart. Phys."}
+MACRO {jinst} {"J. Instrum."}
+MACRO {jstat} {"J. Stat. Mech.: Theory Exp."}
+
+FUNCTION {bibinfo.command} { "\bibinfo " }
+
+FUNCTION {bibinfo.check}
+{ swap$
+  duplicate$ missing$
+    {
+      pop$
+      pop$ ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ pop$
+        }{
+          swap$
+          bibinfo.command "{" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {bibinfo.warn}
+{ swap$
+  duplicate$ missing$
+    {
+      swap$ "missing " swap$ * " in " * cite$ * warning$ pop$
+      ""
+    }{
+      duplicate$ empty$
+        {
+          swap$ "empty " swap$ * " in " * cite$ * warning$
+        }{
+          swap$
+          bibinfo.command " {" * swap$ * "} {" * swap$ * "}" *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {archiv.base}
+{
+  "https://arxiv.org/abs"
+}
+
+FUNCTION {archiv.prefix.base}
+{
+  "arXiv"
+}
+
+FUNCTION {eprint.command}
+{
+  "\Eprint "
+}
+
+FUNCTION {format.eprint.controlled}
+{
+  eprint duplicate$ empty$
+  control.eprint #1 =
+  or
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.eprint}
+{
+  eprint duplicate$ empty$
+    { pop$ "" }
+    {
+      duplicate$
+      ""
+        archive duplicate$ empty$ { pop$ archiv.base } 'skip$ if$ *
+        "/" *
+        swap$ *
+        "{" swap$ * "} " *
+      swap$
+      ""
+        archivePrefix duplicate$ empty$ { pop$ "" } { ":" * } if$ *
+        swap$ *
+        primaryClass  duplicate$ empty$ { pop$ "" } { " [" swap$ * "]" * } if$ *
+        "{" swap$ * "} " *
+      *
+      eprint.command swap$ *
+    }
+  if$
+}
+
+FUNCTION {format.translation}
+{ translation duplicate$ empty$
+    'skip$
+    { ""
+      "\translation{" * swap$ * "}" *
+      punctuation.space 'punctuation.state :=
+    }
+  if$
+}
+
+FUNCTION {format.url}
+{
+  url duplicate$ empty$
+    { pop$ "" }
+    {
+      "\url "
+      "{" * swap$ * "}" *
+    }
+  if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+FUNCTION {check.speaker}
+{ key empty$ 'skip$
+  { key nameptr int.to.str$ =
+    {
+      bolden
+    }
+      'skip$
+    if$
+  }
+  if$
+}
+
+
+STRINGS  { bibinfo}
+
+FUNCTION {format.names.fname}
+{
+  control.author.initials {
+    control.author.dotless {
+      control.author.nospace {
+        "f{}"
+      } {
+        "f{~}"
+      } if$
+    } {
+      control.author.nospace {
+        "f{.}."
+      } {
+        "f."
+      } if$
+    } if$
+  } {
+    "ff"
+  } if$
+}
+
+FUNCTION {bracify}
+{
+  "{" swap$ * "}" *
+}
+
+FUNCTION {name.comma}
+{
+  control.author.nocomma 'skip$ { "," swap$ * } if$
+}
+
+FUNCTION {format.names.format.onefont}
+{
+  "{vv~}{ll}"
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+    {
+      control.author.initials {
+        "f"
+        control.author.dotless 'skip$ {
+          "." *
+        } if$
+        "~" *
+      } {
+        "ff"
+      } if$
+      bracify
+      swap$
+    } {
+      format.names.fname
+      " " swap$ *
+      name.comma
+      bracify
+    }
+  if$
+  "jj"
+  " " swap$ *
+  name.comma
+  bracify
+  control.author.jnrlst 'skip$ 'swap$ if$
+  * *
+}
+
+FUNCTION {format.names.onefont}
+{
+  s nameptr format.names.format.onefont format.name$
+  remove.dots
+  bib.name.font
+}
+
+FUNCTION {format.names.morfont}
+{ s nameptr
+  "{vv~}{ll}" format.name$ bib.name.font
+  nameptr #1 >
+  control.author.first
+  and
+  control.author.reversed not
+  or
+  {
+    s nameptr
+    control.author.initials {
+      "f"                        % default: name + surname + comma junior
+    } {
+      "ff"
+    } if$
+    control.author.dotless 'skip$ {
+      "." *                    % nm-init   % Initials. + surname (J. F. Smith)                                           control.author.initials
+    } if$
+    bracify
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    swap$
+    *
+    s nameptr
+    "{jj}" format.name$ duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } {
+    "," *
+    s nameptr
+    format.names.fname
+    "jj"
+    " "
+    name.comma
+    control.author.jnrlst {
+      swap$ * skip$
+    } {
+      skip$ * swap$
+    } if$
+    bracify swap$ bracify swap$
+    *
+    format.name$
+    remove.dots
+    duplicate$ empty$ 'skip$
+      { bib.fname.font " " swap$ * }
+      if$
+  } if$
+  *
+}
+
+FUNCTION {names.punctuate}
+{
+  "," *
+  " " *
+}
+
+FUNCTION {format.names}
+{ 'bibinfo :=
+  duplicate$ empty$ { pop$ "" } {
+    duplicate$ num.names$
+    duplicate$ 'numnames :=
+    'namesleft :=
+    's :=
+    #1 'nameptr :=
+    ""
+      { namesleft #0 > }
+      {
+      format.names.morfont
+        bibinfo bibinfo.check
+        type$ "presentation" =
+          'check.speaker
+          'skip$
+        if$
+        't :=
+        nameptr #1 > not
+          {
+            t *
+          } {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              } {
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+              names.punctuate
+                t "others" =
+                  {
+                    " " *
+                    bbl.etal
+                    emphasize
+                    *
+                  } {
+                    bbl.and
+                    word.space * *
+                    t *
+                  }
+                if$
+              }
+            if$
+          }
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+  } if$
+}
+
+FUNCTION {format.names.ed.onefont}
+{
+    s nameptr
+    control.author.initials {
+      control.author.dotless {
+        control.author.nospace {
+          "{f{}~}{vv~}{ll}{ jj}"   % nm-rvx|nm-rvcx
+        } {
+          "{f{~}~}{vv~}{ll}{ jj}"  % nm-rv
+        } if$
+      } {
+        control.author.nospace {
+          "{f{.}.~}{vv~}{ll}{ jj}" % nm-rvv|nm-rvvc
+        }{
+          "{f.~}{vv~}{ll}{, jj}"   % nm-init|nm-rev|nm-rev1
+        } if$
+      } if$
+    } {
+      "{ff~}{vv~}{ll}{, jj}"
+    } if$
+    format.name$
+    remove.dots
+    bib.name.font
+}
+
+FUNCTION {format.names.ed.morfont}
+{
+  control.author.reversed { %
+    control.author.initials { %
+      control.author.dotless { %
+        s nameptr
+        control.author.nospace { % nm-rvx nm-rvcx
+          "{f{}}"
+        } { % nm-rv
+          "{f{~}}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        remove.dots
+        duplicate$ empty$ 'skip$
+          { bib.fname.font " " swap$ * }
+        if$
+      } { % !control.author.dotless
+        s nameptr
+        control.author.nospace { % nm-rvv
+          "{ff}"
+        } { % nm-rev nm-rev1
+          "{f.}"
+        } if$
+        format.name$ duplicate$ empty$ 'skip$
+          { tie.or.space.prefix bib.fname.font swap$ * }
+        if$
+        s nameptr
+        "{vv~}{ll}" format.name$ bib.name.font *
+        s nameptr
+        "{jj}" format.name$
+        duplicate$ empty$ 'skip$
+          { bib.fname.font ", " swap$ * }
+        if$
+      } if$
+    } { % Full names !control.author.initials  nm-revf nm-revv1
+      s nameptr
+      "{ff}"
+      format.name$ duplicate$ empty$ 'skip$
+        { tie.or.space.prefix bib.fname.font swap$ * }
+      if$
+      s nameptr
+      "{vv~}{ll}" format.name$ bib.name.font *
+      s nameptr
+      "{jj}" format.name$
+      duplicate$ empty$ 'skip$
+        { bib.fname.font ", " swap$ * }
+      if$
+    } if$
+  } { % !control.author.reversed nm-init
+    s nameptr
+    "{f.}"
+    format.name$ duplicate$ empty$ 'skip$
+      { tie.or.space.prefix bib.fname.font swap$ * }
+    if$
+    s nameptr
+    "{vv~}{ll}" format.name$ bib.name.font *
+    s nameptr
+    "{jj}" format.name$
+    duplicate$ empty$ 'skip$
+      { bib.fname.font ", " swap$ * }
+    if$
+  } if$
+  *
+}
+
+FUNCTION {format.names.ed}
+{
+  control.editor #0 > {
+    format.names
+  } {
+    'bibinfo :=
+    duplicate$ empty$ 'skip$ {
+    's :=
+    "" 't :=
+    #1 'nameptr :=
+    s num.names$ 'numnames :=
+    numnames 'namesleft :=
+      { namesleft #0 > }
+      {
+       format.names.ed.morfont
+        bibinfo bibinfo.check
+        't :=
+        nameptr #1 >
+          {
+            namesleft #1 >
+              {
+                names.punctuate
+                t *
+              }{
+                s nameptr "{ll}" format.name$ duplicate$ "others" =
+                  { 't := }
+                  { pop$ }
+                if$
+                numnames #2 >
+                  'names.punctuate
+                  'skip$
+                if$
+                t "others" =
+                  {
+                    " " * bbl.etal emphasize *
+                  }{
+                   bbl.and
+                    space.word * t *
+                  }
+                if$
+              }
+            if$
+          }
+          't
+        if$
+        nameptr #1 + 'nameptr :=
+        namesleft #1 - 'namesleft :=
+      }
+    while$
+    } if$
+  } if$
+}
+
+FUNCTION {format.key}
+{ empty$
+    { key field.or.null }
+    { "" }
+  if$
+}
+
+FUNCTION {format.authors}
+{ author "author" format.names
+  duplicate$ empty$ 'skip$
+    { collaboration "collaboration" bibinfo.check
+      duplicate$ empty$ 'skip$
+        { " (" swap$ * ")" * }
+      if$
+      *
+    }
+  if$
+  "author" 'bibfield :=
+}
+
+FUNCTION {get.bbl.editor}
+{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$
+}
+
+FUNCTION {format.editors}
+{ editor "editor" format.names duplicate$ empty$ 'skip$
+    {
+      "," *
+      word.space *
+      get.bbl.editor
+      capitalize
+      *
+    }
+  if$
+}
+
+FUNCTION {format.isbn.output}
+{
+}
+
+FUNCTION {format.issn.output}
+{ 
+}
+
+FUNCTION {doi.base}
+{
+  "https://doi.org/"
+}
+
+FUNCTION {doi.base.command}
+{
+  "\doibase "
+}
+
+FUNCTION {noop.command}
+{
+  "\href at noop "
+}
+
+FUNCTION {href.command}
+{
+  "\href "
+}
+
+FUNCTION {link.tag.open}
+{
+  doi duplicate$ empty$
+    {
+      pop$
+      url duplicate$ empty$
+        {
+          pop$ "" noop.command
+        }{
+          href.command
+        }
+      if$
+    }
+    {
+      "https://doi.org/" swap$ * 
+      href.command
+    }
+  if$
+  "{" * swap$ * "} {" *
+}
+
+FUNCTION {link.tag.shut}
+{
+  "}"
+}
+
+FUNCTION {link.open}
+{
+  link.tag.open output.nopunct
+}
+
+FUNCTION {link.shut}
+{
+  link.tag.shut *
+}
+
+FUNCTION {add.doi}
+{
+  link.tag.open swap$ * link.tag.shut *
+}
+
+FUNCTION {select.language}
+{ duplicate$ empty$
+    'pop$
+    { language empty$
+        'skip$
+        { "{\selectlanguage {" language * "}" * swap$ * "}" * }
+      if$
+    }
+    if$
+}
+
+FUNCTION {format.note}
+{
+ note empty$
+    { "" }
+    { note #1 #1 substring$
+      duplicate$ "{" =
+        'skip$
+        {
+          output.state after.word = output.state after.punctuation = or
+            { "l" }
+            { "u" }
+          if$ change.case$
+        }
+      if$
+      note #2 global.max$ substring$ * "note" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {bbl.enquote}
+{
+  "\enquote "
+}
+
+FUNCTION {string.enquote}
+{
+  punctuation.no 'punctuation.state :=
+  non.stop {
+    block.punctuation
+  } { "" } if$
+   swap$ pop$
+  *
+  bbl.enquote "{" * swap$ * "}" *
+  word.space *
+}
+
+FUNCTION {format.title}
+{ title
+  duplicate$ empty$ 'skip$ { "t" change.case$ } if$
+  duplicate$ "title" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      string.enquote
+      select.language
+    }
+  if$
+}
+
+FUNCTION {end.quote.title}
+{ title empty$
+    'skip$
+    { before.all 'output.state := }
+  if$
+}
+
+FUNCTION {format.name.apply}
+{
+  s nameptr
+  "{vv~}{ll}"
+  format.name$
+  cite.name.font
+}
+
+FUNCTION {format.full.names}
+{
+  's :=
+  "" 't :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { format.name.apply
+      't :=
+      nameptr #1 >
+        {
+          namesleft #1 >
+            { ", " * t * }
+            {
+              s nameptr "{ll}" format.name$ duplicate$ "others" =
+                {
+                  't :=
+                }
+                'pop$
+              if$
+              t "others" =
+                {
+                  " " * bbl.etal
+                  emphasize *
+                }{
+                  numnames #2 > { "," * }{ skip$ } if$
+                  bbl.and
+                  space.word * t *
+                }
+              if$
+            }
+          if$
+        }
+        't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {make.full.names}
+{
+  key editor author
+  type$ "proceedings" =
+  type$ "book"        =
+  type$ "inbook"      =
+  or { pop$ }{ { pop$ "" }{ swap$ pop$ "" swap$ } if$ } if$
+  duplicate$ empty$
+    { pop$
+      duplicate$ empty$
+        { pop$
+          duplicate$ empty$
+            { pop$
+              cite$ #1 #3 substring$
+            }{
+              skip$
+            }
+          if$
+        }
+        { swap$ pop$ format.full.names }
+      if$
+    }
+    { swap$ pop$ swap$ pop$ format.full.names }
+  if$
+}
+
+FUNCTION {year.bibitem}
+{
+  year duplicate$ empty$
+  { pop$ ""
+    "????" *
+  }{
+    skip$
+  } if$
+  extra.label *
+}
+
+FUNCTION {output.bibitem}
+{
+  newline$
+  ""
+  label
+  * ")" *
+   make.full.names duplicate$ short.list =
+   { pop$ }{ * } if$
+   bracify
+  "[" swap$ * "]" *
+  cite$ bracify "%" *
+  *
+  "\bibitem "
+  swap$ *
+  write$ newline$
+  "  "
+  duplicate$ bbl.open * write$ newline$
+  before.all 'output.state :=
+  punctuation.yes 'punctuation.state :=
+}
+
+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 {word.in}
+{
+  bbl.in
+  word.space *
+}
+
+FUNCTION {date.encapsulate}
+{
+  duplicate$ empty$
+    'skip$
+    {
+      before.all 'output.state :=
+      " (" swap$ * ")" *
+    }
+  if$
+}
+
+FUNCTION {format.date}
+{
+  year "year" bibinfo.check duplicate$ empty$
+    {
+      "empty year in " cite$ * "; set to ????" * warning$
+       pop$ "????"
+    }
+    'skip$
+  if$
+  extra.label *
+  date.encapsulate
+}
+
+FUNCTION {format.date.output.check}
+{
+ format.date
+ "year" output.check
+}
+
+FUNCTION {format.date.output}
+{
+  format.date.output.check
+}
+
+FUNCTION {format.btitle}
+{
+  booktitle duplicate$ empty$ { pop$
+      title
+  } 'skip$ if$
+  "title" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {either.or.check}
+{ empty$
+    'pop$
+    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+  if$
+}
+
+FUNCTION {editor.check.book}
+{ editor empty$ 'skip$
+    {
+      "can't use both author and editor fields in " cite$ *
+      ": try using @inbook instead" *
+      warning$
+    }
+  if$
+}
+
+FUNCTION {format.bvolume}
+{ volume duplicate$ empty$
+    { pop$ "" }
+    {
+      "volume and number" number either.or.check
+      bbl.volume
+      capitalize
+      swap$
+      tie.or.space.prefix "volume" bibinfo.check * *
+      series "series" bibinfo.check duplicate$ empty$ 'pop$
+        {
+          ", "
+          * swap$ *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.number}
+{
+  bbl.number
+  output.state after.word = output.state after.punctuation = or
+  #1 or
+  #0 and
+    'skip$
+    { capitalize }
+  if$
+  number tie.or.space.prefix "number" bibinfo.check * *
+}
+
+FUNCTION {format.number.series}
+{ volume empty$
+    { number empty$
+        { series field.or.null }
+        {
+          series empty$
+            {
+              number "number" bibinfo.check
+            }{
+              format.number
+              series "series" bibinfo.check
+              word.space * swap$ *
+            }
+          if$
+        }
+      if$
+    }
+    { "" }
+  if$
+}
+
+FUNCTION {is.num}
+{ chr.to.int$
+  duplicate$ "0" chr.to.int$ < not
+  swap$ "9" chr.to.int$ > not and
+}
+
+FUNCTION {extract.num}
+{ duplicate$ 't :=
+  "" 's :=
+  { t empty$ not }
+  { t #1 #1 substring$
+    t #2 global.max$ substring$ 't :=
+    duplicate$ is.num
+      { s swap$ * 's := }
+      { pop$ "" 't := }
+    if$
+  }
+  while$
+  s empty$
+    'skip$
+    { pop$ s }
+  if$
+}
+
+FUNCTION {convert.edition}
+{ extract.num "l" change.case$ 's :=
+  s "first" = s "1" = or
+    { bbl.first 't := }
+    { s "second" = s "2" = or
+        { bbl.second 't := }
+        { s "third" = s "3" = or
+            { bbl.third 't := }
+            { s "fourth" = s "4" = or
+                { bbl.fourth 't := }
+                { s "fifth" = s "5" = or
+                    { bbl.fifth 't := }
+                    { s #1 #1 substring$ is.num
+                        { s
+                            eng.ord
+                        't := }
+                        { edition 't := }
+                      if$
+                    }
+                  if$
+                }
+              if$
+            }
+          if$
+        }
+      if$
+    }
+  if$
+  t
+}
+
+FUNCTION {format.edition}
+{ edition duplicate$ empty$ 'skip$
+    {
+      convert.edition
+      output.state after.word = output.state after.punctuation = or
+        { "l" }
+        { "t" }
+      if$ change.case$
+      "edition" bibinfo.check
+      word.space * bbl.edition *
+    }
+  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 duplicate$ empty$
+    'skip$
+    { duplicate$ multi.page.check
+        {
+          bbl.pages swap$
+          n.dashify
+        }{
+          bbl.page swap$
+        }
+      if$
+      tie.or.space.prefix
+      "pages" bibinfo.check
+      * *
+    }
+  if$
+}
+
+FUNCTION {first.page}
+{ 't :=
+  ""
+    {  t empty$ not t #1 #1 substring$ "-" = not and }
+    { t #1 #1 substring$ *
+      t #2 global.max$ substring$ 't :=
+    }
+  while$
+}
+
+FUNCTION {format.book.pages}
+{
+  pages duplicate$ empty$ 'skip$
+    {
+      "pages" bibinfo.check word.space bbl.pages * *
+    }
+  if$
+}
+
+FUNCTION {volnum.punct}
+{
+          ","
+  word.space *
+}
+
+FUNCTION {format.journal.pages}
+{ pages duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$
+        { pop$ pop$ format.pages }
+        { volnum.punct *
+          swap$
+          control.pages duplicate$ #0 < {
+            pop$ pop$
+          }{
+            #0 >
+            {
+              n.dashify
+            }{
+              first.page
+            } if$
+          } if$
+          "pages" bibinfo.check
+          *
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.journal.eid}
+{ eid "eid" bibinfo.check
+  duplicate$ empty$ 'pop$
+    { swap$ duplicate$ empty$ 'skip$
+        { volnum.punct * }
+      if$
+      swap$ *
+    }
+  if$
+}
+
+FUNCTION {eid.or.pages}
+{
+  eid empty$
+    { format.journal.pages }
+    { format.journal.eid }
+  if$
+}
+
+FUNCTION {format.ser.vol.num}
+{
+  series "series" bibinfo.check output
+  volume field.or.null
+  duplicate$ empty$ 'skip$
+    {
+      "volume" bibinfo.check
+    }
+  if$
+  bolden
+  number "number" bibinfo.check duplicate$ empty$ 'skip$
+    {
+      swap$ duplicate$ empty$
+        { "there's a number but no volume in " cite$ * warning$ }
+        'skip$
+      if$
+      swap$
+      "~(" swap$ * ")" *
+    }
+  if$ *
+}
+
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+    {
+      ""
+    }
+    { type empty$
+        {
+          bbl.chapter
+          capitalize
+        }{
+          type
+          capitalize
+          "type" bibinfo.check
+        }
+      if$
+      chapter tie.or.space.prefix
+      "chapter" bibinfo.check
+      * *
+    }
+  if$
+}
+
+FUNCTION {format.booktitle}
+{
+  booktitle duplicate$ "booktitle" bibinfo.check swap$
+  duplicate$ empty$ 'pop$
+    {
+      punctuation.yes 'punctuation.state :=
+      pop$ emphasize
+      select.language
+    }
+  if$
+}
+
+FUNCTION {format.editor.in}
+{
+  editor "editor" format.names.ed duplicate$ empty$ 'skip$
+    {
+      bbl.edby
+      word.space * swap$ *
+    }
+  if$
+}
+
+FUNCTION {output.article.booktitle}
+{
+  format.booktitle
+      "booktitle" 'bibfield :=
+  output
+  bookaddress "address" bibinfo.check duplicate$ empty$ 'pop$
+    {
+      "address" 'bibfield :=
+      output.nonnull after.punctuation 'output.state :=
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      format.editor.in "editor" bibinfo.check output
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle.inbook}
+{
+  format.booktitle duplicate$ empty$ 'pop$
+    {
+      add.doi
+      word.in swap$ * output.nonnull
+      bookaddress "address" bibinfo.check output
+      format.number.series "series and number" bibinfo.check output
+      format.bvolume output
+      author empty$ 'skip$
+        { format.editor.in "editor" bibinfo.check output }
+    if$
+    }
+  if$
+}
+
+FUNCTION {format.thesis.type}
+{ type duplicate$ empty$
+    'pop$
+    { swap$ pop$
+      "t" change.case$ "type" bibinfo.check
+    }
+  if$
+}
+
+FUNCTION {format.tr.number}
+{ number "number" bibinfo.check
+  type duplicate$ empty$
+    { pop$ bbl.techrep }
+    'skip$
+  if$
+  "type" bibinfo.check
+  swap$ duplicate$ empty$
+    { pop$ "t" change.case$ }
+    { tie.or.space.prefix * * }
+  if$
+}
+
+FUNCTION {format.article.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.book.crossref}
+{ volume duplicate$ empty$
+    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+      pop$ word.in
+    }
+    { bbl.volume
+      swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word *
+    }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{
+  word.in
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.org.or.pub}
+{ 't :=
+  ""
+  address "address" bibinfo.check
+  duplicate$ empty$
+    { pop$ t }
+    { t duplicate$ empty$
+        { pop$ }
+        {
+          "," word.space *
+          * swap$ *
+        }
+      if$
+    }
+  if$
+  *
+  duplicate$ empty$ 'skip$ {
+    ""
+    "(" * swap$ * ")" *
+    after.punctuation 'output.state :=
+    punctuation.space 'punctuation.state :=
+  } if$
+}
+
+FUNCTION {format.publisher.address}
+{ publisher "publisher" bibinfo.warn format.org.or.pub
+}
+
+FUNCTION {format.organization.address}
+{ organization "organization" bibinfo.check format.org.or.pub
+}
+
+FUNCTION {format.organization.publisher.address}
+{
+  publisher empty$
+    { format.organization.address }
+    { organization "organization" bibinfo.check output
+      format.publisher.address
+    }
+  if$
+}
+
+FUNCTION {format.school.address.output}
+{
+  school  "school"  bibinfo.warn
+  address "address" bibinfo.check
+  duplicate$ empty$ 'skip$
+    {
+      swap$
+      duplicate$ empty$ 'skip$
+        {
+          ", " *
+        }
+      if$
+      swap$
+    }
+  if$
+  *
+  duplicate$ empty$ 'skip$ { "(" swap$ * ")" * } if$ after.punctuation 'output.state :=
+  output
+}
+
+FUNCTION {article.title.produce}
+{
+  control.title duplicate$ #0 <
+  { pop$
+  }{
+    format.title
+    "title" 'bibfield :=
+    swap$ #0 >
+    {
+      "title" output.check
+    }{
+      output
+    } if$
+    new.block.comma
+  } if$
+}
+
+FUNCTION {control}
+{
+}
+
+FUNCTION {article}
+{ output.bibitem
+  format.authors
+  booktitle empty$ {
+      "author" output.check
+    }{ output } if$
+  author format.key output
+  format.date.output.check date.block
+  article.title.produce
+  output.article.booktitle
+  crossref missing$
+    {
+      link.open
+      journal
+      "journal" bibinfo.warn
+      "journal" 'bibfield :=
+      output
+      add.blank
+      format.ser.vol.num
+      output
+      eid.or.pages
+      pages empty$ {
+      doi output
+      } 'skip$ if$
+      link.shut
+    }{
+      format.article.crossref output.nonnull
+      eid.or.pages
+    }
+  if$
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint.controlled output
+  format.translation output
+  fin.entry
+}
+
+FUNCTION {book}
+{ output.bibitem
+  author empty$
+    {
+      format.editors "author and editor" output.check
+      editor format.key output
+    }{
+      format.authors output.nonnull
+%     crossref missing$ { editor.check.book } 'skip$ if$
+    }
+  if$
+  format.date.output.check date.block
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+  format.edition output
+  author empty$
+    {
+    }
+    {
+      format.editor.in output
+      editor format.key output
+    }
+  if$
+  format.number.series output
+  crossref missing$
+    {
+      format.bvolume output
+      new.block.comma
+      format.publisher.address output
+    }{
+      new.block.comma
+      format.book.crossref output.nonnull
+    }
+  if$
+  format.isbn.output
+  format.chapter.pages
+  output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {booklet}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  format.date.output date.block
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  address "address" bibinfo.check output
+  format.isbn.output
+  format.book.pages output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {footnote}
+{ output.bibitem
+  format.note output
+  fin.entry
+}
+
+FUNCTION {inbook}
+{ output.bibitem
+  author empty$
+    {
+       format.editors "editor" output.check
+       editor format.key output
+    }{
+       format.authors output.nonnull
+       author format.key output
+    }
+  if$
+  format.date.output.check date.block
+
+  format.title output
+  new.block.comma
+
+  crossref missing$
+    {
+      format.in.ed.booktitle.inbook
+      format.chapter.pages
+      "chapter"
+      output.check
+      new.block.comma
+      format.edition output
+      new.block.comma
+      format.publisher.address output
+    }{
+      format.chapter.pages
+      "chapter"
+      output.check
+      new.block.comma
+      format.book.crossref output.nonnull
+    }
+  if$
+  crossref missing$
+    { format.isbn.output }
+    'skip$
+  if$
+  format.pages "pages" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {incollection}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  format.date.output.check date.block
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.edition output
+      format.chapter.pages output
+      format.publisher.address output
+      format.isbn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  format.pages "pages" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {inproceedings}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  format.date.output.check date.block
+  article.title.produce
+  crossref missing$
+    {
+      format.in.ed.booktitle
+      format.organization.publisher.address output
+      format.isbn.output
+      format.issn.output
+    }{
+      format.incoll.inproc.crossref output.nonnull
+    }
+  if$
+  format.chapter.pages "chapter and pages" output.check
+  format.pages "pages" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {conference} { inproceedings }
+FUNCTION {manual}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  format.date.output date.block
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      organization "organization" bibinfo.check output
+      address "address" bibinfo.check output
+  format.edition output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {mastersthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  format.date.output.check date.block
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.mthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {misc}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  format.date.output
+  date.block
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  howpublished "howpublished" bibinfo.check output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {phdthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  format.date.output.check date.block
+  format.btitle
+  output
+  new.block.comma
+  link.open
+  bbl.phdthesis
+  format.thesis.type
+  output.nonnull
+  link.shut
+  format.school.address.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {presentation}
+{ output.bibitem
+  format.authors output
+  author format.key output
+  new.block.comma
+  link.open
+  format.title
+  output
+  link.shut
+  new.block.comma
+  format.organization.address "organization and address" output.check
+  month "month" output.check
+  year "year" output.check
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  new.sentence
+  type missing$ 'skip$
+    {"(" type capitalize * ")" * output}
+  if$
+  fin.entry
+}
+
+FUNCTION {proceedings}
+{ output.bibitem
+  format.editors output
+  editor format.key output
+  format.date.output.check date.block
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+      bookaddress "address" bibinfo.check output
+  format.number.series output
+  format.bvolume output
+  format.organization.publisher.address output
+  format.isbn.output
+  format.issn.output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {techreport}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  format.date.output.check date.block
+  link.open
+  format.btitle
+  "title" output.check
+  link.shut
+  new.block.comma
+  format.tr.number
+  output.nonnull
+  institution "institution" bibinfo.warn
+  format.org.or.pub output
+  new.block.comma
+  new.sentence.comma
+  format.note output
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {unpublished}
+{ output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  format.date.output date.block
+  link.open
+  format.title
+  "title" output.check
+  link.shut
+  new.block.comma
+  new.sentence.comma
+  format.note "note" output.check
+  format.eprint output
+  fin.entry
+}
+
+FUNCTION {dataset}
+{ 
+  output.bibitem
+  format.authors "author" output.check
+  author format.key output
+  format.date.output date.block
+  article.title.produce
+  doi missing$
+  url missing$ not and
+  {
+    link.open
+    url "url" output.check
+    link.shut
+  }
+  {
+    link.open
+    doi "doi" output.check
+    link.shut
+  } if$
+  format.note output
+  fin.entry
+}
+
+FUNCTION {default.type} { misc }
+
+READ
+
+EXECUTE {control.init}
+
+ITERATE {control.pass}
+
+EXECUTE {control.check}
+
+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 {cite.name.font.apply}
+{
+  word.space * bbl.etal
+  emphasize
+  *
+}
+
+FUNCTION {format.lab.names}
+{ 's :=
+  "" 't :=
+  #1 'nameptr :=
+  format.name.apply
+  s num.names$ duplicate$
+  #2 >
+    { pop$
+      cite.name.font.apply
+    }{
+      #2 <
+        'skip$
+        {
+          s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+            {
+              cite.name.font.apply
+            }{
+              bbl.and space.word *
+              s #2 "{vv~}{ll}" format.name$
+              cite.name.font
+              *
+            }
+          if$
+        }
+      if$
+    }
+  if$
+}
+
+FUNCTION {author.key.label}
+{ author empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {author.editor.key.label}
+{ author empty$
+    { editor empty$
+        { key empty$
+            { cite$ #1 #3 substring$ }
+            'key
+          if$
+        }
+        { editor format.lab.names }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {editor.key.label}
+{ editor empty$
+    { key empty$
+        { cite$ #1 #3 substring$ }
+        'key
+      if$
+    }
+    { editor format.lab.names }
+  if$
+}
+
+FUNCTION {calc.short.authors}
+{ type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.key.label
+    { type$ "proceedings" =
+        'editor.key.label
+        'author.key.label
+      if$
+    }
+  if$
+  'short.list :=
+}
+
+FUNCTION {calc.label}
+{
+  calc.short.authors
+  short.list
+  year duplicate$ empty$
+  short.list key field.or.null = or
+    {
+      pop$ ""
+       "????" *
+    }{
+      control.year #0 > { purify$ #-1 #4 substring$ } 'skip$ if$
+    }
+  if$
+  "(" swap$ * 
+  * 'label :=
+}
+
+FUNCTION {sort.format.names}
+{ 's :=
+  #1 'nameptr :=
+  ""
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { s nameptr
+      "{ll{ }}"
+      control.author.initials {
+        "{  f{ }}"  *
+      }{
+        "{  ff{ }}" *
+      } if$
+      "{  jj{ }}" *
+      format.name$ 't :=
+      nameptr #1 >
+        {
+          "   "  *
+          namesleft #1 = t "others" = and
+            { "zzzzz" * }
+            {
+              t sortify *
+            }
+          if$
+        }
+        { 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 {author.editor.sort}
+{ author empty$
+    { 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 {year.sort.key}
+{
+  year
+}
+
+FUNCTION {editor.sort}
+{ editor empty$
+    { key empty$
+        { "to sort, need editor or key in " cite$ * warning$
+          ""
+        }
+        { key sortify }
+      if$
+    }
+    { editor sort.format.names }
+  if$
+}
+
+INTEGERS { seq.num }
+
+FUNCTION {init.seq}
+{ #0 'seq.num :=}
+
+EXECUTE {init.seq}
+
+FUNCTION {int.to.fix}
+{ "000000000" swap$ int.to.str$ *
+  #-1 #10 substring$
+}
+
+FUNCTION {label.presort}
+{
+  calc.label
+  label sortify
+  "    "
+  *
+  type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.sort
+    { type$ "proceedings" =
+        'editor.sort
+        'author.sort
+      if$
+    }
+  if$
+  #1 entry.max$ substring$
+  'sort.label :=
+  sort.label
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {presort.pass}
+{ type$ "control" = 'control.presort 'label.presort if$
+}
+
+ITERATE {presort.pass}
+
+SORT
+
+STRINGS { last.label next.extra }
+
+INTEGERS { last.extra.num number.label }
+
+FUNCTION {initialize.extra.label.stuff}
+{ #0 int.to.chr$ 'last.label :=
+  "" 'next.extra :=
+  #0 'last.extra.num :=
+  #0 'number.label :=
+}
+
+FUNCTION {label.forward}
+{
+  last.label label =
+    { last.extra.num #1 + 'last.extra.num :=
+      last.extra.num int.to.chr$ 'extra.label :=
+    }
+    { "a" chr.to.int$ 'last.extra.num :=
+      "" 'extra.label :=
+      label 'last.label :=
+    }
+  if$
+  number.label #1 + 'number.label :=
+}
+
+FUNCTION {label.reverse}
+{ next.extra "b" =
+    { "a" 'extra.label := }
+    'skip$
+  if$
+  extra.label 'next.extra :=
+  extra.label
+  duplicate$ empty$
+    'skip$
+    { "{\natexlab{" swap$ * "}}" * }
+  if$
+  'extra.label :=
+  label extra.label * 'label :=
+}
+
+EXECUTE {initialize.extra.label.stuff}
+
+FUNCTION {forward.pass}
+{ type$ "control" = 'control.forward 'label.forward if$
+}
+
+ITERATE {forward.pass}
+
+FUNCTION {reverse.pass}
+{ type$ "control" = 'control.reverse 'label.reverse if$
+}
+
+REVERSE {reverse.pass}
+
+FUNCTION {sortkey.sort}
+{ sort.label
+  "    "
+  *
+  year.sort.key
+  field.or.null sortify
+  *
+  "    "
+  *
+  title field.or.null sort.format.title
+  *
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+FUNCTION {bib.sort.pass}
+{ type$ "control" = 'control.sort 'sortkey.sort if$
+}
+
+ITERATE {bib.sort.pass}
+
+SORT
+
+FUNCTION {init.bib.eprint}
+{
+    "\texttt {"
+  pop$
+  "\providecommand \url  [0]{\begingroup\@sanitize at url \@url }%" write$ newline$
+  "\providecommand \@url [1]{\endgroup\@href {#1}{" "}}%" bbl.url.prefix swap$ * * write$ newline$
+  "\providecommand " " [0]{URL }%" bbl.url.prefix swap$ * * write$ newline$
+  eprint.command "\providecommand " swap$ * "[0]{\href }%" * write$ newline$
+}
+
+FUNCTION {init.bib.doi}
+{
+  "\providecommand \doibase [0]{" doi.base "}%" * * write$ newline$
+}
+
+FUNCTION {init.bib.hypertex}
+{
+  "\providecommand " noop.command "[0]{\@secondoftwo}%" * * write$ newline$
+  "\providecommand " href.command "[0]{\begingroup \@sanitize at url \@href}%" * * write$ newline$
+  "\providecommand \@href[1]{\@@startlink{#1}\@@href}%" write$ newline$
+  "\providecommand \@@href[1]{\endgroup#1\@@endlink}%" write$ newline$
+  "\providecommand \@sanitize at url [0]{\catcode `\\12\catcode `\$12\catcode `\&12\catcode `\#12\catcode `\^12\catcode `\_12\catcode `\%12\relax}%" write$ newline$
+  "\providecommand \@@startlink[1]{}%" write$ newline$
+  "\providecommand \@@endlink[0]{}%"   write$ newline$
+}
+
+FUNCTION {init.bib.namefont}
+{
+  "\providecommand \bibnamefont  [1]{#1}%"  write$ newline$
+  "\providecommand \bibfnamefont [1]{#1}%" write$ newline$
+  "\providecommand \citenamefont [1]{#1}%"  write$ newline$
+}
+
+FUNCTION {init.bib.quote}
+{
+  "\providecommand " bbl.enquote * " [1]{" *
+  "``" "''"
+  "#1" swap$ "}%" * * * * write$ newline$
+}
+
+FUNCTION {init.bib.ay}
+{
+  "\providecommand \natexlab [1]{#1}%"
+  write$ newline$
+}
+
+FUNCTION {init.bib.bibinfo}
+{
+  bibinfo.command  "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+  bibfield.command "\providecommand " swap$ * " [0]{\@secondoftwo}%" * write$ newline$
+}
+
+FUNCTION {init.bib.lang}
+{
+  "\providecommand \selectlanguage [0]{\@gobble}%" write$ newline$
+}
+
+FUNCTION {init.bib.endbibitem}
+{
+  "\providecommand " bbl.open * "[0]{}%" *           write$ newline$
+  "\providecommand \bibitemStop [0]{}%"               write$ newline$
+  "\providecommand \bibitemNoStop [0]{.\EOS\space}%"  write$ newline$
+  "\providecommand \EOS [0]{\spacefactor3000\relax}%"   write$ newline$
+}
+
+FUNCTION {init.bib.translation}
+{
+  "\providecommand \translation [1]{[#1]}%" write$ newline$
+}
+
+FUNCTION {warn.bib}
+{
+}
+
+FUNCTION {init.bib}
+{
+  warn.bib
+  "\makeatletter" write$ newline$
+  "\providecommand \@ifxundefined [1]{%"   write$ newline$
+  " \@ifx{#1\undefined}"                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifnum [1]{%"          write$ newline$
+  " \ifnum #1\expandafter \@firstoftwo"    write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  "\providecommand \@ifx [1]{%"            write$ newline$
+  " \ifx #1\expandafter \@firstoftwo"      write$ newline$
+  " \else \expandafter \@secondoftwo"      write$ newline$
+  " \fi"                                   write$ newline$
+  "}%"                                     write$ newline$
+  init.bib.ay
+  init.bib.quote
+  init.bib.namefont
+  init.bib.hypertex
+  init.bib.eprint
+  init.bib.doi
+  init.bib.lang
+  init.bib.bibinfo
+  init.bib.translation
+  init.bib.endbibitem
+  "\providecommand " bbl.shut * " [1]{\csname bibitem#1\endcsname}%" * write$ newline$
+  "\let\auto at bib@innerbib\@empty"          write$ newline$
+  "%</preamble>" write$
+}
+
+FUNCTION {begin.bib}
+{
+  id.bst diagn.cmntlog
+  control.bib
+  preamble$ empty$
+    'skip$
+    { preamble$ write$ newline$ }
+  if$
+  "\begin{thebibliography}{"
+  number.label int.to.str$
+  * "}%" *
+  write$ newline$
+  init.bib
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+  "\end{thebibliography}%"
+  write$ newline$
+}
+
+EXECUTE {end.bib}
+
+%% End of customized bst file
+%%
+%% End of file `apsrmp4-2.bst'.


Property changes on: trunk/Master/texmf-dist/bibtex/bst/revtex/apsrmp4-2.bst
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/doc/latex/revtex/00readme.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/00readme.tex	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/00readme.tex	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,165 +0,0 @@
-\title{%
- The \classname{revtex4-1} document class of the American Physical Society%
- \protect\thanks{Work under hire to The American Physical Society.}%
-}%
-\author{Arthur Ogawa%
- \protect\thanks{First revision of REV\TeX4.0 (unreleased) by David Carlisle}%
-}%
-\date{Version \fileversion, dated \filedate}%
-\newcommand\revtex{REV\TeX}
-
-\maketitle
-
-This file embodies the implementation of the APS \revtex\ 4.1 document class
-for electronic submissions to journals.
-
-The distribution point for this work is
-\url{http://publish.aps.org/revtex4/},
-which contains fully unpacked, prebuilt runtime files and documentation.
-
-\tableofcontents
-
-\section{Using \protect\revtex}
-
-The file \file{README} has retrieval and installation information.
-
-User documentation is presented separately in \file{auguide.tex}.
-
-The file \file{template.aps} is a boilerplate file.
-
-\changes{4.0a}{1998/01/16}{Initial version}
-\changes{4.0a}{1998/01/31}{Move after process options, so \cs{clearpage} not in scope of twocolumn}
-\changes{4.0a}{1998/01/31}{Rearrange the ordering so numerical ones come first. AO: David, what does this mean?}
-\changes{4.0a}{1998/01/31}{use font-dependent spacing}
-\changes{4.0a}{1998/01/31}{4.0d had twoside option setting twoside switch to false}
-\changes{4.0a}{1998/01/31}{Move after process options, so the following test works}
-\changes{4.0a}{1998/01/31}{print homepage}
-\changes{4.0a}{1998/01/31}{protect against hyperref revtex kludges which are not needed now}
-\changes{4.0a}{1998/06/10}{multiple preprint commands}
-\changes{4.0a}{1998/06/10}{comma not space between email and homepage}
-\changes{4.0a}{1998/06/10}{single space footnotes}
-\changes{4.0b}{1999/06/20}{First modifications by Arthur Ogawa (mailto:arthur\_ogawa at sbcglobal dot net)}
-\changes{4.0b}{1999/06/20}{Added localization of \cs{figuresname}}
-\changes{4.0b}{1999/06/20}{Added localization of \cs{tablesname}}
-\changes{4.0b}{1999/06/20}{AO: all code for \protect\classoption{10pt} is in this module.}
-\changes{4.0b}{1999/06/20}{AO: all code for \protect\classoption{11pt} is in this module.}
-\changes{4.0b}{1999/06/20}{AO: all code for \protect\classoption{12pt} is in this module.}
-\changes{4.0b}{1999/06/20}{AO: made aps.rtx part of revtex4.dtx}
-\changes{4.0b}{1999/06/20}{AO: remove duplicates}
-\changes{4.0b}{1999/06/20}{call \cs{print at floats}}
-\changes{4.0b}{1999/06/20}{Defer assignment until \cs{AtBeginDocument} time.}
-\changes{4.0b}{1999/06/20}{Defer decision until \cs{AtBeginDocument} time}
-\changes{4.0b}{1999/06/20}{Define three separate environments, defer assignment to \cs{AtBeginDocument} time.}
-\changes{4.0b}{1999/06/20}{Frank Mittelbach, has stated in \protect\classname{multicol}: ``The kernel command \cs{@footnotetext} should not be modified.'' Thus, I have removed David Carlisle's redefinition of that command. Note, however, that later versions of \protect\classname{multicol} do not require this workaround. Belt and suspenders.}%
-\changes{4.0b}{1999/06/20}{Move this ``complex'' option to the front, where it can be overridden by ``simple'' options.}
-\changes{4.0b}{1999/06/20}{New option}
-\changes{4.0b}{1999/06/20}{One-line caption sets flush left.}
-\changes{4.0b}{1999/06/20}{only execute if appropriate}
-\changes{4.0b}{1999/06/20}{Processing delayed to \cs{AtBeginDocument} time}
-\changes{4.0b}{1999/06/20}{Removed invocation of nonexistent class option \protect\classoption{groupauthors} and all other class options that should only be invoked by the document. (Otherwise precedence of class options does not work.)}
-\changes{4.0b}{1999/06/20}{Restore all media size class option of \protect\file{classes.dtx}}
-\changes{4.0b}{1999/06/20}{Stack \cs{preprint} args flush right at right margin.}
-\changes{4.0c}{1999/11/13}{(AO, 115) If three or more preprints specified, set on single line, with commas.}
-\changes{4.0c}{1999/11/13}{(AO, 129) section* within appendix was producing appendixname}
-\changes{4.0c}{1999/11/13}{*-form mandates pagebreak}
-\changes{4.0c}{1999/11/13}{also spelled ``acknowledgements''.}
-\changes{4.0c}{1999/11/13}{Do not put by REVTeX in every page foot}
-\changes{4.0c}{1999/11/13}{grid changes via ltxgrid procedures}
-\changes{4.0c}{1999/11/13}{grid changes with ltxgrid}
-\changes{4.0c}{1999/11/13}{Insert procedure \cs{checkindate}}
-\changes{4.0c}{1999/11/13}{Lose compatability mode.}
-\changes{4.0c}{1999/11/13}{New ltxgrid-based  code, other bug fixes}
-\changes{4.0c}{1999/11/13}{New option ``checkin''}
-\changes{4.0c}{1999/11/13}{Prevent an inner footnote from performing twice}
-\changes{4.0d}{2000/04/10}{Also alter how lists get indented.}
-\changes{4.0d}{2000/04/10}{eprint takes an optional argument, syntactical only in this case.}
-\changes{4.0d}{2000/04/10}{New option}
-\changes{4.0d}{2000/05/10}{More features and bug fixes: compatability with longtable and array packages. Now certainly incompatible with multicol.}
-\changes{4.0d}{2000/05/17}{make longtable trigger the head, too}
-\changes{4.0d}{2000/05/18}{But alternative spelling is deprecated.}
-\changes{4.0e}{2000/09/20}{New option showkeys}
-\changes{4.0e}{2000/11/14}{Bug fixes and minor new features: title block affiliations can have ancillary data, just like authors; clearpage processing revamped, with floats staying in order; widetext ornaments.}
-\changes{4.0e}{2000/11/21}{adornments above and below.}
-\changes{4.0f}{2001/02/13}{Last bug fixes before release.}
-\changes{4.0rc1}{2001/06/17}{Running headers always as if two-sided}
-\changes{4.0rc1}{2001/06/18}{grid changes with push and pop}
-\changes{4.0rc1}{2001/06/18}{grid changes with push and pop}
-\changes{4.0rc4}{2001/07/23}{hyperref is no longer loaded via class option: use a usepackage statement instead}
-\changes{4.1a}{2008/01/18}{(AO, 457) Endnotes to be sorted in with numerical citations.}%
-\changes{4.1a}{2008/01/18}{(AO, 451) ``Cannot have more than 256 cites in a document''}%
-\changes{4.1a}{2008/01/18}{(AO, 457) Endnotes to be sorted in with numerical citations.}%
-\changes{4.1a}{2008/01/18}{(AO, 460) ``Proper style is "FIG. 1. ..." (no colon)''}%
-\changes{4.1a}{2008/01/18}{(AO, 478) \cs{ds at letterpaper}, so that ``letterpaper really is the default''}%
-\changes{4.1a}{2008/01/18}{(AO, 488) Change processing of options to allow an unused option to specify society and journal}%
-\changes{4.1a}{2008/01/19}{(AO, 461) Change the csname revtex uses from @dotsep to ltxu at dotsep. The former is understood in mu. (What we wanted was a dimension.)}%
-\changes{4.1a}{2008/01/19}{For natbib versions before 8.21, \cs{NAT at sort} was consulted only as natbib was being read in. Now it is fully dynamic.}
-\changes{4.1b}{2008/05/29}{The csname substyle at ext is now defined without a dot (.), to be compatible with \LaTeX usage (see @clsextension and @pkgextension).}
-\changes{4.1b}{2008/06/01}{(AO) Implement bibnotes through \cs{frontmatter at footnote@produce} instead of \cs{bibnotes at sw}}%
-\changes{4.1b}{2008/06/01}{Add option reprint, opposite of preprint, and preferred alternative to twocolumn}
-\changes{4.1b}{2008/06/29}{(AO, 455) Be nice to a list within the abstract (assign \cs{@totalleftmargin}).}
-\changes{4.1b}{2008/06/30}{(AO) Structure the Abstract using the \texttt{bibliography} environment}
-\changes{4.1b}{2008/07/01}{(AO) coordinate \cs{if at twoside} with \cs{twoside at sw}}
-\changes{4.1b}{2008/07/01}{(AO) make settings at class time instead of deferring them to later.}
-\changes{4.1b}{2008/07/01}{(AO) No longer need to test \cs{chapter} as of \texttt{natbib} version 8.2}
-\changes{4.1b}{2008/07/01}{(AO) No longer use \cs{secnumarabic at sw}, instead use \cs{setup at secnums}}
-\changes{4.1b}{2008/07/01}{(AO) Provide more diagnostics when \cs{@society} is assigned.}
-\changes{4.1b}{2008/07/01}{(AO) provide option longbibliography}
-\changes{4.1b}{2008/07/01}{Add \cs{@hangfroms at section}}
-\changes{4.1b}{2008/07/01}{Break out \cs{@caption at fignum@sep}}
-\changes{4.1b}{2008/07/01}{Class option galley sets \cs{preprintsty at sw} to false}
-\changes{4.1b}{2008/07/01}{Code relating to new syntax for frontmatter has been placed in \file{ltxfront.dtx}}
-\changes{4.1b}{2008/07/01}{Package textcase is now simply a required package}
-\changes{4.1b}{2008/07/01}{Procedures \cs{@parse at class@options at society} and \cs{@parse at class@options at journal} and friends}
-\changes{4.1b}{2008/07/01}{Read in all required packages together}
-\changes{4.1b}{2008/07/01}{Remove options newabstract and oldabstract}
-\changes{4.1b}{2008/08/01}{Section numbering via procedures \cs{secnums at rtx} and \cs{secnums at arabic}.}
-\changes{4.1b}{2008/08/04}{As with author formatting, rag the right more, and assign \cs{@totalleftmargin}. Also neutralize \cs{def at after@address}.}%
-\changes{4.1b}{2008/08/04}{Rag the right even more: .8\cs{hsize}. Also, assign \cs{@totalleftmargin}.}%
-\changes{4.1b}{2008/08/04}{The \texttt{rmp} journal substyle selects \texttt{groupedaddress} by default.}%
-\changes{4.1b}{2008/08/04}{Use \cs{setup at hook} to initialize all.}
-\changes{4.1c}{2008/08/15}{Document class option longbibliography via \cs{substyle at post}}
-\changes{4.1d}{2009/03/27}{Definition of \cs{ @fnsymbol} follows fixltx2e.sty}
-\changes{4.1e}{2008/06/29}{(AO, 455) be nice to a list within the abstract}
-\changes{4.1f}{2009/07/07}{(AO, 513) Add class option linenumbers: number the lines a la \classname{lineno}}
-\changes{4.1f}{2009/07/07}{(AO, 516) Merged references are separated with a semicolon}
-\changes{4.1f}{2009/07/10}{(AO, 520) Automatically produce \cs{bibliography} command when needed}%
-\changes{4.1f}{2009/07/11}{(AO, 521) Lonely bibliography head}%
-\changes{4.1f}{2009/07/11}{(AO, 522) Warn if software is expired}%
-\changes{4.1f}{2009/07/15}{(AO, 523) Add class option nomerge, to turn off new natbib 8.3 syntax}
-\changes{4.1f}{2009/07/20}{(AO, 524) Makes no sense if citations are superscript numbers and so are footnotes}
-\changes{4.1f}{2009/10/05}{(AO, 530) \cs{@fnsymbol}: Failed to import fixltx2e.sty technology. Return to LaTeX core.}
-\changes{4.1g}{2009/10/07}{(AO, 525) Remove phantom paragraph above display math that is given in vertical mode}%
-\changes{4.1g}{2009/10/07}{(AO, 538) \cs{MakeTextUppercase} inappropriately expands the double backslash}
-\changes{4.1h}{2009/10/09}{(AO) Remove expiry code in the release software}%
-\changes{4.1i}{2009/10/23}{(AO, 541) Defer assignment of \cs{cite} until after natbib loads}
-\changes{4.1j}{2009/10/24}{(AO, 549) Repairing natbib's \cs{BibitemShut} and \cs{bibAnnote}}
-\changes{4.1j}{2009/10/25}{(AO, 545) hypertext capabilities off by default; enable with \classoption{hypertext}}
-\changes{4.1j}{2009/10/25}{(AO, 552) Repair spacing in \cs{onlinecite}}
-\changes{4.1k}{2009/11/06}{(AO, 554) give the \cs{newlabel} command syntax appropriate to the hyperref package}
-\changes{4.1n}{2009/11/06}{(AO, 565) restore 4.0 behavior: invoking class option preprint implies class option preprintnumbers}
-\changes{4.1n}{2009/11/30}{(AO, 566) restore 4.0 behavior: flush column bottoms}
-\changes{4.1n}{2009/12/05}{(AO, 569) Use of \classname{hyperref} interferes with column balancing of last page}%
-\changes{4.1n}{2009/12/09}{(AO, 569) execute the after-last-shipout procedures from within the safety of the output routine}%
-\changes{4.1n}{2010/01/02}{(AO, 571) Interface \cs{set at footnotewidth} for determining the set width of footnotes}%
-\changes{4.1n}{2010/01/02}{(AO, 572) Independent footnote counter for title block. Abstract footnote counter shared with body.}%
-\changes{4.1n}{2009/12/13}{(AO, 573) arrange to load \classname{lineno} after any other packages.}%
-\changes{4.1n}{2010/01/04}{(AO, 575) the default for journal prstper is longbibliography}%
-\changes{4.1n}{2010/01/04}{(AO, 576) In .bst files, remove support for the annote field}%
-\changes{4.1n}{2010/01/02}{(AO) fine-tune spacing above and below widetext}%
-\changes{4.1n}{2010/01/02}{(AO, 571) class file must set \cs{splittopskip}; fine tune \cs{skip}\cs{footins}; \cs{footnoterule} defined in terms of \cs{skip}\cs{footins}}%
-\changes{4.1n}{2010/01/02}{(AO, 572) \cs{@makefntext} and \cs{frontmatter at makefntext} must be defined harmoniously}%
-\changes{4.1o}{2010/02/02}{(AO, 575) Automatically incorporate the (Bib\TeX-generated) .bbl into an explicit \env{thebibliography}}%
-\changes{4.1o}{2010/02/05}{(AO, 549) Remove patch to natbib, which is now at version 8.31a}
-\changes{4.1o}{2010/02/07}{(AO, 578) accommodate the possible space character preceding \cs{BibitemShut}.}
-\changes{4.1o}{2010/02/05}{(AO, 579) Endnote shall comprise their own Bib\TeX\ entry type: @FOOTNOTE.}
-\changes{4.1o}{2010/02/10}{(AO, 580) Provide a document class option to turn off production of eprint field in bibliography.}
-\changes{4.1o}{2010/02/12}{(AO, 580) Control .bst at run time.}%
-\changes{4.1o}{2010/02/09}{(AO, 581) Handle case: merged references, with first ending in a stop character.}
-\changes{4.1p}{2010/02/24}{(AO, 583) Provide interface to \classname{ltxgrid} \cs{onecolumn at grid@setup} and \cs{twocolumn at grid@setup}}
-\changes{4.1p}{2010/02/24}{(AO, 584) Per MD, remove trailing space character from each journal abbreviation: it had caused an extraneous space in the .bbl}
-\changes{4.1q}{2010/04/01}{(AO, 586) When .bbl is pasted into the document, prevent automatic bibliography inclusion.}%
-\changes{4.1q}{2010/04/13}{(AO, 588) Only write \revtex-specific BibTeX .bib data if the .bst style is set by REVTeX.}%
-\changes{4.1r}{2010/06/22}{(AO, 595) Provide \cs{lovname} along with other List of Videos definitions.}%
-
-\iffalse ltxdoc klootch
-This file has version number 4.1r, last revised 2010/07/25/20:33:00.\fi

Deleted: trunk/Master/texmf-dist/doc/latex/revtex/DOWNLOAD
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/DOWNLOAD	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/DOWNLOAD	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,120 +0,0 @@
-Last updated August 9, 2010
-
-To download REVTeX 4 (version 4.1), download the files listed below, or, more 
-conveniently, download revtex4-1.zip which contains all of the files.
-
-All files in this release are contained within a second zip file within the
-main zip file called revtex4-1-tds.zip. This contains all of the REVTeX 4.1
-files in the TeX Directory Structure (TDS) layout used with most current TeX
-distributions. Install REVTeX 4.1 by unzipping the files in the appropriate
-place (usually the texmf-local directory of your local TeX installation) and
-run texhash or the equivalent command to index the files. Please consult your
-TeX distribution's guide for installing new packages.
-
-NOTE: The only files necessary for running REVTeX 4.1 are those under         
-tex/latex/revtex and bibtex/bst/revtex, but it is a good idea to install
-the entire distribution, especially the documentation.
-
-TeX inputs:          tex/latex/revtex/
-                     -----------------  
-revtex4-1.cls     - The REVTeX 4.1 class file
-aps4-1.rtx        - APS-specific customizations for REVTeX 4.1
-aip4-1.rtx        - AIP-specific customizations for REVTeX 4.1
-apsrmp4-1.rtx     - APS-specific customizations for REVTeX 4.1,
-                    specifically for Rev. Mod. Phys.
-aps10pt4-1.rtx    - 10-point size class option file for REVTeX.
-aps11pt4-1.rtx    - 11-point size class option file for REVTeX.
-aps12pt4-1.rtx    - 12-point size class option file for REVTeX.
-revsymb4-1.sty    - A collection of common symbols for use outside of REVTeX.
-
-ltxdocext.sty     - Part of ltxgrid package used for page layout in REVTeX.
-ltxfront.sty      - Part of ltxgrid package used for page layout in REVTeX.
-ltxgrid.sty       - Part of ltxgrid package used for page layout in REVTeX.
-ltxutil.sty       - Part of ltxgrid package used for page layout in REVTeX.
-  
-BibTeX inputs:       bibtex/bst/revtex/
-                     ------------------ 
-apsrev4-1.bst     - BibTeX styles for use for Phys. Rev. journals
-apsrmp4-1.bst     - BibTeX styles for use for Rev. Mod. Phys.
-aipauth4-1.bst    - BibTeX styles for AIP journals with author/year style citations
-aipnum4-1.bst     - BibTeX styles for AIP journals with numerical style citations
-
-
-Documentation:       doc/latex/revtex/
-                     -----------------
-README       - How to get started
-DOWNLOAD     - How to download REVTeX4.1
-
-Author guide:           doc/latex/revtex/auguide/
-                        ------
-auguide4-1.tex (pdf)  - REVTeX 4.1 Author's Guide
-whatsnew4-1.tex (pdf) - What's New in REVTeX 4.1
-summary.tex (pdf)     - REVTeX 4.1 Command and Options Summary
-docs.sty              - Package used by REVTeX documentation
-
-APS guide:              doc/latex/revtex/aps
-                        ------
-apsguide4-1.tex (pdf) - APS Author Guide for REVTeX 4.1
-
-AIP guide:              doc/latex/revtex/aip
-                        ------
-aipguide4-1.tex (pdf) - Author's Guide to AIP Substyles for REVTeX 4.1
-
-APS Sample document:        doc/latex/revtex/sample/aps
-                        -------
-apssamp.tex (pdf)  - A sample file showing most common features of an APS
-                     REVTeX 4.1 document
-fig_1.eps          - sample figure for apssamp.tex
-fig_2.eps          - sample wide figure for apssamp.tex
-vid_1a.eps         - sample video frame for apssamp.tex
-vid_1b.eps         - sample video frame for apssamp.tex
-apssamp.bib        - sample BibTeX source file for apssamp.tex
-apstemplate.tex    - A template for APS authors to follow
-
-AIP Sample document:        doc/latex/revtex/sample/aip
-                        -------
-aipsamp.tex (pdf)  - A sample file showing most common features of an AIP
-                     REVTeX 4.1 document
-fig_1.eps          - sample figure for apssamp.tex
-fig_2.eps          - sample wide figure for apssamp.tex
-aipsamp.bib        - sample BibTeX source file for apssamp.tex
-aiptemplate.tex    - A template for APS authors to follow
-
-
-Programmer's docs:      doc/latex/revtex/source/
-                        -------
-ltxdocext.pdf - Programmer's documentation for the ltxdocext package
-ltxfront.pdf  - Programmer's documentation for the ltxfront  package
-ltxgrid.pdf   - Programmer's documentation for the ltxgrid   package
-ltxutil.pdf   - Programmer's documentation for the ltxutil   package
-revtex4-1.pdf - Programmer's documentation for the revtex4-1 document class
-aip.pdf       - Programmer's documentation for the AIP journal styles
-
-Source files:        source/latex/revtex
-                     -------------------
-ltxdocext.dtx - The source file for the ltxdocext package
-ltxfront.dtx  - The source file for the ltxfront package
-ltxgrid.dtx   - The source file for the ltxgrid package
-ltxutil.dtx   - The source file for the ltxutil package
-revtex4-1.dtx - The source file for revtex4.cls and revsymb.sty.
-aip.dtx       - The source file for AIP journal styles
-
-Not Included   
-------------
-The following packages are required by REVTeX but are not
-included in this distribution. Please obtain from CTAN
-(Comprehensive TeX Archive Network), e.g. <http://www.ctan.org/>. Direct
-links to the necessary files can be found at <http://authors.aps.org/revtex4/>.
-
-natbib.dtx   - Version 8.31a or later; found in latex/contrib/natbib on CTAN
-natbib.ins   - LaTeX this to create natbib.sty and natbib
-               documentation from natbib.dtx
-bm.dtx       - Bold math style - part of (current!) standard LaTeX2e tools
-bm.sty       - generated from bm.dtx by running tools.ins
-textcase.dtx - Found in latex/contrib/textcase on CTAN
-textcase.ins - LaTeX this to generate textcase.sty from textcase.dtx
-url.sty      - Found in latex/contrib/misc on CTAN
-
-An up-to-date installation of AMS-LaTeX is also required for certain
-documentclass options. Version 2.0 or higher is needed. It is
-available from <http://www.ams.org/tex/>.

Modified: trunk/Master/texmf-dist/doc/latex/revtex/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/README	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/README	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,78 +1,83 @@
 %% ****** Start of file README ****** %
 %%
 %%   This file is part of the APS files in the REVTeX 4 distribution.
-%%   Version 4.1r of REVTeX, August 2010.
+%%   Version 4.2b of REVTeX, January, 2019.
 %%
-%%   Copyright (c) 1999, 2000, 2001, 2009, 2010 The American Physical Society.
+%%   Copyright (c) 1999-2019 American Physical Society.
 %%
 
-Last updated 09 August 2010
+Last updated 27 December 2018
 
-This file describes the contents of this distribution of REVTeX 4.1.
+This file describes the contents of this distribution of REVTeX 4.2, version 4.2a.
 The definitive source of information about REVTeX 4 is the APS web
-page http://authors.aps.org/revtex4/.
+page http://journals.aps.org/revtex/.
 
 User queries should be directed to revtex at aps.org.
 
 Manifest
 --------
+All files in this release are contained within a second zip file within the
+main zip file called revtex4-2-tds.zip. This contains all of the REVTeX 4.2
+files in the TeX Directory Structure (TDS) layout used with most current TeX
+distributions. Install REVTeX 4.2 by unzipping the files in the appropriate
+place (usually the texmf-local directory of your local TeX installation) and
+running texhash or the equivalent command to index the files. Please consult your
+TeX distribution's guide for installing new packages.
 
-All files in this release are contained within the compressed archive
-revtex4-1.zip. For installation instructions, see below.
-
-NOTE: The only files necessary for running REVTeX 4.1 are those under 
+NOTE: The only files necessary for running REVTeX 4.2 are those under 
 tex/latex/revtex and bibtex/bst/revtex, but it is a good idea to install
 the entire distribution, especially the documentation.
 
 TeX inputs:          tex/latex/revtex/
                      -----------------  
-revtex4-1.cls     - The REVTeX 4.1 class file
-aps4-1.rtx        - APS-specific customizations for REVTeX 4.1
-aip4-1.rtx        - AIP-specific customizations for REVTeX 4.1
-apsrmp4-1.rtx     - APS-specific customizations for REVTeX 4.1,
-                    specifically for Rev. Mod. Phys.
-aps10pt4-1.rtx    - 10-point size class option file for REVTeX.
-aps11pt4-1.rtx    - 11-point size class option file for REVTeX.
-aps12pt4-1.rtx    - 12-point size class option file for REVTeX.
-revsymb4-1.sty    - A collection of common symbols for use outside of REVTeX.
+revtex4-2.cls     - The REVTeX 4.2 class file
+aps4-2.rtx        - APS-specific customizations for REVTeX 4.2
+aip4-2.rtx        - AIP-specific customizations for REVTeX 4.2
+aapm4-2.rtx       - AAPM-specific custommizations for REVTeX 4.2
+sor4-2.rtx        - SOR-specific customizations for REVTeX 4.2
+apsrmp4-2.rtx     - APS-specific customizations for REVTeX 4.2 for Rev. Mod. Phys.
+aps10pt4-2.rtx    - 10-point size class option file for REVTeX
+aps11pt4-2.rtx    - 11-point size class option file for REVTeX
+aps12pt4-2.rtx    - 12-point size class option file for REVTeX
+revsymb4-2.sty    - A collection of common symbols for use outside of REVTeX
+reftest4-2.tex    - A helpful diagnostics check for bibliographies when not using BibTeX
 
-ltxdocext.sty     - Part of ltxgrid package used for page layout in REVTeX.
-ltxfront.sty      - Part of ltxgrid package used for page layout in REVTeX.
-ltxgrid.sty       - Part of ltxgrid package used for page layout in REVTeX.
-ltxutil.sty       - Part of ltxgrid package used for page layout in REVTeX.
+ltxdocext.sty     - Part of ltxgrid package used for page layout in REVTeX
+ltxfront.sty      - Part of ltxgrid package used for page layout in REVTeX
+ltxgrid.sty       - Part of ltxgrid package used for page layout in REVTeX
+ltxutil.sty       - Part of ltxgrid package used for page layout in REVTeX
   
 BibTeX inputs:       bibtex/bst/revtex/
                      ------------------ 
-apsrev4-1.bst     - BibTeX styles for use for Phys. Rev. journals
-apsrmp4-1.bst     - BibTeX styles for use for Rev. Mod. Phys.
-aipauth4-1.bst    - BibTeX styles for AIP journals with author/year style citations
-aipnum4-1.bst     - BibTeX styles for AIP journals with numerical style citations
+apsrev4-2.bst     - BibTeX styles for use for Phys. Rev. journals
+apsrmp4-2.bst     - BibTeX styles for use for Rev. Mod. Phys.
+aipauth4-2.bst    - BibTeX styles for AIP journals with author/year style citations
+aipnum4-2.bst     - BibTeX styles for AIP journals with numerical style citations
+aapmrev4-2.bst    - BibTeX styles for AAPM journals
 
 
 Documentation:       doc/latex/revtex/
                      -----------------
-README       - How to get started
-DOWNLOAD     - How to download REVTeX4.1
+README       - How to get started (this file)
 
 Author guide:           doc/latex/revtex/auguide/
                         ------
-auguide4-1.tex (pdf)  - REVTeX 4.1 Author's Guide
-whatsnew4-1.tex (pdf) - What's New in REVTeX 4.1
-summary.tex (pdf)     - REVTeX 4.1 Command and Options Summary
+auguide4-2.tex (pdf)  - REVTeX 4.2 Author's Guide
+summary4-2.tex (pdf)  - REVTeX 4.2 Command and Options Summary
 docs.sty              - Package used by REVTeX documentation
 
 APS guide:              doc/latex/revtex/aps
                         ------
-apsguide4-1.tex (pdf) - APS Author Guide for REVTeX 4.1
+apsguide4-2.tex (pdf) - APS Author Guide for REVTeX 4.2
 
 AIP guide:              doc/latex/revtex/aip
                         ------
-aipguide4-1.tex (pdf) - Author's Guide to AIP Substyles for REVTeX 4.1
+aipguide4-2.tex (pdf) - Author's Guide to AIP Substyles for REVTeX 4.2
 
 APS Sample document:    doc/latex/revtex/sample/aps
                         -------
 apssamp.tex (pdf)  - A sample file showing most common features of an APS
-                     REVTeX 4.1 document
+                     REVTeX 4.2 document
 fig_1.eps          - sample figure for apssamp.tex
 fig_2.eps          - sample wide figure for apssamp.tex
 vid_1a.eps         - sample figure for apssamp.tex
@@ -83,21 +88,39 @@
 AIP Sample document:    doc/latex/revtex/sample/aip
                         -------
 aipsamp.tex (pdf)  - A sample file showing most common features of an AIP
-                     REVTeX 4.1 document
-fig_1.eps          - sample figure for apssamp.tex
-fig_2.eps          - sample wide figure for apssamp.tex
-aipsamp.bib        - sample BibTeX source file for apssamp.tex
-aiptemplate.tex    - A template for APS authors to follow
+                     REVTeX 4.2 document
+fig_1.eps          - sample figure for aipsamp.tex
+fig_2.eps          - sample wide figure for aipsamp.tex
+aipsamp.bib        - sample BibTeX source file for aipsamp.tex
+aiptemplate.tex    - A template for AIP authors to follow
 
+AAPM Sample document:    doc/latex/revtex/sample/aapm
+                        -------
+aapmsamp.tex (pdf)  - A sample file showing most common features of an AAPM
+                     REVTeX 4.2 document
+fig_1.eps          - sample figure for aapmsamp.tex
+fig_2.eps          - sample wide figure for aapmsamp.tex
+aapmsamp.bib        - sample BibTeX source file for aapmsamp.tex
+aapmtemplate.tex    - A template for AAPM authors to follow
 
+
+SOR Sample document:    doc/latex/revtex/sample/sor
+                        -------
+sorsamp.tex (pdf)  - A sample file showing most common features of an SOR
+                     REVTeX 4.2 document
+fig_1.eps          - sample figure for sorsamp.tex
+fig_2.eps          - sample wide figure for sorsamp.tex
+sorsamp.bib        - sample BibTeX source file for sorsamp.tex
+sortemplate.tex    - A template for SOR authors to follow
+
 Programmer's docs:      doc/latex/revtex/source/
                         -------
 ltxdocext.pdf - Programmer's documentation for the ltxdocext package
-ltxfront.pdf  - Programmer's documentation for the ltxfront  package
-ltxgrid.pdf   - Programmer's documentation for the ltxgrid   package
-ltxutil.pdf   - Programmer's documentation for the ltxutil   package
-revtex4-1.pdf - Programmer's documentation for the revtex4-1 document class
-aip.pdf       - Programmer's documentation for the AIP journal styles
+ltxfront.pdf  - Programmer's documentation for the ltxfront package
+ltxgrid.pdf   - Programmer's documentation for the ltxgrid package
+ltxutil.pdf   - Programmer's documentation for the ltxutil package
+revtex4-2.pdf - Programmer's documentation for the revtex4.2 document class
+aip4-2.pdf       - Programmer's documentation for the AIP journal styles
 
 Source files:        source/latex/revtex
                      -------------------
@@ -105,8 +128,8 @@
 ltxfront.dtx  - The source file for the ltxfront package
 ltxgrid.dtx   - The source file for the ltxgrid package
 ltxutil.dtx   - The source file for the ltxutil package
-revtex4-1.dtx - The source file for revtex4.cls and revsymb.sty.
-aip.dtx       - The source file for AIP journal styles
+revtex4-2.dtx - The source file for revtex4.cls and revsymb.sty.
+aip4-2.dtx       - The source file for AIP journal styles
 
 Not Included   
 ------------
@@ -113,7 +136,7 @@
 The following packages are required by REVTeX but are not
 included in this distribution. Please obtain from CTAN
 (Comprehensive TeX Archive Network), e.g. <http://www.ctan.org/>. Direct
-links to the necessary files can be found at <http://authors.aps.org/revtex4/>.
+links to the necessary files can be found at <http://journals.aps.org/revtex/>.
 
 natbib.dtx   - Version 8.31a or later; found in latex/contrib/natbib on CTAN
 natbib.ins   - LaTeX this to create natbib.sty and natbib
@@ -137,72 +160,27 @@
 longtable.sty for tables running to multiple pages - part of a
 standard LaTeX2e distribution.
 
-hyperref.sty for hyperlinking - should work well with REVTeX 4.1.
+hyperref.sty for hyperlinking - should work well with REVTeX 4.2.
 
 graphics.sty and graphicx.sty for figure inclusion - part of LaTeX2e's
 standard distribution.
 
-Installation
-------------
-You already started the installation process by unzipping revtex4-1.zip.
-As you will have seen, it created a directory revtex4.1 containing
-this file README, the file DOWNLOAD, and the file revtex4-1-tds.zip, which
-contains the bulk of the installation.
-
-To install this software into a TDS-compliant TeX installation, like
-TeX Live, working as root, issue a shell command like
-
-  unzip revtex4-1-tds.zip -d /usr/local/texlive/texmf-local/
-  
-where the destination for the unzipped files is, in this example, 
-appropriate for a local modificaton of a sufficiently recent distribution
-of TeX Live. You may of course choose a different destination depending 
-on your particular requirements. 
-
-After installation, files will be located as per the Manifest above.
-
-Run the appropriate update command (mktexlsr, initexmf -u, etc.); under
-TeX Live that would be (as root)
-
-   mktexlsr /usr/local/texlive/texmf-local
-
-Install required packages (AMS-LaTeX, natbib, textcase, and bm). 
-Please consult the documentaton for your local TeX package for more information. 
-MikTeX users should use a recent version (see http://miktex.org/) and consult
-the documentation there. There are several steps you will have to do. Please
-note that the steps given here may change with future versions of MikTeX, but
-the basic steps should be quite similar.
-  1) Create a texmf-local directory if needed. For example, you might create
-     a directory such as C:\local\miktex\texmf-local.
-  2) Tell MikTeX where your texmf-local directory is. Find the MikTeX Options
-     window and look for the "Roots" tab. If your texmf-local directory
-     is not listed, click "Add" and add it.
-  3) Unzip the revtex4-1-tds.zip (part of the REVTeX distribtution) in your
-     texmf-local directory.
-  4) Update the "File Name Database (FNDB)." This step is essential and
-     it registers all of the files in your texmf-local directory with MikTeX.
-     Do this by clicking on "Refresh FNDB" in the General tab of the MikTeX
-     Options window.
-     
-MikTex also comes with a package manager. This can be an easier way to maintain
-the packages installed on your system. However, please note that the packages
-available may not be the most current version of the packages.
-
 Credits
 -------
 David Carlisle created the first draft of REVTeX 4; Arthur Ogawa has 
-supported the TeX development since. Patrick Daly was so kind as to 
-incorporate needed changes into natbib and custom-bib. All worked under 
-commission from the APS. Mark Doyle, APS Assistant Director, Journal
-Information Systems coordinated the effort, which was partly underwritten
-by the American Institute of Physics. The APS is the maintainer of REVTeX,
+supported the TeX development versions 4.0 and 4.1. Patrick Daly was so kind
+as to incorporate needed changes into natbib and custom-bib. All worked under 
+commission from the APS, with the support of AIP, and was coordinated by Mark
+Doyle, APS. Version 4.2 was initially developed by Aptara Corporation under
+the guidance of Mark Doyle, APS, and Brian Goss, AIP. Development of the final
+version of 4.2 was done by Mark Doyle. The APS is the maintainer of REVTeX,
 and all bugs are our responsibility. Please e-mail feedback to revtex at aps.org.
 
 Backwards compatibility
 -----------------------
-The REVTeX 4.1 class file has been named revtex4-1.cls to distinguish it
-from its predecessors. If the class file is copied to revtex4.cls,
-files created with earlier versions of REVTeX 4 should still work.
+The REVTeX 4.2 class file has been named revtex4-2.cls to distinguish it
+from its predecessors. Files prepared under REVTeX 4.0 or 4.1 may need minor
+changes to process under 4.2 and the output may be formatted differently.
 
 LaTeX2e requirements
 --------------------

Deleted: trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-1.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-1.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-1.tex	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-1.tex	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,428 +0,0 @@
-%% ****** Start of file auguide.tex ****** %
-%%
-%%   This file is part of the AIP distribution of substyles for REVTeX 4.1
-%%   For version 4.1r of REVTeX, August 2010
-%%
-%%   Copyright (c) 2009,2010 American Institute of Physics
-%%
-\listfiles
-\documentclass[%
- reprint,%
-%secnumarabic,%
- amssymb, amsmath,%
- aip,cha,%
-%groupedaddress,%
-%frontmatterverbose,
-]{revtex4-1}
-
-\usepackage{docs}%
-\usepackage{bm}%
-\usepackage[colorlinks=true,linkcolor=blue]{hyperref}%
-%\nofiles
-\expandafter\ifx\csname package at font\endcsname\relax\else
- \expandafter\expandafter
- \expandafter\usepackage
- \expandafter\expandafter
- \expandafter{\csname package at font\endcsname}%
-\fi
-\hyphenation{title}
-
-\begin{document}
-
-\title{Author's Guide to AIP Substyles for \revtex~4.1}%
-
-\author{AIP Journal Program}%
-\email{tex at aip.org}
-\affiliation{American Institute of Physics\\Suite 1NO1, 2 Huntington Quadrangle\\Melville, New York 11747-4502, USA}%
-
-\date{March 2010}%
-\revised{August 2010}%
-
-\maketitle
-
-\tableofcontents
-
-\section{Introduction}
-
-This is the author's guide to the AIP substyles for \revtex~4.1, 
-providing a useful formatting tool 
-for \LaTeX\ users submitting papers to journals 
-published by the American Institute of Physics.
-This guide is intended as an adjunct to the documentation for \revtex\ itself 
-(published by the American Physical Society), 
-so information contained therein is not repeated here, 
-except as it bears on the specific features of the AIP substyles.
-
-
-\subsection{Prerequisite Documentation}
-
-The following documentation should be considered your first source of information 
-on how to prepare your document for use with this format; 
-they are to be found within the APS \revtex~4.1 distribution. 
-Updated versions of these are maintained at
-the \revtex~4.1 homepage located at \url{http://authors.aps.org/revtex4/},
-are also available at the Comprehensive \TeX\ Archive Network (CTAN, see \url{http://www.ctan.org/}), 
-and form part of the \TeX Live distribution of \TeX.
-\begin{itemize}
-\item \textit{Author's Guide to \revtex~4.1}
-\item \textit{\revtex~4.1 Command and Options Summary}
-\item \textit{What's New in \revtex~4.1}
-\end{itemize}
-The present guide builds upon these documents, with which you should already be familiar.
-
-The AIP substyles distribution for \revtex~4.1 includes 
-a sample document (\file{aipsamp.tex}), 
-a good starting point for 
-the manuscript you are preparing for submission to an AIP journal.
-
-By using \revtex's \textit{Author's Guide to \revtex~4.1}, you can develop your
-document until it contains all of the content you desire.
-This guide informs you on document class options, commands, and 
-markup guidelines specific to AIP journals. 
-
-\subsection{Software Requirements}
-
-This guide assumes a working \revtex~4.1 installation including the AIP substyles. 
-Please see the installation guide included with the distribution.\cite{Note1}
-
-Please note that the AIP substyles work {\it only} with \revtex~4.1: 
-the original \revtex~4.0 release does {\it not} make the AIP substyle available, nor is it compatible with them. 
-
-For your computer to run \revtex~4.1 with the AIP substyles, the following are required:
-\begin{itemize}
-\item
-a working installation of \LaTeX\,
-\item
-\revtex~4.1 and all packages it requires,
-\item
-the AIP substyles for \revtex~4.1, and
-\item
-any further \LaTeX\ packages used in your document. 
-\end{itemize}
-
-The easiest way to obtain all of the needed software is to install an up-to-date distribution of \TeX,
-like \TeX Live, available on CTAN.
-
-To obtain the most up-to-date version of this software, please see \url{http://www.aip.org/pubservs/compuscript.html}.
-
-
-\subsection{Submitting to AIP Journals}
-
-Authors preparing a manuscript for submission to
-AIP journals should consult the Information for Contributors for the applicable journal,
-available through links at \url{http://journals.aip.org/}. 
-These requirements are not covered systematically in this author's guide; 
-you are responsible for understanding the requirements of the particular journal to which
-you will submit your article.
-
-For further information about journal requirements, contact the Editorial
-Office of the appropriate journal. (Follow links at \url{http://journals.aip.org/}.)
-
-\subsection{Contact Information}\label{sec:resources}%
-Any bugs, problems, or inconsistencies concerning the AIP journal substyles
-should be reported to AIP support at \href{mailto:tex at aip.org}{tex at aip.org}. 
-Reports should include information on the error and a 
-\textit{small} sample document that manifests the problem, if possible. 
-(Please don't send large files!) 
-
-Feedback concerning \revtex~4.1 itself should be sent, as usual, 
-to the American Physical Society at\\ \href{mailto:revtex at aps.org}{revtex at aps.org}. 
-
-To determine if the problem you are experiencing belongs to \revtex\ or is specific to the
-AIP substyles, simply remove \texttt{aip} from your document class options and rerun 
-your document. If the problem goes away, you may assume that it is due to the AIP substyles;
-if not, it belongs to \revtex.
-
-\section{Sample \LaTeXe\ Document}
-As the \revtex\ documentation makes clear, your document employs a \LaTeXe\ document class
-(specifically \texttt{revtex4-1.cls}), so you should use 
-the \LaTeXe\ commands and environments familiar to you with, say, the
-standard article class \texttt{revtex4-1.cls}, and you will be able to 
-employ many of the packages you are used to using with \LaTeXe.
-
-Using \texttt{aipsamp.tex} as an example, 
-your document will start with the usual \revtex\ \cmd\documentclass\ statement, but with
-a particular document class option \texttt{aip} that specifies the AIP substyle:
-\begin{verbatim}
-\documentclass[aip]{revtex4-1}
-\end{verbatim}
-You will then invoke the \LaTeXe\-compatible packages your document requires, say:
-\begin{verbatim}
-\usepackage{graphicx}%
-\usepackage{dcolumn}%
-\usepackage{bm}%
-\end{verbatim}
-follow up with your document content:
-\begin{verbatim}
-\begin{document}
-...
-\end{verbatim}
-and finish with a statement specifying your Bib\TeX\ database:
-\begin{verbatim}
-\bibliography{aipsamp}
-\end{document}
-\end{verbatim}
-
-The books
-in the bibliography of this guide provide extensive coverage of all topics
-pertaining to preparing documents under \LaTeXe\; they are highly recommended. 
-
-\section{\revtex\ Class Options Specific to AIP}
-
-\subsection{Journal Substyle}
-To access particular features of the AIP substyle, you will specify an additional document class option: the journal substyle, e.g.,
-\begin{verbatim}
-\documentclass[aip,jcp]{revtex4-1}
-\end{verbatim}
-in this case, \textit{J. Chem. Phys.}, the default. 
-A complete list of AIP journals with the corresponding journal substyle appears in Table~\ref{tab:journals}.
-\begin{table}
-\caption{\label{tab:journals}AIP journal substyles}
-\begin{ruledtabular}
-\begin{tabular}{ll}
-\textbf{Journal} & \textbf{class option} \\
-\itshape Appl. Phys. Lett. &\texttt{apl}\\
-\itshape Biomicrofluidics  &\texttt{bmf}\\
-\itshape Chaos             &\texttt{cha}\\
-\itshape J. Appl. Phys.    &\texttt{jap}\\
-\itshape J. Chem. Phys.    &\texttt{jcp}\footnotemark[1]\\
-\itshape J. Math. Phys.    &\texttt{jmp}\\
-\itshape J. Renewable Sustainable Energy&\texttt{rse}\\
-\itshape Phys. Fluids      &\texttt{pof}\\
-\itshape Phys. Plasmas     &\texttt{pop}\\
-\itshape Rev. Sci. Instrum.&\texttt{rsi}\\
-\end{tabular}
-\end{ruledtabular}
-\footnotetext[1]{Default journal substyle.}
-\end{table}
-
-\subsection{Options for Citations and Bibliography}
-The citation style for AIP journals is:
-\begin{itemize}
-\item 
-numerical (default style), 
-\item
-author-year, and
-\item
-numerical author-year,
-\end{itemize}
-the latter two styles being only allowed for \textit{Chaos} or \textit{J. Math. Phys.}
-
-The familiar numerical citations and numbered bibliography are the default for most journals: 
-citations are superscript numbers, and the (numbered) bibliographic entries appear in the order cited. 
-
-Author-year citations are only allowed for 
-\textit{Chaos} or \textit{J. Math. Phys.}, with citations given in author-and-year format. 
-Bibliographic entries are sorted by alphabetical order of first author's surname, then by year. 
-
-Numerical author-year citations 
-(only allowed for \textit{Chaos} or \textit{J. Math. Phys.}) 
-are superscript numbers, just like numerical citations, 
-but the bibliographic entries are sorted like the author-year entries and are numbered. 
-This means that the first citation will not necessarily be~1.
-
-To obtain the numerical style, simply accept the default, or supply a class option of \texttt{numerical}:
-\begin{verbatim}
-\documentclass[aip,numerical]{revtex4-1}
-\end{verbatim}
-For author-year citations for \textit{Chaos} or \textit{J. Math. Phys.}, 
-you may specify the \texttt{author-year} option:
-\begin{verbatim}
-\documentclass[aip,author-year]{revtex4-1}
-\end{verbatim}
-Each of the above two options are part of standard \revtex.
-
-To obtain numerical author-year citations 
-for \textit{Chaos} or \textit{J. Math. Phys.}, 
-give the author-numerical option:
-\begin{verbatim}
-\documentclass[aip,author-numerical]{revtex4-1}
-\end{verbatim}
-Note that the \texttt{author-numerical} option is not part of standard \revtex\, so use of it
-outside of the AIP substyles may not have any effect. 
-
-\subsection{Formatting Options}
-There are two commonly used formats for an article you may write. 
-One will comply with the manuscript submission formatting requirements of the editorial office of the journal you are submitting to.
-The other will emulate the format of your article in the published journal itself. 
-
-For journal submission, accept the default, or you may specify the \texttt{preprint} option:
-\begin{verbatim}
-\documentclass[aip,preprint]{revtex4-1}
-\end{verbatim}
-To emulate the formatting of the journal, specify the \texttt{reprint} option:
-\begin{verbatim}
-\documentclass[aip,reprint]{revtex4-1}
-\end{verbatim}
-Note that emulation is not by any means complete: the fonts used will differ, and therefore
-the length of the article will not represent an accurate estimate. 
-Other details may also differ. 
-
-A summary of class options of interest to AIP authors appears in Table~\ref{tab:options}.
-\begin{table}
-\caption{\label{tab:options}Other class options}
-\begin{ruledtabular}
-\begin{tabular}{ll}
-\textbf{Function} & \textbf{class option} \\
-\multicolumn{2}{l}{\textit{Citation and References}}\\
-superscript numbered&\texttt{numerical}\footnotemark[1]\textsuperscript{,}\footnotemark[2]\\
-author-year&\texttt{author-year}\footnotemark[3]\\
-numbered author-year&\texttt{author-numerical}\footnotemark[3]\\
-%
-\multicolumn{2}{l}{\textit{Format}}\\
-journal submission&\texttt{preprint}\footnotemark[1]\\
-journal emulation&\texttt{reprint}\\
-\end{tabular}
-\end{ruledtabular}
-\footnotetext[1]{Default option.}%
-\footnotetext[2]{Standard}%
-\footnotetext[3]{Only allowed for \textit{Chaos} or \textit{J. Math. Phys.}}%
-\end{table}
-
-\section{Useful \LaTeXe\ Markup}
-\LaTeXe\ markup is the preferred way to structure your file. 
-In general, the use of low-level commands like \TeX\ primitives or Plain \TeX\ macros 
-is less preferable. 
-Please see the \revtex\ User's Guide,\cite{Note2} 
-the \LaTeX\ manual,\cite{LaTeXman} 
-and the \LaTeXe\ book\cite{Compan} 
-for further details. 
-
-\subsection{Title and Front Matter}\label{sec:front}
-
-The \revtex\ User's Guide has complete information on using \revtex's special markup for your
-article's title, author list, abstract, and other front matter elements. 
-Note that class option \texttt{superscriptaddress} is the default for the AIP substyles, 
-as required by all AIP journals. 
-
-\subsection{Lead Paragraph}
-One AIP journal, \textit{Chaos}, requires a paragraph of text to precede the first
-\cmd\section\ of the article; 
-this is known as a lead paragraph and is formatted boldface. 
-To give your article a lead paragraph, 
-include a quotation environment ahead of the first \cmd\section\ command:
-\begin{verbatim}
-\documentclass[aip]{revtex4-1}
-\begin{document}
- \begin{quotation}
-  Here is my lead paragraph!
- \end{quotation}
- \section{Introduction}
-...
-\end{verbatim}
-
-The \texttt{quotation} environment functions normally after the first \cmd\section\ command in the document.
-
-\section{Body}
-
-For general information on commands used in the body of the document, see the \revtex\ User's Guide.
-Herein are some features specific to the AIP author.
-
-\subsection{Footnotes}
-
-If you are using numbered citations (numerical or numbered author-year), 
-footnotes are by default incorporated into the reference section 
-along with your bibliographic entries. 
-This automated feature is only effective if you use Bib\TeX\ to prepare your
-bibliography. 
-
-Author-year style bibliography does not lend itself to such a treatment, 
-so by default footnotes appear in text as is usual. 
-However, be advised that, if your article is accepted for publication,
-footnotes may be incorporated into text during the production process.
-
-\section{Citations and References}\label{sec:endnotes}
-
-The preparation of your bibliography ``by hand'' is possible; 
-however, if you do so, 
-you will be entirely responsible 
-for compliance with submission requirements for your bibliographic entries, 
-for incorporating any text footnotes into the references, 
-and for checking bibliographic entries. 
-(In this connection, you may find useful the file \texttt{reftest.tex}, distributed with \revtex.)
-
-There are numerous reasons to use Bib\TeX, not least because it automates the first and second of the above checks. 
-
-\subsection{\label{sec:use-bib}Using Bib\protect\TeX}
-
-Refer to the \revtex\ User's Guide, the \LaTeX\ manual, and the Bib\TeX\ manual
-for full information about using Bib\TeX. 
-
-When using Bib\TeX\, keep in mind that changing your bibliography style or citation style
-(via the document class options described above) will require you to rerun Bib\TeX.
-The standard litany (using \texttt{aipsamp.tex} as an example) for this is:
-\begin{verbatim}
-> latex aipsamp
-> bibtex aipsamp
-> latex aipsamp
-> latex aipsamp
-\end{verbatim}
-Here, the first invocation of \texttt{latex} has the effect of rewriting the
-\texttt{aipsamp.aux} file,
-and the invocation of \texttt{bibtex} creates a new \texttt{aipsamp.bbl} file. 
-The next two runs of \texttt{latex} are then required: 
-the first to update the \texttt{aipsamp.aux} file reflecting the new values of your citations
-and the second to employ those citations correctly. 
-Be sure to check the end of the \texttt{aipsamp.log} file for any message advising you to 
-rerun \texttt{latex}. 
-
-\subsection{Multiple References per Citation}
-In an article using numerical citations, 
-it is not uncommon to encounter the need for a citation 
-that refers to more than one article or other reference. 
-To accommodate such a case, \revtex~4.1 implements markup similar to that of the 
-\texttt{mcite} package for \LaTeXe. 
-
-Let's say that two citation keys \texttt{able} and \texttt{baker} 
-need to be combined into a single reference.
-The syntax for the \cmd\cite\ command is:
-\begin{verbatim}
-word\cite{able,*baker} further text
-\end{verbatim}
-When you run Bib\TeX\, the resulting bibliography will contain the two entries, but run together
-as a single numbered reference.
-In the \cmd\cite\ command argument, any cite key that starts with the * character
-signifies that its bibliographic entry is to be joined together with the one preceding it;
-the \texttt{*} may join together any number of entries into a single reference.
-
-\begin{thebibliography}{9}\label{sec:TeXbooks}%
-\bibitem{Note1}
-For help regarding the installation of this software and its use, please send email to \href{mailto:tex at aip.org}{tex at aip.org}.
-%
-\bibitem{Note2}
-Available with the \revtex\ distribution, see \url{http://authors.aps.org/revtex4/}.
-%
-\bibitem[Lamport(1996)]{LaTeXman} 
-L. Lamport, 
-\emph{\LaTeX\, a Document Preparation System} 
-(Addison-Wesley, Reading, MA, 1996).
-%
-\bibitem[Goossens(1994)]{Compan} 
-M. Goosens, F. Mittelbach, and A. Samarin, 
-\emph{The \LaTeX\ Companion} 
-(Addison-Wesley, Reading, MA, 1994).
-%
-\bibitem[Knuth(1986)]{TeXbook} 
-D. E. Knuth, 
-\emph{The \TeX book} 
-(Addison-Wesley, Reading, MA, 1986). 
-%
-\bibitem[Kopka(1995)]{Guide} 
-H. Kopka and P. Daly, 
-\emph{A Guide to \LaTeXe} 
-(Addison-Wesley, Reading, MA, 1995).
-%
-\bibitem[Goossens(1997)]{CompanG} 
-M. Goossens, S. Rahtz, and F. Mittelbach, 
-\emph{The \LaTeX\ Graphics Companion} 
-(Addison-Wesley, Reading, MA, 1997).
-%
-\bibitem[Rahtz(1999)]{CompanW} 
-S. Rahtz, M. Goossens \emph{et al.},
-\emph{The \LaTeX\ Web Companion} 
-(Addison-Wesley, Reading, MA, 1999).
-%
-\end{thebibliography}
-
-\end{document}
-

Added: trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.pdf	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.pdf	2019-01-11 22:30:04 UTC (rev 49672)

Property changes on: trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.tex	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,430 @@
+%% ****** Start of file auguide.tex ****** %
+%%
+%%   This file is part of the AIPP distribution of substyles for REVTeX 4.2
+%%   For version 4.2a of REVTeX, December 2014
+%%
+%%   Copyright (c) 2014 American Institute of Physics Publishing
+%%
+\listfiles
+\documentclass[%
+ reprint,%
+%secnumarabic,%
+ amssymb, amsmath,%
+ aip,cha,%
+%groupedaddress,%
+%frontmatterverbose,
+]{revtex4-2}
+
+\usepackage{docs}%
+\usepackage{bm}%
+\usepackage[colorlinks=true,linkcolor=blue]{hyperref}%
+%\nofiles
+\expandafter\ifx\csname package at font\endcsname\relax\else
+ \expandafter\expandafter
+ \expandafter\usepackage
+ \expandafter\expandafter
+ \expandafter{\csname package at font\endcsname}%
+\fi
+\hyphenation{title}
+
+\begin{document}
+
+\title{Author's Guide to AIP Substyles for \revtex~4.2}%
+
+\author{AIP Journal Program}%
+\email{tex at aip.org}
+\affiliation{American Institute of Physics Publishing Suite 300, 1305 Walk Whitman Road\\Melville, New York 11747-4300, USA}%
+
+\date{November 2014}%
+\revised{December 2014}%
+
+\maketitle
+
+\tableofcontents
+
+\section{Introduction}
+
+This is the author's guide to the AIP substyles for \revtex~4.2, 
+providing a useful formatting tool 
+for \LaTeX\ users submitting papers to journals 
+published by the American Institute of Physics.
+This guide is intended as an adjunct to the documentation for \revtex\ itself 
+(published by the American Physical Society), 
+so information contained therein is not repeated here, 
+except as it bears on the specific features of the AIP substyles.
+
+
+\subsection{Prerequisite Documentation}
+
+The following documentation should be considered your first source of information 
+on how to prepare your document for use with this format; 
+they are to be found within the APS \revtex~4.2 distribution. 
+Updated versions of these are maintained at
+the \revtex~4.2 homepage located at \url{http://journals.aps.org/revtex/},
+are also available at the Comprehensive \TeX\ Archive Network (CTAN, see \url{http://www.ctan.org/}), 
+and form part of the \TeX Live distribution of \TeX.
+\begin{itemize}
+\item \textit{Author's Guide to \revtex~4.2}
+\item \textit{\revtex~4.2 Command and Options Summary}
+\end{itemize}
+The present guide builds upon these documents, with which you should already be familiar.
+
+The AIP substyles distribution for \revtex~4.2 includes 
+a sample document (\file{aipsamp.tex}), 
+a good starting point for 
+the manuscript you are preparing for submission to an AIP journal.
+
+By using \revtex's \textit{Author's Guide to \revtex~4.2}, you can develop your
+document until it contains all of the content you desire.
+This guide informs you on document class options, commands, and 
+markup guidelines specific to AIP journals. 
+
+\subsection{Software Requirements}
+
+This guide assumes a working \revtex~4.2 installation including the AIP substyles. 
+Please see the installation guide included with the distribution.\cite{Note1}
+
+Please note that the AIP substyles work {\it only} with \revtex~4.2: 
+the original \revtex~4.0 release does {\it not} make the AIP substyle available, nor is it compatible with them. 
+
+For your computer to run \revtex~4.2 with the AIP substyles, the following are required:
+\begin{itemize}
+\item
+a working installation of \LaTeX\,
+\item
+\revtex~4.2 and all packages it requires,
+\item
+the AIP substyles for \revtex~4.2, and
+\item
+any further \LaTeX\ packages used in your document. 
+\end{itemize}
+
+The easiest way to obtain all of the needed software is to install an up-to-date distribution of \TeX,
+like \TeX Live, available on CTAN.
+
+To obtain the most up-to-date version of this software, please see \url{http://publishing.aip.org/authors/preparing-your-manuscript}.
+
+
+\subsection{Submitting to AIP Journals}
+
+Authors preparing a manuscript for submission to
+AIP journals should consult the Information for Contributors for the applicable journal,
+available through links at \url{http://scitation.aip.org/authors}. 
+These requirements are not covered systematically in this author's guide; 
+you are responsible for understanding the requirements of the particular journal to which
+you will submit your article.
+
+For further information about journal requirements, contact the Editorial
+Office of the appropriate journal. (Follow links at \url{http://scitation.aip.org/authors}.)
+
+\subsection{Contact Information}\label{sec:resources}%
+Any bugs, problems, or inconsistencies concerning the AIP journal substyles
+should be reported to AIP support at \href{mailto:tex at aip.org}{tex at aip.org}. 
+Reports should include information on the error and a 
+\textit{small} sample document that manifests the problem, if possible. 
+(Please don't send large files!) 
+
+Feedback concerning \revtex~4.2 itself should be sent, as usual, 
+to the American Physical Society at\\ \href{mailto:revtex at aps.org}{revtex at aps.org}. 
+
+To determine if the problem you are experiencing belongs to \revtex\ or is specific to the
+AIP substyles, simply remove \texttt{aip} from your document class options and rerun 
+your document. If the problem goes away, you may assume that it is due to the AIP substyles;
+if not, it belongs to \revtex.
+
+\section{Sample \LaTeXe\ Document}
+As the \revtex\ documentation makes clear, your document employs a \LaTeXe\ document class
+(specifically \texttt{revtex4-2.cls}), so you should use 
+the \LaTeXe\ commands and environments familiar to you with, say, the
+standard article class \texttt{revtex4-2.cls}, and you will be able to 
+employ many of the packages you are used to using with \LaTeXe.
+
+Using \texttt{aipsamp.tex} as an example, 
+your document will start with the usual \revtex\ \cmd\documentclass\ statement, but with
+a particular document class option \texttt{aip} that specifies the AIP substyle:
+\begin{verbatim}
+\documentclass[aip]{revtex4-2}
+\end{verbatim}
+You will then invoke the \LaTeXe\-compatible packages your document requires, say:
+\begin{verbatim}
+\usepackage{graphicx}%
+\usepackage{dcolumn}%
+\usepackage{bm}%
+\end{verbatim}
+follow up with your document content:
+\begin{verbatim}
+\begin{document}
+...
+\end{verbatim}
+and finish with a statement specifying your Bib\TeX\ database:
+\begin{verbatim}
+\bibliography{aipsamp}
+\end{document}
+\end{verbatim}
+
+The books
+in the bibliography of this guide provide extensive coverage of all topics
+pertaining to preparing documents under \LaTeXe\; they are highly recommended. 
+
+\section{\revtex\ Class Options Specific to AIP}
+
+\subsection{Journal Substyle}
+To access particular features of the AIP substyle, you will specify an additional document class option: the journal substyle, e.g.,
+\begin{verbatim}
+\documentclass[aip,jcp]{revtex4-2}
+\end{verbatim}
+in this case, \textit{J. Chem. Phys.}, the default. 
+A complete list of AIP journals with the corresponding journal substyle appears in Table~\ref{tab:journals}.
+\begin{table}
+\caption{\label{tab:journals}AIP journal substyles}
+\begin{ruledtabular}
+\begin{tabular}{ll}
+\textbf{Journal} & \textbf{class option} \\
+\itshape AIP Advances            &\texttt{adv}\\
+\itshape Appl. Phys. Lett. &\texttt{apl}\\
+\itshape Appl. Phys. Lett. Mater.&\texttt{apm}\\
+\itshape Biomicrofluidics  &\texttt{bmf}\\
+\itshape Chaos             &\texttt{cha}\\
+\itshape J. Appl. Phys.    &\texttt{jap}\\
+\itshape J. Chem. Phys.    &\texttt{jcp}\footnotemark[1]\\
+\itshape J. Math. Phys.    &\texttt{jmp}\\
+\itshape J. Renewable Sustainable Energy&\texttt{rse}\\
+\itshape Phys. Fluids      &\texttt{pof}\\
+\itshape Phys. Plasmas     &\texttt{pop}\\
+\itshape Rev. Sci. Instrum.&\texttt{rsi}\\
+\itshape Structural Dynamics     &\texttt{sd}\\
+\end{tabular}
+\end{ruledtabular}
+\footnotetext[1]{Default journal substyle.}
+\end{table}
+
+\subsection{Options for Citations and Bibliography}
+The citation style for AIP journals is:
+\begin{itemize}
+\item 
+numerical (default style), 
+\item
+author-year, and
+\item
+numerical author-year,
+\end{itemize}
+the latter two styles being only allowed for \textit{Chaos} or \textit{J. Math. Phys.}
+
+The familiar numerical citations and numbered bibliography are the default for most journals: 
+citations are superscript numbers, and the (numbered) bibliographic entries appear in the order cited. 
+
+Author-year citations are only allowed for 
+\textit{Chaos} or \textit{J. Math. Phys.}, with citations given in author-and-year format. 
+Bibliographic entries are sorted by alphabetical order of first author's surname, then by year. 
+
+Numerical author-year citations 
+(only allowed for \textit{Chaos} or \textit{J. Math. Phys.}) 
+are superscript numbers, just like numerical citations, 
+but the bibliographic entries are sorted like the author-year entries and are numbered. 
+This means that the first citation will not necessarily be~1.
+
+To obtain the numerical style, simply accept the default, or supply a class option of \texttt{numerical}:
+\begin{verbatim}
+\documentclass[aip,numerical]{revtex4-2}
+\end{verbatim}
+For author-year citations for \textit{Chaos} or \textit{J. Math. Phys.}, 
+you may specify the \texttt{author-year} option:
+\begin{verbatim}
+\documentclass[aip,author-year]{revtex4-2}
+\end{verbatim}
+Each of the above two options are part of standard \revtex.
+
+To obtain numerical author-year citations 
+for \textit{Chaos} or \textit{J. Math. Phys.}, 
+give the author-numerical option:
+\begin{verbatim}
+\documentclass[aip,author-numerical]{revtex4-2}
+\end{verbatim}
+Note that the \texttt{author-numerical} option is not part of standard \revtex\, so use of it
+outside of the AIP substyles may not have any effect. 
+
+\subsection{Formatting Options}
+There are two commonly used formats for an article you may write. 
+One will comply with the manuscript submission formatting requirements of the editorial office of the journal you are submitting to.
+The other will emulate the format of your article in the published journal itself. 
+
+For journal submission, accept the default, or you may specify the \texttt{preprint} option:
+\begin{verbatim}
+\documentclass[aip,preprint]{revtex4-2}
+\end{verbatim}
+To emulate the formatting of the journal, specify the \texttt{reprint} option:
+\begin{verbatim}
+\documentclass[aip,reprint]{revtex4-2}
+\end{verbatim}
+Note that emulation is not by any means complete: the fonts used will differ, and therefore
+the length of the article will not represent an accurate estimate. 
+Other details may also differ. 
+
+A summary of class options of interest to AIP authors appears in Table~\ref{tab:options}.
+\begin{table}
+\caption{\label{tab:options}Other class options}
+\begin{ruledtabular}
+\begin{tabular}{ll}
+\textbf{Function} & \textbf{class option} \\
+\multicolumn{2}{l}{\textit{Citation and References}}\\
+superscript numbered&\texttt{numerical}\footnotemark[1]\textsuperscript{,}\footnotemark[2]\\
+author-year&\texttt{author-year}\footnotemark[3]\\
+numbered author-year&\texttt{author-numerical}\footnotemark[3]\\
+%
+\multicolumn{2}{l}{\textit{Format}}\\
+journal submission&\texttt{preprint}\footnotemark[1]\\
+journal emulation&\texttt{reprint}\\
+\end{tabular}
+\end{ruledtabular}
+\footnotetext[1]{Default option.}%
+\footnotetext[2]{Standard}%
+\footnotetext[3]{Only allowed for \textit{Chaos} or \textit{J. Math. Phys.}}%
+\end{table}
+
+\section{Useful \LaTeXe\ Markup}
+\LaTeXe\ markup is the preferred way to structure your file. 
+In general, the use of low-level commands like \TeX\ primitives or Plain \TeX\ macros 
+is less preferable. 
+Please see the \revtex\ User's Guide,\cite{Note2} 
+the \LaTeX\ manual,\cite{LaTeXman} 
+and the \LaTeXe\ book\cite{Compan} 
+for further details. 
+
+\subsection{Title and Front Matter}\label{sec:front}
+
+The \revtex\ User's Guide has complete information on using \revtex's special markup for your
+article's title, author list, abstract, and other front matter elements. 
+Note that class option \texttt{superscriptaddress} is the default for the AIP substyles, 
+as required by all AIP journals. 
+
+\subsection{Lead Paragraph}
+One AIP journal, \textit{Chaos}, requires a paragraph of text to precede the first
+\cmd\section\ of the article; 
+this is known as a lead paragraph and is formatted boldface. 
+To give your article a lead paragraph, 
+include a quotation environment ahead of the first \cmd\section\ command:
+\begin{verbatim}
+\documentclass[aip]{revtex4-2}
+\begin{document}
+ \begin{quotation}
+  Here is my lead paragraph!
+ \end{quotation}
+ \section{Introduction}
+...
+\end{verbatim}
+
+The \texttt{quotation} environment functions normally after the first \cmd\section\ command in the document.
+
+\section{Body}
+
+For general information on commands used in the body of the document, see the \revtex\ User's Guide.
+Herein are some features specific to the AIP author.
+
+\subsection{Footnotes}
+
+If you are using numbered citations (numerical or numbered author-year), 
+footnotes are by default incorporated into the reference section 
+along with your bibliographic entries. 
+This automated feature is only effective if you use Bib\TeX\ to prepare your
+bibliography. 
+
+Author-year style bibliography does not lend itself to such a treatment, 
+so by default footnotes appear in text as is usual. 
+However, be advised that, if your article is accepted for publication,
+footnotes may be incorporated into text during the production process.
+
+\section{Citations and References}\label{sec:endnotes}
+
+The preparation of your bibliography ``by hand'' is possible; 
+however, if you do so, 
+you will be entirely responsible 
+for compliance with submission requirements for your bibliographic entries, 
+for incorporating any text footnotes into the references, 
+and for checking bibliographic entries. 
+(In this connection, you may find useful the file \texttt{reftest.tex}, distributed with \revtex.)
+
+There are numerous reasons to use Bib\TeX, not least because it automates the first and second of the above checks. 
+
+\subsection{\label{sec:use-bib}Using Bib\protect\TeX}
+
+Refer to the \revtex\ User's Guide, the \LaTeX\ manual, and the Bib\TeX\ manual
+for full information about using Bib\TeX. 
+
+When using Bib\TeX\, keep in mind that changing your bibliography style or citation style
+(via the document class options described above) will require you to rerun Bib\TeX.
+The standard litany (using \texttt{aipsamp.tex} as an example) for this is:
+\begin{verbatim}
+> latex aipsamp
+> bibtex aipsamp
+> latex aipsamp
+> latex aipsamp
+\end{verbatim}
+Here, the first invocation of \texttt{latex} has the effect of rewriting the
+\texttt{aipsamp.aux} file,
+and the invocation of \texttt{bibtex} creates a new \texttt{aipsamp.bbl} file. 
+The next two runs of \texttt{latex} are then required: 
+the first to update the \texttt{aipsamp.aux} file reflecting the new values of your citations
+and the second to employ those citations correctly. 
+Be sure to check the end of the \texttt{aipsamp.log} file for any message advising you to 
+rerun \texttt{latex}. 
+
+\subsection{Multiple References per Citation}
+In an article using numerical citations, 
+it is not uncommon to encounter the need for a citation 
+that refers to more than one article or other reference. 
+To accommodate such a case, \revtex~4.2 implements markup similar to that of the 
+\texttt{mcite} package for \LaTeXe. 
+
+Let's say that two citation keys \texttt{able} and \texttt{baker} 
+need to be combined into a single reference.
+The syntax for the \cmd\cite\ command is:
+\begin{verbatim}
+word\cite{able,*baker} further text
+\end{verbatim}
+When you run Bib\TeX\, the resulting bibliography will contain the two entries, but run together
+as a single numbered reference.
+In the \cmd\cite\ command argument, any cite key that starts with the * character
+signifies that its bibliographic entry is to be joined together with the one preceding it;
+the \texttt{*} may join together any number of entries into a single reference.
+
+\begin{thebibliography}{9}\label{sec:TeXbooks}%
+\bibitem{Note1}
+For help regarding the installation of this software and its use, please send email to \href{mailto:tex at aip.org}{tex at aip.org}.
+%
+\bibitem{Note2}
+Available with the \revtex\ distribution, see \url{http://journals.aps.org/revtex/}.
+%
+\bibitem[Lamport(1996)]{LaTeXman} 
+L. Lamport, 
+\emph{\LaTeX\, a Document Preparation System} 
+(Addison-Wesley, Reading, MA, 1996).
+%
+\bibitem[Goossens(1994)]{Compan} 
+M. Goosens, F. Mittelbach, and A. Samarin, 
+\emph{The \LaTeX\ Companion} 
+(Addison-Wesley, Reading, MA, 1994).
+%
+\bibitem[Knuth(1986)]{TeXbook} 
+D. E. Knuth, 
+\emph{The \TeX book} 
+(Addison-Wesley, Reading, MA, 1986). 
+%
+\bibitem[Kopka(1995)]{Guide} 
+H. Kopka and P. Daly, 
+\emph{A Guide to \LaTeXe} 
+(Addison-Wesley, Reading, MA, 1995).
+%
+\bibitem[Goossens(1997)]{CompanG} 
+M. Goossens, S. Rahtz, and F. Mittelbach, 
+\emph{The \LaTeX\ Graphics Companion} 
+(Addison-Wesley, Reading, MA, 1997).
+%
+\bibitem[Rahtz(1999)]{CompanW} 
+S. Rahtz, M. Goossens \emph{et al.},
+\emph{The \LaTeX\ Web Companion} 
+(Addison-Wesley, Reading, MA, 1999).
+%
+\end{thebibliography}
+
+\end{document}
+


Property changes on: trunk/Master/texmf-dist/doc/latex/revtex/aip/aipguide4-2.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/doc/latex/revtex/aip/docs.sty
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/aip/docs.sty	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/aip/docs.sty	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,129 +0,0 @@
-% authguide.rty - macros for processing revguide.tex under \documentclass{revtex4}
-% Text entities
-\DeclareRobustCommand\SNG{\emph{Physical Review Style and Notation Guide}}
-\DeclareRobustCommand\LUG{\emph{\LaTeX{} User's Guide \& Reference Manual}}
-\DeclareRobustCommand\revtex{REV\TeX}
-\DeclareRobustCommand\marglat{\marginpar[\textbf{2e}]{\textbf{2e}}} 
-\DeclareRobustCommand\margrev{\marginpar[\textbf{4}]{\textbf{4}}} 
-\DeclareRobustCommand\AmS{%
- {\protect\the\textfont\tw@ A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}%
-}%
-\DeclareRobustCommand\AmSLaTeX{\AmS-\LaTeX}
-\DeclareRobustCommand\BibTeX{{\rm B}{\sc ib}\TeX}
-%
-% Various forms of self-indexing commands:
-%    \begin{macrocode}
-\DeclareRobustCommand{\m}[1]{%
- \meta{#1}%
- \index{#1=\string\meta{#1} placeholder}\index{placeholder>#1=\string\meta{#1}}%
-}%
-\DeclareRobustCommand\meta[1]{%
- \mbox{\m at th\LANGLE\itshape#1\/\RANGLE}%
-}%
-\def\LANGLE{$\langle$}%
-\def\RANGLE{$\rangle$}%
-\DeclareRobustCommand{\marg}[1]{%
- {\ttfamily\string{}\meta{#1}{\ttfamily\string}}%
- \index{#1=\string\ttt{#1}, argument}\index{argument>#1=\string\ttt{#1}}%
-}%
-\DeclareRobustCommand{\aarg}[1]{%
- {\ttfamily\string{}#1{\ttfamily\string}}%
-}%
-\let\oarg\undefined
-\DeclareRobustCommand{\oarg}[1]{%
- {\ttfamily[%]
-  }\meta{#1}{\ttfamily%[
- ]}%
- \index{#1=\string\ttt{#1}, optional argument}%
- \index{argument, optional>#1=\string\ttt{#1}}%
-}%
-\DeclareRobustCommand\cmd{\begingroup\makeatletter\@cmd}%
-\long\def\@cmd#1{%
- \endgroup
- \cs{\expandafter\cmd at to@cs\string#1}%
- \expandafter\cmd at to@index\string#1\@nil
-}%
-\def\cmd at to@cs#1#2{\char\number`#2\relax}%
-\def\cmd at to@index#1#2\@nil{%
- \index{#2=\string\cmd#1#2}%\index{command>#2=\string\cmd#1#2}%
-}%
-\DeclareRobustCommand\cs[1]{{\ttfamily\char`\\#1}}%
-\def\scmd#1{%
- \cs{\expandafter\cmd at to@cs\string#1}%
- \expandafter\scmd at to@index\string#1\@nil
-}%
-\def\scmd at to@index#1#2\@nil#3{%
- \index{\string$#3=\string\cmd#1#2---#3}%
-%\index{command>\string$#3=\string\cmd#1#2---#3}%
-}%
-\DeclareRobustCommand\env{\name at idx{environment}}%
-\DeclareRobustCommand\envb[1]{%
- {\ttfamily\string\begin\string{}\env{#1}{\ttfamily\string}}%
-}%
-\DeclareRobustCommand\enve[1]{{\ttfamily\string\end\string{}\env{#1}{\ttfamily\string}}}%
-\DeclareRobustCommand*{\file}[1]{%
- {\ttfamily#1}%
- \index{#1=\string\ttt{#1}}\index{file>#1=\string\ttt{#1}}%
-}%
-\DeclareRobustCommand\substyle{\name at idx{document substyle}}%
-\DeclareRobustCommand\classoption{\name at idx{document class option}}%
-\DeclareRobustCommand\classname{\name at idx{document class}}%
-\def\name at idx#1#2{%
- {\ttfamily#2}%
- \index{#2\space#1=\string\ttt{#2}\space#1}\index{#1>#2=\string\ttt{#2}}%
-}%
-%
-% Needed for index:
-%
-\def\ttt{\texttt}%
-\def\pfill{\ }%
-\def\efill{\ }%
-\let\scan at allowedfalse\relax
-%\makeindex
-\AtEndDocument{\@input@{\jobname.ind}\null}%
-%
-% Processing options
-%
-%
-% Layout: override revtex4|aps
-\c at secnumdepth2
-\prepdef\@verbatim{\topsep.5\baselineskip}%
-\renewenvironment{quotation}{%
- \list{}{%
-    \listparindent 10\p@
-    \itemindent\listparindent
-    \leftmargin10\p@
-    \rightmargin\leftmargin
-    \parsep \z@ \@plus\p@
-    \small
- }%
- \item[]%
-}{%
- \endlist
-}%
-\renewenvironment{quote}{%
- \list{}{%
-  \leftmargin\z@
-  \rightmargin\leftmargin
- }\item[]%
-}{%
- \endlist
-}%
-\leftmargini\parindent
-\def\descriptionlabel#1{%
-  \hspace\labelsep\ignorespaces
-  #1\unskip
-}%
-\def\toprule{\hline\hline\frstrut}%
-\def\colrule{\hline\frstrut}%
-\def\frstrut{\vrule height2.5ex width\z@ depth\z@\relax}%
-\def\lrstrut{\vrule height\z@ width\z@ depth.5ex\relax}%
-%
-% Klootches
-%
-\let\savenofiles\nofiles
-%
-% Patches:
-%
-%
-\endinput

Deleted: trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-1.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-1.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-1.tex	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-1.tex	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,429 +0,0 @@
-%% ****** Start of file apsguide4-1.tex ****** %
-%%
-%%   This file is part of the APS files in the REVTeX 4.1 distribution.
-%%   Version 4.1r of REVTeX, August 2010.
-%%
-%%   Copyright (c) 2009, 2010 The American Physical Society.
-%%
-%%   See the REVTeX 4.1 README file for restrictions and more information.
-%%
-\documentclass[twocolumn,secnumarabic,amssymb, nobibnotes, aps, prd]{revtex4-1}
-%\usepackage{acrofont}%NOTE: Comment out this line for the release version!
-\newcommand{\revtex}{REV\TeX\ }
-\newcommand{\classoption}[1]{\texttt{#1}}
-\newcommand{\macro}[1]{\texttt{\textbackslash#1}}
-\newcommand{\m}[1]{\macro{#1}}
-\newcommand{\env}[1]{\texttt{#1}}
-\setlength{\textheight}{9.5in}
-
-\begin{document}
-
-\title{APS Author Guide for \revtex~4.1\\(Version 1.0)}%
-
-\author{The American Physical Society}%
-\email[REVTeX Support: ]{revtex at aps.org}
-\affiliation{1 Research Road, Ridge, NY 11961}
-\date{August 10, 2010}%
-\maketitle
-\tableofcontents
-
-\section{Introduction}
-Articles published in American Physical Society journals are converted to 
-an XML file during final journal production. Other formats such
-as PDF are derived directly from the XML, which constitutes the version of record. 
-Even before journal production, the APS editorial process can make use
-of the information in a properly prepared manuscript. Information such
-as title, authors, affiliations, PACS codes, etc., can be automatically
-extracted and used to populate our manuscript database. References can
-also be culled, cross-checked for accuracy, and used to create a
-linked version for referees and editors. Moreover, time can be saved
-as referrals can be made electronically rather than by conventional
-mail. Thus, a well-prepared electronic manuscript can enhance the
-entire peer review process from author to reader while making the
-whole process less expensive. To this end, authors should follow the
-guidelines in this document when preparing their submissions to \textit{Physical Review Letters},
- \textit{Reviews of Modern Physics},  \textit{Physical Review A-E},  \textit{Physical Review Special Topics - Accelerators and Beams}, and  \textit{Physical Review Special Topics - Physics Education Research}.
- 
-Updated versions of this document will be made available at  \url{http://authors.aps.org/revtex4/}. For more complete
-descriptions of how to use the \revtex\ 4.1 macros, please see the
-\textit{\revtex~4.1 Author's Guide} included with the \revtex~4.1
-distribution. Questions about \revtex\ 4.1 and using it to submit to APS journals may be
-emailed to \texttt{revtex at aps.org}.
-
-\section{Formatting}
-\subsection{Preprint, reprint, and twocolumn options}
-\revtex~4.1 offers a new \classoption{reprint} class option to typeset a manuscript
-in a format that is a close approximation to the actual journal's appearance. It should
-be emphasized that this is only an \textit{approximation}; a manuscript may be substantially different
-in length or appearance after it goes through our production process. This is mostly due to the choice
-of fonts and the scaling of figures.
-
-\revtex\ 4.1 is designed to
-make it straightforward to switch between two-column and single-column
-formatting just by changing the class option. Authors may submit with
-either the \classoption{reprint} or the \classoption{twocolumn} class options.
-The \classoption{preprint} primarily does three things: It increases
-the font size to 12pt, increases the line spacing, and changes the
-formatting to single column.
-
-\subsection{Paper size}
-Manuscripts should be submitted to APS formatted for letter size
-paper. Papers are sent electronically to referees who may
-want to print them out. Letter size formatting ensures that this will
-be trouble free for all referees.
-
-\section{Marking up front matter}
-Perhaps the most important macros are those 
-pertaining to the markup of the front matter (title, authors,
-affiliations, abstract, PACS codes, etc.). Note that proper
-use of the \revtex\ 4.1 macros means that explicit centering environments
-in the front matter are not needed and should not be used.
-
-\subsection{Title}
-The title of the manuscript should be specified using the \m{title} macro. A
-double backslash {\textbackslash\textbackslash} may be used to force a line break in a long
-title.
-
-\subsection{Authors, affiliations, and collaborations}
-\label{sec:authors}
-\revtex\ 4.1 makes it straightforward to markup up author names and link them up properly with affiliations. Authors should let \revtex\ 4.1 do the work of grouping authors and affiliations and, if using the superscript style, numbering affiliations. Please follow these guidelines:
-\begin{itemize}
-\item Use a single \m{author} macro for each author's name. \revtex\ 4.1 automatically puts in all commas and the word `and.'
-\item Use the \m{surname} macro to explicitly indicate if an author's family name consists of more than one name or if the family name is not the author's last name.
-\item The \m{email} macro may be used to specify an author's e-mail
-address. The \m{thanks} macro must not be used for this. Only the
-e-mail address itself may appear in the macro's required argument.
-\item The \m{homepage} macro may be used to specify a URL associated
-with an author. The \m{thanks} macro must not be used for this. Only the
-URL may appear in the macro's required argument.
-\item The \m{altaffiliation} macro may be used to specify an alternate
-affiliation or temporary address for an author. The \m{thanks} macro
-must not be used for this. Only the affiliation
-may appear in the macro's required argument.
-\item The \m{thanks} macro may be used only if one of the more
-specific macros list above does not apply.
-\item Use a single \m{affiliation} for each affiliation.
-\item Superscripts linking authors to affiliations must be
-accomplished using the \classoption{superscriptaddress} class option
-rather than putting in explicit superscripts by hand.
-\item A collaboration may be specified by using the \m{collaboration}
-macro. The \m{author} macro must not be used for collaborations.
-\end{itemize}
-\subsection{Abstract}
-The abstract must be specified using the \env{abstract}
-environment. Note that in \revtex\ 4.1, the abstract must come before
-the \m{maketitle} command. \revtex\ 4.1 now allows the the use of the \env{description}
-environment within the abstract to provide \textit{structured abstracts}. For instance, \textit{Physical Review C} would like authors to provide abstracts with sections summarizing the paper's  \textbf{Background}, \textbf{Purpose}, \textbf{Method}, \textbf{Results}, and \textbf{Conclusions}. This can be accomplished in the following manner:
-\begin{verbatim}
-\begin{abstract}
-\begin{description}
-\item[Background] This part would describe the
-context needed to understand what the paper
-is about.
-\item[Purpose] This part would state the purpose
-of the present paper.
-\item[Method] This part describe the methods
-used in the paper.
-\item[Results] This part would summarize the
-results.
-\item[Conclusions] This part would state the
-conclusions of the paper.
-\end{description}
-\end{abstract}
-\end{verbatim}
-
-
-\subsection{PACS codes}
-If supplying suggested PACS codes, they must be supplied as a
-comma-separated list using a single \m{pacs} macro.
-
-\section{References and footnotes}
-Authors are strongly encouraged
-to use Bib\TeX\ when preparing their bibliographies.  If Bib\TeX\ is used, current production processes
-require that the \texttt{.bbl} file be included directly into the
-manuscript's main \texttt{.tex} file. \revtex\ 4.1 comes with two Bib\TeX\ style files for formatting
-references, one for the \textit{Physical Review} journals and one 
-for \textit{Review of Modern Physics}. The Bib\TeX\ styles support the optional display of journal article titles in the bibliography. To display the titles, use the \texttt{longbibliography} class option.
-
-The following apply whether
-Bib\TeX\ is used or not.  
-\begin{itemize}
-\item Authors should use the \m{cite} and \m{bibitem} commands to create
-bibliographies and to refer to items in the bibliography. ``By hand"
-numbering of references should be avoided.
-\item \revtex~4.1 provides new syntax for combining multiple citations into a single entry in the bibliography and for putting extra text before and after a reference. Please refer to \textit{\revtex~4.1 Author's Guide} included with the \revtex~4.1 distribution for full details.
-\item Footnotes must be specified using the \m{footnote}
-macro. \revtex\ 4.1 will place the footnotes in
-the bibliography for the \textit{Physical Review}
-journals. Please note that even if you don't use Bib\TeX, you may have to run Bib\TeX\ to get the footnotes to appear. Footnotes giving additional information about authors (such
-as e-mail addresses) must not be specified using the \m{footnote}
-macro (see Section~\ref{sec:authors}).
-\item Avoid custom footnotes using \m{footnotemark} and \m{footnotetext} [except in the context of tables (see
-Section~\ref{sec:tablenotes})].
-\item References should be formatted and specified according to the
-\textit{Physical Review Style Guide}. Note that using Bib\TeX\ automatically ensures this.
-\item In journal styles that use superscript citations (\textit{e.g.}, Phys.~Rev.~B), use \m{onlinecite} to create references that appear on the baseline (\textit{i.e.}, Ref.~4). For superscript citations, use the proper journal class option  rather than creating superscripts by hand.
-\item URLs should be specified using the \m{url} macro. Bib\TeX\ will automatically take
-care of this if the \texttt{url} field is used.
-\item E-print identifiers should be included using the \m{eprint} macro. Bib\TeX\ will automatically take care of this if the \texttt{eprint} field is used.
-\end{itemize}
-
-\section{Body of the paper}
-\subsection{Sectioning and cross-referencing}
-For sectioning a manuscript, the basic rule is to use the appropriate
-sectioning commands (\m{section}, \m{subsection}, \m{subsubsection},
-\textit{etc.}). Cross-referencing a section must be done by using the
-proper \m{label} and \m{ref} commands. Cross-referencing by hand is
-not allowed. \m{part}, \m{chapter}, and \m{subparagraph} should not be
-used.
-
-\subsection{Appendices}
-Appendices should be specified using the \m{appendix} command which
-specifies that all following sections create with the \m{section}
-commands are appendices. If there is only one appendix, then the
-\m{appendix*} command should be used instead.
-
-\subsection{Acknowledgments}
-Any acknowledgments should be included by using the
-\env{acknowledgments} environment. Note that in \revtex~4.1, this is
-an environment and not a command.
-
-\subsection{Counters}
-No counters may be created and the standard ones may not be
-altered. If an exceptional label is needed for an equation, the \m{tag}
-command (requires the \classoption{amsmath} class option) should be used. Please
-note that the use of the \m{tag} command may conflict with the use of the \classoption{hyperref} package
-due an incompatibility between \classoption{amsmath} and \classoption{hyperref}.
-
-\subsection{Fonts}
-It is preferable to avoid the older \TeX\ and \LaTeX\ 2.09 macros for
-controlling fonts such as \m{rm}, \m{it}, \textit{etc.} Rather, it is
-better to use the macros introduced in \LaTeXe.  If the older font
-commands are used (they really should be avoided!), be sure to use
-curly braces to properly limit the extent of the font
-change. \verb+{\bf ...}+ is the correct method.
-Commands for controlling text and math font changes are summarized in
-Table~\ref{tab:fonts}.
-
-\begin{table}
-\caption{\label{tab:fonts}\LaTeXe\ and AMS-\LaTeX\ font summary.}
-\begin{ruledtabular}
-\begin{tabular}{lp{2in}}
-\m{textit} & Italics. Replaces \m{it}\\
-\m{textbf} & Bold face. Replaces \m{bf}\\
-\m{textrm} & Roman. Replaces \m{rm}\\
-\m{textsl} & Slanted. Replaces \m{sl}\\
-\m{textsc} & Small caps. Replaces \m{sc}\\
-\m{textsf} & Sans serif. Replaces \m{sf}\\
-\m{texttt} & Typewriter. Replaces \m{tt}\\
-\m{textmd} & Medium series\\
-\m{textnormal} & Normal\\
-\m{textup} & Upright\\
-\m{mathbf} & Bold face\\
-\m{mathcal} & Replaces \m{cal}\\
-\m{mathit} & Italics\\
-\m{mathnormal} & Replaces \m{mit}\\
-\m{mathsf} & Sans serif\\
-\m{mathtt} & Typewriter\\
-\m{mathfrak} & Fraktur: Requires \classoption{amsfonts} or \classoption{amssymb} class option\\
-\m{mathbb} & Bold blackboard: Requires \classoption{amsfonts} or \classoption{amssymb} class option\\
-\m{bm} & Bold Greek and other math symbols: Requires
-\verb+\usepackage{bm}+ and may require the \classoption{amsfonts} class
-option
-\end{tabular}
-\end{ruledtabular}
-\end{table}
-
-Bold Greek letters and other bold math symbols should be accomplished
-with the use of \texttt{bm.sty} which is distributed as a required
-tool with the latest versions of \LaTeXe\ and should be loaded via
-\verb+\usepackage{bm}+. This package introduces the \m{bm}
-macro. Some bold characters may require using the
-\classoption{amsfonts} class option.
-
-New fonts may not be declared with \m{newfont}. Font attribute
-commands for selecting a font family, shape, and series are all
-disallowed; the standard \LaTeXe\ font selection macros list above
-should be used instead.
-
-Finally, the \m{symbol} macro is also not allowed.
-
-\subsection{Environments}
-\subsubsection{Lists}
-The standard list environments \texttt{itemize}, \texttt{enumerate},
-and \texttt{description} are allowed. The \m{item} macro with or without
-the optional argument is also allowed. Customization of the list environments
-(with macros such as \m{labelstyle}, \m{labelitemi}, \m{labelenumi},
-\m{itemsep}, etc.) is allowed but may be ignored in production.
-Generalized lists (\m{begin\{list\}}) and trivial lists
-(\m{begin\{trivlist\}}) are not allowed.
-
-\subsubsection{Other Environments}
-Creating generalized new environments with \m{newenvironment} is not
-allowed. Creating a new theorem environment with \m{newtheorem} is
-allowed though.
-
-The tabbing environment and the macros \m{=}, \m{$>$}, \m{`}, and
-\m{'} are allowed but may be ignored in production. Conversion
-programs used in production should recognize the escapes \m{a=},
-\m{a'}, and \m{a`} for using the corresponding accents within a
-tabbing environment though.
-
-The \env{verbatim} environment is allowed.
-
-\subsection{Boxes}
-Most boxes and macros to manipulate them are not allowed. These
-include \m{raisebox}, \m{parbox}, \m{minipage}, \m{rulebox},
-\m{framebox}, \m{mbox}, \m{fbox}, \m{savebox}, \m{newsavebox},
-\m{sbox}, \m{usebox}, and the environment \m{begin\{lrbox\}}. Rules
-produced with \m{rule} are not allowed.
-
-\subsubsection{Margin Notes}
-Margin notes created with \m{marginpar} are not allowed, as are the
-associated style parameters \m{marginparwidth}, \m{marginparsep}, and
-\m{marginparpush}.
-
-
-\section{Math Markup}
-In general, all math markup and the standard math environments from
-\LaTeXe\ are allowed. These include \m{begin\{math\}},
-\m{begin\{displaymath\}}, \m{begin\{equation\}},
-\m{begin\{eqnarray\}}, and \m{begin\{eqnarray*\}}. The shortcuts \$,
-\$\$, \m{[}, and \m{]} are allowed. In addition, authors may use
-almost all of the additional markup introduced by AMS-\LaTeX\ by using
-the \classoption{amsmath} class option. The explicit exceptions are
-\m{genfrac}, \m{boxed}, and \m{smash}. The markup contained in
-\texttt{amsextra} and \texttt{amsthm} may not be used
-though. Commutative diagrams created with the \texttt{amscd} package
-are acceptable.
-
-\section{Figures}
-\subsection{Figure inclusions}
-Figures should be included into a \revtex~4.1 manuscript by using the
-standard \LaTeXe\ macros. \LaTeXe\ includes
-several powerful packages for including the files in various
-formats. The two main packages are \texttt{graphics} and
-\texttt{graphicx}. Both offer a macro called
-\m{includegraphics};
-they mainly differ in how arguments for
-controlling figure placement (\textit{e.g.}, scaling and rotation)
-are passed to the \m{includegraphics}.
-
-The \env{figure} environment should be used to add a caption to the
-figure and to allow \LaTeX\ to number and place the figures where they
-fit best.  If a figure needs to be referred to in the text,
-rather than manually numbering the figures a \m{label} should be added
-to the figure environment (best practice is to put the label within
-the argument of the \m{caption} command) and the \m{ref} macro should be used to
-reference this label. Figures that span the page should use the
-\m{figure*} environment. The \env{picture} environment must not be
-used directly (one can include an Encapsulated PostScript figure that
-was produced using the \env{picture} environment of course).
-
-\subsection{\label{sec:figplace}Figure placement}
-Figures should be placed as close as possible to the point where they are first
-referenced. There is no need to place all figures
-separately at the end of the manuscript and it is preferred that
-authors leave the figures in their natural locations. Authors may
-also find useful the \revtex~4.1 \classoption{floatfix} class option
-which adds emergency float placement processing to avoid ``stuck''
-floats which would otherwise be deferred to the end of the job (and
-can lead to the fatal \texttt{``Too many unprocessed floats''}
-message).
-
-
-\section{Tables}
-\label{sec:tables}
-The standard \LaTeXe\ table formatting environments are supported as is
-the use of the \texttt{longtable} package. Tables may be reformatted
-during production to meet APS style guidelines.
-Here are some helpful hints for trying to get tables formatted correctly:
-\begin{itemize}
-\item Use the \texttt{longtable} package to get tables to break
-across pages.
-\item The macro \m{squeezetable} will reduce the font size of the
-table. This macro must occur within a group outside the table
-environment. The proper markup is:
-\begin{verbatim}
-\begingroup
-\squeezetable
-\begin{table}
-...
-\end{table}
-\endgroup
-\end{verbatim}
-\item Try using the float placement option \texttt{H} which will
-enable \LaTeX\ to break a float across pages. Long tables are more
-attractively set with \env{longtable} however.
-\begin{verbatim}
-\begin{table}[H]
-\begin{ruledtabular}
-\begin{tabular}
-...
-\end{tabular}
-\end{ruledtabular}
-\end{table}
-\end{verbatim}
-\end{itemize}
-
-\subsection{Doubled rules and table formatting}
-\revtex\ 4.1 provides the \env{ruledtabular} environment which
-automatically puts the scotch rules (double lines) around tables and
-formats all enclosed \env{tabular} environments to the full width of
-the tables and improves inter-column spacing. This environment should
-be used whenever possible.
-
-\subsection{Wide tables}
-When typesetting using \classoption{twocolumn}, tables can either span
-a single column or both columns. Using the '\verb+*+'-ed version of
-the \env{table} or \env{longtable} environments produces wide tables
-that span the columns.
-
-Tables that are very wide and that may be better typeset in a
-landscape orientation (rotated 90 degrees) should be enclosed in a
-\env{turnpage} environment. This will place the rotated table on its own
-page. Note that some dvi previewers may not be able to show the table
-properly, but \texttt{dvips} and \texttt{pdflatex} work correctly.
-
-\subsection{Table placement}
-Tables should be placed as close as possible to the point where they
-are first referenced. There is no need to place all tables separately
-at the end of the manuscript and this is not desirable for APS
-purposes. The class option \classoption{floatfix} may be helpful for
-table placement as well as figure placement (see Section~\ref{sec:figplace}).
-
-\subsection{Aligning columns on a decimal point}
-The standard \LaTeXe\ macro package \classoption{dcolumn} should be
-used to accomplish this.
-
-\subsection{Tablenotes}
-\label{sec:tablenotes}
-Footnotes in tables (tablenotes) should use the \m{footnote}
-macro. However, if more than one reference to the same footnote is
-needed, authors may use \m{footnotetext} and \m{footnotemark}. This
-will produce notes (labeled by lower-case roman letters) inserted
-below the table rather than in the reference section or at the bottom
-of the page.
-
-
-\section{Author-defined macros}
-Authors may define convenience macros to save keystrokes. This means
-that the macros may not invoke \TeX\ macros such as \m{if} or other
-context dependent commands. Also, \LaTeXe\ provides three macros for
-declaring new commands: \m{providecommand}, \m{newcommand}, and
-\m{renewcommand} (as well as their `\verb+*+'-ed versions). These
-should be used. Authors may not use \TeX\relax's low-level commands
-\m{def}, \m{edef}, and \m{gdef}.
-
-\section{Summary}
-To ensure the best use of \TeX\ manuscripts, authors need to follow
-the guidelines specified here. Use of low-level formatting commands to
-finely control horizontal and vertical spacing may be ignored during
-production, or even worse, make it impossible to convert the
-manuscript to XML. Authors should keep
-things as simple as possible and correctly use the proper \revtex~4.1
-or \LaTeXe\ macros. Any questions about usage may be directed to
-\texttt{revtex at aps.org}.
-
-\end{document}
-

Added: trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.pdf	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.pdf	2019-01-11 22:30:04 UTC (rev 49672)

Property changes on: trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.tex	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,425 @@
+%% ****** Start of file apsguide4-2.tex ****** %
+%%
+%%   This file is part of the APS files in the REVTeX 4.2 distribution.
+%%   Version 4.2b of REVTeX, December 2018.
+%%
+%%   Copyright (c) 2019 The American Physical Society.
+%%
+%%   See the REVTeX 4.2 README file for restrictions and more information.
+%%
+\documentclass[twocolumn,secnumarabic,amssymb, nobibnotes, aps, prd]{revtex4-2}
+%\usepackage{acrofont}%NOTE: Comment out this line for the release version!
+\newcommand{\revtex}{REV\TeX\ }
+\newcommand{\classoption}[1]{\texttt{#1}}
+\newcommand{\macro}[1]{\texttt{\textbackslash#1}}
+\newcommand{\m}[1]{\macro{#1}}
+\newcommand{\env}[1]{\texttt{#1}}
+\setlength{\textheight}{9.5in}
+
+\begin{document}
+
+\title{APS Author Guide for \revtex~4.2}%
+
+\author{American Physical Society}%
+\email[REVTeX Support: ]{revtex at aps.org}
+\affiliation{1 Research Road, Ridge, NY 11961}
+\date{December 2018}%
+\maketitle
+\tableofcontents
+
+\section{Introduction}
+Articles published in American Physical Society journals are converted to 
+an XML file during final journal production. Other formats such
+as PDF are derived directly from the XML, which constitutes the version of record. 
+Even before journal production, the APS editorial process can make use
+of the information in a properly prepared manuscript. Information such
+as title, authors, affiliations, etc., can be automatically
+extracted and used to populate our manuscript database. References can
+also be culled, cross-checked for accuracy, and used to create a
+linked version for referees and editors. Moreover, time can be saved
+as referrals can be made electronically rather than by conventional
+mail. Thus, a well-prepared electronic manuscript can enhance the
+entire peer review process from author to reader while making the
+whole process less expensive. To this end, authors should follow the
+guidelines in this document when preparing their submissions to \textit{Physical Review Letters},
+ \textit{Reviews of Modern Physics},  \textit{Physical Review A-E, Physical Review X, Physical Review Applied. Physical Review Fluids, Physical Review Materials, Physical Review Accelerators and Beams,} and \textit{Physical Review Physics Education Research}.
+ 
+Updated versions of this document will be made available at  \url{https://journals.aps.org/revtex/}. For more complete
+descriptions of how to use the \revtex\ 4.2 macros, please see the
+\textit{\revtex~4.2 Author's Guide} included with the \revtex~4.2
+distribution. Questions about \revtex\ 4.2 and using it to submit to APS journals may be
+emailed to \texttt{revtex at aps.org}.
+
+\section{Formatting}
+\subsection{Preprint, reprint, and twocolumn options}
+\revtex~4.2 offers a \classoption{reprint} class option to typeset a manuscript
+in a format that is a close approximation to the actual journal's appearance. It should
+be emphasized that this is only an \textit{approximation}; a manuscript may be substantially different
+in length or appearance after it goes through our production process. This is mostly due to the choice
+of fonts and the scaling of figures.
+
+\revtex\ 4.2 is designed to
+make it straightforward to switch between two-column and single-column
+formatting just by changing the class option. Authors may submit with
+either the \classoption{reprint} or the \classoption{twocolumn} class options.
+The \classoption{preprint} primarily does three things: It increases
+the font size to 12pt, increases the line spacing, and changes the
+formatting to single column.
+
+\subsection{Paper size}
+Manuscripts should be submitted to APS formatted for letter size
+paper. Papers are sent electronically to referees who may
+want to print them out. Letter size formatting ensures that this will
+be trouble free for all referees.
+
+\section{Marking up front matter}
+Perhaps the most important macros are those 
+pertaining to the markup of the front matter (title, authors,
+affiliations, abstract, etc.). Note that proper
+use of the \revtex\ 4.2 macros means that explicit centering environments
+in the front matter are not needed and should not be used.
+
+\subsection{Title}
+The title of the manuscript should be specified using the \m{title} macro. A
+double backslash {\textbackslash\textbackslash} may be used to force a line break in a long
+title.
+
+\subsection{Authors, affiliations, and collaborations}
+\label{sec:authors}
+\revtex\ 4.2 makes it straightforward to input author names and link them up properly with affiliations. Authors should let \revtex\ 4.2 do the work of grouping authors and affiliations and, if using the superscript style, numbering affiliations. Please follow these guidelines:
+\begin{itemize}
+\item Use a single \m{author} macro for each author's name. \revtex\ 4.2 automatically puts in all commas and the word `and.'
+\item Use the \m{surname} macro to explicitly indicate if an author's family name consists of more than one name or if the family name is not the author's last name.
+\item The \m{email} macro may be used to specify an author's e-mail
+address. The \m{thanks} macro must not be used for this. Only the
+e-mail address itself may appear in the macro's required argument.
+\item The \m{homepage} macro may be used to specify a URL associated
+with an author. The \m{thanks} macro must not be used for this. Only the
+URL may appear in the macro's required argument.
+\item The \m{altaffiliation} macro may be used to specify an alternate
+affiliation or temporary address for an author. The \m{thanks} macro
+must not be used for this. Only the affiliation
+may appear in the macro's required argument.
+\item The \m{thanks} macro may be used only if one of the more
+specific macros list above does not apply.
+\item Use a single \m{affiliation} for each affiliation.
+\item Superscripts linking authors to affiliations must be
+accomplished using the \classoption{superscriptaddress} class option
+rather than putting in explicit superscripts by hand.
+\item A collaboration may be specified by using the \m{collaboration}
+macro. The \m{author} macro must not be used for collaborations.
+\end{itemize}
+\subsection{Abstract}
+The abstract must be specified using the \env{abstract}
+environment. Note that in \revtex\ 4.2, the abstract must come before
+the \m{maketitle} command. \revtex\ 4.2 now allows the the use of the \env{description}
+environment within the abstract to provide \textit{structured abstracts}. For instance, \textit{Physical Review C} would like authors to provide abstracts with sections summarizing the paper's  \textbf{Background}, \textbf{Purpose}, \textbf{Method}, \textbf{Results}, and \textbf{Conclusions}. This can be accomplished in the following manner:
+\begin{verbatim}
+\begin{abstract}
+\begin{description}
+\item[Background] This part would describe the
+context needed to understand what the paper
+is about.
+\item[Purpose] This part would state the purpose
+of the present paper.
+\item[Method] This part describe the methods
+used in the paper.
+\item[Results] This part would summarize the
+results.
+\item[Conclusions] This part would state the
+conclusions of the paper.
+\end{description}
+\end{abstract}
+\end{verbatim}
+
+\section{References and footnotes}
+Authors are strongly encouraged
+to use Bib\TeX\ when preparing their bibliographies.  If Bib\TeX\ is used, current production processes
+require that the \texttt{.bbl} file be included directly into the
+manuscript's main \texttt{.tex} file. \revtex\ 4.2 comes with two Bib\TeX\ style files for formatting
+references, one for the \textit{Physical Review} journals and one 
+for \textit{Review of Modern Physics}. In 4.2, the Bib\TeX\ styles have been modified to display journal article titles in the bibliography.
+
+The following apply whether
+Bib\TeX\ is used or not.  
+\begin{itemize}
+\item Authors should use the \m{cite} and \m{bibitem} commands to create
+bibliographies and to refer to items in the bibliography. ``By hand"
+numbering of references should be avoided.
+\item \revtex~4.2 provides new syntax for combining multiple citations into a single entry in the bibliography and for putting extra text before and after a reference. Please refer to \textit{\revtex~4.2 Author's Guide} included with the \revtex~4.2 distribution for full details.
+\item Footnotes must be specified using the \m{footnote}
+macro. \revtex\ 4.2 will place the footnotes in
+the bibliography for the \textit{Physical Review}
+journals. Please note that even if you don't use Bib\TeX, you may have to run Bib\TeX\ to get the footnotes to appear. Footnotes giving additional information about authors (such
+as e-mail addresses) must not be specified using the \m{footnote}
+macro (see Section~\ref{sec:authors}).
+\item Avoid custom footnotes using \m{footnotemark} and \m{footnotetext} [except in the context of tables (see
+Section~\ref{sec:tablenotes})].
+\item References should be formatted and specified according to the
+\textit{Physical Review Style Guide}. Note that using Bib\TeX\ automatically ensures this.
+\item URLs should be specified using the \m{url} macro. Bib\TeX\ will automatically take
+care of this if the \texttt{url} field is used.
+\item E-print identifiers should be included using the \m{eprint} macro. Bib\TeX\ will automatically take care of this if the \texttt{eprint} field is used.
+\end{itemize}
+
+Please see the \revtex~4.2 Author's Guide for new features in \revtex~4.2's APS Bib\TeX\ styles, including support for citing data sets, journals that use DOIs in place of page numbers, and journals that use year and issue instead of volume to uniquely identify articles.
+
+\section{Body of the paper}
+\subsection{Sectioning and cross-referencing}
+For sectioning a manuscript, the basic rule is to use the appropriate
+sectioning commands (\m{section}, \m{subsection}, \m{subsubsection},
+\textit{etc.}). Cross-referencing a section must be done by using the
+proper \m{label} and \m{ref} commands. Cross-referencing by hand is
+not allowed. \m{part}, \m{chapter}, and \m{subparagraph} should not be
+used.
+
+\subsection{Appendices}
+Appendices should be specified using the \m{appendix} command which
+specifies that all following sections create with the \m{section}
+commands are appendices. If there is only one appendix, then the
+\m{appendix*} command should be used instead.
+
+\subsection{Acknowledgments}
+Any acknowledgments should be included by using the
+\env{acknowledgments} environment. Note that in \revtex~4.2, this is
+an environment and not a command.
+
+\subsection{Counters}
+No counters may be created and the standard ones may not be
+altered. If an exceptional label is needed for an equation, the \m{tag}
+command (requires the \classoption{amsmath} class option) should be used. Please
+note that the use of the \m{tag} command may conflict with the use of the \classoption{hyperref} package
+due an incompatibility between \classoption{amsmath} and \classoption{hyperref}.
+
+\subsection{Fonts}
+It is preferable to avoid the older \TeX\ and \LaTeX\ 2.09 macros for
+controlling fonts such as \m{rm}, \m{it}, \textit{etc.} Rather, it is
+better to use the macros introduced in \LaTeXe.  If the older font
+commands are used (they really should be avoided!), be sure to use
+curly braces to properly limit the extent of the font
+change. \verb+{\bf ...}+ is the correct method.
+Commands for controlling text and math font changes are summarized in
+Table~\ref{tab:fonts}.
+
+\begin{table}
+\caption{\label{tab:fonts}\LaTeXe\ and AMS-\LaTeX\ font summary.}
+\begin{ruledtabular}
+\begin{tabular}{lp{2in}}
+\m{textit} & Italics. Replaces \m{it}\\
+\m{textbf} & Bold face. Replaces \m{bf}\\
+\m{textrm} & Roman. Replaces \m{rm}\\
+\m{textsl} & Slanted. Replaces \m{sl}\\
+\m{textsc} & Small caps. Replaces \m{sc}\\
+\m{textsf} & Sans serif. Replaces \m{sf}\\
+\m{texttt} & Typewriter. Replaces \m{tt}\\
+\m{textmd} & Medium series\\
+\m{textnormal} & Normal\\
+\m{textup} & Upright\\
+\m{mathbf} & Bold face\\
+\m{mathcal} & Replaces \m{cal}\\
+\m{mathit} & Italics\\
+\m{mathnormal} & Replaces \m{mit}\\
+\m{mathsf} & Sans serif\\
+\m{mathtt} & Typewriter\\
+\m{mathfrak} & Fraktur: Requires \classoption{amsfonts} or \classoption{amssymb} class option\\
+\m{mathbb} & Bold blackboard: Requires \classoption{amsfonts} or \classoption{amssymb} class option\\
+\m{bm} & Bold Greek and other math symbols: Requires
+\verb+\usepackage{bm}+ and may require the \classoption{amsfonts} class
+option
+\end{tabular}
+\end{ruledtabular}
+\end{table}
+
+Bold Greek letters and other bold math symbols should be accomplished
+with the use of \texttt{bm.sty} which is distributed as a required
+tool with the latest versions of \LaTeXe\ and should be loaded via
+\verb+\usepackage{bm}+. This package introduces the \m{bm}
+macro. Some bold characters may require using the
+\classoption{amsfonts} class option.
+
+New fonts may not be declared with \m{newfont}. Font attribute
+commands for selecting a font family, shape, and series are all
+disallowed; the standard \LaTeXe\ font selection macros list above
+should be used instead.
+
+Finally, the \m{symbol} macro is also not allowed.
+
+\subsection{Environments}
+\subsubsection{Lists}
+The standard list environments \texttt{itemize}, \texttt{enumerate},
+and \texttt{description} are allowed. The \m{item} macro with or without
+the optional argument is also allowed. Customization of the list environments
+(with macros such as \m{labelstyle}, \m{labelitemi}, \m{labelenumi},
+\m{itemsep}, etc.) is allowed but may be ignored in production.
+Generalized lists (\m{begin\{list\}}) and trivial lists
+(\m{begin\{trivlist\}}) are not allowed.
+
+\subsubsection{Other Environments}
+Creating generalized new environments with \m{newenvironment} is not
+allowed. Creating a new theorem environment with \m{newtheorem} is
+allowed though.
+
+The tabbing environment and the macros \m{=}, \m{$>$}, \m{`}, and
+\m{'} are allowed but may be ignored in production. Conversion
+programs used in production should recognize the escapes \m{a=},
+\m{a'}, and \m{a`} for using the corresponding accents within a
+tabbing environment though.
+
+The \env{verbatim} environment is allowed.
+
+\subsection{Boxes}
+Most boxes and macros to manipulate them are not allowed. These
+include \m{raisebox}, \m{parbox}, \m{minipage}, \m{rulebox},
+\m{framebox}, \m{mbox}, \m{fbox}, \m{savebox}, \m{newsavebox},
+\m{sbox}, \m{usebox}, and the environment \m{begin\{lrbox\}}. Rules
+produced with \m{rule} are not allowed.
+
+\subsubsection{Margin Notes}
+Margin notes created with \m{marginpar} are not allowed, as are the
+associated style parameters \m{marginparwidth}, \m{marginparsep}, and
+\m{marginparpush}.
+
+
+\section{Math Markup}
+In general, all math markup and the standard math environments from
+\LaTeXe\ are allowed. These include \m{begin\{math\}},
+\m{begin\{displaymath\}}, \m{begin\{equation\}},
+\m{begin\{eqnarray\}}, and \m{begin\{eqnarray*\}}. The shortcuts \$,
+\$\$, \m{[}, and \m{]} are allowed. In addition, authors may use
+almost all of the additional markup introduced by AMS-\LaTeX\ by using
+the \classoption{amsmath} class option. The explicit exceptions are
+\m{genfrac}, \m{boxed}, and \m{smash}. The markup contained in
+\texttt{amsextra} and \texttt{amsthm} may not be used
+though. Commutative diagrams created with the \texttt{amscd} package
+are acceptable.
+
+\section{Figures}
+\subsection{Figure inclusions}
+Figures should be included into a \revtex~4.2 manuscript by using the
+standard \LaTeXe\ macros. \LaTeXe\ includes
+several powerful packages for including the files in various
+formats. The two main packages are \texttt{graphics} and
+\texttt{graphicx}. Both offer a macro called
+\m{includegraphics};
+they mainly differ in how arguments for
+controlling figure placement (\textit{e.g.}, scaling and rotation)
+are passed to the \m{includegraphics}.
+
+The \env{figure} environment should be used to add a caption to the
+figure and to allow \LaTeX\ to number and place the figures where they
+fit best.  If a figure needs to be referred to in the text,
+rather than manually numbering the figures a \m{label} should be added
+to the figure environment (best practice is to put the label within
+the argument of the \m{caption} command) and the \m{ref} macro should be used to
+reference this label. Figures that span the page should use the
+\m{figure*} environment. The \env{picture} environment must not be
+used directly (one can include an Encapsulated PostScript figure that
+was produced using the \env{picture} environment of course).
+
+\subsection{\label{sec:figplace}Figure placement}
+Figures should be placed as close as possible to the point where they are first
+referenced. There is no need to place all figures
+separately at the end of the manuscript and it is preferred that
+authors leave the figures in their natural locations. Authors may
+also find useful the \revtex~4.2 \classoption{floatfix} class option
+which adds emergency float placement processing to avoid ``stuck''
+floats which would otherwise be deferred to the end of the job (and
+can lead to the fatal \texttt{``Too many unprocessed floats''}
+message).
+
+
+\section{Tables}
+\label{sec:tables}
+The standard \LaTeXe\ table formatting environments are supported as is
+the use of the \texttt{longtable} package. Tables may be reformatted
+during production to meet APS style guidelines.
+Here are some helpful hints for trying to get tables formatted correctly:
+\begin{itemize}
+\item Use the \texttt{longtable} package to get tables to break
+across pages.
+\item The macro \m{squeezetable} will reduce the font size of the
+table. This macro must occur within a group outside the table
+environment. The proper markup is:
+\begin{verbatim}
+\begingroup
+\squeezetable
+\begin{table}
+...
+\end{table}
+\endgroup
+\end{verbatim}
+\item Try using the float placement option \texttt{H} which will
+enable \LaTeX\ to break a float across pages. Long tables are more
+attractively set with \env{longtable} however.
+\begin{verbatim}
+\begin{table}[H]
+\begin{ruledtabular}
+\begin{tabular}
+...
+\end{tabular}
+\end{ruledtabular}
+\end{table}
+\end{verbatim}
+\end{itemize}
+
+\subsection{Doubled rules and table formatting}
+\revtex\ 4.2 provides the \env{ruledtabular} environment which
+automatically puts the scotch rules (double lines) around tables and
+formats all enclosed \env{tabular} environments to the full width of
+the tables and improves inter-column spacing. This environment should
+be used whenever possible.
+
+\subsection{Wide tables}
+When typesetting using \classoption{twocolumn}, tables can either span
+a single column or both columns. Using the '\verb+*+'-ed version of
+the \env{table} or \env{longtable} environments produces wide tables
+that span the columns.
+
+Tables that are very wide and that may be better typeset in a
+landscape orientation (rotated 90 degrees) should be enclosed in a
+\env{turnpage} environment. This will place the rotated table on its own
+page. Note that some dvi previewers may not be able to show the table
+properly, but \texttt{dvips} and \texttt{pdflatex} work correctly.
+
+\subsection{Table placement}
+Tables should be placed as close as possible to the point where they
+are first referenced. There is no need to place all tables separately
+at the end of the manuscript and this is not desirable for APS
+purposes. The class option \classoption{floatfix} may be helpful for
+table placement as well as figure placement (see Section~\ref{sec:figplace}).
+
+\subsection{Aligning columns on a decimal point}
+The standard \LaTeXe\ macro package \classoption{dcolumn} should be
+used to accomplish this.
+
+\subsection{Tablenotes}
+\label{sec:tablenotes}
+Footnotes in tables (tablenotes) should use the \m{footnote}
+macro. However, if more than one reference to the same footnote is
+needed, authors may use \m{footnotetext} and \m{footnotemark}. This
+will produce notes (labeled by lower-case roman letters) inserted
+below the table rather than in the reference section or at the bottom
+of the page.
+
+
+\section{Author-defined macros}
+Authors may define convenience macros to save keystrokes. This means
+that the macros may not invoke \TeX\ macros such as \m{if} or other
+context dependent commands. Also, \LaTeXe\ provides three macros for
+declaring new commands: \m{providecommand}, \m{newcommand}, and
+\m{renewcommand} (as well as their `\verb+*+'-ed versions). These
+should be used. Authors may not use \TeX\relax's low-level commands
+\m{def}, \m{edef}, and \m{gdef}.
+
+\section{Summary}
+To ensure the best use of \TeX\ manuscripts, authors need to follow
+the guidelines specified here. Use of low-level formatting commands to
+finely control horizontal and vertical spacing may be ignored during
+production, or even worse, make it impossible to convert the
+manuscript to XML. Authors should keep
+things as simple as possible and correctly use the proper \revtex~4.2
+or \LaTeXe\ macros. Any questions about usage may be directed to
+\texttt{revtex at aps.org}.
+
+\end{document}
+


Property changes on: trunk/Master/texmf-dist/doc/latex/revtex/aps/apsguide4-2.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-1.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-1.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-1.tex	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-1.tex	2019-01-11 22:30:04 UTC (rev 49672)
@@ -1,1737 +0,0 @@
-%% ****** Start of file authguide.tex ****** %
-%%
-%%   This file is part of the APS files in the REVTeX 4 distribution.
-%%   Version 4.1r of REVTeX, August 2010
-%%
-%%   Copyright (c) 2009, 2010 The American Physical Society.
-%%
-%%   See the REVTeX 4.1 README file for restrictions and more information.
-%%
-\listfiles
-\documentclass[%
-,aps%
- ,twocolumn%
- ,secnumarabic%
-,amssymb, amsmath,nobibnotes, aps, prl, floatfix]{revtex4-1}
-\usepackage{docs}%
-\usepackage{bm}%
-%\usepackage[colorlinks=true,linkcolor=blue]{hyperref}%
-%\nofiles
-\expandafter\ifx\csname package at font\endcsname\relax\else
- \expandafter\expandafter
- \expandafter\usepackage
- \expandafter\expandafter
- \expandafter{\csname package at font\endcsname}%
-\fi
-
-\begin{document}
-
-\title{\revtex~4.1 Author's Guide}%
-\author{American Physical Society}%
-\email{revtex at aps.org}
-\affiliation{1 Research Road, Ridge, NY 11961}
-\date{August 2010}%
-\maketitle
-\tableofcontents
-\clearpage
-\section{Introduction}
-
-This is the author's guide to \revtex~4.1, the preferred submission
-format for all APS and AIP journals. This guide is intended to be a concise
-introduction to \revtex~4.1. The documentation has been separated out
-into smaller units to make it easier to locate essential
-information.
-
-The following documentation is also part of the \revtex~4.1
-distribution. Updated versions of these will be maintained at
-the \revtex~4.1 homepage located at \url{http://authors.aps.org/revtex4/}.
-\begin{itemize}
-\item \textit{APS Author Guide for \revtex~4.1}
-\item \textit{Author's Guide to AIP Substyles for \revtex~4.1}
-\item \textit{\revtex~4.1 Command and Options Summary}
-\item \textit{What's New in  \revtex~4.1}
-\end{itemize}
-This guide assumes a working \revtex~4.1
-installation. Please see the installation instructions included with the
-distribution.
-\subsection{Changes in \revtex~4.1}
-The \revtex\ system for \LaTeX\ began its development in 1986 and has
-gone through three major revisions since then.  \revtex~4 was released in August, 2001. Since that time,
-many user requests for new features were received. The main goals for  \revtex~4.1 are to incorporate
-this user feedback and provide support for the journals of the American Institute of Physics (AIP) . It incorporates the following changes:
-
-\begin{itemize}
-\item \textbf{Added support for APS journal \textit{Physical Review Special Topics -- Physics Education Research}}.
-\item \textbf{Added support for AIP journals.} There is now an explicit \texttt{aip} society option along with support for AIP journals. Please see the \textit{Author's Guide to AIP Substyles for \revtex~4.1}. In addition, \revtex~4.1 provides an extensible system for the easy addition of new collections of journals.
-\item \textbf{Endnotes now ordered correctly.} Endnotes in the bibliography now appear in the correct order, interleaved with citations.
-\item \textbf{Multiple references in a single citation supported using a special starred (*) argument to the \cmd\cite\ command.} One of the major new features in 4.1 made possible by the joint work on \texttt{natbib 8.3}. Multiple Bib\TeX\ entries can be combined into a single \cmd\bibitem\ command.
-\item \textbf{Free form text can be prepended and appended to a bibliographic entry using the special starred (*) argument to the \cmd\cite\ command.} Often a citation in the bibliography will have explanatory text such as \textit{See also} or \textit{and references therein} before and after the actual citation. The new \revtex~4.1 \cmd\cite\ command allows the specification of both text to precede and follow a citation.
-\item \textbf{Structured Abstracts.} Use of the \texttt{description} environment in abstracts now provides for ``structured" abstracts.
-\item \textbf{Figures referring to videos now supported.} A ``figure" may now be labeled as a \textbf{Video} by using the \texttt{video} environment. A frame from the video may be included in the figure and a URL to link the caption's label to the online video also may be included. There is also a \cmd\listofvideos\ command.
-\item \textbf{Better support for arXiv.org in Bib\TeX\ } Three more Bib\TeX\ fields have been added: \texttt{SLACcitation}, \texttt{archivePrefix}, and \texttt{primaryClass} in addition to the existing field \texttt{eprint}. 
-\item \textbf{Improved Bib\TeX\ \texttt{bst} files.} In addition to the new features above, numerous other improvements to the APS \texttt{bst} files have been made, including support for displaying journal article titles (using the new \texttt{longbibliography} option) and many fixes for \textit{Reviews of Modern Physics}. Also, long author lists are no longer automatically truncated.
-\item \textbf{\cmd\footnote\ in \cmd\widetext\ and \texttt{table*} environments improved.} \cmd\footnote\relax s in  the \cmd\widetext\ or \texttt{table*} environments are now correctly placed and formatted.
-\item \textbf{Email addresses no longer print twice on papers less than one page long.}
-\item \textbf{\texttt{eqnarray} alignment improved.}
-\item \textbf{\cmd\collaboration\ can be used with the \texttt{groupedaddress} option now.}
-\item \textbf{\texttt{letterpaper} now ensured as default paper size.} 
-\item \textbf{Table of Contents formatting improved.}
-\item \textbf{Support for the \texttt{longtable} package improved.}
-\item \textbf{\texttt{reftest} restored.}
-\item \textbf{Compatibility with the \texttt{geometry, lineno, lscape} and \texttt{colortbl} packages improved.} For line numbering, rather than using \texttt{lineno.sty} directly, the \texttt{linenumbers} class option should be used (this will call in \texttt{lineno.sty} with a proper set of default parameters).
-\item \texttt{hyperref} \textbf{fixes}. Improvements were to make footnotes work better with the \texttt{hyperref} package. In particular, table footnotes were fixed. More anchors for \texttt{hyperref} were also added (titlepage, abstract, and acknowledgements).
-\item \textbf{Documents can have more than 256 \cmd\cite\ commands now.}
-\item \textbf{\cmd\listoffigures\ and \cmd\listoftables\ fixed.}
-\item \textbf{Figure and table labels in captions now reflect proper APS style.}
-\item \textbf{RMP style files conform better to RMP style guidelines.}
-\item \textbf{Section heading upper-casing improved.}
-\item \textbf{Repeated characters at start of affiliation no longer disappear when using \texttt{groupedaddress} option.}
-\item \textbf{There have been many other bug fixes and improvements to the internal \texttt{ltxgrid} package as well.}
-\end{itemize}
-
-\subsection{\revtex~4 Backwards Compatibility}
-Documents prepared under \revtex~4 should process correctly under \revtex~4.1. However, the formatting of the pages and, if using Bib\TeX, the references may change.
-
-
-
-\subsection{Submitting to APS Journals}
-
-Authors using \revtex~4.1 to prepare a manuscript for submission to
-\textit{Physical Review Letters}, \textit{Physical Review},  \textit{Reviews of Modern Physics}, 
-or other APS journals must also read the companion document \textit{APS Author Guide for \revtex~4.1}
-distributed with \revtex\ and follow the guidelines detailed there.
-
-The \revtex~4.1 distribution includes both a template
-(\file{apstemplate.tex}) and a sample document (\file{apssamp.tex}).
-The template is a good starting point for a manuscript. In the
-following sections are instructions that should be sufficient for
-creating a paper using \revtex~4.1.
-
-Further information about submissions to the American
-Physical Society may be found at \url{http://publish.aps.org/}.
-
-\subsection{Submitting to AIP Journals}
-
-\revtex~4.1 includes support for the journals of the American Institute of Physics.
-The style files and authoring guides for these journals are distributed as part
-\revtex~4.1 distribution. The distribution includes both a template
-(\file{aiptemplate.tex}) and a sample document (\file{aipsamp.tex}).
-The template is a good starting point for a manuscript. In the
-following sections are instructions that should be sufficient for
-creating a paper using \revtex~4.1.
-
-
-
-More information may be found at 
-\url{http://www.aip.org/pubservs/compuscript.html}. Please consult the \textit{Author's Guide to AIP Substyles for \revtex~4.1} for more information about submissions to AIP journals, AIP styles files, and other AIP-specific information.
-
-\subsection{Contact Information}\label{sec:aipresources}%
-Any bugs, problems, or inconsistencies with \revtex\ or the APS journal style files should be reported to
-\revtex\ support at \verb+revtex at aps.org+. Reports should include information on the error and a \textit{small}
-sample document that manifests the problem if possible (please don't send large files!). Issues related to the AIP journal styles should be sent directly to \verb+tex at aip.org+.
-
-\section{Some \LaTeXe\ Basics}
-\revtex~4.1 must sometimes patch the underlying
-\LaTeX\ kernel. This means that \revtex~4.1 requires a fairly recent version of
-\LaTeXe. Versions prior to 2005/12/01 may not work
-correctly. \revtex~4.1 will be maintained to be compatible with future
-versions of \LaTeXe.
-
-\subsection{Useful \LaTeXe\ Markup}
-\LaTeXe\ markup is the preferred way to accomplish many basic tasks.
-
-\subsubsection{Fonts}
-
-Because \revtex~4.1 is based upon \LaTeXe, it inherits all of the
-macros used for controlling fonts. Of particular importance are the
-\LaTeXe\ macros \cmd{\textit}, \cmd{\textbf}, \cmd{\texttt} for changing to
-an italic, bold, or typewriter font respectively. One should always
-use these macros rather than the lower-level \TeX\ macros \cmd{\it},
-\cmd{\bf}, and \cmd{\tt}. The \LaTeXe\ macros offer
-improvements such as better italic correction and scaling in super-
-and subscripts for example. Table~\ref{tab:fonts}
-summarizes the font selection commands in \LaTeXe.
-
-\begin{table}
-\caption{\label{tab:fonts}\LaTeXe\ font commands}
-\begin{ruledtabular}
-\begin{tabular}{ll}
-\multicolumn{2}{c}{\textbf{Text Fonts}}\\
-\textbf{Font command} & \textbf{Explanation} \\
-\cmd\textit\marg{text}  & Italics\\
-\cmd\textbf\marg{text}  & Boldface\\
-\cmd\texttt\marg{text}  & Typewriter\\
-\cmd\textrm\marg{text}  & Roman\\
-\cmd\textsl\marg{text}  & Slanted\\
-\cmd\textsf\marg{text}  & Sans Serif\\
-\cmd\textsc\marg{text}  & Small Caps\\
-\cmd\textmd\marg{text}  & Medium Series\\
-\cmd\textnormal\marg{text} & Normal Series\\
-\cmd\textup\marg{text}  & Upright Series\\
-  &\\
-\multicolumn{2}{c}{\textbf{Math Fonts}}\\
-\cmd\mathit\marg{text}  & Math Italics\\
-\cmd\mathbf\marg{text}  & Math Boldface\\
-\cmd\mathtt\marg{text}  & Math Typewriter\\
-\cmd\mathsf\marg{text}  & Math Sans Serif\\
-\cmd\mathcal\marg{text}  & Calligraphic\\
-\cmd\mathnormal\marg{text} & Math Normal\\
-\cmd\bm\marg{text}& Bold math for Greek letters\\
-                  & and other symbols\\
-\cmd\mathfrak\marg{text}\footnotemark[1]  & Fraktur\\
-\cmd\mathbb\marg{text}\footnotemark[1] & Blackboard Bold\\
-\end{tabular}
-\end{ruledtabular}
-\footnotetext[1]{Requires \classname{amsfonts} or \classname{amssymb} class option}
-\end{table}
-
-\subsubsection{User-defined macros}
-\LaTeXe\ provides several macros that enable users to easily create new
-macros for use in their manuscripts:
-\begin{itemize}
-\footnotesize
-\item \cmd\newcommand\marg{\\command}\oarg{narg}\oarg{opt}\marg{def} 
-\item \cmd\newcommand\verb+*+\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
-\item \cmd\renewcommand\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
-\item \cmd\renewcommand\verb+*+\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
-\item \cmd\providecommand\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
-\item \cmd\providecommand\verb+*+\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
-\end{itemize}
-Here \meta{\\command} is the name of the macro being defined,
-\meta{narg} is the number of arguments the macro takes,
-\meta{opt} are optional default values for the arguments, and
-\meta{def} is the actually macro definiton. \cmd\newcommand\ creates a
-new macro, \cmd\renewcommand\ redefines a previously defined macro,
-and \cmd\providecommand\ will define a macro only if it hasn't
-been defined previously. The *-ed versions are an optimization that
-indicates that the macro arguments will always be ``short'' arguments. This is
-almost always the case, so the *-ed versions should be used whenver
-possible.
-
-The use of these macros is preferred over using plain \TeX's low-level
-macros such as
-\cmd\def{},\cmd\edef{}, and \cmd\gdef{}. APS authors must follow the
-\textit{APS Author Guide for \revtex~4.1} when defining macros.
-
-\subsubsection{Symbols}
-
-\LaTeXe\ has added some convenient commands for some special symbols
-and effects. These are summarized in Table~\ref{tab:special}. See
-\cite{Guide} for details.
-
-\begin{table}
-\caption{\label{tab:special}\LaTeXe\ commands for special symbols and effects}
-\begin{ruledtabular}
-\begin{tabular}{lc}
-Command & Symbol/Effect\\
-\cmd\textemdash & \textemdash\\
-\cmd\textendash & \textendash\\
-\cmd\textexclamdown & \textexclamdown\\
-\cmd\textquestiondown & \textquestiondown\\
-\cmd\textquotedblleft & \textquotedblleft\\
-\cmd\textquotedblright & \textquotedblright\\
-\cmd\textquoteleft & \textquoteleft\\
-\cmd\textquoteright & \textquoteright\\
-\cmd\textbullet   & \textbullet\\
-\cmd\textperiodcentered & \textperiodcentered\\
-\cmd\textvisiblespace & \textvisiblespace\\
-\cmd\textcompworkmark & Break a ligature\\
-\cmd\textcircled\marg{char} & Circle a character\\
-\end{tabular}
-\end{ruledtabular}
-\end{table}
-
-\LaTeXe\ provides additional symbols in a
-separate package called \classname{latexsym}. To use these symbols, include
-the package using:
-\begin{verbatim}
-\usepackage{latexsym}
-\end{verbatim}
-
-\subsection{Using \LaTeXe\ packages with \revtex}\label{sec:usepackage}%
-
-Many \LaTeXe\ packages are available, for instance, on CTAN at
-\url{http://www.ctan.org/tex-archive/macros/latex/required/}
-and at
-\url{http://www.ctan.org/tex-archive/macros/latex/contrib/}
-or may be available on other distribution media, such as the \TeX\
-Live CD-ROM \url{http://www.tug.org/texlive/}.  Some of these packages
-are automatically loaded by \revtex~4.1 when certain class options are
-invoked and are, thus, ``required.''  They will either be distributed
-with \revtex\ or are already included with a standard \LaTeXe\
-distribution.
-
-Required packages are automatically loaded by \revtex\ on an as-needed
-basis.  Other packages should be loaded using the
-\cmd\usepackage\ command. To load the
-\classname{hyperref} package, the document preamble might look like:
-\begin{verbatim}
-\documentclass{revtex}
-\usepackage{hyperref}
-\end{verbatim}
-
-Some common (and very useful) \LaTeXe\ packages are \textit{a priori}
-important enough that \revtex~4.1 has been designed to be specifically
-compatible with them. 
-A bug stemming from the use of one of these packages in
-conjunction with any of the APS journals may be reported by contacting
-\revtex\ support.
-\begin{description}
-\item[\textbf{AMS packages}] \revtex~4.1 is compatible with and depends
- upon the AMS packages
-\classname{amsfonts},
-\classname{amssymb}, and
-\classname{amsmath}. In fact, \revtex~4.1 requires use of these packages
-to accomplish some common tasks. See Section~\ref{sec:math} for more.
-\revtex~4.1 requires version 2.0 or higher of the AMS-\LaTeX\ package.
-
-\item[\textbf{array and dcolumn}]
-The \classname{array} and \classname{dcolumn} packages are part of
-\LaTeX's required suite of packages. \classname{dcolumn} is required
-to align table columns on decimal points (and it in turn depends upon
-the \classname{array} package).
-
-\item[\textbf{longtable}]
-\file{longtable.sty} may be used for large tables that will span more than one
-page. \revtex~4.1 dynamically applies patches to longtable.sty so that
-it will work in two-column mode.
-
-\item[\textbf{hyperref}] \file{hyperref.sty} is a package by Sebastian Rahtz that is
-used for putting hypertext links into \LaTeXe\ documents.
-\revtex~4.1 has hooks to allow e-mail addresses and URL's to become
-hyperlinks if \classname{hyperref} is loaded.
-
-\item[\textbf{lineno}] \revtex~4.1 improves compatibility with \classname{lineno.sty}. This package should only be loaded via the new \classoption{linenumbers} class option. See Section~\ref{sec:lineno} for more information.
-
-\item[\textbf{lscape}] \revtex~4.1 improves compatibility with \classname{lscape.sty}.
-
-\item[\textbf{geometry}] \revtex~4.1 improves compatibility with \classname{geometry.sty}.
-
-\item[\textbf{colortbl}] \revtex~4.1 improves compatibility with \classname{colortbl.sty}.
-
-\end{description}
-
-Other packages will conflict with \revtex~4.1 and should be
-avoided. Usually such a conflict arises because the package adds
-enhancements that \revtex~4.1 already includes. Here are some common
-packages that clash with \revtex~4.1:
-\begin{description}
-\item[\textbf{multicol}] \file{multicol.sty} is a package by Frank Mittelbach
-that adds support for multiple columns. In fact, early versions of
-\revtex~4.1 used \file{multicol.sty} for precisely this. \revtex~4.1 
-incorporates its own support for multiple-column typesetting.
-
-\item[\textbf{cite}] Donald Arseneau's \file{cite.sty} is often used to provide
-support for sorting a \cmd\cite\ command's arguments into numerical
-order and to collapse consecutive runs of reference numbers. \revtex~4.1
-has this functionality built-in already via the \classname{natbib} package.
-
-\item[\textbf{mcite}] \revtex~4.1 already contains a lot of this
-functionality through its updated syntax for the \cmd\cite\ command and
-the latest  \classname{natbib} package.
-
-\item[\textbf{endfloat}] The same functionality can be accomplished
-using the \classoption{endfloats} class option.
-
-\item[\textbf{float}] \texttt{float.sty} provides a mechanism for creating new float classes with just a few commands. \revtex~4.1 has limited compatible with float.sty. If attempting to use this package, be sure to put any \cmd\newfloat\ commands after the \verb+\begin{document}+ line.
-
-\end{description}
-
-\section{The Document Preamble}
-
-The preamble of a \LaTeX\ document is the set of commands that precede
-the \envb{document} line. It contains a
-\cmd\documentclass\ line to load the \revtex~4.1 class (\textit{i.e.},
-all of the \revtex~4.1 macro definitions), \cmd\usepackage\ macros to
-load other macro packages, and other macro definitions.
-
-\subsection{The \emph{documentclass} line}
-The basic formatting of the manuscript is controlled by setting
-\emph{class options} using
-\cmd\documentclass\oarg{options}\aarg{\classname{revtex4-1}}.
-The optional arguments that appear in the square brackets control the layout of the
-document. At this point, one only needs to choose:
-\begin{itemize}
-\item Either the \classoption{aps} (default) or \classoption{aip} society option
-\item One of the chosen society's journal styles such as \classoption{prl} or \classoption{apl}
-\item A layout option such as \classoption{preprint} (single-column formatting), \classoption{reprint} (an approximation
-to the selected journal's actual layout which may be one- or two-column depending on the journal), or \classoption{twocolumn}
-\end{itemize}
-Usually, one would want to use \classoption{preprint} for draft papers. Paper size options are also
-available as well. In particular, \classoption{a4paper} is available
-as well as the rest of the standard \LaTeX\ paper sizes. A
-full list of class options is given in the \textit{\revtex~4.1 Command
-and Options Summary}.
-
-\subsection{Loading other packages}
-Other packages may be loaded into a \revtex~4.1 document by using the
-standard \LaTeXe\ \cmd\usepackage\ command. For instance, to load
-the \classoption{graphics} package, one would use
-\verb+\usepackage{graphics}+.
-
-\section{The Front Matter}\label{sec:front}
-
-After choosing the basic look and feel of the document by selecting
-the appropriate class options and loading in whatever other macros are
-needed, one is ready to move on to creating a new manuscript. After
-the preamble, be sure to put in a \envb{document} line (and put
-in an \enve{document} as well). This section describes the macros
-\revtex~4.1 provides for formatting the front matter of the
-article. The behavior and usage of these macros can be quite
-different from those provided in the \LaTeXe\ \classname{article} class.
-\subsection{Setting the title}
-
-The title of the manuscript is simply specified by using the
-\cmd\title\aarg{title} macro. A \verb+\\+ may be used to put a line
-break in a long title.
-
-\subsection{Specifying a date}%
-
-The \cmd\date\marg{date} command outputs the date on the
-manuscript.  Using \cmd\today\ will cause \LaTeX{} to insert the
-current date whenever the file is run:
-\begin{verbatim}
-\date{\today}
-\end{verbatim}
-
-\subsection{Specifying authors and affiliations}
-
-The \revtex~4.1 macros  for specifying authors and their affiliations are designed
- to save labor for authors and during production. Authors and affiliations are
-arranged into groupings called, appropriately enough, \emph{author
-groups}. Each author group is a set of authors who share the same set
-of affiliations. Author names are specified with the \cmd\author\
-macro while affiliations (or addresses) are specified with the
-\cmd\affiliation\ macro. Author groups are specified by sequences of
-\cmd\author\ macros followed by \cmd\affiliation\ macros. An
-\cmd\affiliation\ macro applies to all previously specified
-\cmd\author\ macros which don't already have an affiliation supplied.
-
-For example, if Bugs Bunny and Roger Rabbit are both at Looney Tune
-Studios, while Mickey Mouse is at Disney World, the markup would be:
-\begin{verbatim}
-\author{Bugs Bunny}
-\author{Roger Rabbit}
-\affiliation{Looney Tune Studios}
-\author{Mickey Mouse}
-\affiliation{Disney World}
-\end{verbatim}
-The default is to display this as 
-\begin{center}
-Bugs Bunny and Roger Rabbit\\
-\emph{Looney Tune Studios}\\
-Mickey Mouse\\
-\emph{Disney World}\\
-\end{center}
-This layout style for displaying authors and their affiliations is
-chosen by selecting the class option
-\classoption{groupedaddress}. Journal styles usually default this option,
- so it need not be specified explicitly. The other major way of displaying this
-information is to use superscripts on the authors and
-affiliations. This can be accomplished by selecting the class option
-\classoption{superscriptaddress}. To achieve the display
-\begin{center}
-Bugs Bunny,$^{1}$ Roger Rabbit,$^{1,2}$ and Mickey Mouse$^{2}$\\
-\emph{$^{1}$Looney Tune Studios}\\
-\emph{$^{2}$Disney World}\\
-\end{center}
-one would use the markup
-\begin{verbatim}
-\author{Bugs Bunny}
-\affiliation{Looney Tune Studios}
-\author{Roger Rabbit}
-\affiliation{Looney Tune Studios}
-\affiliation{Disney World}
-\author{Mickey Mouse}
-\affiliation{Disney World}
-\end{verbatim}
-
-Note that \revtex~4.1 takes care of any commas and \emph{and}'s that join
-the author names together and font selection, as well as any
-superscript numbering. Only the author names and affiliations should
-be given within their respective macros. See below for further information
-regarding the proper way to add footnotes to author names and affiliations.
-
-There is a third class option, \classoption{unsortedaddress}, for
-controlling author/affiliation display. The default
-\classoption{groupedaddress} will actually sort authors into the
-approriate author groups if one chooses to specify an affiliation for
-each author. The markup:
-\begin{verbatim}
-\author{Bugs Bunny}
-\affiliation{Looney Tune Studios}
-\author{Mickey Mouse}
-\affiliation{Disney World}
-\author{Roger Rabbit}
-\affiliation{Looney Tune Studios}
-\end{verbatim}
-will result in the same display as for the first case given
-above even though Roger Rabbit is specified after Mickey Mouse. To
-avoid Roger Rabbit being moved into the same author group as Bugs
-Bunny, use the
-\classoption{unsortedaddress} option instead. In general, it is safest
-to list authors in the order they should appear and specify
-affiliations for multiple authors rather than one at a time. This will
-afford the most independence for choosing the display option. Finally,
-it should be mentioned that the affiliations for the
-\classoption{superscriptaddress} are presented and numbered 
-in the order that they are encountered. These means that the order
-will usually follow the order of the authors. An alternative ordering
-can be forced by including a list of \cmd\affiliation\ commands before
-the first \cmd{\author} in the desired order. Then use the exact same
-text for each affilation when specifying them for each author.
-
-If an author doesn't have an affiliation, the \cmd\noaffiliation\
-macro may be used in the place of an \cmd\affiliation\ macro.
-
-
-\subsubsection{Collaborations}
-
-A collaboration name can be specified with the \cmd\collaboration\
-command. This is very similar to the \cmd\author\ command. In \revtex~4.1, it can
-be used with both the \classoption{superscriptaddress} and \classoption{groupedaddress} class options. The
-\cmd\collaboration\ command should appear at the end of the list of
-authors. The collaboration name will be appear centered in parentheses
-between the list of authors and the list of
-affiliations. Because collaborations
-don't normally have affiliations, one needs to follow the
-\cmd\collaboration\ with \cmd\noaffiliation.
-
-\subsubsection{Footnotes for authors, collaborations, affiliations or title}\label{sec:footau}
-
-Often one wants to specify additional information associated with an
-author, collaboration, or affiliation such as an e-mail address, an
-alternate affiliation, or some other ancillary information. 
-\revtex~4.1 introduces several new macros just for this purpose. They
-are:
-\begin{itemize}
-\item\cmd\email\oarg{optional text}\aarg{e-mail address}
-\item\cmd\homepage\oarg{optional text}\aarg{URL}
-\item\cmd\altaffiliation\oarg{optional text}\aarg{affiliation}
-\item\cmd\thanks\aarg{miscellaneous text}
-\end{itemize}
-In the first three, the \emph{optional text} will be prepended before the
-actual information specified in the required argument. In the APS journal style files, \cmd\email\ and \cmd\homepage\ no longer have a default value. However, in the AIP styles, each have a default text for their optional arguments
-(`Electronic address:' and `URL:' respectively). The \cmd\thanks\
-macro should only be used if one of the other three do not apply. Any
-author name can have multiple occurences of these four macros. Note
-that unlike the
-\cmd\affiliation\ macro, these macros only apply to the \cmd\author\
-that directly precedes it. Any \cmd\affiliation\ \emph{must} follow
-the other author-specific macros. A typical usage might be as follows:
-\begin{verbatim}
-\author{Bugs Bunny}
-\email[E-mail me at: ]{bugs at looney.com}
-\homepage[Visit: ]{http://looney.com/}
-\altaffiliation[Permanent address: ]
-                     {Warner Brothers}
-\affiliation{Looney Tunes}
-\end{verbatim}
-This would result in the footnote ``E-mail me at: \texttt{bugs at looney.com},
-Visit: \texttt{http://looney.com/}, Permanent address: Warner
-Brothers'' being attached to Bugs Bunny. Note that:
-\begin{itemize}
-\item Only an e-mail address, URL, or affiliation should go in the
-required argument in the curly braces.
-\item The font is automatically taken care of.
-\item An explicit space is needed at the end of the optional text if one is
-desired in the output.
-\item Use the optional arguments to provide customized
-text only if there is a good reason to.
-\end{itemize}
-
-The \cmd\collaboration\ , \cmd\affiliation\ , or even \cmd\title\ can
-also have footnotes attached via these commands. If any ancillary data
-(\cmd\thanks, \cmd\email, \cmd\homepage, or
-\cmd\altaffiliation) are given in the wrong context (e.g., before any
-\cmd\title, \cmd\author, \cmd\collaboration, or \cmd\affiliation\
-command has been given), then a warning is given in the \TeX\ log, and
-the command is ignored.
-
-Duplicate sets of ancillary data are merged, giving rise to a single
-shared footnote. However, this only applies if the ancillary data are
-identical: even the order of the commands specifying the data must be
-identical. Thus, for example, two authors can share a single footnote
-indicating a group e-mail address.
-
-Duplicate \cmd\affiliation\ commands may be given in the course of the
-front matter, without the danger of producing extraneous affiliations
-on the title page. However, ancillary data should be specified for
-only the first instance of any particular institution's
-\cmd\affiliation\ command; a later instance with different ancillary
-data will result in a warning in the \TeX\ log.
-
-It is preferable to arrange authors into
-sets. Within each set all the authors share the same group of
-affiliations. For each author, give the \cmd\author\ (and appropriate
-ancillary data), then follow this author group with the needed group
-of \cmd\affiliation\ commands.
-
-If affiliations have been listed before the first
-\cmd\author\ macro to ensure a particular ordering, be sure
-that any later \cmd\affiliation\ command for the given institution is
-an exact copy of the first, and also ensure that no ancillary data is
-given in these later instances.
-
-
-Each journal class option has a default behavior for the placement of these
-ancillary information footnotes. For instance, the \classoption{prb} option puts all
-such footnotes at the start of the bibliography while the \classoption{prl}
-journal styles displays them on the first page. One can override a
-journal style's default behavior by specifying explicitly the class
-option
-\classoption{bibnotes} (puts the footnotes at the start of the
-bibliography) or \classoption{nobibnotes} (puts them on the first page).
-Please consult the documentation for the various journal style files for further information.
-
-\subsubsection{Specifying first names and surnames}
-
-Many authors have names in which either the surname appears first
-or in which the surname is made up of more than one name. To ensure
-that such names are accurately captured for indexing and other
-purposes, the \cmd\surname\ macro should be used to indicate which portion
-of a name is the surname. Similarly, there is a \cmd\firstname\ macro
-as well, although usage of \cmd\surname\ should be sufficient. If an
-author's surname is a single name and written last, it is not
-necessary to use these macros. These macros do nothing but indicate
-how a name should be indexed. Here are some examples:
-\begin{verbatim}
-\author{Andrew \surname{Lloyd Weber}}
-\author{\surname{Mao} Tse-Tung}
-\end{verbatim}
-
-\subsection{The abstract}
-An abstract for a paper is specified by using the \env{abstract}
-environment:
-\begin{verbatim}
-\begin{abstract}
-Text of abstract
-\end{abstract}
-\end{verbatim}
-Note that in \revtex~4.1 the abstract must be specified before the
-\cmd\maketitle\ command and there is no need to embed it in an explicit
-minipage environment.
-
-\subsubsection{Structured abstracts}
-A new feature in \revtex~4.1 is support for \textit{structured abstracts}. A ``structured" abstract is an abstract divided into labeled sections. For instance, \textit{Physical Review C} would like authors to provide abstracts with sections summarizing the paper's  \textbf{Background}, \textbf{Purpose}, \textbf{Method}, \textbf{Results}, and \textbf{Conclusions}. This can be accomplished by using the \texttt{description} environment within the \texttt{abstract} environment.  For example:
-\begin{verbatim}
-\begin{abstract}
-\begin{description}
-\item[Background] This part would describe the
-context needed to understand what the paper
-is about.
-\item[Purpose] This part would state the purpose
-of the present paper.
-\item[Method] This part describe the methods
-used in the paper.
-\item[Results] This part would summarize the
-results.
-\item[Conclusions] This part would state the
-conclusions of the paper.
-\end{description}
-\end{abstract}
-\end{verbatim}
-
-\subsection{PACS codes}
-APS and AIP authors are asked to supply suggested PACS codes with their
-submissions. The \cmd\pacs\ macro is provided as a way to do this:
-\begin{verbatim}
-\pacs{23.23.+x, 56.65.Dy}
-\end{verbatim}
-The actual display of the PACS numbers below the abstract is
-controlled by two class options: \classoption{showpacs} and
-\classoption{noshowpacs}. In particular, this is now independent of
-the \classoption{preprint} option. \classoption{showpacs} must be
-explicitly included in the class options to display the PACS codes.
-
-\subsection{Keywords}
-A \cmd\keywords\ macro may also be used to indicate keywords for the
-article. 
-\begin{verbatim}
-\keywords{nuclear form; yrast level}
-\end{verbatim}
-This will be displayed below the abstract and PACS (if supplied). Like
-PACS codes, the actual display of the the keywords is controlled by
-two classoptions: \classoption{showkeys} and
-\classoption{noshowkeys}. An explicit \classoption{showkeys} must be
-included in the \cmd\documentclass\ line to display the keywords.
-
-\subsection{Institutional report numbers}
-Institutional report numbers can be specified using the \cmd\preprint\
-macro. If the \classoption{preprintnumbers} class option is specified, these will be displayed in the upper right corner of the first page. Multiple \cmd\preprint\ macros maybe supplied (space is
-limited though, so only three or less may actually fit). Please note that the \classoption{preprint} class option does not automatically invoke \classoption{preprintnumbers}.
-
-\subsection{maketitle}
-After specifying the title, authors, affiliations, abstract, PACS
-codes, and report numbers, the final step for formatting the front
-matter of the manuscript is to execute the \cmd\maketitle\ macro by
-simply including it:
-\begin{verbatim}
-\maketitle
-\end{verbatim}
-The \cmd\maketitle\ macro must follow all of the macros listed
-above. The macro will format the front matter in accordance with the various
-class options that were specified in the
-\cmd\documentclass\ line (either implicitly through defaults or
-explicitly).
-
-\section{The body of the paper}
-
-For typesetting the body of a paper, \revtex~4.1 relies heavily on
-standard \LaTeXe\ and other packages (particulary those that are part
-of AMS-\LaTeX). Users unfamiliar with these packages should read the
-following sections carefully. 
-
-\subsection{Section headings}
-
-Section headings are input as in \LaTeX.
-The output is similar, with a few extra features.
-
-Four levels of headings are available in \revtex{}:
-\begin{quote}
-\cmd\section\marg{title text}\\
-\cmd\subsection\marg{title text}\\
-\cmd\subsubsection\marg{title text}\\
-\cmd\paragraph\marg{title text}
-\end{quote}
-
-Use the starred form of the command to suppress the automatic numbering; e.g.,
-\begin{verbatim}
-\section*{Introduction}
-\end{verbatim}
-
-To label a section heading for cross referencing, best practice is to
-place the \cmd\label\marg{key} within the argument specifying the heading:
-\begin{verbatim}
-\section{\label{sec:intro}Introduction}
-\end{verbatim}
-
-In some journal substyles, such as those of the APS,
-all text in the \cmd\section\ command is automatically set uppercase.
-If a lowercase letter is needed, use \cmd\lowercase\aarg{x}.
-For example, to use ``He'' for helium in a \cmd\section\marg{title text} command, type
-\verb+H+\cmd\lowercase\aarg{e} in \marg{title text}.
-
-Use \cmd\protect\verb+\\+ to force a line break in a section heading.
-(Fragile commands must be protected in section headings, captions, and
-footnotes and \verb+\\+ is a fragile command.)
-
-\subsection{Paragraphs and General Text}
-
-Paragraphs always end with a blank input line.  Because \TeX\
-automatically calculates linebreaks and word hyphenation in a
-paragraph, it is not necessary to force linebreaks or hyphenation.  Of
-course, compound words should still be explicitly hyphenated, e.g.,
-``author-prepared copy.''
-
-Use directional quotes for quotation marks around quoted text
-(\texttt{``xxx''}), not straight double quotes (\texttt{"xxx"}).
-For opening quotes, use one or two backquotes; for closing quotes,
-use one or two forward quotes (apostrophes).
-
-\subsection{One-column vs. two-column layouts}\label{sec:widetext}
-
-One of the hallmarks of \textit{Physical Review} and many of the AIP journals is their two-column
-formatting. \revtex~4.1 provides the \classoption{reprint} class option that provides for each
-journal class option a close approximation to the journal's actual production formatting. Note that
-the \classoption{reprint} option will give either one or two-column formatting as appropriate for the particular journal.
-For most APS and AIP journals, the \classoption{reprint} option will take care of formatting the front matter
-(including the abstract) as a single column and will typeset the body in two columns. \revtex~4.1 has its own
-built-in two-column formatting macros to provide well-balanced columns as well as reasonable control over the placement of floats in either
-one- or two-column modes. When drafting papers, it is common to use a one-column format. This is best achieved by using the
-\classoption{preprint} class option. Authors may override a particular journal's formatting by using the lower level options \classoption{onecolumn} and \classoption{twocolum}, but best practice is to stick with the \classoption{preprint} and \classoption{reprint} options.
-
-Please note that the \classoption{reprint} class option is only an \textit{approximation} of a journal's final layout. Because of font differences, figure rescaling, and other factors, authors should not expect the \classoption{reprint} option to give fully accurate estimates of an article's ultimate length after being typeset for the journal.
-
-Occasionally it is necessary to change the formatting from two-column to
-one-column to better accommodate very long equations that are more
-easily read when typeset to the full width of the page. This is
-accomplished using the \env{widetext} environment:
-\begin{verbatim}
-\begin{widetext}
-long equation goes here
-\end{widetext}
-\end{verbatim}
-In two-column mode, this will temporarily return to one-column mode,
-balancing the text before the environment into two short columns, and
-returning to two-column mode after the environment has
-finished. \revtex~4.1 will also add horizontal rules to guide the
-reader's eye through what may otherwise be a confusing break in the
-flow of text. The
-\env{widetext} environment has no effect on the output under the 
-\classoption{preprint} class option because this already uses
-one-column formatting.
-
-Use of the \env{widetext} environment should be restricted to the bare
-minimum of text that needs to be typeset this way. However, short pieces
-of paragraph text and/or math between nearly contiguous wide equations
-should be incorporated into the surrounding wide sections.
-
-Low-level control over the column grid can be accomplished with the
-\cmd\onecolumngrid\ and \cmd\twocolumngrid\ commands. Using these, one
-can avoid the horizontal rules added by \env{widetext}. These commands
-should only be used if absolutely necessary. Wide figures and tables
-should be accommodated using the proper \verb+*+ environments.
-
-\subsection{Cross-referencing}\label{sec:xrefs}
-
-\revtex{} inherits the \LaTeXe\ features for labeling and cross-referencing
-section headings, equations, tables, and figures. This section
-contains a simplified explanation of these cross-referencing features.
-The proper usage in the context of section headings, equations,
-tables, and figures is discussed in the appropriate sections.
-
-Cross-referencing depends upon the use of ``tags,'' which are defined by
-the user.  The \cmd\label\marg{key} command is used to identify tags for
-\revtex. Tags are strings of characters that serve to label section
-headings, equations, tables, and  figures that replace explicit,
-by-hand numbering.
-
-Files that use cross-referencing (and almost all manuscripts do)
-need to be processed through \revtex\ at least twice to
-ensure that the tags have been properly linked to appropriate numbers.
-If any tags are added in subsequent editing sessions, 
-\LaTeX{} will display a warning message in the log file that ends with
-\texttt{... Rerun to get cross-references right}.
-Running the file through \revtex\ again (possibly more than once) will
-resolve the cross-references.  If the error message persists, check
-the labels; the same \marg{key} may have been used to label more than one
-object.
-
-Another \LaTeX\ warning is \texttt{There were undefined references},
-which indicates the use of a key in a \cmd\ref\ without ever
-using it in a \cmd\label\ statement.
-
-\revtex{} performs autonumbering exactly as in standard \LaTeX.
-When the file is processed for the first time,
-\LaTeX\ creates an auxiliary file (with the \file{.aux} extension) that 
-records the value of each \meta{key}.  Each subsequent run retrieves
-the proper number from the auxiliary file and updates the auxiliary
-file.  At the end of each run, any change in the value of a \meta{key}
-produces a \LaTeX\ warning message.
-
-Note that with footnotes appearing in the bibliography, extra passes
-of \LaTeX\ may be needed to resolve all cross-references. For
-instance, putting a \cmd\cite\ inside a \cmd\footnote\ will require at
-least three passes.
-
-Using the \classname{hyperref} package to create hyperlinked PDF files
-will cause reference ranges to be expanded to list every
-reference in the range. This behavior can be avoided by using the
-\classname{hypernat} package available from \url{www.ctan.org}.
-
-\subsection{Acknowledgments}
-Use the \env{acknowledgments} environment for an acknowledgments
-section.  Depending on the journal substyle, this element may be
-formatted as an unnumbered section title \textit{Acknowledgments} or
-simply as a paragraph. Please note the spelling of
-``acknowledgments.''
-\begin{verbatim}
-\begin{acknowledgments}
-The authors would like to thank...
-\end{acknowledgments}
-\end{verbatim}
-
-\subsection{Appendices}
-The \cmd\appendix\ command signals that all following sections are
-appendices, so \cmd\section\marg{title text} after \cmd\appendix\ will set
-\marg{title text} as an appendix heading (an empty \marg{title text}
-is permitted). For a single appendix, use a
-\cmd\appendix\verb+*+ followed by \cmd\section\marg{title text}
-command to suppress the appendix letter in the section heading.
-
-\subsection{\label{sec:lineno}Line numbering}
-\revtex~4.1 provides the \classoption{linenumbers} class option to enable line numbering. While it is
-possible to directly call in the \classname{lineno.sty}, using the class option ensures
-that the default parameters needed to properly typeset the line numbers are set up correctly. It is
-still possible for authors to override parameters such as \cmd\linenumbersep\ as usual, however.
-
-\section{Math and equations}\label{sec:math}
-
-\subsection{Math in text}
-
-Not surprisingly, \revtex\ uses the \TeX\ math \verb+$+ delimiters
-for math embedded in text. For example,
-\verb|$a^{z}$| give $a^{z}$.  Within math mode, use
-\verb+^+\marg{math} for superscripts and
-\verb+_+\marg{math} for subscripts. If the braces after the
-\verb+^+ are omitted, \TeX{} will
-superscript the next \emph{token} (generally a single character or
-command). Thus it is safest to use explicit braces \verb+{}+.
-
-As with text, math should not require extensive explicit vertical or
-horzontal motion commands, because \TeX\ calculates math spacing
-itself automatically.  In particular, explicit spacing around
-relations (e.g., $=$) or operators (e.g., $+$) should be
-unnecessary. These suggestions notwithstanding, some fine-tuning of
-math is required in specific cases, see Chapter~18 in the \TeX
-book\cite{TeXbook}.
-
-\subsection{Text in math}\label{sec:textinmath}
-
-There are times when normal, non-italic text needs to be inserted
-into a math expression.  The \cmd\text\marg{text} command is the
-preferred method of accomplishing this.  It produces regular text
-\emph{and} scales correctly in superscripts:
-\verb+$y=x \text{ for } x_{\text{e-p}}$+ gives 
-``$y=x \text{ for } x_{\text{e-p}}$''. To use the \cmd\text\ command,
-the \classname{amsmath} package must be loaded: include a
-\cmd\usepackage\aarg{\classname{amsmath}} command in the document
-preamble or use the class option \classoption{amsmath}. Please note
-that \revtex~4.1 requires version 2.0 or higher of \classname{amsmath}.
-
-Other common alternatives may be less desirable. Using the standard
-\LaTeXe\  \cmd\mbox\marg{text} will give normal text, including a hyphen,
-but will not scale correctly in superscripts:
-\verb+$x_{\mbox{e-p}}$+ gives ``$x_{\mbox{e-p}}$''.
-The \cmd\rm\ command
-only switches to Roman font for math letters.  It does not, for
-example, handle hyphens correctly:
-\verb+$$x_{\rm{e-p}}$+ gives ``$x_{\rm e-p}$''. But note that
-\cmd\textrm{}, it does work: \verb+$x_{\textrm{e-p}}$+ gives ``$x_{\textrm{e-p}}$''.
-
-\subsection{Displayed equations}\label{sec:dispmath}
-
-Equations are set centered in the column width or flush left depending
-on the selected journal substyle.
-
-For the simplest type of displayed equation, a numbered, one-line
-equation, use the \env{equation} environment.
-\revtex\ takes care of the equation number%
----the number will be set below the equation if necessary.
-Use \cmd\[\dots\cmd\] for a single, one-line unnumbered display equation.
-
-Use the \env{eqnarray} environment when more than one consecutive
-equation occurs, putting each equation in a separate row of the
-environment, and using \cmd\nonumber\ before the row end (\cmd\\) to
-suppress the equation number where necessary.  If the equations are
-related to each other, align each on the respective relation operator
-(such as $=$).
-
-When an equation is broken over lines or is continued over multiple
-relation operators, it is called a multi-line or continued equation,
-respectively; here, too, use the \env{eqnarray} environment.
-
-For a continued equation, align each row on the relation operator just
-as with multiple equations, and use the \cmd\nonumber\ command to
-suppress auto-numbering on broken lines.  Also, use the starred form
-of the row end (\cmd\\\verb+*+) to prevent a pagebreak at that
-juncture.
-
-Short displayed equations that can appear together on a single line
-separated by \cmd\qquad\ space may be placed in a single
-\env{equation} environment.
-
-As explained in Section~\ref{sec:widetext}, occasionally in two-column
-mode a long equation, in order to fit it in the narrow column width,
-would need to be broken into so many lines that it would affect
-readibility. Set it in a wide column using the \env{widetext}
-environment. Then return to the normal text width as soon as
-possible.
-
-The sample file \file{apssamp.tex} illustrates how to obtain each of
-the above effects.
-
-\subsection{Numbering displayed equations}
-
-\revtex~4.1 automatically numbers equations.
-For single-line and multi-line equations, use the
-\env{equation} and \env{eqnarray} environments as described above.
-For unnumbered single-line equations, use the \verb+\[+\dots\verb+\]+
-construction.  The command \cmd\nonumber\ will suppress the numbering
-on a single line of an
-\env{eqnarray}.
-For a multi-line equation with no equation numbers at all,
-use the \env{eqnarray*} environment.
-
-A series of equations can be a labeled with a lettered sequence,
-e.g., (3a), (3b), and (3c), by
-putting the respective \env{equation} or \env{eqnarray} environment within a
-\env{subequations} environment. 
-The \classname{amsmath} package (can be loaded with the
-\classoption{amsmath} class option) is required for this.
-
-Use the command \cmd\tag\marg{number} to produce an idiosyncratic
-equation number: $(1')$, for example.  Numbers assigned by \cmd\tag\
-are completely independent of \revtex's automatic numbering.  The
-package \classname{amsmath} is required for using the \cmd\tag\
-command. Please
-note that the use of the \texttt{tag} command may conflict with the use of the \classoption{hyperref} package
-due an incompatibility between \classoption{amsmath} and \classoption{hyperref}. 
-
-To have \revtex{} reset the equation numbers at the start of each section,
-use the \classoption{eqsecnum} class option in the document preamble. 
-
-See the sample file \file{apssamp.tex} for some examples.
-
-\subsection{Cross-referencing displayed equations}
-
-To refer to a numbered equation, use
-the \cmd\label\marg{key} and \cmd\ref\marg{key} commands.
-The \cmd\label\marg{key} command is used within the referenced equation
-(on the desired line of the \env{eqnarray}, if a multi-line equation):
-\begin{verbatim}
-\begin{equation}
- A=B \label{pauli}
-\end{equation}
- ... It follows from Eq.~(\ref{pauli})
-that this is the case ...
-\begin{eqnarray}
- A & = &B,\label{pauli2}\\
- A'& = &B'
-\end{eqnarray}
-\end{verbatim}
-gives 
-\begin{equation}
-A=B \label{pauli}
-\end{equation}
- ... It follows from Eq.~(\ref{pauli})
-that this is the case ...
-\begin{eqnarray}
-A & = &B,\label{pauli2}\\
-A'& = &B'
-\end{eqnarray}
-
-Please note the parentheses surrounding the \cmd\ref\ command.
-These are \emph{not} provided automatically and, thus, must be
-explicitly incorporated.
-
-Numbers produced with \cmd\tag\ can also be cross-referenced by adding
-a \cmd\label\ command after the \cmd\tag\ command.
-
-Using a \cmd\label\ after \envb{subequations} to reference the
-\emph{general} number of the equations in the
-\env{subequations} environment. For example, if
-\begin{verbatim}
-\begin{subequations}
- \label{allequations} % notice location
- \begin{eqnarray}
-  E&=&mc^2,\label{equationa}
- \\
-  E&=&mc^2,\label{equationb}
- \\
-  E&=&mc^2,\label{equationc}
- \end{eqnarray}
-\end{subequations}
-\end{verbatim}
-%
-gives the output
-\begin{subequations}
-\label{allequations} % notice location
-\begin{eqnarray}
-E&=&mc^2,\label{equationa}
-\\
-E&=&mc^2,\label{equationb}
-\\
-E&=&mc^2,\label{equationc}
-\end{eqnarray}
-\end{subequations}
-%
-then \verb+Eq.~(\ref{allequations})+ gives ``Eq.~(\ref{allequations})''.
-
-{\bf Note:} incorrect cross-referencing will result if
-\cmd\label\ is used in an unnumbered single-line equation
-(i.e., within the \verb+\[+ and \verb+\]+ commands),
-or if \cmd\label\ is used on a line of an eqnarray that is not being numbered
-(i.e., a line that has a \cmd\nonumber).
-
-\subsection{Using the AMS packages \classoption{amsfonts},
-\classoption{amssymb}, and \classoption{amsmath}}\label{AMS}
-
-The American Mathematical Society's AMS-\LaTeX\ packages provided extra
-fonts, symbols, and math markup that are quite convenient. \revtex~4.1
-supports the use of these packages directly. To use the \classoption{amsfonts},
-\classoption{amssymb}, and \classoption{amsmath} class options,
-AMS-\LaTeX\ (and perhaps the additional AMS fonts) will need to be
-installed. Please note that \revtex~4.1 requires version 2.0 or higher
-of AMS-\LaTeX. These packages can be downloaded from
-\url{http://www.ams.org/tex/}.
-
-There are two class options for accessing the AMS fonts:
-\classoption{amsfonts} and \classoption{amssymb}.
-The \classoption{amsfonts} option defines the \cmd\mathfrak\ and
-\cmd\mathbb\ commands to switch to the Fraktur and
-Blackboard Bold fonts, respectively.
-These fonts are selected with the \cmd\mathfrak\ and \cmd\mathbb\
-font-switching commands:
-\verb+${\mathfrak{G}}$+ gives a Fraktur ``$\mathfrak{G}$''
-and \verb+${\mathbb{Z}}$+ gives a Blackboard Bold ``$\mathbb{Z}$''.
-\revtex{} does not currently support the use of the extra Euler fonts
-(the AMS fonts starting with \texttt{eur} or \texttt{eus}) or the
-Cyrillic fonts (the AMS fonts starting with \texttt{w}).
-
-The \classoption{amssymb} class option gives all the font
-capabilities of the
-\classoption{amsfonts} class option and further defines the commands
-for many commonly used math symbols. These symbols will scale
-correctly in superscripts and other places. See the AMS-\LaTeX\
-documentation for the complete list of symbols available.
-
-\subsection{Bold symbols in math}\label{sec:bboxamsfonts}
-
-\revtex~4.1 uses the standard \LaTeXe\ Bold Math (\classname{bm}) package as the
-basis for creating bold symbols in math mode. As usual, this requires
-an explicit \cmd\usepackage\aarg{\classname{bm}} in the document
-preamble. The command
-\cmd\bm\marg{symbol} makes \marg{symbol} bold in math mode, ensuring
-that it is the correct size, even in superscripts. If the correct font
-in the correct size is not available then result is the \marg{symbol}
-set at the
-correct size in lightface and a \LaTeXe\ warning that says
-``\texttt{No boldmath typeface in this size}\dots''. Most bold special
-characters will require that the AMS fonts be installed and the
-\classoption{amsfonts} class option be invoked.
-
-\cmd\bm\ is the proper means to get bold Greek characters---upper- and
-lowercase---and other symbols.
-The following will come out bold with \cmd\bm:
-normal math italic letters, numbers,
-Greek letters (uppercase and lowercase),
-small bracketing and operators, and \cmd\mathcal. Fraktur
-characters will come out bold in a \cmd\bm; however, Blackboard Bold
-requires using the \cmd\mathbb\ command rather than \cmd{\bm}.
-The \classoption{amsfonts} option adds support for bold math
-letters and symbols in smaller sizes and in superscripts when a
-\cmd\bm\marg{symbol} is used. 
-For example, \verb+$\pi^{\bm{\pi}}$+ gives a bold
-lowercase pi in the superscript position: $^{\pi\bm{\pi}}$.
-
-Note that \cmd\bm\marg{math} is a fragile command and, thus, should be
-preceded by \cmd\protect\ in commands with moving arguments.
-
-\section{Footnotes}
-\LaTeX's standard \cmd\footnote\ command is available in
-\revtex~4.1. The footnote text can either appear at the bottom of a page or
-as part of the bibliography. This choice can be controlled by two class options:
-\classoption{footinbib} and \classoption{nofootinbib}. \revtex~4.1
-defaults to the former.  Specific journal options may select a
-different value than the default.
-
-Please note that even if  Bib\TeX\ is not being used for the references, you
-may have to run Bib\TeX\ if you are using footnotes without the \classoption{nofootinbib} option.
-The log file will contain errors about missing references such as \texttt{Note1} in this case and a file ending in
-\texttt{Notes.bib} will have been produced during the processing of the \TeX\ file.
-
-Note that in the latter case, the
-argument of the
-\cmd\footnote\ command is a moving argument in the sense of the \LUG,
-Appendix~C.1.3: any fragile command within that argument must be
-preceded by a \cmd\protect\ command.
-
-The \cmd\footnote\ macro \emph{should not} be used in the front
-matter for indicating author/affiliation relationships or to provide
-additional information about authors (such as an e-mail
-address). See Section~\ref{sec:footau} for the proper way to do
-this.
-
-Finally, footnotes that appear in tables behave differently. They
-will be typeset as part of the table itself. See
-Section~\ref{sec:tablenote} for details.
-
-\section{Citations and References}\label{sec:endnotes}
-
-\revtex~4.1 adds significant new functionality to \revtex~4's 
-typesetting of citations and references. The new functionality is
-designed to make it easier to use Bib\TeX\ and produce the desired output 
-in the reference section without having to edit Bib\TeX's output. The new features include:
-\begin{itemize}
-\item Endnotes created with the \cmd\footnote\ command are automatically interleaved with the bibliographic references. \revtex~4 would typeset all endnotes at the end of the bibliography.
-\item Combining multiple references automatically into a single entry in the bibliography. \revtex~4 required by-hand editing of Bib\TeX\ output. This is achieved by prepending an asterisk (*) to the reference's \textit{key} in the \cmd\cite\ command. \verb+\cite{{key1,*key2}+ would make a single entry in the bibliography by combining into one \cmd\bibitem\ the entries from the \texttt{.bib} file with keys \textit{key1} and \textit{key2}. See Section~\ref{sec:multiple} for more details.
-\item Text can be prepended or appended to an entry in the bibliography. \revtex~4 required by-hand editing of the Bib\TeX\ output. See Section~\ref{sec:prepend} for an example of how to do this.
-\end{itemize}
-
-Proper formatting of references requires Patrick Daly's \classname{natbib} citation package. \BibTeX\ style files
-for APS and AIP journals are created using his \classname{custom-bib} tool kit. From an author's point of view, all this means is that a proper
-\revtex~4.1 installation requires having \classname{natbib} (version 8.31a
-or higher) installed. It also means that the full set of
-\classname{natbib} functionality is available from within \revtex~4.1
-(but see the \textit{APS Author Guide for \revtex~4.1} and \textit{Author's Guide to AIP Substyles for \revtex~4.1} for restrictions if
-submitting to an APS or AIP journal). The \classname{natbib} documentation contains many examples; see in
-particular the \verb+natnotes.tex+ file for a convenient summary. Please also note that \classname{natbib 8.3} and later now gives an error (rather than merely a warning as in earlier versions) if you try to use a Bib\TeX\ file that isn't compatible with author-year style citations with a journal style that requires author-year citations (such as \textit{Reviews of Modern Physics}).
-
-\subsection{Citing a reference}
-As in standard \LaTeX, references are cited in text using the
-\cmd\cite\marg{key} command and are listed in the bibliography using
-the \cmd\bibitem\marg{key} command. The \cmd\cite{} macro enables
-\revtex~4.1 to automatically number the references in the manuscript.
-
-A typical example might be:
-\begin{verbatim}
-String theory\cite{GSW} attempts to 
-provide a theory of everything.
-\end{verbatim}
-The corresponding \cmd\bibitem{} would be:
-\begin{verbatim}
-\bibitem{GSW} M.~Greene, J.~Schwarz, and
-E.~Witten, \textit{Superstring Theory:
-Introduction}, (Cambridge University
-Press, London, 1985).
-\end{verbatim}
-
-Journals differ in how the \cmd\cite\ will be displayed. Most APS journals
-display the citation in-line, as a number, enclosed in square brackets,
-\textit{e.g.}, ``String theory[1] attempts\dots.'' Other journals
-(most notably \textit{Physical Review B})
-instead use a number in a superscript: ``String theory$^{1}$ attempts\dots.''
-Selecting the journal substyle using a class option (such as
-\classoption{prb}) will invoke the appropriate style.
-In journal substyles using superscripts,
-the macro the \cmd\onlinecite\marg{key} is necessary to get the number
-to appear on the baseline.
-For example, ``String theory (see, for example,
-\verb+Ref.~\onlinecite{GSW}+)'' will give the output
-``String theory (see, for example, Ref.~1).''
-
-The \cmd{\onlinecite} command has the same semantics as
-\classname{natbib}'s \cmd{\citealp} command.
-
-A \cmd\cite\ command with multiple keys is formatted with consecutive
-reference numbers collapsed; e.g., [1,2,3,5] will be output as
-[1--3,5].  To split the list over more than one line, use
-a \verb+%+ character immediately following a comma:
-\begin{verbatim}
-. . .  \cite{a,b,c,d,e,f,%
-g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}
-\end{verbatim}
-The \verb+%+ avoids unwanted spaces.
-
-\subsection{Author/Year (Non-numeric) Citations}
-
-\textit{Reviews of Modern Physics} uses a citation style based on the
-first author's last name and the year of the reference rather than a
-simple number. Support for this style of citing references is the
-primary reason \revtex~4.1 uses the \classname{natbib}
-package. \classname{natbib} uses an optional argument to the
-\cmd\bibitem\ macro to specify what text to use for the \cmd\cite\
-text:
-\begin{quote}
-\cmd\bibitem\verb+[+\meta{short-name}\verb+(+\meta{year}\verb+)+\meta{long-name}\verb+]+
-\end{quote}
-where \meta{short-name} is the author name used in a parenthetical citation, 
-\meta{long-name} that used in a textual citation, and 
-\meta{year} is the year. More concretely, the \cmd\bibitem\ example
-above would appear as
-\begin{verbatim}
-\bibitem[Greene et al.(1985)Green,
-Schwarz, and Witten]{GSW}
-M.~Greene, J.~Schwarz, and E.~Witten,
-\textit{Superstring Theory},
-(Cambridge Press, London, 1985).
-\end{verbatim}
-
-When the citation constitutes part of the grammar of the sentence,
-the \cmd\textcite\marg{key} command may be used (analogous to the
-\cmd\onlinecite\ command above). Both \cmd\textcite\ and
-\cmd\onlinecite\ are built upon \classname{natbib}'s rich repertoire of
-macros (\cmd\citep{}, \cmd\citet{}, etc.). These macros are available in
-\revtex~4.1; however, APS authors must follow the
-\textit{APS Author Guide for \revtex~4.1}
-guidelines regarding \classname{natbib}'s macros.
-
-\subsection{Combined Author/Year and Numeric Citations}
-
-AIP's \textit{Journal of Mathematical Physics} uses a combined author/year and numerical citation style. \revtex~4.1 supports this referencing style. Please see the \textit{Author's Guide to AIP Substyles for \revtex~4.1} for more information about this style.
-
-\subsection{\label{sec:use-bib}Using Bib\TeX}
-
-The \cmd\bibitem{} entries can be coded by hand as above, of course, but the
-use of \BibTeX\ with the new style files provided with \revtex~4.1 makes
-it particularly simple to generate marked-up references that can, for
-instance, take advantage of packages like
-\classname{hyperref} for linking. They also save the trouble of having
-to specify formatting like the italics for the book title in the above
-example. And, for those wishing to use author/year citations, \BibTeX\ 
-will automatically generate the appropriate optional arguments for the
-\cmd\bibitem\ commands.
-
-\BibTeX\ is an adjunct to \LaTeX\ that aids in the
-preparation of  bibliographies. \BibTeX\ allows authors to build up a
-database or collection of bibliography entries that may be used for many
-manuscripts. A \BibTeX\ style file then specifies how to transform the
-entries into a proper \cmd\bibitem{} for a particular journal. Here we
-give a brief summary of how to get started with \BibTeX. More details can be
-found in the LaTeX books listed in the references.
-
-Selecting a journal style by using an appropriate class option will
-automatically select the correct \BibTeX\ style file from those included in
-\revtex~4.1. Four basic \BibTeX\ style files are included: \file{apsrev4-1.bst} (APS journals using a numeric citation style, \textit{i.e.}, all but RMP), \file{apsrmp4-1.bst} (author/year style citations for RMP),
-\file{aipauth4-1.bst} (AIP journal using an author/year citation style), and \file{aipnum4-1.bst} (AIP journals using a numeric citation style). In addition, there are ``long" versions for each of these that add the titles of cited articles to the bibliography. The selection can be overridden by specifying an
-alternative \file{.bst} file using the standard \LaTeXe
-\cmd\bibliographystyle\ macro. This must appear in the preamble
-before the \envb{document} line in \revtex~4.1 (this differs from
-standard \LaTeX).
-
-The \BibTeX\ database files will contain entries such as:
-\begin{verbatim}
- at Book{GSW,
-  author=``M. Greene, J. Schwarz,
-           E. Witten'',
-  title=``Superstring theory:
-          Introduction'',
-  publisher=``Cambridge University
-          Press'',
-  address=``London'',
-  year=``1985''
-}
-\end{verbatim}
-There are entry formats for articles, technical reports, e-prints,
-theses, books, proceedings, and articles that appear in books or
-proceedings. The styles provided with
-\revtex~4.1 also allows URL's and e-print identifiers to be specified
-for any of the different entry types. There is also an additional
-``collaboration'' field that can be used in addition to ``author'.'
-
-To actually create the bibliography in the manuscript, the
-\cmd\bibliography\marg{bib files} macro is used. 
-Here \meta{bib files} is a comma-separated list of \BibTeX\ bibliography
-database files, each with the \file{.bib} extension. The
-\cmd\bibliography\ macro should be placed at the location where the
-references are to appear (usually after the main body of the
-paper). When the manuscript is processed with \LaTeX\ for the first
-time, the keys corresponding for the \cmd\cite{} macros used in the
-manuscript are written out to the \file{.aux} file. Then \BibTeX\ should
-be run (if the manuscript is called \file{paper.tex}, the command would
-be \verb+bibtex paper+. This will produce a \file{.bbl} file containing all
-of the \cmd\bibitem{}'s for the manuscript. Subsequent runs of \LaTeXe\
-will call this file in to resolve the references. \LaTeXe\ should be run
-repeatedly until all references are resolved.
-
-The \BibTeX-produced \cmd\bibitem{}'s created using the \revtex\ style files appear considerably more complex than the example given
-above. This is because the style files add in \cmd\bibinfo{},
-\cmd\bibnamefont{}, \cmd\eprint{}, and \cmd\url{} macros for
-specifying additional formatting and tagging. The \cmd\bibinfo\ macro
-is mostly a do-nothing macro that serves merely to tag the information with
-the field information from the original entry in the \BibTeX\ database.
-The \cmd\eprint\ and \cmd\url\ macros can be used to create the
-appropriate hyperlinks in target formats such as PDF.
-
-For more information on using \BibTeX\ with \LaTeX, see Sections~4.3.1
-and~C.11.3 of the \LUG\cite{LaTeXman}, Section~13.2 of \cite{Compan},
-or the online \BibTeX\ manual \file{btxdoc.tex} from 
-\url{http://www.ctan.org/tex-archive/biblio/bibtex/distribs/doc/}.
-
-\subsubsection{\texttt{arXiv.org} support in Bib\TeX}
-
-
-\revtex~4.1 has better support for citing e-prints from \texttt{arXiv.org} For instance, the \texttt{.bib} entry
-\begin{verbatim}
- at Unpublished{Ginsparg:1988ui,
-  author    = "Ginsparg, Paul H.",
-  title     = "{Applied Conformal Field Theory}",
-  year      = "1988",
-  eprint    = "hep-th/9108028",
-  archivePrefix = "arXiv",
-  SLACcitation  = "%%CITATION=HEP-TH/9108028;%%"
-}
-\end{verbatim}
-will include the arXiv.org e-print identifier as \texttt{arXiv:hep-th/9108028} and hyperlink it (if using \texttt{hyperref}). The newer format for arXiv identifiers with primary classificiations will produce output such as \texttt{arXiv:0905.1949 [hep-ph]}.
-
-
-
-\subsection{\label{sec:multiple}Multiple references in a single bibliography entry}
-One of the most frequently requested features since the release of \revtex~4 has been to allow more than one reference to appear in a single bibliography entry when using Bib\TeX. This can now be done in \revtex~4.1 by using a starred (*) argument to the \cmd\cite\ command. This requires the latest version of \texttt{natbib}, developed in conjunction with \revtex~4.1, and the new \texttt{bst} files that come with \revtex~4.1. To combine multiple references into a single \cmd\bibitem, precede the second, third, etc. citation keys in the \cmd\cite\ command with an asterisk (*). For example \verb+\cite{bethe, *feynman, *bohr}+ will combine the \cmd\bibitem\relax s with keys \texttt{bethe}, \texttt{feynman}, and \texttt{bohr} into a single entry in the bibliography separated by semicolons.
-
-\subsection{\label{sec:prepend}Prepending and/or appending text to a citation}
-The expanded syntax for the  \cmd\cite\ command argument can also be used to specify text before and/or after a citation. For instance, a citation such as:
-\begin{verbatim}
-[19] A similar expression was derived in
-A. V. Andreev, Phys. Rev. Lett. 99, 247204
-(2007) in the context of carbon nanotube
-p-n junctions. The only difference is that no
-integration over ky is present there.
-\end{verbatim}
-may be created by the following \cmd\cite\ command:
-\begin{verbatim}
-\cite{*[{A similar expression was derived
-in }] [{ in the context of carbon nanotube
-p-n junctions. The only difference is that
-no integration over ky is present
-there.}] andreev2007}
-\end{verbatim}
-Please note the use of curly braces to enclose the text within the square brackets as well as the spaces next to the brackets.
-
-\section{Figures and Artwork}\label{sec:figures}
-\subsection{\texttt{figure} environment}
-
-Figures may be included into a \revtex~4.1 manuscript by using the
-standard \LaTeXe\ macros. It should be noted that \LaTeXe\ includes
-several powerful packages for including the files in various
-formats. The two main packages are \classname{graphics} and
-\classname{graphicx}. Both offer a macro called
-\cmd\includegraphics\oarg{args}\marg{filename}; 
-they mainly differ in how arguments for
-controlling figure scaling, translation, and orientation
-are specified. For more information on the enhancements of the \classname{graphicx} package, 
-see \cite{CompanG} or the guide \file{grfguide.pdf} available at
-\url{http://www.ctan.org/tex-archive/macros/latex/required/graphics/}.
-\revtex~4.1 no longer has the \classoption{epsf} class option, though
-the \classname{epsfig} package provides a similar interface.
-
-
-The \env{figure} environment should be used to add a caption to the figure and
-to allow \LaTeX\ to number and place the figures where they fit best. 
-\LaTeX\  will label and automatically number the captions FIG.~1,
-FIG.~2, etc. For example:
-\begin{verbatim}
-\begin{figure}
- \includegraphics{fig1.eps}
- \caption{\label{fig1}Text of first caption.}
-\end{figure}
-\end{verbatim}
-Note how the \cmd\label\marg{key} command is used to cross-reference
-figures in text. The \cmd\label\marg{key} command should be inserted
-inside the figure caption. As usual, the \cmd\ref\marg{key} macro can
-then by used to refer to the label: ``As depicted in
-FIG.\verb+~\ref{fig1}+\dots''.
-
-Figures are normally set to the width of the column in
-which they are placed. This means that in two-column mode, the figure
-will be placed in a single, narrow column. For wide figures, the
-\cmd\figure\verb+*+ environment should be used
-instead. This will place the figure across both columns (the figure
-usually will
-appear either at the top or the bottom of the following page).
-
-
-Captions less than one line long are centered under the figure,
-otherwise they span the width of the figure.
-
-Note that is unnecessary (and undesirable) to use explicit centering
-commands inside the float environments.
-
-\subsection{\texttt{video} environment}
-Papers often refer to multimedia material such as videos. The \texttt{video} environment is identical to the \texttt{figure} environment, but the caption will be labeled as a \textbf{Video} (with its own counter independent of figures). A URL can also be specified so that the caption label can be linked to the online video (if using the \texttt{hyperref} package). The included graphic (using \cmd\includegraphics\ from the \texttt{graphics} or \texttt{graphicx} package) would be a representation frame from the video. A \texttt{\cmd\listofvideos} is also provided.  For example:
-\begin{verbatim}
-\begin{video}
-\includegraphics{videoframe.jpg}
-\setfloatlink{http://some.video.com/fun.mov}
-\caption{\label{vid:interest}This is a video
-of something fun.}
-\end{video}
-\end{verbatim}
-There is also a corresponding \cmd\listofvideos\ command.
-
-\section{Tables}\label{sec:tables}
-
-Tables are very similar to figures. They should be input using the
-\env{table} environment as detailed below, and 
-\LaTeX\ will label and number the captions TABLE~1, TABLE~2, etc.
-(or in whatever format required by the chosen journal
-substyle). Tables without captions won't be numbered.
-
-Each table must begin with \envb{table}, end with \enve{table}. A
-caption can be specified using the \cmd\caption\marg{text} command.
-Captions less than one line long are centered under the figure,
-otherwise they span the width of the figure.
-To refer to the table via cross-referencing, a \cmd\label\marg{key}
-command should appear within the \cmd{\caption}.  Use the
-\cmd\ref\marg{key} command to cite tables in text. The \env{table}
-environment will set the table to the width of the column. Thus, in
-two-column mode, the table will be confined to a single column. To set a
-table to the full width of the page, rather than the column, use the
-\env{table*} environment.
-
-The heart of the table is the
-\env{tabular} environment. This will behave for the most part as in
-standard \LaTeXe\ (please refer to Section~3.6.3 and Appendix~C.10.2 of the
-\LUG{} for more details about the \env{tabular} environment).
-Note that \revtex~4.1 no longer automatically adds double (Scotch) rules
-around tables. Nor does the \env{tabular} environment set various
-table parameters for column spacing as before. Instead, a new
-environment \env{ruledtabular} provides this functionality. This
-environment should surround the \env{tabular} environment:
-\begin{verbatim}
-\begin{table}
-\caption{\label{<key>}....}
-\begin{ruledtabular}
-\begin{tabular}
-...
-\end{tabular}
-\end{ruledtabular}
-\end{table}
-\end{verbatim}
-
-A basic table looks as follows:
-\begin{verbatim}
-\begin{table}
-\caption{\label{tab:example}Text of table caption.}
-\begin{ruledtabular}
-\begin{tabular}{ll}
-  Heading 1 & Heading 2\\
-  Cell 1 & Cell 2\\
-\end{tabular}
-\end{ruledtabular}
-\end{table}
-\end{verbatim}
-
-The \env{quasitable} environment is no longer in \revtex~4.1. The
-standard \env{tabular} environment can be used instead because it
-no longer puts in the double rules.
-
-\subsection{Aligning on a decimal point}
-Numerical columns should align on the decimal point (or
-decimal points if more than one is is present). This is accomplished
-by again using a standard \LaTeXe\ package, \classname{dcolumn} which
-must be loaded in the manuscript's preamble:
-\begin{verbatim}
-\usepackage{dcolumn}
-\end{verbatim}
-Once this package is loaded, the column specifier `\texttt{d}' can be
-used in the table's \env{tabular}\marg{preamble} enviroment preamble.
-The `\texttt{d}' should be used for simple numeric data with a single
-decimal point.
-%
-The entry of a \texttt{d} column is typeset in math mode; do not
-insert any \verb+$+ math delimiters into a `\texttt{d}' column.  Items
-without a decimal point are simply set in math mode, centered.  If
-text is required in the column, use \cmd\text\ or \cmd\mbox\ as
-appropriate.  If multiple decimal points are present then the last is
-used for alignment. To escape from the `\texttt{d}' column use
-\cmd\multicolumn\ as usual. See the sample file \file{apssamp.tex} for examples.
-
-\subsection{Footnotes in Tables}\label{sec:tablenote}
-
-Footnotes in a table are labeled \emph{a}, \emph{b}, \emph{c},
-etc. They can be specified by using the \LaTeX\ \cmd\footnote\
-command. Furthermore,
-\cmd\footnotemark\ and \cmd\footnotetext\ can be used so that multiple entries
-can to refer to the same footnote. The footnotes for a table are typeset
-at the bottom of the table, rather than at the bottom of the page or
-at the end of the references. The arguments for \cmd\footnotemark\ and
-\cmd\footnotetext\ should be numbers 1, 2, \dots. The journal style
-will convert these to letters.  See sample file \file{apssamp.tex} for
-examples and explanations of use.
-
-\subsection{Dealing with Long Tables}
-By default, tables are set in a smaller size than the text body
-(\cmd\small). The \cmd\squeezetable\ declaration makes the table font
-smaller still (\cmd\scriptsize).  Thus, putting the
-\cmd\squeezetable\ command before the \envb{table} line in a table
-will reduce the font size. If this isn't sufficient to fit
-the table on a page, the standard \LaTeXe\ \classname{longtable}
-package may be used. The scope of the
-\cmd\squeezetable\ command must be limited by enclosing it with a group:
-\begin{verbatim}
-\begingroup
-\squeezetable
-\begin{table}
-[...]
-\end{table}
-\endgroup
-\end{verbatim}
-
-Tables are normally set to the width of the column in
-which they are placed. This means that in two-column mode, the table
-will be placed in a single, narrow column. For wide tables, the
-\cmd\table\verb+*+ environment should be used
-instead. This will place the table across both columns (the table
-usually will
-appear either at the top or the bottom of the following page).
-
-
-To break tables across pages, \revtex~4.1requires adding to the
-table a float placement option of [H] (meaning put the table ``here''
-and effectively ``unfloating'' the table) to the \envb{table}
-command. The commands \verb+\\*+ and \cmd{\samepage} can be used to
-control where the page breaks occur (these are the same as for the
-\env{eqnarray} environment).
-
-Long tables are more robustly handled by using the
-\classname{longtable.sty} package included with the standard \LaTeXe\
-distribution (put \verb+\usepackage{longtable}+ in the preamble). This
-package gives precise control over the layout of the table.
-The \revtex~4.1 package contains patches that enable the
-\classname{longtable} package to work in two-column mode. Of course, a
-table set in two-column mode needs to be narrow enough to fit within
-the column. Otherwise, the columns may overlap. \revtex~4.1 provides
-an additional environment \env{longtable*} which allows a longtable to
-span the whole page width. Currently, the \env{longtable*} and
-\env{ruledtabular} environments are incompatible. In order to get the
-double (Scotch) rule, it is necessary to add the \verb+\hline\hline+
-manually (or define \verb+\endfirsthead+ and \verb+\endlastfoot+
-appropriately).  For more documentation on the \env{longtable}
-environment and on the package options of the
-\classname{longtable} package, please see the documentation available at
-\url{http://www.ctan.org/macros/latex/required/tools/longtable.dtx} or
-refer to \cite{Compan}.
-
-\section{Placement of Figures, Tables, and Other Floats}
-\label{sec:place}
-
-By default, figures and tables (and any other ``floating'' environments
-defined by other packages) float to the top or bottom of the page
-using the standard \LaTeX\ float placement mechanism.  Initially, each
-\env{figure} or \env{table} environment should be put immediately
-following its first reference in the text; this will usually result in
-satisfactory placement on the page.  An optional argument for either 
-environment adjusts the float placement. For example:
-\begin{quote}
-\envb{figure}\oarg{placement}\\
-\dots\\
-\enve{figure}
-\end{quote}
-where \meta{placement} can be any combination of \verb|htbp!|, signifying
-``here'', ``top'', ``bottom'', ``page'', and ``as soon as possible'',
-respectively. The same placement argument may be added to a
-\envb{table}. For more details about float placement, 
-see the instructions in the \LUG, Appendix~C.9.1.
-
-In two-column mode, a page may contain both a \env{widetext}
-environment and a float. \revtex~4.1 may not always be able to
-automatically put the float in the optimal place. For instance, a
-float may be placed at the bottom of a column just before the
-\env{widetext} begins. To workaround this, try moving the float
-environment below the \env{widetext} environment. Alternative
-\meta{placements} may also alleviate the problem.
-
-\env{figure} and \env{table} environments should not 
-be enclosed in a \env{widetext} environment to make them span
-the page to accommodate wide figures or tables. Rather, the
-\env{figure*} or \env{table*} environments should be used instead.
-
-Sometimes in \LaTeX\ the float placement mechanism breaks down and a
-float can't be placed. Such a ``stuck'' float may mean that it and all
-floats that follow are moved to the end of the job (and if there are
-too many of floats, the fatal error \texttt{Too many unprocessed floats}
-will occur). \revtex~4.1 provides the class option
-\classoption{floatfix} which attempts to invoke emergency float
-processing to avoid creating a ``stuck'' float. \revtex~4.1 will provide
-a message suggesting the use of
-\classoption{floatfix}. If \classoption{floatfix} doesn't work or if
-the resulting positioning of the float is poor, the float should be
-repositioned by hand.
-
-\revtex~4.1 offers an additional possibility for placing the floats. By
-using the either the \classoption{endfloats} or the
-\classoption{endfloats*} class option all floats may be held
-back (using an external file) and then set elsewhere in the document
-using the the commands \cmd\printtables\ and \cmd\printfigures{},
-placed where the tables and figures are to be printed (usually at the
-end of the document).  (This is similar to the standard
-\cmd\printindex\ command). Using a \texttt{*}-form of the commands
-(\cmd\printfigures\verb+*+ and
-\cmd\printtables\verb+*+) will begin the figures
-or tables on a new page. Alternatively, the option
-\classoption{endfloats*} may be used to change the behavior of the
-non-\texttt{*}-forms so that every float will appear on a separate
-page at the end.
-
-Without one of the \classoption{endfloats} class options, these float
-placement commands are silently ignored, so it is always safe to use
-them.  If one of the \classoption{endfloats} class options is given,
-but the \cmd\printtables\ command is missing, the tables will be
-printed at the end of the document. Likewise, if \cmd\printfigures\ is
-missing, the figures will be printed at the end of the document.
-Therefore it is also safe to omit these commands as long as \revtex's
-default choices for ordering figures and tables are satisfactory.
-
-The \classoption{endfloats} option (or perhaps some journal substyle
-that invokes it), requires explicit \envb{figure}, \enve{figure},
-\envb{table}, and \enve{table} lines. In particular, do \emph{not}
-define typing shortcuts for table and figure environments, such as
-\begin{verbatim}
-\def\bt{\begin{table}}% Incompatible!
-\def\et{\end{table}}%
-\end{verbatim}
-
-Please note that it is generally undesirable to have all floats moved
-to the end of the manuscript. APS no longer requires this for
-submissions. In fact, the editors and referees will have an easier time
-reading the paper if the floats are set in their normal positions.
-
-\section{Rotating Floats}
-
-Often a figure or table is too wide to be typeset in the standard
-orientation and it is necessary to rotate the float 90
-degrees. \revtex~4.1 provides a new environment \env{turnpage} as an
-easy means to accomplish this. The \env{turnpage} environment depends
-on one of the packages \classname{graphics} or \classname{graphicx}
-being loaded. To use the \env{turnpage} environment, simply enclose
-the \env{figure} or \env{table} environment with the \env{turnpage}
-environment:
-\begin{verbatim}
-\documentclass[...]{revtex4}
-\usepackage{graphicx}
-[...]
-\begin{turnpage}
-\begin{figure} or \begin{table}
-[...]
-\end{figure} or \end{table}
-\end{turnpage}
-\end{verbatim}
-A turnpage float will be typeset on a page by itself. Currently, there
-is no mechanism for breaking such a float across multiple pages.
-
-\section{\revtex~4.1 symbols and the \classname{revsymb4-1} package}
-
-Symbols made available in earlier versions of \revtex\ are
-defined in a separate package, \classname{revsymb4-1},
-so that they may be used with other classes.
-This might be useful if, say, copying text from a \revtex\ document to
-a non-\revtex\ document. \revtex~4.1 automatically includes these
-symbols so it is not necessary to explicitly call them in with a 
-\cmd\usepackage\ statement.
-
-Table~\ref{tab:revsymb} summarizes the symbols defined in this package.
-Note that \cmd{\overcirc}, \cmd{\overdots}, and \cmd{\corresponds} are
-no longer in \revtex~4.1. Use \cmd{\mathring} (standard in \LaTeXe),
-\cmd{\dddot} (with the \classoption{amsmath} package loaded), and 
-\cmd\triangleq\ (with the \classoption{amssymb} class option) respectively.
-\cmd{\succsim}, \cmd{\precsim}, \cmd{\lesssim}, and \cmd{\gtrsim} are
-also defined either in \classname{amsmath} or \classname{amssymb}. The
-AMS versions of these commands will be used if the appropriate AMS
-package is loaded.
-
-\begin{table}
-\caption{\label{tab:revsymb}Special \revtex~4.1 symbols, accents, and
-boldfaced parentheses defined in \file{revsymb.sty}}
-\begin{ruledtabular}
-\begin{tabular}{ll|ll}
-\cmd\lambdabar & $\lambdabar$ &\cmd\openone & $\openone$\\
-\cmd\altsuccsim & $\altsuccsim$ & \cmd\altprecsim & $\altprecsim$ \\
-\cmd\alt & $\alt$ & \cmd\agt & $\agt$ \\
-\cmd\tensor\ x & $\tensor x$ & \cmd\overstar\ x & $\overstar x$ \\
-\cmd\loarrow\ x & $\loarrow x$ & \cmd\roarrow\ x & $\roarrow x$  \\
-\cmd\biglb\ ( \cmd\bigrb ) & $\biglb( \bigrb)$ &
-\cmd\Biglb\ ( \cmd\Bigrb )& $\Biglb( \Bigrb)$ \\
-& & \\
-\cmd\bigglb\ ( \cmd\biggrb ) & $\bigglb( \biggrb)$ &
-\cmd\Bigglb\ ( \cmd\Biggrb\ ) & $\Bigglb( \Biggrb)$ \\
-\end{tabular}
-\end{ruledtabular}
-\end{table}
-
-\section{Other \revtex~4.1 Features}
-%\subsection{Hooks}
-%To be written....
-
-\subsection{Job-specific Override Files}
-\revtex~4.1 allows manuscript-specific macro definitions to be put
-in a file separate from the main \TeX\ file. One merely creates a file
-with the same basename as the \TeX\ file, but with the extension
-`.rty'. Thus, if the \TeX\ file is names man.tex, the macro
-definitions would go in man.rty. Note that the .rty file should be in
-the same directory as the \TeX\ file. APS authors should follow the
-guidelines in the \textit{APS Author Guide for \revtex~4.1} when
-submitting. Similarly, AIP authors should refer to the \textit{Author's Guide to AIP Substyles for \revtex~4.1}
-
-
-\begin{thebibliography}{}\label{sec:TeXbooks}
-\bibitem[Knuth(1986)]{TeXbook} D.E. Knuth, \emph{The \TeX book},
-(Addison-Wesley, Reading, MA, 1986).
-\bibitem[Lamport(1996)]{LaTeXman} L. Lamport, \emph{\LaTeX, a Document
-Preparation System}, (Addison-Wesley, Reading, MA, 1996).
-\bibitem[Kopka(1995)]{Guide} H. Kopka and P. Daly, \emph{A Guide to
-\LaTeXe}, (Addison-Wesley, Reading, MA, 1995).
-\bibitem[Goossens(1994)]{Compan} M. Goossens, F. Mittelbach, and
-A. Samarin, \emph{The \LaTeX\
-Companion}, (Addison-Wesley, Reading, MA, 1994).
-\bibitem[Goossens(1997)]{CompanG} M. Goossens, S. Rahtz, and
-F. Mittelbach, \emph{The
-\LaTeX\ Graphics Companion}, (Addison-Wesley, Reading, MA, 1997).
-\bibitem[Rahtz(1999)]{CompanW} S. Rahtz, M. Goossens, \emph{et
-al.},\emph{The \LaTeX\ Web Companion}, (Addison-Wesley, Reading, MA, 1999).
-\end{thebibliography}
-
-\end{document}
-

Added: trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.pdf	2019-01-11 22:28:35 UTC (rev 49671)
+++ trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.pdf	2019-01-11 22:30:04 UTC (rev 49672)

Property changes on: trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/revtex/auguide/auguide4-2.tex	2019-01-11 22:30:04 UTC (rev 49672)
@@ -0,0 +1,1799 @@
+%% ****** Start of file authguide.tex ****** %
+%%
+%%   This file is part of the APS files in the REVTeX 4 distribution.
+%%   Version 4.2b of REVTeX, December 2018
+%%
+%%   Copyright (c) 2019 The American Physical Society.
+%%
+%%   See the REVTeX 4.2 README file for restrictions and more information.
+%%
+\listfiles
+\documentclass[%
+,aps%
+ ,twocolumn%
+ ,secnumarabic%
+,amssymb, amsmath,nobibnotes, aps, prl, floatfix]{revtex4-2}
+\usepackage{docs}%
+\usepackage{bm}%
+\usepackage[colorlinks=true,linkcolor=blue]{hyperref}%
+%\nofiles
+\expandafter\ifx\csname package at font\endcsname\relax\else
+ \expandafter\expandafter
+ \expandafter\usepackage
+ \expandafter\expandafter
+ \expandafter{\csname package at font\endcsname}%
+\fi
+
+\begin{document}
+
+\title{\revtex~4.2 Author's Guide}%
+\author{American Physical Society}%
+\email{revtex at aps.org}
+\affiliation{1 Research Road, Ridge, NY 11961}
+\date{December 2018}%
+\maketitle
+\tableofcontents
+\clearpage
+\section{Introduction}
+
+This is the author's guide to \revtex~4.2, the preferred submission
+format for all APS and AIP journals. This guide is intended to be a concise
+introduction to \revtex~4.2. The documentation has been separated out
+into smaller units to make it easier to locate essential
+information.
+
+The following documentation is also part of the \revtex~4.2
+distribution. Updated versions of these will be maintained at
+the \revtex~4.2 homepage located at \url{http://journals.aps.org/revtex/}.
+\begin{itemize}
+\item \textit{APS Author Guide for \revtex~4.2}
+\item \textit{Author's Guide to AIP Substyles for \revtex~4.2}
+\item \textit{\revtex~4.2 Command and Options Summary}
+\end{itemize}
+This guide assumes a working \revtex~4.2
+installation. Please see the installation instructions included with the
+distribution.
+\subsection{Changes in \revtex~4.2}
+The \revtex\ system for \LaTeX\ began its development in 1986 and has gone through three major revisions since then.  \revtex~4 was released in August, 2001. Since that time, many user requests for new features were received. These requests were taken care of in the \revtex~4.1, which was released in August, 2010. \revtex~4.2 is the current release.
+
+\revtex~4.2 incorporates the following changes:
+
+\begin{itemize}
+\item \textbf{Added support for additional APS journals,  \textit{Physical Review X},  \textit{Physical Review Accelerators and Beams}, \textit{Physical Review Applied}, \textit{Physical Review Fluids}, \textit{Physical Review Materials}, and \textit{Physical Review Education Research}.} There are new options \texttt{prx},  \texttt{prab}, \texttt{prapplied}, \texttt{prfluids}, and \texttt{prmaterials}, and \texttt{prper}.
+
+\item \textbf{Added a unified \texttt{physrev} option for \textit{Physical Review} journal style (the \textit{Phys. Rev.} journals have no or few variations).}
+
+\item \textbf{The \texttt{prb} option now conforms with \textit{Physical Review B}'s updated style that uses the same non-superscripted citations as other APS journals}.
+
+\item \textbf{Added support for additional AIP journals, \textit{AIP Advances}, \textit{Applied Physics Letters Materials}, and \textit{Structural Dynamics} as well as \textit{AIP Conference Proceedings}. There are new options \texttt{adv}, \texttt{apm}, \texttt{sd}, and \texttt{cp}.}
+
+\item \textbf{Added support for the  Society of Rheology (\texttt{sor}) and its journal, \textit{Journal of Rheology} (\texttt{jor}).}
+
+\item \textbf{The \texttt{reprint} style for AIP's journal JMP was changed to one-column formatting.}
+
+\item \textbf{For all APS journal options, complete article titles are now displayed in bibliography entries citing journal articles when using Bib\TeX\ by default.}
+
+\item \textbf{In the \textit{Phys. Rev.} Bib\TeX\ style file, article titles in the bibliography are set in roman font}.    
+
+\item \textbf{The behavior of the \texttt{noeprints} option has been improved}.    
+
+\item \textbf{Support has been added for citing data sets in the Bib\TeX\ styles}.
+
+\item \textbf{Support for citing journals that use a DOI instead of pages or article identifiers has been improved (for APS \textit{Phys. Rev.} Bib\TeX\ style)}.
+
+\item \textbf{The indentation of tables of contents have been improved}.
+
+\item \textbf{The \texttt{onecolumn} option no longer defaults to creating a separate title page}.
+
+\item \textbf{The \texttt{showpacs} option is completely ignored now}.
+
+\item \textbf{A bug when using \texttt{booktabs.sty} has been fixed}.
+
+\item \textbf{The formatting of references for some commonly cited journals has been improved in the \textit{Phys. Rev.} Bib\TeX\ style}.
+
+\item \textbf{URLs generated for DOIs now use \texttt{https://doi.org/} as the base in the Bib\TeX\ styles.}
+
+\item \textbf{URLs generated for arXiv.org e-print identifiers now use \texttt{https://arXiv.org/abs/} as the base in the Bib\TeX\ styles.}
+
+\end{itemize}
+
+\subsection{\revtex~4 Backwards Compatibility}
+Documents prepared under \revtex~4 and \revtex~4.1 should process correctly under \revtex~4.2. However, the formatting of the pages and, if using Bib\TeX, the references may change. Under 4.2, articles typeset with the \texttt{prb} option will be typeset \texttt{cite} commands differently and adjacent punctuation may need to be moved accordingly. Default behaviors some other options may also have changed as described above.
+
+
+
+\subsection{Submitting to APS Journals}
+
+Authors using \revtex~4.2 to prepare a manuscript for submission to
+\textit{Physical Review Letters}, \textit{Physical Review},  \textit{Reviews of Modern Physics}, 
+or other APS journals must also read the companion document \textit{APS Author Guide for \revtex~4.2}
+distributed with \revtex\ and follow the guidelines detailed there.
+
+The \revtex~4.2 distribution includes both a template
+(\file{apstemplate.tex}) and a sample document (\file{apssamp.tex}).
+The template is a good starting point for a manuscript. In the
+following sections are instructions that should be sufficient for
+creating a paper using \revtex~4.2.
+
+Further information about submissions to the American
+Physical Society may be found at \url{http://journals.aps.org/revtex/}.
+
+\subsection{Submitting to AIP Journals}
+
+\revtex~4.2 includes support for the journals of the American Institute of Physics.
+The style files and authoring guides for these journals are distributed as part
+\revtex~4.2 distribution. The distribution includes both a template
+(\file{aiptemplate.tex}) and a sample document (\file{aipsamp.tex}).
+The template is a good starting point for a manuscript. In the
+following sections are instructions that should be sufficient for
+creating a paper using \revtex~4.2.
+
+
+
+More information may be found at 
+\url{http://publishing.aip.org/authors/preparing-your-manuscript}. Please consult the \textit{Author's Guide to AIP Substyles for \revtex~4.2} for more information about submissions to AIP journals, AIP styles files, and other AIP-specific information.
+
+\subsection{Contact Information}\label{sec:aipresources}%
+Any bugs, problems, or inconsistencies with \revtex\ or the APS journal style files should be reported to
+\revtex\ support at \verb+revtex at aps.org+. Reports should include information on the error and a \textit{small}
+sample document that manifests the problem if possible (please don't send large files!). Issues related to the AIP journal styles should be sent directly to \verb+tex at aip.org+.
+
+\section{Some \LaTeXe\ Basics}
+\revtex~4.2 must sometimes patch the underlying
+\LaTeX\ kernel. This means that \revtex~4.2 requires a fairly recent version of
+\LaTeXe. Versions prior to 2005/12/01 may not work
+correctly. \revtex~4.2 will be maintained to be compatible with future
+versions of \LaTeXe.
+
+\subsection{Useful \LaTeXe\ Markup}
+\LaTeXe\ markup is the preferred way to accomplish many basic tasks.
+
+\subsubsection{Fonts}
+
+Because \revtex~4.2 is based upon \LaTeXe, it inherits all of the
+macros used for controlling fonts. Of particular importance are the
+\LaTeXe\ macros \cmd{\textit}, \cmd{\textbf}, \cmd{\texttt} for changing to
+an italic, bold, or typewriter font respectively. One should always
+use these macros rather than the lower-level \TeX\ macros \cmd{\it},
+\cmd{\bf}, and \cmd{\tt}. The \LaTeXe\ macros offer
+improvements such as better italic correction and scaling in super-
+and subscripts for example. Table~\ref{tab:fonts}
+summarizes the font selection commands in \LaTeXe.
+
+\begin{table}
+\caption{\label{tab:fonts}\LaTeXe\ font commands}
+\begin{ruledtabular}
+\begin{tabular}{ll}
+\multicolumn{2}{c}{\textbf{Text Fonts}}\\
+\textbf{Font command} & \textbf{Explanation} \\
+\cmd\textit\marg{text}  & Italics\\
+\cmd\textbf\marg{text}  & Boldface\\
+\cmd\texttt\marg{text}  & Typewriter\\
+\cmd\textrm\marg{text}  & Roman\\
+\cmd\textsl\marg{text}  & Slanted\\
+\cmd\textsf\marg{text}  & Sans Serif\\
+\cmd\textsc\marg{text}  & Small Caps\\
+\cmd\textmd\marg{text}  & Medium Series\\
+\cmd\textnormal\marg{text} & Normal Series\\
+\cmd\textup\marg{text}  & Upright Series\\
+  &\\
+\multicolumn{2}{c}{\textbf{Math Fonts}}\\
+\cmd\mathit\marg{text}  & Math Italics\\
+\cmd\mathbf\marg{text}  & Math Boldface\\
+\cmd\mathtt\marg{text}  & Math Typewriter\\
+\cmd\mathsf\marg{text}  & Math Sans Serif\\
+\cmd\mathcal\marg{text}  & Calligraphic\\
+\cmd\mathnormal\marg{text} & Math Normal\\
+\cmd\bm\marg{text}& Bold math for Greek letters\\
+                  & and other symbols\\
+\cmd\mathfrak\marg{text}\footnotemark[1]  & Fraktur\\
+\cmd\mathbb\marg{text}\footnotemark[1] & Blackboard Bold\\
+\end{tabular}
+\end{ruledtabular}
+\footnotetext[1]{Requires \classname{amsfonts} or \classname{amssymb} class option}
+\end{table}
+
+\subsubsection{User-defined macros}
+\LaTeXe\ provides several macros that enable users to easily create new
+macros for use in their manuscripts:
+\begin{itemize}
+\footnotesize
+\item \cmd\newcommand\marg{\\command}\oarg{narg}\oarg{opt}\marg{def} 
+\item \cmd\newcommand\verb+*+\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
+\item \cmd\renewcommand\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
+\item \cmd\renewcommand\verb+*+\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
+\item \cmd\providecommand\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
+\item \cmd\providecommand\verb+*+\marg{\\command}\oarg{narg}\oarg{opt}\marg{def}
+\end{itemize}
+Here \meta{\\command} is the name of the macro being defined,
+\meta{narg} is the number of arguments the macro takes,
+\meta{opt} are optional default values for the arguments, and
+\meta{def} is the actually macro definiton. \cmd\newcommand\ creates a
+new macro, \cmd\renewcommand\ redefines a previously defined macro,
+and \cmd\providecommand\ will define a macro only if it hasn't
+been defined previously. The *-ed versions are an optimization that
+indicates that the macro arguments will always be ``short'' arguments. This is
+almost always the case, so the *-ed versions should be used whenever
+possible.
+
+The use of these macros is preferred over using plain \TeX's low-level
+macros such as
+\cmd\def{},\cmd\edef{}, and \cmd\gdef{}. APS authors must follow the
+\textit{APS Author Guide for \revtex~4.2} when defining macros.
+
+\subsubsection{Symbols}
+
+\LaTeXe\ has added some convenient commands for some special symbols
+and effects. These are summarized in Table~\ref{tab:special}. See
+\cite{Guide} for details.
+
+\begin{table}
+\caption{\label{tab:special}\LaTeXe\ commands for special symbols and effects}
+\begin{ruledtabular}
+\begin{tabular}{lc}
+Command & Symbol/Effect\\
+\cmd\textemdash & \textemdash\\
+\cmd\textendash & \textendash\\
+\cmd\textexclamdown & \textexclamdown\\
+\cmd\textquestiondown & \textquestiondown\\
+\cmd\textquotedblleft & \textquotedblleft\\
+\cmd\textquotedblright & \textquotedblright\\
+\cmd\textquoteleft & \textquoteleft\\
+\cmd\textquoteright & \textquoteright\\
+\cmd\textbullet   & \textbullet\\
+\cmd\textperiodcentered & \textperiodcentered\\
+\cmd\textvisiblespace & \textvisiblespace\\
+\cmd\textcompworkmark & Break a ligature\\
+\cmd\textcircled\marg{char} & Circle a character\\
+\end{tabular}
+\end{ruledtabular}
+\end{table}
+
+\LaTeXe\ provides additional symbols in a
+separate package called \classname{latexsym}. To use these symbols, include
+the package using:
+\begin{verbatim}
+\usepackage{latexsym}
+\end{verbatim}
+
+\subsection{Using \LaTeXe\ packages with \revtex}\label{sec:usepackage}%
+
+Many \LaTeXe\ packages are available, for instance, on CTAN at
+\url{http://www.ctan.org/tex-archive/macros/latex/required/}
+and at
+\url{http://www.ctan.org/tex-archive/macros/latex/contrib/}. Full \TeX\ distributions
+such as  \TeX\
+Live  \url{http://www.tug.org/texlive/} provide an excellent and complete installation of \TeX\ that is
+easy to maintain.  Some of these packages
+are automatically loaded by \revtex~4.2 when certain class options are
+invoked and are, thus, ``required.''  They will either be distributed
+with \revtex\ or are already included with a standard \LaTeXe\
+distribution.
+
+Required packages are automatically loaded by \revtex\ on an as-needed
+basis.  Other packages should be loaded using the
+\cmd\usepackage\ command. To load the
+\classname{hyperref} package, the document preamble might look like:
+\begin{verbatim}
+\documentclass{revtex4-2}
+\usepackage{hyperref}
+\end{verbatim}
+
+Some common (and very useful) \LaTeXe\ packages are \textit{a priori}
+important enough that \revtex~4.2 has been designed to be specifically
+compatible with them. 
+A bug stemming from the use of one of these packages in
+conjunction with any of the APS journals may be reported by contacting
+\revtex\ support.
+\begin{description}
+\item[\textbf{AMS packages}] \revtex~4.2 is compatible with and depends
+ upon the AMS packages
+\classname{amsfonts},
+\classname{amssymb}, and
+\classname{amsmath}. In fact, \revtex~4.2 requires use of these packages
+to accomplish some common tasks. See Section~\ref{sec:math} for more.
+\revtex~4.2 requires version 2.0 or higher of the AMS-\LaTeX\ package.
+
+\item[\textbf{array and dcolumn}]
+The \classname{array} and \classname{dcolumn} packages are part of
+\LaTeX's required suite of packages. \classname{dcolumn} is required
+to align table columns on decimal points (and it in turn depends upon
+the \classname{array} package).
+
+\item[\textbf{longtable}]
+\file{longtable.sty} may be used for large tables that will span more than one
+page. \revtex~4.2 dynamically applies patches to longtable.sty so that
+it will work in two-column mode.
+
+\item[\textbf{hyperref}] \file{hyperref.sty} is a package that is
+used for putting hypertext links into \LaTeXe\ documents.
+\revtex~4.2 has hooks to allow e-mail addresses and URL's to become
+hyperlinks if \classname{hyperref} is loaded.
+
+\item[\textbf{booktabs}] \revtex~4.2 improves compatibility with \classname{booktabs.sty}.
+
+\end{description}
+
+Other packages will conflict with \revtex~4.2 and should be
+avoided. Usually such a conflict arises because the package adds
+enhancements that \revtex~4.2 already includes. Here are some common
+packages that clash with \revtex~4.2:
+\begin{description}
+\item[\textbf{multicol}] \file{multicol.sty} is a package by Frank Mittelbach
+that adds support for multiple columns. In fact, early versions of
+\revtex~4.2 used \file{multicol.sty} for precisely this. \revtex\  
+incorporates its own support for multiple-column typesetting.
+
+\item[\textbf{cite}] Donald Arseneau's \file{cite.sty} is often used to provide
+support for sorting a \cmd\cite\ command's arguments into numerical
+order and to collapse consecutive runs of reference numbers. \revtex~4.2
+has this functionality built-in already via the \classname{natbib} package.
+
+\item[\textbf{mcite}] \revtex~4.2 already contains a lot of this
+functionality through its updated syntax for the \cmd\cite\ command and
+the latest  \classname{natbib} package.
+
+\item[\textbf{endfloat}] The same functionality can be accomplished
+using the \classoption{endfloats} class option.
+
+\item[\textbf{float}] \texttt{float.sty} provides a mechanism for creating new float classes with just a few commands. \revtex~4.2 has limited compatible with float.sty. If attempting to use this package, be sure to put any \cmd\newfloat\ commands after the \verb+\begin{document}+ line.
+
+\end{description}
+
+\section{The Document Preamble}
+
+The preamble of a \LaTeX\ document is the set of commands that precede
+the \envb{document} line. It contains a
+\cmd\documentclass\ line to load the \revtex~4.2 class (\textit{i.e.},
+all of the \revtex~4.2 macro definitions), \cmd\usepackage\ macros to
+load other macro packages, and other macro definitions.
+
+\subsection{The \emph{documentclass} line}
+The basic formatting of the manuscript is controlled by setting
+\emph{class options} using
+\cmd\documentclass\oarg{options}\aarg{\classname{revtex4-2}}.
+The optional arguments that appear in the square brackets control the layout of the
+document. At this point, one only needs to choose:
+\begin{itemize}
+\item Either the \classoption{aps} (default) or \classoption{aip} society option
+\item One of the chosen society's journal styles such as \classoption{prl} or \classoption{apl}
+\item A layout option such as \classoption{preprint} (single-column formatting), \classoption{reprint} (an approximation
+to the selected journal's actual layout which may be one- or two-column depending on the journal), or \classoption{twocolumn}
+\end{itemize}
+Usually, one would want to use \classoption{preprint} for draft papers. Paper size options are also
+available as well. In particular, \classoption{a4paper} is available
+as well as the rest of the standard \LaTeX\ paper sizes. A
+full list of class options is given in the \textit{\revtex~4.2 Command
+and Options Summary}.
+
+\subsection{Loading other packages}
+Other packages may be loaded into a \revtex~4.2 document by using the
+standard \LaTeXe\ \cmd\usepackage\ command. For instance, to load
+the \classoption{graphics} package, one would use
+\verb+\usepackage{graphics}+.
+
+\section{The Front Matter}\label{sec:front}
+
+After choosing the basic look and feel of the document by selecting
+the appropriate class options and loading in whatever other macros are
+needed, one is ready to move on to creating a new manuscript. After
+the preamble, be sure to put in a \envb{document} line (and put
+in an \enve{document} as well). This section describes the macros
+\revtex~4.2 provides for formatting the front matter of the
+article. The behavior and usage of these macros can be quite
+different from those provided in the \LaTeXe\ \classname{article} class.
+\subsection{Setting the title}
+
+The title of the manuscript is simply specified by using the
+\cmd\title\aarg{title} macro. A \verb+\\+ may be used to put a line
+break in a long title.
+
+\subsection{Specifying a date}%
+
+The \cmd\date\marg{date} command outputs the date on the
+manuscript.  Using \cmd\today\ will cause \LaTeX{} to insert the
+current date whenever the file is run:
+\begin{verbatim}
+\date{\today}
+\end{verbatim}
+
+\subsection{Specifying authors and affiliations}
+
+The \revtex~4.2 macros  for specifying authors and their affiliations are designed
+ to save labor for authors and during production. Authors and affiliations are
+arranged into groupings called, appropriately enough, \emph{author
+groups}. Each author group is a set of authors who share the same set
+of affiliations. Author names are specified with the \cmd\author\
+macro while affiliations (or addresses) are specified with the
+\cmd\affiliation\ macro. Author groups are specified by sequences of
+\cmd\author\ macros followed by \cmd\affiliation\ macros. An
+\cmd\affiliation\ macro applies to all previously specified
+\cmd\author\ macros which don't already have an affiliation supplied.
+
+For example, if Bugs Bunny and Roger Rabbit are both at Looney Tune
+Studios, while Mickey Mouse is at Disney World, the markup would be:
+\begin{verbatim}
+\author{Bugs Bunny}
+\author{Roger Rabbit}
+\affiliation{Looney Tune Studios}
+\author{Mickey Mouse}
+\affiliation{Disney World}
+\end{verbatim}
+The default is to display this as 
+\begin{center}
+Bugs Bunny and Roger Rabbit\\
+\emph{Looney Tune Studios}\\
+Mickey Mouse\\
+\emph{Disney World}\\
+\end{center}
+This layout style for displaying authors and their affiliations is
+chosen by selecting the class option
+\classoption{groupedaddress}. Journal styles usually default this option,
+ so it need not be specified explicitly. The other major way of displaying this
+information is to use superscripts on the authors and
+affiliations. This can be accomplished by selecting the class option
+\classoption{superscriptaddress}. To achieve the display
+\begin{center}
+Bugs Bunny,$^{1}$ Roger Rabbit,$^{1,2}$ and Mickey Mouse$^{2}$\\
+\emph{$^{1}$Looney Tune Studios}\\
+\emph{$^{2}$Disney World}\\
+\end{center}
+one would use the markup
+\begin{verbatim}
+\author{Bugs Bunny}
+\affiliation{Looney Tune Studios}
+\author{Roger Rabbit}
+\affiliation{Looney Tune Studios}
+\affiliation{Disney World}
+\author{Mickey Mouse}
+\affiliation{Disney World}
+\end{verbatim}
+
+Note that \revtex~4.2 takes care of any commas and \emph{and}'s that join
+the author names together and font selection, as well as any
+superscript numbering. Only the author names and affiliations should
+be given within their respective macros. See below for further information
+regarding the proper way to add footnotes to author names and affiliations.
+
+There is a third class option, \classoption{unsortedaddress}, for
+controlling author/affiliation display. The default
+\classoption{groupedaddress} will actually sort authors into the
+approriate author groups if one chooses to specify an affiliation for
+each author. The markup:
+\begin{verbatim}
+\author{Bugs Bunny}
+\affiliation{Looney Tune Studios}
+\author{Mickey Mouse}
+\affiliation{Disney World}
+\author{Roger Rabbit}
+\affiliation{Looney Tune Studios}
+\end{verbatim}
+will result in the same display as for the first case given
+above even though Roger Rabbit is specified after Mickey Mouse. To
+avoid Roger Rabbit being moved into the same author group as Bugs
+Bunny, use the
+\classoption{unsortedaddress} option instead. In general, it is safest
+to list authors in the order they should appear and specify
+affiliations for multiple authors rather than one at a time. This will
+afford the most independence for choosing the display option. Finally,
+it should be mentioned that the affiliations for the
+\classoption{superscriptaddress} are presented and numbered 
+in the order that they are encountered. These means that the order
+will usually follow the order of the authors. An alternative ordering
+can be forced by including a list of \cmd\affiliation\ commands before
+the first \cmd{\author} in the desired order. Then use the exact same
+text for each affilation when specifying them for each author.
+
+If an author doesn't have an affiliation, the \cmd\noaffiliation\
+macro may be used in the place of an \cmd\affiliation\ macro.
+
+
+\subsubsection{Collaborations}
+
+A collaboration name can be specified with the \cmd\collaboration\
+command. This is very similar to the \cmd\author\ command. In \revtex~4.2, it can
+be used with both the \classoption{superscriptaddress} and \classoption{groupedaddress} class options. The
+\cmd\collaboration\ command should appear at the end of the list of
+authors. The collaboration name will be appear centered in parentheses
+between the list of authors and the list of
+affiliations. Because collaborations
+don't normally have affiliations, one needs to follow the
+\cmd\collaboration\ with \cmd\noaffiliation.
+
+\subsubsection{Footnotes for authors, collaborations, affiliations or title}\label{sec:footau}
+
+Often one wants to specify additional information associated with an
+author, collaboration, or affiliation such as an e-mail address, an
+alternate affiliation, or some other ancillary information. 
+\revtex~4.2 introduces several new macros just for this purpose. They
+are:
+\begin{itemize}
+\item\cmd\email\oarg{optional text}\aarg{e-mail address}
+\item\cmd\homepage\oarg{optional text}\aarg{URL}
+\item\cmd\altaffiliation\oarg{optional text}\aarg{affiliation}
+\item\cmd\thanks\aarg{miscellaneous text}
+\end{itemize}
+In the first three, the \emph{optional text} will be prepended before the
+actual information specified in the required argument. In the APS journal style files, \cmd\email\ and \cmd\homepage\ no longer have a default value. However, in the AIP styles, each have a default text for their optional arguments
+(`Electronic address:' and `URL:' respectively). The \cmd\thanks\
+macro should only be used if one of the other three do not apply. Any
+author name can have multiple occurences of these four macros. Note
+that unlike the
+\cmd\affiliation\ macro, these macros only apply to the \cmd\author\
+that directly precedes it. Any \cmd\affiliation\ \emph{must} follow
+the other author-specific macros. A typical usage might be as follows:
+\begin{verbatim}
+\author{Bugs Bunny}
+\email[E-mail me at: ]{bugs at looney.com}
+\homepage[Visit: ]{http://looney.com/}
+\altaffiliation[Permanent address: ]
+                     {Warner Brothers}
+\affiliation{Looney Tunes}
+\end{verbatim}
+This would result in the footnote ``E-mail me at: \texttt{bugs at looney.com},
+Visit: \texttt{http://looney.com/}, Permanent address: Warner
+Brothers'' being attached to Bugs Bunny. Note that:
+\begin{itemize}
+\item Only an e-mail address, URL, or affiliation should go in the
+required argument in the curly braces.
+\item The font is automatically taken care of.
+\item An explicit space is needed at the end of the optional text if one is
+desired in the output.
+\item Use the optional arguments to provide customized
+text only if there is a good reason to.
+\end{itemize}
+
+The \cmd\collaboration\ , \cmd\affiliation\ , or even \cmd\title\ can
+also have footnotes attached via these commands. If any ancillary data
+(\cmd\thanks, \cmd\email, \cmd\homepage, or
+\cmd\altaffiliation) are given in the wrong context (e.g., before any
+\cmd\title, \cmd\author, \cmd\collaboration, or \cmd\affiliation\
+command has been given), then a warning is given in the \TeX\ log, and
+the command is ignored.
+
+Duplicate sets of ancillary data are merged, giving rise to a single
+shared footnote. However, this only applies if the ancillary data are
+identical: even the order of the commands specifying the data must be
+identical. Thus, for example, two authors can share a single footnote
+indicating a group e-mail address.
+
+Duplicate \cmd\affiliation\ commands may be given in the course of the
+front matter, without the danger of producing extraneous affiliations
+on the title page. However, ancillary data should be specified for
+only the first instance of any particular institution's
+\cmd\affiliation\ command; a later instance with different ancillary
+data will result in a warning in the \TeX\ log.
+
+It is preferable to arrange authors into
+sets. Within each set all the authors share the same group of
+affiliations. For each author, give the \cmd\author\ (and appropriate
+ancillary data), then follow this author group with the needed group
+of \cmd\affiliation\ commands.
+
+If affiliations have been listed before the first
+\cmd\author\ macro to ensure a particular ordering, be sure
+that any later \cmd\affiliation\ command for the given institution is
+an exact copy of the first, and also ensure that no ancillary data is
+given in these later instances.
+
+
+Each journal class option has a default behavior for the placement of these
+ancillary information footnotes. For instance, the \classoption{prb} option puts all
+such footnotes at the start of the bibliography while the \classoption{prl}
+journal styles displays them on the first page. One can override a
+journal style's default behavior by specifying explicitly the class
+option
+\classoption{bibnotes} (puts the footnotes at the start of the
+bibliography) or \classoption{nobibnotes} (puts them on the first page).
+Please consult the documentation for the various journal style files for further information.
+
+\subsubsection{Specifying first names and surnames}
+
+Many authors have names in which either the surname appears first
+or in which the surname is made up of more than one name. To ensure
+that such names are accurately captured for indexing and other
+purposes, the \cmd\surname\ macro should be used to indicate which portion
+of a name is the surname. Similarly, there is a \cmd\firstname\ macro
+as well, although usage of \cmd\surname\ should be sufficient. If an
+author's surname is a single name and written last, it is not
+necessary to use these macros. These macros do nothing but indicate
+how a name should be indexed. Here are some examples:
+\begin{verbatim}
+\author{Andrew \surname{Lloyd Weber}}
+\author{\surname{Mao} Tse-Tung}
+\end{verbatim}
+
+\subsection{The abstract}
+An abstract for a paper is specified by using the \env{abstract}
+environment:
+\begin{verbatim}
+\begin{abstract}
+Text of abstract
+\end{abstract}
+\end{verbatim}
+Note that in \revtex~4.2 the abstract must be specified before the
+\cmd\maketitle\ command and there is no need to embed it in an explicit
+minipage environment.
+
+\subsubsection{Structured abstracts}
+A new feature in \revtex~4.2 is support for \textit{structured abstracts}. A ``structured" abstract is an abstract divided into labeled sections. For instance, \textit{Physical Review C} would like authors to provide abstracts with sections summarizing the paper's  \textbf{Background}, \textbf{Purpose}, \textbf{Method}, \textbf{Results}, and \textbf{Conclusions}. This can be accomplished by using the \texttt{description} environment within the \texttt{abstract} environment.  For example:
+\begin{verbatim}
+\begin{abstract}
+\begin{description}
+\item[Background] This part would describe the
+context needed to understand what the paper
+is about.
+\item[Purpose] This part would state the purpose
+of the present paper.
+\item[Method] This part describe the methods
+used in the paper.
+\item[Results] This part would summarize the
+results.
+\item[Conclusions] This part would state the
+conclusions of the paper.
+\end{description}
+\end{abstract}
+\end{verbatim}
+
+\subsection{PACS codes}
+PACS codes are obsolete. The \classoption{showpacs} option does nothing, but is present so that older documents may still be processed under \revtex~4.2.
+
+\subsection{Keywords}
+A \cmd\keywords\ macro may also be used to indicate keywords for the
+article. 
+\begin{verbatim}
+\keywords{nuclear form; yrast level}
+\end{verbatim}
+This will be displayed below the abstract and PACS (if supplied). Like
+PACS codes, the actual display of the the keywords is controlled by
+two classoptions: \classoption{showkeys} and
+\classoption{noshowkeys}. An explicit \classoption{showkeys} must be
+included in the \cmd\documentclass\ line to display the keywords.
+
+\subsection{Institutional report numbers}
+Institutional report numbers can be specified using the \cmd\preprint\
+macro. If the \classoption{preprintnumbers} class option is specified, these will be displayed in the upper right corner of the first page. Multiple \cmd\preprint\ macros maybe supplied (space is
+limited though, so only three or less may actually fit). Please note that the \classoption{preprint} class option does not automatically invoke \classoption{preprintnumbers}.
+
+\subsection{maketitle}
+After specifying the title, authors, affiliations, abstract, PACS
+codes, and report numbers, the final step for formatting the front
+matter of the manuscript is to execute the \cmd\maketitle\ macro by
+simply including it:
+\begin{verbatim}
+\maketitle
+\end{verbatim}
+The \cmd\maketitle\ macro must follow all of the macros listed
+above. The macro will format the front matter in accordance with the various
+class options that were specified in the
+\cmd\documentclass\ line (either implicitly through defaults or
+explicitly).
+
+\section{The body of the paper}
+
+For typesetting the body of a paper, \revtex~4.2 relies heavily on
+standard \LaTeXe\ and other packages (particulary those that are part
+of AMS-\LaTeX). Users unfamiliar with these packages should read the
+following sections carefully. 
+
+\subsection{Section headings}
+
+Section headings are input as in \LaTeX.
+The output is similar, with a few extra features.
+
+Four levels of headings are available in \revtex{}:
+\begin{quote}
+\cmd\section\marg{title text}\\
+\cmd\subsection\marg{title text}\\
+\cmd\subsubsection\marg{title text}\\
+\cmd\paragraph\marg{title text}
+\end{quote}
+
+Use the starred form of the command to suppress the automatic numbering; e.g.,
+\begin{verbatim}
+\section*{Introduction}
+\end{verbatim}
+
+To label a section heading for cross referencing, best practice is to
+place the \cmd\label\marg{key} within the argument specifying the heading:
+\begin{verbatim}
+\section{\label{sec:intro}Introduction}
+\end{verbatim}
+
+In some journal substyles, such as those of the APS,
+all text in the \cmd\section\ command is automatically set uppercase.
+If a lowercase letter is needed, use \cmd\lowercase\aarg{x}.
+For example, to use ``He'' for helium in a \cmd\section\marg{title text} command, type
+\verb+H+\cmd\lowercase\aarg{e} in \marg{title text}.
+
+Use \cmd\protect\verb+\\+ to force a line break in a section heading.
+(Fragile commands must be protected in section headings, captions, and
+footnotes and \verb+\\+ is a fragile command.)
+
+\subsection{Paragraphs and General Text}
+
+Paragraphs always end with a blank input line.  Because \TeX\
+automatically calculates linebreaks and word hyphenation in a
+paragraph, it is not necessary to force linebreaks or hyphenation.  Of
+course, compound words should still be explicitly hyphenated, e.g.,
+``author-prepared copy.''
+
+Use directional quotes for quotation marks around quoted text
+(\texttt{``xxx''}), not straight double quotes (\texttt{"xxx"}).
+For opening quotes, use one or two backquotes; for closing quotes,
+use one or two forward quotes (apostrophes).
+
+\subsection{One-column vs. two-column layouts}\label{sec:widetext}
+
+One of the hallmarks of \textit{Physical Review} and many of the AIP journals is their two-column
+formatting. \revtex~4.2 provides the \classoption{reprint} class option that provides for each
+journal class option a close approximation to the journal's actual production formatting. Note that
+the \classoption{reprint} option will give either one or two-column formatting as appropriate for the particular journal.
+For most APS and AIP journals, the \classoption{reprint} option will take care of formatting the front matter
+(including the abstract) as a single column and will typeset the body in two columns. \revtex~4.2 has its own
+built-in two-column formatting macros to provide well-balanced columns as well as reasonable control over the placement of floats in either
+one- or two-column modes. When drafting papers, it is common to use a one-column format. This is best achieved by using the
+\classoption{preprint} class option. Authors may override a particular journal's formatting by using the lower level options \classoption{onecolumn} and \classoption{twocolumn}, but best practice is to stick with the \classoption{preprint} and \classoption{reprint} options.
+
+Please note that the \classoption{reprint} class option is only an \textit{approximation} of a journal's final layout. Because of font differences, figure rescaling, and other factors, authors should not expect the \classoption{reprint} option to give fully accurate estimates of an article's ultimate length after being typeset for the journal.
+
+Occasionally it is necessary to change the formatting from two-column to
+one-column to better accommodate very long equations that are more
+easily read when typeset to the full width of the page. This is
+accomplished using the \env{widetext} environment:
+\begin{verbatim}
+\begin{widetext}
+long equation goes here
+\end{widetext}
+\end{verbatim}
+In two-column mode, this will temporarily return to one-column mode,
+balancing the text before the environment into two short columns, and
+returning to two-column mode after the environment has
+finished. \revtex~4.2 will also add horizontal rules to guide the
+reader's eye through what may otherwise be a confusing break in the
+flow of text. The
+\env{widetext} environment has no effect on the output under the 
+\classoption{preprint} class option because this already uses
+one-column formatting.
+
+Use of the \env{widetext} environment should be restricted to the bare
+minimum of text that needs to be typeset this way. However, short pieces
+of paragraph text and/or math between nearly contiguous wide equations
+should be incorporated into the surrounding wide sections.
+
+Low-level control over the column grid can be accomplished with the
+\cmd\onecolumngrid\ and \cmd\twocolumngrid\ commands. Using these, one
+can avoid the horizontal rules added by \env{widetext}. These commands
+should only be used if absolutely necessary. Wide figures and tables
+should be accommodated using the proper \verb+*+ environments.
+
+\subsection{Cross-referencing}\label{sec:xrefs}
+
+\revtex{} inherits the \LaTeXe\ features for labeling and cross-referencing
+section headings, equations, tables, and figures. This section
+contains a simplified explanation of these cross-referencing features.
+The proper usage in the context of section headings, equations,
+tables, and figures is discussed in the appropriate sections.
+
+Cross-referencing depends upon the use of ``tags,'' which are defined by
+the user.  The \cmd\label\marg{key} command is used to identify tags for
+\revtex. Tags are strings of characters that serve to label section
+headings, equations, tables, and  figures that replace explicit,
+by-hand numbering.
+
+Files that use cross-referencing (and almost all manuscripts do)
+need to be processed through \revtex\ at least twice to
+ensure that the tags have been properly linked to appropriate numbers.
+If any tags are added in subsequent editing sessions, 
+\LaTeX{} will display a warning message in the log file that ends with
+\texttt{... Rerun to get cross-references right}.
+Running the file through \revtex\ again (possibly more than once) will
+resolve the cross-references.  If the error message persists, check
+the labels; the same \marg{key} may have been used to label more than one
+object.
+
+Another \LaTeX\ warning is \texttt{There were undefined references},
+which indicates the use of a key in a \cmd\ref\ without ever
+using it in a \cmd\label\ statement.
+
+\revtex{} performs autonumbering exactly as in standard \LaTeX.
+When the file is processed for the first time,
+\LaTeX\ creates an auxiliary file (with the \file{.aux} extension) that 
+records the value of each \meta{key}.  Each subsequent run retrieves
+the proper number from the auxiliary file and updates the auxiliary
+file.  At the end of each run, any change in the value of a \meta{key}
+produces a \LaTeX\ warning message.
+
+Note that with footnotes appearing in the bibliography, extra passes
+of \LaTeX\ may be needed to resolve all cross-references. For
+instance, putting a \cmd\cite\ inside a \cmd\footnote\ will require at
+least three passes.
+
+Using the \classname{hyperref} package to create hyperlinked PDF files
+will cause reference ranges to be expanded to list every
+reference in the range. This behavior can be avoided by using the
+\classname{hypernat} package available from \url{www.ctan.org}.
+
+\subsection{Acknowledgments}
+Use the \env{acknowledgments} environment for an acknowledgments
+section.  Depending on the journal substyle, this element may be
+formatted as an unnumbered section titled \textit{Acknowledgments} or
+simply as a paragraph. Please note the spelling of
+``acknowledgments.''
+\begin{verbatim}
+\begin{acknowledgments}
+The authors would like to thank...
+\end{acknowledgments}
+\end{verbatim}
+
+\subsection{Appendices}
+The \cmd\appendix\ command signals that all following sections are
+appendices, so \cmd\section\marg{title text} after \cmd\appendix\ will set
+\marg{title text} as an appendix heading (an empty \marg{title text}
+is permitted). For a single appendix, use a
+\cmd\appendix\verb+*+ followed by \cmd\section\marg{title text}
+command to suppress the appendix letter in the section heading.
+
+\subsection{\label{sec:lineno}Line numbering}
+\revtex~4.2 provides the \classoption{linenumbers} class option to enable line numbering. While it is
+possible to directly call in the \classname{lineno.sty}, using the class option ensures
+that the default parameters needed to properly typeset the line numbers are set up correctly. It is
+still possible for authors to override parameters such as \cmd\linenumbersep\ as usual, however.
+
+\section{Math and equations}\label{sec:math}
+
+\subsection{Math in text}
+
+Not surprisingly, \revtex\ uses the \TeX\ math \verb+$+ delimiters
+for math embedded in text. For example,
+\verb|$a^{z}$| gives $a^{z}$.  Within math mode, use
+\verb+^+\marg{math} for superscripts and
+\verb+_+\marg{math} for subscripts. If the braces after the
+\verb+^+ are omitted, \TeX{} will
+superscript the next \emph{token} (generally a single character or
+command). Thus it is safest to use explicit braces \verb+{}+.
+
+As with text, math should not require extensive explicit vertical or
+horzontal motion commands, because \TeX\ calculates math spacing
+itself automatically.  In particular, explicit spacing around
+relations (e.g., $=$) or operators (e.g., $+$) should be
+unnecessary. These suggestions notwithstanding, some fine-tuning of
+math is required in specific cases, see Chapter~18 in the \TeX
+book\cite{TeXbook}.
+
+\subsection{Text in math}\label{sec:textinmath}
+
+There are times when normal, non-italic text needs to be inserted
+into a math expression.  The \cmd\text\marg{text} command is the
+preferred method of accomplishing this.  It produces regular text
+\emph{and} scales correctly in superscripts:
+\verb+$y=x \text{ for } x_{\text{e-p}}$+ gives 
+``$y=x \text{ for } x_{\text{e-p}}$''. To use the \cmd\text\ command,
+the \classname{amsmath} package must be loaded: include a
+\cmd\usepackage\aarg{\classname{amsmath}} command in the document
+preamble or use the class option \classoption{amsmath}. Please note
+that \revtex~4.2 requires version 2.0 or higher of \classname{amsmath}.
+
+Other common alternatives may be less desirable. Using the standard
+\LaTeXe\  \cmd\mbox\marg{text} will give normal text, including a hyphen,
+but will not scale correctly in superscripts:
+\verb+$x_{\mbox{e-p}}$+ gives ``$x_{\mbox{e-p}}$''.
+The \cmd\rm\ command
+only switches to Roman font for math letters.  It does not, for
+example, handle hyphens correctly:
+\verb+$$x_{\rm{e-p}}$+ gives ``$x_{\rm e-p}$''. But note that with
+\cmd\textrm{}, it does work: \verb+$x_{\textrm{e-p}}$+ gives ``$x_{\textrm{e-p}}$''.
+
+\subsection{Displayed equations}\label{sec:dispmath}
+
+Equations are set centered in the column width or flush left depending
+on the selected journal substyle.
+
+For the simplest type of displayed equation, a numbered, one-line
+equation, use the \env{equation} environment.
+\revtex\ takes care of the equation number%
+---the number will be set below the equation if necessary.
+Use \cmd\[\dots\cmd\] for a single, one-line unnumbered display equation.
+
+Use the \env{eqnarray} environment when more than one consecutive
+equation occurs, putting each equation in a separate row of the
+environment, and using \cmd\nonumber\ before the row end (\cmd\\) to
+suppress the equation number where necessary.  If the equations are
+related to each other, align each on the respective relation operator
+(such as $=$).
+
+When an equation is broken over lines or is continued over multiple
+relation operators, it is called a multi-line or continued equation,
+respectively; here, too, use the \env{eqnarray} environment.
+
+For a continued equation, align each row on the relation operator just
+as with multiple equations, and use the \cmd\nonumber\ command to
+suppress auto-numbering on broken lines.  Also, use the starred form
+of the row end (\cmd\\\verb+*+) to prevent a pagebreak at that
+juncture.
+
+Short displayed equations that can appear together on a single line
+separated by \cmd\qquad\ space may be placed in a single
+\env{equation} environment.
+
+As explained in Section~\ref{sec:widetext}, occasionally in two-column
+mode a long equation, in order to fit it in the narrow column width,
+would need to be broken into so many lines that it would affect
+readibility. Set it in a wide column using the \env{widetext}
+environment. Then return to the normal text width as soon as
+possible.
+
+The sample file \file{apssamp.tex} illustrates how to obtain each of
+the above effects.
+
+\subsection{Numbering displayed equations}
+
+\revtex~4.2 automatically numbers equations.
+For single-line and multi-line equations, use the
+\env{equation} and \env{eqnarray} environments as described above.
+For unnumbered single-line equations, use the \verb+\[+\dots\verb+\]+
+construction.  The command \cmd\nonumber\ will suppress the numbering
+on a single line of an
+\env{eqnarray}.
+For a multi-line equation with no equation numbers at all,
+use the \env{eqnarray*} environment.
+
+A series of equations can be a labeled with a lettered sequence,
+e.g., (3a), (3b), and (3c), by
+putting the respective \env{equation} or \env{eqnarray} environment within a
+\env{subequations} environment. 
+The \classname{amsmath} package (can be loaded with the
+\classoption{amsmath} class option) is required for this.
+
+Use the command \cmd\tag\marg{number} to produce an idiosyncratic
+equation number: $(1')$, for example.  Numbers assigned by \cmd\tag\
+are completely independent of \revtex's automatic numbering.  The
+package \classname{amsmath} is required for using the \cmd\tag\
+command. Please
+note that the use of the \texttt{tag} command may conflict with the use of the \classoption{hyperref} package
+due an incompatibility between \classoption{amsmath} and \classoption{hyperref}. 
+
+To have \revtex{} reset the equation numbers at the start of each section,
+use the \classoption{eqsecnum} class option in the document preamble. 
+
+See the sample file \file{apssamp.tex} for some examples.
+
+\subsection{Cross-referencing displayed equations}
+
+To refer to a numbered equation, use
+the \cmd\label\marg{key} and \cmd\ref\marg{key} commands.
+The \cmd\label\marg{key} command is used within the referenced equation
+(on the desired line of the \env{eqnarray}, if a multi-line equation):
+\begin{verbatim}
+\begin{equation}
+ A=B \label{pauli}
+\end{equation}
+ ... It follows from Eq.~(\ref{pauli})
+that this is the case ...
+\begin{eqnarray}
+ A & = &B,\label{pauli2}\\
+ A'& = &B'
+\end{eqnarray}
+\end{verbatim}
+gives 
+\begin{equation}
+A=B \label{pauli}
+\end{equation}
+ ... It follows from Eq.~(\ref{pauli})
+that this is the case ...
+\begin{eqnarray}
+A & = &B,\label{pauli2}\\
+A'& = &B'
+\end{eqnarray}
+
+Please note the parentheses surrounding the \cmd\ref\ command.
+These are \emph{not} provided automatically and, thus, must be
+explicitly incorporated.
+
+Numbers produced with \cmd\tag\ can also be cross-referenced by adding
+a \cmd\label\ command after the \cmd\tag\ command.
+
+Using a \cmd\label\ after \envb{subequations} to reference the
+\emph{general} number of the equations in the
+\env{subequations} environment. For example, if
+\begin{verbatim}
+\begin{subequations}
+ \label{allequations} % notice location
+ \begin{eqnarray}
+  E&=&mc^2,\label{equationa}
+ \\
+  E&=&mc^2,\label{equationb}
+ \\
+  E&=&mc^2,\label{equationc}
+ \end{eqnarray}
+\end{subequations}
+\end{verbatim}
+%
+gives the output
+\begin{subequations}
+\label{allequations} % notice location
+\begin{eqnarray}
+E&=&mc^2,\label{equationa}
+\\
+E&=&mc^2,\label{equationb}
+\\
+E&=&mc^2,\label{equationc}
+\end{eqnarray}
+\end{subequations}
+%
+then \verb+Eq.~(\ref{allequations})+ gives ``Eq.~(\ref{allequations})''.
+
+{\bf Note:} incorrect cross-referencing will result if
+\cmd\label\ is used in an unnumbered single-line equation
+(i.e., within the \verb+\[+ and \verb+\]+ commands),
+or if \cmd\label\ is used on a line of an eqnarray that is not being numbered
+(i.e., a line that has a \cmd\nonumber).
+
+\subsection{Using the AMS packages \classoption{amsfonts},
+\classoption{amssymb}, and \classoption{amsmath}}\label{AMS}
+
+The American Mathematical Society's AMS-\LaTeX\ packages provided extra
+fonts, symbols, and math markup that are quite convenient. \revtex~4.2
+supports the use of these packages directly. To use the \classoption{amsfonts},
+\classoption{amssymb}, and \classoption{amsmath} class options,
+AMS-\LaTeX\ (and perhaps the additional AMS fonts) will need to be
+installed. Please note that \revtex~4.2 requires version 2.0 or higher
+of AMS-\LaTeX. These packages can be downloaded from
+\url{http://www.ams.org/tex/}.
+
+There are two class options for accessing the AMS fonts:
+\classoption{amsfonts} and \classoption{amssymb}.
+The \classoption{amsfonts} option defines the \cmd\mathfrak\ and
+\cmd\mathbb\ commands to switch to the Fraktur and
+Blackboard Bold fonts, respectively.
+These fonts are selected with the \cmd\mathfrak\ and \cmd\mathbb\
+font-switching commands:
+\verb+${\mathfrak{G}}$+ gives a Fraktur ``$\mathfrak{G}$''
+and \verb+${\mathbb{Z}}$+ gives a Blackboard Bold ``$\mathbb{Z}$''.
+\revtex{} does not currently support the use of the extra Euler fonts
+(the AMS fonts starting with \texttt{eur} or \texttt{eus}) or the
+Cyrillic fonts (the AMS fonts starting with \texttt{w}).
+
+The \classoption{amssymb} class option gives all the font
+capabilities of the
+\classoption{amsfonts} class option and further defines the commands
+for many commonly used math symbols. These symbols will scale
+correctly in superscripts and other places. See the AMS-\LaTeX\
+documentation for the complete list of symbols available.
+
+\subsection{Bold symbols in math}\label{sec:bboxamsfonts}
+
+\revtex~4.2 uses the standard \LaTeXe\ Bold Math (\classname{bm}) package as the
+basis for creating bold symbols in math mode. As usual, this requires
+an explicit \cmd\usepackage\aarg{\classname{bm}} in the document
+preamble. The command
+\cmd\bm\marg{symbol} makes \marg{symbol} bold in math mode, ensuring
+that it is the correct size, even in superscripts. If the correct font
+in the correct size is not available then result is the \marg{symbol}
+set at the
+correct size in lightface and a \LaTeXe\ warning that says
+``\texttt{No boldmath typeface in this size}\dots''. Most bold special
+characters will require that the AMS fonts be installed and the
+\classoption{amsfonts} class option be invoked.
+
+\cmd\bm\ is the proper means to get bold Greek characters---upper- and
+lowercase---and other symbols.
+The following will come out bold with \cmd\bm:
+normal math italic letters, numbers,
+Greek letters (uppercase and lowercase),
+small bracketing and operators, and \cmd\mathcal. Fraktur
+characters will come out bold in a \cmd\bm; however, Blackboard Bold
+requires using the \cmd\mathbb\ command rather than \cmd{\bm}.
+The \classoption{amsfonts} option adds support for bold math
+letters and symbols in smaller sizes and in superscripts when a
+\cmd\bm\marg{symbol} is used. 
+For example, \verb+$\pi^{\bm{\pi}}$+ gives a bold
+lowercase pi in the superscript position: $^{\pi\bm{\pi}}$.
+
+Note that \cmd\bm\marg{math} is a fragile command and, thus, should be
+preceded by \cmd\protect\ in commands with moving arguments.
+
+\section{Footnotes}
+\LaTeX's standard \cmd\footnote\ command is available in
+\revtex~4.2. The footnote text can either appear at the bottom of a page or
+as part of the bibliography. This choice can be controlled by two class options:
+\classoption{footinbib} and \classoption{nofootinbib}. \revtex~4.2
+defaults to the former.  Specific journal options may select a
+different value than the default.
+
+Please note that even if  Bib\TeX\ is not being used for the references, you
+may have to run Bib\TeX\ if you are using footnotes without the \classoption{nofootinbib} option.
+The log file will contain errors about missing references such as \texttt{Note1} in this case and a file ending in
+\texttt{Notes.bib} will have been produced during the processing of the \TeX\ file.
+
+Note that in the latter case, the
+argument of the
+\cmd\footnote\ command is a moving argument in the sense of the \LUG,
+Appendix~C.1.3: any fragile command within that argument must be
+preceded by a \cmd\protect\ command.
+
+The \cmd\footnote\ macro \emph{should not} be used in the front
+matter for indicating author/affiliation relationships or to provide
+additional information about authors (such as an e-mail
+address). See Section~\ref{sec:footau} for the proper way to do
+this.
+
+Finally, footnotes that appear in tables behave differently. They
+will be typeset as part of the table itself. See
+Section~\ref{sec:tablenote} for details.
+
+\section{Citations and References}\label{sec:endnotes}
+
+\revtex~4.2 adds significant new functionality to \revtex~4's 
+typesetting of citations and references. The new functionality is
+designed to make it easier to use Bib\TeX\ and produce the desired output 
+in the reference section without having to edit Bib\TeX's output. The new features include:
+\begin{itemize}
+\item Endnotes created with the \cmd\footnote\ command are automatically interleaved with the bibliographic references. \revtex~4 would typeset all endnotes at the end of the bibliography.
+\item Combining multiple references automatically into a single entry in the bibliography. \revtex~4 required by-hand editing of Bib\TeX\ output. This is achieved by prepending an asterisk (*) to the reference's \textit{key} in the \cmd\cite\ command. \verb+\cite{{key1,*key2}+ would make a single entry in the bibliography by combining into one \cmd\bibitem\ the entries from the \texttt{.bib} file with keys \textit{key1} and \textit{key2}. See Section~\ref{sec:multiple} for more details.
+\item Text can be prepended or appended to an entry in the bibliography. \revtex~4 required by-hand editing of the Bib\TeX\ output. See Section~\ref{sec:prepend} for an example of how to do this.
+\end{itemize}
+
+Proper formatting of references requires Patrick Daly's \classname{natbib} citation package. \BibTeX\ style files
+for APS and AIP journals are created using his \classname{custom-bib} tool kit. From an author's point of view, all this means is that a proper
+\revtex~4.2 installation requires having \classname{natbib} (version 8.31a
+or higher) installed. It also means that the full set of
+\classname{natbib} functionality is available from within \revtex~4.2
+(but see the \textit{APS Author Guide for \revtex~4.2} and \textit{Author's Guide to AIP Substyles for \revtex~4.2} for restrictions if
+submitting to an APS or AIP journal). The \classname{natbib} documentation contains many examples; see in
+particular the \verb+natnotes.tex+ file for a convenient summary. Please also note that \classname{natbib 8.3} and later now gives an error (rather than merely a warning as in earlier versions) if you try to use a Bib\TeX\ file that isn't compatible with author-year style citations with a journal style that requires author-year citations (such as \textit{Reviews of Modern Physics}).
+
+\subsection{Citing a reference}
+As in standard \LaTeX, references are cited in text using the
+\cmd\cite\marg{key} command and are listed in the bibliography using
+the \cmd\bibitem\marg{key} command. The \cmd\cite{} macro enables
+\revtex~4.2 to automatically number the references in the manuscript.
+
+A typical example might be:
+\begin{verbatim}
+String theory\cite{GSW} attempts to 
+provide a theory of everything.
+\end{verbatim}
+The corresponding \cmd\bibitem{} would be:
+\begin{verbatim}
+\bibitem{GSW} M.~Greene, J.~Schwarz, and
+E.~Witten, \textit{Superstring Theory:
+Introduction}, (Cambridge University
+Press, London, 1985).
+\end{verbatim}
+
+Journals differ in how the \cmd\cite\ will be displayed.  Most APS journals
+display the citation in-line, as a number, enclosed in square brackets,
+\textit{e.g.}, ``String theory[1] attempts\dots.'' Other journals
+may instead use a number in a superscript: ``String theory$^{1}$ attempts\dots.''
+Selecting the journal substyle using a class option will invoke the appropriate style.
+In journal substyles using superscripts,
+the macro the \cmd\onlinecite\marg{key} is necessary to get the number
+to appear on the baseline.
+For example, ``String theory (see, for example,
+\verb+Ref.~\onlinecite{GSW}+)'' will give the output
+``String theory (see, for example, Ref.~1).''
+
+The \cmd{\onlinecite} command has the same semantics as
+\classname{natbib}'s \cmd{\citealp} command.
+
+A \cmd\cite\ command with multiple keys is formatted with consecutive
+reference numbers collapsed; e.g., [1,2,3,5] will be output as
+[1--3,5].  To split the list over more than one line, use
+a \verb+%+ character immediately following a comma:
+\begin{verbatim}
+. . .  \cite{a,b,c,d,e,f,%
+g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}
+\end{verbatim}
+The \verb+%+ avoids unwanted spaces.
+
+\subsection{Author/Year (Non-numeric) Citations}
+
+\textit{Reviews of Modern Physics} uses a citation style based on the
+first author's last name and the year of the reference rather than a
+simple number. Support for this style of citing references is the
+primary reason \revtex~4.2 uses the \classname{natbib}
+package. \classname{natbib} uses an optional argument to the
+\cmd\bibitem\ macro to specify what text to use for the \cmd\cite\
+text:
+\begin{quote}
+\cmd\bibitem\verb+[+\meta{short-name}\verb+(+\meta{year}\verb+)+\meta{long-name}\verb+]+
+\end{quote}
+where \meta{short-name} is the author name used in a parenthetical citation, 
+\meta{long-name} that used in a textual citation, and 
+\meta{year} is the year. More concretely, the \cmd\bibitem\ example
+above would appear as
+\begin{verbatim}
+\bibitem[Greene et al.(1985)Green,
+Schwarz, and Witten]{GSW}
+M.~Greene, J.~Schwarz, and E.~Witten,
+\textit{Superstring Theory},
+(Cambridge Press, London, 1985).
+\end{verbatim}
+
+When the citation constitutes part of the grammar of the sentence,
+the \cmd\textcite\marg{key} command may be used (analogous to the
+\cmd\onlinecite\ command above). Both \cmd\textcite\ and
+\cmd\onlinecite\ are built upon \classname{natbib}'s rich repertoire of
+macros (\cmd\citep{}, \cmd\citet{}, etc.). These macros are available in
+\revtex~4.2; however, APS authors must follow the
+\textit{APS Author Guide for \revtex~4.2}
+guidelines regarding \classname{natbib}'s macros.
+
+\subsection{Combined Author/Year and Numeric Citations}
+
+AIP's \textit{Journal of Mathematical Physics} uses a combined author/year and numerical citation style. \revtex~4.2 supports this referencing style. Please see the \textit{Author's Guide to AIP Substyles for \revtex~4.2} for more information about this style.
+
+\subsection{\label{sec:use-bib}Using Bib\TeX}
+
+The \cmd\bibitem{} entries can be coded by hand as above, of course, but the
+use of \BibTeX\ with the new style files provided with \revtex~4.2 makes
+it particularly simple to generate marked-up references that can, for
+instance, take advantage of packages like
+\classname{hyperref} for linking. They also save the trouble of having
+to specify formatting like the italics for the book title in the above
+example. And, for those wishing to use author/year citations, \BibTeX\ 
+will automatically generate the appropriate optional arguments for the
+\cmd\bibitem\ commands.
+
+\BibTeX\ is an adjunct to \LaTeX\ that aids in the
+preparation of  bibliographies. \BibTeX\ allows authors to build up a
+database or collection of bibliography entries that may be used for many
+manuscripts. A \BibTeX\ style file then specifies how to transform the
+entries into a proper \cmd\bibitem{} for a particular journal. Here we
+give a brief summary of how to get started with \BibTeX. More details can be
+found in the LaTeX books listed in the references.
+
+Selecting a journal style by using an appropriate class option will
+automatically select the correct \BibTeX\ style file from those included in
+\revtex~4.2. Five basic \BibTeX\ style files are included: \file{apsrev4-2.bst} (APS journals using a numeric citation style, \textit{i.e.}, all but RMP), \file{apsrmp4-2.bst} (author/year style citations for RMP),
+\file{aipauth4-2.bst} (AIP journal using an author/year citation style),  \file{aipnum4-2.bst} (AIP journals using a numeric citation style) and \file{aapmrev4-2.bst} for AAPM journals. The selection can be overridden by specifying an
+alternative \file{.bst} file using the standard \LaTeXe
+\cmd\bibliographystyle\ macro. This must appear in the preamble
+before the \envb{document} line in \revtex~4.2 (this differs from
+standard \LaTeX).
+
+The \BibTeX\ database files will contain entries such as:
+\begin{verbatim}
+ at Book{GSW,
+  author=``M. Greene, J. Schwarz,
+           E. Witten'',
+  title=``Superstring theory:
+          Introduction'',
+  publisher=``Cambridge University
+          Press'',
+  address=``London'',
+  year=``1985''
+}
+\end{verbatim}
+There are entry formats for articles, technical reports, e-prints,
+theses, books, proceedings, and articles that appear in books or
+proceedings. The styles provided with
+\revtex~4.2 also allows URL's and e-print identifiers to be specified
+for any of the different entry types. There is also an additional
+``collaboration'' field that can be used in addition to ``author'.'
+
+To actually create the bibliography in the manuscript, the
+\cmd\bibliography\marg{bib files} macro is used. 
+Here \meta{bib files} is a comma-separated list of \BibTeX\ bibliography
+database files, each with the \file{.bib} extension. The
+\cmd\bibliography\ macro should be placed at the location where the
+references are to appear (usually after the main body of the
+paper). When the manuscript is processed with \LaTeX\ for the first
+time, the keys corresponding for the \cmd\cite{} macros used in the
+manuscript are written out to the \file{.aux} file. Then \BibTeX\ should
+be run (if the manuscript is called \file{paper.tex}, the command would
+be \verb+bibtex paper+. This will produce a \file{.bbl} file containing all
+of the \cmd\bibitem{}'s for the manuscript. Subsequent runs of \LaTeXe\
+will call this file in to resolve the references. \LaTeXe\ should be run
+repeatedly until all references are resolved.
+
+The \BibTeX-produced \cmd\bibitem{}'s created using the \revtex\ style files appear considerably more complex than the example given
+above. This is because the style files add in \cmd\bibinfo{},
+\cmd\bibnamefont{}, \cmd\eprint{}, and \cmd\url{} macros for
+specifying additional formatting and tagging. The \cmd\bibinfo\ macro
+is mostly a do-nothing macro that serves merely to tag the information with
+the field information from the original entry in the \BibTeX\ database.
+The \cmd\eprint\ and \cmd\url\ macros can be used to create the
+appropriate hyperlinks in target formats such as PDF.
+
+For more information on using \BibTeX\ with \LaTeX, see Sections~4.3.1
+and~C.11.3 of the \LUG\cite{LaTeXman}, Section~13.2 of \cite{Compan},
+or the online \BibTeX\ manual \file{btxdoc.tex} from 
+\url{http://www.ctan.org/tex-archive/biblio/bibtex/distribs/doc/}.
+
+\subsubsection{\texttt{arXiv.org} support}
+
+\revtex~4.2 supports citing e-prints from \texttt{arXiv.org} For instance, the \texttt{.bib} entry
+\begin{verbatim}
+ at Unpublished{Ginsparg:1988ui,
+  author    = "Ginsparg, Paul H.",
+  title     = "{Applied Conformal Field Theory}",
+  year      = "1988",
+  eprint    = "hep-th/9108028",
+  archivePrefix = "arXiv",
+  SLACcitation  = "%%CITATION=HEP-TH/9108028;%%"
+}
+\end{verbatim}
+will include the arXiv.org e-print identifier as \texttt{arXiv:hep-th/9108028} and hyperlink it (if using \texttt{hyperref}). The newer format for arXiv identifiers with primary classifications will produce appropriate output  For example,
+
+\begin{verbatim}
+ at Unpublished{Ginsparg:2014,
+      author = "Ginsparg, Paul",
+      title = "{Kenneth G. Wilson: Renormalized After-Dinner Anecdotes}",
+      year = "2014",
+      eprint = "1407.1855",
+      archivePrefix = "arXiv",
+      primaryClass = "physics.hist-ph",
+}
+\end{verbatim}
+will generate \texttt{arXiv:1407.1855 [physics.hist-ph]} and hyperlink it.
+
+\subsubsection{\texttt{noeprint} option}
+In the \revtex~4.2 Bib\TeX\ style files, the behavior of the \texttt{noeprint} option was changed to only suppress the arXiv identifiers for journal references, but keep them for e-print references.
+
+\subsubsection{\label{sec:datacitations}Citing data sets with a DOI}
+Bib\TeX\ styles in \revtex~4.2 add support for citing data sets using the new Bib\TeX\ type \texttt{@dataset}:
+
+\begin{verbatim}
+ at dataset{haigh:2016,
+ author = "Haigh, J. A. and Lambert, N. J. and 
+   Sharma, S. and Blanter, Y. and
+   Bauer, G. E. W. and Ramsay, A. J.",
+ year = "2018",
+ title = "{Data from Figures in``Selection rules 
+  for cavity-enhanced Brillouin light scattering
+  from magnetostatic modes" [Data set]}",
+ doi = "10.5281/zenodo.1284434",
+ note = "{Zenodo}"
+}
+\end{verbatim}
+This results in the formatted reference: ``J. A. Haigh, N. J. Lambert, S. Sharma, Y. Blanter, G. E. W. Bauer, and A. J. Ramsay, Data from Figures in ``Selection
+rules for cavity-enhanced Brillouin light scattering from magnetostatic modes" [Data set], 10.5281/zenodo.1284434 (2018),
+Zenodo."
+
+This is primarily intended for data sets that have a DOI assigned to them.
+
+\subsubsection{\label{sec:doiref}Journal references with only DOIs}
+Some journals have moved to using only a volume and DOI to identify an article and do not assign page numbers or article identifiers. In the \texttt{apsrev.bst} Bib\TeX\ style file used for the \textit{Phys. Rev.} journals, If the \texttt{pages} field is absent from an entry in the \texttt{bib} file, but the \texttt{doi} field is present, the DOI will be explicitly displayed and linked in the formatted reference.
+
+\subsubsection{\label{sec:jhep}Journals that use the year and issue for unique citations}
+The \texttt{apsrev.bst} style used for \textit{Phys. Rev.} journals now includes support for four journals that use the year in place of a volume and require an explicit issue to uniquely cite a paper:
+
+\begin{itemize}
+ \item J. High Energy Phys.
+ \item J. Cosmol. Astropart. Phys.
+ \item J. Instrum.
+ \item J. Stat. Mech.: Theory Exp.
+ \end{itemize}
+ 
+ The Bib\TeX\ entry must \textbf{exactly} match one of the these four abbreviated journal names or use the corresponding macro, \texttt{jhep}, \texttt{jcap}, \texttt{jinst}, or \texttt{jstat}, resp., to invoke the proper formatting. For example:
+
+\begin{verbatim}
+ at Article{Cotogno2017,
+   author="Cotogno, Sabrina and van Daal, Tom
+                 and Mulders, Piet J.",
+  title="Positivity bounds on gluon {TMDs} 
+           for hadrons of spin $\le$ 1",,
+  journal=jhep,
+  year="2017",
+  month="Nov",
+  day="28",
+  volume="2017",
+  number="11",
+  pages="185",
+  doi="10.1007/JHEP11(2017)185",
+  url="https://doi.org/10.1007/JHEP11(2017)185"
+}
+\end{verbatim}
+will be formatted as  ``S. Cotogno, T. van Daal, and P. J. Mulders, Positivity bounds on gluon TMDs for hadrons of spin $\le$ 1, J. High Energy Phys. 2017 (11), 185."
+
+\subsection{\label{sec:multiple}Multiple references in a single bibliography entry}
+\revtex~4.2 allows multiple references within a single bibliography entry when using Bib\TeX. This done by using a starred (*) argument to the \cmd\cite\ command, and it requires a compatible version of \texttt{natbib} and the \texttt{bst} files that come with \revtex~4.2. To combine multiple references into a single \cmd\bibitem, precede the second, third, etc. citation keys in the \cmd\cite\ command with an asterisk (*). For example \verb+\cite{bethe, *feynman, *bohr}+ will combine the \cmd\bibitem\relax s with keys \texttt{bethe}, \texttt{feynman}, and \texttt{bohr} into a single entry in the bibliography separated by semicolons.
+
+\subsection{\label{sec:prepend}Prepending and/or appending text to a citation}
+The expanded syntax for the  \cmd\cite\ command argument can also be used to specify text before and/or after a citation. For instance, a citation such as:
+\begin{verbatim}
+[19] A similar expression was derived in
+A. V. Andreev, Phys. Rev. Lett. 99, 247204
+(2007) in the context of carbon nanotube
+p-n junctions. The only difference is that no
+integration over ky is present there.
+\end{verbatim}
+may be created by the following \cmd\cite\ command:
+\begin{verbatim}
+\cite{*[{A similar expression was derived
+in }] [{ in the context of carbon nanotube
+p-n junctions. The only difference is that
+no integration over ky is present
+there.}] andreev2007}
+\end{verbatim}
+Please note the use of curly braces to enclose the text within the square brackets as well as the spaces next to the brackets.
+
+
+
+\section{Figures and Artwork}\label{sec:figures}
+\subsection{\texttt{figure} environment}
+
+Figures may be included into a \revtex~4.2 manuscript by using the
+standard \LaTeXe\ macros. It should be noted that \LaTeXe\ includes
+several powerful packages for including the files in various
+formats. The two main packages are \classname{graphics} and
+\classname{graphicx}. Both offer a macro called
+\cmd\includegraphics\oarg{args}\marg{filename}; 
+they mainly differ in how arguments for
+controlling figure scaling, translation, and orientation
+are specified. For more information on the enhancements of the \classname{graphicx} package, 
+see \cite{CompanG} or the guide \file{grfguide.pdf} available at
+\url{http://www.ctan.org/tex-archive/macros/latex/required/graphics/}.
+\revtex~4.2 no longer has the \classoption{epsf} class option, though
+the \classname{epsfig} package provides a similar interface.
+
+
+The \env{figure} environment should be used to add a caption to the figure and
+to allow \LaTeX\ to number and place the figures where they fit best. 
+\LaTeX\  will label and automatically number the captions FIG.~1,
+FIG.~2, etc. For example:
+\begin{verbatim}
+\begin{figure}
+ \includegraphics{fig1.eps}
+ \caption{\label{fig1}Text of first caption.}
+\end{figure}
+\end{verbatim}
+Note how the \cmd\label\marg{key} command is used to cross-reference
+figures in text. The \cmd\label\marg{key} command should be inserted
+inside the figure caption. As usual, the \cmd\ref\marg{key} macro can
+then by used to refer to the label: ``As depicted in
+FIG.\verb+~\ref{fig1}+\dots''.
+
+Figures are normally set to the width of the column in
+which they are placed. This means that in two-column mode, the figure
+will be placed in a single, narrow column. For wide figures, the
+\cmd\figure\verb+*+ environment should be used
+instead. This will place the figure across both columns (the figure
+usually will
+appear either at the top or the bottom of the following page).
+
+
+Captions less than one line long are centered under the figure,
+otherwise they span the width of the figure.
+
+Note that is unnecessary (and undesirable) to use explicit centering
+commands inside the float environments.
+
+\subsection{\texttt{video} environment}
+Papers often refer to multimedia material such as videos. The \texttt{video} environment is identical to the \texttt{figure} environment, but the caption will be labeled as a \textbf{Video} (with its own counter independent of figures). A URL can also be specified so that the caption label can be linked to the online video (if using the \texttt{hyperref} package). The included graphic (using \cmd\includegraphics\ from the \texttt{graphics} or \texttt{graphicx} package) would be a representation frame from the video. A \texttt{\cmd\listofvideos} is also provided.  For example:
+\begin{verbatim}
+\begin{video}
+\includegraphics{videoframe.jpg}
+\setfloatlink{http://some.video.com/fun.mov}
+\caption{\label{vid:interest}This is a video
+of something fun.}
+\end{video}
+\end{verbatim}
+There is also a corresponding \cmd\listofvideos\ command.
+
+\section{Tables}\label{sec:tables}
+
+Tables are very similar to figures. They should be input using the
+\env{table} environment as detailed below, and 
+\LaTeX\ will label and number the captions TABLE~1, TABLE~2, etc.
+(or in whatever format required by the chosen journal
+substyle). Tables without captions won't be numbered.
+
+Each table must begin with \envb{table}, end with \enve{table}. A
+caption can be specified using the \cmd\caption\marg{text} command.
+Captions less than one line long are centered under the figure,
+otherwise they span the width of the figure.
+To refer to the table via cross-referencing, a \cmd\label\marg{key}
+command should appear within the \cmd{\caption}.  Use the
+\cmd\ref\marg{key} command to cite tables in text. The \env{table}
+environment will set the table to the width of the column. Thus, in
+two-column mode, the table will be confined to a single column. To set a
+table to the full width of the page, rather than the column, use the
+\env{table*} environment.
+
+The heart of the table is the
+\env{tabular} environment. This will behave for the most part as in
+standard \LaTeXe\ (please refer to Section~3.6.3 and Appendix~C.10.2 of the
+\LUG{} for more details about the \env{tabular} environment).
+Note that \revtex~4.2 no longer automatically adds double (Scotch) rules
+around tables. Nor does the \env{tabular} environment set various
+table parameters for column spacing as before. Instead, a new
+environment \env{ruledtabular} provides this functionality. This
+environment should surround the \env{tabular} environment:
+\begin{verbatim}
+\begin{table}
+\caption{\label{<key>}....}
+\begin{ruledtabular}
+\begin{tabular}
+...
+\end{tabular}
+\end{ruledtabular}
+\end{table}
+\end{verbatim}
+
+A basic table looks as follows:
+\begin{verbatim}
+\begin{table}
+\caption{\label{tab:ex}Text of table caption.}
+\begin{ruledtabular}
+\begin{tabular}{ll}
+  Heading 1 & Heading 2\\
+  Cell 1 & Cell 2\\
+\end{tabular}
+\end{ruledtabular}
+\end{table}
+\end{verbatim}
+
+The \env{quasitable} environment is no longer in \revtex~4.2. The
+standard \env{tabular} environment can be used instead because it
+no longer puts in the double rules.
+
+\subsection{Aligning on a decimal point}
+Numerical columns should align on the decimal point (or
+decimal points if more than one is is present). This is accomplished
+by again using a standard \LaTeXe\ package, \classname{dcolumn} which
+must be loaded in the manuscript's preamble:
+\begin{verbatim}
+\usepackage{dcolumn}
+\end{verbatim}
+Once this package is loaded, the column specifier `\texttt{d}' can be
+used in the table's \env{tabular}\marg{preamble} enviroment preamble.
+The `\texttt{d}' should b