+++ /dev/null
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-%      File: invoice.def
-%      Author: Oliver Corff
-%      Date: 2003-12-12
-%      
-%      This file contains messages, labels etc. in English, German
-%      and other languages.
-%
-%      This file cannot be used alone but is called by invoice.sty
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-%      This file is the only file of this package which may be
-%      modified without renaming it.
-%
-%      Adding a new language to labels is simple. Follow the 
-%      instructions at line 275 of this file, and, please!,
-%      do not forget to send the result to
-%
-%      corff@zedat.fu-berlin.de or oliver.corff@email.de
-%
-%      Credits for language contributions given in invoice.sty.
-%
-%      Thank you very much for your support of "invoice".
-%
-%      Oliver Corff,
-%
-%      Berlin, Guangzhou, Ulaanbaatar, Zagreb, Shenyang, Shanghai 2003
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% English definitions are default. Other
-% languages are selected automatically.
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Warning messages for non-fatal situations
-%
-\def\InvoiceCompleted  {Invoice completed. Command ignored.}%
-\def\FeeSTExists       {You cannot print a fee subtotal twice!}%
-\def\ProjectEmpty      {Project empty. No subtotal possible!}%
-\def\ProjectSTExists   {You cannot print a project subtotal twice!}%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Error messages for fatal situations
-%
-\def\InternalError                     {Package `invoice': Internal error!}%
-%
-\def\NoInvoiceNesting                  {Invoices cannot be nested.
-                                        Close this invoice first!}%
-%
-\def\InvoiceCompletedNoExpense         {Invoice closed.
-                                        No new expense item allowed.
-                                        Start a new invoice
-                                        first!}%
-%
-\def\InvoiceCompletedNoFee             {Invoice closed.
-                                        No new fee item allowed.
-                                        Start a new invoice
-                                        first!}%
-%
-\def\InvoiceCompletedNoFeeST           {Invoice closed.
-                                        No fee subtotal allowed.
-                                        Start a new invoice
-                                        first!}%
-%
-\def\InvoiceCompletedNoProject         {Invoice closed.
-                                        No new project allowed.
-                                        Start a new invoice
-                                        first!}%
-%
-\def\InvoiceCompletedNoProjectST       {Invoice closed.
-                                        No project subtotal allowed.
-                                        Start a new invoice
-                                        first!}%
-%
-\def\MissingFee                                {No fee given.
-                                        You must charge at least one fee!}%
-%
-\def\MissingInputData                  {Missing input data!}%
-%
-\def\MissingOpening                    {You must open an invoice!}%
-%
-\def\MissingProject                    {No project given.
-                                        Open a project first!}%
-%
-\def\FeeBeforeExpense                  {Fees are charged first.
-                                        Expenses follow.}%
-%
-\def\NoProjectNesting                  {Projects cannot be nested.
-                                        Close this project first!}%
-%
-\def\ProjectCompletedNoExpense         {Project closed.
-                                        No new expense item allowed.
-                                        Start a new project
-                                        first!}%
-%
-\def\ProjectCompletedNoFee             {Project closed.
-                                        No new fee item allowed.
-                                        Start a new project
-                                        first!}%
-%
-\def\KOMA                              {Users of KOMA-Script's scrlettr.cls%
-                                        ^^Jsay `invoiceno' for the scrlettr
-                                        invoice command,^^Jand `invoiceenv'
-                                        for the invoice environment!}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Labels. These ones are available in translation, too. See below.
-%
-\def\Warning                           {Warning}%
-\def\Error                             {Error}%
-\def\Expense                           {Expense}%
-\def\Amount                            {Amount}%
-\def\Currency                          {Currency}%
-\def\Factor                            {Factor}%
-\def\Activity                          {Activity}%
-\def\Count                             {Count}%
-\def\UnitRate                          {Rate/Unit}%
-\def\Fees                              {Fees}%
-\def\VAT                               {VAT}%
-\def\Expenses                          {Expenses}%
-\def\SumFees                           {Sum \Fees}%
-\def\SumVAT                            {Sum \VAT}%
-\def\SumExpenses                       {Sum \Expenses}%
-\def\SubtotalFee                       {Subtotal \Fees}%
-\def\SubtotalExpenses                  {Subtotal \Expenses}%
-\def\SubtotalProject                   {Subtotal \Project}%
-
-\def\Total                             {Total}%
-%
-% This is German.
-%
-\ifx\l@german\undefined
-       \message{^^J(invoice) \Warning:
-               Language \string\l@german\space unknown.^^J^^J}
-\else
-\ifnum\number\invoice@language=\number\l@german
-       \def\Warning                    {Warnung}%
-       \def\Error                      {Fehler}%
-       \def\Expense                    {Auslage}%
-       \def\Amount                     {Betrag}%
-       \def\Currency                   {W\"ahrung}%
-       \def\Factor                     {Faktor}%
-       \def\Activity                   {Aktivit\"at}%
-       \def\Count                      {Anzahl}%
-       \def\UnitRate                   {Rate/Einheit}%
-       \def\Fees                       {Honorare}%
-       \def\VAT                        {MWSt.}%
-       \def\Expenses                   {Auslagen}%
-       \def\SumFees                    {Summe \Fees}%
-       \def\SumVAT                     {Summe \VAT}%
-       \def\SumExpenses                {Summe \Expenses}%
-       \def\SubtotalFee                {Zwischensumme \Fees}%
-       \def\SubtotalExpenses           {Zwischensumme \Expenses}%
-       \def\SubtotalProject            {Zwischensumme \Project}%
-       \def\Total                      {Gesamtsumme}%
-\fi\fi
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% This is Dutch.
-%
-\ifx\l@dutch\undefined
-       \message{^^J(invoice) \Warning:
-               Language \string\l@dutch\space unknown.^^J^^J}
-\else
-\ifnum\number\invoice@language=\number\l@dutch
-       \def\Warning                    {Waarschuwing}%
-       \def\Error                      {Fout}% 
-       \def\Expense                    {Onkosten}% 
-       \def\Amount                     {Bedrag}% 
-       \def\Currency                   {Valuta}% 
-       \def\Factor                     {Faktor}% 
-       \def\Activity                   {Activiteit}% 
-       \def\Count                      {Aantal}% 
-       \def\UnitRate                   {Prijs/Eenheid}% 
-       \def\Fees                       {Honorarium}% 
-       \def\VAT                        {BTW}% 
-       \def\Expenses                   {Onkosten}% 
-       \def\SumFees                    {Totaal \Fees}% 
-       \def\SumVAT                     {Totaal \VAT}% 
-       \def\SumExpenses                {Totaal \Expenses}% 
-       \def\SubtotalFee                {Subtotaal \Fees}% 
-       \def\SubtotalExpenses           {Subtotaal \Expenses}% 
-       \def\SubtotalProject            {Subtotaal \Project}% 
-       \def\Total                      {Totaal}% 
-\fi\fi
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% This is French.
-%
-\ifx\l@french\undefined
-       \message{^^J(invoice) \Warning:
-               Language \string\l@french\space unknown.^^J^^J}
-\else
-\ifnum\number\invoice@language=\number\l@french
-       \def\Warning                    {Avertissement}%
-       \def\Error                      {Erreur}%
-       \def\Expense                    {D\'epense}%
-       \def\Amount                     {Montant}%
-       \def\Currency                   {Devise}%
-       \def\Factor                     {Facteur}%
-       \def\Activity                   {Activit\'e}%
-       \def\Count                      {Quantit\'e}%
-       \def\UnitRate                   {Prix/Unit\'e}%
-       \def\Fees                       {Honoraires}%
-       \def\VAT                        {TVA}%
-       \def\Expenses                   {D\'epenses}%
-       \def\SumFees                    {Total \Fees}%
-       \def\SumVAT                     {Total \VAT}%
-       \def\SumExpenses                {Total \Expenses}%
-       \def\SubtotalFee                {Sous-Total \Fees}%
-       \def\SubtotalExpenses           {Sous-Total \Expenses}%
-       \def\SubtotalProject            {Sous-Total \Project}%
-       \def\Total                      {Total}%
-\fi\fi
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% This is Afrikaans.
-%
-\ifx\l@afrikaans\undefined
-       \message{^^J(invoice) \Warning:
-               Language \string\l@afrikaans\space unknown.^^J^^J}
-\else
-\ifnum\number\invoice@language=\number\l@afrikaans
-       \def\Warning                    {Waarskuwing}  
-       \def\Error                      {Fout}  
-       \def\Expense                    {Onkostes}  
-       \def\Amount                     {Bedrag}  
-       \def\Currency                   {Valuta}  
-       \def\Factor                     {Faktor}  
-       \def\Activity                   {Aktiwiteit}  
-       \def\Count                      {Aantal ure}  
-       \def\UnitRate                   {Tarief}  
-       \def\Fees                       {Fooie}  
-       \def\VAT                        {BTW}  
-       \def\Expenses                   {Uitgawes}  
-       \def\SumFees                    {Totaal Fooie}  
-       \def\SumVAT                     {Totaal BTW}  
-       \def\SumExpenses                {Totaal Uitgawes}  
-       \def\SubtotalFee                {Subtotaal \Fees} 
-       \def\SubtotalExpenses           {Subtotaal \Expenses}  
-       \def\SubtotalProject            {Subtotaal \Project}  
-       \def\Total                      {Totaal}  
-\fi\fi
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% This is Italian.
-%
-\ifx\l@italian\undefined
-       \message{^^J(invoice) \Warning:
-               Language \string\l@italian\space unknown.^^J^^J}
-\else
-\ifnum\number\invoice@language=\number\l@italian
-       \def\Warning                    {Avvertenza}%
-       \def\Error                      {Errore}%
-       \def\Expense                    {Spesa}%
-       \def\Amount                     {Ammontare}%
-       \def\Currency                   {Valuta}%
-       \def\Factor                     {Fattore}%
-       \def\Activity                   {Attivit\'a}%
-       \def\Count                      {Quantit\'a}%
-       \def\UnitRate                   {Prezzo/Unit\'a}%
-       \def\Fees                       {Onorario}%
-       \def\VAT                        {IVA}%
-       \def\Expenses                   {Spese}%
-       \def\SumFees                    {Totale onorario}%
-       \def\SumVAT                     {Totale IVA}%
-       \def\SumExpenses                {Totale spese}%
-       \def\SubtotalFee                {Subtotale onorario}%
-       \def\SubtotalExpenses           {Subtotale spese}%
-       \def\SubtotalProject            {Subtotale progetto}%
-       \def\Total                      {Totale}%
-\fi\fi
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% 
-% How to add new label languages to the `invoice' package:
-%
-% 1. Copy all following lines after this explanation
-%    and insert them above this comment.
-%
-% 2. Remove all comment symbols at the beginning of the lines.
-%
-% 3. Fill the empty parentheses {} with the appropriate
-%    translations.
-%
-% 4. Enter the correct internal language name used by LaTeX2e
-%    into the condition of the \ifnum clause.
-%
-% 5. Please do not forget to mail the resulting file to
-%    corff@zedat.fu-berlin.de or oliver.corff@email.de
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Name correct language name here --v--
-% and   --v--!
-%\ifx\l@german\undefined
-%      \message{^^J(invoice) \Warning:
-%              Language \string\l@german\space unknown.^^J^^J}
-%\else
-%\ifnum\number\invoice@language=\number\l@german
-%      \def\Warning                    {} % Enter translations here!
-%      \def\Error                      {} % 
-%      \def\Expense                    {} % 
-%      \def\Amount                     {} % 
-%      \def\Currency                   {} % 
-%      \def\Factor                     {} % 
-%      \def\Activity                   {} % 
-%      \def\Count                      {} % 
-%      \def\UnitRate                   {} % 
-%      \def\Fees                       {} % 
-%      \def\VAT                        {} % 
-%      \def\Expenses                   {} % 
-%      \def\SumFees                    {} % 
-%      \def\SumVAT                     {} % 
-%      \def\SumExpenses                {} % 
-%      \def\SubtotalFee                {} % 
-%      \def\SubtotalExpenses           {} % 
-%      \def\SubtotalProject            {} % 
-%      \def\Total                      {} % 
-%\fi
 
+++ /dev/null
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%        Datei: invoice.sty
-%        Autor: Oliver Corff
-%      Contact: corff@zedat.fu-berlin.de, oliver.corff@email.de
-%        Datum: December 16, 2003
-%      Version: 0.7
-%    Copyright: Ulaanbaatar, Beijing, Berlin, Zagreb, Shenyang, Shanghai
-%  Description: This collection of macros provides
-%               tools for generating complex invoices
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Corrections, suggestions and contributions by:
-%%%%%%
-% Jacopo, May 2003
-% e-mail: jacopo@
-%
-%   Contributed labels in Italian.
-%
-%%%%%%
-% O. Corff, July 2003 
-% 
-%   fixed one nasty spacing bug, simplified internal table 
-%   construction (table now has five instead of six columns,
-%   the second of which was never used).
-%
-%%%%%%
-% Johann Spies, January 21, 2002
-% e-mail: jspies@sun.ac.za
-%
-%   Hinted that \Subtotal Project should show the project name
-%   rather than just `Project'.
-%
-%   Contributed labels in Afrikaans.
-%
-%%%%%%
-% Robin Fairbairns, December 6, 2001
-% 
-%   Hinted that the dollar sign can also be printed by saying
-%   \string$.
-%
-%%%%%%
-% Vincent Tougait, France, November 27, 2001
-%
-%   Pointed out that fractions of VAT percents were not allowed.
-%   Bugfix on December 06, 2001
-%
-%%%%%%
-% Fred Donck, The Hague, The Netherlands, October, 2001
-% e-mail: fd0@donck.com
-%
-% Dutch labels
-%
-%%%%%%
-% Ian Wormsbecker, October 31, 2001
-%
-%   Skips the VAT lines if VAT=0
-%   Noticed that the terminal message will not accept a Dollar sign.
-%   The only workaround is to say \char`$ in \begin{invoice}{}
-%
-%%%%%%
-% Fred Donck, The Hague, The Netherlands, Sept 18, 2001
-% e-mail: fd0@donck.com
-%
-% fixed some minor issues:
-%   real arithmetic will use integer intermediate values, so
-%   some calculations failed with the \Fee{title}{rate}{amount}
-%   where \rate is not an integer
-%
-%   another fix is that in my opinion the VAT line should be 
-%   printed also even though only one project is specified
-%
-%   third fix is that the subtotal-line should not be printed 
-%   on a project with only one \Fee line
-%
-%%%%%%
-% Jacco Kok (fixed some labels),
-%
-%%%%%%
-% Thilo Barth (discussed alternative names and command clashes
-%      with KOMA Script class scrlettr.cls),
-%
-%%%%%%
-% Robert Inder (discussed general issues)
-%
-% were gladly and gratefully received and accepted.
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% -------------------     identification     -------------------
-%
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{invoice}[2003/12/16]
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% -------------------    language options    -------------------
-%
-%
-\newcount\invoice@language
-\let\invoice@language=\language
-%
-\ifx\l@english\undefined       \newlanguage\l@english \fi
-\ifx\l@german\undefined                \newlanguage\l@german \fi
-\ifx\l@dutch\undefined         \newlanguage\l@dutch \fi
-\ifx\l@french\undefined                \newlanguage\l@french \fi
-\ifx\l@afrikaans\undefined     \newlanguage\l@afrikaans \fi
-\ifx\l@italian\undefined       \newlanguage\l@italian \fi
-%
-\DeclareOption{english}{\invoice@language=\number\l@english}
-\DeclareOption{german}{\invoice@language=\number\l@german}
-\DeclareOption{dutch}{\invoice@language=\number\l@dutch}
-\DeclareOption{french}{\invoice@language=\number\l@french}
-\DeclareOption{afrikaans}{\invoice@language=\number\l@afrikaans}
-\DeclareOption{italian}{\invoice@language=\number\l@italian}
-%
-\ProcessOptions
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% -------------------      initial code      -------------------
-%
-\RequirePackage{ifthen}
-\RequirePackage{longtable}
-\RequirePackage{calc}
-\input{realcalc}
-\input{invoice.def}
-%
-\newcommand{\InvoiceVersion}{0.7}%
-\newcounter{Fee}               %
-\newcounter{VAT}               %
-%\newcounter{VAT@rate}         %
-\newcounter{Expenses}          %
-\newcounter{Discount}          % Discount item
-\newcounter{Total}             %
-\newcounter{Project}           %
-%
-\newcounter{Fee@ctr}           % Number of fees per project
-                               % no subtotal will be printed in case of
-                               % value < 2
-%
-\newcounter{Expense@ctr}       % Number of expense items per project
-                               % no subtotal will be printed in case of
-                               % value < 2
-%
-\newcounter{One@Fee}           % Individual Fee
-\newcounter{One@VAT}           % Individual VAT
-\newcounter{One@Expense}       % Individual Expense
-%
-\newcounter{ST@Fee}            % Subtotal Fee
-\newcounter{ST@VAT}            % Subtotal VAT
-\newcounter{ST@Expenses}       % Subtotal Expenses
-\newcounter{ST@Project}                % Subtotal Project
-%
-\gdef\Flag{0}%                 % State 0: Invoice not started yet
-                               % State 1: Start invoice
-                               % State 2: Start project, print title
-                               % State 3: Fee Item
-                               % State 4: Print Subtotal Fee
-                               % State 5: Expense Item
-                               % State 6: Print Subtotal Expenses
-                               % State 7: Print Subtotal Project
-                               % State 8: Print Total, Close invoice
-%
-\gdef\Project{}%               % Empty Project Name
-\def\Null{0}%
-\newif\ifVATnonzero
-% \def\BC{Euro}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%\newcommand{\my@message}[1]{\message{^^J#1^^J^^J}}
-\newcommand{\error@message}[1]{\errmessage{^^J\Error: #1^^J^^J}}
-\newcommand{\warning@message}[1]{\message{^^J\Warning: #1^^J^^J}}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ifx\invoice\undefined                 % False if KOMA Script scrlettr.cls
-       \def\my@invoice{invoice}        % loaded. In this case one may say
-\else                                  % "invoice". If true, the environ-
-       \def\my@invoice{invoiceenv}     % ment is renamed to "invoiceenv"
-       \let\invoiceno\invoice          % and the scrlettr macro is renamed
-       \def\invoice#1{%                % to "invoiceno". Thank you, Thilo,
-               \error@message{\KOMA}}  % for this hint!
-\fi                                    %
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newenvironment{\my@invoice}[2]{%
-       \setcounter{Fee@ctr}{0}%                % reset counter
-       \setcounter{Expense@ctr}{0}%            % reset counter
-       \def\Null{0}%
-       \setcounter{Project}{0}%
-       \ST@Reset\Total@Reset%
-       \def\BC{#1}%
-       \def\VAT@rate{#2}%
-       \ifx\VAT@rate\Null\VATnonzerofalse\else\VATnonzerotrue\fi%
-       \ifVATnonzero
-               \message{^^J^^JVAT is not zero!^^J^^J}%
-       \else
-               \message{^^J^^JVAT is zero!^^J^^J}%
-       \fi%
-       % The VAT is: \the\VAT@rate % Debugging Diagnostics only
-       \parindent=0cm%
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \gdef\Flag{1}%
-               \begin{center}%
-               \begin{longtable}{p{5cm}lrrr}%
-               %
-       \else \error@message{\NoInvoiceNesting}%
-       \fi}%
-% At the end of environment: 
-% Yields state 8->0, Close and complete invoice, finish tables, etc.
-{% 
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \error@message{\MissingInputData}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \ifnum\theProject>0 \ST@Fee\ST@Project\fi%
-               \Tot@l%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               \ifnum\theProject>1 \ST@Project\fi%
-               \Tot@l%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \ifnum\theProject>1 \ST@Expenses\ST@Project\fi%
-               \Tot@l%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \ifnum\theProject>1 \ST@Project\fi%
-               \Tot@l%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-               \Tot@l%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \warning@message{\InvoiceCompleted}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-       \gdef\Flag{0}%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\ProjectTitle}[1]{% Yields state 2: Start Project
-       %\gdef\NewProject{#1}
-       %
-       \ifcase\Flag% 0: Invoice not started yet
-       %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \Project@Title{#1}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \error@message{\NoProjectNesting}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \ST@Fee%
-               \ST@Project%
-               \Project@Title{#1}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               \ST@Project%
-               \Project@Title{#1}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \ST@Expenses%
-               \ST@Project%
-               \Project@Title{#1}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \ST@Project%
-               \Project@Title{#1}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-               \Project@Title{#1}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoProject}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-       \setcounter{Fee@ctr}{0}%                % reset counter
-       \setcounter{Expense@ctr}{0}%            % reset counter
-}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Fee}[3]{% Yields state 3, Print Fee Item
-       %
-       % #1 Contents
-       % #2 Fee per Unit
-       % #3 Unit Count
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \Fee@Title%
-               \Fee@Line{#1}{#2}{#3}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \Fee@Line{#1}{#2}{#3}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               \warning@message{\FeeSTExists}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \error@message{\FeeBeforeExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \error@message{\FeeBeforeExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-               \error@message{\ProjectCompletedNoFee}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoFee}%
-               %
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\STFee}{% Yields state 4, print subtotal remuneration
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \error@message{\MissingFee}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \Print@ST@Fees%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               \warning@message{\FeeSTExists}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \error@message{\FeeBeforeExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \error@message{\FeeBeforeExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-               \error@message{\ProjectCompletedNoFee}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\ProjectCompletedNoFee}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\EBC}[2]{% Yields state 5: Expenses in BaseCurrency 
-       %
-       % #1 Contents und Datum
-       % #2 Amount in BaseCurrency
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \Expense@Title%
-               \Expense@BaseCurrency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \ST@Fee%
-               \Expense@Title%
-               \Expense@BaseCurrency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               \Expense@Title%
-               \Expense@BaseCurrency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %   
-               \Expense@BaseCurrency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoExpense}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\EBCi}[2]{% Yields state 5: Expenses in BaseCurrency 
-       %                               But, unlike base form (no
-       %                               'invisible') this version does
-       %                               not state the item, it only
-       %                               the total amount of expenses. 
-       %
-       % #1 Contents und Datum
-       % #2 Amount in BaseCurrency
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               %\Expense@Title%
-               \Expense@Base@Currency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \ST@Fee%
-               %\Expense@Title%
-               \Expense@Base@Currency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               %\Expense@Title%
-               \Expense@Base@Currency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %   
-               \Expense@Base@Currency{#1}{#2}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoExpense}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\EFC}[5]{% Yields state 5: Expenses in ForeignCurrency
-       %
-       % #1 Contents und Datum
-       % #2 Currency
-       % #3 Amount
-       % #4 Exchange Rate
-       % #5 Amount Zielwaehrung
-       %
-       % Usage:
-       % 1. {Contents}{ForeignCurrency}{ExchangeRate}{}
-       % 2. {Contents}{ForeignCurrency}{}{BaseCurrency}
-       % 3. {Contents}{ForeignCurrency}{ExchangeRate}{BaseCurrency}
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \Expense@Title%
-               \Expense@ForeignCurrency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \ST@Fee%
-               \Expense@Title%
-               \Expense@ForeignCurrency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               \Expense@Title%
-               \Expense@ForeignCurrency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \Expense@ForeignCurrency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \error@message{\ProjectCompletedNoExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-               \error@message{\ProjectCompletedNoExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoExpense}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\EFCi}[5]{% Yields state 5: Expenses in ForeignCurrency
-       %                               But, unlike base form (no
-       %                               'invisible') this version does
-       %                               not state the item, it only
-       %                               the total amount of expenses. 
-       %
-       % #1 Contents und Datum
-       % #2 Currency
-       % #3 Amount
-       % #4 Exchange Rate
-       % #5 Amount Zielwaehrung
-       %
-       % Usage:
-       % 1. {Contents}{ForeignCurrency}{ExchangeRate}{}
-       % 2. {Contents}{ForeignCurrency}{}{BaseCurrency}
-       % 3. {Contents}{ForeignCurrency}{ExchangeRate}{BaseCurrency}
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \Expense@Title%
-               \Expense@Foreign@Currency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \ST@Fee%
-               % \Expense@Title%
-               \Expense@Foreign@Currency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               % \Expense@Title%
-               \Expense@Foreign@Currency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \Expense@Foreign@Currency{#1}{#2}{#3}{#4}{#5}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \error@message{\ProjectCompletedNoExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-               \error@message{\ProjectCompletedNoExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoExpense}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\STExpenses}{% Yields state 6: Ausgabe der ST Expenses
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-               %
-       \or     % 2: Start project, print title
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-               %
-       \or     % 3: Print remuneration item
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-               %
-       \or     % 4: Print subtotal remuneration
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \Print@ST@Expenses%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \warning@message{\ProjectCompletedNoExpense}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoExpense}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\STProject}{% Yields state 7: Ausgabe der ST Project
-       %
-       \ifcase\Flag % 0: Invoice not started yet
-               %
-               \error@message{\MissingOpening}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 1: Start invoice
-               %
-               \error@message{\MissingProject}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 2: Start project, print title
-               %
-               \warning@message{\ProjectEmpty}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 3: Print remuneration item
-               %
-               \ST@Fee%
-               \ST@Project%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 4: Print subtotal remuneration
-               %
-               \ST@Project%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 5: Expense item
-               %
-               \ST@Expenses%
-               \ST@Project%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 6: Print subtotal expenses
-               %
-               \ST@Project%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 7: Print subtotal project
-               %
-               \warning@message{\ProjectSTExists}%
-               %
-       %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-       \or     % 8: Print total, close invoice
-               %
-               \error@message{\InvoiceCompletedNoProjectST}%
-               %
-       \else \error@message{\InternalError}%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Discount}[2]{%    Yields no particular state.
-       %                       Inserts discount in project total,
-       %                       names discount reason
-       %                       and amount of discount
-       %
-       \gdef\Discount@Contents{#1}%
-       \setcounter{Discount}{100 * \real{-#2}}%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Total@Reset}{%
-       \setcounter{Fee}{0}%
-       \setcounter{VAT}{0}%
-       \setcounter{Expenses}{0}%
-       \setcounter{Total}{0}%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\ST@Reset}{%
-       \setcounter{ST@Fee}{0}%
-       \setcounter{ST@VAT}{0}%
-       \setcounter{ST@Expenses}{0}%
-       \setcounter{ST@Project}{0}%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Print@Value}[1]{%
-       \Rmul\r#1{0.01}%% <- Reduce to BaseCurrency
-       \Rtrunc\r{2}\r% % <- Truncate to two digits
-       \r%             % <- Output data!
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Message@Value}[1]{%
-       \Rmul\r#1{0.01}%% <- Reduce to BaseCurrency
-       \Rtrunc\r{2}\r% % <- Truncate to two digits
-       \message{\r}%   % <- Output data!
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Project@Title}[1]{%
-       % Internal command called by \ProjectTitle.
-       %
-       \gdef\Flag{2}%
-       \gdef\Project{#1}%
-       \ST@Reset\addtocounter{Project}{1}%
-       \ifnum\theProject>1 \\\\\else\\\fi%
-       \multicolumn{5}{c}{\textbf{\large#1}}\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Fee@Title}{%
-       \\
-       \noindent\textbf{\Activity}&&\UnitRate&\Count&\Amount\ (\BC)\\
-       \hline%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Fee@Line}[3]{%
-       %
-       % #1 Contents
-       % #2 Charged Fee per Unit
-       % #3 Count
-       %
-       % Internal command, called by \Fee.
-       %
-       \gdef\Flag{3}%
-       %
-       #1                      &             &
-%
-%   next is reversed to allow real arithmetic.
-%   intermediate results are stored in integer format, so calculations are
-%   incorrect in case #2 is a real.
-%   fixed by exchanging the 1 and the 100
-%
-               \setcounter{One@Fee}{100 * \real{#2} * \real{#3} * 1}%
-%
-               \addtocounter{ST@Fee}{\theOne@Fee}%
-               \addtocounter{Fee}{\theOne@Fee}%
-               \addtocounter{Fee@ctr}{1}%          increase counter with 1
-               \Print@Value{\theOne@Fee}\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\ST@Fee}{%
-       % \gdef\Flag{4}%
-       \ifnum\theST@Fee>0%
-           \ifthenelse{\theFee@ctr>1} %            % if more than 1 \Fee line
-               {\Print@ST@Fees%                                        % print it, else
-               }%
-           {}%                                                                 % do nothing
-               \ifVATnonzero\ST@VAT@Printout\fi%
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Print@ST@Fees}{%
-       \gdef\Flag{4}%
-       \SubtotalFee &  &       &       &%      print the subtotal of fees
-               \Print@Value{\theST@Fee}\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\ST@VAT@Printout}{%
-               \VAT\ (\VAT@rate\%)      &      &       &       &%
-                       \setcounter{ST@VAT}{\theST@Fee * \real{\VAT@rate} / 100}%
-                               \Print@Value{\theST@VAT}\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Expense@BaseCurrency}[2]{%
-       #1                      & \BC           &       &       &%
-       \gdef\Flag{5}%
-       \Rmul\r{100}{#2}%
-       \setcounter{One@Expense}{1*\real{\r}}%
-       \addtocounter{ST@Expenses}{\theOne@Expense}%
-       \addtocounter{Expenses}{\theOne@Expense}%
-       \addtocounter{Expense@ctr}{1}%advance counter
-                               \Print@Value{\theOne@Expense}\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Expense@Base@Currency}[2]{%
-       \gdef\Flag{5}%
-       \Rmul\r{100}{#2}%
-       \setcounter{One@Expense}{1*\real{\r}}%
-       \addtocounter{ST@Expenses}{\theOne@Expense}%
-       \addtocounter{Expenses}{\theOne@Expense}%
-       \addtocounter{Expense@ctr}{1}%advance counter
-               &       &       &       &       \\[-1.2em]% This is an ugly kludge:
-                                                                 %     Inserting an empty line
-                                                                 % which rolls backwards
-                                                                 % makes disappear the spurious
-                                                                 % spaces caused by external
-                                                                 % routines.
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Expense@ForeignCurrency}[5]{%
-       \gdef\Flag{5}%
-       %
-       % Folgende Angaben sind moeglich:
-       % 1. {Contents}{Currency}{Amount}{Umrechnung}{  }
-       % 2. {Contents}{Currency}{Amount}{          }{BaseCurrency}
-       % 3. {Contents}{Currency}{Amount}{Umrechnung}{BaseCurrency}
-       %
-       #1       & #2   & #3    & #4&%
-       \ifthenelse{\equal{#5}{}}% Target in BaseCurrency or not?
-               {% Target not in BaseCurrency
-                       \Rmul\r{100}{#3}%
-                       \Rmul\r \r {#4}%
-               }%
-               {% Target in BaseCurrency
-                       \Rmul\r{100}{#5}%
-               }%
-       \setcounter{One@Expense}{1*\real{\r}}%
-       \addtocounter{ST@Expenses}{\theOne@Expense}%
-       \addtocounter{Expenses}{\theOne@Expense}%
-       \addtocounter{Expense@ctr}{1}%advance counter
-       \Print@Value{\theOne@Expense}%
-\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Expense@Foreign@Currency}[5]{%
-       \gdef\Flag{5}%
-       %
-       % Folgende Angaben sind moeglich:
-       % 1. {Contents}{Currency}{Amount}{Umrechnung}{  }
-       % 2. {Contents}{Currency}{Amount}{          }{BaseCurrency}
-       % 3. {Contents}{Currency}{Amount}{Umrechnung}{BaseCurrency}
-       %
-       \ifthenelse{\equal{#5}{}}% Target in BaseCurrency or not?
-               {% Target not in BaseCurrency
-                       \Rmul\r{100}{#3}%
-                       \Rmul\r\r{#4}%
-               }%
-               {% Target in BaseCurrency
-                       \Rmul\r{100}{#5}%
-               }%
-       \setcounter{One@Expense}{1*\real{\r}}%
-       \addtocounter{ST@Expenses}{\theOne@Expense}%
-       \addtocounter{Expenses}{\theOne@Expense}%
-       \addtocounter{Expense@ctr}{1}%advance counter
-               &       &       &       &       \\[-1.2em]% ugly kludge as above
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Expense@Title}{%
-       \\%
-       \textbf{\Expense}&\Currency&\Amount&\Factor &\BC\\%
-       \hline%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\ST@Expenses}{%
-       % \gdef\Flag{6}%
-       \ifnum\theST@Expenses>0%
-           \ifthenelse{\theExpense@ctr>1}%         % if more than 1 Expense line
-               {\Print@ST@Expenses}%                           % print it, else
-               {}%                                                                     % do nothing
-       \fi%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Print@ST@Expenses}{%
-       \gdef\Flag{6}%
-               &       &       &       &       \\[-1.2em]% ugly kludge as above
-       \SubtotalExpenses &     &       &       &%      print the subtotal of expenses
-               \Print@Value{\theST@Expenses}\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\ST@Project}{%
-       \gdef\Flag{7}%
-       \\
-       %\multicolumn{4}{l}{\SubtotalProject}%
-       %\let\Project\NewProject%
-       %&
-       \SubtotalProject &      &       &       & 
-                       \addtocounter{ST@Project}{\theST@Fee}%
-                       \addtocounter{ST@Project}{\theST@VAT}%
-                       \addtocounter{ST@Project}{\theST@Expenses}%
-                       \Print@Value{\theST@Project}\\
-}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Total@VAT@Printout}{%
-               \setcounter{VAT}{\theFee*\real{\VAT@rate}/100}%
-                       \SumVAT &       &       &       &\Print@Value{\theVAT}\\%
-}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Tot@l}{%
-       \\\hline
-       \ifnum\theFee>0 \SumFees&       &       &       &%
-                               \Print@Value{\theFee}\\ 
-               \ifVATnonzero%
-                       \Total@VAT@Printout%
-               \fi%
-       \fi%
-       \ifnum\theExpenses>0 \SumExpenses&      &       &       &%
-                               \Print@Value{\theExpenses}\\ 
-       \fi%
-       \ifnum\theDiscount=0 \else \Discount@Contents&  &       &       &%
-                               \Print@Value{\theDiscount}\\ 
-       \fi%
-       \hline\hline
-       \textbf{\Total} &       &       &       &%
-               \message{^^J\Currency: \BC}%
-               \message{^^J\VAT: \VAT@rate}%
-               \addtocounter{Total}{\theFee}%
-               \message{^^J\SumFees: }\Message@Value{\theFee}%
-               \addtocounter{Total}{\theVAT}%
-               \message{^^J\SumVAT: }\Message@Value{\theVAT}%
-               \addtocounter{Total}{\theExpenses}%
-               \message{^^J\SumExpenses: }\Message@Value{\theExpenses}%
-               \ifnum\theDiscount=0 \else %
-               \addtocounter{Total}{\theDiscount}%
-               \message{^^J\Discount@Contents: }\Message@Value{\theDiscount}%
-               \fi %
-               \textbf{\Print@Value{\theTotal}}%
-               \message{^^J\Total: }%
-                       \Message@Value{\theTotal}\message{^^J^^J}\\%
-       \end{longtable}
-       \end{center}
-       \gdef\Flag{8}%
-}
-\endinput
-% vim:ts=4:sw=4
 
+++ /dev/null
-%% realcalc.tex
-%%
-%% (C) Frank Buchholz, Jan. 1993
-%% e-mail: buchholz@lusty.informatik.uni-dortmund.de
-%  User documentation: All lines starting with two %
-%  Try grep to extract these lines.
-%%
-%% Real arithmetic with big values and high precision.
-%% Calculations are done with 9 decimal digits.
-%% Usable with TeX and LaTeX.
-%%
-%% Parameter:
-%%
-%%     <macro> Macro, witch catches the result.
-%%     <value> String or macro witch expands to a value in the range 
-%%                 from -2147483647.999999999 to 2147483647.999999999
-%%     <precision> Number from 0 to 9
-%%
-%% Functions:
-%%
-
-% Don't read this file twice
-\ifx\Radd\undefined \else \endinput \fi
-
-% Make "@" be a letters
-\chardef\catamp=\the\catcode`\@
-\catcode`@=11
- 
-\def\@Rversion{Version 1.0, Jan. 1993}
-\message{`Real arithmetic', \@Rversion (C) Frank Buchholz}
-
-% Allocation of temporary registers
-\newcount\@ta
-\newcount\@tb
-%
-\newcount\@xs  % Sign of 1st value
-\newcount\@xi  % Integer part of 1st value
-\newcount\@xf  % Fractional part of 1st value
-%
-\newcount\@ys  % Sign of 2nd value
-\newcount\@yi  % Integer part of 2nd value
-\newcount\@yf  % Fractional part of 2nd value
-%
-\newcount\@mil \@mil=1000000000        % 10^9
-%
-\countdef\@xa240
-\countdef\@xb241
-\countdef\@xc242
-\countdef\@xd243
-\countdef\@xe244
-\countdef\@ya245
-\countdef\@yb246
-\countdef\@yc247
-\countdef\@yd248
-\countdef\@ye249
-\let\@f=\@tb
-\let\@product=\@ta
-
-\chardef\@zero=0
-
-%%     \Radd<macro><value><value>              Addition
-\def\Radd#1#2#3{\@callc\@Radd#1{#2}{#3}}
-
-%%     \Rsub<macro><value><value>              Subtraction
-\def\Rsub#1#2#3{\@callc\@Radd#1{#2}{-#3}}
-
-\def\@Radd#1#2.#3.#4\relax#5.#6.#7\relax{%
-  % #1 Macro, witch gets the result
-  % #2 integer part of 1st value 
-  % #3 fractional part of 1st value
-  % #4 dummy to swallow everthing after the 2nd '.'
-  % #5 integer part of 2nd value 
-  % #6 fractional part of 2nd value
-  % #7 dummy to swallow everthing after the 2nd '.'
-  %
-  \@readvalue\@xs\@xi\@xf{#2}{#3}%
-  \@readvalue\@ys\@yi\@yf{#5}{#6}%
-  %
-  % Add integer parts
-  \@ta=\@xi \advance\@ta\@yi%
-  %
-  % Add fractional parts if they are not zero
-  \ifnum\@xf=\@zero%
-    \ifnum\@yf=\@zero%
-      \@tb=\@zero%
-    \else%
-      \@longadd%
-    \fi%
-  \else%
-    \@longadd%
-  \fi%
-  %
-  % Store result
-  \@store#1\@ta\@tb%
-}
-
-\def\@longadd{%
-    % Propagate sign to fractional parts
-    \multiply\@xf\@xs \multiply\@yf\@ys%
-    %
-    % Add fractional parts
-    \@tb=\@xf \advance\@tb\@yf%
-    %
-    % Calculate carry
-    \ifnum\@tb<\@zero% 
-      \ifnum\@tb<-\@mil      \advance\@ta -\@ne \advance\@tb\@mil  \fi% 
-    \else% 
-      \ifnum\@tb<\@mil \else \advance\@ta \@ne \advance\@tb-\@mil \fi% 
-    \fi%
-} 
-
-%%     \Rmul<macro><value><value>              Multiplication
-\def\Rmul#1#2#3{\@callc\@Rmul#1{#2}{#3}}
-
-\def\@Rmul#1#2.#3.#4\relax#5.#6.#7\relax{%
-  % #1 Macro, witch gets the result
-  % #2 integer part of 1st value 
-  % #3 fractional part of 1st value
-  % #4 dummy to swallow everthing after the 2nd '.'
-  % #5 integer part of 2nd value 
-  % #6 fractional part of 2nd value
-  % #7 dummy to swallow everthing after the 2nd '.'
-  %
-  % How to do real multiplications:
-  % Split values in various parts
-  % x y = 1234 567890 . 123 456 789
-  % ->   xa   xb       xc  xd  xe
-  % ->   ya   yb       yc  yd  ye
-  % Do 21 (!) integer multiplications if there are any fractional parts
-  % r = x * Y
-  % -> r =   xi*yi
-  %       + (xa*yc + xa*yc                  )*10^3 
-  %       + (xa*yd + xd*ya                  )*10^-0 
-  %       + (xa*ye + xe*ya  +  xb*yc + xc*yb)*10^-3 
-  %       + (xb*yd + xd*yb  +  xc*yc        )*10^-6 
-  %       + (xb*ye + xe*yb  +  xc*yd + xd*yc)*10^-9 
-  %       + (xc*ye + xe*yc  +  xd*yd        )*10^-12 
-  %       + (xd*ye + xe*yd                  )*10^-15 
-  %       + (xe*ye                          )*10^-18
-  %
-  % -> r = ((((( xe*ye                              / 1000 
-  %            + xd*ye + xe*yd                   ) / 1000
-  %           + xc*ye + xe*yc  +  xd*yd         ) / 1000
-  %          + xb*ye + xe*yb  +  xc*yd + xd*yc ) / 1000
-  %         + xb*yd + xd*yb  +  xc*yc         ) / 1000
-  %        + xa*ye + ye*xa  +  xb*yc + xc*yb ) / 1000
-  %       + xa*yd + xd*ya + (xa*yc + ya*xc)*1000 + xi*yi
-  % The last three digigs are saved just before the divisions.
-  %
-  % Init 
-  %
-  \@readvalue\@xs\@xi\@xf{#2}{#3}%
-  \@readvalue\@ys\@yi\@yf{#5}{#6}%
-  %
-  % Sign
-  \multiply\@xi\@xs%
-  \multiply\@yi\@ys%
-  \multiply\@xs\@ys%
-  %
-  \@product=\@zero%
-  % 
-  \ifnum\@xf=\@zero%
-    \ifnum\@yf=\@zero%
-      % No fractional parts
-      \edef\@frac{000000000}   % digits of fractional part  
-    \else%
-      \@longmul                        % Long multiplication           
-    \fi%
-  \else%
-    \@longmul                  % Long multiplication           
-  \fi%
-  %
-  % Multiply integer parts
-  \count@=\@xi \multiply\count@\@yi%
-  \advance\@product\count@%
-  %
-  % Sign
-  \multiply\@product\@xs%
-  %
-  % Store result
-  \edef#1{\number\@product.\@frac}%
-}
-
-% Do long multiplication
-\def\@longmul{%
-    % Split values in pieces
-    \@f=1000000%
-    \count@=\@xi%              
-    \divide\count@\@f                                  \@xa=\count@%
-    \multiply\count@-\@f       \advance\count@\@xi     \@xb=\count@%
-    \count@=\@xf%              
-    \divide\count@\@f                                  \@xc=\count@%
-    \multiply\count@-\@f       \advance\count@\@xf%    
-    \@f=1000%
-    \@xe=\count@%
-    \divide\count@\@f                                  \@xd=\count@%
-    \multiply\count@-\@f       \advance\count@\@xe     \@xe=\count@%
-    % 
-    \@f=1000000%
-    \count@=\@yi%              
-    \divide\count@\@f                                  \@ya=\count@%
-    \multiply\count@-\@f       \advance\count@\@yi     \@yb=\count@%
-    \count@=\@yf%              
-    \divide\count@\@f                                  \@yc=\count@%
-    \multiply\count@-\@f       \advance\count@\@yf%    
-    \@f=1000%
-    \@ye=\count@%
-    \divide\count@\@f                                  \@yd=\count@%
-    \multiply\count@-\@f       \advance\count@\@ye     \@ye=\count@%
-    %
-    \edef\@frac{}                              % digits of fractional part
-    % 
-    \@mul ee         \relax\@shift             % 10^-18
-    \@mul de ed       \relax\@shift            % 10^-15
-    \@mul ce ec dd    \relax\@shift            % 10^-12
-    \@mul be eb cd dc \relax\@saveshift                % 10^-9
-    \@mul bd db cc    \relax\@saveshift                % 10^-6
-    \@mul ae ea bc cb \relax\@saveshift                % 10^-3
-    \multiply\@xa\@f  \multiply\@xc\@f         % 10^3
-    \@mul ad da ac ca \relax%                  
-}
-
-\def\@mul#1#2#3{%
-  \count@=\csname @x#1\endcsname%
-  \multiply\count@\csname @y#2\endcsname%
-  \advance\@product\count@%
-  %
-  \ifx#3\relax%
-    \let\next=\relax% 
-  \else%
-    \let\next=\@mul%
-  \fi%
-  \next#3%
-}
-
-\def\@shift{%
-  \divide\@product\@f%
-}
-
-\def\@saveshift{%
-  % Save rightmost digits 
-  \count@=\@product%
-  \divide\@product\@f%
-  \multiply\@product\@f%
-  \advance\count@-\@product%
-  \advance\count@\@f%
-  \edef\@frac{\expandafter\@ignorenext\number\count@\@frac}%
-  %
-  \divide\@product\@f%
-}
-
-%%     \Rdiv<macro><value><value>              Division
-\def\Rdiv#1#2#3{\@callc\@Radd#1{#2}{#3}}
-
-\def\@Rdiv#1#2.#3.#4\relax#5.#6.#7\relax{%
-  % #1 Macro, witch gets the result
-  % #2 integer part of 1st value 
-  % #3 fractional part of 1st value
-  % #4 dummy to swallow everthing after the 2nd '.'
-  % #5 integer part of 2nd value 
-  % #6 fractional part of 2nd value
-  % #7 dummy to swallow everthing after the 2nd '.'
-  %
-  \message{Error: Rdiv not ready}
-  %
-  \@readvalue\@xs\@xi\@xf{#2}{#3}%
-  \@readvalue\@ys\@yi\@yf{#5}{#6}%
-  %
-  \ifnum\@yi=\@zero
-    \@xi=\@zero
-  \else
-    \divide\@xi\@yi
-  \fi
-  %
-  \@store#1\@xi\@xf%
-}
-
-%%     \Rneg<macro><value>             Negation
-\def\Rneg#1#2{%
-  % Expand the value and split it into the integer and the fractional part
-  \edef\next{\noexpand\@Rneg\noexpand#1#2..\noexpand\relax}%
-  \next%
-}
-
-\def\@Rneg#1#2.#3.#4\relax{
-  % #1 Macro, witch gets the result
-  % #2 Integer part of value
-  % #3 Fractional part of value
-  % #4 Remaining tokens
-  %
-  \@readvalue\@xs\@xi\@xf{#2}{#3}%
-  %
-  % Change sign
-  \multiply\@xi-\@ne%
-  \multiply\@xf-\@xs%
-  % 
-  % Store result
-  \@store#1\@xi\@xf%
-}
-
-%%
-%%     \Rtrunc<macro><precision><value> Truncate value to specified precision
-\def\Rtrunc#1#2#3{%
-  % Expand parameter and split the value into the integer and fractional part 
-  \edef\next{\noexpand\@Rtrunc\noexpand#1#2#3..\noexpand\relax}%
-  \next%
-}
-
-\def\@Rtrunc#1#2#3.#4.#5\relax{%
-  % #1 Macro, witch gets the result
-  % #2 Number of decimal places
-  % #3 Integer part of value
-  % #4 Fractional part of value
-  % #5 dummy to swallow everthing after the 2nd '.'
-  %
-  \count@=#2%
-  \edef\next{\empty}%
-  \ifnum\count@>\@zero%
-    \expandafter\@@Rtrunc#4000000000\relax%
-  \fi%
-  \edef#1{#3\next}%
-}
-
-\def\@@Rtrunc#1#2#3#4#5#6#7#8#9{%
-  % #1...#9 fractional part, padded with trailing zeros
-  \edef\next{.#1%
-    \ifnum\count@>1 #2\fi%
-    \ifnum\count@>2 #3\fi%
-    \ifnum\count@>3 #4\fi%
-    \ifnum\count@>4 #5\fi%
-    \ifnum\count@>5 #6\fi%
-    \ifnum\count@>6 #7\fi%
-    \ifnum\count@>7 #8\fi%
-    \ifnum\count@>8 #9\fi%
-  }%
-  \@swallow%
-}
-
-%%
-%%     \Rifle<value><value>            Test v1 < v2
-\def\Rifle#1#2{\@callb\@Rifle{#1}{#2}}
-
-\def\@Rifle#1.#2.#3\relax#4.#5.#6\relax{%
-  % #1 integer part of 1st value 
-  % #2 fractional part of 1st value
-  % #3 dummy to swallow everthing after the 2nd '.'
-  % #4 integer part of 2nd value 
-  % #5 fractional part of 2nd value
-  % #6 dummy to swallow everthing after the 2nd '.'
-  %
-  \@readvalue\@xs\@xi\@xf{#1}{#2}%
-  \@readvalue\@ys\@yi\@yf{#4}{#5}%
-  %
-  \ifnum\@xs<\@ys% 
-    \Rtesttrue% 
-  \else%
-    \ifnum\@xs>\@ys% 
-      \Rtestfalse%
-    \else%
-      \Rtestfalse%
-      \ifnum\@xi<\@yi \Rtesttrue \fi%
-      \ifnum\@xi=\@yi%
-       \multiply\@xf\@xs \multiply\@yf\@ys%
-       \ifnum\@xf<\@yf \Rtesttrue \fi% 
-      \fi%
-    \fi%
-  \fi%
-  %
-  \ifRtest%
-}
-
-%%     \Rifeq<value><value>            Test v1 = v2
-\def\Rifeq#1#2{\@callb\@Rifeq{#1}{#2}}
-
-\def\@Rifeq#1.#2.#3\relax#4.#5.#6\relax{%
-  % #1 integer part of 1st value 
-  % #2 fractional part of 1st value
-  % #3 dummy to swallow everthing after the 2nd '.'
-  % #4 integer part of 2nd value 
-  % #5 fractional part of 2nd value
-  % #6 dummy to swallow everthing after the 2nd '.'
-  %
-  \@readvalue\@xs\@xi\@xf{#1}{#2}%
-  \@readvalue\@ys\@yi\@yf{#4}{#5}%
-  %
-  \Rtestfalse%
-  \ifnum\@xi=\@yi\ifnum\@xf=\@yf \Rtesttrue \fi\fi%
-  \ifRtest%
-}
-
-%%     \Rifgt<value><value>            Test v1 > v2
-\def\Rifgt#1#2{\@callb\@Rifgt{#1}{#2}}
-
-\def\@Rifgt#1.#2.#3\relax#4.#5.#6\relax{%
-  % #1 integer part of 1st value 
-  % #2 fractional part of 1st value
-  % #3 dummy to swallow everthing after the 2nd '.'
-  % #4 integer part of 2nd value 
-  % #5 fractional part of 2nd value
-  % #6 dummy to swallow everthing after the 2nd '.'
-  %
-  \@readvalue\@xs\@xi\@xf{#1}{#2}%
-  \@readvalue\@ys\@yi\@yf{#4}{#5}%
-  %
-  \ifnum\@xs>\@ys% 
-    \Rtesttrue% 
-  \else%
-    \ifnum\@xs<\@ys% 
-      \Rtestfalse% 
-    \else%
-      \Rtestfalse%
-      \ifnum\@xi>\@yi \Rtesttrue \fi%
-      \ifnum\@xi=\@yi% 
-       \multiply\@xf\@xs \multiply\@yf\@ys%
-       \ifnum\@xf>\@yf \Rtesttrue \fi% 
-      \fi%
-    \fi%
-  \fi%
-  %
-  \ifRtest%
-}
-
-%%     \Rifneg<value>                  Test v < 0
-\def\Rifneg#1{\@calla\@Rifneg{#1}}
-
-\def\@Rifneg#1.#2.#3\relax{%
-  % #1 Integer part of value
-  % #2 Fractional part of value
-  % #3 dummy to swallow everthing after the 2nd '.'
-   %
-   \@readvalue\@xs\@xi\@xf{#1}{#2}%
-   %
-   \ifnum\@xs<0 \Rtesttrue \else \Rtestfalse \fi%
-   \ifRtest%
- }
-
-%%     \Rifzero<value>                 Test v = 0
-\def\Rifzero#1{\@calla\@Rifzero{#1}}
-
-\def\@Rifzero#1.#2.#3\relax{%
-  % #1 Integer part of value
-  % #2 Fractional part of value
-  % #3 dummy to swallow everthing after the 2nd '.'
-  %
-  \@readvalue\@xs\@xi\@xf{#1}{#2}%
-  %
-  \Rtestfalse%
-  \ifnum\@xi=\@zero \ifnum\@xf=\@zero \Rtesttrue \fi \fi%
-  \ifRtest%
-}
-
-%%     \Rifpos<value>                  Test v >= 0
-%%                                     Take care to have a corresponding \fi
-\def\Rifpos#1{\@calla\@Rifpos{#1}}
-
-\def\@Rifpos#1.#2.#3\relax{%
-  % #1 Integer part of value
-  % #2 Fractional part of value
-  % #3 dummy to swallow everthing after the 2nd '.'
-  %
-  \@readvalue\@xs\@xi\@xf{#1}{#2}%
-  %
-  \ifnum\@xs<0 \Rtestfalse \else \Rtesttrue \fi%
-  \ifRtest%
-}
-
-%%     \Rifint<value>                  Test v is an integer value
-%%                                     Take care to have a corresponding \fi
-\def\Rifint#1{\@calla\@Rifint{#1}}
-
-\def\@Rifint#1.#2.#3\relax{%
-  % #1 Integer part of value
-  % #2 Fractional part of value
-  % #3 dummy to swallow everthing after the 2nd '.'
-  %
-  \@readvalue\@xs\@xi\@xf{#1}{#2}%
-  %
-  \ifnum\@xf=0 \Rtesttrue \else \Rtestfalse \fi%
-  \ifRtest%
-}
-
-% Utility macros
-
-\def\@calla#1#2{%
-  % #1 Macro to call
-  % #2 Value
-  % Expand the value and split them into the integer and the fractional part
-  \edef\next{\noexpand#1#2..\noexpand\relax}%
-  \next%
-}
-
-\def\@callb#1#2#3{%
-  % #1 Macro to call
-  % #2 1st value
-  % #3 2nd value
-  % Expand the values and split them into the integer and the fractional parts 
-  \edef\next{\noexpand#1#2..\noexpand\relax#3..\noexpand\relax}%
-  \next%
-}
-
-\def\@callc#1#2#3#4{%
-  % #1 Macro to call
-  % #2 Macro, witch gets the result
-  % #3 1st value
-  % #4 2nd value
-  % Expand the values and split them into the integer and the fractional parts
-  \edef\next{\noexpand#1\noexpand#2#3..\noexpand\relax#4..\noexpand\relax}%
-  \next%
-}
-
-%%     \ifRtest ... \else ... \fi      Re-execute the last test
-\newif\ifRtest
-
-%
-% Read value
-%
-\def\@readvalue#1#2#3#4#5{%
-  % #1   macro to catch the sign ( -1 or 1 )
-  % #2   macro to catch the integer part (maybe negative)
-  % #3   macro to catch the fractional part (positive)
-  % #4.#5 value
-  %
-  % Regular expression [-...d]d...["."[d...]]
-  % Attention: There has to be at least one digit between "-" and "."!
-  %
-  % Integer part
-  \if !#4! #2=\@zero \else #2=#4 \fi%
-  %
-  % Sign
-  \ifnum#2<\@zero #1=-\@ne \else #1=\@ne \fi%
-  \ifnum#2=\@zero \ifnum #4#5<\@zero #1=-\@ne \fi \fi%
-  %
-  % Fractional part
-  \if !#5!% 
-    #3=\@zero%
-  \else%
-    \@@setcount@#5000000000\relax%
-    #3=\count@%
-  \fi%
-}
-
-% Set count@ to fractional part with trailing zeros
-\def\@@setcount@#1#2#3#4#5#6#7#8#9{%
-  % #1...#9 fractional part, padded with '0'
-  \count@=#1#2#3#4#5#6#7#8#9%
-  \@swallow%
-}
-
-% Swallow everything up to next \relax
-\def\@swallow#1\relax{}
-
-%
-% Store result 
-%
-\def\@store#1#2#3{%
-  % #1 marcro to catch the result
-  % #2 counter with integer part (maybe negative)
-  % #3 counter with fractional part (maybe negative}
-  % 
-  % Sign
-  \edef#1{}%
-  \count@=#3%
-  \ifnum\count@<\@zero% 
-    \count@=-\count@%
-    \ifnum#2=\@zero% 
-      \edef#1{-}%
-    \fi%
-  \fi%
-  %
-  % Pad fractional part with leading zeros
-  \advance\count@\@mil%
-  %
-  % Store result 
-  \edef#1{#1\number#2.\expandafter\@ignorenext\number\count@}%
-}
-
-% Ignore next token
-\def\@ignorenext#1{}
-
-% Restore catcode of "@"
-\catcode`\@=\catamp