diff --git a/src/Lines/LineTemplate.cpp b/src/Lines/LineTemplate.cpp
index 731eaf3bdb5a2872f458ef4fde5c2c6a3e462e6b..c26dce38ac957de3fb54f0526df0400f118eda94 100644
--- a/src/Lines/LineTemplate.cpp
+++ b/src/Lines/LineTemplate.cpp
@@ -1,31 +1,35 @@
-// ------------------------------------------------------------------------
-// $RCSfile: LineTemplate.cpp,v $
-// ------------------------------------------------------------------------
-// $Revision: 1.2 $
-// ------------------------------------------------------------------------
-// Copyright: see Copyright.readme
-// ------------------------------------------------------------------------
 //
-// Class: LineTemplate
-//   The class for storage of OPAL beam lines with arguments.
+// Class LineTemplate
+//
+//   An ``archetype'' for a OPAL beam line with arguments.
+//   The model is stored in form of a MacroStream.  A call to the macro line
+//   is expanded by first replacing the arguments, and then parsing the
+//   resulting stream as a LINE definition.
+//
+// Copyright (c) 2008 - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
 //
-// ------------------------------------------------------------------------
+// All rights reserved
 //
-// $Date: 2000/03/29 10:41:39 $
-// $Author: opal $
+// This file is part of OPAL.
+//
+// OPAL is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// You should have received a copy of the GNU General Public License
+// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
 //
-// ------------------------------------------------------------------------
 
 #include "Lines/LineTemplate.h"
+
+#include "Utility/PAssert.h"
+
 #include "AbstractObjects/OpalData.h"
 #include "Lines/Line.h"
 #include "Parser/SimpleStatement.h"
 #include "Utilities/ParseError.h"
 #include <vector>
