public function buildByDynamic(Dynamic $dynamic)
    {
        $config = $this->create($dynamic->getLocale());
        $config->setFileFields($this->getFileFieldsByDynamic($dynamic));

        $adminMailConfiguration = $this->buildAdminMailConfigurationByDynamic($dynamic);
        $websiteMailConfiguration = $this->buildWebsiteMailConfigurationByDynamic($dynamic);

        $config->setAdminMailConfiguration($adminMailConfiguration);
        $config->setWebsiteMailConfiguration($websiteMailConfiguration);

        return $config;
    }