<?php

namespace ContainerRBLbIxO;

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

/**
 * @internal This class has been auto-generated by the Symfony Dependency Injection Component.
 */
class getSuluSecurity_UserProviderService extends App_KernelDevDebugContainer
{
    /**
     * Gets the private 'sulu_security.user_provider' shared service.
     *
     * @return \Sulu\Bundle\SecurityBundle\User\UserProvider
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'symfony'.\DIRECTORY_SEPARATOR.'security-core'.\DIRECTORY_SEPARATOR.'User'.\DIRECTORY_SEPARATOR.'UserProviderInterface.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'symfony'.\DIRECTORY_SEPARATOR.'security-core'.\DIRECTORY_SEPARATOR.'User'.\DIRECTORY_SEPARATOR.'PasswordUpgraderInterface.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'src'.\DIRECTORY_SEPARATOR.'Sulu'.\DIRECTORY_SEPARATOR.'Bundle'.\DIRECTORY_SEPARATOR.'SecurityBundle'.\DIRECTORY_SEPARATOR.'User'.\DIRECTORY_SEPARATOR.'UserProvider.php';

        $a = ($container->services['sulu_security.user_repository'] ?? $container->load('getSuluSecurity_UserRepositoryService'));

        if (isset($container->privates['sulu_security.user_provider'])) {
            return $container->privates['sulu_security.user_provider'];
        }
        $b = ($container->services['doctrine.orm.default_entity_manager'] ?? self::getDoctrine_Orm_DefaultEntityManagerService($container));

        if (isset($container->privates['sulu_security.user_provider'])) {
            return $container->privates['sulu_security.user_provider'];
        }

        return $container->privates['sulu_security.user_provider'] = new \Sulu\Bundle\SecurityBundle\User\UserProvider($a, ($container->privates['sulu_security.system_store'] ?? self::getSuluSecurity_SystemStoreService($container)), $b);
    }
}
