<?php

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

// This file has been auto-generated by the Symfony Dependency Injection Component for internal use.
// Returns the private 'security.firewall.map.context.contao_backend' shared service.

include_once \dirname(__DIR__, 4).'/vendor/symfony/security-bundle/Security/FirewallContext.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-http/Firewall/ExceptionListener.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-http/Firewall/AbstractListener.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-http/Firewall/ListenerInterface.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-http/Firewall/LegacyListenerTrait.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-http/Firewall/LogoutListener.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-http/Logout/LogoutHandlerInterface.php';
include_once \dirname(__DIR__, 4).'/vendor/contao/manager-bundle/src/Security/Logout/LogoutHandler.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-bundle/Security/FirewallConfig.php';
include_once \dirname(__DIR__, 4).'/vendor/symfony/security-http/Logout/SessionLogoutHandler.php';

$a = ($this->services['security.token_storage'] ?? $this->getSecurity_TokenStorageService());
$b = ($this->privates['security.http_utils'] ?? $this->load('getSecurity_HttpUtilsService.php'));
$c = new \Symfony\Component\Security\Http\Firewall\LogoutListener($a, $b, ($this->privates['contao.security.logout_success_handler'] ?? $this->load('getContao_Security_LogoutSuccessHandlerService.php')), ['csrf_parameter' => '_csrf_token', 'csrf_token_id' => 'logout', 'logout_path' => 'contao_backend_logout']);
$c->addHandler(($this->privates['security.logout.handler.csrf_token_clearing'] ?? $this->load('getSecurity_Logout_Handler_CsrfTokenClearingService.php')));
$c->addHandler(($this->privates['security.logout.handler.session'] ?? ($this->privates['security.logout.handler.session'] = new \Symfony\Component\Security\Http\Logout\SessionLogoutHandler())));
$c->addHandler(($this->privates['contao.security.logout_handler'] ?? $this->load('getContao_Security_LogoutHandlerService.php')));
$c->addHandler(new \Contao\ManagerBundle\Security\Logout\LogoutHandler(($this->services['contao_manager.jwt_manager'] ?? $this->get('contao_manager.jwt_manager', 3))));

return $this->privates['security.firewall.map.context.contao_backend'] = new \Symfony\Bundle\SecurityBundle\Security\FirewallContext(new RewindableGenerator(function () {
    yield 0 => ($this->privates['security.channel_listener'] ?? $this->load('getSecurity_ChannelListenerService.php'));
    yield 1 => ($this->privates['security.context_listener.0'] ?? $this->load('getSecurity_ContextListener_0Service.php'));
    yield 2 => ($this->privates['contao.security.authentication_listener.contao_backend'] ?? $this->load('getContao_Security_AuthenticationListener_ContaoBackendService.php'));
    yield 3 => ($this->privates['security.authentication.listener.anonymous.contao_backend'] ?? $this->load('getSecurity_Authentication_Listener_Anonymous_ContaoBackendService.php'));
    yield 4 => ($this->privates['security.authentication.switchuser_listener.contao_backend'] ?? $this->load('getSecurity_Authentication_SwitchuserListener_ContaoBackendService.php'));
    yield 5 => ($this->privates['security.access_listener'] ?? $this->load('getSecurity_AccessListenerService.php'));
}, 6), new \Symfony\Component\Security\Http\Firewall\ExceptionListener($a, ($this->services['security.authentication.trust_resolver'] ?? $this->getSecurity_Authentication_TrustResolverService()), $b, 'contao_backend', ($this->privates['contao.security.entry_point'] ?? $this->load('getContao_Security_EntryPointService.php')), NULL, NULL, ($this->privates['monolog.logger.security'] ?? $this->load('getMonolog_Logger_SecurityService.php')), false), $c, new \Symfony\Bundle\SecurityBundle\Security\FirewallConfig('contao_backend', 'contao.security.user_checker', 'contao.routing.backend_matcher', true, false, 'contao.security.backend_user_provider', 'contao_backend', 'contao.security.entry_point', NULL, NULL, [0 => 'switch_user', 1 => 'contao_login', 2 => 'anonymous'], ['parameter' => '_switch_user', 'role' => 'ROLE_ALLOWED_TO_SWITCH', 'stateless' => false]));
