public void copyParentFeatures() { this.multiset = ParentKPInstance.Multiset.Clone(); PItem.CopyProperties(ParentKPInstance, this); LabelledPItem.CopyLabels(ParentKPInstance, this); this.Connections = ParentKPInstance.Connections; //add itself to connection list of target instances foreach (MInstance targetInstance in Connections) { if (!targetInstance.Connections.Contains(this)) { targetInstance.Connections.Add(this); } } }