private void BuildProperties(ArchiveGeneratorConfiguration archiveGeneratorConfiguration)
        {
            var props = config.GetRegex(ConfigUtils.PropertySection);
            var keys  = props
                        .Select(n => n.Subsection)
                        .Distinct();

            foreach (var key in keys)
            {
                if (archiveGeneratorConfiguration.Properties.ContainsKey(key))
                {
                    archiveGeneratorConfiguration.Properties.Remove(key);
                }
                archiveGeneratorConfiguration.Properties.Add(key, new PropertyConfiguration()
                {
                    Include      = config.GetBoolean(ConfigUtils.PropertySection, key, "include") ?? true,
                    TypeName     = config.GetString(ConfigUtils.PropertySection, key, "typeName"),
                    PropertyName = config.GetString(ConfigUtils.PropertySection, key, "propertyName")
                });
            }
        }