/// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public Object Clone()
        {
            var ps = (PropertySheet) new Object();

            ps._registeredProperties = new HashMap <String, S4PropWrapper>(_registeredProperties);
            ps._propValues           = new HashMap <string, Object>(_propValues);

            ps._rawProps = new HashMap <string, Object>(_rawProps);

            // make deep copy of raw-lists
            foreach (var regProp in ps.GetRegisteredProperties())
            {
                if (GetType(regProp) == PropertyType.ComponentList)
                {
                    ps._rawProps.Put(regProp, ConfigurationManagerUtils.ToStringList(_rawProps[regProp]));
                    ps._propValues.Put(regProp, null);
                }
            }

            ps._cm          = _cm;
            ps._owner       = null;
            ps.InstanceName = InstanceName;

            return(ps);
        }
 /// <summary>
 /// Gets a list of float numbers associated with the given parameter name
 /// </summary>
 /// <param name="name"></param>
 /// <returns></returns>
 public List <string> GetstringList(string name)
 {
     GetProperty <S4StringList>(name);
     return(ConfigurationManagerUtils.ToStringList(_propValues.Get(name)));
 }