<?php

namespace ContainerOQlxh73;

use Symfony\Component\DependencyInjection\Argument\RewindableGenerator;
use Symfony\Component\DependencyInjection\Exception\RuntimeException;

/*
 * @internal This class has been auto-generated by the Symfony Dependency Injection Component.
 */
class getPimEnrich_Controller_Rest_ProductModelService extends KernelProdContainer
{
    /*
     * Gets the public 'pim_enrich.controller.rest.product_model' shared service.
     *
     * @return \Akeneo\Pim\Enrichment\Bundle\Controller\InternalApi\ProductModelController
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Bundle/Controller/InternalApi/ProductModelController.php';
        include_once \dirname(__DIR__, 4).'/vendor/symfony/serializer/Normalizer/NormalizerInterface.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Component/Product/Normalizer/InternalApi/LightEntityWithFamilyVariantNormalizer.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Component/Product/Completeness/Query/GetProductCompletenessRatio.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Bundle/Doctrine/ORM/Query/SqlGetProductCompletenessRatio.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Component/Product/ProductModel/Filter/AttributeFilterInterface.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Component/Product/ProductModel/Filter/ProductModelAttributeFilter.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Component/Product/EntityWithFamilyVariant/EntityWithFamilyVariantAttributesProvider.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Component/StorageUtils/Factory/SimpleFactoryInterface.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Component/StorageUtils/Factory/SimpleFactory.php';
        include_once \dirname(__DIR__, 4).'/vendor/symfony/serializer/Normalizer/CacheableSupportsMethodInterface.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Pim/Enrichment/Component/Product/Normalizer/InternalApi/ConstraintViolationNormalizer.php';

        $a = ($container->privates['pim_catalog.repository.product_model'] ?? $container->load('getPimCatalog_Repository_ProductModelService'));
        $b = ($container->privates['pim_catalog.repository.family_variant'] ?? $container->load('getPimCatalog_Repository_FamilyVariantService'));

        return $container->services['pim_enrich.controller.rest.product_model'] = new \Akeneo\Pim\Enrichment\Bundle\Controller\InternalApi\ProductModelController($a, ($container->privates['pim_internal_api_serializer'] ?? $container->load('getPimInternalApiSerializerService')), ($container->services['pim_user.context.user'] ?? $container->getPimUser_Context_UserService()), ($container->privates['pim_catalog.filter.chained'] ?? $container->load('getPimCatalog_Filter_ChainedService')), ($container->privates['pim_catalog.localization.localizer.converter'] ?? $container->load('getPimCatalog_Localization_Localizer_ConverterService')), ($container->privates['pim_catalog.comparator.filter.product_model'] ?? $container->load('getPimCatalog_Comparator_Filter_ProductModelService')), ($container->privates['pim_enrich.converter.enrich_to_standard.product_value'] ?? $container->load('getPimEnrich_Converter_EnrichToStandard_ProductValueService')), ($container->privates['pim_catalog.updater.product_model'] ?? $container->load('getPimCatalog_Updater_ProductModelService')), ($container->privates['pim_catalog.validator.product'] ?? $container->load('getPimCatalog_Validator_ProductService')), ($container->privates['pim_catalog.saver.product_model'] ?? $container->load('getPimCatalog_Saver_ProductModelService')), ($container->privates['pim_enrich.normalizer.product_violation'] ?? $container->load('getPimEnrich_Normalizer_ProductViolationService')), new \Akeneo\Pim\Enrichment\Component\Product\Normalizer\InternalApi\LightEntityWithFamilyVariantNormalizer(($container->privates['pim_enrich.normalizer.image'] ?? $container->load('getPimEnrich_Normalizer_ImageService')), ($container->privates['pim_catalog.product_models.image_as_label'] ?? $container->load('getPimCatalog_ProductModels_ImageAsLabelService')), ($container->privates['pim_catalog.family_variant.provider.entity_with_family_variant_attributes'] ?? ($container->privates['pim_catalog.family_variant.provider.entity_with_family_variant_attributes'] = new \Akeneo\Pim\Enrichment\Component\Product\EntityWithFamilyVariant\EntityWithFamilyVariantAttributesProvider())), ($container->privates['pim_catalog.repository.cached_attribute_option'] ?? $container->load('getPimCatalog_Repository_CachedAttributeOptionService')), new \Akeneo\Pim\Enrichment\Bundle\Doctrine\ORM\Query\SqlGetProductCompletenessRatio(($container->services['doctrine.dbal.default_connection'] ?? $container->getDoctrine_Dbal_DefaultConnectionService())), ($container->privates['pim_catalog.doctrine.query.find_variant_product_completeness'] ?? $container->load('getPimCatalog_Doctrine_Query_FindVariantProductCompletenessService')), new RewindableGenerator(function () use ($container) {
            yield 0 => ($container->privates['pim_enrich.normalizer.entity_with_family_variant.simple_select.label.normalizer'] ?? $container->load('getPimEnrich_Normalizer_EntityWithFamilyVariant_SimpleSelect_Label_NormalizerService'));
            yield 1 => ($container->privates['pim_enrich.normalizer.entity_with_family_variant.metric.label.normalizer'] ?? $container->load('getPimEnrich_Normalizer_EntityWithFamilyVariant_Metric_Label_NormalizerService'));
            yield 2 => ($container->privates['pim_enrich.normalizer.entity_with_family_variant.boolean.label.normalizer'] ?? $container->load('getPimEnrich_Normalizer_EntityWithFamilyVariant_Boolean_Label_NormalizerService'));
        }, 3)), ($container->privates['pim_catalog.factory.product_model'] ?? ($container->privates['pim_catalog.factory.product_model'] = new \Akeneo\Tool\Component\StorageUtils\Factory\SimpleFactory('Akeneo\\Pim\\Enrichment\\Component\\Product\\Model\\ProductModel'))), ($container->privates['pim_enrich.normalizer.violation'] ?? ($container->privates['pim_enrich.normalizer.violation'] = new \Akeneo\Pim\Enrichment\Component\Product\Normalizer\InternalApi\ConstraintViolationNormalizer())), $b, new \Akeneo\Pim\Enrichment\Component\Product\ProductModel\Filter\ProductModelAttributeFilter($b, $a, ($container->privates['pim_catalog.repository.cached_attribute'] ?? $container->load('getPimCatalog_Repository_CachedAttributeService'))), ($container->services['akeneo_elasticsearch.client.product_and_product_model'] ?? $container->load('getAkeneoElasticsearch_Client_ProductAndProductModelService')), ($container->privates['pim_enrich.filter.product_edit_data'] ?? $container->load('getPimEnrich_Filter_ProductEditDataService')), ($container->privates['Akeneo\\Pim\\Enrichment\\Component\\Product\\Command\\ProductModel\\RemoveProductModelHandler'] ?? $container->load('getRemoveProductModelHandlerService')), ($container->services['.container.private.validator'] ?? $container->load('get_Container_Private_ValidatorService')));
    }
}
