diff options
| author | Thibaut Horel <thibaut.horel@gmail.com> | 2015-01-24 17:31:01 -0500 |
|---|---|---|
| committer | Thibaut Horel <thibaut.horel@gmail.com> | 2015-01-24 17:31:01 -0500 |
| commit | 5868d9d20a4fe97ba605c064e3242bfe5f524677 (patch) | |
| tree | 12b2a8b18b628678b4337291d689b1cc11ad0bdd /notes/ICML/icml2015stylefiles/natbib.sty | |
| parent | a341c01674d7cee7631fbcd2bd8dcaae8f865911 (diff) | |
| download | cascades-5868d9d20a4fe97ba605c064e3242bfe5f524677.tar.gz | |
Reorganize files
Diffstat (limited to 'notes/ICML/icml2015stylefiles/natbib.sty')
| -rw-r--r-- | notes/ICML/icml2015stylefiles/natbib.sty | 1246 |
1 files changed, 0 insertions, 1246 deletions
diff --git a/notes/ICML/icml2015stylefiles/natbib.sty b/notes/ICML/icml2015stylefiles/natbib.sty deleted file mode 100644 index ff0d0b9..0000000 --- a/notes/ICML/icml2015stylefiles/natbib.sty +++ /dev/null @@ -1,1246 +0,0 @@ -%% -%% This is file `natbib.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% natbib.dtx (with options: `package,all') -%% ============================================= -%% IMPORTANT NOTICE: -%% -%% This program 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 is a generated file. -%% It may not be distributed without the original source file natbib.dtx. -%% -%% Full documentation can be obtained by LaTeXing that original file. -%% Only a few abbreviated comments remain here to describe the usage. -%% ============================================= -%% Copyright 1993-2009 Patrick W Daly -%% Max-Planck-Institut f\"ur Sonnensystemforschung -%% Max-Planck-Str. 2 -%% D-37191 Katlenburg-Lindau -%% Germany -%% E-mail: daly@mps.mpg.de -\NeedsTeXFormat{LaTeX2e}[1995/06/01] -\ProvidesPackage{natbib} - [2009/07/16 8.31 (PWD, AO)] - - % This package reimplements the LaTeX \cite command to be used for various - % citation styles, both author-year and numerical. It accepts BibTeX - % output intended for many other packages, and therefore acts as a - % general, all-purpose citation-style interface. - % - % With standard numerical .bst files, only numerical citations are - % possible. With an author-year .bst file, both numerical and - % author-year citations are possible. - % - % If author-year citations are selected, \bibitem must have one of the - % following forms: - % \bibitem[Jones et al.(1990)]{key}... - % \bibitem[Jones et al.(1990)Jones, Baker, and Williams]{key}... - % \bibitem[Jones et al., 1990]{key}... - % \bibitem[\protect\citeauthoryear{Jones, Baker, and Williams}{Jones - % et al.}{1990}]{key}... - % \bibitem[\protect\citeauthoryear{Jones et al.}{1990}]{key}... - % \bibitem[\protect\astroncite{Jones et al.}{1990}]{key}... - % \bibitem[\protect\citename{Jones et al., }1990]{key}... - % \harvarditem[Jones et al.]{Jones, Baker, and Williams}{1990}{key}... - % - % This is either to be made up manually, or to be generated by an - % appropriate .bst file with BibTeX. - % Author-year mode || Numerical mode - % Then, \citet{key} ==>> Jones et al. (1990) || Jones et al. [21] - % \citep{key} ==>> (Jones et al., 1990) || [21] - % Multiple citations as normal: - % \citep{key1,key2} ==>> (Jones et al., 1990; Smith, 1989) || [21,24] - % or (Jones et al., 1990, 1991) || [21,24] - % or (Jones et al., 1990a,b) || [21,24] - % \cite{key} is the equivalent of \citet{key} in author-year mode - % and of \citep{key} in numerical mode - % Full author lists may be forced with \citet* or \citep*, e.g. - % \citep*{key} ==>> (Jones, Baker, and Williams, 1990) - % Optional notes as: - % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) - % \citep[e.g.,][]{key} ==>> (e.g., Jones et al., 1990) - % \citep[see][pg. 34]{key}==>> (see Jones et al., 1990, pg. 34) - % (Note: in standard LaTeX, only one note is allowed, after the ref. - % Here, one note is like the standard, two make pre- and post-notes.) - % \citealt{key} ==>> Jones et al. 1990 - % \citealt*{key} ==>> Jones, Baker, and Williams 1990 - % \citealp{key} ==>> Jones et al., 1990 - % \citealp*{key} ==>> Jones, Baker, and Williams, 1990 - % Additional citation possibilities (both author-year and numerical modes) - % \citeauthor{key} ==>> Jones et al. - % \citeauthor*{key} ==>> Jones, Baker, and Williams - % \citeyear{key} ==>> 1990 - % \citeyearpar{key} ==>> (1990) - % \citetext{priv. comm.} ==>> (priv. comm.) - % \citenum{key} ==>> 11 [non-superscripted] - % Note: full author lists depends on whether the bib style supports them; - % if not, the abbreviated list is printed even when full requested. - % - % For names like della Robbia at the start of a sentence, use - % \Citet{dRob98} ==>> Della Robbia (1998) - % \Citep{dRob98} ==>> (Della Robbia, 1998) - % \Citeauthor{dRob98} ==>> Della Robbia - % - % - % Citation aliasing is achieved with - % \defcitealias{key}{text} - % \citetalias{key} ==>> text - % \citepalias{key} ==>> (text) - % - % Defining the citation mode and punctual (citation style) - % \setcitestyle{<comma-separated list of keywords, same - % as the package options>} - % Example: \setcitestyle{square,semicolon} - % Alternatively: - % Use \bibpunct with 6 mandatory arguments: - % 1. opening bracket for citation - % 2. closing bracket - % 3. citation separator (for multiple citations in one \cite) - % 4. the letter n for numerical styles, s for superscripts - % else anything for author-year - % 5. punctuation between authors and date - % 6. punctuation between years (or numbers) when common authors missing - % One optional argument is the character coming before post-notes. It - % appears in square braces before all other arguments. May be left off. - % Example (and default) \bibpunct[, ]{(}{)}{;}{a}{,}{,} - % - % To make this automatic for a given bib style, named newbib, say, make - % a local configuration file, natbib.cfg, with the definition - % \newcommand{\bibstyle@newbib}{\bibpunct...} - % Then the \bibliographystyle{newbib} will cause \bibstyle@newbib to - % be called on THE NEXT LATEX RUN (via the aux file). - % - % Such preprogrammed definitions may be invoked anywhere in the text - % by calling \citestyle{newbib}. This is only useful if the style specified - % differs from that in \bibliographystyle. - % - % With \citeindextrue and \citeindexfalse, one can control whether the - % \cite commands make an automatic entry of the citation in the .idx - % indexing file. For this, \makeindex must also be given in the preamble. - % - % Package Options: (for selecting punctuation) - % round - round parentheses are used (default) - % square - square brackets are used [option] - % curly - curly braces are used {option} - % angle - angle brackets are used <option> - % semicolon - multiple citations separated by semi-colon (default) - % colon - same as semicolon, an earlier confusion - % comma - separated by comma - % authoryear - selects author-year citations (default) - % numbers- selects numerical citations - % super - numerical citations as superscripts - % sort - sorts multiple citations according to order in ref. list - % sort&compress - like sort, but also compresses numerical citations - % compress - compresses without sorting - % longnamesfirst - makes first citation full author list - % sectionbib - puts bibliography in a \section* instead of \chapter* - % merge - allows the citation key to have a * prefix, - % signifying to merge its reference with that of the previous citation. - % elide - if references are merged, repeated portions of later ones may be removed. - % mcite - recognizes and ignores the * prefix for merging. - % Punctuation so selected dominates over any predefined ones. - % Package options are called as, e.g. - % \usepackage[square,comma]{natbib} - % LaTeX the source file natbib.dtx to obtain more details - % or the file natnotes.tex for a brief reference sheet. - %----------------------------------------------------------- -\providecommand\@ifxundefined[1]{% - \ifx#1\@undefined\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi -}% -\providecommand\@ifnum[1]{% - \ifnum#1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi -}% -\providecommand\@ifx[1]{% - \ifx#1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi -}% -\providecommand\appdef[2]{% - \toks@\expandafter{#1}\@temptokena{#2}% - \edef#1{\the\toks@\the\@temptokena}% -}% -\@ifclassloaded{agu2001}{\PackageError{natbib} - {The agu2001 class already includes natbib coding,\MessageBreak - so you should not add it explicitly} - {Type <Return> for now, but then later remove\MessageBreak - the command \protect\usepackage{natbib} from the document} - \endinput}{} -\@ifclassloaded{agutex}{\PackageError{natbib} - {The AGUTeX class already includes natbib coding,\MessageBreak - so you should not add it explicitly} - {Type <Return> for now, but then later remove\MessageBreak - the command \protect\usepackage{natbib} from the document} - \endinput}{} -\@ifclassloaded{aguplus}{\PackageError{natbib} - {The aguplus class already includes natbib coding,\MessageBreak - so you should not add it explicitly} - {Type <Return> for now, but then later remove\MessageBreak - the command \protect\usepackage{natbib} from the document} - \endinput}{} -\@ifclassloaded{nlinproc}{\PackageError{natbib} - {The nlinproc class already includes natbib coding,\MessageBreak - so you should not add it explicitly} - {Type <Return> for now, but then later remove\MessageBreak - the command \protect\usepackage{natbib} from the document} - \endinput}{} -\@ifclassloaded{egs}{\PackageError{natbib} - {The egs class already includes natbib coding,\MessageBreak - so you should not add it explicitly} - {Type <Return> for now, but then later remove\MessageBreak - the command \protect\usepackage{natbib} from the document} - \endinput}{} -\@ifclassloaded{egu}{\PackageError{natbib} - {The egu class already includes natbib coding,\MessageBreak - so you should not add it explicitly} - {Type <Return> for now, but then later remove\MessageBreak - the command \protect\usepackage{natbib} from the document} - \endinput}{} - % Define citation punctuation for some author-year styles - % One may add and delete at this point - % Or put additions into local configuration file natbib.cfg -\newcommand\bibstyle@chicago{\bibpunct{(}{)}{;}{a}{,}{,}} -\newcommand\bibstyle@named{\bibpunct{[}{]}{;}{a}{,}{,}} -\newcommand\bibstyle@agu{\bibpunct{[}{]}{;}{a}{,}{,~}}%Amer. Geophys. Union -\newcommand\bibstyle@copernicus{\bibpunct{(}{)}{;}{a}{,}{,}}%Copernicus Publications -\let\bibstyle@egu=\bibstyle@copernicus -\let\bibstyle@egs=\bibstyle@copernicus -\newcommand\bibstyle@agsm{\bibpunct{(}{)}{,}{a}{}{,}\gdef\harvardand{\&}} -\newcommand\bibstyle@kluwer{\bibpunct{(}{)}{,}{a}{}{,}\gdef\harvardand{\&}} -\newcommand\bibstyle@dcu{\bibpunct{(}{)}{;}{a}{;}{,}\gdef\harvardand{and}} -\newcommand\bibstyle@aa{\bibpunct{(}{)}{;}{a}{}{,}} %Astronomy & Astrophysics -\newcommand\bibstyle@pass{\bibpunct{(}{)}{;}{a}{,}{,}}%Planet. & Space Sci -\newcommand\bibstyle@anngeo{\bibpunct{(}{)}{;}{a}{,}{,}}%Annales Geophysicae -\newcommand\bibstyle@nlinproc{\bibpunct{(}{)}{;}{a}{,}{,}}%Nonlin.Proc.Geophys. - % Define citation punctuation for some numerical styles -\newcommand\bibstyle@cospar{\bibpunct{/}{/}{,}{n}{}{}% - \gdef\bibnumfmt##1{##1.}} -\newcommand\bibstyle@esa{\bibpunct{(Ref.~}{)}{,}{n}{}{}% - \gdef\bibnumfmt##1{##1.\hspace{1em}}} -\newcommand\bibstyle@nature{\bibpunct{}{}{,}{s}{}{\textsuperscript{,}}% - \gdef\bibnumfmt##1{##1.}} - % The standard LaTeX styles -\newcommand\bibstyle@plain{\bibpunct{[}{]}{,}{n}{}{,}} -\let\bibstyle@alpha=\bibstyle@plain -\let\bibstyle@abbrv=\bibstyle@plain -\let\bibstyle@unsrt=\bibstyle@plain - % The author-year modifications of the standard styles -\newcommand\bibstyle@plainnat{\bibpunct{[}{]}{,}{a}{,}{,}} -\let\bibstyle@abbrvnat=\bibstyle@plainnat -\let\bibstyle@unsrtnat=\bibstyle@plainnat -\newif\ifNAT@numbers \NAT@numbersfalse -\newif\ifNAT@super \NAT@superfalse -\let\NAT@merge\z@ -\DeclareOption{numbers}{\NAT@numberstrue - \ExecuteOptions{square,comma,nobibstyle}} -\DeclareOption{super}{\NAT@supertrue\NAT@numberstrue - \renewcommand\NAT@open{}\renewcommand\NAT@close{} - \ExecuteOptions{nobibstyle}} -\DeclareOption{authoryear}{\NAT@numbersfalse - \ExecuteOptions{round,semicolon,bibstyle}} -\DeclareOption{round}{% - \renewcommand\NAT@open{(} \renewcommand\NAT@close{)} - \ExecuteOptions{nobibstyle}} -\DeclareOption{square}{% - \renewcommand\NAT@open{[} \renewcommand\NAT@close{]} - \ExecuteOptions{nobibstyle}} -\DeclareOption{angle}{% - \renewcommand\NAT@open{$<$} \renewcommand\NAT@close{$>$} - \ExecuteOptions{nobibstyle}} -\DeclareOption{curly}{% - \renewcommand\NAT@open{\{} \renewcommand\NAT@close{\}} - \ExecuteOptions{nobibstyle}} -\DeclareOption{comma}{\renewcommand\NAT@sep{,} - \ExecuteOptions{nobibstyle}} -\DeclareOption{semicolon}{\renewcommand\NAT@sep{;} - \ExecuteOptions{nobibstyle}} -\DeclareOption{colon}{\ExecuteOptions{semicolon}} -\DeclareOption{nobibstyle}{\let\bibstyle=\@gobble} -\DeclareOption{bibstyle}{\let\bibstyle=\@citestyle} -\newif\ifNAT@openbib \NAT@openbibfalse -\DeclareOption{openbib}{\NAT@openbibtrue} -\DeclareOption{sectionbib}{\def\NAT@sectionbib{on}} -\def\NAT@sort{\z@} -\def\NAT@cmprs{\z@} -\DeclareOption{sort}{\def\NAT@sort{\@ne}} -\DeclareOption{compress}{\def\NAT@cmprs{\@ne}} -\DeclareOption{sort&compress}{\def\NAT@sort{\@ne}\def\NAT@cmprs{\@ne}} -\DeclareOption{mcite}{\let\NAT@merge\@ne} -\DeclareOption{merge}{\@ifnum{\NAT@merge<\tw@}{\let\NAT@merge\tw@}{}} -\DeclareOption{elide}{\@ifnum{\NAT@merge<\thr@@}{\let\NAT@merge\thr@@}{}} -\@ifpackageloaded{cite}{\PackageWarningNoLine{natbib} - {The `cite' package should not be used\MessageBreak - with natbib. Use option `sort' instead}\ExecuteOptions{sort}}{} -\@ifpackageloaded{mcite}{\PackageWarningNoLine{natbib} - {The `mcite' package should not be used\MessageBreak - with natbib. Use option `merge' instead}\ExecuteOptions{merge}}{} -\@ifpackageloaded{citeref}{\PackageError{natbib} - {The `citeref' package must be loaded after natbib}% - {Move \protect\usepackage{citeref} to after \string\usepackage{natbib}}}{} -\newif\ifNAT@longnames\NAT@longnamesfalse -\DeclareOption{longnamesfirst}{\NAT@longnamestrue} -\DeclareOption{nonamebreak}{\def\NAT@nmfmt#1{\mbox{\NAT@up#1}}} -\def\NAT@nmfmt#1{{\NAT@up#1}} -\renewcommand\bibstyle[1]{\csname bibstyle@#1\endcsname} -\AtBeginDocument{\global\let\bibstyle=\@gobble} -\let\@citestyle\bibstyle -\newcommand\citestyle[1]{\@citestyle{#1}\let\bibstyle\@gobble} -\newcommand\bibpunct[7][, ]% - {\gdef\NAT@open{#2}\gdef\NAT@close{#3}\gdef - \NAT@sep{#4}\global\NAT@numbersfalse - \ifx #5n\global\NAT@numberstrue\global\NAT@superfalse - \else - \ifx #5s\global\NAT@numberstrue\global\NAT@supertrue - \fi\fi - \gdef\NAT@aysep{#6}\gdef\NAT@yrsep{#7}% - \gdef\NAT@cmt{#1}% - \NAT@@setcites - } -\newcommand\setcitestyle[1]{ - \@for\@tempa:=#1\do - {\def\@tempb{round}\ifx\@tempa\@tempb - \renewcommand\NAT@open{(}\renewcommand\NAT@close{)}\fi - \def\@tempb{square}\ifx\@tempa\@tempb - \renewcommand\NAT@open{[}\renewcommand\NAT@close{]}\fi - \def\@tempb{angle}\ifx\@tempa\@tempb - \renewcommand\NAT@open{$<$}\renewcommand\NAT@close{$>$}\fi - \def\@tempb{curly}\ifx\@tempa\@tempb - \renewcommand\NAT@open{\{}\renewcommand\NAT@close{\}}\fi - \def\@tempb{semicolon}\ifx\@tempa\@tempb - \renewcommand\NAT@sep{;}\fi - \def\@tempb{colon}\ifx\@tempa\@tempb - \renewcommand\NAT@sep{;}\fi - \def\@tempb{comma}\ifx\@tempa\@tempb - \renewcommand\NAT@sep{,}\fi - \def\@tempb{authoryear}\ifx\@tempa\@tempb - \NAT@numbersfalse\fi - \def\@tempb{numbers}\ifx\@tempa\@tempb - \NAT@numberstrue\NAT@superfalse\fi - \def\@tempb{super}\ifx\@tempa\@tempb - \NAT@numberstrue\NAT@supertrue\fi - \expandafter\NAT@find@eq\@tempa=\relax\@nil - \if\@tempc\relax\else - \expandafter\NAT@rem@eq\@tempc - \def\@tempb{open}\ifx\@tempa\@tempb - \xdef\NAT@open{\@tempc}\fi - \def\@tempb{close}\ifx\@tempa\@tempb - \xdef\NAT@close{\@tempc}\fi - \def\@tempb{aysep}\ifx\@tempa\@tempb - \xdef\NAT@aysep{\@tempc}\fi - \def\@tempb{yysep}\ifx\@tempa\@tempb - \xdef\NAT@yrsep{\@tempc}\fi - \def\@tempb{notesep}\ifx\@tempa\@tempb - \xdef\NAT@cmt{\@tempc}\fi - \def\@tempb{citesep}\ifx\@tempa\@tempb - \xdef\NAT@sep{\@tempc}\fi - \fi - }% - \NAT@@setcites -} - \def\NAT@find@eq#1=#2\@nil{\def\@tempa{#1}\def\@tempc{#2}} - \def\NAT@rem@eq#1={\def\@tempc{#1}} - \def\NAT@@setcites{\global\let\bibstyle\@gobble} -\AtBeginDocument{\let\NAT@@setcites\NAT@set@cites} -\newcommand\NAT@open{(} \newcommand\NAT@close{)} -\newcommand\NAT@sep{;} -\ProcessOptions -\newcommand\NAT@aysep{,} \newcommand\NAT@yrsep{,} -\newcommand\NAT@cmt{, } -\newcommand\NAT@cite% - [3]{\ifNAT@swa\NAT@@open\if*#2*\else#2\NAT@spacechar\fi - #1\if*#3*\else\NAT@cmt#3\fi\NAT@@close\else#1\fi\endgroup} -\newcommand\NAT@citenum% - [3]{\ifNAT@swa\NAT@@open\if*#2*\else#2\NAT@spacechar\fi - #1\if*#3*\else\NAT@cmt#3\fi\NAT@@close\else#1\fi\endgroup} -\newcommand\NAT@citesuper[3]{\ifNAT@swa -\if*#2*\else#2\NAT@spacechar\fi -\unskip\kern\p@\textsuperscript{\NAT@@open#1\NAT@@close}% - \if*#3*\else\NAT@spacechar#3\fi\else #1\fi\endgroup} -\providecommand\textsuperscript[1]{\mbox{$^{\mbox{\scriptsize#1}}$}} -\begingroup \catcode`\_=8 -\gdef\NAT@ifcat@num#1{% - \ifcat_\ifnum\z@<0#1_\else A\fi - \expandafter\@firstoftwo - \else - \expandafter\@secondoftwo - \fi -}% -\endgroup -\providecommand\@firstofone[1]{#1} -\newcommand\NAT@citexnum{} -\def\NAT@citexnum[#1][#2]#3{% - \NAT@reset@parser - \NAT@sort@cites{#3}% - \NAT@reset@citea - \@cite{\def\NAT@num{-1}\let\NAT@last@yr\relax\let\NAT@nm\@empty - \@for\@citeb:=\NAT@cite@list\do - {\@safe@activestrue - \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% - \@safe@activesfalse - \@ifundefined{b@\@citeb\@extra@b@citeb}{% - {\reset@font\bfseries?} - \NAT@citeundefined\PackageWarning{natbib}% - {Citation `\@citeb' on page \thepage \space undefined}}% - {\let\NAT@last@num\NAT@num\let\NAT@last@nm\NAT@nm - \NAT@parse{\@citeb}% - \ifNAT@longnames\@ifundefined{bv@\@citeb\@extra@b@citeb}{% - \let\NAT@name=\NAT@all@names - \global\@namedef{bv@\@citeb\@extra@b@citeb}{}}{}% - \fi - \ifNAT@full\let\NAT@nm\NAT@all@names\else - \let\NAT@nm\NAT@name\fi - \ifNAT@swa - \@ifnum{\NAT@ctype>\@ne}{% - \@citea - \NAT@hyper@{\@ifnum{\NAT@ctype=\tw@}{\NAT@test{\NAT@ctype}}{\NAT@alias}}% - }{% - \@ifnum{\NAT@cmprs>\z@}{% - \NAT@ifcat@num\NAT@num - {\let\NAT@nm=\NAT@num}% - {\def\NAT@nm{-2}}% - \NAT@ifcat@num\NAT@last@num - {\@tempcnta=\NAT@last@num\relax}% - {\@tempcnta\m@ne}% - \@ifnum{\NAT@nm=\@tempcnta}{% - \@ifnum{\NAT@merge>\@ne}{}{\NAT@last@yr@mbox}% - }{% - \advance\@tempcnta by\@ne - \@ifnum{\NAT@nm=\@tempcnta}{% - \ifx\NAT@last@yr\relax - \def@NAT@last@yr{\@citea}% - \else - \def@NAT@last@yr{--\NAT@penalty}% - \fi - }{% - \NAT@last@yr@mbox - }% - }% - }{% - \@tempswatrue - \@ifnum{\NAT@merge>\@ne}{\@ifnum{\NAT@last@num=\NAT@num\relax}{\@tempswafalse}{}}{}% - \if@tempswa\NAT@citea@mbox\fi - }% - }% - \NAT@def@citea - \else - \ifcase\NAT@ctype - \ifx\NAT@last@nm\NAT@nm \NAT@yrsep\NAT@penalty\NAT@space\else - \@citea \NAT@test{\@ne}\NAT@spacechar\NAT@mbox{\NAT@super@kern\NAT@@open}% - \fi - \if*#1*\else#1\NAT@spacechar\fi - \NAT@mbox{\NAT@hyper@{{\citenumfont{\NAT@num}}}}% - \NAT@def@citea@box - \or - \NAT@hyper@citea@space{\NAT@test{\NAT@ctype}}% - \or - \NAT@hyper@citea@space{\NAT@test{\NAT@ctype}}% - \or - \NAT@hyper@citea@space\NAT@alias - \fi - \fi - }% - }% - \@ifnum{\NAT@cmprs>\z@}{\NAT@last@yr}{}% - \ifNAT@swa\else - \@ifnum{\NAT@ctype=\z@}{% - \if*#2*\else\NAT@cmt#2\fi - }{}% - \NAT@mbox{\NAT@@close}% - \fi - }{#1}{#2}% -}% -\def\NAT@citea@mbox{% - \@citea\mbox{\NAT@hyper@{{\citenumfont{\NAT@num}}}}% -}% -\def\NAT@hyper@#1{% - \hyper@natlinkstart{\@citeb\@extra@b@citeb}#1\hyper@natlinkend -}% -\def\NAT@hyper@citea#1{% - \@citea - \NAT@hyper@{#1}% - \NAT@def@citea -}% -\def\NAT@hyper@citea@space#1{% - \@citea - \NAT@hyper@{#1}% - \NAT@def@citea@space -}% -\def\def@NAT@last@yr#1{% - \protected@edef\NAT@last@yr{% - #1% - \noexpand\mbox{% - \noexpand\hyper@natlinkstart{\@citeb\@extra@b@citeb}% - {\noexpand\citenumfont{\NAT@num}}% - \noexpand\hyper@natlinkend - }% - }% -}% -\def\NAT@last@yr@mbox{% - \NAT@last@yr\let\NAT@last@yr\relax - \NAT@citea@mbox -}% -\newcommand\NAT@test[1]{% - \@ifnum{#1=\@ne}{% - \ifx\NAT@nm\NAT@noname - \begingroup\reset@font\bfseries(author?)\endgroup - \PackageWarning{natbib}{% - Author undefined for citation`\@citeb' \MessageBreak on page \thepage% - }% - \else \NAT@nm - \fi - }{% - \if\relax\NAT@date\relax - \begingroup\reset@font\bfseries(year?)\endgroup - \PackageWarning{natbib}{% - Year undefined for citation`\@citeb' \MessageBreak on page \thepage% - }% - \else \NAT@date - \fi - }% -}% -\let\citenumfont=\@empty -\newcommand\NAT@citex{} -\def\NAT@citex% - [#1][#2]#3{% - \NAT@reset@parser - \NAT@sort@cites{#3}% - \NAT@reset@citea - \@cite{\let\NAT@nm\@empty\let\NAT@year\@empty - \@for\@citeb:=\NAT@cite@list\do - {\@safe@activestrue - \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% - \@safe@activesfalse - \@ifundefined{b@\@citeb\@extra@b@citeb}{\@citea% - {\reset@font\bfseries ?}\NAT@citeundefined - \PackageWarning{natbib}% - {Citation `\@citeb' on page \thepage \space undefined}\def\NAT@date{}}% - {\let\NAT@last@nm=\NAT@nm\let\NAT@last@yr=\NAT@year - \NAT@parse{\@citeb}% - \ifNAT@longnames\@ifundefined{bv@\@citeb\@extra@b@citeb}{% - \let\NAT@name=\NAT@all@names - \global\@namedef{bv@\@citeb\@extra@b@citeb}{}}{}% - \fi - \ifNAT@full\let\NAT@nm\NAT@all@names\else - \let\NAT@nm\NAT@name\fi - \ifNAT@swa\ifcase\NAT@ctype - \if\relax\NAT@date\relax - \@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}\NAT@date}% - \else - \ifx\NAT@last@nm\NAT@nm\NAT@yrsep - \ifx\NAT@last@yr\NAT@year - \def\NAT@temp{{?}}% - \ifx\NAT@temp\NAT@exlab\PackageWarningNoLine{natbib}% - {Multiple citation on page \thepage: same authors and - year\MessageBreak without distinguishing extra - letter,\MessageBreak appears as question mark}\fi - \NAT@hyper@{\NAT@exlab}% - \else\unskip\NAT@spacechar - \NAT@hyper@{\NAT@date}% - \fi - \else - \@citea\NAT@hyper@{% - \NAT@nmfmt{\NAT@nm}% - \hyper@natlinkbreak{% - \NAT@aysep\NAT@spacechar}{\@citeb\@extra@b@citeb - }% - \NAT@date - }% - \fi - \fi - \or\@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}}% - \or\@citea\NAT@hyper@{\NAT@date}% - \or\@citea\NAT@hyper@{\NAT@alias}% - \fi \NAT@def@citea - \else - \ifcase\NAT@ctype - \if\relax\NAT@date\relax - \@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}}% - \else - \ifx\NAT@last@nm\NAT@nm\NAT@yrsep - \ifx\NAT@last@yr\NAT@year - \def\NAT@temp{{?}}% - \ifx\NAT@temp\NAT@exlab\PackageWarningNoLine{natbib}% - {Multiple citation on page \thepage: same authors and - year\MessageBreak without distinguishing extra - letter,\MessageBreak appears as question mark}\fi - \NAT@hyper@{\NAT@exlab}% - \else - \unskip\NAT@spacechar - \NAT@hyper@{\NAT@date}% - \fi - \else - \@citea\NAT@hyper@{% - \NAT@nmfmt{\NAT@nm}% - \hyper@natlinkbreak{\NAT@spacechar\NAT@@open\if*#1*\else#1\NAT@spacechar\fi}% - {\@citeb\@extra@b@citeb}% - \NAT@date - }% - \fi - \fi - \or\@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}}% - \or\@citea\NAT@hyper@{\NAT@date}% - \or\@citea\NAT@hyper@{\NAT@alias}% - \fi - \if\relax\NAT@date\relax - \NAT@def@citea - \else - \NAT@def@citea@close - \fi - \fi - }}\ifNAT@swa\else\if*#2*\else\NAT@cmt#2\fi - \if\relax\NAT@date\relax\else\NAT@@close\fi\fi}{#1}{#2}} -\def\NAT@spacechar{\ }% -\def\NAT@separator{\NAT@sep\NAT@penalty}% -\def\NAT@reset@citea{\c@NAT@ctr\@ne\let\@citea\@empty}% -\def\NAT@def@citea{\def\@citea{\NAT@separator\NAT@space}}% -\def\NAT@def@citea@space{\def\@citea{\NAT@separator\NAT@spacechar}}% -\def\NAT@def@citea@close{\def\@citea{\NAT@@close\NAT@separator\NAT@space}}% -\def\NAT@def@citea@box{\def\@citea{\NAT@mbox{\NAT@@close}\NAT@separator\NAT@spacechar}}% -\newif\ifNAT@par \NAT@partrue -\newcommand\NAT@@open{\ifNAT@par\NAT@open\fi} -\newcommand\NAT@@close{\ifNAT@par\NAT@close\fi} -\newcommand\NAT@alias{\@ifundefined{al@\@citeb\@extra@b@citeb}{% - {\reset@font\bfseries(alias?)}\PackageWarning{natbib} - {Alias undefined for citation `\@citeb' - \MessageBreak on page \thepage}}{\@nameuse{al@\@citeb\@extra@b@citeb}}} -\let\NAT@up\relax -\newcommand\NAT@Up[1]{{\let\protect\@unexpandable@protect\let~\relax - \expandafter\NAT@deftemp#1}\expandafter\NAT@UP\NAT@temp} -\newcommand\NAT@deftemp[1]{\xdef\NAT@temp{#1}} -\newcommand\NAT@UP[1]{\let\@tempa\NAT@UP\ifcat a#1\MakeUppercase{#1}% - \let\@tempa\relax\else#1\fi\@tempa} -\newcommand\shortcites[1]{% - \@bsphack\@for\@citeb:=#1\do - {\@safe@activestrue - \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% - \@safe@activesfalse - \global\@namedef{bv@\@citeb\@extra@b@citeb}{}}\@esphack} -\newcommand\NAT@biblabel[1]{\hfill} -\newcommand\NAT@biblabelnum[1]{\bibnumfmt{#1}} -\let\bibnumfmt\@empty -\providecommand\@biblabel[1]{[#1]} -\AtBeginDocument{\ifx\bibnumfmt\@empty\let\bibnumfmt\@biblabel\fi} -\newcommand\NAT@bibsetnum[1]{\settowidth\labelwidth{\@biblabel{#1}}% - \setlength{\leftmargin}{\labelwidth}\addtolength{\leftmargin}{\labelsep}% - \setlength{\itemsep}{\bibsep}\setlength{\parsep}{\z@}% - \ifNAT@openbib - \addtolength{\leftmargin}{\bibindent}% - \setlength{\itemindent}{-\bibindent}% - \setlength{\listparindent}{\itemindent}% - \setlength{\parsep}{0pt}% - \fi -} -\newlength{\bibhang} -\setlength{\bibhang}{1em} -\newlength{\bibsep} - {\@listi \global\bibsep\itemsep \global\advance\bibsep by\parsep} - -\newcommand\NAT@bibsetup% - [1]{\setlength{\leftmargin}{\bibhang}\setlength{\itemindent}{-\leftmargin}% - \setlength{\itemsep}{\bibsep}\setlength{\parsep}{\z@}} -\newcommand\NAT@set@cites{% - \ifNAT@numbers - \ifNAT@super \let\@cite\NAT@citesuper - \def\NAT@mbox##1{\unskip\nobreak\textsuperscript{##1}}% - \let\citeyearpar=\citeyear - \let\NAT@space\relax - \def\NAT@super@kern{\kern\p@}% - \else - \let\NAT@mbox=\mbox - \let\@cite\NAT@citenum - \let\NAT@space\NAT@spacechar - \let\NAT@super@kern\relax - \fi - \let\@citex\NAT@citexnum - \let\@biblabel\NAT@biblabelnum - \let\@bibsetup\NAT@bibsetnum - \renewcommand\NAT@idxtxt{\NAT@name\NAT@spacechar\NAT@open\NAT@num\NAT@close}% - \def\natexlab##1{}% - \def\NAT@penalty{\penalty\@m}% - \else - \let\@cite\NAT@cite - \let\@citex\NAT@citex - \let\@biblabel\NAT@biblabel - \let\@bibsetup\NAT@bibsetup - \let\NAT@space\NAT@spacechar - \let\NAT@penalty\@empty - \renewcommand\NAT@idxtxt{\NAT@name\NAT@spacechar\NAT@open\NAT@date\NAT@close}% - \def\natexlab##1{##1}% - \fi} -\AtBeginDocument{\NAT@set@cites} -\AtBeginDocument{\ifx\SK@def\@undefined\else -\ifx\SK@cite\@empty\else - \SK@def\@citex[#1][#2]#3{\SK@\SK@@ref{#3}\SK@@citex[#1][#2]{#3}}\fi -\ifx\SK@citeauthor\@undefined\def\HAR@checkdef{}\else - \let\citeauthor\SK@citeauthor - \let\citefullauthor\SK@citefullauthor - \let\citeyear\SK@citeyear\fi -\fi} -\newif\ifNAT@full\NAT@fullfalse -\newif\ifNAT@swa -\DeclareRobustCommand\citet - {\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@partrue - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\newcommand\NAT@citetp{\@ifnextchar[{\NAT@@citetp}{\NAT@@citetp[]}} -\newcommand\NAT@@citetp{} -\def\NAT@@citetp[#1]{\@ifnextchar[{\@citex[#1]}{\@citex[][#1]}} -\DeclareRobustCommand\citep - {\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@partrue - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\cite - {\begingroup\let\NAT@ctype\z@\NAT@partrue\NAT@swatrue - \@ifstar{\NAT@fulltrue\NAT@cites}{\NAT@fullfalse\NAT@cites}} -\newcommand\NAT@cites{\@ifnextchar [{\NAT@@citetp}{% - \ifNAT@numbers\else - \NAT@swafalse - \fi - \NAT@@citetp[]}} -\DeclareRobustCommand\citealt - {\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@parfalse - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\citealp - {\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@parfalse - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\citenum - {\begingroup - \NAT@swatrue\let\NAT@ctype\z@\NAT@parfalse\let\textsuperscript\NAT@spacechar - \NAT@citexnum[][]} -\DeclareRobustCommand\citeauthor - {\begingroup\NAT@swafalse\let\NAT@ctype\@ne\NAT@parfalse - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\Citet - {\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@partrue - \let\NAT@up\NAT@Up - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\Citep - {\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@partrue - \let\NAT@up\NAT@Up - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\Citealt - {\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@parfalse - \let\NAT@up\NAT@Up - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\Citealp - {\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@parfalse - \let\NAT@up\NAT@Up - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\Citeauthor - {\begingroup\NAT@swafalse\let\NAT@ctype\@ne\NAT@parfalse - \let\NAT@up\NAT@Up - \@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}} -\DeclareRobustCommand\citeyear - {\begingroup\NAT@swafalse\let\NAT@ctype\tw@\NAT@parfalse\NAT@citetp} -\DeclareRobustCommand\citeyearpar - {\begingroup\NAT@swatrue\let\NAT@ctype\tw@\NAT@partrue\NAT@citetp} -\newcommand\citetext[1]{\NAT@open#1\NAT@close} -\DeclareRobustCommand\citefullauthor - {\citeauthor*} -\newcommand\defcitealias[2]{% - \@ifundefined{al@#1\@extra@b@citeb}{} - {\PackageWarning{natbib}{Overwriting existing alias for citation #1}} - \@namedef{al@#1\@extra@b@citeb}{#2}} -\DeclareRobustCommand\citetalias{\begingroup - \NAT@swafalse\let\NAT@ctype\thr@@\NAT@parfalse\NAT@citetp} -\DeclareRobustCommand\citepalias{\begingroup - \NAT@swatrue\let\NAT@ctype\thr@@\NAT@partrue\NAT@citetp} -\renewcommand\nocite[1]{\@bsphack - \@for\@citeb:=#1\do{% - \@safe@activestrue - \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% - \@safe@activesfalse - \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi - \if*\@citeb\else - \@ifundefined{b@\@citeb\@extra@b@citeb}{% - \NAT@citeundefined \PackageWarning{natbib}% - {Citation `\@citeb' undefined}}{}\fi}% - \@esphack} -\newcommand\NAT@parse[1]{% - \begingroup - \let\protect=\@unexpandable@protect - \let~\relax - \let\active@prefix=\@gobble - \edef\NAT@temp{\csname b@#1\@extra@b@citeb\endcsname}% - \aftergroup\NAT@split - \expandafter - \endgroup - \NAT@temp{}{}{}{}{}@@% - \expandafter\NAT@parse@date\NAT@date??????@@% - \ifciteindex\NAT@index\fi -}% -\def\NAT@split#1#2#3#4#5@@{% - \gdef\NAT@num{#1}\gdef\NAT@name{#3}\gdef\NAT@date{#2}% - \gdef\NAT@all@names{#4}% - \ifx\NAT@num\@empty\gdef\NAT@num{0}\fi - \ifx\NAT@noname\NAT@all@names \gdef\NAT@all@names{#3}\fi -}% -\def\NAT@reset@parser{% - \global\let\NAT@num\@empty - \global\let\NAT@name\@empty - \global\let\NAT@date\@empty - \global\let\NAT@all@names\@empty -}% -\newcommand\NAT@parse@date{} -\def\NAT@parse@date#1#2#3#4#5#6@@{% - \ifnum\the\catcode`#1=11\def\NAT@year{}\def\NAT@exlab{#1}\else - \ifnum\the\catcode`#2=11\def\NAT@year{#1}\def\NAT@exlab{#2}\else - \ifnum\the\catcode`#3=11\def\NAT@year{#1#2}\def\NAT@exlab{#3}\else - \ifnum\the\catcode`#4=11\def\NAT@year{#1#2#3}\def\NAT@exlab{#4}\else - \def\NAT@year{#1#2#3#4}\def\NAT@exlab{{#5}}\fi\fi\fi\fi} -\newcommand\NAT@index{} -\let\NAT@makeindex=\makeindex -\renewcommand\makeindex{\NAT@makeindex - \renewcommand\NAT@index{\@bsphack\begingroup - \def~{\string~}\@wrindex{\NAT@idxtxt}}} -\newcommand\NAT@idxtxt{\NAT@name\NAT@spacechar\NAT@open\NAT@date\NAT@close} -\@ifxundefined\@indexfile{}{\let\NAT@makeindex\relax\makeindex} -\newif\ifciteindex \citeindexfalse -\newcommand\citeindextype{default} -\newcommand\NAT@index@alt{{\let\protect=\noexpand\let~\relax - \xdef\NAT@temp{\NAT@idxtxt}}\expandafter\NAT@exp\NAT@temp\@nil} -\newcommand\NAT@exp{} -\def\NAT@exp#1\@nil{\index[\citeindextype]{#1}} - -\AtBeginDocument{% -\@ifpackageloaded{index}{\let\NAT@index=\NAT@index@alt}{}} -\newcommand\NAT@ifcmd{\futurelet\NAT@temp\NAT@ifxcmd} -\newcommand\NAT@ifxcmd{\ifx\NAT@temp\relax\else\expandafter\NAT@bare\fi} -\def\NAT@bare#1(#2)#3(@)#4\@nil#5{% - \if @#2 - \expandafter\NAT@apalk#1, , \@nil{#5}% - \else - \NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{#3}{#5}% -\fi -} -\newcommand\NAT@wrout[5]{% -\if@filesw - {\let\protect\noexpand\let~\relax - \immediate - \write\@auxout{\string\bibcite{#5}{{#1}{#2}{{#3}}{{#4}}}}}\fi -\ignorespaces} -\def\NAT@noname{{}} -\renewcommand\bibitem{\@ifnextchar[{\@lbibitem}{\@lbibitem[]}}% -\let\NAT@bibitem@first@sw\@secondoftwo -\def\@lbibitem[#1]#2{% - \if\relax\@extra@b@citeb\relax\else - \@ifundefined{br@#2\@extra@b@citeb}{}{% - \@namedef{br@#2}{\@nameuse{br@#2\@extra@b@citeb}}% - }% - \fi - \@ifundefined{b@#2\@extra@b@citeb}{% - \def\NAT@num{}% - }{% - \NAT@parse{#2}% - }% - \def\NAT@tmp{#1}% - \expandafter\let\expandafter\bibitemOpen\csname NAT@b@open@#2\endcsname - \expandafter\let\expandafter\bibitemShut\csname NAT@b@shut@#2\endcsname - \@ifnum{\NAT@merge>\@ne}{% - \NAT@bibitem@first@sw{% - \@firstoftwo - }{% - \@ifundefined{NAT@b*@#2}{% - \@firstoftwo - }{% - \expandafter\def\expandafter\NAT@num\expandafter{\the\c@NAT@ctr}% - \@secondoftwo - }% - }% - }{% - \@firstoftwo - }% - {% - \global\advance\c@NAT@ctr\@ne - \@ifx{\NAT@tmp\@empty}{\@firstoftwo}{% - \@secondoftwo - }% - {% - \expandafter\def\expandafter\NAT@num\expandafter{\the\c@NAT@ctr}% - \global\NAT@stdbsttrue - }{}% - \bibitem@fin - \item[\hfil\NAT@anchor{#2}{\NAT@num}]% - \global\let\NAT@bibitem@first@sw\@secondoftwo - \NAT@bibitem@init - }% - {% - \NAT@anchor{#2}{}% - \NAT@bibitem@cont - \bibitem@fin - }% - \@ifx{\NAT@tmp\@empty}{% - \NAT@wrout{\the\c@NAT@ctr}{}{}{}{#2}% - }{% - \expandafter\NAT@ifcmd\NAT@tmp(@)(@)\@nil{#2}% - }% -}% -\def\bibitem@fin{% - \@ifxundefined\@bibstop{}{\csname bibitem@\@bibstop\endcsname}% -}% -\def\NAT@bibitem@init{% - \let\@bibstop\@undefined -}% -\def\NAT@bibitem@cont{% - \let\bibitem@Stop\bibitemStop - \let\bibitem@NoStop\bibitemContinue -}% -\def\BibitemOpen{% - \bibitemOpen -}% -\def\BibitemShut#1{% - \bibitemShut - \def\@bibstop{#1}% - \let\bibitem@Stop\bibitemStop - \let\bibitem@NoStop\bibitemNoStop -}% -\def\bibitemStop{}% -\def\bibitemNoStop{.\spacefactor\@mmm\space}% -\def\bibitemContinue{\spacefactor\@mmm\space}% -\mathchardef\@mmm=3000 % -\providecommand{\bibAnnote}[3]{% - \BibitemShut{#1}% - \def\@tempa{#3}\@ifx{\@tempa\@empty}{}{% - \begin{quotation}\noindent - \textsc{Key:}\ #2\\\textsc{Annotation:}\ \@tempa - \end{quotation}% - }% -}% -\providecommand{\bibAnnoteFile}[2]{% - \IfFileExists{#2}{% - \bibAnnote{#1}{#2}{\input{#2}}% - }{% - \bibAnnote{#1}{#2}{}% - }% -}% -\let\bibitemOpen\relax -\let\bibitemShut\relax -\def\bibfield{\@ifnum{\NAT@merge>\tw@}{\@bibfield}{\@secondoftwo}}% -\def\@bibfield#1#2{% - \begingroup - \let\Doi\@gobble - \let\bibinfo\relax - \let\restore@protect\@empty - \protected@edef\@tempa{#2}% - \aftergroup\def\aftergroup\@tempa - \expandafter\endgroup\expandafter{\@tempa}% - \expandafter\@ifx\expandafter{\csname @bib#1\endcsname\@tempa}{% - \expandafter\let\expandafter\@tempa\csname @bib@X#1\endcsname - }{% - \expandafter\let\csname @bib#1\endcsname\@tempa - \expandafter\let\expandafter\@tempa\csname @bib@Y#1\endcsname - }% - \@ifx{\@tempa\relax}{\let\@tempa\@firstofone}{}% - \@tempa{#2}% -}% -\def\bibinfo#1{% - \expandafter\let\expandafter\@tempa\csname bibinfo@X@#1\endcsname - \@ifx{\@tempa\relax}{\@firstofone}{\@tempa}% -}% -\def\@bib@Xauthor#1{\let\@bib@Xjournal\@gobble}% -\def\@bib@Xjournal#1{\begingroup\let\bibinfo@X@journal\@bib@Z@journal#1\endgroup}% -\def\@bibibid@#1{\textit{ibid}.}% -\appdef\NAT@bibitem@init{% - \let\@bibauthor \@empty - \let\@bibjournal \@empty - \let\@bib@Z@journal\@bibibid@ -}% -\ifx\SK@lbibitem\@undefined\else - \let\SK@lbibitem\@lbibitem - \def\@lbibitem[#1]#2{% - \SK@lbibitem[#1]{#2}\SK@\SK@@label{#2}\ignorespaces}\fi -\newif\ifNAT@stdbst \NAT@stdbstfalse - -\AtEndDocument{% - \ifNAT@stdbst\if@filesw - \immediate\write\@auxout{% - \string\providecommand\string\NAT@force@numbers{}% - \string\NAT@force@numbers - }% - \fi\fi - } -\newcommand\NAT@force@numbers{% - \ifNAT@numbers\else - \PackageError{natbib}{Bibliography not compatible with author-year - citations.\MessageBreak - Press <return> to continue in numerical citation style} - {Check the bibliography entries for non-compliant syntax,\MessageBreak - or select author-year BibTeX style, e.g. plainnat}% - \global\NAT@numberstrue\fi} - -\providecommand\bibcite{} -\renewcommand\bibcite[2]{% - \@ifundefined{b@#1\@extra@binfo}{\relax}{% - \NAT@citemultiple - \PackageWarningNoLine{natbib}{Citation `#1' multiply defined}% - }% - \global\@namedef{b@#1\@extra@binfo}{#2}% -}% -\AtEndDocument{\NAT@swatrue\let\bibcite\NAT@testdef} -\newcommand\NAT@testdef[2]{% - \def\NAT@temp{#2}% - \expandafter \ifx \csname b@#1\@extra@binfo\endcsname\NAT@temp - \else - \ifNAT@swa \NAT@swafalse - \PackageWarningNoLine{natbib}{% - Citation(s) may have changed.\MessageBreak - Rerun to get citations correct% - }% - \fi - \fi -}% -\newcommand\NAT@apalk{} -\def\NAT@apalk#1, #2, #3\@nil#4{% - \if\relax#2\relax - \global\NAT@stdbsttrue - \NAT@wrout{#1}{}{}{}{#4}% - \else - \NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{}{#4}% - \fi -}% -\newcommand\citeauthoryear{} -\def\citeauthoryear#1#2#3(@)(@)\@nil#4{% - \if\relax#3\relax - \NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{}{#4}% - \else - \NAT@wrout{\the\c@NAT@ctr}{#3}{#2}{#1}{#4}% - \fi -}% -\newcommand\citestarts{\NAT@open}% -\newcommand\citeends{\NAT@close}% -\newcommand\betweenauthors{and}% -\newcommand\astroncite{} -\def\astroncite#1#2(@)(@)\@nil#3{% - \NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{}{#3}% -}% -\newcommand\citename{} -\def\citename#1#2(@)(@)\@nil#3{\expandafter\NAT@apalk#1#2, \@nil{#3}} -\newcommand\harvarditem[4][]{% - \if\relax#1\relax - \bibitem[#2(#3)]{#4}% - \else - \bibitem[#1(#3)#2]{#4}% - \fi -}% -\newcommand\harvardleft{\NAT@open} -\newcommand\harvardright{\NAT@close} -\newcommand\harvardyearleft{\NAT@open} -\newcommand\harvardyearright{\NAT@close} -\AtBeginDocument{\providecommand{\harvardand}{and}} -\newcommand\harvardurl[1]{\textbf{URL:} \textit{#1}} -\providecommand\bibsection{} -\@ifundefined{chapter}{% - \renewcommand\bibsection{% - \section*{\refname\@mkboth{\MakeUppercase{\refname}}{\MakeUppercase{\refname}}}% - }% -}{% - \@ifxundefined\NAT@sectionbib{% - \renewcommand\bibsection{% - \chapter*{\bibname\@mkboth{\MakeUppercase{\bibname}}{\MakeUppercase{\bibname}}}% - }% - }{% - \renewcommand\bibsection{% - \section*{\bibname\ifx\@mkboth\@gobbletwo\else\markright{\MakeUppercase{\bibname}}\fi}% - }% - }% -}% -\@ifclassloaded{amsart}{\renewcommand\bibsection{\section*{\refname}}}{}% -\@ifclassloaded{amsbook}{\renewcommand\bibsection{\chapter*{\bibname}}}{}% -\@ifxundefined\bib@heading{}{\let\bibsection\bib@heading}% -\newcounter{NAT@ctr} -\renewenvironment{thebibliography}[1]{% - \bibsection - \parindent\z@ - \bibpreamble - \bibfont - \list{\@biblabel{\the\c@NAT@ctr}}{\@bibsetup{#1}\global\c@NAT@ctr\z@}% - \ifNAT@openbib - \renewcommand\newblock{\par}% - \else - \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}% - \fi - \sloppy\clubpenalty4000\widowpenalty4000 - \sfcode`\.\@m - \let\NAT@bibitem@first@sw\@firstoftwo - \let\citeN\cite \let\shortcite\cite - \let\citeasnoun\cite -}{% - \bibitem@fin - \bibpostamble - \def\@noitemerr{% - \PackageWarning{natbib}{Empty `thebibliography' environment}% - }% - \endlist - \bibcleanup -}% -\let\bibfont\@empty -\let\bibpreamble\@empty -\let\bibpostamble\@empty -\def\bibcleanup{\vskip-\lastskip}% -\providecommand\reset@font{\relax} -\providecommand\bibname{Bibliography} -\providecommand\refname{References} -\newcommand\NAT@citeundefined{\gdef \NAT@undefined {% - \PackageWarningNoLine{natbib}{There were undefined citations}}} -\let \NAT@undefined \relax -\newcommand\NAT@citemultiple{\gdef \NAT@multiple {% - \PackageWarningNoLine{natbib}{There were multiply defined citations}}} -\let \NAT@multiple \relax -\AtEndDocument{\NAT@undefined\NAT@multiple} -\providecommand\@mkboth[2]{} -\providecommand\MakeUppercase{\uppercase} -\providecommand{\@extra@b@citeb}{} -\gdef\@extra@binfo{} -\def\NAT@anchor#1#2{% - \hyper@natanchorstart{#1\@extra@b@citeb}% - \def\@tempa{#2}\@ifx{\@tempa\@empty}{}{\@biblabel{#2}}% - \hyper@natanchorend -}% -\providecommand\hyper@natanchorstart[1]{}% -\providecommand\hyper@natanchorend{}% -\providecommand\hyper@natlinkstart[1]{}% -\providecommand\hyper@natlinkend{}% -\providecommand\hyper@natlinkbreak[2]{#1}% -\AtBeginDocument{% - \@ifpackageloaded{babel}{% - \let\org@@citex\@citex}{}} -\providecommand\@safe@activestrue{}% -\providecommand\@safe@activesfalse{}% - -\newcommand\NAT@sort@cites[1]{% - \let\NAT@cite@list\@empty - \@for\@citeb:=#1\do{\expandafter\NAT@star@cite\@citeb\@@}% - \if@filesw - \expandafter\immediate\expandafter\write\expandafter\@auxout - \expandafter{\expandafter\string\expandafter\citation\expandafter{\NAT@cite@list}}% - \fi - \@ifnum{\NAT@sort>\z@}{% - \expandafter\NAT@sort@cites@\expandafter{\NAT@cite@list}% - }{}% -}% -\def\NAT@star@cite{% - \let\NAT@star@sw\@secondoftwo - \@ifnum{\NAT@merge>\z@}{% - \@ifnextchar*{% - \let\NAT@star@sw\@firstoftwo - \NAT@star@cite@star - }{% - \NAT@star@cite@nostar - }% - }{% - \NAT@star@cite@noextension - }% -}% -\def\NAT@star@cite@star*{% - \NAT@star@cite@nostar -}% -\def\NAT@star@cite@nostar{% - \let\nat@keyopt@open\@empty - \let\nat@keyopt@shut\@empty - \@ifnextchar[{\NAT@star@cite@pre}{\NAT@star@cite@pre[]}% -}% -\def\NAT@star@cite@pre[#1]{% - \def\nat@keyopt@open{#1}% - \@ifnextchar[{\NAT@star@cite@post}{\NAT@star@cite@post[]}% -}% -\def\NAT@star@cite@post[#1]#2\@@{% - \def\nat@keyopt@shut{#1}% - \NAT@star@sw{\expandafter\global\expandafter\let\csname NAT@b*@#2\endcsname\@empty}{}% - \NAT@cite@list@append{#2}% -}% -\def\NAT@star@cite@noextension#1\@@{% - \let\nat@keyopt@open\@empty - \let\nat@keyopt@shut\@empty - \NAT@cite@list@append{#1}% -}% -\def\NAT@cite@list@append#1{% - \edef\@citeb{\@firstofone#1\@empty}% - \if@filesw\@ifxundefined\@cprwrite{}{\expandafter\@cprwrite\@citeb=}\fi - \if\relax\nat@keyopt@open\relax\else - \global\expandafter\let\csname NAT@b@open@\@citeb\endcsname\nat@keyopt@open - \fi - \if\relax\nat@keyopt@shut\relax\else - \global\expandafter\let\csname NAT@b@shut@\@citeb\endcsname\nat@keyopt@shut - \fi - \toks@\expandafter{\NAT@cite@list}% - \ifx\NAT@cite@list\@empty - \@temptokena\expandafter{\@citeb}% - \else - \@temptokena\expandafter{\expandafter,\@citeb}% - \fi - \edef\NAT@cite@list{\the\toks@\the\@temptokena}% -}% -\newcommand\NAT@sort@cites@[1]{% - \count@\z@ - \@tempcntb\m@ne - \let\@celt\delimiter - \def\NAT@num@list{}% - \let\NAT@cite@list\@empty - \let\NAT@nonsort@list\@empty - \@for \@citeb:=#1\do{\NAT@make@cite@list}% - \ifx\NAT@nonsort@list\@empty\else - \protected@edef\NAT@cite@list{\NAT@cite@list\NAT@nonsort@list}% - \fi - \ifx\NAT@cite@list\@empty\else - \protected@edef\NAT@cite@list{\expandafter\NAT@xcom\NAT@cite@list @@}% - \fi -}% -\def\NAT@make@cite@list{% - \advance\count@\@ne - \@safe@activestrue - \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% - \@safe@activesfalse - \@ifundefined{b@\@citeb\@extra@b@citeb}% - {\def\NAT@num{A}}% - {\NAT@parse{\@citeb}}% - \NAT@ifcat@num\NAT@num - {\@tempcnta\NAT@num \relax - \@ifnum{\@tempcnta<\@tempcntb}{% - \let\NAT@@cite@list=\NAT@cite@list - \let\NAT@cite@list\@empty - \begingroup\let\@celt=\NAT@celt\NAT@num@list\endgroup - \protected@edef\NAT@num@list{% - \expandafter\NAT@num@celt \NAT@num@list \@gobble @% - }% - }{% - \protected@edef\NAT@num@list{\NAT@num@list \@celt{\NAT@num}}% - \protected@edef\NAT@cite@list{\NAT@cite@list\@citeb,}% - \@tempcntb\@tempcnta - }% - }% - {\protected@edef\NAT@nonsort@list{\NAT@nonsort@list\@citeb,}}% -}% -\def\NAT@celt#1{% - \@ifnum{#1>\@tempcnta}{% - \xdef\NAT@cite@list{\NAT@cite@list\@citeb,\NAT@@cite@list}% - \let\@celt\@gobble - }{% - \expandafter\def@NAT@cite@lists\NAT@@cite@list\@@ - }% -}% -\def\NAT@num@celt#1#2{% - \ifx#1\@celt - \@ifnum{#2>\@tempcnta}{% - \@celt{\number\@tempcnta}% - \@celt{#2}% - }{% - \@celt{#2}% - \expandafter\NAT@num@celt - }% - \fi -}% -\def\def@NAT@cite@lists#1,#2\@@{% - \xdef\NAT@cite@list{\NAT@cite@list#1,}% - \xdef\NAT@@cite@list{#2}% -}% -\def\NAT@nextc#1,#2@@{#1,} -\def\NAT@restc#1,#2{#2} -\def\NAT@xcom#1,@@{#1} -\InputIfFileExists{natbib.cfg} - {\typeout{Local config file natbib.cfg used}}{} -%% -%% <<<<< End of generated file <<<<<< -%% -%% End of file `natbib.sty'. |
