%%
%% This is file `engord.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% engord.dtx  (with options: `package')
%% 
%% This is a generated file.
%% 
%% Copyright (C) 2000, 2003, 2006 by
%%    Heiko Oberdiek <oberdiek@uni-freiburg.de>
%% 
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
%% version 1.3 of this license or (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".
%% 
%% This Current Maintainer of this work is Heiko Oberdiek.
%% 
%% This work consists of the main source file engord.dtx
%% and the derived files
%%    engord.sty, engord.pdf, engord.ins, engord.drv.
%% 
\begingroup
  \expandafter\let\expandafter\x\csname ver@engord.sty\endcsname
  \ifcase 0%
    \ifx\x\relax % plain
    \else
      \ifx\x\empty % LaTeX
      \else
        1%
      \fi
    \fi
  \else
    \expandafter\ifx\csname PackageInfo\endcsname\relax
      \def\x#1#2{%
        \immediate\write-1{Package #1 Info: #2.}%
      }%
    \else
      \def\x#1#2{\PackageInfo{#1}{#2, stopped}}%
    \fi
    \x{engord}{The package is already loaded}%
    \endgroup
    \expandafter\endinput
  \fi
\endgroup
\begingroup
  \expandafter\ifx\csname ProvidesPackage\endcsname\relax
    \def\x#1#2#3[#4]{\endgroup
      \immediate\write-1{Package: #3 #4}%
      \xdef#1{#4}%
    }%
  \else
    \def\x#1#2[#3]{\endgroup
      #2[{#3}]%
      \ifx#1\relax
        \xdef#1{#3}%
      \fi
    }%
  \fi
\expandafter\x\csname ver@engord.sty\endcsname
\ProvidesPackage{engord}%
  [2006/02/20 v1.2 Provides the ifpdf switch (HO)]
\expandafter\chardef\csname EO@atcode\endcsname\catcode`\@
\catcode`\@=11 %
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname newcommand\endcsname\relax
  \def\EO@def{\def}%
\else
  \def\EO@def#1{%
    \newcommand*{#1}{}%
    \def#1%
  }%
\fi
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname PackageWarning\endcsname\relax
  \def\EO@PackageWarning#1#2{%
    \immediate\write16{%
      Package #1 Warning: #2 on input line \the\inputlineno.%
    }%
  }%
\else
  \def\EO@PackageWarning{\PackageWarning}%
\fi
\newif\ifengordraise
\engordraisetrue
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname DeclareOption\endcsname\relax
\else
  \DeclareOption{normal}{\engordraisefalse}%
  \DeclareOption{raise}{\engordraisetrue}%
  \ProcessOptions*\relax
\fi
\expandafter\ifx\csname engordletters\endcsname\relax
  \EO@def\engordletters{%
    \ifengordraise
      \expandafter\engordtextsuperscript
    \fi
  }%
\fi
\expandafter\ifx\csname engordtextsuperscript\endcsname\relax
  \begingroup\expandafter\expandafter\expandafter\endgroup
  \expandafter\ifx\csname textsuperscript\endcsname\relax
    \def\engordtextsuperscript#1{%
      \relax
      \ifmmode
        ^{\rm#1}%
      \else
        $^{\rm#1}$%
      \fi
    }%
  \else
    \def\engordtextsuperscript{\textsuperscript}%
  \fi
\fi
\expandafter\ifx\csname engorderror\endcsname\relax
  \EO@def\engorderror#1{%
    #1\engordletters{!ERROR!}%
    \EO@PackageWarning{engord}{%
      `#1' is not an ordinal number%
    }%
  }%
\fi
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname newcounter\endcsname\relax
\else
  \EO@def\engord#1{%
    \engordnumber{\value{#1}}%
  }%
\fi
\EO@def\engordnumber#1{%
  \expandafter\EO@number\expandafter{\number#1}%
}
\def\EO@number#1{%
  \ifnum#1<1 % handle the error case
    \engorderror{#1}%
  \else
    \ifnum#1<21
      \EO@ord{#1}%
    \else
      \ifnum#1<100
        \EO@twodigits#1%
      \else
        \@ReturnAfterFi{%
          \EO@reverse#1\@nil{}\EO@afterreverse
        }%
      \fi
    \fi
  \fi
}
\long\def\@ReturnAfterFi#1\fi{\fi#1}
\def\EO@ord#1{%
  #1%
  \expandafter\engordletters
  \ifcase#1{th}\or
    {st}\or
    {nd}\or
    {rd}\else
    {th}%
  \fi
}
\def\EO@twodigits#1#2{%
  #1\EO@ord{#2}%
}
\def\EO@reverse#1#2\@nil#3#4{%
  \ifx\\#2\\%
    #4{#1#3}%
  \else
    \@ReturnAfterFi{%
      \EO@reverse#2\@nil{#1#3}{#4}%
    }%
  \fi
}
\def\EO@afterreverse#1{%
  \EO@reverseback#1\@nil
}
\def\EO@reverseback#1#2#3\@nil{%
  \EO@reverse#3\@nil{}\@firstofone
  \ifnum#2#1<21
    \EO@ord{#2#1}%
  \else
    #2\EO@ord{#1}%
  \fi
}
\catcode`\@=\EO@atcode
\endinput
%%
%% End of file `engord.sty'.
