private StringCollection IntersectLockCollections(ConfigurationLockCollection Collection1, ConfigurationLockCollection Collection2) {
ConfigurationLockCollection smallCollection = Collection1.Count < Collection2.Count ? Collection1 : Collection2;
ConfigurationLockCollection largeCollection = Collection1.Count >= Collection2.Count ? Collection1 : Collection2;
StringCollection intersectionCollection = new StringCollection();
foreach (string key in smallCollection) {
if (largeCollection.Contains(key) || key == ElementTagName)
intersectionCollection.Add(key); // add the local copy
}
return intersectionCollection;
}