Index: src/SynTree/Declaration.h
===================================================================
--- src/SynTree/Declaration.h	(revision 7a63486c789eef4cd4e6838a7b116bf5ae8d58fc)
+++ src/SynTree/Declaration.h	(revision 42a36d91a8c8fb911137cec9b51d7e985170aeef)
@@ -10,6 +10,6 @@
 // Created On       : Mon May 18 07:44:20 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Sep  3 19:24:06 2017
-// Update Count     : 131
+// Last Modified On : Wed May  1 07:46:49 2019
+// Update Count     : 134
 //
 
@@ -19,4 +19,5 @@
 #include <iosfwd>                // for ostream
 #include <list>                  // for list
+#include <unordered_map>         // for unordered_map
 #include <string>                // for string, operator+, allocator, to_string
 
@@ -334,5 +335,5 @@
 	virtual Declaration *acceptMutator( Mutator &m )  override { return m.mutate( this ); }
   private:
-	std::map< std::string, long long int > enumValues;
+	std::unordered_map< std::string, long long int > enumValues;
 	virtual std::string typeString() const override;
 };
Index: src/SynTree/TypeSubstitution.h
===================================================================
--- src/SynTree/TypeSubstitution.h	(revision 7a63486c789eef4cd4e6838a7b116bf5ae8d58fc)
+++ src/SynTree/TypeSubstitution.h	(revision 42a36d91a8c8fb911137cec9b51d7e985170aeef)
@@ -10,6 +10,6 @@
 // Created On       : Mon May 18 07:44:20 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sat Jul 22 09:52:24 2017
-// Update Count     : 3
+// Last Modified On : Tue Apr 30 22:52:47 2019
+// Update Count     : 9
 //
 
@@ -19,6 +19,6 @@
 #include <iosfwd>                  // for ostream
 #include <list>                    // for list<>::iterator, _List_iterator
-#include <map>                     // for _Rb_tree_iterator, map, map<>::val...
-#include <set>                     // for set
+#include <unordered_map>
+#include <unordered_set>
 #include <string>                  // for string, operator!=
 #include <utility>                 // for pair
@@ -78,6 +78,6 @@
 	friend class PassVisitor;
 
-	typedef std::map< std::string, Type* > TypeEnvType;
-	typedef std::map< std::string, Expression* > VarEnvType;
+	typedef std::unordered_map< std::string, Type * > TypeEnvType;
+	typedef std::unordered_map< std::string, Expression * > VarEnvType;
 	TypeEnvType typeEnv;
 	VarEnvType varEnv;
@@ -98,6 +98,6 @@
 	ActualIterator actualIt = actualBegin;
 	for ( ; formalIt != formalEnd; ++formalIt, ++actualIt ) {
-		if ( TypeDecl *formal = dynamic_cast< TypeDecl* >( *formalIt ) ) {
-			if ( TypeExpr *actual = dynamic_cast< TypeExpr* >( *actualIt ) ) {
+		if ( TypeDecl *formal = dynamic_cast< TypeDecl * >( *formalIt ) ) {
+			if ( TypeExpr *actual = dynamic_cast< TypeExpr * >( *actualIt ) ) {
 				if ( formal->get_name() != "" ) {
 					TypeEnvType::iterator i = typeEnv.find( formal->get_name() );
@@ -146,5 +146,5 @@
 		int subCount = 0;
 		bool freeOnly;
-		typedef std::set< std::string > BoundVarsType;
+		typedef std::unordered_set< std::string > BoundVarsType;
 		BoundVarsType boundVars;
 };
