%%
%% This is file `datetime.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% datetime.dtx  (with options: `datetime.sty,package')
%% 
%%  datetime.dtx
%%  Copyright 2015 Nicola Talbot
%% 
%%  This work may be distributed and/or modified under the
%%  conditions of the LaTeX Project Public License, either version 1.3
%%  of this license of (at your option) any later version.
%%  The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%%  and version 1.3 or later is part of all distributions of LaTeX
%%  version 2005/12/01 or later.
%% 
%%  This work has the LPPL maintenance status `maintained'.
%% 
%%  The Current Maintainer of this work is Nicola Talbot.
%% 
%%  This work consists of the files datetime.dtx and datetime.ins and the derived files datetime-defaults.sty, datetime.sty, dt-american.def, dt-australian.def, dt-austrian.def, dt-bahasa.def, dt-basque.def, dt-breton.def, dt-british.def, dt-bulgarian.def, dt-canadian.def, dt-catalan.def, dt-croatian.def, dt-czech.def, dt-danish.def, dt-dutch.def, dt-esperanto.def, dt-estonian.def, dt-finnish.def, dt-french.def, dt-galician.def, dt-german.def, dt-greek.def, dt-hebrew.def, dt-icelandic.def, dt-irish.def, dt-italian.def, dt-latin.def, dt-lsorbian.def, dt-magyar.def, dt-naustrian.def, dt-newzealand.def, dt-ngerman.def, dt-norsk.def, dt-polish.def, dt-portuges.def, dt-romanian.def, dt-russian.def, dt-samin.def, dt-scottish.def, dt-serbian.def, dt-slovak.def, dt-slovene.def, dt-spanish.def, dt-swedish.def, dt-turkish.def, dt-UKenglish.def, dt-ukraineb.def, dt-USenglish.def, dt-usorbian.def, dt-welsh.def, dt-lang.tex, dt-sampl.tex, datetime.perl.
%% 
%% \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         \~}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{datetime}[2015/03/20 v2.60 Date Time Package]
\RequirePackage{etoolbox}
\RequirePackage{fmtcount}
\@ifundefined{@FCmodulo}%
{%
  \let\@FCmodulo\@modulo
}{}
\RequirePackage{ifthen}
\RequirePackage{datetime-defaults}
\newif\if@dt@nodate
\@dt@nodatefalse
\newcommand{\dateseparator}{/}
\newif\if@dt@multilingual
  \@ifpackageloaded{babel}%
  {%
    \@dt@multilingualtrue
  }%
  {%
    \@ifpackageloaded{ngerman}%
    {\@dt@multilingualtrue}%
    {\@dt@multilingualfalse}%
  }
\DeclareRobustCommand*{\ordinaldate}[1]{%
  \if@dt@multilingual
    \DTloadDefIfNotLoadedButExists{\languagename}%
    \@ifundefined{ordinaldate\languagename}{#1}%
    {%
      \csname ordinaldate\languagename\endcsname{#1}%
    }%
  \else
    \ordinalnum{#1}%
  \fi
}
\newif\ifshowdow
\providecommand*{\formatdate}[3]{}
\newcount\@day
\newcount\@month
\newcount\@year
\DeclareRobustCommand*{\longdate}{%
  \renewcommand*{\formatdate}[3]{%
  \ifshowdow\dayofweekname{##1}{##2}{##3} \fi
  \@day=##1\relax\@month=##2\relax\@year=##3\relax
  \ordinaldate{\the\@day}\ \monthname[\@month], \the\@year}%
}
\DeclareRobustCommand*{\shortdate}{%
  \renewcommand*{\formatdate}[3]{%
  \ifshowdow\shortdayofweekname{##1}{##2}{##3} \fi
  \@day=##1\relax\@month=##2\relax\@year=##3\relax
  \ordinaldate{\the\@day}\ \shortmonthname[\@month], \the\@year}%
}
\let\twodigit\two@digits
\DeclareRobustCommand*{\yyyymmdddate}{%
\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\the\@year\dateseparator \twodigit\@month\dateseparator
\twodigit\@day}}
\DeclareRobustCommand*{\ddmmyyyydate}{%
\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\twodigit\@day\dateseparator \twodigit\@month\dateseparator
\the\@year}}
\DeclareRobustCommand*{\dmyyyydate}{%
\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\the\@day\dateseparator \the\@month\dateseparator \the\@year}}
\DeclareRobustCommand*{\ddmmyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
\@FCmodulo{\@dtctr}{100}%
\twodigit\@day\dateseparator \twodigit\@month\dateseparator
\twodigit\@dtctr}}
\DeclareRobustCommand*{\dmyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
\@FCmodulo{\@dtctr}{100}%
\the\@day\dateseparator \the\@month\dateseparator \twodigit\@dtctr}}
\DeclareRobustCommand*{\textdate}{%
\renewcommand*{\formatdate}[3]{%
\ifshowdow\dayofweekname{##1}{##2}{##3} the \fi
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\Ordinalstringnum{\@day}\ of \monthname[\@month],
\Numberstringnum{\@year}%
}}
\DeclareRobustCommand*{\usdate}{%
\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\monthname[\@month]\ \the\@day, \the\@year}}
\DeclareRobustCommand*{\mmddyyyydate}{%
\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\twodigit\@month\dateseparator \twodigit\@day\dateseparator
\the\@year}}
\DeclareRobustCommand*{\mdyyyydate}{%
\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\the\@month\dateseparator \the\@day\dateseparator \the\@year}}
\DeclareRobustCommand*{\mmddyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
\@FCmodulo{\@dtctr}{100}%
\twodigit\@month\dateseparator \twodigit\@day\dateseparator
\twodigit\@dtctr}}
\DeclareRobustCommand*{\mdyydate}{\renewcommand*{\formatdate}[3]{%
\@day=##1\relax\@month=##2\relax\@year=##3\relax
\@dtctr=\@year%
\@FCmodulo{\@dtctr}{100}%
\the\@month\dateseparator \the\@day\dateseparator \twodigit\@dtctr}}
\newcommand*{\newdate}[4]{%
\@ifundefined{date@#1@y}{%
\@namedef{date@#1@d}{#2}%
\@namedef{date@#1@m}{#3}%
\@namedef{date@#1@y}{#4}}{%
\PackageError{datetime}{Date `#1' already defined}{}}}
\newcommand*{\getdateyear}[1]{%
\@ifundefined{date@#1@y}{%
\PackageError{datetime}{Date `#1' not defined}{}}{%
\csname date@#1@y\endcsname}}
\newcommand*{\getdatemonth}[1]{%
\@ifundefined{date@#1@m}{%
\PackageError{datetime}{Date `#1' not defined}{}}{%
\csname date@#1@m\endcsname}}
\newcommand{\getdateday}[1]{%
\@ifundefined{date@#1@d}{%
\PackageError{datetime}{Date `#1' not defined}{}}{%
\csname date@#1@d\endcsname}}
\newcommand*{\displaydate}[1]{%
\@ifundefined{date@#1@y}{%
\PackageError{datetime}{Date `#1' not defined}{}}{%
\formatdate{\csname date@#1@d\endcsname}{%
\csname date@#1@m\endcsname}{%
\csname date@#1@y\endcsname}}}
\longdate
\showdowtrue
\providecommand*\THEDAY{\the\@day}
\providecommand*\THEMONTH{\the\@month}
\providecommand*\THEYEAR{\the\@year}
\let\c@DAY=\@day
\let\c@MONTH=\@month
\let\c@YEAR=\@year
\providecommand{\newdateformat}[2]{%
\@ifundefined{#1}{%
\expandafter\DeclareRobustCommand\csname#1\endcsname{%
\renewcommand{\formatdate}{\dateformat{#2}}}}{%
\PackageError{datetime}{Can't create new date format, command
\textbackslash#1 already defined}{You will need to
give your new date format a different name}}}
\DeclareRobustCommand*{\currenttime}{%
  \formattime{\currenthour}{\currentminute}{\currentsecond}%
}
\newcommand*{\formattime}[3]{\protect\@formattime{#1}{#2}{#3}}
\newcommand*{\@formattime}[3]{%
  \csname timeformat@xxivtime\endcsname{#1}{#2}{#3}}
\newcommand*{\timeseparator}{:}
\providecommand*{\settimeformat}[1]{%
  \@ifundefined{timeformat@#1}{%
    \PackageError{datetime}{Unknown time format `#1'}{}%
  }{%
    \renewcommand*{\@formattime}[3]{%
      \csname timeformat@#1\endcsname{##1}{##2}{##3}}%
  }%
}
\newcount\c@HOUR
\newcount\c@HOURXII
\newcount\c@MINUTE
\newcount\c@TOHOUR
\newcount\c@TOMINUTE
\newcount\c@SECOND
\def\THEHOUR{\the\c@HOUR}
\def\THEHOURXII{\the\c@HOURXII}
\def\THEMINUTE{\the\c@MINUTE}
\def\THETOHOUR{\the\c@TOHOUR}
\def\THETOMINUTE{\the\c@TOMINUTE}
\def\THESECOND{\the\c@SECOND}
\newcount\currenthour
\newcount\currentminute
\newcount\currentsecond
{\catcode`\D=12\relax
  \gdef\@dt@getdate D:#1#2#3#4#5#6#7#8{\@dt@gettime}%
}
\@ifundefined{pdfcreationdate}{%
  \currenthour=\time\relax
  \divide\currenthour by 60\relax
  \currentminute=\time\relax
  \@FCmodulo{\currentminute}{60}%
  \currentsecond=0\relax
}{%
  \def\@dt@gettime#1#2#3#4#5#6#7\relax{%
    \currenthour=#1#2\relax
    \currentminute=#3#4\relax
    \currentsecond=#5#6\relax}%
  \expandafter\@dt@getdate\pdfcreationdate\relax
}
\providecommand*{\newtimeformat}[2]{%
\@ifundefined{#1}{%
\expandafter\def\csname#1\endcsname{%
  \csname timeformat@#1\endcsname{\currenthour}{\currentminute}%
  {\currentsecond}%
}%
\expandafter\def\csname timeformat@#1\endcsname##1##2##3{%
\c@HOUR=##1%
\c@HOURXII=\c@HOUR
\ifnum\c@HOURXII>12
\advance\c@HOURXII by -12\relax
\fi
\c@MINUTE=##2%
\c@TOHOUR=\c@HOURXII
\advance\c@TOHOUR by 1\relax
\@FCmodulo{\c@TOHOUR}{12}%
\c@TOMINUTE=\c@MINUTE
\advance\c@TOMINUTE by -60\relax
\multiply\c@TOMINUTE by -1\relax
\c@SECOND=##3\relax
#2\relax
}}{%
\PackageError{datetime}{Command \textbackslash#1  already defined}{%
You can't create a new time format called "#1" as the command
\textbackslash#1 already exists}}}
\newtimeformat{xxivtime}{%
\twodigit\THEHOUR\timeseparator\twodigit\THEMINUTE}
\newtimeformat{hhmmsstime}{%
\twodigit\THEHOUR\timeseparator\twodigit\THEMINUTE\timeseparator
\twodigit\THESECOND}
\newtimeformat{ampmtime}{%
\ifthenelse{\value{HOUR}=0}{12}{\THEHOURXII}\timeseparator
\twodigit\THEMINUTE
\ifthenelse{\value{HOUR}<12}{\amname}{%
\ifthenelse{\value{HOUR}=12}{ \noon}{\pmname}}}
\newcommand*{\hourstring}[1]{%
\ifthenelse{\value{#1}=0}{\midnight}{\Numberstring{#1}}}
\newtimeformat{oclock}{%
  \ifthenelse{\(\value{HOUR}=0 \OR \value{HOUR}=12 \OR\value{HOUR}=24\)\AND
 \value{MINUTE}=0}{%
\ifthenelse{\value{HOUR}=12}{\noon}{\midnight}}{%
\ifthenelse{\value{MINUTE}=0}{%
\Numberstring{HOUR} \oclockstring}{%
\ifthenelse{\value{MINUTE}=15}{%
\quarterpast\ \hourstring{HOUR}}{%
\ifthenelse{\value{MINUTE}=30}{%
\halfpast\ \hourstring{HOUR}}{%
\ifthenelse{\value{MINUTE}=45}{%
\quarterto\ \hourstring{TOHOUR}}{%
\ifthenelse{\value{MINUTE}<30}{%
\Numberstring{MINUTE}\ \ifthenelse{\value{MINUTE}=1}{minute}{minutes}
past \hourstring{HOURXII}}{%
\Numberstring{TOMINUTE}\ \ifthenelse{%
\value{TOMINUTE}=1}{minute}{minutes} to \hourstring{TOHOUR}}}}}}%
\ifthenelse{\value{HOUR}<12}{%
\ifthenelse{\value{HOUR}=0}{}{\ \amstring}}{%
\ifthenelse{\value{TOHOUR}=0}{}{\ \pmstring}}}}
\providecommand*{\amname}{am}
\providecommand*{\pmname}{pm}
\providecommand*{\amorpmname}{%
\ifthenelse{\value{HOUR}>11}{\pmname}{\amname}}
\providecommand*{\amstring}{in the morning}
\providecommand*{\pmstring}{in the afternoon}
\providecommand*{\amorpmstring}{%
\ifthenelse{\value{HOUR}>12}{\pmstring}{\amstring}}
\providecommand*{\halfpast}{Half past}
\providecommand*{\quarterpast}{Quarter past}
\providecommand*{\quarterto}{Quarter to}
\providecommand*{\noon}{Noon}
\providecommand*{\midnight}{Midnight}
\providecommand*{\oclockstring}{O'Clock}
\InputIfFileExists{datetime.cfg}{\PackageInfo{datetime}{%
Loading local datetime configurations}}{%
\PackageInfo{datetime}{No datetime.cfg file found, using default
settings}}
\@ifpackageloaded{babel}{%
  \newcommand*{\dt@addtoextras}[1]{%
    \@ifundefined{extrasenglish}{}{%
      \addto\extrasenglish{#1}%
    }%
    \@ifundefined{extrasamerican}{}{%
      \addto\extrasamerican{#1}%
    }%
    \@ifundefined{extrasaustrian}{}{%
      \addto\extrasaustrian{#1}%
    }%
    \@ifundefined{extrasaustralian}{}{%
      \addto\extrasaustralian{#1}%
    }%
    \@ifundefined{extrasbahasa}{}{%
      \addto\extrasbahasa{#1}%
    }%
    \@ifundefined{extrasbreton}{}{%
      \addto\extrasbreton{#1}%
    }%
    \@ifundefined{extrasbritish}{}{%
      \addto\extrasbritish{#1}%
    }%
    \@ifundefined{extrasbulgarian}{}{%
      \addto\extrasbulgarian{#1}%
    }%
    \@ifundefined{extrascanadian}{}{%
      \addto\extrascanadian{#1}%
    }%
    \@ifundefined{extrascatalan}{}{%
      \addto\extrascatalan{#1}%
    }%
    \@ifundefined{extrascroatian}{}{%
      \addto\extrascroatian{#1}%
    }%
    \@ifundefined{extrasczech}{}{%
      \addto\extrasczech{#1}%
    }%
    \@ifundefined{extrasdanish}{}{%
      \addto\extrasdanish{#1}%
    }%
    \@ifundefined{extrasesperanto}{}{%
      \addto\extrasesperanto{#1}%
    }%
    \@ifundefined{extrasestonian}{}{%
      \addto\extrasestonian{#1}%
    }%
    \@ifundefined{extrasfinnish}{}{%
      \addto\extrasfinnish{#1}%
    }%
    \@ifundefined{extrasfrench}{}{%
      \addto\extrasfrench{#1}%
    }%
    \@ifundefined{extrasgalician}{}{%
      \addto\extrasgalician{#1}%
    }%
    \@ifundefined{extrasgerman}{}{%
      \addto\extrasgerman{#1}%
    }%
    \@ifundefined{extrasgreek}{}{%
      \addto\extrasgreek{#1}%
    }%
    \@ifundefined{extrashebrew}{}{%
      \addto\extrashebrew{#1}%
    }%
    \@ifundefined{extrasicelandic}{}{%
      \addto\extrasicelandic{#1}%
    }%
    \@ifundefined{extrasirish}{}{%
      \addto\extrasirish{#1}%
    }%
    \@ifundefined{extrasitalian}{}{%
      \addto\extrasitalian{#1}%
    }%
    \@ifundefined{extraslatin}{}{%
      \addto\extraslatin{#1}%
    }%
    \@ifundefined{extraslsorbian}{}{%
      \addto\extraslsorbian{#1}%
    }%
    \@ifundefined{extrasmagyar}{}{%
      \addto\extrasmagyar{#1}%
    }%
    \@ifundefined{extrasnaustrian}{}{%
      \addto\extrasnaustrian{#1}%
    }%
    \@ifundefined{extrasngerman}{}{%
      \addto\extrasngerman{#1}%
    }%
    \@ifundefined{extrasnewzealand}{}{%
      \addto\extrasnewzealand{#1}%
    }%
    \@ifundefined{extrasnorsk}{}{%
      \addto\extrasnorsk{#1}%
    }%
    \@ifundefined{extraspolish}{}{%
      \addto\extraspolish{#1}%
    }%
    \@ifundefined{extrasportuges}{}{%
      \addto\extrasportuges{#1}%
    }%
    \@ifundefined{extrasromanian}{}{%
      \addto\extrasromanian{#1}%
    }%
    \@ifundefined{extrasrussian}{}{%
      \addto\extrasrussian{#1}%
    }%
    \@ifundefined{extrassamin}{}{%
      \addto\extrassamin{#1}%
    }%
    \@ifundefined{extrasscottish}{}{%
      \addto\extrasscottish{#1}%
    }%
    \@ifundefined{extrasserbian}{}{%
      \addto\extrasserbian{#1}%
    }%
    \@ifundefined{extrasslovak}{}{%
      \addto\extrasslovak{#1}%
    }%
    \@ifundefined{extrasslovene}{}{%
      \addto\extrasslovene{#1}%
    }%
    \@ifundefined{extrasspanish}{}{%
      \addto\extrasspanish{#1}%
    }%
    \@ifundefined{extrasswedish}{}{%
      \addto\extrasswedish{#1}%
    }%
    \@ifundefined{extrasturkish}{}{%
      \addto\extrasturkish{#1}%
    }%
    \@ifundefined{extrasUKenglish}{}{%
      \addto\extrasUKenglish{#1}%
    }%
    \@ifundefined{extrasukraine}{}{%
      \addto\extrasukraine{#1}%
    }%
    \@ifundefined{extrasUSenglish}{}{%
      \addto\extrasUSenglish{#1}%
    }%
    \@ifundefined{extrasusorbian}{}{%
      \addto\extrasusorbian{#1}%
    }%
    \@ifundefined{extraswelsh}{}{%
      \addto\extraswelsh{#1}%
    }%
  }
}{%
  \newcommand*{\dt@addtoextras}[1]{}
}
\newcommand*{\setdefaultdate}[1]{\dt@addtoextras{#1}#1}
\RequirePackage{fmtcount}
\DeclareOption{long}{\setdefaultdate{\longdate}}
\DeclareOption{short}{\setdefaultdate{\shortdate}}
\DeclareOption{yyyymmdd}{\setdefaultdate{\yyyymmdddate}}
\DeclareOption{ddmmyyyy}{\setdefaultdate{\ddmmyyyydate}}
\DeclareOption{dmyyyy}{\setdefaultdate{\dmyyyydate}}
\DeclareOption{ddmmyy}{\setdefaultdate{\ddmmyydate}}
\DeclareOption{dmyy}{\setdefaultdate{\dmyydate}}
\DeclareOption{text}{\setdefaultdate{\textdate}}
\DeclareOption{us}{\setdefaultdate{\usdate}}
\DeclareOption{mmddyyyy}{\setdefaultdate{\mmddyyyydate}}
\DeclareOption{mdyyyy}{\setdefaultdate{\mdyyyydate}}
\DeclareOption{mmddyy}{\setdefaultdate{\mmddyydate}}
\DeclareOption{mdyy}{\setdefaultdate{\mdyydate}}
\DeclareOption{level}{\fmtcountsetoptions{fmtord=level}}
\DeclareOption{raise}{\fmtcountsetoptions{fmtord=raise}}
\DeclareOption{dayofweek}{\showdowtrue}
\DeclareOption{nodayofweek}{\showdowfalse}
\DeclareOption{nodate}{\@dt@nodatetrue}
\DeclareOption{hhmmss}{\settimeformat{hhmmsstime}}
\DeclareOption{24hr}{\settimeformat{xxivtime}}
\DeclareOption{12hr}{\settimeformat{ampmtime}}
\DeclareOption{oclock}{\settimeformat{oclock}}
\DeclareOption{iso}{%
  \setdefaultdate{\yyyymmdddate}\settimeformat{hhmmsstime}%
  \renewcommand*{\dateseparator}{-}%
  \renewcommand*{\timeseparator}{:}%
}
\newcommand*{\loadDTdef}[1]{%
  \DTifDefLoaded{#1}%
  {}%
  {%
    \InputIfFileExists{dt-#1.def}%
    {}%
    {%
       \PackageWarning{datetime}{Can't find datetime language
         definition file for `#1'}%
    }%
  }%
}
\newcommand{\DTifDefLoaded}[3]{%
  \@ifundefined{ver@dt-#1.def}{#3}{#2}%
}
\newcommand{\DTloadDefIfNotLoadedButExists}[1]{%
  \DTifDefLoaded{#1}%
  {}%
  {%
    \bgroup
      \catcode `\@ 11\relax
      \InputIfFileExists{dt-#1.def}{}{}%
    \egroup
  }%
}%
\DeclareOption{austrian}{\loadDTdef{austrian}}
\DeclareOption{american}{\loadDTdef{american}}
\DeclareOption{bahasa}{\loadDTdef{bahasa}}
\DeclareOption{basque}{\loadDTdef{basque}}
\DeclareOption{breton}{\loadDTdef{breton}}
\DeclareOption{british}{\loadDTdef{british}}
\DeclareOption{bulgarian}{\loadDTdef{bulgarian}}
\DeclareOption{catalan}{\loadDTdef{catalan}}
\DeclareOption{croatian}{\loadDTdef{croatian}}
\DeclareOption{czech}{\loadDTdef{czech}}
\DeclareOption{danish}{\loadDTdef{danish}}
\DeclareOption{dutch}{\loadDTdef{dutch}}
\DeclareOption{esperanto}{\loadDTdef{esperanto}}
\DeclareOption{estonian}{\loadDTdef{estonian}}
\DeclareOption{finnish}{\loadDTdef{finnish}}
\DeclareOption{french}{\loadDTdef{french}}
\DeclareOption{galician}{\loadDTdef{galician}}
\DeclareOption{german}{\loadDTdef{german}\dategerman}
\DeclareOption{greek}{\loadDTdef{greek}}
\DeclareOption{hebrew}{\loadDTdef{hebrew}}
\DeclareOption{icelandic}{\loadDTdef{icelandic}}
\DeclareOption{irish}{\loadDTdef{irish}}
\DeclareOption{italian}{\loadDTdef{italian}}
\DeclareOption{latin}{\loadDTdef{latin}}
\DeclareOption{lsorbian}{\loadDTdef{lsorbian}}
\DeclareOption{magyar}{\loadDTdef{magyar}}
\DeclareOption{naustrian}{\loadDTdef{naustrian}}
\DeclareOption{ngerman}{\loadDTdef{ngerman}\datengerman}
\DeclareOption{norsk}{\loadDTdef{norsk}}
\DeclareOption{polish}{\loadDTdef{polish}}
\DeclareOption{portuges}{\loadDTdef{portuges}}
\DeclareOption{romanian}{\loadDTdef{romanian}}
\DeclareOption{russian}{\loadDTdef{russian}}
\DeclareOption{samin}{\loadDTdef{samin}}
\DeclareOption{scottish}{\loadDTdef{scottish}}
\DeclareOption{serbian}{\loadDTdef{serbian}}
\DeclareOption{slovak}{\loadDTdef{slovak}}
\DeclareOption{slovene}{\loadDTdef{slovene}}
\DeclareOption{spanish}{\loadDTdef{spanish}}
\DeclareOption{swedish}{\loadDTdef{swedish}}
\DeclareOption{turkish}{\loadDTdef{turkish}}
\DeclareOption{ukraineb}{\loadDTdef{ukraineb}}
\DeclareOption{usorbian}{\loadDTdef{usorbian}}
\DeclareOption{UKenglish}{\loadDTdef{UKenglish}}
\DeclareOption{USenglish}{\loadDTdef{USenglish}}
\DeclareOption{welsh}{\loadDTdef{welsh}}
\ProcessOptions
\if@dt@nodate
  \PackageInfo{datetime}{option "nodate" used, so note defining
  \string\dateformat}
\else
  \providecommand*{\dateformat}[4]{%
    \@day=#2\relax\@month=#3\relax\@year=#4\relax#1}
\fi
\if@dt@nodate
  \PackageInfo{datetime}{option "nodate" used, so not defining
  \string\monthname}
\else
\newcommand*{\monthname}[1][\month]{%
  \if@dt@multilingual
    \DTloadDefIfNotLoadedButExists{\languagename}%
    \@ifundefined{monthname\languagename}%
    {%
    \PackageWarning{datetime}{No month names provided for language
    '\languagename'}%
    \monthnameenglish[#1]%
    }%
    {\csname monthname\languagename\endcsname[#1]}%
  \else
    \monthnameenglish[#1]%
  \fi
}
\fi
\if@dt@nodate
  \PackageInfo{datetime}{option "nodate" used, so not defining
  \protect\shortmonthname}
\else
\newcommand*{\shortmonthname}[1][\month]{%
  \if@dt@multilingual
    \DTloadDefIfNotLoadedButExists{\languagename}%
    \@ifundefined{shortmonthname\languagename}%
    {%
      \PackageWarning{datetime}{No abbreviated month name defined for
      language '\languagename', using full version instead}%
      \monthname[#1]%
    }%
    {%
      \csname shortmonthname\languagename\endcsname[#1]%
    }%
  \else
    \shortmonthnameenglish[#1]%
  \fi
}
\fi
\newif\ifDTleapyear
\@ifundefined{ifleapyear}
{%
  \def\ifleapyear{\ifDTLleapyear}
  \let\leapyeartrue\DTLleapyeartrue
  \let\leapyearfalse\DTLleapyearfalse
}%
{}
\newcount\@dtctr
\if@dt@nodate
  \PackageInfo{datetime}{option "nodate" used, so not defining
  \string\dayofweek \space or \string\shortdayofweek}
\else
\providecommand*{\testifleapyear}[1]{%
  \DTleapyearfalse
  \@year=#1\relax
  \@dtctr=\@year
  \@FCmodulo{\@dtctr}{400}%
  \ifnum\@dtctr=0\relax
    \DTleapyeartrue
  \else
    \@dtctr=\@year
    \@FCmodulo{\@dtctr}{100}%
    \ifnum\@dtctr=0\relax
      \DTleapyearfalse
    \else
      \@dtctr=\@year
      \@FCmodulo{\@dtctr}{4}%
      \ifnum\@dtctr=0\relax
        \DTleapyeartrue
      \fi
    \fi
  \fi
}
\newcount\dayofyear
\providecommand*{\computedayofyear}[3]{%
  \testifleapyear{#3}%
  \dayofyear=0\relax
  \@day=#1\relax \@month=#2\relax \@year=#3\relax
  \ifcase\@month
  \or
  \or \advance\dayofyear by 31\relax
  \or \advance\dayofyear by 59\relax
  \or \advance\dayofyear by 90\relax
  \or \advance\dayofyear by 120\relax
  \or \advance\dayofyear by 151\relax
  \or \advance\dayofyear by 181\relax
  \or \advance\dayofyear by 212\relax
  \or \advance\dayofyear by 243\relax
  \or \advance\dayofyear by 273\relax
  \or \advance\dayofyear by 304\relax
  \or \advance\dayofyear by 334\relax
  \else
  \PackageError{datetime}{Invalid month number}{The second argument to
  \string\computedayofyear \space should lie in the range 1-12}%
  \fi
  \ifnum\@month>2\relax
  \ifDTleapyear\advance\dayofyear by 1\relax\fi
  \fi
  \advance\dayofyear by \@day\relax
}
\newcount\dayofweek
\providecommand*{\computedayofweek}[3]{%
  \computedayofyear{#1}{#2}{#3}%
  \@dtctr=#3\relax
  \advance\@dtctr by -1901\relax
  \@FCmodulo{\@dtctr}{28}%
  \dayofweek=\@dtctr
  \divide\dayofweek by 4\relax
  \advance\dayofweek by \@dtctr
  \advance\dayofweek by 2\relax
  \@FCmodulo{\dayofweek}{7}%
  \advance\dayofweek by \dayofyear
  \advance\dayofweek by -1\relax
  \@FCmodulo{\dayofweek}{7}%
  \advance\dayofweek by 1\relax
}
\providecommand*{\dayofweeknameid}[1]{%
  \if@dt@multilingual
    \DTloadDefIfNotLoadedButExists{\languagename}%
    \ifcsundef{dayofweeknameid\languagename}%
    {%
       \ifthenelse{\equal{\languagename}{nohyphenation}}{}%
       {%
          \PackageWarning{datetime}%
          {No week day names defined for language
          '\languagename', defaulting to English}%
       }%
       \dayofweeknameidenglish{#1}%
    }%
    {%
       \csname dayofweeknameid\languagename\endcsname{#1}%
    }%
  \else
    \dayofweeknameidenglish{#1}%
  \fi
}
\providecommand*{\dayofweekname}[3]{%
  \computedayofweek{#1}{#2}{#3}%
  \dayofweeknameid{\dayofweek}%
}
\providecommand*{\thisdayofweekname}{%
  \dayofweekname{\day}{\month}{\year}}
\providecommand*{\shortdayofweekname}[3]{%
  \computedayofweek{#1}{#2}{#3}%
  \if@dt@multilingual
    \DTloadDefIfNotLoadedButExists{\languagename}%
    \@ifundefined{shortdayofweeknameid\languagename}%
    {%
      \ifthenelse{\equal{\languagename}{nohyphenation}}{}%
      {%
        \PackageWarning{datetime}%
        {No abbreviated week day names defined for
         language '\languagename', defaulting to long version}%
      }%
      \dayofweeknameid{\dayofweek}%
    }%
    {%
      \csname shortdayofweeknameid\languagename\endcsname\dayofweek
    }%
  \else
    \shortdayofweeknameidenglish{\dayofweek}%
\fi
}
\providecommand*{\thisshortdayofweekname}{%
  \dayofweekname{\day}{\month}{\year}}
\fi
\if@dt@nodate
\else
  \DeclareRobustCommand*{\today}{\formatdate{\day}{\month}{\year}}
\fi
\if@dt@nodate
\else
\@ifundefined{dateenglish}{}{\let\dateenglish\longdate}
\@ifundefined{dateUKenglish}{}{\loadDTdef{UKenglish}}
\@ifundefined{dateUSenglish}{}{\loadDTdef{USenglish}}
\@ifundefined{datebritish}{}{\loadDTdef{british}}
\@ifundefined{dateamerican}{}{\loadDTdef{american}}
\@ifundefined{dateaustrian}{}{\loadDTdef{austrian}}
\@ifundefined{dateaustralian}{}{\loadDTdef{australian}}
\@ifundefined{datebahasa}{}{\loadDTdef{bahasa}}
\@ifundefined{datebasque}{}{\loadDTdef{basque}}
\@ifundefined{datebreton}{}{\loadDTdef{breton}}
\@ifundefined{datebulgarian}{}{\loadDTdef{bulgarian}}
\@ifundefined{datecanadian}{}{\loadDTdef{canadian}}
\@ifundefined{datecatalan}{}{\loadDTdef{catalan}}
\@ifundefined{datecroatian}{}{\loadDTdef{croatian}}
\@ifundefined{dateczech}{}{\loadDTdef{czech}}
\@ifundefined{datedanish}{}{\loadDTdef{danish}}
\@ifundefined{datedutch}{}{\loadDTdef{dutch}}
\@ifundefined{dateesperanto}{}{\loadDTdef{esperanto}}
\@ifundefined{dateestonian}{}{\loadDTdef{estonian}}
\@ifundefined{datefinnish}{}{\loadDTdef{finnish}}
\@ifundefined{datefrench}{}{\loadDTdef{french}}
\@ifundefined{dategalician}{}{\loadDTdef{galician}}
\@ifundefined{dategerman}{}{\loadDTdef{german}}
\@ifundefined{dategreek}{}{\loadDTdef{greek}}
\@ifundefined{datehebrew}{}{\loadDTdef{hebrew}}
\@ifundefined{dateicelandic}{}{\loadDTdef{icelandic}}
\@ifundefined{dateirish}{}{\loadDTdef{irish}}
\@ifundefined{dateitalian}{}{\loadDTdef{italian}}
\@ifundefined{datelatin}{}{\loadDTdef{latin}}
\@ifundefined{datelsorbian}{}{\loadDTdef{lsorbian}}
\@ifundefined{datemagyar}{}{\loadDTdef{magyar}}
\@ifundefined{datenaustrian}{}{\loadDTdef{naustrian}}
\@ifundefined{datenewzealand}{}{\loadDTdef{newzealand}}
\@ifundefined{datengerman}{}{\loadDTdef{ngerman}}
\@ifundefined{datenorsk}{}{\loadDTdef{norsk}}
\@ifundefined{datepolish}{}{\loadDTdef{polish}}
\@ifundefined{dateportuges}{}{\loadDTdef{portuges}}
\@ifundefined{dateromanian}{}{\loadDTdef{romanian}}
\@ifundefined{daterussian}{}{\loadDTdef{russian}}
\@ifundefined{datesamin}{}{\loadDTdef{samin}}
\@ifundefined{datescottish}{}{\loadDTdef{scottish}}
\@ifundefined{dateserbian}{}{\loadDTdef{serbian}}
\@ifundefined{dateslovak}{}{\loadDTdef{slovak}}
\@ifundefined{dateslovene}{}{\loadDTdef{slovene}}
\@ifundefined{datespanish}{}{\loadDTdef{spanish}}
\@ifundefined{dateswedish}{}{\loadDTdef{swedish}}
\@ifundefined{dateturkish}{}{\loadDTdef{turkish}}
\@ifundefined{dateukraineb}{}{\loadDTdef{ukraineb}}
\@ifundefined{dateusorbian}{}{\loadDTdef{usorbian}}
\@ifundefined{datewelsh}{}{\loadDTdef{welsh}}
\fi
\newtoks\dt@a \newtoks\dt@b
\edef\pdfdate{\the\year}
\dt@b=\expandafter{\pdfdate}
\dt@a=\expandafter{\the\month}
\ifnum\month<10\relax
\edef\pdfdate{\the\dt@b0\the\dt@a}
\else
\edef\pdfdate{\the\dt@b\the\dt@a}
\fi
\dt@b=\expandafter{\pdfdate}
\dt@a=\expandafter{\the\day}
\ifnum\day<10\relax
\edef\pdfdate{\the\dt@b0\the\dt@a}
\else
\edef\pdfdate{\the\dt@b\the\dt@a}
\fi
\@dtctr=\time%
\divide\@dtctr by 60\relax
\dt@b=\expandafter{\pdfdate}
\dt@a=\expandafter{\the\@dtctr}
\ifnum\@dtctr<10
\edef\pdfdate{\the\dt@b0\the\dt@a}
\else
\edef\pdfdate{\the\dt@b\the\dt@a}
\fi
\@dtctr=\time%
\@FCmodulo{\@dtctr}{60}%
\dt@b=\expandafter{\pdfdate}
\dt@a=\expandafter{\the\@dtctr}
\ifnum\@dtctr<10\relax
\edef\pdfdate{\the\dt@b0\the\dt@a}
\else
\edef\pdfdate{\the\dt@b\the\dt@a}
\fi
\dt@a={00}
\dt@b=\expandafter{\pdfdate}
\edef\pdfdate{\the\dt@b\the\dt@a}
\endinput
%%
%% End of file `datetime.sty'.
