%%
%% This is file `babel.def',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% babel.dtx  (with options: `core')
%% 
%% This is a generated file.
%% 
%% Copyright 1989-2001 Johannes L. Braams and any individual authors
%% listed elsewhere in this file.  All rights reserved.
%% 
%% This file is part of the Babel system release 3.7.
%% --------------------------------------------------
%% 
%% It may be distributed under the terms of the LaTeX Project Public
%% License, as described in lppl.txt in the base LaTeX distribution.
%% Either version 1.2 or, at your option, any later version.
%%
%% File 'babel.dtx'
%%\ProvidesFile{babel.dtx}[2001/03/01 v3.7h The Babel package]
%% Babel package for LaTeX2e.
%% Copyright (C) 1989 -- 2001 by Johannes Braams,
%%                            TeXniek
%%                            all rights reserved.
%% Please report errors to: J.L. Braams
%%                          babel@braams.cistron.nl
\ifx\bbl@afterfi\@undefined
\else
  \bbl@afterfi\endinput
\fi
\ifx\ProvidesFile\@undefined
  \def\ProvidesFile#1[#2 #3 #4]{%
    \wlog{File: #1 #4 #3 <#2>}%
    \let\ProvidesFile\@undefined
    }
\fi
\ProvidesFile{babel.def}
                [2001/03/01 v3.7h %
         Babel common definitions]
\ifx\AtBeginDocument\@undefined
  \input plain.def\relax
\fi
\ifx\iflanguage\@undefined
  \input switch.def\relax
\fi
\AtEndOfPackage{\edef\latinencoding{\cf@encoding}}
\AtBeginDocument{%
  \gdef\latinencoding{OT1}%
  \ifx\cf@encoding\bbl@t@one
    \xdef\latinencoding{\bbl@t@one}%
  \else
    \@ifl@aded{def}{t1enc}{\xdef\latinencoding{\bbl@t@one}}{}%
  \fi
  }
\DeclareRobustCommand{\latintext}{%
  \fontencoding{\latinencoding}\selectfont
  \def\encodingdefault{\latinencoding}}