-#include <cassert>
-
-// Class LineTemplate
-// ------------------------------------------------------------------------
 
 LineTemplate::LineTemplate():
     Macro(0, "LINE",
@@ -110,7 +114,8 @@ Object *LineTemplate::makeTemplate(const std::string &, TokenStream &, Statement
 
 void LineTemplate::parseTemplate(TokenStream &, Statement &statement) {
     parseFormals(statement);
-    assert(statement.keyword("LINE"));
+    bool isLine = statement.keyword("LINE");
+    PAssert(isLine);
 
     // Store the template list.
     Token token = statement.getCurrent();
@@ -128,8 +133,7 @@ void LineTemplate::parseTemplate(TokenStream &, Statement &statement) {
             body.append(token);
         }
     } else {
-        throw ParseError("Line::makeTemplate()",
+        throw ParseError("LineTemplate::parseTemplate()",
                          "Equals sign '=' expected.");
     }
-
-}
+}
\ No newline at end of file
diff --git a/src/Lines/LineTemplate.h b/src/Lines/LineTemplate.h
index 51e978a8626d7de2f7cebe73eb0eccca1ee0989a..237cef2a2719ec6f783ad64f40364a8ffd49f1e0 100644
--- a/src/Lines/LineTemplate.h
+++ b/src/Lines/LineTemplate.h
@@ -1,22 +1,28 @@
-#ifndef OPAL_LineTemplate_HH
-#define OPAL_LineTemplate_HH
-
-// ------------------------------------------------------------------------
-// $RCSfile: LineTemplate.h,v $
-// ------------------------------------------------------------------------
-// $Revision: 1.2 $
-// ------------------------------------------------------------------------
-// Copyright: see Copyright.readme
-// ------------------------------------------------------------------------
 //
-// Class: LineTemplate
+// Class LineTemplate
+//
+//   An ``archetype'' for a OPAL beam line with arguments.
+//   The model is stored in form of a MacroStream.  A call to the macro line
+//   is expanded by first replacing the arguments, and then parsing the
+//   resulting stream as a LINE definition.
+//
+// Copyright (c) 2008 - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
+//
+// All rights reserved
 //
-// ------------------------------------------------------------------------
+// This file is part of OPAL.
 //
-// $Date: 2000/03/29 10:41:40 $
-// $Author: opal $
+// OPAL is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
 //
-// ------------------------------------------------------------------------
+// You should have received a copy of the GNU General Public License
+// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
+//
+
+#ifndef OPAL_LineTemplate_HH
+#define OPAL_LineTemplate_HH
 
 #include "OpalParser/Macro.h"
 #include "OpalParser/MacroStream.h"
@@ -25,14 +31,6 @@ class Line;
 class Statement;
 class TokenStream;
 
-
-// Class LineTemplate
-// ------------------------------------------------------------------------
-/// An ``archetype'' for a OPAL beam line with arguments.
-//  The model is stored in form of a MacroStream.  A call to the macro line
-//  is expanded by first replacing the arguments, and then parsing the
-//  resulting stream as a LINE definition.
-
 class LineTemplate: public Macro {
 
     friend class Line;
@@ -73,4 +71,4 @@ private:
     MacroStream body;
 };
 
-#endif // OPAL_LineTemplate_HH
+#endif // OPAL_LineTemplate_HH
\ No newline at end of file
diff --git a/src/Lines/SequenceTemplate.cpp b/src/Lines/SequenceTemplate.cpp
index ec784e88601a5c129d2407d3f6b158ecd300152f..c2d02840e764504e92c856408216f54f9f96db49 100644
--- a/src/Lines/SequenceTemplate.cpp
+++ b/src/Lines/SequenceTemplate.cpp
@@ -1,22 +1,31 @@
-// ------------------------------------------------------------------------
-// $RCSfile: SequenceTemplate.cpp,v $
-// ------------------------------------------------------------------------
-// $Revision: 1.2 $
-// ------------------------------------------------------------------------
-// Copyright: see Copyright.readme
-// ------------------------------------------------------------------------
 //
-// Class: SequenceTemplate
-//   The class for storage of OPAL beam sequences with arguments.
+// Class SequenceTemplate
 //
-// ------------------------------------------------------------------------
+//   An ``archetype'' for a SEQUENCE with arguments.
+//   The model is stored in form of a MacroStream.  A call to the macro
+//   sequence is expanded by first replacing the arguments, and then parsing
+//   the resulting stream as a SEQUENCE definition.
 //
-// $Date: 2000/03/29 10:41:41 $
-// $Author: opal $
+// Copyright (c) 2008 - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
 //
-// ------------------------------------------------------------------------
+// All rights reserved
+//
+// This file is part of OPAL.
+//
+// OPAL is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// You should have received a copy of the GNU General Public License
+// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
+//
+
 
 #include "Lines/SequenceTemplate.h"
+
+#include "Utility/PAssert.h"
+
 #include "AbstractObjects/OpalData.h"
 #include "Lines/Sequence.h"
 #include "Lines/SequenceParser.h"
@@ -25,7 +34,6 @@
 #include "Parser/SimpleStatement.h"
 #include "Utilities/ParseError.h"
 #include <vector>
-#include <cassert>
 
 // Class SequenceTemplate
 // ------------------------------------------------------------------------
@@ -117,7 +125,8 @@ Object *SequenceTemplate::makeTemplate
 void SequenceTemplate::parseTemplate(TokenStream &is, Statement &statement) {
     // Save the formals.
     parseFormals(statement);
-    assert(statement.keyword("SEQUENCE"));
+    bool isSequence = statement.keyword("SEQUENCE");
+    PAssert(isSequence);
 
     // Parse the sequence header.
     Object::parse(statement);
@@ -140,4 +149,4 @@ void SequenceTemplate::parseTemplate(TokenStream &is, Statement &statement) {
         }
         token = is.readToken();
     }
-}
+}
\ No newline at end of file
diff --git a/src/Lines/SequenceTemplate.h b/src/Lines/SequenceTemplate.h
index 90d72bc13ddaa7c577791ed7c1be9398dfa11bda..96b9447c9041fde09b2059f3cc366139d4109eea 100644
--- a/src/Lines/SequenceTemplate.h
+++ b/src/Lines/SequenceTemplate.h
@@ -1,22 +1,28 @@
-#ifndef OPAL_SequenceTemplate_HH
-#define OPAL_SequenceTemplate_HH
-
-// ------------------------------------------------------------------------
-// $RCSfile: SequenceTemplate.h,v $
-// ------------------------------------------------------------------------
-// $Revision: 1.2 $
-// ------------------------------------------------------------------------
-// Copyright: see Copyright.readme
-// ------------------------------------------------------------------------
 //
-// Class: SequenceTemplate
+// Class SequenceTemplate
+//
+//   An ``archetype'' for a SEQUENCE with arguments.
+//   The model is stored in form of a MacroStream.  A call to the macro
+//   sequence is expanded by first replacing the arguments, and then parsing
+//   the resulting stream as a SEQUENCE definition.
+//
+// Copyright (c) 2008 - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
+//
+// All rights reserved
 //
-// ------------------------------------------------------------------------
+// This file is part of OPAL.
 //
-// $Date: 2000/03/29 10:41:42 $
-// $Author: opal $
+// OPAL is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
 //
-// ------------------------------------------------------------------------
+// You should have received a copy of the GNU General Public License
+// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
+//
+
+#ifndef OPAL_SequenceTemplate_HH
+#define OPAL_SequenceTemplate_HH
 
 #include "OpalParser/Macro.h"
 #include "Parser/SimpleStatement.h"
@@ -27,14 +33,6 @@ class Sequence;
 class Statement;
 class TokenStream;
 
-
-// Class SequenceTemplate
-// ------------------------------------------------------------------------
-/// An ``archetype'' for a SEQUENCE with arguments.
-//  The model is stored in form of a MacroStream.  A call to the macro
-//  sequence is expanded by first replacing the arguments, and then parsing
-//  the resulting stream as a SEQUENCE definition.
-
 class SequenceTemplate: public Macro {
 
     friend class Sequence;
@@ -74,4 +72,4 @@ private:
     MacroStream body;
 };
 
