public String getName() { return name; }
         public Port getPort(String name) { return ports.get(name); }
 
-        public HashSet<InstantiatedModule> instantiatedModules = new HashSet<InstantiatedModule>();
+        // order matters here
+        public LinkedList<InstantiatedModule> instantiatedModules = new LinkedList<InstantiatedModule>();
+
+        // order matters here
         public LinkedList<PercolatedPort> percolatedPorts = new LinkedList<PercolatedPort>();
         public final ArrayList<Event> events = new ArrayList<Event>();