<?php

namespace ContainerS8JkUPu;

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 getSecurity_Authenticator_TwoFactor_AdminService extends App_KernelDevDebugContainer
{
    /**
     * Gets the private 'security.authenticator.two_factor.admin' shared service.
     *
     * @return \Scheb\TwoFactorBundle\Security\Http\Authenticator\TwoFactorAuthenticator
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'symfony'.\DIRECTORY_SEPARATOR.'security-http'.\DIRECTORY_SEPARATOR.'Authenticator'.\DIRECTORY_SEPARATOR.'AuthenticatorInterface.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'symfony'.\DIRECTORY_SEPARATOR.'security-http'.\DIRECTORY_SEPARATOR.'Authenticator'.\DIRECTORY_SEPARATOR.'InteractiveAuthenticatorInterface.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'scheb'.\DIRECTORY_SEPARATOR.'2fa-bundle'.\DIRECTORY_SEPARATOR.'Security'.\DIRECTORY_SEPARATOR.'Http'.\DIRECTORY_SEPARATOR.'Authenticator'.\DIRECTORY_SEPARATOR.'TwoFactorAuthenticator.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'symfony'.\DIRECTORY_SEPARATOR.'security-http'.\DIRECTORY_SEPARATOR.'Authentication'.\DIRECTORY_SEPARATOR.'AuthenticationSuccessHandlerInterface.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.'Security'.\DIRECTORY_SEPARATOR.'TwoFactorAuthenticationSuccessHandler.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'symfony'.\DIRECTORY_SEPARATOR.'security-http'.\DIRECTORY_SEPARATOR.'Authentication'.\DIRECTORY_SEPARATOR.'AuthenticationFailureHandlerInterface.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.'Security'.\DIRECTORY_SEPARATOR.'TwoFactorAuthenticationFailureHandler.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'scheb'.\DIRECTORY_SEPARATOR.'2fa-bundle'.\DIRECTORY_SEPARATOR.'Security'.\DIRECTORY_SEPARATOR.'Http'.\DIRECTORY_SEPARATOR.'Authentication'.\DIRECTORY_SEPARATOR.'AuthenticationRequiredHandlerInterface.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.'Security'.\DIRECTORY_SEPARATOR.'TwoFactorAuthenticationRequiredHandler.php';

        $a = ($container->privates['security.firewall_config.two_factor.admin'] ?? self::getSecurity_FirewallConfig_TwoFactor_AdminService($container));

        if (isset($container->privates['security.authenticator.two_factor.admin'])) {
            return $container->privates['security.authenticator.two_factor.admin'];
        }
        $b = ($container->services['event_dispatcher'] ?? self::getEventDispatcherService($container));

        if (isset($container->privates['security.authenticator.two_factor.admin'])) {
            return $container->privates['security.authenticator.two_factor.admin'];
        }

        return $container->privates['security.authenticator.two_factor.admin'] = new \Scheb\TwoFactorBundle\Security\Http\Authenticator\TwoFactorAuthenticator($a, ($container->privates['security.token_storage'] ?? self::getSecurity_TokenStorageService($container)), new \Sulu\Bundle\SecurityBundle\Security\TwoFactorAuthenticationSuccessHandler(), new \Sulu\Bundle\SecurityBundle\Security\TwoFactorAuthenticationFailureHandler(), ($container->privates['sulu_security.two_factor_authentication_required_handler'] ??= new \Sulu\Bundle\SecurityBundle\Security\TwoFactorAuthenticationRequiredHandler()), $b, ($container->privates['monolog.logger.security'] ?? self::getMonolog_Logger_SecurityService($container)));
    }
}
