92b2280fb270f1227eaf87045f6c19f15463aa96
[yaffs-website] / web / core / core.services.yml
1 parameters:
2   session.storage.options:
3     gc_probability: 1
4     gc_divisor: 100
5     gc_maxlifetime: 200000
6     cookie_lifetime: 2000000
7   twig.config:
8     debug: false
9     auto_reload: null
10     cache: true
11   renderer.config:
12     required_cache_contexts: ['languages:language_interface', 'theme', 'user.permissions']
13     auto_placeholder_conditions:
14       max-age: 0
15       contexts: ['session', 'user']
16       tags: []
17   factory.keyvalue:
18     default: keyvalue.database
19   http.response.debug_cacheability_headers: false
20   factory.keyvalue.expirable:
21     default: keyvalue.expirable.database
22   filter_protocols:
23     - http
24     - https
25     - ftp
26     - news
27     - nntp
28     - tel
29     - telnet
30     - mailto
31     - irc
32     - ssh
33     - sftp
34     - webcal
35     - rtsp
36   cors.config:
37     enabled: false
38     allowedHeaders: []
39     allowedMethods: []
40     allowedOrigins: ['*']
41     exposedHeaders: false
42     maxAge: false
43     supportsCredentials: false
44   tempstore.expire: 604800
45 services:
46   # Simple cache contexts, directly derived from the request context.
47   cache_context.ip:
48     class: Drupal\Core\Cache\Context\IpCacheContext
49     arguments: ['@request_stack']
50     tags:
51       - { name: cache.context }
52   cache_context.headers:
53     class: Drupal\Core\Cache\Context\HeadersCacheContext
54     arguments: ['@request_stack']
55     tags:
56       - { name: cache.context }
57   cache_context.cookies:
58     class: Drupal\Core\Cache\Context\CookiesCacheContext
59     arguments: ['@request_stack']
60     tags:
61       - { name: cache.context }
62   cache_context.session:
63     class: Drupal\Core\Cache\Context\SessionCacheContext
64     arguments: ['@request_stack']
65     tags:
66       - { name: cache.context}
67   cache_context.session.exists:
68     class: Drupal\Core\Cache\Context\SessionExistsCacheContext
69     arguments: ['@session_configuration', '@request_stack']
70     tags:
71       - { name: cache.context}
72   cache_context.request_format:
73     class: Drupal\Core\Cache\Context\RequestFormatCacheContext
74     arguments: ['@request_stack']
75     tags:
76       - { name: cache.context }
77   cache_context.url:
78     class: Drupal\Core\Cache\Context\UrlCacheContext
79     arguments: ['@request_stack']
80     tags:
81       - { name: cache.context }
82   cache_context.url.site:
83     class: Drupal\Core\Cache\Context\SiteCacheContext
84     arguments: ['@request_stack']
85     tags:
86       - { name: cache.context }
87   cache_context.url.path:
88     class: Drupal\Core\Cache\Context\PathCacheContext
89     arguments: ['@request_stack']
90     tags:
91       - { name: cache.context }
92   cache_context.url.path.parent:
93     class: Drupal\Core\Cache\Context\PathParentCacheContext
94     arguments: ['@request_stack']
95     tags:
96       - { name: cache.context }
97   cache_context.url.path.is_front:
98     class: Drupal\Core\Cache\Context\IsFrontPathCacheContext
99     arguments: ['@path.matcher']
100     tags:
101       - { name: cache.context }
102   cache_context.url.query_args:
103     class: Drupal\Core\Cache\Context\QueryArgsCacheContext
104     arguments: ['@request_stack']
105     tags:
106       - { name: cache.context }
107   cache_context.url.query_args.pagers:
108     class: Drupal\Core\Cache\Context\PagersCacheContext
109     arguments: ['@request_stack']
110     tags:
111       - { name: cache.context }
112
113   # Complex cache contexts, that depend on the routing system.
114   cache_context.route:
115     class: Drupal\Core\Cache\Context\RouteCacheContext
116     arguments: ['@current_route_match']
117     tags:
118       - { name: cache.context }
119   cache_context.route.name:
120     class: Drupal\Core\Cache\Context\RouteNameCacheContext
121     arguments: ['@current_route_match']
122     tags:
123       - { name: cache.context }
124   cache_context.route.menu_active_trails:
125     class: Drupal\Core\Cache\Context\MenuActiveTrailsCacheContext
126     calls:
127       - [setContainer, ['@service_container']]
128     tags:
129       - { name: cache.context }
130
131   # Complex cache contexts, that may be calculated from a combination of
132   # multiple aspects of the request context plus additional logic. Hence they
133   # are their own roots.
134   cache_context.user:
135     class: Drupal\Core\Cache\Context\UserCacheContext
136     arguments: ['@current_user']
137     tags:
138       - { name: cache.context}
139   cache_context.user.permissions:
140     class: Drupal\Core\Cache\Context\AccountPermissionsCacheContext
141     arguments: ['@current_user', '@user_permissions_hash_generator']
142     tags:
143       - { name: cache.context}
144   cache_context.user.roles:
145     class: Drupal\Core\Cache\Context\UserRolesCacheContext
146     arguments: ['@current_user']
147     tags:
148       - { name: cache.context}
149   cache_context.user.is_super_user:
150     class: Drupal\Core\Cache\Context\IsSuperUserCacheContext
151     arguments: ['@current_user']
152     tags:
153       - { name: cache.context}
154   cache_context.languages:
155     class: Drupal\Core\Cache\Context\LanguagesCacheContext
156     arguments: ['@language_manager']
157     tags:
158       - { name: cache.context}
159   cache_context.theme:
160     class: Drupal\Core\Cache\Context\ThemeCacheContext
161     arguments: ['@theme.manager']
162     tags:
163       - { name: cache.context}
164   cache_context.timezone:
165     class: Drupal\Core\Cache\Context\TimeZoneCacheContext
166     tags:
167       - { name: cache.context}
168
169   cache_factory:
170     class: Drupal\Core\Cache\CacheFactory
171     arguments: ['@settings', '%cache_default_bin_backends%']
172     calls:
173       - [setContainer, ['@service_container']]
174   cache_contexts_manager:
175     class: Drupal\Core\Cache\Context\CacheContextsManager
176     arguments: ['@service_container', '%cache_contexts%' ]
177   cache_tags.invalidator:
178     parent: container.trait
179     class: Drupal\Core\Cache\CacheTagsInvalidator
180     calls:
181       - [setContainer, ['@service_container']]
182     tags:
183       - { name: service_collector, call: addInvalidator, tag: cache_tags_invalidator }
184   cache_tags.invalidator.checksum:
185     class: Drupal\Core\Cache\DatabaseCacheTagsChecksum
186     arguments: ['@database']
187     tags:
188       - { name: cache_tags_invalidator}
189   cache.backend.chainedfast:
190     class: Drupal\Core\Cache\ChainedFastBackendFactory
191     arguments: ['@settings']
192     calls:
193       - [setContainer, ['@service_container']]
194   cache.backend.database:
195     class: Drupal\Core\Cache\DatabaseBackendFactory
196     arguments: ['@database', '@cache_tags.invalidator.checksum', '@settings']
197   cache.backend.apcu:
198     class: Drupal\Core\Cache\ApcuBackendFactory
199     arguments: ['@app.root', '@site.path', '@cache_tags.invalidator.checksum']
200   cache.backend.php:
201     class: Drupal\Core\Cache\PhpBackendFactory
202     arguments: ['@cache_tags.invalidator.checksum']
203   cache.backend.memory:
204     class: Drupal\Core\Cache\MemoryBackendFactory
205   # A special cache bin that does not persist beyond the length of the request.
206   cache.static:
207     class: Drupal\Core\Cache\CacheBackendInterface
208     tags:
209       - { name: cache.bin, default_backend: cache.backend.memory }
210     factory: cache_factory:get
211     arguments: [static]
212   cache.bootstrap:
213     class: Drupal\Core\Cache\CacheBackendInterface
214     tags:
215       - { name: cache.bin, default_backend: cache.backend.chainedfast }
216     factory: cache_factory:get
217     arguments: [bootstrap]
218   cache.config:
219     class: Drupal\Core\Cache\CacheBackendInterface
220     tags:
221       - { name: cache.bin, default_backend: cache.backend.chainedfast }
222     factory: cache_factory:get
223     arguments: [config]
224   cache.default:
225     class: Drupal\Core\Cache\CacheBackendInterface
226     tags:
227       - { name: cache.bin }
228     factory: cache_factory:get
229     arguments: [default]
230   cache.entity:
231     class: Drupal\Core\Cache\CacheBackendInterface
232     tags:
233       - { name: cache.bin }
234     factory: cache_factory:get
235     arguments: [entity]
236   cache.menu:
237     class: Drupal\Core\Cache\CacheBackendInterface
238     tags:
239       - { name: cache.bin }
240     factory: cache_factory:get
241     arguments: [menu]
242   cache.render:
243     class: Drupal\Core\Cache\CacheBackendInterface
244     tags:
245       - { name: cache.bin }
246     factory: cache_factory:get
247     arguments: [render]
248   cache.data:
249     class: Drupal\Core\Cache\CacheBackendInterface
250     tags:
251       - { name: cache.bin }
252     factory: cache_factory:get
253     arguments: [data]
254   cache.discovery:
255     class: Drupal\Core\Cache\CacheBackendInterface
256     tags:
257       - { name: cache.bin, default_backend: cache.backend.chainedfast }
258     factory: cache_factory:get
259     arguments: [discovery]
260   cache_router_rebuild_subscriber:
261     class: Drupal\Core\EventSubscriber\CacheRouterRebuildSubscriber
262     tags:
263       - { name: event_subscriber }
264   page_cache_request_policy:
265     class: Drupal\Core\PageCache\DefaultRequestPolicy
266     arguments: ['@session_configuration']
267     tags:
268       - { name: service_collector, tag: page_cache_request_policy, call: addPolicy}
269   page_cache_response_policy:
270     class: Drupal\Core\PageCache\ChainResponsePolicy
271     tags:
272       - { name: service_collector, tag: page_cache_response_policy, call: addPolicy}
273     lazy: true
274   page_cache_kill_switch:
275     class: Drupal\Core\PageCache\ResponsePolicy\KillSwitch
276     tags:
277       - { name: page_cache_response_policy }
278       - { name: dynamic_page_cache_response_policy }
279   page_cache_no_cache_routes:
280     class: Drupal\Core\PageCache\ResponsePolicy\DenyNoCacheRoutes
281     arguments: ['@current_route_match']
282     public: false
283     tags:
284       - { name: page_cache_response_policy }
285       - { name: dynamic_page_cache_response_policy }
286   page_cache_no_server_error:
287     class: Drupal\Core\PageCache\ResponsePolicy\NoServerError
288     public: false
289     tags:
290       - { name: page_cache_response_policy }
291       - { name: dynamic_page_cache_response_policy }
292   config.manager:
293     class: Drupal\Core\Config\ConfigManager
294     arguments: ['@entity.manager', '@config.factory', '@config.typed', '@string_translation', '@config.storage', '@event_dispatcher']
295   config.factory:
296     class: Drupal\Core\Config\ConfigFactory
297     tags:
298       - { name: event_subscriber }
299       - { name: service_collector, tag: 'config.factory.override', call: addOverride }
300     arguments: ['@config.storage', '@event_dispatcher', '@config.typed']
301   config.importer_subscriber:
302     class: Drupal\Core\Config\Importer\FinalMissingContentSubscriber
303     tags:
304       - { name: event_subscriber }
305   config.installer:
306     class: Drupal\Core\Config\ConfigInstaller
307     arguments: ['@config.factory', '@config.storage', '@config.typed', '@config.manager', '@event_dispatcher', '%install_profile%']
308     lazy: true
309   config.storage:
310     class: Drupal\Core\Config\CachedStorage
311     arguments: ['@config.storage.active', '@cache.config']
312   config.storage.active:
313     class: Drupal\Core\Config\DatabaseStorage
314     arguments: ['@database', 'config']
315     public: false
316     tags:
317       - { name: backend_overridable }
318   # @deprecated in Drupal 8.0.x and will be removed before 9.0.0. Use
319   #   config.storage.sync instead.
320   # @see https://www.drupal.org/node/2574957
321   config.storage.staging:
322     class: Drupal\Core\Config\FileStorage
323     factory: Drupal\Core\Config\FileStorageFactory::getSync
324   config.storage.sync:
325     alias: config.storage.staging
326   config.storage.snapshot:
327     class: Drupal\Core\Config\DatabaseStorage
328     arguments: ['@database', config_snapshot]
329     tags:
330       - { name: backend_overridable }
331   config.storage.schema:
332     class: Drupal\Core\Config\ExtensionInstallStorage
333     arguments: ['@config.storage', 'config/schema', '', true, '%install_profile%']
334   config.typed:
335     class: Drupal\Core\Config\TypedConfigManager
336     arguments: ['@config.storage', '@config.storage.schema', '@cache.discovery', '@module_handler', '@class_resolver']
337     tags:
338       - { name: plugin_manager_cache_clear }
339     calls:
340       - [setValidationConstraintManager, ['@validation.constraint']]
341   context.handler:
342     class: Drupal\Core\Plugin\Context\ContextHandler
343     arguments: ['@typed_data_manager']
344   context.repository:
345     class: Drupal\Core\Plugin\Context\LazyContextRepository
346     arguments: ['@service_container']
347   cron:
348     class: Drupal\Core\Cron
349     arguments: ['@module_handler', '@lock', '@queue', '@state', '@account_switcher', '@logger.channel.cron', '@plugin.manager.queue_worker', '@datetime.time']
350     lazy: true
351   diff.formatter:
352     class: Drupal\Core\Diff\DiffFormatter
353     arguments: ['@config.factory']
354   database:
355     class: Drupal\Core\Database\Connection
356     factory: Drupal\Core\Database\Database::getConnection
357     arguments: [default]
358   datetime.time:
359     class: Drupal\Component\Datetime\Time
360     arguments: ['@request_stack']
361   file_system:
362     class: Drupal\Core\File\FileSystem
363     arguments: ['@stream_wrapper_manager', '@settings', '@logger.channel.file']
364   form_builder:
365     class: Drupal\Core\Form\FormBuilder
366     arguments: ['@form_validator', '@form_submitter', '@form_cache', '@module_handler', '@event_dispatcher', '@request_stack', '@class_resolver', '@element_info', '@theme.manager', '@?csrf_token']
367   form_validator:
368     class: Drupal\Core\Form\FormValidator
369     arguments: ['@request_stack', '@string_translation', '@csrf_token', '@logger.channel.form', '@form_error_handler']
370   form_submitter:
371     class: Drupal\Core\Form\FormSubmitter
372     arguments: ['@request_stack', '@url_generator']
373   form_error_handler:
374     class: Drupal\Core\Form\FormErrorHandler
375   form_cache:
376     class: Drupal\Core\Form\FormCache
377     arguments: ['@app.root', '@keyvalue.expirable', '@module_handler', '@current_user', '@csrf_token', '@logger.channel.form', '@request_stack', '@page_cache_request_policy']
378     public: false  # Private to form_builder
379   keyvalue:
380     class: Drupal\Core\KeyValueStore\KeyValueFactory
381     arguments: ['@service_container', '%factory.keyvalue%']
382   keyvalue.database:
383     class: Drupal\Core\KeyValueStore\KeyValueDatabaseFactory
384     arguments: ['@serialization.phpserialize', '@database']
385   keyvalue.expirable:
386     class: Drupal\Core\KeyValueStore\KeyValueExpirableFactory
387     arguments: ['@service_container', '%factory.keyvalue.expirable%']
388   keyvalue.expirable.database:
389     class: Drupal\Core\KeyValueStore\KeyValueDatabaseExpirableFactory
390     arguments: ['@serialization.phpserialize', '@database']
391   logger.factory:
392     class: Drupal\Core\Logger\LoggerChannelFactory
393     parent: container.trait
394     tags:
395       - { name: service_collector, tag: logger, call: addLogger }
396   logger.channel_base:
397     abstract: true
398     class: Drupal\Core\Logger\LoggerChannel
399     factory: logger.factory:get
400   logger.channel.default:
401     parent: logger.channel_base
402     arguments: ['system']
403   logger.channel.php:
404     parent: logger.channel_base
405     arguments: ['php']
406   logger.channel.image:
407     parent: logger.channel_base
408     arguments: ['image']
409   logger.channel.cron:
410     parent: logger.channel_base
411     arguments: ['cron']
412   logger.channel.file:
413     class: Drupal\Core\Logger\LoggerChannel
414     factory: logger.factory:get
415     arguments: ['file']
416   logger.channel.form:
417     parent: logger.channel_base
418     arguments: ['form']
419   logger.log_message_parser:
420     class: Drupal\Core\Logger\LogMessageParser
421
422   serialization.json:
423     class: Drupal\Component\Serialization\Json
424   serialization.phpserialize:
425     class: Drupal\Component\Serialization\PhpSerialize
426   serialization.yaml:
427     class: Drupal\Component\Serialization\Yaml
428
429   settings:
430     class: Drupal\Core\Site\Settings
431     factory: Drupal\Core\Site\Settings::getInstance
432   state:
433     class: Drupal\Core\State\State
434     arguments: ['@keyvalue', '@cache.bootstrap', '@lock']
435     tags:
436       - { name: needs_destruction }
437   queue:
438     class: Drupal\Core\Queue\QueueFactory
439     arguments: ['@settings']
440     calls:
441       - [setContainer, ['@service_container']]
442   queue.database:
443     class: Drupal\Core\Queue\QueueDatabaseFactory
444     arguments: ['@database']
445   path.alias_whitelist:
446     class: Drupal\Core\Path\AliasWhitelist
447     tags:
448       - { name: needs_destruction }
449     arguments: [path_alias_whitelist, '@cache.bootstrap', '@lock', '@state', '@path.alias_storage']
450   path.alias_manager:
451     class: Drupal\Core\Path\AliasManager
452     arguments: ['@path.alias_storage', '@path.alias_whitelist', '@language_manager', '@cache.data']
453   path.current:
454     class: Drupal\Core\Path\CurrentPathStack
455     arguments: ['@request_stack']
456   http_handler_stack:
457     class: GuzzleHttp\HandlerStack
458     public: false
459     factory: GuzzleHttp\HandlerStack::create
460     configurator: ['@http_handler_stack_configurator', configure]
461   http_handler_stack_configurator:
462     class: Drupal\Core\Http\HandlerStackConfigurator
463     public: false
464     arguments: ['@service_container']
465   http_client:
466     class: GuzzleHttp\Client
467     factory: http_client_factory:fromOptions
468   http_client_factory:
469     class: Drupal\Core\Http\ClientFactory
470     arguments: ['@http_handler_stack']
471   plugin.manager.link_relation_type:
472     class: \Drupal\Core\Http\LinkRelationTypeManager
473     arguments: ['@app.root', '@module_handler', '@cache.discovery']
474   theme.negotiator:
475     class: Drupal\Core\Theme\ThemeNegotiator
476     arguments: ['@access_check.theme', '@class_resolver']
477     tags:
478       - { name: service_id_collector, tag: theme_negotiator }
479   theme.negotiator.default:
480     class: Drupal\Core\Theme\DefaultNegotiator
481     arguments: ['@config.factory']
482     tags:
483       - { name: theme_negotiator, priority: -100 }
484   theme.negotiator.ajax_base_page:
485     class: Drupal\Core\Theme\AjaxBasePageNegotiator
486     arguments: ['@csrf_token', '@config.factory', '@request_stack']
487     tags:
488       - { name: theme_negotiator, priority: 1000 }
489   container.namespaces:
490     class: ArrayObject
491     arguments: [ '%container.namespaces%' ]
492   container.trait:
493     abstract: true
494     calls:
495       - [setContainer, ['@service_container']]
496   default_plugin_manager:
497     abstract: true
498     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler']
499   module_handler:
500     class: Drupal\Core\Extension\ModuleHandler
501     arguments: ['@app.root', '%container.modules%', '@cache.bootstrap']
502   module_installer:
503     class: Drupal\Core\Extension\ModuleInstaller
504     tags:
505       - { name: service_collector, tag: 'module_install.uninstall_validator', call: addUninstallValidator }
506     arguments: ['@app.root', '@module_handler', '@kernel', '@router.builder']
507     lazy: true
508   content_uninstall_validator:
509     class: Drupal\Core\Entity\ContentUninstallValidator
510     tags:
511       - { name: module_install.uninstall_validator }
512     arguments: ['@entity.manager', '@string_translation']
513     lazy: true
514   required_module_uninstall_validator:
515     class: Drupal\Core\Extension\RequiredModuleUninstallValidator
516     tags:
517       - { name: module_install.uninstall_validator }
518     arguments: ['@string_translation']
519     lazy: true
520   theme_handler:
521     class: Drupal\Core\Extension\ThemeHandler
522     arguments: ['@app.root', '@config.factory', '@module_handler', '@state', '@info_parser']
523   theme_installer:
524     class: Drupal\Core\Extension\ThemeInstaller
525     arguments: ['@theme_handler', '@config.factory', '@config.installer', '@module_handler', '@config.manager', '@asset.css.collection_optimizer', '@router.builder', '@logger.channel.default', '@state']
526   # @deprecated in Drupal 8.0.x and will be removed before 9.0.0. Use the other
527   #   entity* services instead.
528   entity.manager:
529     # We cannot set the deprecated property here because many test cases still
530     # rely on this service and they would fail with deprecation warnings.
531     class: Drupal\Core\Entity\EntityManager
532     parent: container.trait
533     # @todo Remove this tag in https://www.drupal.org/node/2549143.
534     tags:
535       - { name: plugin_manager_cache_clear }
536   entity_type.manager:
537     class: Drupal\Core\Entity\EntityTypeManager
538     arguments: ['@container.namespaces', '@module_handler', '@cache.discovery', '@string_translation', '@class_resolver']
539     parent: container.trait
540     tags:
541       - { name: plugin_manager_cache_clear }
542   entity_type.repository:
543     class: Drupal\Core\Entity\EntityTypeRepository
544     arguments: ['@entity_type.manager']
545   entity_type.bundle.info:
546     class: Drupal\Core\Entity\EntityTypeBundleInfo
547     arguments: ['@entity_type.manager', '@language_manager', '@module_handler', '@typed_data_manager', '@cache.discovery']
548   entity.repository:
549     class: Drupal\Core\Entity\EntityRepository
550     arguments: ['@entity_type.manager', '@language_manager']
551   entity_display.repository:
552     class: Drupal\Core\Entity\EntityDisplayRepository
553     arguments: ['@entity_type.manager', '@module_handler', '@cache.discovery', '@language_manager']
554   entity_field.manager:
555     class: Drupal\Core\Entity\EntityFieldManager
556     arguments: ['@entity_type.manager', '@entity_type.bundle.info', '@entity_display.repository', '@typed_data_manager', '@language_manager', '@keyvalue', '@module_handler', '@cache.discovery']
557   entity_type.listener:
558     class: Drupal\Core\Entity\EntityTypeListener
559     arguments: ['@entity_type.manager', '@entity_field.manager', '@event_dispatcher', '@entity.last_installed_schema.repository']
560   entity_bundle.listener:
561     class: Drupal\Core\Entity\EntityBundleListener
562     arguments: ['@entity_type.manager', '@entity_type.bundle.info', '@entity_field.manager', '@module_handler']
563   entity_route_subscriber:
564     class: Drupal\Core\EventSubscriber\EntityRouteProviderSubscriber
565     arguments: ['@entity.manager']
566     tags:
567       - { name: event_subscriber }
568   entity.definition_update_manager:
569     class: Drupal\Core\Entity\EntityDefinitionUpdateManager
570     arguments: ['@entity.manager']
571   entity.last_installed_schema.repository:
572     class: Drupal\Core\Entity\EntityLastInstalledSchemaRepository
573     arguments: ['@keyvalue']
574   entity_field.deleted_fields_repository:
575     class: Drupal\Core\Field\DeletedFieldsRepository
576     arguments: ['@state']
577   field_storage_definition.listener:
578     class: Drupal\Core\Field\FieldStorageDefinitionListener
579     arguments: ['@entity_type.manager', '@event_dispatcher', '@entity.last_installed_schema.repository', '@entity_field.manager', '@entity_field.deleted_fields_repository']
580   field_definition.listener:
581     class: Drupal\Core\Field\FieldDefinitionListener
582     arguments: ['@entity_type.manager', '@entity_field.manager', '@keyvalue', '@cache.discovery']
583   entity.form_builder:
584     class: Drupal\Core\Entity\EntityFormBuilder
585     arguments: ['@entity.manager', '@form_builder']
586   entity.bundle_config_import_validator:
587     class: Drupal\Core\Entity\Event\BundleConfigImportValidate
588     arguments: ['@config.manager', '@entity.manager']
589     tags:
590       - { name: event_subscriber }
591   entity.autocomplete_matcher:
592     class: Drupal\Core\Entity\EntityAutocompleteMatcher
593     arguments: ['@plugin.manager.entity_reference_selection']
594   plugin_form.factory:
595     class: Drupal\Core\Plugin\PluginFormFactory
596     arguments: ['@class_resolver']
597   plugin.manager.entity_reference_selection:
598     class: Drupal\Core\Entity\EntityReferenceSelection\SelectionPluginManager
599     parent: default_plugin_manager
600   plugin.manager.block:
601     class: Drupal\Core\Block\BlockManager
602     parent: default_plugin_manager
603   plugin.manager.field.field_type:
604     class: Drupal\Core\Field\FieldTypePluginManager
605     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@typed_data_manager']
606   plugin.manager.field.widget:
607     class: Drupal\Core\Field\WidgetPluginManager
608     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@plugin.manager.field.field_type']
609   plugin.manager.field.formatter:
610     class: Drupal\Core\Field\FormatterPluginManager
611     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@plugin.manager.field.field_type']
612   plugin.manager.archiver:
613     class: Drupal\Core\Archiver\ArchiverManager
614     parent: default_plugin_manager
615   plugin.manager.action:
616     class: Drupal\Core\Action\ActionManager
617     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler']
618   plugin.manager.menu.link:
619     class: Drupal\Core\Menu\MenuLinkManager
620     arguments: ['@menu.tree_storage', '@menu_link.static.overrides', '@module_handler']
621   menu.link_tree:
622     class: Drupal\Core\Menu\MenuLinkTree
623     arguments: ['@menu.tree_storage', '@plugin.manager.menu.link', '@router.route_provider', '@menu.active_trail', '@controller_resolver']
624   menu.default_tree_manipulators:
625     class: Drupal\Core\Menu\DefaultMenuLinkTreeManipulators
626     arguments: ['@access_manager', '@current_user', '@entity_type.manager']
627   menu.active_trail:
628     class: Drupal\Core\Menu\MenuActiveTrail
629     arguments: ['@plugin.manager.menu.link', '@current_route_match', '@cache.menu', '@lock']
630     tags:
631       - { name: needs_destruction }
632   menu.parent_form_selector:
633     class: Drupal\Core\Menu\MenuParentFormSelector
634     arguments: ['@menu.link_tree', '@entity.manager', '@string_translation']
635   plugin.manager.menu.local_action:
636     class: Drupal\Core\Menu\LocalActionManager
637     arguments: ['@controller_resolver', '@request_stack', '@current_route_match', '@router.route_provider', '@module_handler', '@cache.discovery', '@language_manager', '@access_manager', '@current_user']
638   plugin.manager.menu.local_task:
639     class: Drupal\Core\Menu\LocalTaskManager
640     arguments: ['@controller_resolver', '@request_stack', '@current_route_match', '@router.route_provider', '@module_handler', '@cache.discovery', '@language_manager', '@access_manager', '@current_user']
641   plugin.manager.menu.contextual_link:
642     class: Drupal\Core\Menu\ContextualLinkManager
643     arguments: ['@controller_resolver', '@module_handler', '@cache.discovery', '@language_manager', '@access_manager', '@current_user', '@request_stack']
644   plugin.manager.display_variant:
645     class: Drupal\Core\Display\VariantManager
646     parent: default_plugin_manager
647   plugin.manager.queue_worker:
648     class: Drupal\Core\Queue\QueueWorkerManager
649     parent: default_plugin_manager
650   plugin.cache_clearer:
651     class: Drupal\Core\Plugin\CachedDiscoveryClearer
652     lazy: true
653   paramconverter.menu_link:
654     class: Drupal\Core\ParamConverter\MenuLinkPluginConverter
655     tags:
656       - { name: paramconverter }
657     arguments: ['@plugin.manager.menu.link']
658     lazy: true
659   menu.tree_storage:
660     class: Drupal\Core\Menu\MenuTreeStorage
661     arguments: ['@database', '@cache.menu', '@cache_tags.invalidator', 'menu_tree']
662     public: false  # Private to plugin.manager.menu.link and menu.link_tree
663     tags:
664       - { name: backend_overridable }
665   menu_link.static.overrides:
666     class: Drupal\Core\Menu\StaticMenuLinkOverrides
667     arguments: ['@config.factory']
668   request_stack:
669     class: Symfony\Component\HttpFoundation\RequestStack
670     tags:
671       - { name: persist }
672   current_route_match:
673      class: Drupal\Core\Routing\CurrentRouteMatch
674      arguments: ['@request_stack']
675   event_dispatcher:
676     class: Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher
677     arguments: ['@service_container']
678   app.root:
679     class: SplString
680     factory: app.root.factory:get
681     tags:
682       - { name: parameter_service }
683   app.root.factory:
684     class: Drupal\Core\AppRootFactory
685     arguments: ['@kernel']
686     public: false
687   site.path:
688     class: SplString
689     factory: site.path.factory:get
690     tags:
691       - { name: parameter_service }
692   site.path.factory:
693     class: Drupal\Core\SitePathFactory
694     arguments: ['@kernel']
695     public: false
696   controller_resolver:
697     class: Drupal\Core\Controller\ControllerResolver
698     arguments: ['@psr7.http_message_factory', '@class_resolver']
699   class_resolver:
700     class: Drupal\Core\DependencyInjection\ClassResolver
701     calls:
702       - [setContainer, ['@service_container']]
703   title_resolver:
704     class: Drupal\Core\Controller\TitleResolver
705     arguments: ['@controller_resolver', '@string_translation']
706   http_kernel:
707     class: Stack\StackedHttpKernel
708   http_kernel.basic:
709     class: Symfony\Component\HttpKernel\HttpKernel
710     arguments: ['@event_dispatcher', '@controller_resolver', '@request_stack']
711   http_middleware.negotiation:
712     class: Drupal\Core\StackMiddleware\NegotiationMiddleware
713     tags:
714       - { name: http_middleware, priority: 400 }
715   http_middleware.reverse_proxy:
716     class: Drupal\Core\StackMiddleware\ReverseProxyMiddleware
717     arguments: ['@settings']
718     tags:
719       - { name: http_middleware, priority: 300 }
720   http_middleware.kernel_pre_handle:
721     class: Drupal\Core\StackMiddleware\KernelPreHandle
722     arguments: ['@kernel']
723     tags:
724       - { name: http_middleware, priority: 100 }
725   http_middleware.session:
726     class: Drupal\Core\StackMiddleware\Session
727     tags:
728       - { name: http_middleware, priority: 50 }
729     calls:
730       - [setContainer, ['@service_container']]
731   http_middleware.cors:
732      class: Asm89\Stack\Cors
733      arguments: ['%cors.config%']
734      tags:
735        - { name: http_middleware, priority: 250 }
736   psr7.http_foundation_factory:
737     class: Symfony\Bridge\PsrHttpMessage\Factory\HttpFoundationFactory
738   psr7.http_message_factory:
739     class: Symfony\Bridge\PsrHttpMessage\Factory\DiactorosFactory
740   language_manager:
741     class: Drupal\Core\Language\LanguageManager
742     arguments: ['@language.default']
743   language.current_language_context:
744     class: Drupal\Core\Language\ContextProvider\CurrentLanguageContext
745     arguments: ['@language_manager']
746     tags:
747       - { name: 'context_provider' }
748   language.default:
749     class: Drupal\Core\Language\LanguageDefault
750     arguments: ['%language.default_values%']
751   string_translator.custom_strings:
752     class: Drupal\Core\StringTranslation\Translator\CustomStrings
753     arguments: ['@settings']
754     tags:
755       - { name: string_translator, priority: 30 }
756   string_translation:
757     class: Drupal\Core\StringTranslation\TranslationManager
758     arguments: ['@language.default']
759     tags:
760       - { name: service_collector, tag: string_translator, call: addTranslator }
761   database.replica:
762     class: Drupal\Core\Database\Connection
763     factory: Drupal\Core\Database\Database::getConnection
764     arguments: [replica]
765   typed_data_manager:
766     class: Drupal\Core\TypedData\TypedDataManager
767     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@class_resolver']
768     calls:
769       - [setValidationConstraintManager, ['@validation.constraint']]
770     tags:
771       - { name: plugin_manager_cache_clear }
772   validation.constraint:
773     class: Drupal\Core\Validation\ConstraintManager
774     parent: default_plugin_manager
775     tags:
776       - { name: plugin_manager_cache_clear }
777   lock:
778     class: Drupal\Core\Lock\DatabaseLockBackend
779     arguments: ['@database']
780     tags:
781       - { name: backend_overridable }
782     lazy: true
783   lock.persistent:
784     class: Drupal\Core\Lock\PersistentDatabaseLockBackend
785     arguments: ['@database']
786     tags:
787       - { name: backend_overridable }
788     lazy: true
789   router.request_context:
790     class: Drupal\Core\Routing\RequestContext
791     tags:
792       - { name: persist }
793     calls:
794       - [fromRequestStack, ['@request_stack']]
795   router.admin_context:
796     class: Drupal\Core\Routing\AdminContext
797     arguments: ['@current_route_match']
798   router.route_provider:
799     class: Drupal\Core\Routing\RouteProvider
800     arguments: ['@database', '@state', '@path.current', '@cache.data', '@path_processor_manager', '@cache_tags.invalidator', 'router', '@language_manager']
801     tags:
802       - { name: event_subscriber }
803       - { name: backend_overridable }
804   router.route_provider.lazy_builder:
805     class: Drupal\Core\Routing\RouteProviderLazyBuilder
806     arguments: ['@router.route_provider', '@router.builder']
807     tags:
808       - { name: event_subscriber }
809   router.route_preloader:
810     class: Drupal\Core\Routing\RoutePreloader
811     arguments: ['@router.route_provider', '@state', '@cache.bootstrap']
812     tags:
813       - { name: 'event_subscriber' }
814   router.matcher.final_matcher:
815     class: Drupal\Core\Routing\UrlMatcher
816     arguments: ['@path.current']
817     deprecated: The "%service_id%" service is deprecated. You should use the 'router.no_access_checks' service instead.
818   router.matcher:
819     class: Symfony\Cmf\Component\Routing\NestedMatcher\NestedMatcher
820     arguments: ['@router.route_provider']
821     calls:
822       - [setFinalMatcher, ['@router.matcher.final_matcher']]
823     tags:
824       - { name: service_collector, tag: non_lazy_route_filter, call: addRouteFilter }
825     deprecated: The "%service_id%" service is deprecated. You should use the 'router.no_access_checks' service instead.
826   url_generator.non_bubbling:
827     class: Drupal\Core\Routing\UrlGenerator
828     arguments: ['@router.route_provider', '@path_processor_manager', '@route_processor_manager', '@request_stack', '%filter_protocols%']
829     public: false
830     calls:
831       - [setContext, ['@?router.request_context']]
832   url_generator:
833     class: Drupal\Core\Render\MetadataBubblingUrlGenerator
834     arguments: ['@url_generator.non_bubbling', '@renderer']
835     calls:
836       - [setContext, ['@?router.request_context']]
837   redirect.destination:
838     class: Drupal\Core\Routing\RedirectDestination
839     arguments: ['@request_stack', '@url_generator']
840   unrouted_url_assembler:
841     class: Drupal\Core\Utility\UnroutedUrlAssembler
842     arguments: ['@request_stack', '@path_processor_manager', '%filter_protocols%']
843   link_generator:
844     class: Drupal\Core\Utility\LinkGenerator
845     arguments: ['@url_generator', '@module_handler', '@renderer']
846   router:
847     class: Drupal\Core\Routing\AccessAwareRouter
848     arguments: ['@router.no_access_checks', '@access_manager', '@current_user']
849   router.dynamic:
850     class: Symfony\Cmf\Component\Routing\DynamicRouter
851     arguments: ['@router.request_context', '@router.matcher', '@url_generator']
852     tags:
853       - { name: service_collector, tag: non_lazy_route_enhancer, call: addRouteEnhancer }
854     deprecated: The "%service_id%" service is deprecated. You should use the 'router.no_access_checks' service instead.
855   router.no_access_checks:
856     class: \Drupal\Core\Routing\Router
857     arguments: ['@router.route_provider', '@path.current', '@url_generator']
858     tags:
859       # @todo Try to combine those tags together, see https://www.drupal.org/node/2915772.
860       - { name: service_collector, tag: non_lazy_route_enhancer, call: addRouteEnhancer }
861       - { name: service_collector, tag: route_enhancer, call: addRouteEnhancer  }
862       - { name: service_collector, tag: non_lazy_route_filter, call: addRouteFilter }
863       - { name: service_collector, tag: route_filter, call: addRouteFilter }
864     calls:
865       - [setContext, ['@router.request_context']]
866   router.path_roots_subscriber:
867     class: Drupal\Core\EventSubscriber\PathRootsSubscriber
868     arguments: ['@state']
869     tags:
870       - { name: event_subscriber }
871   entity.query:
872     class: Drupal\Core\Entity\Query\QueryFactory
873     arguments: ['@entity.manager']
874     calls:
875       - [setContainer, ['@service_container']]
876   entity.query.config:
877     class: Drupal\Core\Config\Entity\Query\QueryFactory
878     arguments: ['@config.factory', '@keyvalue', '@config.manager']
879     tags:
880       - { name: event_subscriber }
881   entity.query.sql:
882     class: Drupal\Core\Entity\Query\Sql\QueryFactory
883     arguments: ['@database']
884     tags:
885       - { name: backend_overridable }
886   pgsql.entity.query.sql:
887     class: Drupal\Core\Entity\Query\Sql\pgsql\QueryFactory
888     arguments: ['@database']
889   entity.query.null:
890     class: Drupal\Core\Entity\Query\Null\QueryFactory
891   entity.query.keyvalue:
892     class: Drupal\Core\Entity\KeyValueStore\Query\QueryFactory
893     arguments: ['@keyvalue']
894   router.dumper:
895     class: Drupal\Core\Routing\MatcherDumper
896     arguments: ['@database', '@state']
897     tags:
898       - { name: backend_overridable }
899     lazy: true
900   router.builder:
901     class: Drupal\Core\Routing\RouteBuilder
902     arguments: ['@router.dumper', '@lock', '@event_dispatcher', '@module_handler', '@controller_resolver', '@access_manager.check_provider']
903     lazy: true
904     tags:
905       - { name: needs_destruction }
906   menu.rebuild_subscriber:
907     class: Drupal\Core\EventSubscriber\MenuRouterRebuildSubscriber
908     arguments: ['@lock', '@plugin.manager.menu.link']
909     tags:
910       - { name: event_subscriber }
911   path.alias_storage:
912     class: Drupal\Core\Path\AliasStorage
913     arguments: ['@database', '@module_handler']
914     tags:
915       - { name: backend_overridable }
916   path.matcher:
917     class: Drupal\Core\Path\PathMatcher
918     arguments: ['@config.factory', '@current_route_match']
919   path.validator:
920     class: Drupal\Core\Path\PathValidator
921     arguments: ['@router', '@router.no_access_checks', '@current_user', '@path_processor_manager']
922
923 # The argument to the hashing service defined in services.yml, to the
924 # constructor of PhpassHashedPassword is the log2 number of iterations for
925 # password stretching.
926 # @todo increase by 1 every Drupal version in order to counteract increases in
927 # the speed and power of computers available to crack the hashes. The current
928 # password hashing method was introduced in Drupal 7 with a log2 count of 15.
929   password:
930     class: Drupal\Core\Password\PhpassHashedPassword
931     arguments: [16]
932   request_format_route_filter:
933     class: Drupal\Core\Routing\RequestFormatRouteFilter
934     tags:
935       - { name: route_filter }
936   method_filter:
937     class: Drupal\Core\Routing\MethodFilter
938     tags:
939       # The HTTP method route filter must run very early: it removes any routes
940       # whose requirements do not allow the HTTP method of the current request.
941       # Throws a 405 if no routes match the current request's HTTP method.
942       # (If it runs before content_type_header_matcher, it can ensure that only
943       # receives routes which can have a Content-Type request header.)
944       - { name: route_filter, priority: 10 }
945   content_type_header_matcher:
946     class: Drupal\Core\Routing\ContentTypeHeaderMatcher
947     tags:
948       # The Content-Type request header route filter must run early: it removes
949       # any routes whose requirements do not allow the Content-Type request
950       # header of the current request.
951       # Throws a 415 if no routes match the Content-Type request header of the
952       # current request, or if it has no Content-Type request header.
953       # Note it does nothing for GET requests.
954       - { name: route_filter, priority: 5 }
955   paramconverter_manager:
956     class: Drupal\Core\ParamConverter\ParamConverterManager
957     tags:
958       - { name: service_collector, tag: paramconverter, call: addConverter }
959   paramconverter_subscriber:
960     class: Drupal\Core\EventSubscriber\ParamConverterSubscriber
961     tags:
962       - { name: event_subscriber }
963     arguments: ['@paramconverter_manager']
964   paramconverter.entity:
965     class: Drupal\Core\ParamConverter\EntityConverter
966     tags:
967       - { name: paramconverter }
968     arguments: ['@entity.manager', '@language_manager']
969   paramconverter.entity_revision:
970     class: Drupal\Core\ParamConverter\EntityRevisionParamConverter
971     tags:
972       - { name: paramconverter }
973     arguments: ['@entity_type.manager', '@entity.repository']
974   paramconverter.configentity_admin:
975     class: Drupal\Core\ParamConverter\AdminPathConfigEntityConverter
976     tags:
977       # Use a higher priority than EntityConverter, see the class for details.
978       - { name: paramconverter, priority: 5 }
979     arguments: ['@entity.manager', '@config.factory', '@router.admin_context']
980     lazy: true
981   route_subscriber.module:
982     class: Drupal\Core\EventSubscriber\ModuleRouteSubscriber
983     tags:
984       - { name: event_subscriber }
985     arguments: ['@module_handler']
986   resolver_manager.entity:
987     class: Drupal\Core\Entity\EntityResolverManager
988     arguments: ['@entity.manager', '@class_resolver']
989   route_subscriber.entity:
990     class: Drupal\Core\EventSubscriber\EntityRouteAlterSubscriber
991     tags:
992       - { name: event_subscriber }
993     arguments: ['@resolver_manager.entity']
994   ajax_response.subscriber:
995     class: Drupal\Core\EventSubscriber\AjaxResponseSubscriber
996     arguments: ['@ajax_response.attachments_processor']
997     tags:
998       - { name: event_subscriber }
999   form_ajax_subscriber:
1000     class: Drupal\Core\Form\EventSubscriber\FormAjaxSubscriber
1001     arguments: ['@form_ajax_response_builder', '@string_translation']
1002     tags:
1003       - { name: event_subscriber }
1004   route_enhancer.param_conversion:
1005     class: Drupal\Core\Routing\Enhancer\ParamConversionEnhancer
1006     arguments: ['@paramconverter_manager']
1007     tags:
1008       - { name: route_enhancer, priority: 5000 }
1009       - { name: event_subscriber }
1010   route_enhancer.form:
1011     class: Drupal\Core\Routing\Enhancer\FormRouteEnhancer
1012     tags:
1013       - { name: route_enhancer }
1014   route_enhancer.entity:
1015     class: Drupal\Core\Entity\Enhancer\EntityRouteEnhancer
1016     tags:
1017       - { name: route_enhancer, priority: 20 }
1018   route_enhancer.entity_revision:
1019     class: Drupal\Core\Routing\Enhancer\EntityRevisionRouteEnhancer
1020     tags:
1021       - { name: route_enhancer }
1022   route_special_attributes_subscriber:
1023     class: Drupal\Core\EventSubscriber\SpecialAttributesRouteSubscriber
1024     tags:
1025       - { name: event_subscriber }
1026   route_http_method_subscriber:
1027     class: Drupal\Core\EventSubscriber\RouteMethodSubscriber
1028     tags:
1029       - { name: event_subscriber }
1030   psr_response_view_subscriber:
1031     class: Drupal\Core\EventSubscriber\PsrResponseSubscriber
1032     arguments: ['@psr7.http_foundation_factory']
1033     tags:
1034       - { name: event_subscriber }
1035
1036   # Main content view subscriber plus the renderers it uses.
1037   main_content_view_subscriber:
1038     class: Drupal\Core\EventSubscriber\MainContentViewSubscriber
1039     arguments: ['@class_resolver', '@current_route_match', '%main_content_renderers%']
1040     tags:
1041       - { name: event_subscriber }
1042   renderer_non_html:
1043     class: Drupal\Core\EventSubscriber\RenderArrayNonHtmlSubscriber
1044     tags:
1045       - { name: event_subscriber }
1046   main_content_renderer.html:
1047     class: Drupal\Core\Render\MainContent\HtmlRenderer
1048     arguments: ['@title_resolver', '@plugin.manager.display_variant', '@event_dispatcher', '@module_handler', '@renderer', '@render_cache', '%renderer.config%']
1049     tags:
1050       - { name: render.main_content_renderer, format: html }
1051   main_content_renderer.ajax:
1052     class: Drupal\Core\Render\MainContent\AjaxRenderer
1053     arguments: ['@element_info']
1054     tags:
1055       - { name: render.main_content_renderer, format: drupal_ajax }
1056       - { name: render.main_content_renderer, format: iframeupload }
1057   main_content_renderer.dialog:
1058     class: Drupal\Core\Render\MainContent\DialogRenderer
1059     arguments: ['@title_resolver']
1060     tags:
1061       - { name: render.main_content_renderer, format: drupal_dialog }
1062   main_content_renderer.off_canvas:
1063     class: Drupal\Core\Render\MainContent\OffCanvasRenderer
1064     arguments: ['@title_resolver', '@renderer']
1065     tags:
1066       - { name: render.main_content_renderer, format: drupal_dialog.off_canvas }
1067   main_content_renderer.modal:
1068     class: Drupal\Core\Render\MainContent\ModalRenderer
1069     arguments: ['@title_resolver']
1070     tags:
1071       - { name: render.main_content_renderer, format: drupal_modal }
1072   controller.form:
1073     class: Drupal\Core\Controller\HtmlFormController
1074     arguments: ['@controller_resolver', '@form_builder', '@class_resolver']
1075   controller.entity_form:
1076     class: Drupal\Core\Entity\HtmlEntityFormController
1077     arguments: ['@controller_resolver', '@form_builder', '@entity.manager']
1078   form_ajax_response_builder:
1079     class: Drupal\Core\Form\FormAjaxResponseBuilder
1080     arguments: ['@main_content_renderer.ajax', '@current_route_match']
1081   router_listener:
1082     class: Symfony\Component\HttpKernel\EventListener\RouterListener
1083     tags:
1084       - { name: event_subscriber }
1085     arguments: ['@router', '@request_stack', '@router.request_context', NULL]
1086   options_request_listener:
1087     class: Drupal\Core\EventSubscriber\OptionsRequestSubscriber
1088     arguments: ['@router.route_provider']
1089     tags:
1090       - { name: event_subscriber }
1091   bare_html_page_renderer:
1092     class: Drupal\Core\Render\BareHtmlPageRenderer
1093     arguments: ['@renderer', '@html_response.attachments_processor']
1094     lazy: true
1095   private_key:
1096     class: Drupal\Core\PrivateKey
1097     arguments: ['@state']
1098   csrf_token:
1099     class: Drupal\Core\Access\CsrfTokenGenerator
1100     arguments: ['@private_key', '@session_manager.metadata_bag']
1101   access_arguments_resolver_factory:
1102     class: Drupal\Core\Access\AccessArgumentsResolverFactory
1103   access_manager:
1104     class: Drupal\Core\Access\AccessManager
1105     arguments: ['@router.route_provider', '@paramconverter_manager', '@access_arguments_resolver_factory', '@current_user', '@access_manager.check_provider']
1106   access_manager.check_provider:
1107     class: Drupal\Core\Access\CheckProvider
1108     calls:
1109       - [setContainer, ['@service_container']]
1110     public: false
1111   access_check.default:
1112     class: Drupal\Core\Access\DefaultAccessCheck
1113     tags:
1114       - { name: access_check, applies_to: _access }
1115   access_check.entity:
1116     class: Drupal\Core\Entity\EntityAccessCheck
1117     tags:
1118       - { name: access_check, applies_to: _entity_access }
1119   access_check.entity_create:
1120     class: Drupal\Core\Entity\EntityCreateAccessCheck
1121     arguments: ['@entity.manager']
1122     tags:
1123       - { name: access_check, applies_to: _entity_create_access }
1124   access_check.entity_create_any:
1125     class: Drupal\Core\Entity\EntityCreateAnyAccessCheck
1126     arguments: ['@entity_type.manager', '@entity_type.bundle.info']
1127     tags:
1128       - { name: access_check, applies_to: _entity_create_any_access }
1129   access_check.theme:
1130     class: Drupal\Core\Theme\ThemeAccessCheck
1131     arguments: ['@theme_handler']
1132     tags:
1133       - { name: access_check, applies_to: _access_theme }
1134   access_check.custom:
1135     class: Drupal\Core\Access\CustomAccessCheck
1136     arguments: ['@controller_resolver', '@access_arguments_resolver_factory']
1137     tags:
1138       - { name: access_check, applies_to: _custom_access }
1139   access_check.csrf:
1140     class: Drupal\Core\Access\CsrfAccessCheck
1141     tags:
1142       - { name: access_check, applies_to: _csrf_token, needs_incoming_request: TRUE }
1143     arguments: ['@csrf_token']
1144   access_check.header.csrf:
1145     class: Drupal\Core\Access\CsrfRequestHeaderAccessCheck
1146     arguments: ['@session_configuration', '@csrf_token']
1147     tags:
1148       - { name: access_check, needs_incoming_request: TRUE }
1149   maintenance_mode:
1150     class: Drupal\Core\Site\MaintenanceMode
1151     arguments: ['@state', '@current_user']
1152   maintenance_mode_subscriber:
1153     class: Drupal\Core\EventSubscriber\MaintenanceModeSubscriber
1154     arguments: ['@maintenance_mode', '@config.factory', '@string_translation', '@url_generator', '@current_user', '@bare_html_page_renderer', '@messenger']
1155     tags:
1156       - { name: event_subscriber }
1157   path_subscriber:
1158     class: Drupal\Core\EventSubscriber\PathSubscriber
1159     tags:
1160       - { name: event_subscriber }
1161     arguments: ['@path.alias_manager', '@path.current']
1162   route_access_response_subscriber:
1163     class: Drupal\Core\EventSubscriber\RouteAccessResponseSubscriber
1164     tags:
1165       - { name: event_subscriber }
1166   client_error_response_subscriber:
1167     class: Drupal\Core\EventSubscriber\ClientErrorResponseSubscriber
1168     tags:
1169       - { name: event_subscriber }
1170   anonymous_user_response_subscriber:
1171     class: Drupal\Core\EventSubscriber\AnonymousUserResponseSubscriber
1172     tags:
1173       - { name: event_subscriber }
1174     arguments: ['@current_user']
1175   ajax_response.attachments_processor:
1176     class: Drupal\Core\Ajax\AjaxResponseAttachmentsProcessor
1177     tags:
1178     arguments: ['@asset.resolver', '@config.factory', '@asset.css.collection_renderer', '@asset.js.collection_renderer', '@request_stack', '@renderer', '@module_handler']
1179   html_response.attachments_processor:
1180     class: Drupal\Core\Render\HtmlResponseAttachmentsProcessor
1181     tags:
1182     arguments: ['@asset.resolver', '@config.factory', '@asset.css.collection_renderer', '@asset.js.collection_renderer', '@request_stack', '@renderer', '@module_handler']
1183   html_response.subscriber:
1184     class: Drupal\Core\EventSubscriber\HtmlResponseSubscriber
1185     tags:
1186       - { name: event_subscriber }
1187     arguments: ['@html_response.attachments_processor']
1188   finish_response_subscriber:
1189     class: Drupal\Core\EventSubscriber\FinishResponseSubscriber
1190     tags:
1191       - { name: event_subscriber }
1192     arguments: ['@language_manager', '@config.factory', '@page_cache_request_policy', '@page_cache_response_policy', '@cache_contexts_manager', '%http.response.debug_cacheability_headers%']
1193   response_generator_subscriber:
1194     class: Drupal\Core\EventSubscriber\ResponseGeneratorSubscriber
1195     tags:
1196       - { name: event_subscriber }
1197   redirect_response_subscriber:
1198     class: Drupal\Core\EventSubscriber\RedirectResponseSubscriber
1199     arguments: ['@unrouted_url_assembler', '@router.request_context']
1200     tags:
1201       - { name: event_subscriber }
1202   redirect_leading_slashes_subscriber:
1203     class: Drupal\Core\EventSubscriber\RedirectLeadingSlashesSubscriber
1204     tags:
1205       - { name: event_subscriber }
1206   request_close_subscriber:
1207     class: Drupal\Core\EventSubscriber\RequestCloseSubscriber
1208     tags:
1209       - { name: event_subscriber }
1210     arguments: ['@module_handler']
1211   config_import_subscriber:
1212     class: Drupal\Core\EventSubscriber\ConfigImportSubscriber
1213     tags:
1214       - { name: event_subscriber }
1215     arguments: ['@theme_handler']
1216   config_snapshot_subscriber:
1217     class: Drupal\Core\EventSubscriber\ConfigSnapshotSubscriber
1218     tags:
1219       - { name: event_subscriber }
1220     arguments: ['@config.manager', '@config.storage', '@config.storage.snapshot']
1221   exception.needs_installer:
1222     class: Drupal\Core\EventSubscriber\ExceptionDetectNeedsInstallSubscriber
1223     arguments: ['@database']
1224     tags:
1225       - { name: event_subscriber }
1226   exception.default_json:
1227     class: Drupal\Core\EventSubscriber\ExceptionJsonSubscriber
1228     tags:
1229       - { name: event_subscriber }
1230   exception.default_html:
1231     class: Drupal\Core\EventSubscriber\DefaultExceptionHtmlSubscriber
1232     tags:
1233       - { name: event_subscriber }
1234     arguments: ['@http_kernel', '@logger.channel.php', '@redirect.destination', '@router.no_access_checks']
1235   exception.final:
1236     class: Drupal\Core\EventSubscriber\FinalExceptionSubscriber
1237     tags:
1238       - { name: event_subscriber }
1239     arguments: ['@config.factory']
1240   exception.logger:
1241     class: Drupal\Core\EventSubscriber\ExceptionLoggingSubscriber
1242     tags:
1243       - { name: event_subscriber }
1244     arguments: ['@logger.factory']
1245   exception.custom_page_html:
1246     class: Drupal\Core\EventSubscriber\CustomPageExceptionHtmlSubscriber
1247     tags:
1248       - { name: event_subscriber }
1249     arguments: ['@config.factory', '@http_kernel', '@logger.channel.php', '@redirect.destination', '@router.no_access_checks', '@access_manager']
1250   exception.fast_404_html:
1251     class: Drupal\Core\EventSubscriber\Fast404ExceptionHtmlSubscriber
1252     tags:
1253       - { name: event_subscriber }
1254     arguments: ['@config.factory', '@http_kernel']
1255   exception.test_site:
1256     class: Drupal\Core\EventSubscriber\ExceptionTestSiteSubscriber
1257     tags:
1258       - { name: event_subscriber }
1259   exception.enforced_form_response:
1260     class: Drupal\Core\EventSubscriber\EnforcedFormResponseSubscriber
1261     tags:
1262       - { name: event_subscriber }
1263   route_processor_manager:
1264     class: Drupal\Core\RouteProcessor\RouteProcessorManager
1265     tags:
1266       - { name: service_collector, tag: route_processor_outbound, call: addOutbound }
1267   path_processor_manager:
1268     class: Drupal\Core\PathProcessor\PathProcessorManager
1269     tags:
1270       - { name: service_collector, tag: path_processor_inbound, call: addInbound }
1271       - { name: service_collector, tag: path_processor_outbound, call: addOutbound }
1272   path_processor_decode:
1273     class: Drupal\Core\PathProcessor\PathProcessorDecode
1274     tags:
1275       - { name: path_processor_inbound, priority: 1000 }
1276   path_processor_front:
1277     class: Drupal\Core\PathProcessor\PathProcessorFront
1278     tags:
1279       - { name: path_processor_inbound, priority: 200 }
1280       - { name: path_processor_outbound, priority: 200 }
1281     arguments: ['@config.factory']
1282   route_processor_current:
1283     class: Drupal\Core\RouteProcessor\RouteProcessorCurrent
1284     arguments: ['@current_route_match']
1285     tags:
1286       - { name: route_processor_outbound, priority: 200 }
1287   path_processor_alias:
1288     class: Drupal\Core\PathProcessor\PathProcessorAlias
1289     tags:
1290       - { name: path_processor_inbound, priority: 100 }
1291       - { name: path_processor_outbound, priority: 300 }
1292     arguments: ['@path.alias_manager']
1293   route_processor_csrf:
1294     class: Drupal\Core\Access\RouteProcessorCsrf
1295     tags:
1296       - { name: route_processor_outbound }
1297     arguments: ['@csrf_token']
1298   transliteration:
1299     class: Drupal\Core\Transliteration\PhpTransliteration
1300     arguments: [null, '@module_handler']
1301   flood:
1302     class: Drupal\Core\Flood\DatabaseBackend
1303     arguments: ['@database', '@request_stack']
1304     tags:
1305       - { name: backend_overridable }
1306   plugin.manager.mail:
1307     class: Drupal\Core\Mail\MailManager
1308     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler', '@config.factory', '@logger.factory', '@string_translation', '@renderer']
1309   plugin.manager.condition:
1310     class: Drupal\Core\Condition\ConditionManager
1311     parent: default_plugin_manager
1312   plugin.manager.element_info:
1313     class: Drupal\Core\Render\ElementInfoManager
1314     arguments: ['@container.namespaces', '@cache.discovery', '@cache_tags.invalidator', '@module_handler', '@theme.manager']
1315   stream_wrapper_manager:
1316     class: Drupal\Core\StreamWrapper\StreamWrapperManager
1317     calls:
1318       - [setContainer, ['@service_container']]
1319   stream_wrapper.public:
1320     class: Drupal\Core\StreamWrapper\PublicStream
1321     tags:
1322       - { name: stream_wrapper, scheme: public }
1323   stream_wrapper.temporary:
1324     class: Drupal\Core\StreamWrapper\TemporaryStream
1325     tags:
1326       - { name: stream_wrapper, scheme: temporary }
1327   kernel_destruct_subscriber:
1328     class: Drupal\Core\EventSubscriber\KernelDestructionSubscriber
1329     tags:
1330       - { name: event_subscriber }
1331     calls:
1332       - [setContainer, ['@service_container']]
1333   image.toolkit.manager:
1334     class: Drupal\Core\ImageToolkit\ImageToolkitManager
1335     arguments: ['@config.factory']
1336     parent: default_plugin_manager
1337     tags:
1338       - { name: plugin_manager_cache_clear }
1339   image.toolkit.operation.manager:
1340     class: Drupal\Core\ImageToolkit\ImageToolkitOperationManager
1341     arguments: ['@logger.channel.image', '@image.toolkit.manager']
1342     parent: default_plugin_manager
1343     tags:
1344       - { name: plugin_manager_cache_clear }
1345   image.factory:
1346     class: Drupal\Core\Image\ImageFactory
1347     arguments: ['@image.toolkit.manager']
1348   breadcrumb:
1349     class: Drupal\Core\Breadcrumb\BreadcrumbManager
1350     arguments: ['@module_handler']
1351     tags:
1352       - { name: service_collector, tag: breadcrumb_builder, call: addBuilder }
1353   token:
1354     class: Drupal\Core\Utility\Token
1355     arguments: ['@module_handler', '@cache.default', '@language_manager', '@cache_tags.invalidator', '@renderer']
1356   batch.storage:
1357     class: Drupal\Core\Batch\BatchStorage
1358     arguments: ['@database', '@session', '@csrf_token']
1359     tags:
1360       - { name: backend_overridable }
1361     lazy: true
1362   replica_database_ignore__subscriber:
1363     class: Drupal\Core\EventSubscriber\ReplicaDatabaseIgnoreSubscriber
1364     tags:
1365       - {name: event_subscriber}
1366   country_manager:
1367     class: Drupal\Core\Locale\CountryManager
1368     arguments: ['@module_handler']
1369   date.formatter:
1370     class: Drupal\Core\Datetime\DateFormatter
1371     arguments: ['@entity.manager', '@language_manager', '@string_translation', '@config.factory', '@request_stack']
1372   feed.bridge.reader:
1373     class: Drupal\Component\Bridge\ZfExtensionManagerSfContainer
1374     calls:
1375       - [setContainer, ['@service_container']]
1376     arguments: ['feed.reader.']
1377   feed.bridge.writer:
1378     class: Drupal\Component\Bridge\ZfExtensionManagerSfContainer
1379     calls:
1380       - [setContainer, ['@service_container']]
1381     arguments: ['feed.writer.']
1382 # Zend Feed reader plugins. Plugin instances should not be shared.
1383   feed.reader.dublincoreentry:
1384     class: Zend\Feed\Reader\Extension\DublinCore\Entry
1385     shared: false
1386   feed.reader.dublincorefeed:
1387     class: Zend\Feed\Reader\Extension\DublinCore\Feed
1388     shared: false
1389   feed.reader.contententry:
1390     class: Zend\Feed\Reader\Extension\Content\Entry
1391     shared: false
1392   feed.reader.atomentry:
1393     class: Zend\Feed\Reader\Extension\Atom\Entry
1394     shared: false
1395   feed.reader.atomfeed:
1396     class: Zend\Feed\Reader\Extension\Atom\Feed
1397     shared: false
1398   feed.reader.slashentry:
1399     class: Zend\Feed\Reader\Extension\Slash\Entry
1400     shared: false
1401   feed.reader.wellformedwebentry:
1402     class: Zend\Feed\Reader\Extension\WellFormedWeb\Entry
1403     shared: false
1404   feed.reader.threadentry:
1405     class: Zend\Feed\Reader\Extension\Thread\Entry
1406     shared: false
1407   feed.reader.podcastentry:
1408     class: Zend\Feed\Reader\Extension\Podcast\Entry
1409     shared: false
1410   feed.reader.podcastfeed:
1411     class: Zend\Feed\Reader\Extension\Podcast\Feed
1412     shared: false
1413 # Zend Feed writer plugins. Plugins should be set as prototype scope.
1414   feed.writer.atomrendererfeed:
1415     class: Zend\Feed\Writer\Extension\Atom\Renderer\Feed
1416     shared: false
1417   feed.writer.contentrendererentry:
1418     class: Zend\Feed\Writer\Extension\Content\Renderer\Entry
1419     shared: false
1420   feed.writer.dublincorerendererentry:
1421     class: Zend\Feed\Writer\Extension\DublinCore\Renderer\Entry
1422     shared: false
1423   feed.writer.dublincorerendererfeed:
1424     class: Zend\Feed\Writer\Extension\DublinCore\Renderer\Feed
1425     shared: false
1426   feed.writer.itunesentry:
1427     class: Zend\Feed\Writer\Extension\ITunes\Entry
1428     shared: false
1429   feed.writer.itunesfeed:
1430     class: Zend\Feed\Writer\Extension\ITunes\Feed
1431     shared: false
1432   feed.writer.itunesrendererentry:
1433     class: Zend\Feed\Writer\Extension\ITunes\Renderer\Entry
1434     shared: false
1435   feed.writer.itunesrendererfeed:
1436     class: Zend\Feed\Writer\Extension\ITunes\Renderer\Feed
1437     shared: false
1438   feed.writer.slashrendererentry:
1439     class: Zend\Feed\Writer\Extension\Slash\Renderer\Entry
1440     shared: false
1441   feed.writer.threadingrendererentry:
1442     class: Zend\Feed\Writer\Extension\Threading\Renderer\Entry
1443     shared: false
1444   feed.writer.wellformedwebrendererentry:
1445     class: Zend\Feed\Writer\Extension\WellFormedWeb\Renderer\Entry
1446     shared: false
1447   theme.manager:
1448     class: Drupal\Core\Theme\ThemeManager
1449     arguments: ['@app.root', '@theme.negotiator', '@theme.initialization', '@module_handler']
1450     calls:
1451       - [setThemeRegistry, ['@theme.registry']]
1452   theme.initialization:
1453     class: Drupal\Core\Theme\ThemeInitialization
1454     arguments: ['@app.root', '@theme_handler', '@cache.bootstrap', '@module_handler']
1455   theme.registry:
1456     class: Drupal\Core\Theme\Registry
1457     arguments: ['@app.root', '@cache.default', '@lock', '@module_handler', '@theme_handler', '@theme.initialization', null, '@cache.bootstrap']
1458     tags:
1459       - { name: needs_destruction }
1460     calls:
1461       - [setThemeManager, ['@theme.manager']]
1462   authentication:
1463     class: Drupal\Core\Authentication\AuthenticationManager
1464     arguments: ['@authentication_collector']
1465   authentication_collector:
1466     class: Drupal\Core\Authentication\AuthenticationCollector
1467     tags:
1468       - { name: service_collector, tag: authentication_provider, call: addProvider }
1469   authentication_subscriber:
1470     class: Drupal\Core\EventSubscriber\AuthenticationSubscriber
1471     arguments: ['@authentication', '@current_user']
1472     tags:
1473       - { name: event_subscriber }
1474   account_switcher:
1475     class: Drupal\Core\Session\AccountSwitcher
1476     arguments: ['@current_user', '@session_handler.write_safe']
1477   user_permissions_hash_generator:
1478     class: Drupal\Core\Session\PermissionsHashGenerator
1479     arguments: ['@private_key', '@cache.bootstrap', '@cache.static']
1480   current_user:
1481     class: Drupal\Core\Session\AccountProxy
1482   session_configuration:
1483     class: Drupal\Core\Session\SessionConfiguration
1484     arguments: ['%session.storage.options%']
1485   session:
1486     class: Symfony\Component\HttpFoundation\Session\Session
1487     arguments: ['@session_manager', '@session.attribute_bag', '@session.flash_bag']
1488   session.flash_bag:
1489     class: Symfony\Component\HttpFoundation\Session\Flash\FlashBag
1490     public: false
1491   session.attribute_bag:
1492     class: Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag
1493     public: false
1494   session_handler:
1495     alias: session_handler.storage
1496   session_handler.storage:
1497     class: Drupal\Core\Session\SessionHandler
1498     arguments: ['@request_stack', '@database']
1499     tags:
1500       - { name: backend_overridable }
1501   session_handler.write_check:
1502     class: Symfony\Component\HttpFoundation\Session\Storage\Handler\WriteCheckSessionHandler
1503     tags:
1504       - { name: session_handler_proxy, priority: 100 }
1505   session_handler.write_safe:
1506     class: Drupal\Core\Session\WriteSafeSessionHandler
1507     tags:
1508       - { name: session_handler_proxy, priority: 150 }
1509   session_manager:
1510     class: Drupal\Core\Session\SessionManager
1511     arguments: ['@request_stack', '@database', '@session_manager.metadata_bag', '@session_configuration', '@session_handler']
1512     tags:
1513       - { name: backend_overridable }
1514     calls:
1515       - [setWriteSafeHandler, ['@session_handler.write_safe']]
1516   session_manager.metadata_bag:
1517     class: Drupal\Core\Session\MetadataBag
1518     arguments: ['@settings']
1519   asset.css.collection_renderer:
1520     class: Drupal\Core\Asset\CssCollectionRenderer
1521     arguments: [ '@state' ]
1522   asset.css.collection_optimizer:
1523     class: Drupal\Core\Asset\CssCollectionOptimizer
1524     arguments: [ '@asset.css.collection_grouper', '@asset.css.optimizer', '@asset.css.dumper', '@state' ]
1525   asset.css.optimizer:
1526     class: Drupal\Core\Asset\CssOptimizer
1527   asset.css.collection_grouper:
1528     class: Drupal\Core\Asset\CssCollectionGrouper
1529   asset.css.dumper:
1530     class: Drupal\Core\Asset\AssetDumper
1531   asset.js.collection_renderer:
1532     class: Drupal\Core\Asset\JsCollectionRenderer
1533     arguments: [ '@state' ]
1534   asset.js.collection_optimizer:
1535     class: Drupal\Core\Asset\JsCollectionOptimizer
1536     arguments: [ '@asset.js.collection_grouper', '@asset.js.optimizer', '@asset.js.dumper', '@state' ]
1537   asset.js.optimizer:
1538     class: Drupal\Core\Asset\JsOptimizer
1539   asset.js.collection_grouper:
1540     class: Drupal\Core\Asset\JsCollectionGrouper
1541   asset.js.dumper:
1542     class: Drupal\Core\Asset\AssetDumper
1543   library.discovery:
1544     class: Drupal\Core\Asset\LibraryDiscovery
1545     arguments: ['@library.discovery.collector']
1546   library.discovery.collector:
1547     class: Drupal\Core\Asset\LibraryDiscoveryCollector
1548     arguments: ['@cache.discovery', '@lock', '@library.discovery.parser', '@theme.manager']
1549     tags:
1550       - { name: needs_destruction }
1551   library.discovery.parser:
1552     class: Drupal\Core\Asset\LibraryDiscoveryParser
1553     arguments: ['@app.root', '@module_handler', '@theme.manager']
1554   library.dependency_resolver:
1555     class: Drupal\Core\Asset\LibraryDependencyResolver
1556     arguments: ['@library.discovery']
1557   asset.resolver:
1558     class: Drupal\Core\Asset\AssetResolver
1559     arguments: ['@library.discovery', '@library.dependency_resolver', '@module_handler', '@theme.manager', '@language_manager', '@cache.data']
1560   info_parser:
1561     class: Drupal\Core\Extension\InfoParser
1562   twig:
1563     class: Drupal\Core\Template\TwigEnvironment
1564     arguments: ['@app.root', '@cache.default', '%twig_extension_hash%', '@state', '@twig.loader', '%twig.config%']
1565     tags:
1566       - { name: service_collector, tag: 'twig.extension', call: addExtension }
1567   twig.extension:
1568     class: Drupal\Core\Template\TwigExtension
1569     arguments: ['@renderer', '@url_generator', '@theme.manager', '@date.formatter']
1570     tags:
1571       - { name: twig.extension, priority: 100 }
1572   # @todo Figure out what to do about debugging functions.
1573   # @see https://www.drupal.org/node/1804998
1574   twig.extension.debug:
1575     class: Twig_Extension_Debug
1576     tags:
1577       - { name: twig.extension }
1578   twig.loader:
1579     class: Twig_Loader_Chain
1580     public: false
1581     tags:
1582       - { name: service_collector, tag: twig.loader, call: addLoader, required: TRUE }
1583   twig.loader.filesystem:
1584     class: Drupal\Core\Template\Loader\FilesystemLoader
1585     arguments: ['@app.root', '@module_handler', '@theme_handler']
1586     tags:
1587       - { name: twig.loader, priority: 100 }
1588   twig.loader.theme_registry:
1589     class: Drupal\Core\Template\Loader\ThemeRegistryLoader
1590     arguments: ['@theme.registry']
1591     tags:
1592       - { name: twig.loader, priority: 0 }
1593   twig.loader.string:
1594     class: Drupal\Core\Template\Loader\StringLoader
1595     tags:
1596       - { name: twig.loader, priority: -100 }
1597   element_info:
1598     alias: plugin.manager.element_info
1599   file.mime_type.guesser:
1600     class: Drupal\Core\File\MimeType\MimeTypeGuesser
1601     arguments: ['@stream_wrapper_manager']
1602     tags:
1603       - { name: service_collector, tag: mime_type_guesser, call: addGuesser }
1604     lazy: true
1605   file.mime_type.guesser.extension:
1606     class: Drupal\Core\File\MimeType\ExtensionMimeTypeGuesser
1607     arguments: ['@module_handler']
1608     tags:
1609       - { name: mime_type_guesser }
1610     lazy: true
1611   # Currently needs to be public as it is called by
1612   # \Drupal\Core\Render\Element\StatusMessages.
1613   # @todo Consider making this service private again after
1614   #   https://www.drupal.org/node/2367555 lands.
1615   render_placeholder_generator:
1616     class: Drupal\Core\Render\PlaceholderGenerator
1617     arguments: ['%renderer.config%']
1618   render_cache:
1619     class: Drupal\Core\Render\PlaceholderingRenderCache
1620     arguments: ['@request_stack', '@cache_factory', '@cache_contexts_manager', '@render_placeholder_generator']
1621   renderer:
1622     class: Drupal\Core\Render\Renderer
1623     arguments: ['@controller_resolver', '@theme.manager', '@plugin.manager.element_info', '@render_placeholder_generator', '@render_cache', '@request_stack', '%renderer.config%']
1624   early_rendering_controller_wrapper_subscriber:
1625     class: Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber
1626     arguments: ['@controller_resolver', '@renderer']
1627     tags:
1628       - { name: event_subscriber }
1629   # Placeholder strategies for rendering placeholders.
1630   html_response.placeholder_strategy_subscriber:
1631     class: Drupal\Core\EventSubscriber\HtmlResponsePlaceholderStrategySubscriber
1632     tags:
1633       - { name: event_subscriber }
1634     arguments: ['@placeholder_strategy']
1635   placeholder_strategy:
1636     class: Drupal\Core\Render\Placeholder\ChainedPlaceholderStrategy
1637     tags:
1638       - { name: service_collector, tag: placeholder_strategy, call: addPlaceholderStrategy }
1639   placeholder_strategy.single_flush:
1640     class: Drupal\Core\Render\Placeholder\SingleFlushStrategy
1641     tags:
1642       - { name: placeholder_strategy, priority: -1000 }
1643   email.validator:
1644     class: Egulias\EmailValidator\EmailValidator
1645   update.post_update_registry:
1646     class: Drupal\Core\Update\UpdateRegistry
1647     factory: ['@update.post_update_registry_factory', create]
1648   update.post_update_registry_factory:
1649     class: Drupal\Core\Update\UpdateRegistryFactory
1650     parent: container.trait
1651   uuid:
1652     class: Drupal\Component\Uuid\Php
1653   response_filter.active_link:
1654     class: Drupal\Core\EventSubscriber\ActiveLinkResponseFilter
1655     arguments: ['@current_user', '@path.current', '@path.matcher', '@language_manager']
1656     tags:
1657       - { name: event_subscriber }
1658   response_filter.rss.relative_url:
1659     class: Drupal\Core\EventSubscriber\RssResponseRelativeUrlFilter
1660     tags:
1661       - { name: event_subscriber }
1662   messenger:
1663     class: Drupal\Core\Messenger\Messenger
1664     arguments: ['@session.flash_bag', '@page_cache_kill_switch']
1665   tempstore.private:
1666     class: Drupal\Core\TempStore\PrivateTempStoreFactory
1667     arguments: ['@keyvalue.expirable', '@lock', '@current_user', '@request_stack', '%tempstore.expire%']
1668     tags:
1669       - { name: backend_overridable }
1670   tempstore.shared:
1671     class: Drupal\Core\TempStore\SharedTempStoreFactory
1672     arguments: ['@keyvalue.expirable', '@lock', '@request_stack', '%tempstore.expire%']
1673     tags:
1674       - { name: backend_overridable }