@Override
	public void putAll(Map<? extends K, ? extends V> m) {
		for (Map.Entry<? extends K, ? extends V> entry : m.entrySet()) {
			put(entry.getKey(), entry.getValue());
		}
	}
Track the elements as they are added to the set
tool/src/org/antlr/v4/misc/OrderedHashMap.java