📚 The CoCalc Library - books, templates and other resources
License: OTHER
%%1%% This is file `natbib.sty',2%% generated with the docstrip utility.3%%4%% The original source files were:5%%6%% natbib.dtx (with options: `package,all')7%% =============================================8%% IMPORTANT NOTICE:9%%10%% This program can be redistributed and/or modified under the terms11%% of the LaTeX Project Public License Distributed from CTAN12%% archives in directory macros/latex/base/lppl.txt; either13%% version 1 of the License, or any later version.14%%15%% This is a generated file.16%% It may not be distributed without the original source file natbib.dtx.17%%18%% Full documentation can be obtained by LaTeXing that original file.19%% Only a few abbreviated comments remain here to describe the usage.20%% =============================================21%% Copyright 1993-2009 Patrick W Daly22%% Max-Planck-Institut f\"ur Sonnensystemforschung23%% Max-Planck-Str. 224%% D-37191 Katlenburg-Lindau25%% Germany26%% E-mail: [email protected]27\NeedsTeXFormat{LaTeX2e}[1995/06/01]28\ProvidesPackage{natbib}29[2009/07/16 8.31 (PWD, AO)]3031% This package reimplements the LaTeX \cite command to be used for various32% citation styles, both author-year and numerical. It accepts BibTeX33% output intended for many other packages, and therefore acts as a34% general, all-purpose citation-style interface.35%36% With standard numerical .bst files, only numerical citations are37% possible. With an author-year .bst file, both numerical and38% author-year citations are possible.39%40% If author-year citations are selected, \bibitem must have one of the41% following forms:42% \bibitem[Jones et al.(1990)]{key}...43% \bibitem[Jones et al.(1990)Jones, Baker, and Williams]{key}...44% \bibitem[Jones et al., 1990]{key}...45% \bibitem[\protect\citeauthoryear{Jones, Baker, and Williams}{Jones46% et al.}{1990}]{key}...47% \bibitem[\protect\citeauthoryear{Jones et al.}{1990}]{key}...48% \bibitem[\protect\astroncite{Jones et al.}{1990}]{key}...49% \bibitem[\protect\citename{Jones et al., }1990]{key}...50% \harvarditem[Jones et al.]{Jones, Baker, and Williams}{1990}{key}...51%52% This is either to be made up manually, or to be generated by an53% appropriate .bst file with BibTeX.54% Author-year mode || Numerical mode55% Then, \citet{key} ==>> Jones et al. (1990) || Jones et al. [21]56% \citep{key} ==>> (Jones et al., 1990) || [21]57% Multiple citations as normal:58% \citep{key1,key2} ==>> (Jones et al., 1990; Smith, 1989) || [21,24]59% or (Jones et al., 1990, 1991) || [21,24]60% or (Jones et al., 1990a,b) || [21,24]61% \cite{key} is the equivalent of \citet{key} in author-year mode62% and of \citep{key} in numerical mode63% Full author lists may be forced with \citet* or \citep*, e.g.64% \citep*{key} ==>> (Jones, Baker, and Williams, 1990)65% Optional notes as:66% \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2)67% \citep[e.g.,][]{key} ==>> (e.g., Jones et al., 1990)68% \citep[see][pg. 34]{key}==>> (see Jones et al., 1990, pg. 34)69% (Note: in standard LaTeX, only one note is allowed, after the ref.70% Here, one note is like the standard, two make pre- and post-notes.)71% \citealt{key} ==>> Jones et al. 199072% \citealt*{key} ==>> Jones, Baker, and Williams 199073% \citealp{key} ==>> Jones et al., 199074% \citealp*{key} ==>> Jones, Baker, and Williams, 199075% Additional citation possibilities (both author-year and numerical modes)76% \citeauthor{key} ==>> Jones et al.77% \citeauthor*{key} ==>> Jones, Baker, and Williams78% \citeyear{key} ==>> 199079% \citeyearpar{key} ==>> (1990)80% \citetext{priv. comm.} ==>> (priv. comm.)81% \citenum{key} ==>> 11 [non-superscripted]82% Note: full author lists depends on whether the bib style supports them;83% if not, the abbreviated list is printed even when full requested.84%85% For names like della Robbia at the start of a sentence, use86% \Citet{dRob98} ==>> Della Robbia (1998)87% \Citep{dRob98} ==>> (Della Robbia, 1998)88% \Citeauthor{dRob98} ==>> Della Robbia89%90%91% Citation aliasing is achieved with92% \defcitealias{key}{text}93% \citetalias{key} ==>> text94% \citepalias{key} ==>> (text)95%96% Defining the citation mode and punctual (citation style)97% \setcitestyle{<comma-separated list of keywords, same98% as the package options>}99% Example: \setcitestyle{square,semicolon}100% Alternatively:101% Use \bibpunct with 6 mandatory arguments:102% 1. opening bracket for citation103% 2. closing bracket104% 3. citation separator (for multiple citations in one \cite)105% 4. the letter n for numerical styles, s for superscripts106% else anything for author-year107% 5. punctuation between authors and date108% 6. punctuation between years (or numbers) when common authors missing109% One optional argument is the character coming before post-notes. It110% appears in square braces before all other arguments. May be left off.111% Example (and default) \bibpunct[, ]{(}{)}{;}{a}{,}{,}112%113% To make this automatic for a given bib style, named newbib, say, make114% a local configuration file, natbib.cfg, with the definition115% \newcommand{\bibstyle@newbib}{\bibpunct...}116% Then the \bibliographystyle{newbib} will cause \bibstyle@newbib to117% be called on THE NEXT LATEX RUN (via the aux file).118%119% Such preprogrammed definitions may be invoked anywhere in the text120% by calling \citestyle{newbib}. This is only useful if the style specified121% differs from that in \bibliographystyle.122%123% With \citeindextrue and \citeindexfalse, one can control whether the124% \cite commands make an automatic entry of the citation in the .idx125% indexing file. For this, \makeindex must also be given in the preamble.126%127% Package Options: (for selecting punctuation)128% round - round parentheses are used (default)129% square - square brackets are used [option]130% curly - curly braces are used {option}131% angle - angle brackets are used <option>132% semicolon - multiple citations separated by semi-colon (default)133% colon - same as semicolon, an earlier confusion134% comma - separated by comma135% authoryear - selects author-year citations (default)136% numbers- selects numerical citations137% super - numerical citations as superscripts138% sort - sorts multiple citations according to order in ref. list139% sort&compress - like sort, but also compresses numerical citations140% compress - compresses without sorting141% longnamesfirst - makes first citation full author list142% sectionbib - puts bibliography in a \section* instead of \chapter*143% merge - allows the citation key to have a * prefix,144% signifying to merge its reference with that of the previous citation.145% elide - if references are merged, repeated portions of later ones may be removed.146% mcite - recognizes and ignores the * prefix for merging.147% Punctuation so selected dominates over any predefined ones.148% Package options are called as, e.g.149% \usepackage[square,comma]{natbib}150% LaTeX the source file natbib.dtx to obtain more details151% or the file natnotes.tex for a brief reference sheet.152%-----------------------------------------------------------153\providecommand\@ifxundefined[1]{%154\ifx#1\@undefined\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi155}%156\providecommand\@ifnum[1]{%157\ifnum#1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi158}%159\providecommand\@ifx[1]{%160\ifx#1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi161}%162\providecommand\appdef[2]{%163\toks@\expandafter{#1}\@temptokena{#2}%164\edef#1{\the\toks@\the\@temptokena}%165}%166\@ifclassloaded{agu2001}{\PackageError{natbib}167{The agu2001 class already includes natbib coding,\MessageBreak168so you should not add it explicitly}169{Type <Return> for now, but then later remove\MessageBreak170the command \protect\usepackage{natbib} from the document}171\endinput}{}172\@ifclassloaded{agutex}{\PackageError{natbib}173{The AGUTeX class already includes natbib coding,\MessageBreak174so you should not add it explicitly}175{Type <Return> for now, but then later remove\MessageBreak176the command \protect\usepackage{natbib} from the document}177\endinput}{}178\@ifclassloaded{aguplus}{\PackageError{natbib}179{The aguplus class already includes natbib coding,\MessageBreak180so you should not add it explicitly}181{Type <Return> for now, but then later remove\MessageBreak182the command \protect\usepackage{natbib} from the document}183\endinput}{}184\@ifclassloaded{nlinproc}{\PackageError{natbib}185{The nlinproc class already includes natbib coding,\MessageBreak186so you should not add it explicitly}187{Type <Return> for now, but then later remove\MessageBreak188the command \protect\usepackage{natbib} from the document}189\endinput}{}190\@ifclassloaded{egs}{\PackageError{natbib}191{The egs class already includes natbib coding,\MessageBreak192so you should not add it explicitly}193{Type <Return> for now, but then later remove\MessageBreak194the command \protect\usepackage{natbib} from the document}195\endinput}{}196\@ifclassloaded{egu}{\PackageError{natbib}197{The egu class already includes natbib coding,\MessageBreak198so you should not add it explicitly}199{Type <Return> for now, but then later remove\MessageBreak200the command \protect\usepackage{natbib} from the document}201\endinput}{}202% Define citation punctuation for some author-year styles203% One may add and delete at this point204% Or put additions into local configuration file natbib.cfg205\newcommand\bibstyle@chicago{\bibpunct{(}{)}{;}{a}{,}{,}}206\newcommand\bibstyle@named{\bibpunct{[}{]}{;}{a}{,}{,}}207\newcommand\bibstyle@agu{\bibpunct{[}{]}{;}{a}{,}{,~}}%Amer. Geophys. Union208\newcommand\bibstyle@copernicus{\bibpunct{(}{)}{;}{a}{,}{,}}%Copernicus Publications209\let\bibstyle@egu=\bibstyle@copernicus210\let\bibstyle@egs=\bibstyle@copernicus211\newcommand\bibstyle@agsm{\bibpunct{(}{)}{,}{a}{}{,}\gdef\harvardand{\&}}212\newcommand\bibstyle@kluwer{\bibpunct{(}{)}{,}{a}{}{,}\gdef\harvardand{\&}}213\newcommand\bibstyle@dcu{\bibpunct{(}{)}{;}{a}{;}{,}\gdef\harvardand{and}}214\newcommand\bibstyle@aa{\bibpunct{(}{)}{;}{a}{}{,}} %Astronomy & Astrophysics215\newcommand\bibstyle@pass{\bibpunct{(}{)}{;}{a}{,}{,}}%Planet. & Space Sci216\newcommand\bibstyle@anngeo{\bibpunct{(}{)}{;}{a}{,}{,}}%Annales Geophysicae217\newcommand\bibstyle@nlinproc{\bibpunct{(}{)}{;}{a}{,}{,}}%Nonlin.Proc.Geophys.218% Define citation punctuation for some numerical styles219\newcommand\bibstyle@cospar{\bibpunct{/}{/}{,}{n}{}{}%220\gdef\bibnumfmt##1{##1.}}221\newcommand\bibstyle@esa{\bibpunct{(Ref.~}{)}{,}{n}{}{}%222\gdef\bibnumfmt##1{##1.\hspace{1em}}}223\newcommand\bibstyle@nature{\bibpunct{}{}{,}{s}{}{\textsuperscript{,}}%224\gdef\bibnumfmt##1{##1.}}225% The standard LaTeX styles226\newcommand\bibstyle@plain{\bibpunct{[}{]}{,}{n}{}{,}}227\let\bibstyle@alpha=\bibstyle@plain228\let\bibstyle@abbrv=\bibstyle@plain229\let\bibstyle@unsrt=\bibstyle@plain230% The author-year modifications of the standard styles231\newcommand\bibstyle@plainnat{\bibpunct{[}{]}{,}{a}{,}{,}}232\let\bibstyle@abbrvnat=\bibstyle@plainnat233\let\bibstyle@unsrtnat=\bibstyle@plainnat234\newif\ifNAT@numbers \NAT@numbersfalse235\newif\ifNAT@super \NAT@superfalse236\let\NAT@merge\z@237\DeclareOption{numbers}{\NAT@numberstrue238\ExecuteOptions{square,comma,nobibstyle}}239\DeclareOption{super}{\NAT@supertrue\NAT@numberstrue240\renewcommand\NAT@open{}\renewcommand\NAT@close{}241\ExecuteOptions{nobibstyle}}242\DeclareOption{authoryear}{\NAT@numbersfalse243\ExecuteOptions{round,semicolon,bibstyle}}244\DeclareOption{round}{%245\renewcommand\NAT@open{(} \renewcommand\NAT@close{)}246\ExecuteOptions{nobibstyle}}247\DeclareOption{square}{%248\renewcommand\NAT@open{[} \renewcommand\NAT@close{]}249\ExecuteOptions{nobibstyle}}250\DeclareOption{angle}{%251\renewcommand\NAT@open{$<$} \renewcommand\NAT@close{$>$}252\ExecuteOptions{nobibstyle}}253\DeclareOption{curly}{%254\renewcommand\NAT@open{\{} \renewcommand\NAT@close{\}}255\ExecuteOptions{nobibstyle}}256\DeclareOption{comma}{\renewcommand\NAT@sep{,}257\ExecuteOptions{nobibstyle}}258\DeclareOption{semicolon}{\renewcommand\NAT@sep{;}259\ExecuteOptions{nobibstyle}}260\DeclareOption{colon}{\ExecuteOptions{semicolon}}261\DeclareOption{nobibstyle}{\let\bibstyle=\@gobble}262\DeclareOption{bibstyle}{\let\bibstyle=\@citestyle}263\newif\ifNAT@openbib \NAT@openbibfalse264\DeclareOption{openbib}{\NAT@openbibtrue}265\DeclareOption{sectionbib}{\def\NAT@sectionbib{on}}266\def\NAT@sort{\z@}267\def\NAT@cmprs{\z@}268\DeclareOption{sort}{\def\NAT@sort{\@ne}}269\DeclareOption{compress}{\def\NAT@cmprs{\@ne}}270\DeclareOption{sort&compress}{\def\NAT@sort{\@ne}\def\NAT@cmprs{\@ne}}271\DeclareOption{mcite}{\let\NAT@merge\@ne}272\DeclareOption{merge}{\@ifnum{\NAT@merge<\tw@}{\let\NAT@merge\tw@}{}}273\DeclareOption{elide}{\@ifnum{\NAT@merge<\thr@@}{\let\NAT@merge\thr@@}{}}274\@ifpackageloaded{cite}{\PackageWarningNoLine{natbib}275{The `cite' package should not be used\MessageBreak276with natbib. Use option `sort' instead}\ExecuteOptions{sort}}{}277\@ifpackageloaded{mcite}{\PackageWarningNoLine{natbib}278{The `mcite' package should not be used\MessageBreak279with natbib. Use option `merge' instead}\ExecuteOptions{merge}}{}280\@ifpackageloaded{citeref}{\PackageError{natbib}281{The `citeref' package must be loaded after natbib}%282{Move \protect\usepackage{citeref} to after \string\usepackage{natbib}}}{}283\newif\ifNAT@longnames\NAT@longnamesfalse284\DeclareOption{longnamesfirst}{\NAT@longnamestrue}285\DeclareOption{nonamebreak}{\def\NAT@nmfmt#1{\mbox{\NAT@up#1}}}286\def\NAT@nmfmt#1{{\NAT@up#1}}287\renewcommand\bibstyle[1]{\csname bibstyle@#1\endcsname}288\AtBeginDocument{\global\let\bibstyle=\@gobble}289\let\@citestyle\bibstyle290\newcommand\citestyle[1]{\@citestyle{#1}\let\bibstyle\@gobble}291\newcommand\bibpunct[7][, ]%292{\gdef\NAT@open{#2}\gdef\NAT@close{#3}\gdef293\NAT@sep{#4}\global\NAT@numbersfalse294\ifx #5n\global\NAT@numberstrue\global\NAT@superfalse295\else296\ifx #5s\global\NAT@numberstrue\global\NAT@supertrue297\fi\fi298\gdef\NAT@aysep{#6}\gdef\NAT@yrsep{#7}%299\gdef\NAT@cmt{#1}%300\NAT@@setcites301}302\newcommand\setcitestyle[1]{303\@for\@tempa:=#1\do304{\def\@tempb{round}\ifx\@tempa\@tempb305\renewcommand\NAT@open{(}\renewcommand\NAT@close{)}\fi306\def\@tempb{square}\ifx\@tempa\@tempb307\renewcommand\NAT@open{[}\renewcommand\NAT@close{]}\fi308\def\@tempb{angle}\ifx\@tempa\@tempb309\renewcommand\NAT@open{$<$}\renewcommand\NAT@close{$>$}\fi310\def\@tempb{curly}\ifx\@tempa\@tempb311\renewcommand\NAT@open{\{}\renewcommand\NAT@close{\}}\fi312\def\@tempb{semicolon}\ifx\@tempa\@tempb313\renewcommand\NAT@sep{;}\fi314\def\@tempb{colon}\ifx\@tempa\@tempb315\renewcommand\NAT@sep{;}\fi316\def\@tempb{comma}\ifx\@tempa\@tempb317\renewcommand\NAT@sep{,}\fi318\def\@tempb{authoryear}\ifx\@tempa\@tempb319\NAT@numbersfalse\fi320\def\@tempb{numbers}\ifx\@tempa\@tempb321\NAT@numberstrue\NAT@superfalse\fi322\def\@tempb{super}\ifx\@tempa\@tempb323\NAT@numberstrue\NAT@supertrue\fi324\expandafter\NAT@find@eq\@tempa=\relax\@nil325\if\@tempc\relax\else326\expandafter\NAT@rem@eq\@tempc327\def\@tempb{open}\ifx\@tempa\@tempb328\xdef\NAT@open{\@tempc}\fi329\def\@tempb{close}\ifx\@tempa\@tempb330\xdef\NAT@close{\@tempc}\fi331\def\@tempb{aysep}\ifx\@tempa\@tempb332\xdef\NAT@aysep{\@tempc}\fi333\def\@tempb{yysep}\ifx\@tempa\@tempb334\xdef\NAT@yrsep{\@tempc}\fi335\def\@tempb{notesep}\ifx\@tempa\@tempb336\xdef\NAT@cmt{\@tempc}\fi337\def\@tempb{citesep}\ifx\@tempa\@tempb338\xdef\NAT@sep{\@tempc}\fi339\fi340}%341\NAT@@setcites342}343\def\NAT@find@eq#1=#2\@nil{\def\@tempa{#1}\def\@tempc{#2}}344\def\NAT@rem@eq#1={\def\@tempc{#1}}345\def\NAT@@setcites{\global\let\bibstyle\@gobble}346\AtBeginDocument{\let\NAT@@setcites\NAT@set@cites}347\newcommand\NAT@open{(} \newcommand\NAT@close{)}348\newcommand\NAT@sep{;}349\ProcessOptions350\newcommand\NAT@aysep{,} \newcommand\NAT@yrsep{,}351\newcommand\NAT@cmt{, }352\newcommand\NAT@cite%353[3]{\ifNAT@swa\NAT@@open\if*#2*\else#2\NAT@spacechar\fi354#1\if*#3*\else\NAT@cmt#3\fi\NAT@@close\else#1\fi\endgroup}355\newcommand\NAT@citenum%356[3]{\ifNAT@swa\NAT@@open\if*#2*\else#2\NAT@spacechar\fi357#1\if*#3*\else\NAT@cmt#3\fi\NAT@@close\else#1\fi\endgroup}358\newcommand\NAT@citesuper[3]{\ifNAT@swa359\if*#2*\else#2\NAT@spacechar\fi360\unskip\kern\p@\textsuperscript{\NAT@@open#1\NAT@@close}%361\if*#3*\else\NAT@spacechar#3\fi\else #1\fi\endgroup}362\providecommand\textsuperscript[1]{\mbox{$^{\mbox{\scriptsize#1}}$}}363\begingroup \catcode`\_=8364\gdef\NAT@ifcat@num#1{%365\ifcat_\ifnum\z@<0#1_\else A\fi366\expandafter\@firstoftwo367\else368\expandafter\@secondoftwo369\fi370}%371\endgroup372\providecommand\@firstofone[1]{#1}373\newcommand\NAT@citexnum{}374\def\NAT@citexnum[#1][#2]#3{%375\NAT@reset@parser376\NAT@sort@cites{#3}%377\NAT@reset@citea378\@cite{\def\NAT@num{-1}\let\NAT@last@yr\relax\let\NAT@nm\@empty379\@for\@citeb:=\NAT@cite@list\do380{\@safe@activestrue381\edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%382\@safe@activesfalse383\@ifundefined{b@\@citeb\@extra@b@citeb}{%384{\reset@font\bfseries?}385\NAT@citeundefined\PackageWarning{natbib}%386{Citation `\@citeb' on page \thepage \space undefined}}%387{\let\NAT@last@num\NAT@num\let\NAT@last@nm\NAT@nm388\NAT@parse{\@citeb}%389\ifNAT@longnames\@ifundefined{bv@\@citeb\@extra@b@citeb}{%390\let\NAT@name=\NAT@all@names391\global\@namedef{bv@\@citeb\@extra@b@citeb}{}}{}%392\fi393\ifNAT@full\let\NAT@nm\NAT@all@names\else394\let\NAT@nm\NAT@name\fi395\ifNAT@swa396\@ifnum{\NAT@ctype>\@ne}{%397\@citea398\NAT@hyper@{\@ifnum{\NAT@ctype=\tw@}{\NAT@test{\NAT@ctype}}{\NAT@alias}}%399}{%400\@ifnum{\NAT@cmprs>\z@}{%401\NAT@ifcat@num\NAT@num402{\let\NAT@nm=\NAT@num}%403{\def\NAT@nm{-2}}%404\NAT@ifcat@num\NAT@last@num405{\@tempcnta=\NAT@last@num\relax}%406{\@tempcnta\m@ne}%407\@ifnum{\NAT@nm=\@tempcnta}{%408\@ifnum{\NAT@merge>\@ne}{}{\NAT@last@yr@mbox}%409}{%410\advance\@tempcnta by\@ne411\@ifnum{\NAT@nm=\@tempcnta}{%412\ifx\NAT@last@yr\relax413\def@NAT@last@yr{\@citea}%414\else415\def@NAT@last@yr{--\NAT@penalty}%416\fi417}{%418\NAT@last@yr@mbox419}%420}%421}{%422\@tempswatrue423\@ifnum{\NAT@merge>\@ne}{\@ifnum{\NAT@last@num=\NAT@num\relax}{\@tempswafalse}{}}{}%424\if@tempswa\NAT@citea@mbox\fi425}%426}%427\NAT@def@citea428\else429\ifcase\NAT@ctype430\ifx\NAT@last@nm\NAT@nm \NAT@yrsep\NAT@penalty\NAT@space\else431\@citea \NAT@test{\@ne}\NAT@spacechar\NAT@mbox{\NAT@super@kern\NAT@@open}%432\fi433\if*#1*\else#1\NAT@spacechar\fi434\NAT@mbox{\NAT@hyper@{{\citenumfont{\NAT@num}}}}%435\NAT@def@citea@box436\or437\NAT@hyper@citea@space{\NAT@test{\NAT@ctype}}%438\or439\NAT@hyper@citea@space{\NAT@test{\NAT@ctype}}%440\or441\NAT@hyper@citea@space\NAT@alias442\fi443\fi444}%445}%446\@ifnum{\NAT@cmprs>\z@}{\NAT@last@yr}{}%447\ifNAT@swa\else448\@ifnum{\NAT@ctype=\z@}{%449\if*#2*\else\NAT@cmt#2\fi450}{}%451\NAT@mbox{\NAT@@close}%452\fi453}{#1}{#2}%454}%455\def\NAT@citea@mbox{%456\@citea\mbox{\NAT@hyper@{{\citenumfont{\NAT@num}}}}%457}%458\def\NAT@hyper@#1{%459\hyper@natlinkstart{\@citeb\@extra@b@citeb}#1\hyper@natlinkend460}%461\def\NAT@hyper@citea#1{%462\@citea463\NAT@hyper@{#1}%464\NAT@def@citea465}%466\def\NAT@hyper@citea@space#1{%467\@citea468\NAT@hyper@{#1}%469\NAT@def@citea@space470}%471\def\def@NAT@last@yr#1{%472\protected@edef\NAT@last@yr{%473#1%474\noexpand\mbox{%475\noexpand\hyper@natlinkstart{\@citeb\@extra@b@citeb}%476{\noexpand\citenumfont{\NAT@num}}%477\noexpand\hyper@natlinkend478}%479}%480}%481\def\NAT@last@yr@mbox{%482\NAT@last@yr\let\NAT@last@yr\relax483\NAT@citea@mbox484}%485\newcommand\NAT@test[1]{%486\@ifnum{#1=\@ne}{%487\ifx\NAT@nm\NAT@noname488\begingroup\reset@font\bfseries(author?)\endgroup489\PackageWarning{natbib}{%490Author undefined for citation`\@citeb' \MessageBreak on page \thepage%491}%492\else \NAT@nm493\fi494}{%495\if\relax\NAT@date\relax496\begingroup\reset@font\bfseries(year?)\endgroup497\PackageWarning{natbib}{%498Year undefined for citation`\@citeb' \MessageBreak on page \thepage%499}%500\else \NAT@date501\fi502}%503}%504\let\citenumfont=\@empty505\newcommand\NAT@citex{}506\def\NAT@citex%507[#1][#2]#3{%508\NAT@reset@parser509\NAT@sort@cites{#3}%510\NAT@reset@citea511\@cite{\let\NAT@nm\@empty\let\NAT@year\@empty512\@for\@citeb:=\NAT@cite@list\do513{\@safe@activestrue514\edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%515\@safe@activesfalse516\@ifundefined{b@\@citeb\@extra@b@citeb}{\@citea%517{\reset@font\bfseries ?}\NAT@citeundefined518\PackageWarning{natbib}%519{Citation `\@citeb' on page \thepage \space undefined}\def\NAT@date{}}%520{\let\NAT@last@nm=\NAT@nm\let\NAT@last@yr=\NAT@year521\NAT@parse{\@citeb}%522\ifNAT@longnames\@ifundefined{bv@\@citeb\@extra@b@citeb}{%523\let\NAT@name=\NAT@all@names524\global\@namedef{bv@\@citeb\@extra@b@citeb}{}}{}%525\fi526\ifNAT@full\let\NAT@nm\NAT@all@names\else527\let\NAT@nm\NAT@name\fi528\ifNAT@swa\ifcase\NAT@ctype529\if\relax\NAT@date\relax530\@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}\NAT@date}%531\else532\ifx\NAT@last@nm\NAT@nm\NAT@yrsep533\ifx\NAT@last@yr\NAT@year534\def\NAT@temp{{?}}%535\ifx\NAT@temp\NAT@exlab\PackageWarningNoLine{natbib}%536{Multiple citation on page \thepage: same authors and537year\MessageBreak without distinguishing extra538letter,\MessageBreak appears as question mark}\fi539\NAT@hyper@{\NAT@exlab}%540\else\unskip\NAT@spacechar541\NAT@hyper@{\NAT@date}%542\fi543\else544\@citea\NAT@hyper@{%545\NAT@nmfmt{\NAT@nm}%546\hyper@natlinkbreak{%547\NAT@aysep\NAT@spacechar}{\@citeb\@extra@b@citeb548}%549\NAT@date550}%551\fi552\fi553\or\@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}}%554\or\@citea\NAT@hyper@{\NAT@date}%555\or\@citea\NAT@hyper@{\NAT@alias}%556\fi \NAT@def@citea557\else558\ifcase\NAT@ctype559\if\relax\NAT@date\relax560\@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}}%561\else562\ifx\NAT@last@nm\NAT@nm\NAT@yrsep563\ifx\NAT@last@yr\NAT@year564\def\NAT@temp{{?}}%565\ifx\NAT@temp\NAT@exlab\PackageWarningNoLine{natbib}%566{Multiple citation on page \thepage: same authors and567year\MessageBreak without distinguishing extra568letter,\MessageBreak appears as question mark}\fi569\NAT@hyper@{\NAT@exlab}%570\else571\unskip\NAT@spacechar572\NAT@hyper@{\NAT@date}%573\fi574\else575\@citea\NAT@hyper@{%576\NAT@nmfmt{\NAT@nm}%577\hyper@natlinkbreak{\NAT@spacechar\NAT@@open\if*#1*\else#1\NAT@spacechar\fi}%578{\@citeb\@extra@b@citeb}%579\NAT@date580}%581\fi582\fi583\or\@citea\NAT@hyper@{\NAT@nmfmt{\NAT@nm}}%584\or\@citea\NAT@hyper@{\NAT@date}%585\or\@citea\NAT@hyper@{\NAT@alias}%586\fi587\if\relax\NAT@date\relax588\NAT@def@citea589\else590\NAT@def@citea@close591\fi592\fi593}}\ifNAT@swa\else\if*#2*\else\NAT@cmt#2\fi594\if\relax\NAT@date\relax\else\NAT@@close\fi\fi}{#1}{#2}}595\def\NAT@spacechar{\ }%596\def\NAT@separator{\NAT@sep\NAT@penalty}%597\def\NAT@reset@citea{\c@NAT@ctr\@ne\let\@citea\@empty}%598\def\NAT@def@citea{\def\@citea{\NAT@separator\NAT@space}}%599\def\NAT@def@citea@space{\def\@citea{\NAT@separator\NAT@spacechar}}%600\def\NAT@def@citea@close{\def\@citea{\NAT@@close\NAT@separator\NAT@space}}%601\def\NAT@def@citea@box{\def\@citea{\NAT@mbox{\NAT@@close}\NAT@separator\NAT@spacechar}}%602\newif\ifNAT@par \NAT@partrue603\newcommand\NAT@@open{\ifNAT@par\NAT@open\fi}604\newcommand\NAT@@close{\ifNAT@par\NAT@close\fi}605\newcommand\NAT@alias{\@ifundefined{al@\@citeb\@extra@b@citeb}{%606{\reset@font\bfseries(alias?)}\PackageWarning{natbib}607{Alias undefined for citation `\@citeb'608\MessageBreak on page \thepage}}{\@nameuse{al@\@citeb\@extra@b@citeb}}}609\let\NAT@up\relax610\newcommand\NAT@Up[1]{{\let\protect\@unexpandable@protect\let~\relax611\expandafter\NAT@deftemp#1}\expandafter\NAT@UP\NAT@temp}612\newcommand\NAT@deftemp[1]{\xdef\NAT@temp{#1}}613\newcommand\NAT@UP[1]{\let\@tempa\NAT@UP\ifcat a#1\MakeUppercase{#1}%614\let\@tempa\relax\else#1\fi\@tempa}615\newcommand\shortcites[1]{%616\@bsphack\@for\@citeb:=#1\do617{\@safe@activestrue618\edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%619\@safe@activesfalse620\global\@namedef{bv@\@citeb\@extra@b@citeb}{}}\@esphack}621\newcommand\NAT@biblabel[1]{\hfill}622\newcommand\NAT@biblabelnum[1]{\bibnumfmt{#1}}623\let\bibnumfmt\@empty624\providecommand\@biblabel[1]{[#1]}625\AtBeginDocument{\ifx\bibnumfmt\@empty\let\bibnumfmt\@biblabel\fi}626\newcommand\NAT@bibsetnum[1]{\settowidth\labelwidth{\@biblabel{#1}}%627\setlength{\leftmargin}{\labelwidth}\addtolength{\leftmargin}{\labelsep}%628\setlength{\itemsep}{\bibsep}\setlength{\parsep}{\z@}%629\ifNAT@openbib630\addtolength{\leftmargin}{\bibindent}%631\setlength{\itemindent}{-\bibindent}%632\setlength{\listparindent}{\itemindent}%633\setlength{\parsep}{0pt}%634\fi635}636\newlength{\bibhang}637\setlength{\bibhang}{1em}638\newlength{\bibsep}639{\@listi \global\bibsep\itemsep \global\advance\bibsep by\parsep}640641\newcommand\NAT@bibsetup%642[1]{\setlength{\leftmargin}{\bibhang}\setlength{\itemindent}{-\leftmargin}%643\setlength{\itemsep}{\bibsep}\setlength{\parsep}{\z@}}644\newcommand\NAT@set@cites{%645\ifNAT@numbers646\ifNAT@super \let\@cite\NAT@citesuper647\def\NAT@mbox##1{\unskip\nobreak\textsuperscript{##1}}%648\let\citeyearpar=\citeyear649\let\NAT@space\relax650\def\NAT@super@kern{\kern\p@}%651\else652\let\NAT@mbox=\mbox653\let\@cite\NAT@citenum654\let\NAT@space\NAT@spacechar655\let\NAT@super@kern\relax656\fi657\let\@citex\NAT@citexnum658\let\@biblabel\NAT@biblabelnum659\let\@bibsetup\NAT@bibsetnum660\renewcommand\NAT@idxtxt{\NAT@name\NAT@spacechar\NAT@open\NAT@num\NAT@close}%661\def\natexlab##1{}%662\def\NAT@penalty{\penalty\@m}%663\else664\let\@cite\NAT@cite665\let\@citex\NAT@citex666\let\@biblabel\NAT@biblabel667\let\@bibsetup\NAT@bibsetup668\let\NAT@space\NAT@spacechar669\let\NAT@penalty\@empty670\renewcommand\NAT@idxtxt{\NAT@name\NAT@spacechar\NAT@open\NAT@date\NAT@close}%671\def\natexlab##1{##1}%672\fi}673\AtBeginDocument{\NAT@set@cites}674\AtBeginDocument{\ifx\SK@def\@undefined\else675\ifx\SK@cite\@empty\else676\SK@def\@citex[#1][#2]#3{\SK@\SK@@ref{#3}\SK@@citex[#1][#2]{#3}}\fi677\ifx\SK@citeauthor\@undefined\def\HAR@checkdef{}\else678\let\citeauthor\SK@citeauthor679\let\citefullauthor\SK@citefullauthor680\let\citeyear\SK@citeyear\fi681\fi}682\newif\ifNAT@full\NAT@fullfalse683\newif\ifNAT@swa684\DeclareRobustCommand\citet685{\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@partrue686\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}687\newcommand\NAT@citetp{\@ifnextchar[{\NAT@@citetp}{\NAT@@citetp[]}}688\newcommand\NAT@@citetp{}689\def\NAT@@citetp[#1]{\@ifnextchar[{\@citex[#1]}{\@citex[][#1]}}690\DeclareRobustCommand\citep691{\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@partrue692\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}693\DeclareRobustCommand\cite694{\begingroup\let\NAT@ctype\z@\NAT@partrue\NAT@swatrue695\@ifstar{\NAT@fulltrue\NAT@cites}{\NAT@fullfalse\NAT@cites}}696\newcommand\NAT@cites{\@ifnextchar [{\NAT@@citetp}{%697\ifNAT@numbers\else698\NAT@swafalse699\fi700\NAT@@citetp[]}}701\DeclareRobustCommand\citealt702{\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@parfalse703\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}704\DeclareRobustCommand\citealp705{\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@parfalse706\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}707\DeclareRobustCommand\citenum708{\begingroup709\NAT@swatrue\let\NAT@ctype\z@\NAT@parfalse\let\textsuperscript\NAT@spacechar710\NAT@citexnum[][]}711\DeclareRobustCommand\citeauthor712{\begingroup\NAT@swafalse\let\NAT@ctype\@ne\NAT@parfalse713\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}714\DeclareRobustCommand\Citet715{\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@partrue716\let\NAT@up\NAT@Up717\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}718\DeclareRobustCommand\Citep719{\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@partrue720\let\NAT@up\NAT@Up721\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}722\DeclareRobustCommand\Citealt723{\begingroup\NAT@swafalse\let\NAT@ctype\z@\NAT@parfalse724\let\NAT@up\NAT@Up725\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}726\DeclareRobustCommand\Citealp727{\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@parfalse728\let\NAT@up\NAT@Up729\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}730\DeclareRobustCommand\Citeauthor731{\begingroup\NAT@swafalse\let\NAT@ctype\@ne\NAT@parfalse732\let\NAT@up\NAT@Up733\@ifstar{\NAT@fulltrue\NAT@citetp}{\NAT@fullfalse\NAT@citetp}}734\DeclareRobustCommand\citeyear735{\begingroup\NAT@swafalse\let\NAT@ctype\tw@\NAT@parfalse\NAT@citetp}736\DeclareRobustCommand\citeyearpar737{\begingroup\NAT@swatrue\let\NAT@ctype\tw@\NAT@partrue\NAT@citetp}738\newcommand\citetext[1]{\NAT@open#1\NAT@close}739\DeclareRobustCommand\citefullauthor740{\citeauthor*}741\newcommand\defcitealias[2]{%742\@ifundefined{al@#1\@extra@b@citeb}{}743{\PackageWarning{natbib}{Overwriting existing alias for citation #1}}744\@namedef{al@#1\@extra@b@citeb}{#2}}745\DeclareRobustCommand\citetalias{\begingroup746\NAT@swafalse\let\NAT@ctype\thr@@\NAT@parfalse\NAT@citetp}747\DeclareRobustCommand\citepalias{\begingroup748\NAT@swatrue\let\NAT@ctype\thr@@\NAT@partrue\NAT@citetp}749\renewcommand\nocite[1]{\@bsphack750\@for\@citeb:=#1\do{%751\@safe@activestrue752\edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%753\@safe@activesfalse754\if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi755\if*\@citeb\else756\@ifundefined{b@\@citeb\@extra@b@citeb}{%757\NAT@citeundefined \PackageWarning{natbib}%758{Citation `\@citeb' undefined}}{}\fi}%759\@esphack}760\newcommand\NAT@parse[1]{%761\begingroup762\let\protect=\@unexpandable@protect763\let~\relax764\let\active@prefix=\@gobble765\edef\NAT@temp{\csname b@#1\@extra@b@citeb\endcsname}%766\aftergroup\NAT@split767\expandafter768\endgroup769\NAT@temp{}{}{}{}{}@@%770\expandafter\NAT@parse@date\NAT@date??????@@%771\ifciteindex\NAT@index\fi772}%773\def\NAT@split#1#2#3#4#5@@{%774\gdef\NAT@num{#1}\gdef\NAT@name{#3}\gdef\NAT@date{#2}%775\gdef\NAT@all@names{#4}%776\ifx\NAT@num\@empty\gdef\NAT@num{0}\fi777\ifx\NAT@noname\NAT@all@names \gdef\NAT@all@names{#3}\fi778}%779\def\NAT@reset@parser{%780\global\let\NAT@num\@empty781\global\let\NAT@name\@empty782\global\let\NAT@date\@empty783\global\let\NAT@all@names\@empty784}%785\newcommand\NAT@parse@date{}786\def\NAT@parse@date#1#2#3#4#5#6@@{%787\ifnum\the\catcode`#1=11\def\NAT@year{}\def\NAT@exlab{#1}\else788\ifnum\the\catcode`#2=11\def\NAT@year{#1}\def\NAT@exlab{#2}\else789\ifnum\the\catcode`#3=11\def\NAT@year{#1#2}\def\NAT@exlab{#3}\else790\ifnum\the\catcode`#4=11\def\NAT@year{#1#2#3}\def\NAT@exlab{#4}\else791\def\NAT@year{#1#2#3#4}\def\NAT@exlab{{#5}}\fi\fi\fi\fi}792\newcommand\NAT@index{}793\let\NAT@makeindex=\makeindex794\renewcommand\makeindex{\NAT@makeindex795\renewcommand\NAT@index{\@bsphack\begingroup796\def~{\string~}\@wrindex{\NAT@idxtxt}}}797\newcommand\NAT@idxtxt{\NAT@name\NAT@spacechar\NAT@open\NAT@date\NAT@close}798\@ifxundefined\@indexfile{}{\let\NAT@makeindex\relax\makeindex}799\newif\ifciteindex \citeindexfalse800\newcommand\citeindextype{default}801\newcommand\NAT@index@alt{{\let\protect=\noexpand\let~\relax802\xdef\NAT@temp{\NAT@idxtxt}}\expandafter\NAT@exp\NAT@temp\@nil}803\newcommand\NAT@exp{}804\def\NAT@exp#1\@nil{\index[\citeindextype]{#1}}805806\AtBeginDocument{%807\@ifpackageloaded{index}{\let\NAT@index=\NAT@index@alt}{}}808\newcommand\NAT@ifcmd{\futurelet\NAT@temp\NAT@ifxcmd}809\newcommand\NAT@ifxcmd{\ifx\NAT@temp\relax\else\expandafter\NAT@bare\fi}810\def\NAT@bare#1(#2)#3(@)#4\@nil#5{%811\if @#2812\expandafter\NAT@apalk#1, , \@nil{#5}%813\else814\NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{#3}{#5}%815\fi816}817\newcommand\NAT@wrout[5]{%818\if@filesw819{\let\protect\noexpand\let~\relax820\immediate821\write\@auxout{\string\bibcite{#5}{{#1}{#2}{{#3}}{{#4}}}}}\fi822\ignorespaces}823\def\NAT@noname{{}}824\renewcommand\bibitem{\@ifnextchar[{\@lbibitem}{\@lbibitem[]}}%825\let\NAT@bibitem@first@sw\@secondoftwo826\def\@lbibitem[#1]#2{%827\if\relax\@extra@b@citeb\relax\else828\@ifundefined{br@#2\@extra@b@citeb}{}{%829\@namedef{br@#2}{\@nameuse{br@#2\@extra@b@citeb}}%830}%831\fi832\@ifundefined{b@#2\@extra@b@citeb}{%833\def\NAT@num{}%834}{%835\NAT@parse{#2}%836}%837\def\NAT@tmp{#1}%838\expandafter\let\expandafter\bibitemOpen\csname NAT@b@open@#2\endcsname839\expandafter\let\expandafter\bibitemShut\csname NAT@b@shut@#2\endcsname840\@ifnum{\NAT@merge>\@ne}{%841\NAT@bibitem@first@sw{%842\@firstoftwo843}{%844\@ifundefined{NAT@b*@#2}{%845\@firstoftwo846}{%847\expandafter\def\expandafter\NAT@num\expandafter{\the\c@NAT@ctr}%848\@secondoftwo849}%850}%851}{%852\@firstoftwo853}%854{%855\global\advance\c@NAT@ctr\@ne856\@ifx{\NAT@tmp\@empty}{\@firstoftwo}{%857\@secondoftwo858}%859{%860\expandafter\def\expandafter\NAT@num\expandafter{\the\c@NAT@ctr}%861\global\NAT@stdbsttrue862}{}%863\bibitem@fin864\item[\hfil\NAT@anchor{#2}{\NAT@num}]%865\global\let\NAT@bibitem@first@sw\@secondoftwo866\NAT@bibitem@init867}%868{%869\NAT@anchor{#2}{}%870\NAT@bibitem@cont871\bibitem@fin872}%873\@ifx{\NAT@tmp\@empty}{%874\NAT@wrout{\the\c@NAT@ctr}{}{}{}{#2}%875}{%876\expandafter\NAT@ifcmd\NAT@tmp(@)(@)\@nil{#2}%877}%878}%879\def\bibitem@fin{%880\@ifxundefined\@bibstop{}{\csname bibitem@\@bibstop\endcsname}%881}%882\def\NAT@bibitem@init{%883\let\@bibstop\@undefined884}%885\def\NAT@bibitem@cont{%886\let\bibitem@Stop\bibitemStop887\let\bibitem@NoStop\bibitemContinue888}%889\def\BibitemOpen{%890\bibitemOpen891}%892\def\BibitemShut#1{%893\bibitemShut894\def\@bibstop{#1}%895\let\bibitem@Stop\bibitemStop896\let\bibitem@NoStop\bibitemNoStop897}%898\def\bibitemStop{}%899\def\bibitemNoStop{.\spacefactor\@mmm\space}%900\def\bibitemContinue{\spacefactor\@mmm\space}%901\mathchardef\@mmm=3000 %902\providecommand{\bibAnnote}[3]{%903\BibitemShut{#1}%904\def\@tempa{#3}\@ifx{\@tempa\@empty}{}{%905\begin{quotation}\noindent906\textsc{Key:}\ #2\\\textsc{Annotation:}\ \@tempa907\end{quotation}%908}%909}%910\providecommand{\bibAnnoteFile}[2]{%911\IfFileExists{#2}{%912\bibAnnote{#1}{#2}{\input{#2}}%913}{%914\bibAnnote{#1}{#2}{}%915}%916}%917\let\bibitemOpen\relax918\let\bibitemShut\relax919\def\bibfield{\@ifnum{\NAT@merge>\tw@}{\@bibfield}{\@secondoftwo}}%920\def\@bibfield#1#2{%921\begingroup922\let\Doi\@gobble923\let\bibinfo\relax924\let\restore@protect\@empty925\protected@edef\@tempa{#2}%926\aftergroup\def\aftergroup\@tempa927\expandafter\endgroup\expandafter{\@tempa}%928\expandafter\@ifx\expandafter{\csname @bib#1\endcsname\@tempa}{%929\expandafter\let\expandafter\@tempa\csname @bib@X#1\endcsname930}{%931\expandafter\let\csname @bib#1\endcsname\@tempa932\expandafter\let\expandafter\@tempa\csname @bib@Y#1\endcsname933}%934\@ifx{\@tempa\relax}{\let\@tempa\@firstofone}{}%935\@tempa{#2}%936}%937\def\bibinfo#1{%938\expandafter\let\expandafter\@tempa\csname bibinfo@X@#1\endcsname939\@ifx{\@tempa\relax}{\@firstofone}{\@tempa}%940}%941\def\@bib@Xauthor#1{\let\@bib@Xjournal\@gobble}%942\def\@bib@Xjournal#1{\begingroup\let\bibinfo@X@journal\@bib@Z@journal#1\endgroup}%943\def\@bibibid@#1{\textit{ibid}.}%944\appdef\NAT@bibitem@init{%945\let\@bibauthor \@empty946\let\@bibjournal \@empty947\let\@bib@Z@journal\@bibibid@948}%949\ifx\SK@lbibitem\@undefined\else950\let\SK@lbibitem\@lbibitem951\def\@lbibitem[#1]#2{%952\SK@lbibitem[#1]{#2}\SK@\SK@@label{#2}\ignorespaces}\fi953\newif\ifNAT@stdbst \NAT@stdbstfalse954955\AtEndDocument{%956\ifNAT@stdbst\if@filesw957\immediate\write\@auxout{%958\string\providecommand\string\NAT@force@numbers{}%959\string\NAT@force@numbers960}%961\fi\fi962}963\newcommand\NAT@force@numbers{%964\ifNAT@numbers\else965\PackageError{natbib}{Bibliography not compatible with author-year966citations.\MessageBreak967Press <return> to continue in numerical citation style}968{Check the bibliography entries for non-compliant syntax,\MessageBreak969or select author-year BibTeX style, e.g. plainnat}%970\global\NAT@numberstrue\fi}971972\providecommand\bibcite{}973\renewcommand\bibcite[2]{%974\@ifundefined{b@#1\@extra@binfo}{\relax}{%975\NAT@citemultiple976\PackageWarningNoLine{natbib}{Citation `#1' multiply defined}%977}%978\global\@namedef{b@#1\@extra@binfo}{#2}%979}%980\AtEndDocument{\NAT@swatrue\let\bibcite\NAT@testdef}981\newcommand\NAT@testdef[2]{%982\def\NAT@temp{#2}%983\expandafter \ifx \csname b@#1\@extra@binfo\endcsname\NAT@temp984\else985\ifNAT@swa \NAT@swafalse986\PackageWarningNoLine{natbib}{%987Citation(s) may have changed.\MessageBreak988Rerun to get citations correct%989}%990\fi991\fi992}%993\newcommand\NAT@apalk{}994\def\NAT@apalk#1, #2, #3\@nil#4{%995\if\relax#2\relax996\global\NAT@stdbsttrue997\NAT@wrout{#1}{}{}{}{#4}%998\else999\NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{}{#4}%1000\fi1001}%1002\newcommand\citeauthoryear{}1003\def\citeauthoryear#1#2#3(@)(@)\@nil#4{%1004\if\relax#3\relax1005\NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{}{#4}%1006\else1007\NAT@wrout{\the\c@NAT@ctr}{#3}{#2}{#1}{#4}%1008\fi1009}%1010\newcommand\citestarts{\NAT@open}%1011\newcommand\citeends{\NAT@close}%1012\newcommand\betweenauthors{and}%1013\newcommand\astroncite{}1014\def\astroncite#1#2(@)(@)\@nil#3{%1015\NAT@wrout{\the\c@NAT@ctr}{#2}{#1}{}{#3}%1016}%1017\newcommand\citename{}1018\def\citename#1#2(@)(@)\@nil#3{\expandafter\NAT@apalk#1#2, \@nil{#3}}1019\newcommand\harvarditem[4][]{%1020\if\relax#1\relax1021\bibitem[#2(#3)]{#4}%1022\else1023\bibitem[#1(#3)#2]{#4}%1024\fi1025}%1026\newcommand\harvardleft{\NAT@open}1027\newcommand\harvardright{\NAT@close}1028\newcommand\harvardyearleft{\NAT@open}1029\newcommand\harvardyearright{\NAT@close}1030\AtBeginDocument{\providecommand{\harvardand}{and}}1031\newcommand\harvardurl[1]{\textbf{URL:} \textit{#1}}1032\providecommand\bibsection{}1033\@ifundefined{chapter}{%1034\renewcommand\bibsection{%1035\section*{\refname\@mkboth{\MakeUppercase{\refname}}{\MakeUppercase{\refname}}}%1036}%1037}{%1038\@ifxundefined\NAT@sectionbib{%1039\renewcommand\bibsection{%1040\chapter*{\bibname\@mkboth{\MakeUppercase{\bibname}}{\MakeUppercase{\bibname}}}%1041}%1042}{%1043\renewcommand\bibsection{%1044\section*{\bibname\ifx\@mkboth\@gobbletwo\else\markright{\MakeUppercase{\bibname}}\fi}%1045}%1046}%1047}%1048\@ifclassloaded{amsart}{\renewcommand\bibsection{\section*{\refname}}}{}%1049\@ifclassloaded{amsbook}{\renewcommand\bibsection{\chapter*{\bibname}}}{}%1050\@ifxundefined\bib@heading{}{\let\bibsection\bib@heading}%1051\newcounter{NAT@ctr}1052\renewenvironment{thebibliography}[1]{%1053\bibsection1054\parindent\z@1055\bibpreamble1056\bibfont1057\list{\@biblabel{\the\c@NAT@ctr}}{\@bibsetup{#1}\global\c@NAT@ctr\z@}%1058\ifNAT@openbib1059\renewcommand\newblock{\par}%1060\else1061\renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%1062\fi1063\sloppy\clubpenalty4000\widowpenalty40001064\sfcode`\.\@m1065\let\NAT@bibitem@first@sw\@firstoftwo1066\let\citeN\cite \let\shortcite\cite1067\let\citeasnoun\cite1068}{%1069\bibitem@fin1070\bibpostamble1071\def\@noitemerr{%1072\PackageWarning{natbib}{Empty `thebibliography' environment}%1073}%1074\endlist1075\bibcleanup1076}%1077\let\bibfont\@empty1078\let\bibpreamble\@empty1079\let\bibpostamble\@empty1080\def\bibcleanup{\vskip-\lastskip}%1081\providecommand\reset@font{\relax}1082\providecommand\bibname{Bibliography}1083\providecommand\refname{References}1084\newcommand\NAT@citeundefined{\gdef \NAT@undefined {%1085\PackageWarningNoLine{natbib}{There were undefined citations}}}1086\let \NAT@undefined \relax1087\newcommand\NAT@citemultiple{\gdef \NAT@multiple {%1088\PackageWarningNoLine{natbib}{There were multiply defined citations}}}1089\let \NAT@multiple \relax1090\AtEndDocument{\NAT@undefined\NAT@multiple}1091\providecommand\@mkboth[2]{}1092\providecommand\MakeUppercase{\uppercase}1093\providecommand{\@extra@b@citeb}{}1094\gdef\@extra@binfo{}1095\def\NAT@anchor#1#2{%1096\hyper@natanchorstart{#1\@extra@b@citeb}%1097\def\@tempa{#2}\@ifx{\@tempa\@empty}{}{\@biblabel{#2}}%1098\hyper@natanchorend1099}%1100\providecommand\hyper@natanchorstart[1]{}%1101\providecommand\hyper@natanchorend{}%1102\providecommand\hyper@natlinkstart[1]{}%1103\providecommand\hyper@natlinkend{}%1104\providecommand\hyper@natlinkbreak[2]{#1}%1105\AtBeginDocument{%1106\@ifpackageloaded{babel}{%1107\let\org@@citex\@citex}{}}1108\providecommand\@safe@activestrue{}%1109\providecommand\@safe@activesfalse{}%11101111\newcommand\NAT@sort@cites[1]{%1112\let\NAT@cite@list\@empty1113\@for\@citeb:=#1\do{\expandafter\NAT@star@cite\@citeb\@@}%1114\if@filesw1115\expandafter\immediate\expandafter\write\expandafter\@auxout1116\expandafter{\expandafter\string\expandafter\citation\expandafter{\NAT@cite@list}}%1117\fi1118\@ifnum{\NAT@sort>\z@}{%1119\expandafter\NAT@sort@cites@\expandafter{\NAT@cite@list}%1120}{}%1121}%1122\def\NAT@star@cite{%1123\let\NAT@star@sw\@secondoftwo1124\@ifnum{\NAT@merge>\z@}{%1125\@ifnextchar*{%1126\let\NAT@star@sw\@firstoftwo1127\NAT@star@cite@star1128}{%1129\NAT@star@cite@nostar1130}%1131}{%1132\NAT@star@cite@noextension1133}%1134}%1135\def\NAT@star@cite@star*{%1136\NAT@star@cite@nostar1137}%1138\def\NAT@star@cite@nostar{%1139\let\nat@keyopt@open\@empty1140\let\nat@keyopt@shut\@empty1141\@ifnextchar[{\NAT@star@cite@pre}{\NAT@star@cite@pre[]}%1142}%1143\def\NAT@star@cite@pre[#1]{%1144\def\nat@keyopt@open{#1}%1145\@ifnextchar[{\NAT@star@cite@post}{\NAT@star@cite@post[]}%1146}%1147\def\NAT@star@cite@post[#1]#2\@@{%1148\def\nat@keyopt@shut{#1}%1149\NAT@star@sw{\expandafter\global\expandafter\let\csname NAT@b*@#2\endcsname\@empty}{}%1150\NAT@cite@list@append{#2}%1151}%1152\def\NAT@star@cite@noextension#1\@@{%1153\let\nat@keyopt@open\@empty1154\let\nat@keyopt@shut\@empty1155\NAT@cite@list@append{#1}%1156}%1157\def\NAT@cite@list@append#1{%1158\edef\@citeb{\@firstofone#1\@empty}%1159\if@filesw\@ifxundefined\@cprwrite{}{\expandafter\@cprwrite\@citeb=}\fi1160\if\relax\nat@keyopt@open\relax\else1161\global\expandafter\let\csname NAT@b@open@\@citeb\endcsname\nat@keyopt@open1162\fi1163\if\relax\nat@keyopt@shut\relax\else1164\global\expandafter\let\csname NAT@b@shut@\@citeb\endcsname\nat@keyopt@shut1165\fi1166\toks@\expandafter{\NAT@cite@list}%1167\ifx\NAT@cite@list\@empty1168\@temptokena\expandafter{\@citeb}%1169\else1170\@temptokena\expandafter{\expandafter,\@citeb}%1171\fi1172\edef\NAT@cite@list{\the\toks@\the\@temptokena}%1173}%1174\newcommand\NAT@sort@cites@[1]{%1175\count@\z@1176\@tempcntb\m@ne1177\let\@celt\delimiter1178\def\NAT@num@list{}%1179\let\NAT@cite@list\@empty1180\let\NAT@nonsort@list\@empty1181\@for \@citeb:=#1\do{\NAT@make@cite@list}%1182\ifx\NAT@nonsort@list\@empty\else1183\protected@edef\NAT@cite@list{\NAT@cite@list\NAT@nonsort@list}%1184\fi1185\ifx\NAT@cite@list\@empty\else1186\protected@edef\NAT@cite@list{\expandafter\NAT@xcom\NAT@cite@list @@}%1187\fi1188}%1189\def\NAT@make@cite@list{%1190\advance\count@\@ne1191\@safe@activestrue1192\edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%1193\@safe@activesfalse1194\@ifundefined{b@\@citeb\@extra@b@citeb}%1195{\def\NAT@num{A}}%1196{\NAT@parse{\@citeb}}%1197\NAT@ifcat@num\NAT@num1198{\@tempcnta\NAT@num \relax1199\@ifnum{\@tempcnta<\@tempcntb}{%1200\let\NAT@@cite@list=\NAT@cite@list1201\let\NAT@cite@list\@empty1202\begingroup\let\@celt=\NAT@celt\NAT@num@list\endgroup1203\protected@edef\NAT@num@list{%1204\expandafter\NAT@num@celt \NAT@num@list \@gobble @%1205}%1206}{%1207\protected@edef\NAT@num@list{\NAT@num@list \@celt{\NAT@num}}%1208\protected@edef\NAT@cite@list{\NAT@cite@list\@citeb,}%1209\@tempcntb\@tempcnta1210}%1211}%1212{\protected@edef\NAT@nonsort@list{\NAT@nonsort@list\@citeb,}}%1213}%1214\def\NAT@celt#1{%1215\@ifnum{#1>\@tempcnta}{%1216\xdef\NAT@cite@list{\NAT@cite@list\@citeb,\NAT@@cite@list}%1217\let\@celt\@gobble1218}{%1219\expandafter\def@NAT@cite@lists\NAT@@cite@list\@@1220}%1221}%1222\def\NAT@num@celt#1#2{%1223\ifx#1\@celt1224\@ifnum{#2>\@tempcnta}{%1225\@celt{\number\@tempcnta}%1226\@celt{#2}%1227}{%1228\@celt{#2}%1229\expandafter\NAT@num@celt1230}%1231\fi1232}%1233\def\def@NAT@cite@lists#1,#2\@@{%1234\xdef\NAT@cite@list{\NAT@cite@list#1,}%1235\xdef\NAT@@cite@list{#2}%1236}%1237\def\NAT@nextc#1,#2@@{#1,}1238\def\NAT@restc#1,#2{#2}1239\def\NAT@xcom#1,@@{#1}1240\InputIfFileExists{natbib.cfg}1241{\typeout{Local config file natbib.cfg used}}{}1242%%1243%% <<<<< End of generated file <<<<<<1244%%1245%% End of file `natbib.sty'.124612471248