-#endif // OPAL_SequenceTemplate_HH
+#endif // OPAL_SequenceTemplate_HH
\ No newline at end of file
diff --git a/src/OpalParser/MacroCmd.cpp b/src/OpalParser/MacroCmd.cpp
index 76dec8e9cf07c5d3e9706adea6192a9df385e979..f2c43bf9792ccc9a8d292bfb2ac752342c88102c 100644
--- a/src/OpalParser/MacroCmd.cpp
+++ b/src/OpalParser/MacroCmd.cpp
@@ -1,30 +1,35 @@
-// ------------------------------------------------------------------------
-// $RCSfile: MacroCmd.cpp,v $
-// ------------------------------------------------------------------------
-// $Revision: 1.1.1.1 $
-// ------------------------------------------------------------------------
-// Copyright: see Copyright.readme
-// ------------------------------------------------------------------------
 //
-// Class: MacroCmd
+// Class MacroCmd
+//
+//   This class parses the MACRO command.
+//   Encapsulate the buffer for the ``archetypes'' of all macros.
+//   The macro is stored as a MacroStream.  For execution, first the
+//   parameters are replaced, then the resulting stream is sent to the parser.
+//
+// Copyright (c) 2008 - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
+//
+// All rights reserved
+//
+// This file is part of OPAL.
 //
-// ------------------------------------------------------------------------
+// OPAL is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
 //
-// $Date: 2000/03/27 09:33:43 $
-// $Author: Andreas Adelmann $
+// You should have received a copy of the GNU General Public License
+// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
 //
-// ------------------------------------------------------------------------
 
 #include "OpalParser/MacroCmd.h"
+
+#include "Utility/PAssert.h"
+
 #include "AbstractObjects/OpalData.h"
 #include "OpalParser/OpalParser.h"
 #include "Parser/Statement.h"
 #include "Utilities/ParseError.h"
 #include <vector>
-#include <cassert>
-
-// Class MacroCmd
-// ------------------------------------------------------------------------
 
 MacroCmd::MacroCmd():
     Macro(0u, "MACRO",
@@ -99,7 +104,8 @@ Object *MacroCmd::makeTemplate
     macro->parseFormals(statement);
 
     // Parse macro body->
-    assert(statement.keyword("MACRO"));
+    bool isMacro = statement.keyword("MACRO");
+    PAssert(isMacro);
     Token token;
 
     if(statement.delimiter('{')) {
@@ -126,4 +132,4 @@ Object *MacroCmd::makeTemplate
     }
 
     return macro;
-}
+}
\ No newline at end of file
diff --git a/src/OpalParser/MacroCmd.h b/src/OpalParser/MacroCmd.h
index 79d2ec6f37a96bcb54cac1b1e021404e74ae0d6e..4aab1eeacfe83d59ff70c43bb173ec112a0547f6 100644
--- a/src/OpalParser/MacroCmd.h
+++ b/src/OpalParser/MacroCmd.h
@@ -1,34 +1,36 @@
-#ifndef CLASSIC_MacroCmd_HH
-#define CLASSIC_MacroCmd_HH
-
-// ------------------------------------------------------------------------
-// $RCSfile: MacroCmd.h,v $
-// ------------------------------------------------------------------------
-// $Revision: 1.1.1.1 $
-// ------------------------------------------------------------------------
-// Copyright: see Copyright.readme
-// ------------------------------------------------------------------------
 //
-// Class: MacroCmd
+// Class MacroCmd
 //
-// ------------------------------------------------------------------------
+//   This class parses the MACRO command.
+//   Encapsulate the buffer for the ``archetypes'' of all macros.
+//   The macro is stored as a MacroStream.  For execution, first the
+//   parameters are replaced, then the resulting stream is sent to the parser.
 //
-// $Date: 2000/03/27 09:33:43 $
-// $Author: Andreas Adelmann $
+// Copyright (c) 2008 - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
 //
-// ------------------------------------------------------------------------
+// All rights reserved
+//
+// This file is part of OPAL.
+//
+// OPAL is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// You should have received a copy of the GNU General Public License
+// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
+//
+#ifndef CLASSIC_MacroCmd_HH
+#define CLASSIC_MacroCmd_HH
 
 #include "OpalParser/Macro.h"
 #include "OpalParser/MacroStream.h"
 #include "MemoryManagement/Pointer.h"
 #include <iosfwd>
-
+#include <string>
 
 // Class MacroCmd
 // ------------------------------------------------------------------------
-/// Encapsulate the buffer for the ``archetypes'' of all macros.
-//  The macro is stored as a MacroStream.  For execution, first the
-//  parameters are replaced, then the resulting stream is sent to the parser.
 
 class MacroCmd: public Macro {
 
@@ -65,4 +67,4 @@ private:
     const Parser *itsParser;
 };
 
-#endif // CLASSIC_MacroCmd_HH
+#endif // CLASSIC_MacroCmd_HH
\ No newline at end of file