// ReSharper disable MemberCanBeMadeStatic.Global
// ReSharper disable MemberCanBePrivate.Global
        /// <summary>
        /// Executes after the part is removed
        /// </summary>
        /// <param name="partName"></param>
        /// <param name="instance"></param>
        protected virtual void PartRemoved(string partName, object instance)
// ReSharper restore MemberCanBePrivate.Global
// ReSharper restore MemberCanBeMadeStatic.Global
        {
            //Debug.Log(string.Format("PartRemoved: {0} [{1}]", partName, instance));
            SkinPartEvent e = new SkinPartEvent(SkinPartEvent.PART_REMOVED)
            {
                partName = partName, Instance = instance
            };

            DispatchEvent(e);
        }
        // ReSharper disable MemberCanBeMadeStatic.Global
// ReSharper disable MemberCanBePrivate.Global
        /// <summary>
        /// Executes after the part is removed
        /// </summary>
        /// <param name="partName"></param>
        /// <param name="instance"></param>
        protected virtual void PartRemoved(string partName, object instance)
// ReSharper restore MemberCanBePrivate.Global
// ReSharper restore MemberCanBeMadeStatic.Global
        {
            //Debug.Log(string.Format("PartRemoved: {0} [{1}]", partName, instance));
            SkinPartEvent e = new SkinPartEvent(SkinPartEvent.PART_REMOVED) {partName = partName, Instance = instance};
            DispatchEvent(e);
        }