```tex
% @(#) $Id$

\documentclass[a4paper]{article}
\usepackage[dvips]{graphicx}
\usepackage{verbatim}
\usepackage{longtable}
\usepackage{alltt}
% Need textcomp for \textdegree.
\usepackage{textcomp}
% Use hyperref to get bookmarks and links in created PDF file.
% hyperref package manual states that it should be last because it
% overwrites some internal LaTeX definitions.
\usepackage[dvips, bookmarks]{hyperref}


% Current software version number and release date
% set by ant Replace task during build.
%
\title{Mapyrus Project Version @software_version_token@}
\date{@release_date_token@}
\author{Simon Chenery (\texttt{simoc@users.sourceforge.net})}

\begin{document}
\maketitle

\newpage
\tableofcontents

\newpage
\listoffigures

\include{intro}
\include{availability}
\include{feedback}
\include{tutorial}
\include{reference}

\end{document}

```

Read version and release date from text files generated during build. This is better than replacing special tokens because it avoids modifying files that are in source control.
user
```tex
% @(#) $Id$

\documentclass[a4paper]{article}
\usepackage[dvips]{graphicx}
\usepackage{verbatim}
\usepackage{longtable}
\usepackage{alltt}
% Need textcomp for \textdegree.
\usepackage{textcomp}
% Use hyperref to get bookmarks and links in created PDF file.
% hyperref package manual states that it should be last because it
% overwrites some internal LaTeX definitions.
\usepackage[dvips, bookmarks]{hyperref}


% Current software version number and release date
% set by ant Replace task during build.
%
\title{Mapyrus Project Version \input{version.txt}}
\date{\input{timestamp.txt}}
\author{Simon Chenery (\texttt{simoc@users.sourceforge.net})}

\begin{document}
\maketitle

\newpage
\tableofcontents

\newpage
\listoffigures

\include{intro}
\include{availability}
\include{feedback}
\include{tutorial}
\include{reference}

\end{document}

```
assistant