\DeclareRobustCommand{\textlatin}[1]{{\latintext #1}}
\def\LdfInit#1#2{%
  \chardef\atcatcode=\catcode`\@
  \catcode`\@=11\relax
  \let\bbl@tempa\relax
  \expandafter\if\expandafter\@backslashchar
                 \expandafter\@car\string#2\@nil
    \ifx#2\@undefined
    \else
      \def\bbl@tempa{\ldf@quit{#1}}
    \fi
  \else
    \expandafter\ifx\csname#2\endcsname\relax
    \else
      \def\bbl@tempa{\ldf@quit{#1}}
    \fi
  \fi
  \bbl@tempa
  \ifx\originalTeX\@undefined
    \let\originalTeX\@empty
  \else
    \originalTeX
  \fi}
\def\ldf@quit#1{%
  \expandafter\main@language\expandafter{#1}%
  \catcode`\@=\atcatcode \let\atcatcode\relax
  \endinput
}
\def\ldf@finish#1{%
  \loadlocalcfg{#1}%
  \expandafter\main@language\expandafter{#1}%
  \catcode`\@=\atcatcode \let\atcatcode\relax
  }
\@onlypreamble\LdfInit
\@onlypreamble\ldf@quit
\@onlypreamble\ldf@finish
\def\main@language#1{%
  \def\bbl@main@language{#1}%
  \let\languagename\bbl@main@language
  \language=\csname l@\languagename\endcsname\relax
  }
\ifx\l@english\@undefined
  \let\l@english\z@
\fi
\main@language{english}
\AtBeginDocument{%
  \expandafter\selectlanguage\expandafter{\bbl@main@language}}
\def\bbl@add@special#1{\begingroup
    \def\do{\noexpand\do\noexpand}%
    \def\@makeother{\noexpand\@makeother\noexpand}%
    \edef\x{\endgroup
      \def\noexpand\dospecials{\dospecials\do#1}%
      \expandafter\ifx\csname @sanitize\endcsname\relax \else
        \def\noexpand\@sanitize{\@sanitize\@makeother#1}%
      \fi}%
  \x}
\def\bbl@remove@special#1{\begingroup
    \def\x##1##2{\ifnum`#1=`##2\noexpand\@empty
                 \else\noexpand##1\noexpand##2\fi}%
    \def\do{\x\do}%
    \def\@makeother{\x\@makeother}%
    \edef\x{\endgroup
      \def\noexpand\dospecials{\dospecials}%
      \expandafter\ifx\csname @sanitize\endcsname\relax \else
        \def\noexpand\@sanitize{\@sanitize}%
      \fi}%
  \x}
\long\def\bbl@afterelse#1\else#2\fi{\fi#1}
\long\def\bbl@afterfi#1\fi{\fi#1}
\def\initiate@active@char#1{%
  \expandafter\ifx\csname active@char\string##1\endcsname\relax
    \bbl@afterfi{\@initiate@active@char{#1}}%
  \fi}
\begingroup
  \catcode`\~\active
  \def\x{\endgroup
    \def\@initiate@active@char##1{%
      \ifcat\noexpand##1\noexpand~\relax
        \@ifundefined{normal@char\string##1}{%
          \expandafter\let\csname normal@char\string##1\endcsname##1%
          \expandafter\gdef
            \expandafter##1%
            \expandafter{%
              \expandafter\active@prefix\expandafter##1%
              \csname normal@char\string##1\endcsname}}{}%
      \else
        \@activated{##1}%
        \@namedef{normal@char\string##1}{##1}%
        \ifx##1'%
          \let\prim@s\bbl@prim@s
          \@namedef{normal@char\string##1}{%
            \textormath{##1}{^\bgroup\prim@s}}%
        \fi
        \ifx##1^%
          \gdef\bbl@act@caret{%
            \ifmmode
              \csname normal@char\string^\endcsname
            \else
              \bbl@afterfi
              {\if@safe@actives
                \bbl@afterelse\csname normal@char\string##1\endcsname
               \else
                \bbl@afterfi\csname user@active\string##1\endcsname
               \fi}%
            \fi}
        \fi
        \@ifpackagewith{babel}{KeepShorthandsActive}{}{%
          \edef\bbl@tempa{\catcode`\noexpand##1\the\catcode`##1}%
          \expandafter\AtEndOfPackage\expandafter{\bbl@tempa}}%
        \@tempcnta=\lccode`\~
        \lccode`~=`##1%
        \lowercase{%
          \catcode`~\active
          \expandafter\bbl@add@special
            \csname \string##1\endcsname
            \AtBeginDocument{%
              \catcode`##1\active
              \if@filesw
                \immediate\write\@mainaux{%
                  \string\catcode`##1\string\active}%
              \fi}%
          \expandafter\gdef
            \expandafter~%
            \expandafter{%
            \expandafter\active@prefix\expandafter##1%
            \csname normal@char\string##1\endcsname}}%
        \lccode`\~\@tempcnta
      \fi
      \ifx##1^%
        \@namedef{active@char\string##1}{\bbl@act@caret}%
      \else
        \@namedef{active@char\string##1}{%
          \if@safe@actives
            \bbl@afterelse\csname normal@char\string##1\endcsname
          \else
            \bbl@afterfi\csname user@active\string##1\endcsname
          \fi}%
      \fi
      \@namedef{user@active\string##1}{%
        \expandafter\ifx
        \csname \user@group @sh@\string##1@\endcsname
        \relax
          \bbl@afterelse\csname @sh@\string##1@sel\endcsname
        {user@active@arg\string##1}{language@active\string##1}%
        \else
          \bbl@afterfi\csname \user@group @sh@\string##1@\endcsname
        \fi}%
      \long\@namedef{user@active@arg\string##1}####1{%
        \expandafter\ifx
        \csname \user@group @sh@\string##1@\string####1@\endcsname
        \relax
          \bbl@afterelse
          \csname language@active\string##1\endcsname####1%
        \else
          \bbl@afterfi
          \csname \user@group @sh@\string##1@\string####1@%
          \endcsname
        \fi}%
      \@namedef{\user@group @sh@\string##1@@}{%
        \csname normal@char\string##1\endcsname}
      \@namedef{language@active\string##1}{%
        \expandafter\ifx
        \csname \language@group @sh@\string##1@\endcsname
        \relax
          \bbl@afterelse\csname @sh@\string##1@sel\endcsname
          {language@active@arg\string##1}{system@active\string##1}%
        \else
          \bbl@afterfi
          \csname \language@group @sh@\string##1@\endcsname
        \fi}%
      \long\@namedef{language@active@arg\string##1}####1{%
        \expandafter\ifx
        \csname \language@group @sh@\string##1@\string####1@\endcsname
        \relax
          \bbl@afterelse
          \csname system@active\string##1\endcsname####1%
        \else
          \bbl@afterfi
          \csname \language@group @sh@\string##1@\string####1@%
          \endcsname
        \fi}%
      \@namedef{system@active\string##1}{%
        \expandafter\ifx
        \csname \system@group @sh@\string##1@\endcsname
        \relax
          \bbl@afterelse\csname @sh@\string##1@sel\endcsname
          {system@active@arg\string##1}{normal@char\string##1}%
        \else
          \bbl@afterfi\csname \system@group @sh@\string##1@\endcsname
        \fi}%
      \long\@namedef{system@active@arg\string##1}####1{%
        \expandafter\ifx
        \csname \system@group @sh@\string##1@\string####1@\endcsname
        \relax
          \bbl@afterelse\csname normal@char\string##1\endcsname####1%
        \else
          \bbl@afterfi
          \csname \system@group @sh@\string##1@\string####1@\endcsname
        \fi}%
      \@namedef{user@sh@\string##1@\string\protect@}{%
        \csname user@active\string##1\endcsname}%
      }%
    }\x
\def\active@prefix#1{%
  \ifx\protect\@typeset@protect
  \else
    \bbl@afterfi\protect#1\@gobble
  \fi}
\newif\if@safe@actives
\@safe@activesfalse
\def\bbl@activate#1{%
  \expandafter\def
  \expandafter#1\expandafter{%
    \expandafter\active@prefix
    \expandafter#1\csname active@char\string#1\endcsname}%
}
\def\bbl@deactivate#1{%
  \expandafter\def
  \expandafter#1\expandafter{%
    \expandafter\active@prefix
    \expandafter#1\csname normal@char\string#1\endcsname}%
}
\def\bbl@firstcs#1#2{\csname#1\endcsname}
\def\bbl@scndcs#1#2{\csname#2\endcsname}
\def\declare@shorthand#1#2{\@decl@short{#1}#2\@nil}
\def\@decl@short#1#2#3\@nil#4{%
  \def\bbl@tempa{#3}%
  \ifx\bbl@tempa\@empty
    \expandafter\let\csname @sh@\string#2@sel\endcsname\bbl@scndcs
    \@namedef{#1@sh@\string#2@}{#4}%
  \else
    \expandafter\let\csname @sh@\string#2@sel\endcsname\bbl@firstcs
    \@namedef{#1@sh@\string#2@\string#3@}{#4}%
  \fi}
\def\textormath#1#2{%
  \ifmmode
    \bbl@afterelse#2%
  \else
    \bbl@afterfi#1%
  \fi}
\def\user@group{user}
\def\language@group{english}
\def\system@group{system}
\def\useshorthands#1{%
  \def\user@group{user}%
  \initiate@active@char{#1}%
  \bbl@activate{#1}}
\def\defineshorthand{\declare@shorthand{user}}
\def\languageshorthands#1{\def\language@group{#1}}
\def\aliasshorthand#1#2{%
  \@tempcnta\lccode`\~
  \lccode`~=`#2%
  \lowercase{\catcode`~\active\let~#1\catcode`#112\relax}%
  \lccode`\~\@tempcnta}
\newcommand*\shorthandon[1]{\bbl@switch@sh{on}#1\@nil}
\newcommand*\shorthandoff[1]{\bbl@switch@sh{off}#1\@nil}
\def\bbl@switch@sh#1#2#3\@nil{%
  \@ifundefined{active@char\string#2}{%
    \PackageError{babel}{%
      The character '\string #2' is not a shorthand character
      in \languagename}{%
      Maybe you made a typing mistake?\MessageBreak
      I will ignore your instruction}}{%
    \csname bbl@switch@sh@#1\endcsname#2}%
  \ifx#3\@empty\else
    \bbl@afterfi\bbl@switch@sh{#1}#3\@nil
  \fi}
\def\bbl@switch@sh@off#1{\catcode`#112\relax}
\begingroup
  \catcode`\~\active
  \def\x{\endgroup
    \def\bbl@switch@sh@on##1{%
      \lccode`~=`##1%
      \lowercase{%
        \catcode`~\active
        }%
      }%
    }
\x
\declare@shorthand{system}{"}{\csname normal@char\string"\endcsname}
\declare@shorthand{system}{'}{%
  \textormath{\csname normal@char\string'\endcsname}%
             {\sp\bgroup\prim@s}}
\declare@shorthand{system}{`}{\csname normal@char\string`\endcsname}
\def\bbl@prim@s{%
  \prime\futurelet\@let@token\bbl@pr@m@s}
\begingroup
  \catcode`\'\active\let'\relax
  \def\x{\endgroup
    \def\bbl@pr@m@s{%
      \ifx'\@let@token
        \expandafter\pr@@@s
      \else
        \ifx^\@let@token
          \expandafter\expandafter\expandafter\pr@@@t
        \else
          \egroup
        \fi
      \fi}%
    }
\x
\initiate@active@char{~}
\declare@shorthand{system}{~}{\leavevmode\nobreak\ }
\bbl@activate{~}
\expandafter\def\csname OT1dqpos\endcsname{127}
\expandafter\def\csname T1dqpos\endcsname{4}
\ifx\f@encoding\@undefined
  \def\f@encoding{OT1}
\fi
\newcommand\languageattribute[2]{%
  \expandafter\ifx\csname l@#1\endcsname\relax
    \@nolanerr{#1}%
  \else
    \@for\bbl@attr:=#2\do{%
      \ifx\bbl@known@attribs\@undefined
        \in@false
      \else
        \edef\bbl@tempa{\noexpand\in@{,#1-\bbl@attr,}%
          {,\bbl@known@attribs,}}%
        \bbl@tempa
      \fi
      \ifin@
        \PackageWarning{Babel}{%
          You have more than once selected the attribute
          '\bbl@attr'\MessageBreak for language #1}%
      \else
        \edef\bbl@tempa{%
          \noexpand\bbl@add@list\noexpand\bbl@known@attribs{#1-\bbl@attr}}%
        \bbl@tempa
        \edef\bbl@tempa{#1-\bbl@attr}%
        \expandafter\bbl@ifknown@ttrib\expandafter{\bbl@tempa}\bbl@attributes%
        {\csname#1@attr@\bbl@attr\endcsname}%
        {\@attrerr{#1}{\bbl@attr}}%
     \fi
      }
  \fi}
\@onlypreamble\languageattribute
  \newcommand*{\@attrerr}[2]{%
    \PackageError{babel}%
                 {The attribute #2 is unknown for language #1.}%
        {Your command will be ignored, type <return> to proceed}}
\def\bbl@declare@ttribute#1#2#3{%
  \bbl@add@list\bbl@attributes{#1-#2}%
  \expandafter\def\csname#1@attr@#2\endcsname{#3}%
  }
\def\bbl@ifattributeset#1#2#3#4{%
  \ifx\bbl@known@attribs\@undefined
    \in@false
  \else
    \edef\bbl@tempa{\noexpand\in@{,#1-#2,}%
      {,\bbl@known@attribs,}}%
    \bbl@tempa
  \fi
  \ifin@
    \bbl@afterelse#3%
  \else
    \bbl@afterfi#4%
  \fi
  }
\def\bbl@add@list#1#2{%
  \ifx#1\@undefined
    \def#1{#2}%
  \else
    \ifx#1\@empty
      \def#1{#2}%
    \else
      \edef#1{#1,#2}%
    \fi
  \fi
  }
\def\bbl@ifknown@ttrib#1#2{%
  \let\bbl@tempa\@secondoftwo
  \@for\bbl@tempb:=#2\do{%
    \expandafter\in@\expandafter{\expandafter,\bbl@tempb,}{,#1,}%
    \ifin@
      \let\bbl@tempa\@firstoftwo
    \else
    \fi}%
  \bbl@tempa
}
\def\bbl@clear@ttribs{%
  \ifx\bbl@attributes\@undefined\else
    \@for\bbl@tempa:=\bbl@attributes\do{%
      \expandafter\bbl@clear@ttrib\bbl@tempa.
      }%
    \let\bbl@attributes\@undefined
  \fi
  }
\def\bbl@clear@ttrib#1-#2.{%
  \expandafter\let\csname#1@attr@#2\endcsname\@undefined}
\AtBeginDocument{\bbl@clear@ttribs}
\def\babel@beginsave{\babel@savecnt\z@}
\newcount\babel@savecnt
\babel@beginsave
\def\babel@save#1{%
  \expandafter\let\csname babel@\number\babel@savecnt\endcsname #1\relax
  \begingroup
    \toks@\expandafter{\originalTeX \let#1=}%
    \edef\x{\endgroup
      \def\noexpand\originalTeX{\the\toks@ \expandafter\noexpand
         \csname babel@\number\babel@savecnt\endcsname\relax}}%
  \x
  \advance\babel@savecnt\@ne}
\def\babel@savevariable#1{\begingroup
    \toks@\expandafter{\originalTeX #1=}%
    \edef\x{\endgroup
      \def\noexpand\originalTeX{\the\toks@ \the#1\relax}}%
  \x}
\def\bbl@frenchspacing{%
  \ifnum\the\sfcode`\.=\@m
    \let\bbl@nonfrenchspacing\relax
  \else
    \frenchspacing
    \let\bbl@nonfrenchspacing\nonfrenchspacing
  \fi}
\let\bbl@nonfrenchspacing\nonfrenchspacing
\def\addto#1#2{%
  \ifx#1\@undefined
    \def#1{#2}%
  \else
    \ifx#1\relax
      \def#1{#2}%
    \else
      {\toks@\expandafter{#1#2}%
        \xdef#1{\the\toks@}}%
    \fi
  \fi
}
\def\bbl@t@one{T1}
\def\allowhyphens{%
  \ifx\cf@encoding\bbl@t@one\else\bbl@allowhyphens\fi}
\def\bbl@allowhyphens{\nobreak\hskip\z@skip}
\def\set@low@box#1{\setbox\tw@\hbox{,}\setbox\z@\hbox{#1}%
    \dimen\z@\ht\z@ \advance\dimen\z@ -\ht\tw@%
    \setbox\z@\hbox{\lower\dimen\z@ \box\z@}\ht\z@\ht\tw@ \dp\z@\dp\tw@}
\def\save@sf@q #1{\leavevmode
 \begingroup
  \edef\@SF{\spacefactor \the\spacefactor}#1\@SF
 \endgroup
}
\def\bbl@disc#1#2{%
  \nobreak\discretionary{#2-}{}{#1}\allowhyphens}
\ProvideTextCommand{\quotedblbase}{OT1}{%
  \save@sf@q{\set@low@box{\textquotedblright\/}%
    \box\z@\kern-.04em\allowhyphens}}
\ProvideTextCommandDefault{\quotedblbase}{%
  \UseTextSymbol{OT1}{\quotedblbase}}
\ProvideTextCommand{\quotesinglbase}{OT1}{%
  \save@sf@q{\set@low@box{\textquoteright\/}%
    \box\z@\kern-.04em\allowhyphens}}
\ProvideTextCommandDefault{\quotesinglbase}{%
  \UseTextSymbol{OT1}{\quotesinglbase}}
\ProvideTextCommand{\guillemotleft}{OT1}{%
  \ifmmode
    \ll
  \else
    \save@sf@q{\nobreak
      \raise.2ex\hbox{$\scriptscriptstyle\ll$}\allowhyphens}%
  \fi}
\ProvideTextCommand{\guillemotright}{OT1}{%
  \ifmmode
    \gg
  \else
    \save@sf@q{\nobreak
      \raise.2ex\hbox{$\scriptscriptstyle\gg$}\allowhyphens}%
  \fi}
\ProvideTextCommandDefault{\guillemotleft}{%
  \UseTextSymbol{OT1}{\guillemotleft}}
\ProvideTextCommandDefault{\guillemotright}{%
  \UseTextSymbol{OT1}{\guillemotright}}
\ProvideTextCommand{\guilsinglleft}{OT1}{%
  \ifmmode
    <%
  \else
    \save@sf@q{\nobreak
      \raise.2ex\hbox{$\scriptscriptstyle<$}\allowhyphens}%
  \fi}
\ProvideTextCommand{\guilsinglright}{OT1}{%
  \ifmmode
    >%
  \else
    \save@sf@q{\nobreak
      \raise.2ex\hbox{$\scriptscriptstyle>$}\allowhyphens}%
  \fi}
\ProvideTextCommandDefault{\guilsinglleft}{%
  \UseTextSymbol{OT1}{\guilsinglleft}}
\ProvideTextCommandDefault{\guilsinglright}{%
  \UseTextSymbol{OT1}{\guilsinglright}}
\DeclareTextCommand{\ij}{OT1}{%
  \allowhyphens i\kern-0.02em j\allowhyphens}
\DeclareTextCommand{\IJ}{OT1}{%
  \allowhyphens I\kern-0.02em J\allowhyphens}
\DeclareTextCommand{\ij}{T1}{\char188}
\DeclareTextCommand{\IJ}{T1}{\char156}
\ProvideTextCommandDefault{\ij}{%
  \UseTextSymbol{OT1}{\ij}}
\ProvideTextCommandDefault{\IJ}{%
  \UseTextSymbol{OT1}{\IJ}}
\def\crrtic@{\hrule height0.1ex width0.3em}
\def\crttic@{\hrule height0.1ex width0.33em}
\def\ddj@{%
  \setbox0\hbox{d}\dimen@=\ht0
  \advance\dimen@1ex
  \dimen@.45\dimen@
  \dimen@ii\expandafter\rem@pt\the\fontdimen\@ne\font\dimen@
  \advance\dimen@ii.5ex
  \leavevmode\rlap{\raise\dimen@\hbox{\kern\dimen@ii\vbox{\crrtic@}}}}
\def\DDJ@{%
  \setbox0\hbox{D}\dimen@=.55\ht0
  \dimen@ii\expandafter\rem@pt\the\fontdimen\@ne\font\dimen@
  \advance\dimen@ii.15ex %            correction for the dash position
  \advance\dimen@ii-.15\fontdimen7\font %     correction for cmtt font
  \dimen\thr@@\expandafter\rem@pt\the\fontdimen7\font\dimen@
  \leavevmode\rlap{\raise\dimen@\hbox{\kern\dimen@ii\vbox{\crttic@}}}}
\DeclareTextCommand{\dj}{OT1}{\ddj@ d}
\DeclareTextCommand{\DJ}{OT1}{\DDJ@ D}
\ProvideTextCommandDefault{\dj}{%
  \UseTextSymbol{OT1}{\dj}}
\ProvideTextCommandDefault{\DJ}{%
  \UseTextSymbol{OT1}{\DJ}}
\DeclareTextCommand{\SS}{OT1}{SS}
\ProvideTextCommandDefault{\SS}{\UseTextSymbol{OT1}{\SS}}
\DeclareRobustCommand{\glq}{%
  \textormath{\quotesinglbase}{\mbox{\quotesinglbase}}}
\ProvideTextCommand{\grq}{T1}{%
  \textormath{\textquoteleft}{\mbox{\textquoteleft}}}
\ProvideTextCommand{\grq}{OT1}{%
  \save@sf@q{\kern-.0125em%
  \textormath{\textquoteleft}{\mbox{\textquoteleft}}%
  \kern.07em\relax}}
\ProvideTextCommandDefault{\grq}{\UseTextSymbol{OT1}\grq}
\DeclareRobustCommand{\glqq}{%
  \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
\ProvideTextCommand{\grqq}{T1}{%
  \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}}
\ProvideTextCommand{\grqq}{OT1}{%
  \save@sf@q{\kern-.07em%
  \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}%
  \kern.07em\relax}}
\ProvideTextCommandDefault{\grqq}{\UseTextSymbol{OT1}\grqq}
\DeclareRobustCommand{\flq}{%
  \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}}
\DeclareRobustCommand{\frq}{%
  \textormath{\guilsinglright}{\mbox{\guilsinglright}}}
\DeclareRobustCommand{\flqq}{%
  \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
\DeclareRobustCommand{\frqq}{%
  \textormath{\guillemotright}{\mbox{\guillemotright}}}
\def\umlauthigh{%
  \def\bbl@umlauta##1{{%
      \expandafter\accent\csname\f@encoding dqpos\endcsname
      ##1\allowhyphens}}%
  \let\bbl@umlaute\bbl@umlauta}
\def\umlautlow{%
  \def\bbl@umlauta{\protect\lower@umlaut}}
\def\umlautelow{%
  \def\bbl@umlaute{\protect\lower@umlaut}}
\umlauthigh
\expandafter\ifx\csname U@D\endcsname\relax
  \csname newdimen\endcsname\U@D
\fi
\def\lower@umlaut#1{%
  {\U@D 1ex%
  {\setbox\z@\hbox{%
      \expandafter\char\csname\f@encoding dqpos\endcsname}%
    \dimen@ -.45ex\advance\dimen@\ht\z@
  \ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}%
  \expandafter\accent\csname\f@encoding dqpos\endcsname
  \fontdimen5\font\U@D #1}}
\AtBeginDocument{%
  \DeclareTextCompositeCommand{\"}{OT1}{a}{\bbl@umlauta{a}}%
  \DeclareTextCompositeCommand{\"}{OT1}{e}{\bbl@umlaute{e}}%
  \DeclareTextCompositeCommand{\"}{OT1}{i}{\bbl@umlaute{\i}}%
  \DeclareTextCompositeCommand{\"}{OT1}{\i}{\bbl@umlaute{\i}}%
  \DeclareTextCompositeCommand{\"}{OT1}{o}{\bbl@umlauta{o}}%
  \DeclareTextCompositeCommand{\"}{OT1}{u}{\bbl@umlauta{u}}%
  \DeclareTextCompositeCommand{\"}{OT1}{A}{\bbl@umlauta{A}}%
  \DeclareTextCompositeCommand{\"}{OT1}{E}{\bbl@umlaute{E}}%
  \DeclareTextCompositeCommand{\"}{OT1}{I}{\bbl@umlaute{I}}%
  \DeclareTextCompositeCommand{\"}{OT1}{O}{\bbl@umlauta{O}}%
  \DeclareTextCompositeCommand{\"}{OT1}{U}{\bbl@umlauta{U}}%
}
{\def\format{lplain}
\ifx\fmtname\format
\else
  \def\format{LaTeX2e}
  \ifx\fmtname\format
  \else
    \aftergroup\endinput
  \fi
\fi}
\def\bbl@redefine#1{%
  \edef\bbl@tempa{\expandafter\@gobble\string#1}%
  \expandafter\let\csname org@\bbl@tempa\endcsname#1
  \expandafter\def\csname\bbl@tempa\endcsname}
\@onlypreamble\bbl@redefine
\def\bbl@redefine@long#1{%
  \edef\bbl@tempa{\expandafter\@gobble\string#1}%
  \expandafter\let\csname org@\bbl@tempa\endcsname#1
  \expandafter\long\expandafter\def\csname\bbl@tempa\endcsname}
\@onlypreamble\bbl@redefine@long
\def\bbl@redefinerobust#1{%
  \edef\bbl@tempa{\expandafter\@gobble\string#1}%
  \expandafter\ifx\csname \bbl@tempa\space\endcsname\relax
    \expandafter\let\csname org@\bbl@tempa\endcsname#1
    \expandafter\edef\csname\bbl@tempa\endcsname{\noexpand\protect
      \expandafter\noexpand\csname\bbl@tempa\space\endcsname}%
  \else
    \expandafter\let\csname org@\bbl@tempa\expandafter\endcsname
                    \csname\bbl@tempa\space\endcsname
  \fi
  \expandafter\def\csname\bbl@tempa\space\endcsname}
\@onlypreamble\bbl@redefinerobust
\def\@newl@bel#1#2#3{%
  {%
    \@safe@activestrue
    \@ifundefined{#1@#2}%
      \relax
      {%
        \gdef \@multiplelabels {%
          \@latex@warning@no@line{There were multiply-defined labels}}%
        \@latex@warning@no@line{Label `#2' multiply defined}%
      }%
    \global\@namedef{#1@#2}{#3}%
    }%
  }
\CheckCommand*\@testdef[3]{%
  \def\reserved@a{#3}%
  \expandafter \ifx \csname #1@#2\endcsname \reserved@a
  \else
    \@tempswatrue
  \fi}
\def\@testdef #1#2#3{%
  \@safe@activestrue
  \expandafter\let\expandafter\bbl@tempa\csname #1@#2\endcsname
  \def\bbl@tempb{#3}%
  \@safe@activesfalse
  \ifx\bbl@tempa\relax
  \else
    \edef\bbl@tempa{\expandafter\strip@prefix\meaning\bbl@tempa}%
  \fi
  \edef\bbl@tempb{\expandafter\strip@prefix\meaning\bbl@tempb}%
  \ifx \bbl@tempa \bbl@tempb
  \else
    \@tempswatrue
  \fi}
\bbl@redefinerobust\ref#1{%
  \@safe@activestrue\org@ref{#1}\@safe@activesfalse}
\bbl@redefinerobust\pageref#1{%
  \@safe@activestrue\org@pageref{#1}\@safe@activesfalse}
\bbl@redefine\@citex[#1]#2{%
  \@safe@activestrue\edef\@tempa{#2}\@safe@activesfalse
  \org@@citex[#1]{\@tempa}}
\AtBeginDocument{%
  \@ifpackageloaded{natbib}{%
    \def\@citex[#1][#2]#3{%
      \@safe@activestrue\edef\@tempa{#3}\@safe@activesfalse
      \org@@citex[#1][#2]{\@tempa}}%
  }{}}
\AtBeginDocument{%
  \@ifpackageloaded{cite}{%
    \def\@citex[#1]#2{%
      \@safe@activestrue\org@@citex[#1]{#2}\@safe@activesfalse}%
    }{}}
\bbl@redefine\nocite#1{%
  \@safe@activestrue\org@nocite{#1}\@safe@activesfalse}
\bbl@redefine\bibcite{%
  \bbl@cite@choice
  \bibcite}
\def\bbl@bibcite#1#2{%
  \org@bibcite{#1}{\@safe@activesfalse#2}}
\def\bbl@cite@choice{%
  \global\let\bibcite\bbl@bibcite
  \@ifpackageloaded{natbib}{\global\let\bibcite\org@bibcite}{}%
  \@ifpackageloaded{cite}{\global\let\bibcite\org@bibcite}{}%
  \global\let\bbl@cite@choice\relax
  }
\AtBeginDocument{\bbl@cite@choice}
\bbl@redefine\@bibitem#1{%
  \@safe@activestrue\org@@bibitem{#1}\@safe@activesfalse}
\bbl@redefine\markright#1{%
  \toks@{#1}%
  \edef\bbl@tempa{%
    \noexpand\org@markright{%
      \noexpand\foreignlanguage{\languagename}{\the\toks@}}}%
  \bbl@tempa
}
\bbl@redefine\markboth#1#2{%
  \toks@{#1}\toks8{#2}%
  \edef\bbl@tempa{%
    \noexpand\org@markboth{%
      \noexpand\foreignlanguage{\languagename}{\the\toks@}}{%
      \noexpand\foreignlanguage{\languagename}{\the\toks8}}}%
  \bbl@tempa
}
\bbl@redefine\TeX{\textlatin{\org@TeX}}
\bbl@redefine\LaTeX{\textlatin{\org@LaTeX}}
\ifx\nfss@catcodes\@undefined
\else
  \addto\nfss@catcodes{%
    \@makeother\'%
    \@makeother\"%
    }
\fi
\ifx\loadlocalcfg\@undefined
  \def\loadlocalcfg#1{%
    \InputIfFileExists{#1.cfg}
           {\typeout{*************************************^^J%
                     * Local config file #1.cfg used^^J%
                     *}%
            }
           {}}
\fi
\ifx\@unexpandable@protect\@undefined
  \def\@unexpandable@protect{\noexpand\protect\noexpand}
  \long\def \protected@write#1#2#3{%
        \begingroup
         \let\thepage\relax
         #2%
         \let\protect\@unexpandable@protect
         \edef\reserved@a{\write#1{#3}}%
         \reserved@a
        \endgroup
        \if@nobreak\ifvmode\nobreak\fi\fi
  }
\fi
%%
%% \CharacterTable
%%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%%   Digits        \0\1\2\3\4\5\6\7\8\9
%%   Exclamation   \!     Double quote  \"     Hash (number) \#
%%   Dollar        \$     Percent       \%     Ampersand     \&
%%   Acute accent  \'     Left paren    \(     Right paren   \)
%%   Asterisk      \*     Plus          \+     Comma         \,
%%   Minus         \-     Point         \.     Solidus       \/
%%   Colon         \:     Semicolon     \;     Less than     \<
%%   Equals        \=     Greater than  \>     Question mark \?
%%   Commercial at \@     Left bracket  \[     Backslash     \\
%%   Right bracket \]     Circumflex    \^     Underscore    \_
%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%%   Right brace   \}     Tilde         \~}
\endinput
%%
%% End of file `babel.def'.
