Twig \ Error \ RuntimeError
An exception has been thrown during the rendering of a template ("Syntax error").
Previous exceptions
  • Syntax error (4)
Twig\Error\RuntimeError thrown with message "An exception has been thrown during the rendering of a template ("Syntax error")." Stacktrace: #77 Twig\Error\RuntimeError in /var/app/current/user/themes/capifrance/templates/agent-detail.html.twig:22 #76 Elasticsearch\Common\Exceptions\Serializer\JsonErrorException in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Serializers/SmartSerializer.php:96 #75 Elasticsearch\Serializers\SmartSerializer:decode in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Serializers/SmartSerializer.php:58 #74 Elasticsearch\Serializers\SmartSerializer:deserialize in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:713 #73 Elasticsearch\Connections\Connection:tryDeserializeError in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:708 #72 Elasticsearch\Connections\Connection:tryDeserialize500Error in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:657 #71 Elasticsearch\Connections\Connection:process5xxError in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:331 #70 Elasticsearch\Connections\Connection:Elasticsearch\Connections\{closure} in /var/app/current/user/plugins/seofactory/vendor/react/promise/src/FulfilledPromise.php:28 #69 React\Promise\FulfilledPromise:then in /var/app/current/user/plugins/seofactory/vendor/ezimuel/ringphp/src/Future/CompletedFutureValue.php:55 #68 GuzzleHttp\Ring\Future\CompletedFutureValue:then in /var/app/current/user/plugins/seofactory/vendor/ezimuel/ringphp/src/Core.php:341 #67 GuzzleHttp\Ring\Core:proxy in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:340 #66 Elasticsearch\Connections\Connection:Elasticsearch\Connections\{closure} in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:236 #65 Elasticsearch\Connections\Connection:performRequest in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Transport.php:115 #64 Elasticsearch\Transport:performRequest in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Client.php:1637 #63 Elasticsearch\Client:performRequest in /var/app/current/user/plugins/seofactory/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Client.php:1220 #62 Elasticsearch\Client:search in /var/app/current/user/plugins/seofactory/classes/Adapter/ElasticsearchClient.php:83 #61 Grav\Plugin\SEOFactory\Adapter\ElasticsearchClient:search in /var/app/current/user/plugins/seofactory/classes/Searches/AgentSearch.php:64 #60 Grav\Plugin\SEOFactory\Searches\AgentSearch:findAll in /var/app/current/user/plugins/seofactory/classes/Searches/AbstractSearch.php:45 #59 Grav\Plugin\SEOFactory\Searches\AbstractSearch:findOne in /var/app/current/user/plugins/seofactory/classes/SeoFunctions.php:813 #58 Grav\Plugin\SEOFactory\SeoFunctions:getAgentSEO in /var/app/current/cache/twig/15/15ec554c18fe61ad9311642aabb4f5fb062aba61afc236ebeb9af90381a2369d.php:68 #57 __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38:doDisplay in /var/app/current/vendor/twig/twig/src/Template.php:443 #56 Twig\Template:displayWithErrorHandling in /var/app/current/vendor/twig/twig/src/Template.php:414 #55 Twig\Template:display in /var/app/current/vendor/twig/twig/src/Template.php:422 #54 Twig\Template:render in /var/app/current/vendor/twig/twig/src/TemplateWrapper.php:47 #53 Twig\TemplateWrapper:render in /var/app/current/vendor/twig/twig/src/Environment.php:384 #52 Twig\Environment:render in /var/app/current/system/src/Grav/Common/Twig/Twig.php:388 #51 Grav\Common\Twig\Twig:processSite in /var/app/current/system/src/Grav/Common/Service/OutputServiceProvider.php:28 #50 Grav\Common\Service\OutputServiceProvider:Grav\Common\Service\{closure} in /var/app/current/vendor/pimple/pimple/src/Pimple/Container.php:118 #49 Pimple\Container:offsetGet in /var/app/current/system/src/Grav/Common/Processors/RenderProcessor.php:28 #48 Grav\Common\Processors\RenderProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #47 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #46 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/DebuggerAssetsProcessor.php:28 #45 Grav\Common\Processors\DebuggerAssetsProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #44 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #43 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/PagesProcessor.php:69 #42 Grav\Common\Processors\PagesProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #41 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #40 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/TwigProcessor.php:27 #39 Grav\Common\Processors\TwigProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #38 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #37 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/AssetsProcessor.php:28 #36 Grav\Common\Processors\AssetsProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #35 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #34 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/SchedulerProcessor.php:29 #33 Grav\Common\Processors\SchedulerProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #32 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #31 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/BackupsProcessor.php:28 #30 Grav\Common\Processors\BackupsProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #29 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #28 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/TasksProcessor.php:59 #27 Grav\Common\Processors\TasksProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #26 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #25 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/RequestProcessor.php:52 #24 Grav\Common\Processors\RequestProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #23 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #22 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/ThemesProcessor.php:27 #21 Grav\Common\Processors\ThemesProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #20 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #19 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/PluginsProcessor.php:30 #18 Grav\Common\Processors\PluginsProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #17 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #16 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/InitializeProcessor.php:78 #15 Grav\Common\Processors\InitializeProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #14 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #13 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/DebuggerProcessor.php:27 #12 Grav\Common\Processors\DebuggerProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #11 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #10 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/ErrorsProcessor.php:27 #9 Grav\Common\Processors\ErrorsProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #8 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #7 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/LoggerProcessor.php:48 #6 Grav\Common\Processors\LoggerProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #5 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #4 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Processors/ConfigurationProcessor.php:28 #3 Grav\Common\Processors\ConfigurationProcessor:process in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:45 #2 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Framework/RequestHandler/Traits/RequestHandlerTrait.php:57 #1 Grav\Framework\RequestHandler\RequestHandler:handle in /var/app/current/system/src/Grav/Common/Grav.php:249 #0 Grav\Common\Grav:process in /var/app/current/index.php:53
Stack frames (78)
77
Twig
\
Error
\
RuntimeError
/
user
/
themes
/
capifrance
/
templates
/
agent-detail.html.twig
22
76
Elasticsearch
\
Common
\
Exceptions
\
Serializer
\
JsonErrorException
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Serializers
/
SmartSerializer.php
96
75
Elasticsearch
\
Serializers
\
SmartSerializer
decode
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Serializers
/
SmartSerializer.php
58
74
Elasticsearch
\
Serializers
\
SmartSerializer
deserialize
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
713
73
Elasticsearch
\
Connections
\
Connection
tryDeserializeError
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
708
72
Elasticsearch
\
Connections
\
Connection
tryDeserialize500Error
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
657
71
Elasticsearch
\
Connections
\
Connection
process5xxError
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
331
70
Elasticsearch
\
Connections
\
Connection
Elasticsearch
\
Connections
\
{closure}
/
user
/
plugins
/
seofactory
/
vendor
/
react
/
promise
/
src
/
FulfilledPromise.php
28
69
React
\
Promise
\
FulfilledPromise
then
/
user
/
plugins
/
seofactory
/
vendor
/
ezimuel
/
ringphp
/
src
/
Future
/
CompletedFutureValue.php
55
68
GuzzleHttp
\
Ring
\
Future
\
CompletedFutureValue
then
/
user
/
plugins
/
seofactory
/
vendor
/
ezimuel
/
ringphp
/
src
/
Core.php
341
67
GuzzleHttp
\
Ring
\
Core
proxy
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
340
66
Elasticsearch
\
Connections
\
Connection
Elasticsearch
\
Connections
\
{closure}
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
236
65
Elasticsearch
\
Connections
\
Connection
performRequest
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Transport.php
115
64
Elasticsearch
\
Transport
performRequest
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Client.php
1637
63
Elasticsearch
\
Client
performRequest
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Client.php
1220
62
Elasticsearch
\
Client
search
/
user
/
plugins
/
seofactory
/
classes
/
Adapter
/
ElasticsearchClient.php
83
61
Grav
\
Plugin
\
SEOFactory
\
Adapter
\
ElasticsearchClient
search
/
user
/
plugins
/
seofactory
/
classes
/
Searches
/
AgentSearch.php
64
60
Grav
\
Plugin
\
SEOFactory
\
Searches
\
AgentSearch
findAll
/
user
/
plugins
/
seofactory
/
classes
/
Searches
/
AbstractSearch.php
45
59
Grav
\
Plugin
\
SEOFactory
\
Searches
\
AbstractSearch
findOne
/
user
/
plugins
/
seofactory
/
classes
/
SeoFunctions.php
813
58
Grav
\
Plugin
\
SEOFactory
\
SeoFunctions
getAgentSEO
/
cache
/
twig
/
15
/
15ec554c18fe61ad9311642aabb4f5fb062aba61afc236ebeb9af90381a2369d.php
68
57
__TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38
doDisplay
/
vendor
/
twig
/
twig
/
src
/
Template.php
443
56
Twig
\
Template
displayWithErrorHandling
/
vendor
/
twig
/
twig
/
src
/
Template.php
414
55
Twig
\
Template
display
/
vendor
/
twig
/
twig
/
src
/
Template.php
422
54
Twig
\
Template
render
/
vendor
/
twig
/
twig
/
src
/
TemplateWrapper.php
47
53
Twig
\
TemplateWrapper
render
/
vendor
/
twig
/
twig
/
src
/
Environment.php
384
52
Twig
\
Environment
render
/
system
/
src
/
Grav
/
Common
/
Twig
/
Twig.php
388
51
Grav
\
Common
\
Twig
\
Twig
processSite
/
system
/
src
/
Grav
/
Common
/
Service
/
OutputServiceProvider.php
28
50
Grav
\
Common
\
Service
\
OutputServiceProvider
Grav
\
Common
\
Service
\
{closure}
/
vendor
/
pimple
/
pimple
/
src
/
Pimple
/
Container.php
118
49
Pimple
\
Container
offsetGet
/
system
/
src
/
Grav
/
Common
/
Processors
/
RenderProcessor.php
28
48
Grav
\
Common
\
Processors
\
RenderProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
47
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
46
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
DebuggerAssetsProcessor.php
28
45
Grav
\
Common
\
Processors
\
DebuggerAssetsProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
44
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
43
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
PagesProcessor.php
69
42
Grav
\
Common
\
Processors
\
PagesProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
41
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
40
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
TwigProcessor.php
27
39
Grav
\
Common
\
Processors
\
TwigProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
38
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
37
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
AssetsProcessor.php
28
36
Grav
\
Common
\
Processors
\
AssetsProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
35
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
34
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
SchedulerProcessor.php
29
33
Grav
\
Common
\
Processors
\
SchedulerProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
32
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
31
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
BackupsProcessor.php
28
30
Grav
\
Common
\
Processors
\
BackupsProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
29
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
28
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
TasksProcessor.php
59
27
Grav
\
Common
\
Processors
\
TasksProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
26
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
25
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
RequestProcessor.php
52
24
Grav
\
Common
\
Processors
\
RequestProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
23
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
22
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
ThemesProcessor.php
27
21
Grav
\
Common
\
Processors
\
ThemesProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
20
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
19
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
PluginsProcessor.php
30
18
Grav
\
Common
\
Processors
\
PluginsProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
17
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
16
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
InitializeProcessor.php
78
15
Grav
\
Common
\
Processors
\
InitializeProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
14
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
13
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
DebuggerProcessor.php
27
12
Grav
\
Common
\
Processors
\
DebuggerProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
11
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
10
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
ErrorsProcessor.php
27
9
Grav
\
Common
\
Processors
\
ErrorsProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
8
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
7
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
LoggerProcessor.php
48
6
Grav
\
Common
\
Processors
\
LoggerProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
5
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
4
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Processors
/
ConfigurationProcessor.php
28
3
Grav
\
Common
\
Processors
\
ConfigurationProcessor
process
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
45
2
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
57
1
Grav
\
Framework
\
RequestHandler
\
RequestHandler
handle
/
system
/
src
/
Grav
/
Common
/
Grav.php
249
0
Grav
\
Common
\
Grav
process
/
index.php
53
/
var
/
app
/
current
/
user
/
themes
/
capifrance
/
templates
/
agent-detail.html.twig
 
{% set criterias = [] %}
 
{% do assets.addJs('https://cdnjs.cloudflare.com/ajax/libs/list.js/1.5.0/list.min.js', {'priority': 100, 'group': 'bottom'}) %}
{% do assets.addJs('theme://js/agent-detail.js', {'priority': 9, 'group': 'bottom'}) %}
{% do assets.addJs('theme://js/pagination.js', {'priority': 9, 'group': 'bottom'}) %}
{% do assets.addJs(url('theme://js/expand-text.js'), { priority: 94, group: 'bottom' }) %}
 
    {% do assets.addJs('https://www.cafpi.fr/plugws/js/jquery.mobile.1.4.5.custom.min.js', {priority: 97, group: 'bottom'}) %}
    {% do assets.addJs('https://www.cafpi.fr/plugws/js/jquery-ui-1.12.1.custom.min.js', {priority: 97, group: 'bottom'}) %}
    {% do assets.addJs('https://www.cafpi.fr/plugws/js/cafpi.plugws.script.js', {priority: 97, group: 'bottom'}) %}
    {% do assets.addJs('https://www.cafpi.fr/plugws/js/cafpi.plugws.light.script.js', {priority: 97, group: 'bottom'}) %}
 
{% do assets.addCss('https://fonts.googleapis.com/css?family=Montserrat:400,700') %}
{% do assets.addCss('https://www.cafpi.fr/plugws/css/cafpi.plugws.stylesheet.css') %}
 
{% set chasseurImmo = false %}
{% set include_PIS = false %}
 
{% set agent = getAgentSEO([where('source.slug',uri.basename)]) %}
 
{% set businessConfigIsActive = false %}
{% if agent.source.id %}
    {% set businessConfigIsActive = getConfigActiveByExternalId(agent.source.id, 'CAPIFRANCE') %}
{% endif %}
 
{% if not agent %}
    {% set agent = getAgentSEO([where('source.login',uri.basename)]) %}
{% endif %}
 
{% do redirectToAgentListingIfEmpty(agent) %}
 
 
{% set siteTitle = getSiteTitle() %}
 
{% if agent.identity.title == 'MS' %}
    {% set agentTitle = 'AGENT_FEMALE'|t %}
{% else %}
    {% set agentTitle = 'AGENT_MALE'|t %}
{% endif %}
Arguments
  1. "An exception has been thrown during the rendering of a template ("Syntax error")."
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Serializers
/
SmartSerializer.php
    private function decode(?string $data): array
    {
        if ($data === null || strlen($data) === 0) {
            return [];
        }
 
        if (version_compare(PHP_VERSION, '7.3.0') >= 0) {
            try {
                $result = json_decode($data, true, 512, JSON_THROW_ON_ERROR);
                return $result;
            } catch (\JsonException $e) {
                $result = $result ?? [];
                throw new JsonErrorException($e->getCode(), $data, $result);
            }
        }
 
        $result = @json_decode($data, true);
        // Throw exception only if E_NOTICE is on to maintain backwards-compatibility on systems that silently ignore E_NOTICEs.
        if (json_last_error() !== JSON_ERROR_NONE && (error_reporting() & E_NOTICE) === E_NOTICE) {
            throw new JsonErrorException(json_last_error(), $data, $result);
        }
        return $result;
    }
}
 
Arguments
  1. "Syntax error"
    
Exception message: Syntax error
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Serializers
/
SmartSerializer.php
            $data = json_encode($data, JSON_PRESERVE_ZERO_FRACTION + JSON_INVALID_UTF8_SUBSTITUTE);
            if ($data === false) {
                throw new Exceptions\RuntimeException("Failed to JSON encode: ".json_last_error_msg());
            }
            if ($data === '[]') {
                return '{}';
            } else {
                return $data;
            }
        }
    }
 
    /**
     * {@inheritdoc}
     */
    public function deserialize(?string $data, array $headers)
    {
        if (isset($headers['content_type']) === true) {
            if (strpos($headers['content_type'], 'json') !== false) {
                return $this->decode($data);
            } else {
                //Not json, return as string
                return $data;
            }
        } else {
            //No content headers, assume json
            return $this->decode($data);
        }
    }
 
    /**
     * @todo For 2.0, remove the E_NOTICE check before raising the exception.
     *
     * @param string|null $data
     *
     * @return array
     * @throws JsonErrorException
     */
    private function decode(?string $data): array
    {
Arguments
  1. """
    {\n
      "message": "No server available to handle the request",\n
    }\n
    """
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
        // if body is not string, we convert it so it can be used as Exception message
        if (!is_string($body)) {
            return json_encode($body);
        }
        return $body;
    }
 
    private function tryDeserialize400Error(array $response): ElasticsearchException
    {
        return $this->tryDeserializeError($response, BadRequest400Exception::class);
    }
 
    private function tryDeserialize500Error(array $response): ElasticsearchException
    {
        return $this->tryDeserializeError($response, ServerErrorResponseException::class);
    }
 
    private function tryDeserializeError(array $response, string $errorClass): ElasticsearchException
    {
        $error = $this->serializer->deserialize($response['body'], $response['transfer_stats']);
        if (is_array($error) === true) {
            if (isset($error['error']) === false) {
                // <2.0 "i just blew up" nonstructured exception
                // $error is an array but we don't know the format, reuse the response body instead
                // added json_encode to convert into a string
                return new $errorClass(json_encode($response['body']), (int) $response['status']);
            }
            
            // 2.0 structured exceptions
            if (is_array($error['error']) && array_key_exists('reason', $error['error']) === true) {
                // Try to use root cause first (only grabs the first root cause)
                $root = $error['error']['root_cause'];
                if (isset($root) && isset($root[0])) {
                    $cause = $root[0]['reason'];
                    $type = $root[0]['type'];
                } else {
                    $cause = $error['error']['reason'];
                    $type = $error['error']['type'];
                }
                // added json_encode to convert into a string
Arguments
  1. """
    {\n
      "message": "No server available to handle the request",\n
    }\n
    """
    
  2. array:28 [
      "url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
      "content_type" => "application/json"
      "http_code" => 503
      "header_size" => 182
      "request_size" => 1002
      "filetime" => -1
      "ssl_verify_result" => 0
      "redirect_count" => 0
      "total_time" => 4.204918
      "namelookup_time" => 2.4E-5
      "connect_time" => 0.001339
      "pretransfer_time" => 0.013189
      "size_upload" => 443.0
      "size_download" => 62.0
      "speed_download" => 14.0
      "speed_upload" => 105.0
      "download_content_length" => -1.0
      "upload_content_length" => 443.0
      "starttransfer_time" => 4.204847
      "redirect_time" => 0.0
      "redirect_url" => ""
      "primary_ip" => "52.31.132.15"
      "certinfo" => []
      "primary_port" => 443
      "local_ip" => "10.20.5.141"
      "local_port" => 47130
      "error" => ""
      "errno" => 0
    ]
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
                "Unknown %d error from Elasticsearch %s",
                $statusCode,
                $exception->getMessage()
            );
        }
        // if body is not string, we convert it so it can be used as Exception message
        if (!is_string($body)) {
            return json_encode($body);
        }
        return $body;
    }
 
    private function tryDeserialize400Error(array $response): ElasticsearchException
    {
        return $this->tryDeserializeError($response, BadRequest400Exception::class);
    }
 
    private function tryDeserialize500Error(array $response): ElasticsearchException
    {
        return $this->tryDeserializeError($response, ServerErrorResponseException::class);
    }
 
    private function tryDeserializeError(array $response, string $errorClass): ElasticsearchException
    {
        $error = $this->serializer->deserialize($response['body'], $response['transfer_stats']);
        if (is_array($error) === true) {
            if (isset($error['error']) === false) {
                // <2.0 "i just blew up" nonstructured exception
                // $error is an array but we don't know the format, reuse the response body instead
                // added json_encode to convert into a string
                return new $errorClass(json_encode($response['body']), (int) $response['status']);
            }
            
            // 2.0 structured exceptions
            if (is_array($error['error']) && array_key_exists('reason', $error['error']) === true) {
                // Try to use root cause first (only grabs the first root cause)
                $root = $error['error']['root_cause'];
                if (isset($root) && isset($root[0])) {
                    $cause = $root[0]['reason'];
                    $type = $root[0]['type'];
Arguments
  1. array:8 [
      "transfer_stats" => array:28 [
        "url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
        "content_type" => "application/json"
        "http_code" => 503
        "header_size" => 182
        "request_size" => 1002
        "filetime" => -1
        "ssl_verify_result" => 0
        "redirect_count" => 0
        "total_time" => 4.204918
        "namelookup_time" => 2.4E-5
        "connect_time" => 0.001339
        "pretransfer_time" => 0.013189
        "size_upload" => 443.0
        "size_download" => 62.0
        "speed_download" => 14.0
        "speed_upload" => 105.0
        "download_content_length" => -1.0
        "upload_content_length" => 443.0
        "starttransfer_time" => 4.204847
        "redirect_time" => 0.0
        "redirect_url" => ""
        "primary_ip" => "52.31.132.15"
        "certinfo" => []
        "primary_port" => 443
        "local_ip" => "10.20.5.141"
        "local_port" => 47130
        "error" => ""
        "errno" => 0
      ]
      "curl" => array:2 [
        "error" => ""
        "errno" => 0
      ]
      "effective_url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
      "headers" => array:5 [
        "Date" => array:1 [
          0 => "Fri, 29 Mar 2024 09:50:25 GMT"
        ]
        "Content-Type" => array:1 [
          0 => "application/json"
        ]
        "Transfer-Encoding" => array:1 [
          0 => "chunked"
        ]
        "Connection" => array:1 [
          0 => "keep-alive"
        ]
        "cache-control" => array:1 [
          0 => "no-cache"
        ]
      ]
      "version" => "1.1"
      "status" => 503
      "reason" => "Service Unavailable"
      "body" => """
        {\n
          "message": "No server available to handle the request",\n
        }\n
        """
    ]
    
  2. "Elasticsearch\Common\Exceptions\ServerErrorResponseException"
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
        } elseif ($statusCode === 408) {
            $exception = new RequestTimeout408Exception($responseBody, $statusCode);
        } else {
            $exception = new BadRequest400Exception($responseBody, $statusCode);
        }
 
        $this->logRequestFail($request, $response, $exception);
 
        throw $exception;
    }
 
    private function process5xxError(array $request, array $response, array $ignore): ?ElasticsearchException
    {
        $statusCode = (int) $response['status'];
        $responseBody = $response['body'];
 
        /**
 * @var \Exception $exception
*/
        $exception = $this->tryDeserialize500Error($response);
 
        $exceptionText = "[$statusCode Server Exception] ".$exception->getMessage();
        $this->log->error($exceptionText);
        $this->log->error($exception->getTraceAsString());
 
        if (array_search($statusCode, $ignore) !== false) {
            return null;
        }
 
        if ($statusCode === 500 && strpos($responseBody, "RoutingMissingException") !== false) {
            $exception = new RoutingMissingException($exception->getMessage(), $statusCode, $exception);
        } elseif ($statusCode === 500 && preg_match('/ActionRequestValidationException.+ no documents to get/', $responseBody) === 1) {
            $exception = new NoDocumentsToGetException($exception->getMessage(), $statusCode, $exception);
        } elseif ($statusCode === 500 && strpos($responseBody, 'NoShardAvailableActionException') !== false) {
            $exception = new NoShardAvailableException($exception->getMessage(), $statusCode, $exception);
        } else {
            $exception = new ServerErrorResponseException(
                $this->convertBodyToString($responseBody, $statusCode, $exception),
                $statusCode
            );
Arguments
  1. array:8 [
      "transfer_stats" => array:28 [
        "url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
        "content_type" => "application/json"
        "http_code" => 503
        "header_size" => 182
        "request_size" => 1002
        "filetime" => -1
        "ssl_verify_result" => 0
        "redirect_count" => 0
        "total_time" => 4.204918
        "namelookup_time" => 2.4E-5
        "connect_time" => 0.001339
        "pretransfer_time" => 0.013189
        "size_upload" => 443.0
        "size_download" => 62.0
        "speed_download" => 14.0
        "speed_upload" => 105.0
        "download_content_length" => -1.0
        "upload_content_length" => 443.0
        "starttransfer_time" => 4.204847
        "redirect_time" => 0.0
        "redirect_url" => ""
        "primary_ip" => "52.31.132.15"
        "certinfo" => []
        "primary_port" => 443
        "local_ip" => "10.20.5.141"
        "local_port" => 47130
        "error" => ""
        "errno" => 0
      ]
      "curl" => array:2 [
        "error" => ""
        "errno" => 0
      ]
      "effective_url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
      "headers" => array:5 [
        "Date" => array:1 [
          0 => "Fri, 29 Mar 2024 09:50:25 GMT"
        ]
        "Content-Type" => array:1 [
          0 => "application/json"
        ]
        "Transfer-Encoding" => array:1 [
          0 => "chunked"
        ]
        "Connection" => array:1 [
          0 => "keep-alive"
        ]
        "cache-control" => array:1 [
          0 => "no-cache"
        ]
      ]
      "version" => "1.1"
      "status" => 503
      "reason" => "Service Unavailable"
      "body" => """
        {\n
          "message": "No server available to handle the request",\n
        }\n
        """
    ]
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
 
                        if (isset($response['headers']['Warning'])) {
                            $this->logWarning($request, $response);
                        }
                        if (isset($response['body']) === true) {
                            $response['body'] = stream_get_contents($response['body']);
                            $this->lastRequest['response']['body'] = $response['body'];
                        }
 
                        if ($response['status'] >= 400 && $response['status'] < 500) {
                            $ignore = $request['client']['ignore'] ?? [];
                            // Skip 404 if succeeded true in the body (e.g. clear_scroll)
                            $body = $response['body'] ?? '';
                            if (strpos($body, '"succeeded":true') !== false) {
                                 $ignore[] = 404;
                            }
                            $this->process4xxError($request, $response, $ignore);
                        } elseif ($response['status'] >= 500) {
                            $ignore = $request['client']['ignore'] ?? [];
                            $this->process5xxError($request, $response, $ignore);
                        }
 
                        // No error, deserialize
                        $response['body'] = $this->serializer->deserialize($response['body'], $response['transfer_stats']);
                    }
                    $this->logRequestSuccess($request, $response);
 
                    return isset($request['client']['verbose']) && $request['client']['verbose'] === true ? $response : $response['body'];
                }
            );
 
            return $response;
        };
    }
 
    private function getURI(string $uri, ?array $params): string
    {
        if (isset($params) === true && !empty($params)) {
            array_walk(
                $params,
Arguments
  1. array:6 [
      "http_method" => "POST"
      "scheme" => "https"
      "uri" => "/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
      "body" => "{"query":{"bool":{"must":[{"match":{"source.slug":"david.azoulay"}},{"match":{"active":true}},{"match":{"bu":"CAPIFRANCE"}},{"bool":{"must_not":{"terms":{"source.id":[400,2662,3292,720,1,5167,177,7907,4999,979,5538,7908,38,7957,8084,8078,8158,9299,9368,540,7905,12370,10481]}}}},{"bool":{"should":[{"match":{"source.name":"tremplin"}},{"match":{"source.name":"intranet"}}],"minimum_should_match":1}},{"exists":{"field":"geolocation.city"}}]}}}"
      "headers" => array:4 [
        "Host" => array:1 [
          0 => "search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com"
        ]
        "Content-Type" => array:1 [
          0 => "application/json"
        ]
        "Accept" => array:1 [
          0 => "application/json"
        ]
        "User-Agent" => array:1 [
          0 => "elasticsearch-php/7.10.0 (Linux 4.14.97-74.72.amzn1.x86_64; PHP 7.2.13)"
        ]
      ]
      "client" => array:2 [
        "port_in_header" => false
        "curl" => array:1 [
          3 => 443
        ]
      ]
    ]
    
  2. array:8 [
      "transfer_stats" => array:28 [
        "url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
        "content_type" => "application/json"
        "http_code" => 503
        "header_size" => 182
        "request_size" => 1002
        "filetime" => -1
        "ssl_verify_result" => 0
        "redirect_count" => 0
        "total_time" => 4.204918
        "namelookup_time" => 2.4E-5
        "connect_time" => 0.001339
        "pretransfer_time" => 0.013189
        "size_upload" => 443.0
        "size_download" => 62.0
        "speed_download" => 14.0
        "speed_upload" => 105.0
        "download_content_length" => -1.0
        "upload_content_length" => 443.0
        "starttransfer_time" => 4.204847
        "redirect_time" => 0.0
        "redirect_url" => ""
        "primary_ip" => "52.31.132.15"
        "certinfo" => []
        "primary_port" => 443
        "local_ip" => "10.20.5.141"
        "local_port" => 47130
        "error" => ""
        "errno" => 0
      ]
      "curl" => array:2 [
        "error" => ""
        "errno" => 0
      ]
      "effective_url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
      "headers" => array:5 [
        "Date" => array:1 [
          0 => "Fri, 29 Mar 2024 09:50:25 GMT"
        ]
        "Content-Type" => array:1 [
          0 => "application/json"
        ]
        "Transfer-Encoding" => array:1 [
          0 => "chunked"
        ]
        "Connection" => array:1 [
          0 => "keep-alive"
        ]
        "cache-control" => array:1 [
          0 => "no-cache"
        ]
      ]
      "version" => "1.1"
      "status" => 503
      "reason" => "Service Unavailable"
      "body" => """
        {\n
          "message": "No server available to handle the request",\n
        }\n
        """
    ]
    
  3. []
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
react
/
promise
/
src
/
FulfilledPromise.php
{
    private $value;
 
    public function __construct($value = null)
    {
        if ($value instanceof PromiseInterface) {
            throw new \InvalidArgumentException('You cannot create React\Promise\FulfilledPromise with a promise. Use React\Promise\resolve($promiseOrValue) instead.');
        }
 
        $this->value = $value;
    }
 
    public function then(callable $onFulfilled = null, callable $onRejected = null, callable $onProgress = null)
    {
        if (null === $onFulfilled) {
            return $this;
        }
 
        try {
            return resolve($onFulfilled($this->value));
        } catch (\Throwable $exception) {
            return new RejectedPromise($exception);
        } catch (\Exception $exception) {
            return new RejectedPromise($exception);
        }
    }
 
    public function done(callable $onFulfilled = null, callable $onRejected = null, callable $onProgress = null)
    {
        if (null === $onFulfilled) {
            return;
        }
 
        $result = $onFulfilled($this->value);
 
        if ($result instanceof ExtendedPromiseInterface) {
            $result->done();
        }
    }
 
Arguments
  1. array:8 [
      "transfer_stats" => array:28 [
        "url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
        "content_type" => "application/json"
        "http_code" => 503
        "header_size" => 182
        "request_size" => 1002
        "filetime" => -1
        "ssl_verify_result" => 0
        "redirect_count" => 0
        "total_time" => 4.204918
        "namelookup_time" => 2.4E-5
        "connect_time" => 0.001339
        "pretransfer_time" => 0.013189
        "size_upload" => 443.0
        "size_download" => 62.0
        "speed_download" => 14.0
        "speed_upload" => 105.0
        "download_content_length" => -1.0
        "upload_content_length" => 443.0
        "starttransfer_time" => 4.204847
        "redirect_time" => 0.0
        "redirect_url" => ""
        "primary_ip" => "52.31.132.15"
        "certinfo" => []
        "primary_port" => 443
        "local_ip" => "10.20.5.141"
        "local_port" => 47130
        "error" => ""
        "errno" => 0
      ]
      "curl" => array:2 [
        "error" => ""
        "errno" => 0
      ]
      "effective_url" => "https://search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
      "headers" => array:5 [
        "Date" => array:1 [
          0 => "Fri, 29 Mar 2024 09:50:25 GMT"
        ]
        "Content-Type" => array:1 [
          0 => "application/json"
        ]
        "Transfer-Encoding" => array:1 [
          0 => "chunked"
        ]
        "Connection" => array:1 [
          0 => "keep-alive"
        ]
        "cache-control" => array:1 [
          0 => "no-cache"
        ]
      ]
      "version" => "1.1"
      "status" => 503
      "reason" => "Service Unavailable"
      "body" => """
        {\n
          "message": "No server available to handle the request",\n
        }\n
        """
    ]
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
ezimuel
/
ringphp
/
src
/
Future
/
CompletedFutureValue.php
 
    public function cancel() {}
 
    public function promise()
    {
        if (!$this->cachedPromise) {
            $this->cachedPromise = $this->error
                ? new RejectedPromise($this->error)
                : new FulfilledPromise($this->result);
        }
 
        return $this->cachedPromise;
    }
 
    public function then(
        callable $onFulfilled = null,
        callable $onRejected = null,
        callable $onProgress = null
    ) {
        return $this->promise()->then($onFulfilled, $onRejected, $onProgress);
    }
}
 
Arguments
  1. Closure($response) {#1558 …6}
    
  2. null
    
  3. null
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
ezimuel
/
ringphp
/
src
/
Core.php
 
    /**
     * Returns a proxied future that modifies the dereferenced value of another
     * future using a promise.
     *
     * @param FutureArrayInterface $future      Future to wrap with a new future
     * @param callable    $onFulfilled Invoked when the future fulfilled
     * @param callable    $onRejected  Invoked when the future rejected
     * @param callable    $onProgress  Invoked when the future progresses
     *
     * @return FutureArray
     */
    public static function proxy(
        FutureArrayInterface $future,
        callable $onFulfilled = null,
        callable $onRejected = null,
        callable $onProgress = null
    ) {
        return new FutureArray(
            $future->then($onFulfilled, $onRejected, $onProgress),
            [$future, 'wait'],
            [$future, 'cancel']
        );
    }
 
    /**
     * Returns a debug stream based on the provided variable.
     *
     * @param mixed $value Optional value
     *
     * @return resource
     */
    public static function getDebugResource($value = null)
    {
        if (is_resource($value)) {
            return $value;
        } elseif (defined('STDOUT')) {
            return STDOUT;
        } else {
            return fopen('php://output', 'w');
Arguments
  1. Closure($response) {#1558 …6}
    
  2. null
    
  3. null
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
                        if ($response['status'] >= 400 && $response['status'] < 500) {
                            $ignore = $request['client']['ignore'] ?? [];
                            // Skip 404 if succeeded true in the body (e.g. clear_scroll)
                            $body = $response['body'] ?? '';
                            if (strpos($body, '"succeeded":true') !== false) {
                                 $ignore[] = 404;
                            }
                            $this->process4xxError($request, $response, $ignore);
                        } elseif ($response['status'] >= 500) {
                            $ignore = $request['client']['ignore'] ?? [];
                            $this->process5xxError($request, $response, $ignore);
                        }
 
                        // No error, deserialize
                        $response['body'] = $this->serializer->deserialize($response['body'], $response['transfer_stats']);
                    }
                    $this->logRequestSuccess($request, $response);
 
                    return isset($request['client']['verbose']) && $request['client']['verbose'] === true ? $response : $response['body'];
                }
            );
 
            return $response;
        };
    }
 
    private function getURI(string $uri, ?array $params): string
    {
        if (isset($params) === true && !empty($params)) {
            array_walk(
                $params,
                function (&$value, &$key) {
                    if ($value === true) {
                        $value = 'true';
                    } elseif ($value === false) {
                        $value = 'false';
                    }
                }
            );
 
Arguments
  1. CompletedFutureArray {#1559}
    
  2. Closure($response) {#1558 …6}
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Connections
/
Connection.php
            'scheme'      => $this->transportSchema,
            'uri'         => $this->getURI($uri, $params),
            'body'        => $body,
            'headers'     => array_merge(
                [
                'Host'  => [$host]
                ],
                $headers
            )
        ];
 
        $request = array_replace_recursive($request, $this->connectionParams, $options);
 
        // RingPHP does not like if client is empty
        if (empty($request['client'])) {
            unset($request['client']);
        }
 
        $handler = $this->handler;
        $future = $handler($request, $this, $transport, $options);
 
        return $future;
    }
 
    public function getTransportSchema(): string
    {
        return $this->transportSchema;
    }
 
    public function getLastRequestInfo(): array
    {
        return $this->lastRequest;
    }
 
    private function wrapHandler(callable $handler): callable
    {
        return function (array $request, Connection $connection, Transport $transport = null, $options) use ($handler) {
 
            $this->lastRequest = [];
            $this->lastRequest['request'] = $request;
Arguments
  1. array:6 [
      "http_method" => "POST"
      "scheme" => "https"
      "uri" => "/agents_%2A/_search?track_total_hits=100000&from=0&size=12"
      "body" => "{"query":{"bool":{"must":[{"match":{"source.slug":"david.azoulay"}},{"match":{"active":true}},{"match":{"bu":"CAPIFRANCE"}},{"bool":{"must_not":{"terms":{"source.id":[400,2662,3292,720,1,5167,177,7907,4999,979,5538,7908,38,7957,8084,8078,8158,9299,9368,540,7905,12370,10481]}}}},{"bool":{"should":[{"match":{"source.name":"tremplin"}},{"match":{"source.name":"intranet"}}],"minimum_should_match":1}},{"exists":{"field":"geolocation.city"}}]}}}"
      "headers" => array:4 [
        "Host" => array:1 [
          0 => "search-re-index-prod-aqxtpudiesz7qswsf7hehdomnu.eu-west-1.es.amazonaws.com"
        ]
        "Content-Type" => array:1 [
          0 => "application/json"
        ]
        "Accept" => array:1 [
          0 => "application/json"
        ]
        "User-Agent" => array:1 [
          0 => "elasticsearch-php/7.10.0 (Linux 4.14.97-74.72.amzn1.x86_64; PHP 7.2.13)"
        ]
      ]
      "client" => array:2 [
        "port_in_header" => false
        "curl" => array:1 [
          3 => 443
        ]
      ]
    ]
    
  2. Connection {#1518}
    
  3. Transport {#1521}
    
  4. []
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Transport.php
    public function performRequest(string $method, string $uri, array $params = [], $body = null, array $options = []): FutureArrayInterface
    {
        try {
            $connection  = $this->getConnection();
        } catch (Exceptions\NoNodesAvailableException $exception) {
            $this->log->critical('No alive nodes found in cluster');
            throw $exception;
        }
 
        $response             = [];
        $caughtException      = null;
        $this->lastConnection = $connection;
 
        $future = $connection->performRequest(
            $method,
            $uri,
            $params,
            $body,
            $options,
            $this
        );
        
        $future->promise()->then(
            //onSuccess
            function ($response) {
                $this->retryAttempts = 0;
                // Note, this could be a 4xx or 5xx error
            },
            //onFailure
            function ($response) {
                $code = $response->getCode();
                // Ignore 400 level errors, as that means the server responded just fine
                if ($code < 400 || $code >= 500) {
                    // Otherwise schedule a check
                    $this->connectionPool->scheduleCheck();
                }
            }
        );
 
        return $future;
Arguments
  1. "POST"
    
  2. "/agents_%2A/_search"
    
  3. array:3 [
      "track_total_hits" => 100000
      "from" => 0
      "size" => 12
    ]
    
  4. "{"query":{"bool":{"must":[{"match":{"source.slug":"david.azoulay"}},{"match":{"active":true}},{"match":{"bu":"CAPIFRANCE"}},{"bool":{"must_not":{"terms":{"source.id":[400,2662,3292,720,1,5167,177,7907,4999,979,5538,7908,38,7957,8084,8078,8158,9299,9368,540,7905,12370,10481]}}}},{"bool":{"should":[{"match":{"source.name":"tremplin"}},{"match":{"source.name":"intranet"}}],"minimum_should_match":1}},{"exists":{"field":"geolocation.city"}}]}}}"
    
  5. []
    
  6. Transport {#1521}
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Client.php
                (array) $value :
                $value;
            unset($params[$arg]);
            return $value;
        } else {
            return null;
        }
    }
 
    /**
     * @return callable|array
     */
    private function performRequest(AbstractEndpoint $endpoint)
    {
        $promise =  $this->transport->performRequest(
            $endpoint->getMethod(),
            $endpoint->getURI(),
            $endpoint->getParams(),
            $endpoint->getBody(),
            $endpoint->getOptions()
        );
 
        return $this->transport->resultOrFuture($promise, $endpoint->getOptions());
    }
}
 
Arguments
  1. "POST"
    
  2. "/agents_%2A/_search"
    
  3. array:3 [
      "track_total_hits" => 100000
      "from" => 0
      "size" => 12
    ]
    
  4. array:1 [
      "query" => array:1 [
        "bool" => array:1 [
          "must" => array:6 [
            0 => array:1 [
              "match" => array:1 [
                "source.slug" => "david.azoulay"
              ]
            ]
            1 => array:1 [
              "match" => array:1 [
                "active" => true
              ]
            ]
            2 => array:1 [
              "match" => array:1 [
                "bu" => "CAPIFRANCE"
              ]
            ]
            3 => array:1 [
              "bool" => array:1 [
                "must_not" => array:1 [
                  "terms" => array:1 [
                    "source.id" => array:23 [
                      0 => 400
                      1 => 2662
                      2 => 3292
                      3 => 720
                      4 => 1
                      5 => 5167
                      6 => 177
                      7 => 7907
                      8 => 4999
                      9 => 979
                      10 => 5538
                      11 => 7908
                      12 => 38
                      13 => 7957
                      14 => 8084
                      15 => 8078
                      16 => 8158
                      17 => 9299
                      18 => 9368
                      19 => 540
                      20 => 7905
                      21 => 12370
                      22 => 10481
                    ]
                  ]
                ]
              ]
            ]
            4 => array:1 [
              "bool" => array:2 [
                "should" => array:2 [
                  0 => array:1 [
                    "match" => array:1 [
                      "source.name" => "tremplin"
                    ]
                  ]
                  1 => array:1 [
                    "match" => array:1 [
                      "source.name" => "intranet"
                    ]
                  ]
                ]
                "minimum_should_match" => 1
              ]
            ]
            5 => array:1 [
              "exists" => array:1 [
                "field" => "geolocation.city"
              ]
            ]
          ]
        ]
      ]
    ]
    
  5. []
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
vendor
/
elasticsearch
/
elasticsearch
/
src
/
Elasticsearch
/
Client.php
     * $params['body']                          = (array) The search definition using the Query DSL
     *
     * @param array $params Associative array of parameters
     * @return array
     * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/search-search.html
     */
    public function search(array $params = [])
    {
        $index = $this->extractArgument($params, 'index');
        $type = $this->extractArgument($params, 'type');
        $body = $this->extractArgument($params, 'body');
 
        $endpointBuilder = $this->endpoints;
        $endpoint = $endpointBuilder('Search');
        $endpoint->setParams($params);
        $endpoint->setIndex($index);
        $endpoint->setType($type);
        $endpoint->setBody($body);
 
        return $this->performRequest($endpoint);
    }
    /**
     * $params['index']              = (list) A comma-separated list of index names to search; use `_all` or empty string to perform the operation on all indices
     * $params['preference']         = (string) Specify the node or shard the operation should be performed on (default: random)
     * $params['routing']            = (string) Specific routing value
     * $params['local']              = (boolean) Return local information, do not retrieve the state from master node (default: false)
     * $params['ignore_unavailable'] = (boolean) Whether specified concrete indices should be ignored when unavailable (missing or closed)
     * $params['allow_no_indices']   = (boolean) Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified)
     * $params['expand_wildcards']   = (enum) Whether to expand wildcard expression to concrete indices that are open, closed or both. (Options = open,closed,hidden,none,all) (Default = open)
     *
     * @param array $params Associative array of parameters
     * @return array
     * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/search-shards.html
     */
    public function searchShards(array $params = [])
    {
        $index = $this->extractArgument($params, 'index');
 
        $endpointBuilder = $this->endpoints;
        $endpoint = $endpointBuilder('SearchShards');
Arguments
  1. Search {#1555}
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
classes
/
Adapter
/
ElasticsearchClient.php
     * Execute the search request on eleasticsearch with the given params
     * @return mixed
     */
    public function search($params) {
 
        $cacheKey = [__METHOD__, $params];
        if ($cachedValue = $this->cache->fetch($cacheKey)) {
            return $cachedValue;
        }
 
        if (isset($params["scroll_id"])) {
            // Scroll search case
            $finalParams = [
                "scroll_id" => $params["scroll_id"],
                "scroll"    => $params["scroll"]
            ];
            $response = $this->client->scroll($finalParams);
        } else {
            // Normal search case
            $response = $this->client->search($params);
        }
        $this->cache->save($cacheKey, $response);
 
        return $response;
    }
}
 
Arguments
  1. array:3 [
      "track_total_hits" => 100000
      "from" => 0
      "size" => 12
    ]
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
classes
/
Searches
/
AgentSearch.php
        $this->initSearchModifiers();
 
        // Offer type modifier to Speciality modifier
        $this->offerTypeToSpeciality();
 
        // Exclude agent ids from the search
        $this->addExcludedIds();
 
        // Pagination
        $pageIndex = $this->setUpPaginationModifiers();
 
        $searchQuery = $this->createQuery();
 
        // echo '<pre>' .  print_r($searchQuery, true) . '</pre>';
 
        // Agents need to have a profile picture
        // $searchQuery["body"]["query"]["bool"]['must'][] = ["nested" => ["path" => "profile_picture", "query" => ["bool" => ["must" => ["exists" => ["field" => "profile_picture.url"]]]]]];
 
        // Execute query
        $results = ElasticsearchClient::instance()->search($searchQuery)['hits'];
 
        // Complete results
        $size = $this->getModifier(ModifierKeys::$size)->getValue();
        $nbPage = $size ? intval(ceil($results['total']['value']/$size)) : 0;
        $nbPage = $nbPage ? $nbPage : 1;
 
        //dump($nbPage);die;
        $results['pagination']  = (new Pagination())->getPagination($pageIndex, $nbPage);
        $results['hits']        = $this->mapHitsToAgents($results['hits']);
        $results['total']       = $results['total']['value'];
 
        return $this->returnResult($results, $resultKey);
    }
 
    /**
     * Format the elasticsearch result to an array of agent objects.
     * @param $hits
     * @param array $extraAgents
     * @return array
     */
Arguments
  1. array:5 [
      "index" => "agents_*"
      "track_total_hits" => 100000
      "from" => 0
      "size" => 12
      "body" => array:1 [
        "query" => array:1 [
          "bool" => array:1 [
            "must" => array:6 [
              0 => array:1 [
                "match" => array:1 [
                  "source.slug" => "david.azoulay"
                ]
              ]
              1 => array:1 [
                "match" => array:1 [
                  "active" => true
                ]
              ]
              2 => array:1 [
                "match" => array:1 [
                  "bu" => "CAPIFRANCE"
                ]
              ]
              3 => array:1 [
                "bool" => array:1 [
                  "must_not" => array:1 [
                    "terms" => array:1 [
                      "source.id" => array:23 [
                        0 => 400
                        1 => 2662
                        2 => 3292
                        3 => 720
                        4 => 1
                        5 => 5167
                        6 => 177
                        7 => 7907
                        8 => 4999
                        9 => 979
                        10 => 5538
                        11 => 7908
                        12 => 38
                        13 => 7957
                        14 => 8084
                        15 => 8078
                        16 => 8158
                        17 => 9299
                        18 => 9368
                        19 => 540
                        20 => 7905
                        21 => 12370
                        22 => 10481
                      ]
                    ]
                  ]
                ]
              ]
              4 => array:1 [
                "bool" => array:2 [
                  "should" => array:2 [
                    0 => array:1 [
                      "match" => array:1 [
                        "source.name" => "tremplin"
                      ]
                    ]
                    1 => array:1 [
                      "match" => array:1 [
                        "source.name" => "intranet"
                      ]
                    ]
                  ]
                  "minimum_should_match" => 1
                ]
              ]
              5 => array:1 [
                "exists" => array:1 [
                  "field" => "geolocation.city"
                ]
              ]
            ]
          ]
        ]
      ]
    ]
    
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
classes
/
Searches
/
AbstractSearch.php
            ?>
            <pre>
            You tried to use a SearchModifier that does not exist.
            Most likely in one of the following file(s):
            <?php dump($candidates); ?>
            Those filters passed succesfully though:
            <?php dump($this->modifiers); ?>
            </pre><?php
            exit;
        }
        $this->modifiers[] = $modifier;
        return $this;
    }
 
    /**
     * @return mixed
     */
    public function findOne()
    {
        if (count($set = $this->findAll()['hits'])) {
            return array_values($set)[0];
        }
        return null;
    }
 
    /**
     * @param string|null $resultKey
     * @return array
     */
    abstract public function findAll(string $resultKey = null): array;
 
    /**
     * @param string $key
     * @return Modifier
     */
    protected function getModifier(string $key): ?Modifier
    {
        if (count($modifiers = $this->getModifiers($key))) {
            $values = array_values($modifiers);
            return end($values);
/
var
/
app
/
current
/
user
/
plugins
/
seofactory
/
classes
/
SeoFunctions.php
     * @throws Searches\UnkownDepartmentCodeException
     * @throws GuzzleException
     */
    public function searchAgentsSEOById( )
    {
 
        $agentId = func_get_args()[1];
        $agentSearch = (new AgentSearch(func_get_args()[0]))->addModifier(new FilterModifier(ModifierKeys::$id, $agentId));
        $agents = $agentSearch->findOne();
 
        return $agents;
 
    }
 
    /**
     * @return object
     */
    public function getAgentSEO()
    {
        return (new AgentSearch(func_get_args()))->findOne();
    }
 
    /**
     * @return array
     * @throws GuzzleException
     */
    public function searchPropertiesSEO(): array
    {
        $modifiers = Search::getParameters(func_get_args());
        $properties = (new PropertySearch($modifiers))->findAll();
 
        [$modifiers, $locationId] = $this->extractLocationIdFromModifiers($modifiers);
        $i = 0;
 
        while (count($properties['hits']) < self::$minResults && !is_null($locationId) && isset(self::$searchRadiuses[$i])) {
            $properties = (new PropertySearch([
                array_merge(
                    $modifiers,
                    [SeoFunctions::whereDistanceFromLocation($locationId, self::$searchRadiuses[$i++])]
                ),
/
var
/
app
/
current
/
cache
/
twig
/
15
/
15ec554c18fe61ad9311642aabb4f5fb062aba61afc236ebeb9af90381a2369d.php
        // line 9
        $this->getAttribute(($context["assets"] ?? null), "addJs", [0 => $this->env->getExtension('Grav\Common\Twig\TwigExtension')->urlFunc("theme://js/expand-text.js"), 1 => ["priority" => 94, "group" => "bottom"]], "method");
        // line 11
        $this->getAttribute(($context["assets"] ?? null), "addJs", [0 => "https://www.cafpi.fr/plugws/js/jquery.mobile.1.4.5.custom.min.js", 1 => ["priority" => 97, "group" => "bottom"]], "method");
        // line 12
        $this->getAttribute(($context["assets"] ?? null), "addJs", [0 => "https://www.cafpi.fr/plugws/js/jquery-ui-1.12.1.custom.min.js", 1 => ["priority" => 97, "group" => "bottom"]], "method");
        // line 13
        $this->getAttribute(($context["assets"] ?? null), "addJs", [0 => "https://www.cafpi.fr/plugws/js/cafpi.plugws.script.js", 1 => ["priority" => 97, "group" => "bottom"]], "method");
        // line 14
        $this->getAttribute(($context["assets"] ?? null), "addJs", [0 => "https://www.cafpi.fr/plugws/js/cafpi.plugws.light.script.js", 1 => ["priority" => 97, "group" => "bottom"]], "method");
        // line 16
        $this->getAttribute(($context["assets"] ?? null), "addCss", [0 => "https://fonts.googleapis.com/css?family=Montserrat:400,700"], "method");
        // line 17
        $this->getAttribute(($context["assets"] ?? null), "addCss", [0 => "https://www.cafpi.fr/plugws/css/cafpi.plugws.stylesheet.css"], "method");
        // line 19
        $context["chasseurImmo"] = false;
        // line 20
        $context["include_PIS"] = false;
        // line 22
        $context["agent"] = call_user_func_array($this->env->getFunction('getAgentSEO')->getCallable(), [[0 => call_user_func_array($this->env->getFunction('where')->getCallable(), ["source.slug", $this->getAttribute(($context["uri"] ?? null), "basename", [])])]]);
        // line 24
        $context["businessConfigIsActive"] = false;
        // line 25
        if ($this->getAttribute($this->getAttribute(($context["agent"] ?? null), "source", []), "id", [])) {
            // line 26
            $context["businessConfigIsActive"] = call_user_func_array($this->env->getFunction('getConfigActiveByExternalId')->getCallable(), [$this->getAttribute($this->getAttribute(($context["agent"] ?? null), "source", []), "id", []), "CAPIFRANCE"]);
        }
        // line 29
        if ( !($context["agent"] ?? null)) {
            // line 30
            $context["agent"] = call_user_func_array($this->env->getFunction('getAgentSEO')->getCallable(), [[0 => call_user_func_array($this->env->getFunction('where')->getCallable(), ["source.login", $this->getAttribute(($context["uri"] ?? null), "basename", [])])]]);
        }
        // line 33
        $this->env->getExtension('Grav\Plugin\HousingFactory\Twig\HousingFactoryTwigExtension')->redirectToAgentListingIfEmpty(($context["agent"] ?? null));
        // line 36
        $context["siteTitle"] = $this->env->getExtension('Grav\Plugin\HousingFactory\Twig\HousingFactoryTwigExtension')->getSiteTitle();
        // line 38
        if (($this->getAttribute($this->getAttribute(($context["agent"] ?? null), "identity", []), "title", []) == "MS")) {
            // line 39
            $context["agentTitle"] = $this->env->getExtension('Grav\Common\Twig\TwigExtension')->translate($this->env, "AGENT_FEMALE");
Arguments
  1. array:1 [
      0 => FilterModifier {#1474}
    ]
    
/
var
/
app
/
current
/
vendor
/
twig
/
twig
/
src
/
Template.php
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = [])
    {
        try {
            $this->doDisplay($context, $blocks);
        } catch (Error $e) {
            if (!$e->getSourceContext()) {
                $e->setSourceContext($this->getSourceContext());
            }
 
            // this is mostly useful for \Twig\Error\LoaderError exceptions
            // see \Twig\Error\LoaderError
            if (-1 === $e->getTemplateLine()) {
                $e->guess();
            }
 
            throw $e;
        } catch (\Exception $e) {
            $e = new RuntimeError(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $this->getSourceContext(), $e);
            $e->guess();
 
            throw $e;
        }
    }
 
Arguments
  1. array:32 [
      "config" => Config {#96}
      "system" => array:28 [
        "absolute_urls" => false
        "timezone" => ""
        "default_locale" => null
        "param_sep" => ":"
        "wrapped_site" => false
        "reverse_proxy_setup" => false
        "force_ssl" => false
        "force_lowercase_urls" => true
        "custom_base_url" => ""
        "username_regex" => "^[a-z0-9_-]{3,16}$"
        "pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
        "intl_enabled" => true
        "languages" => array:9 [
          "supported" => array:2 [
            0 => "fr"
            1 => "en"
          ]
          "default_lang" => null
          "include_default_lang" => false
          "pages_fallback_only" => false
          "translations" => true
          "translations_fallback" => true
          "session_store_active" => false
          "http_accept_language" => false
          "override_locale" => false
        ]
        "home" => array:2 [
          "alias" => "/home"
          "hide_in_urls" => true
        ]
        "pages" => array:26 [
          "theme" => "capifrance"
          "order" => array:2 [
            "by" => "default"
            "dir" => "asc"
          ]
          "list" => array:1 [
            "count" => 20
          ]
          "dateformat" => array:3 [
            "default" => null
            "short" => "jS M Y"
            "long" => "F jS \a\t g:ia"
          ]
          "publish_dates" => true
          "process" => array:2 [
            "markdown" => false
            "twig" => true
          ]
          "twig_first" => false
          "never_cache_twig" => false
          "events" => array:2 [
            "page" => true
            "twig" => true
          ]
          "markdown" => array:5 [
            "extra" => false
            "auto_line_breaks" => false
            "auto_url_links" => false
            "escape_markup" => false
            "special_chars" => array:2 [
              ">" => "gt"
              "<" => "lt"
            ]
          ]
          "types" => array:7 [
            0 => "html"
            1 => "htm"
            2 => "xml"
            3 => "txt"
            4 => "json"
            5 => "rss"
            6 => "atom"
          ]
          "append_url_extension" => ""
          "expires" => 604800
          "cache_control" => null
          "last_modified" => false
          "etag" => false
          "vary_accept_encoding" => false
          "redirect_default_route" => false
          "redirect_default_code" => "301"
          "redirect_trailing_slash" => true
          "ignore_files" => array:1 [
            0 => ".DS_Store"
          ]
          "ignore_folders" => array:2 [
            0 => ".git"
            1 => ".idea"
          ]
          "ignore_hidden" => true
          "hide_empty_folders" => false
          "url_taxonomy_filters" => true
          "frontmatter" => array:2 [
            "process_twig" => true
            "ignore_fields" => array:2 [
              0 => "form"
              1 => "forms"
            ]
          ]
        ]
        "cache" => array:13 [
          "enabled" => true
          "check" => array:1 [
            "method" => "file"
          ]
          "driver" => "file"
          "prefix" => "g"
          "purge_at" => "0 4 * * *"
          "clear_at" => "0 3 * * *"
          "clear_job_type" => "standard"
          "clear_images_by_default" => true
          "cli_compatibility" => false
          "lifetime" => 21600
          "gzip" => false
          "allow_webserver_gzip" => false
          "redis" => array:1 [
            "socket" => false
          ]
        ]
        "twig" => array:7 [
          "cache" => true
          "debug" => false
          "auto_reload" => true
          "autoescape" => false
          "undefined_functions" => true
          "undefined_filters" => true
          "umask_fix" => false
        ]
        "assets" => array:12 [
          "css_pipeline" => false
          "css_pipeline_include_externals" => true
          "css_pipeline_before_excludes" => true
          "css_minify" => true
          "css_minify_windows" => false
          "css_rewrite" => true
          "js_pipeline" => false
          "js_pipeline_include_externals" => true
          "js_pipeline_before_excludes" => true
          "js_minify" => true
          "enable_asset_timestamp" => false
          "collections" => array:1 [
            "jquery" => "system://assets/jquery/jquery-2.x.min.js"
          ]
        ]
        "errors" => array:2 [
          "display" => true
          "log" => true
        ]
        "log" => array:2 [
          "handler" => "file"
          "syslog" => array:1 [
            "facility" => "local6"
          ]
        ]
        "debugger" => array:3 [
          "enabled" => false
          "shutdown" => array:1 [
            "close_connection" => true
          ]
          "twig" => true
        ]
        "images" => array:6 [
          "default_image_quality" => 85
          "cache_all" => false
          "cache_perms" => "0755"
          "debug" => false
          "auto_fix_orientation" => false
          "seofriendly" => false
        ]
        "media" => array:5 [
          "enable_media_timestamp" => false
          "unsupported_inline_types" => []
          "allowed_fallback_types" => []
          "auto_metadata_exif" => false
          "upload_limit" => 15728640
        ]
        "session" => array:9 [
          "enabled" => true
          "initialize" => true
          "timeout" => 1800
          "name" => "grav-site"
          "uniqueness" => "path"
          "secure" => false
          "httponly" => true
          "split" => true
          "path" => null
        ]
        "gpm" => array:5 [
          "releases" => "stable"
          "proxy_url" => null
          "method" => "auto"
          "verify_peer" => true
          "official_gpm_only" => true
        ]
        "accounts" => array:2 [
          "type" => "data"
          "storage" => "file"
        ]
        "strict_mode" => array:2 [
          "yaml_compat" => true
          "twig_compat" => true
        ]
        "seo-factory" => array:1 [
          "bu" => "CAPIFRANCE"
        ]
      ]
      "theme" => array:1 [
        "streams" => array:1 [
          "schemes" => array:1 [
            "theme" => array:2 [
              "type" => "ReadOnlyStream"
              "prefixes" => array:1 [
                "" => array:2 [
                  0 => "user/themes/capifrance"
                  1 => "user/themes/digit-website"
                ]
              ]
            ]
          ]
        ]
      ]
      "site" => array:32 [
        "title" => "Capifrance"
        "default_lang" => "fr"
        "author" => array:2 [
          "name" => "DigitRE"
          "email" => "[email protected]"
        ]
        "taxonomies" => array:2 [
          0 => "category"
          1 => "tag"
        ]
        "metadata" => array:1 [
          "description" => "description"
        ]
        "summary" => array:4 [
          "enabled" => true
          "format" => "short"
          "size" => 300
          "delimiter" => "==="
        ]
        "redirects" => array:122 [
          "/.*/api/createPdf(.*)$" => "/api/propertyToPdf$1"
          "/conseillers/market$" => "/maintenance"
          "/fr/commerces-entreprises/acheter/((.*)-(\d+))$" => "/commerces-entreprises/reprendre/$1"
          "/fr/commerces-entreprises/louer/((.*)-(\d+))$" => "/commerces-entreprises/louer/$1"
          "/fr/residentiel/louer/((.*)-(\d+))$" => "/residentiel/louer/fiche/$1"
          "/fr/residentiel/acheter/((.*)-(\d+))$" => "/residentiel/acheter/fiche/$1"
          "/fr/neuf/acheter/((.*)-(\d+))$" => "/neuf/acheter/fiche/$1"
          "/fr/luxe-et-prestige/acheter/((.*)-(\d+))$" => "/prestige/acheter/fiche/$1"
          "/fr/commerces-entreprises/acheter/type/result$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Appartement$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Bar$" => "/commerces-entreprises/acheter/recherche?activity=BAR-BREWERY"
          "/fr/commerces-entreprises/acheter/type/Restaurant$" => "/commerces-entreprises/acheter/recherche?activity=RESTAURANT"
          "/fr/advice(.*)" => "/conseillers"
          "/fr/faq$" => "/cms/besoin-daide"
          "/fr/commerces-entreprises/louer/pathTo.html$" => "/commerces-entreprises/louer"
          "/fr/commerces-entreprises/pathTo.html$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/cafe-restaurant$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/(.*)/(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/fonds-de-commerce/(.*)?(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre/result$" => "/commerces-entreprises/ceder"
          "/fr/contact$" => "/cms/contacter-capifrance"
          "/fr/contacter-capifrance$" => "/cms/contacter-capifrance"
          "/fr/espace-conseil$" => "/espace-conseil"
          "/fr/espace-conseil/2017-un-dynamisme-confirme-pour-capifrance$" => "/espace-conseil"
          "/fr/espace-conseil/affaires-confidentielles-off-market$" => "/espace-conseil"
          "/fr/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-limmobilier-les-ateliers-capifrance-1$" => "/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-l-immobilier-les-ateliers-capifrance"
          "/fr/espace-conseil/capifrance-prestige$" => "/espace-conseil"
          "/fr/espace-conseil/carneo-lassistant-immobilier-numerique$" => "/espace-conseil/carneo-l-assistant-immobilier-numerique"
          "/fr/espace-conseil/ce-quil-faut-savoir-avant-dacheter-un-bien-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/choisir-le-mode-de-cession-de-votre-entreprise$" => "/espace-conseil"
          "/fr/espace-conseil/comment-acheter-un-bien-immobilier-en-indivision$" => "/espace-conseil"
          "/fr/espace-conseil/comment-concevoir-un-plan-de-reprise-dentreprise$" => "/espace-conseil/comment-concevoir-un-plan-de-reprise-d-entreprise"
          "/fr/espace-conseil/comment-se-passe-lachat-dun-appartement-neuf-sur-plan$" => "/espace-conseil"
          "/fr/espace-conseil/conditions-generales-dutilisation$" => "/politique-generale-de-confidentialite"
          "/fr/espace-conseil/conseils-et-astuces$" => "/espace-conseil/conseils-et-astuces"
          "/fr/espace-conseil/creer-une-sci-familiale$" => "/espace-conseil"
          "/fr/espace-conseil/devenir-dirigeant-dune-entreprise-a-reprendre$" => "/espace-conseil/devenir-dirigeant-d-une-entreprise-a-reprendre"
          "/fr/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs$" => "/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs"
          "/fr/espace-conseil/etat-des-risques-naturels-miniers-et-technologiques-ernmt$" => "/espace-conseil"
          "/fr/espace-conseil/le-diagnostic-amiante$" => "/espace-conseil/le-diagnostic-amiante"
          "/fr/espace-conseil/le-marche-de-limmobilier-neuf$" => "/espace-conseil/"
          "/fr/espace-conseil/le-pack-visite-plus$" => "/espace-conseil/le-pack-visite-plus"
          "/fr/espace-conseil/les-differents-types-de-baux-et-de-contrats$" => "/espace-conseil"
          "/fr/espace-conseil/les-frais-de-notaire-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde$" => "/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde"
          "/fr/espace-conseil/mentions-legales$" => "/cms/mentions-legales"
          "/fr/espace-conseil/nos-engagements$" => "/espace-conseil"
          "/fr/espace-conseil/nos-services-et-outils$" => "/espace-conseil"
          "/fr/espace-conseil/nos-valeurs$" => "/espace-conseil"
          "/fr/espace-conseil/notre-reseau-de-conseillers-en-immobilier-independants$" => "/espace-conseil"
          "/fr/espace-conseil/peut-on-vendre-un-appartement-avec-un-locataire-dedans$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-acheter-de-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-confier-son-bien-a-un-agent-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-investir-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/que-verifier-avant-dacheter-une-maison-neuve$" => "/espace-conseil"
          "/fr/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017$" => "/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017"
          "/fr/espace-conseil/selectionner-et-visiter-des-biens-a-louer$" => "/espace-conseil"
          "/fr/espace-conseil/trouver-une-entreprise-a-reprendre$" => "/espace-conseil/trouver-une-entreprise-a-reprendre"
          "/fr/espace-conseil?filter=outils&newpage=true$" => "/espace-conseil"
          "/residentiel/estimation" => "/estimer"
          "/fr/estimation/commerces$" => "/commerces-entreprises/estimation/commerce"
          "/fr/estimation/commerces-entreprises$" => "/commerces-entreprises/ceder"
          "/fr/estimation/entreprises$" => "/commerces-entreprises/2estimation/entreprise"
          "/fr/estimation/murs-commerciaux$" => "/commerces-entreprises/estimation/murs-commerciaux"
          "/fr/estimation/viager" => "/viager/estimation"
          "/fr/les-conseillers-capifrance$" => "/conseillers"
          "/fr/les-conseillers-capifrance/(.*)" => "/conseillers/$1"
          "/fr/luxe-et-prestige/acheter/Appartement\?page=(.*)" => "/luxe-et-prestige/acheter/recherche?activity=APARTMENT"
          "/fr/luxe-et-prestige/acheter/Demeure\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Maison-de-caractere/villes$" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Villa\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/(.*)$" => "/luxe-et-prestige/acheter/recherche/$1"
          "/fr/mon-profil$" => "/"
          "/fr/neuf/acheter" => "/neuf/acheter"
          "/fr/neuf/pathTo.html$" => "/neuf/acheter"
          "/fr/outils/calculatrice-3-modes$" => "/calculatrice-3-modes"
          "/fr/outils/simulateur-frais-de-notaire$" => "/simulateur-frais-de-notaire"
          "/fr/outils/simulateur-loi-pinel$" => "/"
          "/fr/outils/simulateur-pret-immobilier$" => "/simulateur-capacite-emprunt"
          "/fr/outils/simulateur-pret-taux-zero$" => "/simulateur-pret-taux-zero"
          "/fr/qui-sommes-nous$" => "/qui-sommes-nous"
          "/fr/residentiel/acheter$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/appartement/(.*)?page=0" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/appartement/(.*)" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier?page=0$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maisons/villes$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/louer$" => "/residentiel/louer"
          "/fr/residentiel/louer/pathTo.html$" => "/residentiel/louer"
          "/fr/residentiel/luxe-et-prestige/acheter$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/luxe-et-prestige/acheter/result$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/neuf/acheter" => "/neuf/acheter"
          "/fr/residentiel/neuf/acheter/result$" => "/neuf/acheter"
          "/fr/residentiel/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/vendre$" => "/residentiel/vendre"
          "/fr/residentiel/vendre/result$" => "/residentiel/vendre"
          "/proposer-un-bien" => "/residentiel/vendre"
          "/fr/testez-votre-bien$" => "/"
          "/fr/pathTo.html$" => "/"
          "/fr/result$" => "/"
          "/annonces/achat/(.*)/(.*)/(\d+)$" => "/residentiel/acheter/fiche/$3"
          "/annonces/traditionnel/appartement/achat$" => "/residentiel/acheter/recherche?activity=APARTMENT"
          "/residentiel/location/recherche(.*)" => "/residentiel/louer/recherche$1"
          "/residentiel/location/recherche/(.*)" => "/residentiel/louer/recherche/$1"
          "/fr/residentiel/acheter/result$" => "/residentiel/acheter/recherche"
          "/agents/(.*)" => "/conseillers/$1"
          "/en/conseillers/(.*)" => "/agents/$1"
          "/conseillers/ym.bahuna" => "/conseillers/Yolande-Marilyn.bahuna"
          "/conseillers/ag.menanteau" => "/conseillers/anne.menanteau"
          "/conseillers/ibitssam.gautier" => "/conseillers/ibtissam.gautier"
          "/conseillers/camille.banas" => "conseillers/camille.lebreton"
          "/conseillers/undefined/calculators/middle-rate" => "/conseillers"
          "/mon-compte/connexion$" => "/mon-compte"
          "/ventes-privees$" => "/"
          "^/estimer/estimer-en-ligne$" => "/estimer"
          "/luxe-et-prestige/acheter/(.*)$" => "/prestige/acheter/$1"
          "/commerces-entreprises/acheter/(.*)$" => "/commerces/acheter/$1"
          "/commerces-entreprises/location/(.*)$" => "/commerces/louer/$1"
          "(.*)/estimer/appartement" => "/estimer-appartement"
          "(.*)/estimer/maison" => "/estimer-maison"
        ]
        "routes" => array:143 [
          "(.*)/residential/regions$" => "/residentiel/regions"
          "/commerces-entreprises/reprendre/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/acheter/fiche"
          "/commerces-entreprises/louer/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/louer/fiche"
          "/residentiel/acheter/fiche/([\w-]+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/acheter/fiche"
          "/residentiel/acheter/fiche/(\d{10,})$" => "/residentiel/acheter/fiche"
          "/residentiel/louer/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/louer/fiche"
          "/neuf/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/neuf/acheter/fiche"
          "/prestige/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/prestige/acheter/fiche"
          "(.*)/(residentiel|residential)/(acheter|buy)(?(?=\?)(.+)|)$" => "/residentiel/acheter"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+/[a-z0-9-]+(/page:\d+)?(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville-subtype"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?(?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-primary"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?/[a-z](?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-letter"
          "(.*)/residential/cities?(?(?=\?)(.+)|)$" => "/residentiel/villes"
          "(.*)/(residentiel|residential)/(location|rent)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/residentiel/louer/recherche"
          "(.*)/(residentiel|residential)/(vendre|sale|sell)(?(?=\?)(.+)|)$" => "/residentiel/vendre"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(residentiel|residential)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/louer/fiche"
          "(.*)/(residentiel|residential)/(louer|rent)(?(?=\?)(.+)|)$" => "/residentiel/louer"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche/merci"
          "(.*)/(viager)/(estimation)(?(?=\?)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/(viager)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/viager/acheter/recherche"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche"
          "(.*)/(viager)/(acheter|buy)(?(?=\?)(.+)|)$" => "/viager/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|takeover)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)(?(?=\?)(.+)|)$" => "/commerces/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/acheter/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|vente|sale|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/acheter/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(louer|rent)(?(?=\?)(.+)|)$" => "/commerces/louer"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/louer/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/louer/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(ceder|sell)(?(?=\?)(.+)|)$" => "/commerces/ceder"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(commerce|shop)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(entreprise|business)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(murs-commerciaux|commercial-walls)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-mur"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(droit-au-bail|right-to-lease)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-droit-au-bail"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche/merci"
          "(.*)/(neuf|off-plan)/(acheter|buy)(?(?=\?)(.+)|)$" => "/neuf/acheter"
          "(.*)/(neuf|off-plan)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/neuf/acheter/recherche"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)(?(?=\?)(.+)|)$" => "/prestige/acheter"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)/(.*)" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(estimation|estimation)(?(?=\?)(.+)|)$" => "/prestige/vendre/estimation"
          "(.*)/(conseillers|agents)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/conseillers/patrice.donat-magnin" => "/conseillers/fiche"
          "(.*)/conseillers/anne-sophie.bernier" => "/conseillers/fiche"
          "(.*)/conseillers/natacha.poupet-bourdouleix" => "/conseillers/fiche"
          "(.*)/conseillers/damaye.cisse-oertli" => "/conseillers/fiche"
          "(.*)/conseillers/magali.murekian" => "/conseillers/fiche"
          "(.*)/conseillers/aurelie.bezard-bietry" => "/conseillers/fiche"
          "(.*)/conseillers/fabienne.mourany" => "/conseillers/fiche"
          "(.*)/conseillers/jr.jean-marie" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/([^-]*-?)*$" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(merci|thank-you)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/suivi"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)/(merci|thank-you)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes"
          "(.*)/(calculatrice-3-modes|3-mode-calculator)(?(?=\?)(.+)|)$" => "/simulateurs/3modes"
          "(.*)/(simulateur-frais-de-notaire|notary-fees-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/notaire"
          "(.*)/(simulateur-capacite-emprunt|borrowing-capacity-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/pret-immo"
          "(.*)/(simulateur-pret-taux-zero|tips-and-tools)(?(?=\?)(.+)|)$" => "/simulateurs/pret-taux-zero"
          "(.*)/(favoris|favorites)(?(?=\?)(.+)|)$" => "/favoris"
          "(.*)/(comparateur)(?(?=\?)(.+)|)$" => "/comparateur"
          "(.*)/(preventes)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/preventes/recherche/fiche"
          "(.*)/about-us/our-set-of-services$" => "/qui-sommes-nous/nos-services-et-outils"
          "(.*)/about-us/our-network$" => "/qui-sommes-nous/notre-reseau"
          "(.*)/about-us/our-international-department$" => "/qui-sommes-nous/our-international-department"
          "(.*)/about-us/our-visibility$" => "/qui-sommes-nous/our-visibility"
          "(.*)/cms/need-help$" => "/cms/besoin-daide"
          "(.*)/tips-and-tools$" => "/services"
          "(.*)/agents(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/legal-notice$" => "/mentions-legales"
          "(.*)/cms/contact-capifrance$" => "/cms/contacter-capifrance"
          "(.*)/(general-privacy-policy|general-privacy-policy)$" => "/politique-generale-de-confidentialite"
          "(.*)/(legal-mentions-business-introducer|legal-mentions-business-introducer)$" => "/conditions-generales-apporteur-d-affaires"
          "(.*)/cms/contact-capifrance/thank-you$" => "/cms/contacter-capifrance/merci"
          "(.*)/relocate-in-france$" => "/relocate-infrance"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bretagne/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/bretagne$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/centre-val-de-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/centre-val-de-loire$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/corse/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/corse$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/dom-tom/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/dom-tom$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/grand-est/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/grand-est$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/hauts-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/hauts-de-france$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/ile-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/ile-de-france$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/normandie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/normandie$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/occitanie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/occitanie$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/paca/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/paca$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/pays-de-la-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/relocate-in-france/region/pays-de-la-loire$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/rent-manage/off-plan$" => "/location-gestion/neuf"
          "(.*)/rent-manage/off-plan/thank-you$" => "/location-gestion/neuf/merci"
          "(.*)/rent-manage/manage$" => "/location-gestion/faire-gerer"
          "(.*)/rent-manage/manage/thank-you$" => "/location-gestion/faire-gerer/merci"
          "(.*)/rent-manage/luxury$" => "/location-gestion/luxe-et-prestige"
          "(.*)/rent-manage/luxury/thank-you$" => "/location-gestion/luxe-et-prestige/merci"
          "(.*)/viager/(estimation|estimate)/(.+)(?(?=/)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/viager/estimate/thank-you$" => "/viager/vendre/estimation/merci"
          "(.*)/businesses-trades/estimation/commercial-walls/thank-you$" => "/commerces/ceder/estimation-mur/merci"
          "(.*)/luxury/estimation/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/luxury/estimate/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
          "/estimate/estimate-rdv" => "/estimer/estimer-rdv"
          "/estimate/estimate-rdv/thank-you" => "/estimer/estimer-rdv/merci"
          "(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/conseillers/estimation-luxe-prestige(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation-luxe-prestige/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation-luxe-prestige/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/estimer-appartement(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-maison(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige/etapes(?(?=\?)(.+)|)$" => "/estimer/etapes"
          "(.*)/estimer-luxe-prestige/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
          "(.*)/estimer-maison/etapes$" => "/estimer/etapes"
          "(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
          "/([\w*._]*)(?(?=\?)(.+)|)$" => "/conseillers/fiche"
        ]
        "blog" => array:1 [
          "route" => "/blog"
        ]
        "google_tag_manager_key" => "GTM-XXXXX"
        "geolocation" => array:3 [
          "city" => "Paris"
          "lat" => 48.856614
          "lng" => 2.3522219
        ]
        "emails" => array:1 [
          "regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
        ]
        "access_token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
        "mapping_url_subdomain" => array:28 [
          "alsace" => "annonces/achat?adresse=Grand%20Est"
          "auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "bretagne" => "annonces/achat?adresse=Bretagne"
          "centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
          "champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
          "corse" => "annonces/achat?adresse=Corse"
          "franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
          "guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
          "ile-de-france" => "annonces/achat?adresse=Île-de-France"
          "languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
          "limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "lorraine" => "annonces/achat?adresse=Grand%20Est"
          "martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
          "midi-pyrenees" => "annonces/achat?adresse=Occitanie"
          "nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
          "basse-normandie" => "annonces/achat?adresse=Normandie"
          "haute-normandie" => "annonces/achat?adresse=Normandie"
          "pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
          "picardie" => "annonces/achat?adresse=Hauts-de-France"
          "poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "paca" => "annonces/achat?adresse=PACA"
          "reunion" => "annonces/achat?adresse=La%20Réunion"
          "rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "exclusif" => "annonces/achat?exclusif=true"
          "medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "commerce" => "commerces"
        ]
        "background-regions" => array:18 [
          "Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
          "Normandie, France" => "bgmoteur_annonces-normandie.jpg"
          "Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
          "Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
          "Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
          "Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
          "Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
          "Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
          "Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
          "Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
          "PACA, France" => "bgmoteur_annonces-paca.jpg"
          "Corse, France" => "bgmoteur_annonces-corse.jpg"
          "Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
          "Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
          "Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
          "La Réunion" => "bgmoteur_annonces-lareunion.jpg"
          "Martinique" => "bgmoteur_annonces-martinique.jpg"
          "Mayotte" => "bgmoteur_annonces-mayotte.jpg"
        ]
        "site_en" => "https://www.capifrance.fr/en"
        "site_fr" => "https://www.capifrance.fr"
        "activityStatus" => "SELLER"
        "partnerId" => "capifrance"
        "domain" => "capifrance"
        "fallback-imgs" => array:2 [
          "property" => "theme://images/img_default.png"
          "agent" => "theme://images/conseiller-default.jpg"
        ]
        "flags" => array:12 [
          "Français" => "FR"
          "Anglais" => "EN"
          "Italien" => "IT"
          "Allemand" => "DE"
          "Espagnol" => "ES"
          "Néerlandais" => "NL"
          "Arabe" => "AR"
          "Russe" => "RU"
          "Portugais" => "PT"
          "Danois" => "DA"
          "Chinois" => "CN"
          "Ukrainien" => "RU"
        ]
        "excluded-agent-specs" => array:1 [
          0 => "Défiscalisation"
        ]
        "new-presale-notification" => array:3 [
          "subject" => "Nouvelle Prévente"
          "to" => "[email protected]"
          "cc" => "[email protected]"
        ]
        "property_pdf" => array:1 [
          "file_name" => "Fiche_bien_"
        ]
        "send-presale-to-intra" => array:2 [
          "method" => "POST"
          "endpoint" => "https://intranet.digitregroup.io/graphql/"
        ]
        "exclude_avis_agent" => array:5 [
          0 => "11356"
          1 => "9609"
          2 => "97"
          3 => "4890"
          4 => "11612"
        ]
        "include_PIS" => array:62 [
          0 => "[email protected]"
          1 => "[email protected]"
          2 => "[email protected]"
          3 => "[email protected]"
          4 => "[email protected]"
          5 => "[email protected]"
          6 => "[email protected]"
          7 => "[email protected]"
          8 => "[email protected]"
          9 => "[email protected]"
          10 => "[email protected]"
          11 => "[email protected]"
          12 => "[email protected]"
          13 => "[email protected]"
          14 => "[email protected]"
          15 => "[email protected]"
          16 => "[email protected]"
          17 => "[email protected]"
          18 => "[email protected]"
          19 => "[email protected]"
          20 => "[email protected]"
          21 => "[email protected]"
          22 => "[email protected]"
          23 => "[email protected]"
          24 => "[email protected]"
          25 => "[email protected]"
          26 => "[email protected]"
          27 => "[email protected]"
          28 => "[email protected]"
          29 => "[email protected]"
          30 => "[email protected]"
          31 => "[email protected]"
          32 => "[email protected]"
          33 => "[email protected]"
          34 => "[email protected]"
          35 => "[email protected]"
          36 => "[email protected]"
          37 => "[email protected]"
          38 => "[email protected]"
          39 => "[email protected]"
          40 => "[email protected]"
          41 => "[email protected]"
          42 => "[email protected]"
          43 => "[email protected]"
          44 => "[email protected]"
          45 => "[email protected]"
          46 => "[email protected]"
          47 => "[email protected]"
          48 => "[email protected]"
          49 => "[email protected]"
          50 => "[email protected]"
          51 => "[email protected]"
          52 => "[email protected]"
          53 => "[email protected]"
          54 => "[email protected]"
          55 => "[email protected]"
          56 => "[email protected]"
          57 => "[email protected]"
          58 => "[email protected]"
          59 => "[email protected] "
          60 => "[email protected]"
          61 => "[email protected]"
        ]
        "exclude_apporteur_agent" => array:1 [
          0 => "325"
        ]
        "no_show_sold_props_agent" => array:1 [
          0 => "97"
        ]
        "drimki-iframe-url" => "https://formulaires.drimki.fr/en/estimation/partners/capifrance"
        "intranet-url" => "https://intranet.digitregroup.io"
      ]
      "uri" => Uri {#139}
      "assets" => Assets {#251}
      "taxonomy" => Taxonomy {#422}
      "browser" => Browser {#473}
      "base_dir" => "/var/app/current"
      "home_url" => "/en"
      "base_url" => "/en"
      "base_url_absolute" => "https://www.capifrance.fr/en"
      "base_url_relative" => "/en"
      "base_url_simple" => ""
      "theme_dir" => "/var/app/current/user/themes/capifrance"
      "theme_url" => "/user/themes/capifrance"
      "html_lang" => "en"
      "language_codes" => LanguageCodes {#474}
      "breadcrumbs" => Breadcrumbs {#1443}
      "form" => Form {#1447}
      "form_max_filesize" => 15
      "form_json_response" => []
      "pages" => Page {#487}
      "page" => Page {#751}
      "header" => {#752}
      "media" => Media {#1457}
      "content" => ""
      "grav" => Grav {#3}
      "vars" => array:1 [
        "universe" => "residentiel"
      ]
      "criterias" => []
      "chasseurImmo" => false
      "include_PIS" => false
    ]
    
  2. array:6 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_meta_title"
      ]
      "meta_data" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_meta_data"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_head"
      ]
      "jsonLD" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_jsonLD"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_content"
      ]
      "fixedBlock" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_fixedBlock"
      ]
    ]
    
/
var
/
app
/
current
/
vendor
/
twig
/
twig
/
src
/
Template.php
    {
        return $this;
    }
 
    /**
     * Returns all blocks.
     *
     * This method is for internal use only and should never be called
     * directly.
     *
     * @return array An array of blocks
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = [])
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        ob_start();
        try {
            $this->display($context);
        } catch (\Exception $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
Arguments
  1. array:28 [
      "config" => Config {#96}
      "system" => array:28 [
        "absolute_urls" => false
        "timezone" => ""
        "default_locale" => null
        "param_sep" => ":"
        "wrapped_site" => false
        "reverse_proxy_setup" => false
        "force_ssl" => false
        "force_lowercase_urls" => true
        "custom_base_url" => ""
        "username_regex" => "^[a-z0-9_-]{3,16}$"
        "pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
        "intl_enabled" => true
        "languages" => array:9 [
          "supported" => array:2 [
            0 => "fr"
            1 => "en"
          ]
          "default_lang" => null
          "include_default_lang" => false
          "pages_fallback_only" => false
          "translations" => true
          "translations_fallback" => true
          "session_store_active" => false
          "http_accept_language" => false
          "override_locale" => false
        ]
        "home" => array:2 [
          "alias" => "/home"
          "hide_in_urls" => true
        ]
        "pages" => array:26 [
          "theme" => "capifrance"
          "order" => array:2 [
            "by" => "default"
            "dir" => "asc"
          ]
          "list" => array:1 [
            "count" => 20
          ]
          "dateformat" => array:3 [
            "default" => null
            "short" => "jS M Y"
            "long" => "F jS \a\t g:ia"
          ]
          "publish_dates" => true
          "process" => array:2 [
            "markdown" => false
            "twig" => true
          ]
          "twig_first" => false
          "never_cache_twig" => false
          "events" => array:2 [
            "page" => true
            "twig" => true
          ]
          "markdown" => array:5 [
            "extra" => false
            "auto_line_breaks" => false
            "auto_url_links" => false
            "escape_markup" => false
            "special_chars" => array:2 [
              ">" => "gt"
              "<" => "lt"
            ]
          ]
          "types" => array:7 [
            0 => "html"
            1 => "htm"
            2 => "xml"
            3 => "txt"
            4 => "json"
            5 => "rss"
            6 => "atom"
          ]
          "append_url_extension" => ""
          "expires" => 604800
          "cache_control" => null
          "last_modified" => false
          "etag" => false
          "vary_accept_encoding" => false
          "redirect_default_route" => false
          "redirect_default_code" => "301"
          "redirect_trailing_slash" => true
          "ignore_files" => array:1 [
            0 => ".DS_Store"
          ]
          "ignore_folders" => array:2 [
            0 => ".git"
            1 => ".idea"
          ]
          "ignore_hidden" => true
          "hide_empty_folders" => false
          "url_taxonomy_filters" => true
          "frontmatter" => array:2 [
            "process_twig" => true
            "ignore_fields" => array:2 [
              0 => "form"
              1 => "forms"
            ]
          ]
        ]
        "cache" => array:13 [
          "enabled" => true
          "check" => array:1 [
            "method" => "file"
          ]
          "driver" => "file"
          "prefix" => "g"
          "purge_at" => "0 4 * * *"
          "clear_at" => "0 3 * * *"
          "clear_job_type" => "standard"
          "clear_images_by_default" => true
          "cli_compatibility" => false
          "lifetime" => 21600
          "gzip" => false
          "allow_webserver_gzip" => false
          "redis" => array:1 [
            "socket" => false
          ]
        ]
        "twig" => array:7 [
          "cache" => true
          "debug" => false
          "auto_reload" => true
          "autoescape" => false
          "undefined_functions" => true
          "undefined_filters" => true
          "umask_fix" => false
        ]
        "assets" => array:12 [
          "css_pipeline" => false
          "css_pipeline_include_externals" => true
          "css_pipeline_before_excludes" => true
          "css_minify" => true
          "css_minify_windows" => false
          "css_rewrite" => true
          "js_pipeline" => false
          "js_pipeline_include_externals" => true
          "js_pipeline_before_excludes" => true
          "js_minify" => true
          "enable_asset_timestamp" => false
          "collections" => array:1 [
            "jquery" => "system://assets/jquery/jquery-2.x.min.js"
          ]
        ]
        "errors" => array:2 [
          "display" => true
          "log" => true
        ]
        "log" => array:2 [
          "handler" => "file"
          "syslog" => array:1 [
            "facility" => "local6"
          ]
        ]
        "debugger" => array:3 [
          "enabled" => false
          "shutdown" => array:1 [
            "close_connection" => true
          ]
          "twig" => true
        ]
        "images" => array:6 [
          "default_image_quality" => 85
          "cache_all" => false
          "cache_perms" => "0755"
          "debug" => false
          "auto_fix_orientation" => false
          "seofriendly" => false
        ]
        "media" => array:5 [
          "enable_media_timestamp" => false
          "unsupported_inline_types" => []
          "allowed_fallback_types" => []
          "auto_metadata_exif" => false
          "upload_limit" => 15728640
        ]
        "session" => array:9 [
          "enabled" => true
          "initialize" => true
          "timeout" => 1800
          "name" => "grav-site"
          "uniqueness" => "path"
          "secure" => false
          "httponly" => true
          "split" => true
          "path" => null
        ]
        "gpm" => array:5 [
          "releases" => "stable"
          "proxy_url" => null
          "method" => "auto"
          "verify_peer" => true
          "official_gpm_only" => true
        ]
        "accounts" => array:2 [
          "type" => "data"
          "storage" => "file"
        ]
        "strict_mode" => array:2 [
          "yaml_compat" => true
          "twig_compat" => true
        ]
        "seo-factory" => array:1 [
          "bu" => "CAPIFRANCE"
        ]
      ]
      "theme" => array:1 [
        "streams" => array:1 [
          "schemes" => array:1 [
            "theme" => array:2 [
              "type" => "ReadOnlyStream"
              "prefixes" => array:1 [
                "" => array:2 [
                  0 => "user/themes/capifrance"
                  1 => "user/themes/digit-website"
                ]
              ]
            ]
          ]
        ]
      ]
      "site" => array:32 [
        "title" => "Capifrance"
        "default_lang" => "fr"
        "author" => array:2 [
          "name" => "DigitRE"
          "email" => "[email protected]"
        ]
        "taxonomies" => array:2 [
          0 => "category"
          1 => "tag"
        ]
        "metadata" => array:1 [
          "description" => "description"
        ]
        "summary" => array:4 [
          "enabled" => true
          "format" => "short"
          "size" => 300
          "delimiter" => "==="
        ]
        "redirects" => array:122 [
          "/.*/api/createPdf(.*)$" => "/api/propertyToPdf$1"
          "/conseillers/market$" => "/maintenance"
          "/fr/commerces-entreprises/acheter/((.*)-(\d+))$" => "/commerces-entreprises/reprendre/$1"
          "/fr/commerces-entreprises/louer/((.*)-(\d+))$" => "/commerces-entreprises/louer/$1"
          "/fr/residentiel/louer/((.*)-(\d+))$" => "/residentiel/louer/fiche/$1"
          "/fr/residentiel/acheter/((.*)-(\d+))$" => "/residentiel/acheter/fiche/$1"
          "/fr/neuf/acheter/((.*)-(\d+))$" => "/neuf/acheter/fiche/$1"
          "/fr/luxe-et-prestige/acheter/((.*)-(\d+))$" => "/prestige/acheter/fiche/$1"
          "/fr/commerces-entreprises/acheter/type/result$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Appartement$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Bar$" => "/commerces-entreprises/acheter/recherche?activity=BAR-BREWERY"
          "/fr/commerces-entreprises/acheter/type/Restaurant$" => "/commerces-entreprises/acheter/recherche?activity=RESTAURANT"
          "/fr/advice(.*)" => "/conseillers"
          "/fr/faq$" => "/cms/besoin-daide"
          "/fr/commerces-entreprises/louer/pathTo.html$" => "/commerces-entreprises/louer"
          "/fr/commerces-entreprises/pathTo.html$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/cafe-restaurant$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/(.*)/(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/fonds-de-commerce/(.*)?(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre/result$" => "/commerces-entreprises/ceder"
          "/fr/contact$" => "/cms/contacter-capifrance"
          "/fr/contacter-capifrance$" => "/cms/contacter-capifrance"
          "/fr/espace-conseil$" => "/espace-conseil"
          "/fr/espace-conseil/2017-un-dynamisme-confirme-pour-capifrance$" => "/espace-conseil"
          "/fr/espace-conseil/affaires-confidentielles-off-market$" => "/espace-conseil"
          "/fr/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-limmobilier-les-ateliers-capifrance-1$" => "/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-l-immobilier-les-ateliers-capifrance"
          "/fr/espace-conseil/capifrance-prestige$" => "/espace-conseil"
          "/fr/espace-conseil/carneo-lassistant-immobilier-numerique$" => "/espace-conseil/carneo-l-assistant-immobilier-numerique"
          "/fr/espace-conseil/ce-quil-faut-savoir-avant-dacheter-un-bien-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/choisir-le-mode-de-cession-de-votre-entreprise$" => "/espace-conseil"
          "/fr/espace-conseil/comment-acheter-un-bien-immobilier-en-indivision$" => "/espace-conseil"
          "/fr/espace-conseil/comment-concevoir-un-plan-de-reprise-dentreprise$" => "/espace-conseil/comment-concevoir-un-plan-de-reprise-d-entreprise"
          "/fr/espace-conseil/comment-se-passe-lachat-dun-appartement-neuf-sur-plan$" => "/espace-conseil"
          "/fr/espace-conseil/conditions-generales-dutilisation$" => "/politique-generale-de-confidentialite"
          "/fr/espace-conseil/conseils-et-astuces$" => "/espace-conseil/conseils-et-astuces"
          "/fr/espace-conseil/creer-une-sci-familiale$" => "/espace-conseil"
          "/fr/espace-conseil/devenir-dirigeant-dune-entreprise-a-reprendre$" => "/espace-conseil/devenir-dirigeant-d-une-entreprise-a-reprendre"
          "/fr/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs$" => "/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs"
          "/fr/espace-conseil/etat-des-risques-naturels-miniers-et-technologiques-ernmt$" => "/espace-conseil"
          "/fr/espace-conseil/le-diagnostic-amiante$" => "/espace-conseil/le-diagnostic-amiante"
          "/fr/espace-conseil/le-marche-de-limmobilier-neuf$" => "/espace-conseil/"
          "/fr/espace-conseil/le-pack-visite-plus$" => "/espace-conseil/le-pack-visite-plus"
          "/fr/espace-conseil/les-differents-types-de-baux-et-de-contrats$" => "/espace-conseil"
          "/fr/espace-conseil/les-frais-de-notaire-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde$" => "/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde"
          "/fr/espace-conseil/mentions-legales$" => "/cms/mentions-legales"
          "/fr/espace-conseil/nos-engagements$" => "/espace-conseil"
          "/fr/espace-conseil/nos-services-et-outils$" => "/espace-conseil"
          "/fr/espace-conseil/nos-valeurs$" => "/espace-conseil"
          "/fr/espace-conseil/notre-reseau-de-conseillers-en-immobilier-independants$" => "/espace-conseil"
          "/fr/espace-conseil/peut-on-vendre-un-appartement-avec-un-locataire-dedans$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-acheter-de-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-confier-son-bien-a-un-agent-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-investir-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/que-verifier-avant-dacheter-une-maison-neuve$" => "/espace-conseil"
          "/fr/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017$" => "/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017"
          "/fr/espace-conseil/selectionner-et-visiter-des-biens-a-louer$" => "/espace-conseil"
          "/fr/espace-conseil/trouver-une-entreprise-a-reprendre$" => "/espace-conseil/trouver-une-entreprise-a-reprendre"
          "/fr/espace-conseil?filter=outils&newpage=true$" => "/espace-conseil"
          "/residentiel/estimation" => "/estimer"
          "/fr/estimation/commerces$" => "/commerces-entreprises/estimation/commerce"
          "/fr/estimation/commerces-entreprises$" => "/commerces-entreprises/ceder"
          "/fr/estimation/entreprises$" => "/commerces-entreprises/2estimation/entreprise"
          "/fr/estimation/murs-commerciaux$" => "/commerces-entreprises/estimation/murs-commerciaux"
          "/fr/estimation/viager" => "/viager/estimation"
          "/fr/les-conseillers-capifrance$" => "/conseillers"
          "/fr/les-conseillers-capifrance/(.*)" => "/conseillers/$1"
          "/fr/luxe-et-prestige/acheter/Appartement\?page=(.*)" => "/luxe-et-prestige/acheter/recherche?activity=APARTMENT"
          "/fr/luxe-et-prestige/acheter/Demeure\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Maison-de-caractere/villes$" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Villa\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/(.*)$" => "/luxe-et-prestige/acheter/recherche/$1"
          "/fr/mon-profil$" => "/"
          "/fr/neuf/acheter" => "/neuf/acheter"
          "/fr/neuf/pathTo.html$" => "/neuf/acheter"
          "/fr/outils/calculatrice-3-modes$" => "/calculatrice-3-modes"
          "/fr/outils/simulateur-frais-de-notaire$" => "/simulateur-frais-de-notaire"
          "/fr/outils/simulateur-loi-pinel$" => "/"
          "/fr/outils/simulateur-pret-immobilier$" => "/simulateur-capacite-emprunt"
          "/fr/outils/simulateur-pret-taux-zero$" => "/simulateur-pret-taux-zero"
          "/fr/qui-sommes-nous$" => "/qui-sommes-nous"
          "/fr/residentiel/acheter$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/appartement/(.*)?page=0" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/appartement/(.*)" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier?page=0$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maisons/villes$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/louer$" => "/residentiel/louer"
          "/fr/residentiel/louer/pathTo.html$" => "/residentiel/louer"
          "/fr/residentiel/luxe-et-prestige/acheter$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/luxe-et-prestige/acheter/result$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/neuf/acheter" => "/neuf/acheter"
          "/fr/residentiel/neuf/acheter/result$" => "/neuf/acheter"
          "/fr/residentiel/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/vendre$" => "/residentiel/vendre"
          "/fr/residentiel/vendre/result$" => "/residentiel/vendre"
          "/proposer-un-bien" => "/residentiel/vendre"
          "/fr/testez-votre-bien$" => "/"
          "/fr/pathTo.html$" => "/"
          "/fr/result$" => "/"
          "/annonces/achat/(.*)/(.*)/(\d+)$" => "/residentiel/acheter/fiche/$3"
          "/annonces/traditionnel/appartement/achat$" => "/residentiel/acheter/recherche?activity=APARTMENT"
          "/residentiel/location/recherche(.*)" => "/residentiel/louer/recherche$1"
          "/residentiel/location/recherche/(.*)" => "/residentiel/louer/recherche/$1"
          "/fr/residentiel/acheter/result$" => "/residentiel/acheter/recherche"
          "/agents/(.*)" => "/conseillers/$1"
          "/en/conseillers/(.*)" => "/agents/$1"
          "/conseillers/ym.bahuna" => "/conseillers/Yolande-Marilyn.bahuna"
          "/conseillers/ag.menanteau" => "/conseillers/anne.menanteau"
          "/conseillers/ibitssam.gautier" => "/conseillers/ibtissam.gautier"
          "/conseillers/camille.banas" => "conseillers/camille.lebreton"
          "/conseillers/undefined/calculators/middle-rate" => "/conseillers"
          "/mon-compte/connexion$" => "/mon-compte"
          "/ventes-privees$" => "/"
          "^/estimer/estimer-en-ligne$" => "/estimer"
          "/luxe-et-prestige/acheter/(.*)$" => "/prestige/acheter/$1"
          "/commerces-entreprises/acheter/(.*)$" => "/commerces/acheter/$1"
          "/commerces-entreprises/location/(.*)$" => "/commerces/louer/$1"
          "(.*)/estimer/appartement" => "/estimer-appartement"
          "(.*)/estimer/maison" => "/estimer-maison"
        ]
        "routes" => array:143 [
          "(.*)/residential/regions$" => "/residentiel/regions"
          "/commerces-entreprises/reprendre/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/acheter/fiche"
          "/commerces-entreprises/louer/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/louer/fiche"
          "/residentiel/acheter/fiche/([\w-]+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/acheter/fiche"
          "/residentiel/acheter/fiche/(\d{10,})$" => "/residentiel/acheter/fiche"
          "/residentiel/louer/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/louer/fiche"
          "/neuf/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/neuf/acheter/fiche"
          "/prestige/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/prestige/acheter/fiche"
          "(.*)/(residentiel|residential)/(acheter|buy)(?(?=\?)(.+)|)$" => "/residentiel/acheter"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+/[a-z0-9-]+(/page:\d+)?(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville-subtype"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?(?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-primary"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?/[a-z](?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-letter"
          "(.*)/residential/cities?(?(?=\?)(.+)|)$" => "/residentiel/villes"
          "(.*)/(residentiel|residential)/(location|rent)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/residentiel/louer/recherche"
          "(.*)/(residentiel|residential)/(vendre|sale|sell)(?(?=\?)(.+)|)$" => "/residentiel/vendre"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(residentiel|residential)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/louer/fiche"
          "(.*)/(residentiel|residential)/(louer|rent)(?(?=\?)(.+)|)$" => "/residentiel/louer"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche/merci"
          "(.*)/(viager)/(estimation)(?(?=\?)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/(viager)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/viager/acheter/recherche"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche"
          "(.*)/(viager)/(acheter|buy)(?(?=\?)(.+)|)$" => "/viager/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|takeover)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)(?(?=\?)(.+)|)$" => "/commerces/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/acheter/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|vente|sale|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/acheter/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(louer|rent)(?(?=\?)(.+)|)$" => "/commerces/louer"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/louer/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/louer/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(ceder|sell)(?(?=\?)(.+)|)$" => "/commerces/ceder"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(commerce|shop)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(entreprise|business)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(murs-commerciaux|commercial-walls)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-mur"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(droit-au-bail|right-to-lease)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-droit-au-bail"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche/merci"
          "(.*)/(neuf|off-plan)/(acheter|buy)(?(?=\?)(.+)|)$" => "/neuf/acheter"
          "(.*)/(neuf|off-plan)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/neuf/acheter/recherche"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)(?(?=\?)(.+)|)$" => "/prestige/acheter"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)/(.*)" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(estimation|estimation)(?(?=\?)(.+)|)$" => "/prestige/vendre/estimation"
          "(.*)/(conseillers|agents)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/conseillers/patrice.donat-magnin" => "/conseillers/fiche"
          "(.*)/conseillers/anne-sophie.bernier" => "/conseillers/fiche"
          "(.*)/conseillers/natacha.poupet-bourdouleix" => "/conseillers/fiche"
          "(.*)/conseillers/damaye.cisse-oertli" => "/conseillers/fiche"
          "(.*)/conseillers/magali.murekian" => "/conseillers/fiche"
          "(.*)/conseillers/aurelie.bezard-bietry" => "/conseillers/fiche"
          "(.*)/conseillers/fabienne.mourany" => "/conseillers/fiche"
          "(.*)/conseillers/jr.jean-marie" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/([^-]*-?)*$" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(merci|thank-you)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/suivi"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)/(merci|thank-you)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes"
          "(.*)/(calculatrice-3-modes|3-mode-calculator)(?(?=\?)(.+)|)$" => "/simulateurs/3modes"
          "(.*)/(simulateur-frais-de-notaire|notary-fees-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/notaire"
          "(.*)/(simulateur-capacite-emprunt|borrowing-capacity-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/pret-immo"
          "(.*)/(simulateur-pret-taux-zero|tips-and-tools)(?(?=\?)(.+)|)$" => "/simulateurs/pret-taux-zero"
          "(.*)/(favoris|favorites)(?(?=\?)(.+)|)$" => "/favoris"
          "(.*)/(comparateur)(?(?=\?)(.+)|)$" => "/comparateur"
          "(.*)/(preventes)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/preventes/recherche/fiche"
          "(.*)/about-us/our-set-of-services$" => "/qui-sommes-nous/nos-services-et-outils"
          "(.*)/about-us/our-network$" => "/qui-sommes-nous/notre-reseau"
          "(.*)/about-us/our-international-department$" => "/qui-sommes-nous/our-international-department"
          "(.*)/about-us/our-visibility$" => "/qui-sommes-nous/our-visibility"
          "(.*)/cms/need-help$" => "/cms/besoin-daide"
          "(.*)/tips-and-tools$" => "/services"
          "(.*)/agents(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/legal-notice$" => "/mentions-legales"
          "(.*)/cms/contact-capifrance$" => "/cms/contacter-capifrance"
          "(.*)/(general-privacy-policy|general-privacy-policy)$" => "/politique-generale-de-confidentialite"
          "(.*)/(legal-mentions-business-introducer|legal-mentions-business-introducer)$" => "/conditions-generales-apporteur-d-affaires"
          "(.*)/cms/contact-capifrance/thank-you$" => "/cms/contacter-capifrance/merci"
          "(.*)/relocate-in-france$" => "/relocate-infrance"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bretagne/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/bretagne$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/centre-val-de-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/centre-val-de-loire$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/corse/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/corse$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/dom-tom/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/dom-tom$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/grand-est/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/grand-est$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/hauts-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/hauts-de-france$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/ile-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/ile-de-france$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/normandie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/normandie$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/occitanie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/occitanie$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/paca/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/paca$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/pays-de-la-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/relocate-in-france/region/pays-de-la-loire$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/rent-manage/off-plan$" => "/location-gestion/neuf"
          "(.*)/rent-manage/off-plan/thank-you$" => "/location-gestion/neuf/merci"
          "(.*)/rent-manage/manage$" => "/location-gestion/faire-gerer"
          "(.*)/rent-manage/manage/thank-you$" => "/location-gestion/faire-gerer/merci"
          "(.*)/rent-manage/luxury$" => "/location-gestion/luxe-et-prestige"
          "(.*)/rent-manage/luxury/thank-you$" => "/location-gestion/luxe-et-prestige/merci"
          "(.*)/viager/(estimation|estimate)/(.+)(?(?=/)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/viager/estimate/thank-you$" => "/viager/vendre/estimation/merci"
          "(.*)/businesses-trades/estimation/commercial-walls/thank-you$" => "/commerces/ceder/estimation-mur/merci"
          "(.*)/luxury/estimation/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/luxury/estimate/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
          "/estimate/estimate-rdv" => "/estimer/estimer-rdv"
          "/estimate/estimate-rdv/thank-you" => "/estimer/estimer-rdv/merci"
          "(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/conseillers/estimation-luxe-prestige(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation-luxe-prestige/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation-luxe-prestige/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/estimer-appartement(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-maison(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige/etapes(?(?=\?)(.+)|)$" => "/estimer/etapes"
          "(.*)/estimer-luxe-prestige/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
          "(.*)/estimer-maison/etapes$" => "/estimer/etapes"
          "(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
          "/([\w*._]*)(?(?=\?)(.+)|)$" => "/conseillers/fiche"
        ]
        "blog" => array:1 [
          "route" => "/blog"
        ]
        "google_tag_manager_key" => "GTM-XXXXX"
        "geolocation" => array:3 [
          "city" => "Paris"
          "lat" => 48.856614
          "lng" => 2.3522219
        ]
        "emails" => array:1 [
          "regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
        ]
        "access_token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
        "mapping_url_subdomain" => array:28 [
          "alsace" => "annonces/achat?adresse=Grand%20Est"
          "auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "bretagne" => "annonces/achat?adresse=Bretagne"
          "centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
          "champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
          "corse" => "annonces/achat?adresse=Corse"
          "franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
          "guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
          "ile-de-france" => "annonces/achat?adresse=Île-de-France"
          "languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
          "limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "lorraine" => "annonces/achat?adresse=Grand%20Est"
          "martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
          "midi-pyrenees" => "annonces/achat?adresse=Occitanie"
          "nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
          "basse-normandie" => "annonces/achat?adresse=Normandie"
          "haute-normandie" => "annonces/achat?adresse=Normandie"
          "pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
          "picardie" => "annonces/achat?adresse=Hauts-de-France"
          "poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "paca" => "annonces/achat?adresse=PACA"
          "reunion" => "annonces/achat?adresse=La%20Réunion"
          "rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "exclusif" => "annonces/achat?exclusif=true"
          "medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "commerce" => "commerces"
        ]
        "background-regions" => array:18 [
          "Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
          "Normandie, France" => "bgmoteur_annonces-normandie.jpg"
          "Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
          "Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
          "Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
          "Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
          "Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
          "Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
          "Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
          "Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
          "PACA, France" => "bgmoteur_annonces-paca.jpg"
          "Corse, France" => "bgmoteur_annonces-corse.jpg"
          "Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
          "Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
          "Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
          "La Réunion" => "bgmoteur_annonces-lareunion.jpg"
          "Martinique" => "bgmoteur_annonces-martinique.jpg"
          "Mayotte" => "bgmoteur_annonces-mayotte.jpg"
        ]
        "site_en" => "https://www.capifrance.fr/en"
        "site_fr" => "https://www.capifrance.fr"
        "activityStatus" => "SELLER"
        "partnerId" => "capifrance"
        "domain" => "capifrance"
        "fallback-imgs" => array:2 [
          "property" => "theme://images/img_default.png"
          "agent" => "theme://images/conseiller-default.jpg"
        ]
        "flags" => array:12 [
          "Français" => "FR"
          "Anglais" => "EN"
          "Italien" => "IT"
          "Allemand" => "DE"
          "Espagnol" => "ES"
          "Néerlandais" => "NL"
          "Arabe" => "AR"
          "Russe" => "RU"
          "Portugais" => "PT"
          "Danois" => "DA"
          "Chinois" => "CN"
          "Ukrainien" => "RU"
        ]
        "excluded-agent-specs" => array:1 [
          0 => "Défiscalisation"
        ]
        "new-presale-notification" => array:3 [
          "subject" => "Nouvelle Prévente"
          "to" => "[email protected]"
          "cc" => "[email protected]"
        ]
        "property_pdf" => array:1 [
          "file_name" => "Fiche_bien_"
        ]
        "send-presale-to-intra" => array:2 [
          "method" => "POST"
          "endpoint" => "https://intranet.digitregroup.io/graphql/"
        ]
        "exclude_avis_agent" => array:5 [
          0 => "11356"
          1 => "9609"
          2 => "97"
          3 => "4890"
          4 => "11612"
        ]
        "include_PIS" => array:62 [
          0 => "[email protected]"
          1 => "[email protected]"
          2 => "[email protected]"
          3 => "[email protected]"
          4 => "[email protected]"
          5 => "[email protected]"
          6 => "[email protected]"
          7 => "[email protected]"
          8 => "[email protected]"
          9 => "[email protected]"
          10 => "[email protected]"
          11 => "[email protected]"
          12 => "[email protected]"
          13 => "[email protected]"
          14 => "[email protected]"
          15 => "[email protected]"
          16 => "[email protected]"
          17 => "[email protected]"
          18 => "[email protected]"
          19 => "[email protected]"
          20 => "[email protected]"
          21 => "[email protected]"
          22 => "[email protected]"
          23 => "[email protected]"
          24 => "[email protected]"
          25 => "[email protected]"
          26 => "[email protected]"
          27 => "[email protected]"
          28 => "[email protected]"
          29 => "[email protected]"
          30 => "[email protected]"
          31 => "[email protected]"
          32 => "[email protected]"
          33 => "[email protected]"
          34 => "[email protected]"
          35 => "[email protected]"
          36 => "[email protected]"
          37 => "[email protected]"
          38 => "[email protected]"
          39 => "[email protected]"
          40 => "[email protected]"
          41 => "[email protected]"
          42 => "[email protected]"
          43 => "[email protected]"
          44 => "[email protected]"
          45 => "[email protected]"
          46 => "[email protected]"
          47 => "[email protected]"
          48 => "[email protected]"
          49 => "[email protected]"
          50 => "[email protected]"
          51 => "[email protected]"
          52 => "[email protected]"
          53 => "[email protected]"
          54 => "[email protected]"
          55 => "[email protected]"
          56 => "[email protected]"
          57 => "[email protected]"
          58 => "[email protected]"
          59 => "[email protected] "
          60 => "[email protected]"
          61 => "[email protected]"
        ]
        "exclude_apporteur_agent" => array:1 [
          0 => "325"
        ]
        "no_show_sold_props_agent" => array:1 [
          0 => "97"
        ]
        "drimki-iframe-url" => "https://formulaires.drimki.fr/en/estimation/partners/capifrance"
        "intranet-url" => "https://intranet.digitregroup.io"
      ]
      "uri" => Uri {#139}
      "assets" => Assets {#251}
      "taxonomy" => Taxonomy {#422}
      "browser" => Browser {#473}
      "base_dir" => "/var/app/current"
      "home_url" => "/en"
      "base_url" => "/en"
      "base_url_absolute" => "https://www.capifrance.fr/en"
      "base_url_relative" => "/en"
      "base_url_simple" => ""
      "theme_dir" => "/var/app/current/user/themes/capifrance"
      "theme_url" => "/user/themes/capifrance"
      "html_lang" => "en"
      "language_codes" => LanguageCodes {#474}
      "breadcrumbs" => Breadcrumbs {#1443}
      "form" => Form {#1447}
      "form_max_filesize" => 15
      "form_json_response" => []
      "pages" => Page {#487}
      "page" => Page {#751}
      "header" => {#752}
      "media" => Media {#1457}
      "content" => ""
      "grav" => Grav {#3}
    ]
    
  2. array:6 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_meta_title"
      ]
      "meta_data" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_meta_data"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_head"
      ]
      "jsonLD" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_jsonLD"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_content"
      ]
      "fixedBlock" => array:2 [
        0 => __TwigTemplate_26218230ac8dd7c37317eac6c2661fbdfeb16487a152c8e2fdda840adc176d38 {#1463}
        1 => "block_fixedBlock"
      ]
    ]
    
/
var
/
app
/
current
/
vendor
/
twig
/
twig
/
src
/
Template.php
     * directly.
     *
     * @return array An array of blocks
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = [])
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        ob_start();
        try {
            $this->display($context);
        } catch (\Exception $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = [])
    {
        try {
Arguments
  1. array:27 [
      "config" => Config {#96}
      "system" => array:28 [
        "absolute_urls" => false
        "timezone" => ""
        "default_locale" => null
        "param_sep" => ":"
        "wrapped_site" => false
        "reverse_proxy_setup" => false
        "force_ssl" => false
        "force_lowercase_urls" => true
        "custom_base_url" => ""
        "username_regex" => "^[a-z0-9_-]{3,16}$"
        "pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
        "intl_enabled" => true
        "languages" => array:9 [
          "supported" => array:2 [
            0 => "fr"
            1 => "en"
          ]
          "default_lang" => null
          "include_default_lang" => false
          "pages_fallback_only" => false
          "translations" => true
          "translations_fallback" => true
          "session_store_active" => false
          "http_accept_language" => false
          "override_locale" => false
        ]
        "home" => array:2 [
          "alias" => "/home"
          "hide_in_urls" => true
        ]
        "pages" => array:26 [
          "theme" => "capifrance"
          "order" => array:2 [
            "by" => "default"
            "dir" => "asc"
          ]
          "list" => array:1 [
            "count" => 20
          ]
          "dateformat" => array:3 [
            "default" => null
            "short" => "jS M Y"
            "long" => "F jS \a\t g:ia"
          ]
          "publish_dates" => true
          "process" => array:2 [
            "markdown" => false
            "twig" => true
          ]
          "twig_first" => false
          "never_cache_twig" => false
          "events" => array:2 [
            "page" => true
            "twig" => true
          ]
          "markdown" => array:5 [
            "extra" => false
            "auto_line_breaks" => false
            "auto_url_links" => false
            "escape_markup" => false
            "special_chars" => array:2 [
              ">" => "gt"
              "<" => "lt"
            ]
          ]
          "types" => array:7 [
            0 => "html"
            1 => "htm"
            2 => "xml"
            3 => "txt"
            4 => "json"
            5 => "rss"
            6 => "atom"
          ]
          "append_url_extension" => ""
          "expires" => 604800
          "cache_control" => null
          "last_modified" => false
          "etag" => false
          "vary_accept_encoding" => false
          "redirect_default_route" => false
          "redirect_default_code" => "301"
          "redirect_trailing_slash" => true
          "ignore_files" => array:1 [
            0 => ".DS_Store"
          ]
          "ignore_folders" => array:2 [
            0 => ".git"
            1 => ".idea"
          ]
          "ignore_hidden" => true
          "hide_empty_folders" => false
          "url_taxonomy_filters" => true
          "frontmatter" => array:2 [
            "process_twig" => true
            "ignore_fields" => array:2 [
              0 => "form"
              1 => "forms"
            ]
          ]
        ]
        "cache" => array:13 [
          "enabled" => true
          "check" => array:1 [
            "method" => "file"
          ]
          "driver" => "file"
          "prefix" => "g"
          "purge_at" => "0 4 * * *"
          "clear_at" => "0 3 * * *"
          "clear_job_type" => "standard"
          "clear_images_by_default" => true
          "cli_compatibility" => false
          "lifetime" => 21600
          "gzip" => false
          "allow_webserver_gzip" => false
          "redis" => array:1 [
            "socket" => false
          ]
        ]
        "twig" => array:7 [
          "cache" => true
          "debug" => false
          "auto_reload" => true
          "autoescape" => false
          "undefined_functions" => true
          "undefined_filters" => true
          "umask_fix" => false
        ]
        "assets" => array:12 [
          "css_pipeline" => false
          "css_pipeline_include_externals" => true
          "css_pipeline_before_excludes" => true
          "css_minify" => true
          "css_minify_windows" => false
          "css_rewrite" => true
          "js_pipeline" => false
          "js_pipeline_include_externals" => true
          "js_pipeline_before_excludes" => true
          "js_minify" => true
          "enable_asset_timestamp" => false
          "collections" => array:1 [
            "jquery" => "system://assets/jquery/jquery-2.x.min.js"
          ]
        ]
        "errors" => array:2 [
          "display" => true
          "log" => true
        ]
        "log" => array:2 [
          "handler" => "file"
          "syslog" => array:1 [
            "facility" => "local6"
          ]
        ]
        "debugger" => array:3 [
          "enabled" => false
          "shutdown" => array:1 [
            "close_connection" => true
          ]
          "twig" => true
        ]
        "images" => array:6 [
          "default_image_quality" => 85
          "cache_all" => false
          "cache_perms" => "0755"
          "debug" => false
          "auto_fix_orientation" => false
          "seofriendly" => false
        ]
        "media" => array:5 [
          "enable_media_timestamp" => false
          "unsupported_inline_types" => []
          "allowed_fallback_types" => []
          "auto_metadata_exif" => false
          "upload_limit" => 15728640
        ]
        "session" => array:9 [
          "enabled" => true
          "initialize" => true
          "timeout" => 1800
          "name" => "grav-site"
          "uniqueness" => "path"
          "secure" => false
          "httponly" => true
          "split" => true
          "path" => null
        ]
        "gpm" => array:5 [
          "releases" => "stable"
          "proxy_url" => null
          "method" => "auto"
          "verify_peer" => true
          "official_gpm_only" => true
        ]
        "accounts" => array:2 [
          "type" => "data"
          "storage" => "file"
        ]
        "strict_mode" => array:2 [
          "yaml_compat" => true
          "twig_compat" => true
        ]
        "seo-factory" => array:1 [
          "bu" => "CAPIFRANCE"
        ]
      ]
      "theme" => array:1 [
        "streams" => array:1 [
          "schemes" => array:1 [
            "theme" => array:2 [
              "type" => "ReadOnlyStream"
              "prefixes" => array:1 [
                "" => array:2 [
                  0 => "user/themes/capifrance"
                  1 => "user/themes/digit-website"
                ]
              ]
            ]
          ]
        ]
      ]
      "site" => array:32 [
        "title" => "Capifrance"
        "default_lang" => "fr"
        "author" => array:2 [
          "name" => "DigitRE"
          "email" => "[email protected]"
        ]
        "taxonomies" => array:2 [
          0 => "category"
          1 => "tag"
        ]
        "metadata" => array:1 [
          "description" => "description"
        ]
        "summary" => array:4 [
          "enabled" => true
          "format" => "short"
          "size" => 300
          "delimiter" => "==="
        ]
        "redirects" => array:122 [
          "/.*/api/createPdf(.*)$" => "/api/propertyToPdf$1"
          "/conseillers/market$" => "/maintenance"
          "/fr/commerces-entreprises/acheter/((.*)-(\d+))$" => "/commerces-entreprises/reprendre/$1"
          "/fr/commerces-entreprises/louer/((.*)-(\d+))$" => "/commerces-entreprises/louer/$1"
          "/fr/residentiel/louer/((.*)-(\d+))$" => "/residentiel/louer/fiche/$1"
          "/fr/residentiel/acheter/((.*)-(\d+))$" => "/residentiel/acheter/fiche/$1"
          "/fr/neuf/acheter/((.*)-(\d+))$" => "/neuf/acheter/fiche/$1"
          "/fr/luxe-et-prestige/acheter/((.*)-(\d+))$" => "/prestige/acheter/fiche/$1"
          "/fr/commerces-entreprises/acheter/type/result$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Appartement$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Bar$" => "/commerces-entreprises/acheter/recherche?activity=BAR-BREWERY"
          "/fr/commerces-entreprises/acheter/type/Restaurant$" => "/commerces-entreprises/acheter/recherche?activity=RESTAURANT"
          "/fr/advice(.*)" => "/conseillers"
          "/fr/faq$" => "/cms/besoin-daide"
          "/fr/commerces-entreprises/louer/pathTo.html$" => "/commerces-entreprises/louer"
          "/fr/commerces-entreprises/pathTo.html$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/cafe-restaurant$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/(.*)/(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/fonds-de-commerce/(.*)?(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre/result$" => "/commerces-entreprises/ceder"
          "/fr/contact$" => "/cms/contacter-capifrance"
          "/fr/contacter-capifrance$" => "/cms/contacter-capifrance"
          "/fr/espace-conseil$" => "/espace-conseil"
          "/fr/espace-conseil/2017-un-dynamisme-confirme-pour-capifrance$" => "/espace-conseil"
          "/fr/espace-conseil/affaires-confidentielles-off-market$" => "/espace-conseil"
          "/fr/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-limmobilier-les-ateliers-capifrance-1$" => "/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-l-immobilier-les-ateliers-capifrance"
          "/fr/espace-conseil/capifrance-prestige$" => "/espace-conseil"
          "/fr/espace-conseil/carneo-lassistant-immobilier-numerique$" => "/espace-conseil/carneo-l-assistant-immobilier-numerique"
          "/fr/espace-conseil/ce-quil-faut-savoir-avant-dacheter-un-bien-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/choisir-le-mode-de-cession-de-votre-entreprise$" => "/espace-conseil"
          "/fr/espace-conseil/comment-acheter-un-bien-immobilier-en-indivision$" => "/espace-conseil"
          "/fr/espace-conseil/comment-concevoir-un-plan-de-reprise-dentreprise$" => "/espace-conseil/comment-concevoir-un-plan-de-reprise-d-entreprise"
          "/fr/espace-conseil/comment-se-passe-lachat-dun-appartement-neuf-sur-plan$" => "/espace-conseil"
          "/fr/espace-conseil/conditions-generales-dutilisation$" => "/politique-generale-de-confidentialite"
          "/fr/espace-conseil/conseils-et-astuces$" => "/espace-conseil/conseils-et-astuces"
          "/fr/espace-conseil/creer-une-sci-familiale$" => "/espace-conseil"
          "/fr/espace-conseil/devenir-dirigeant-dune-entreprise-a-reprendre$" => "/espace-conseil/devenir-dirigeant-d-une-entreprise-a-reprendre"
          "/fr/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs$" => "/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs"
          "/fr/espace-conseil/etat-des-risques-naturels-miniers-et-technologiques-ernmt$" => "/espace-conseil"
          "/fr/espace-conseil/le-diagnostic-amiante$" => "/espace-conseil/le-diagnostic-amiante"
          "/fr/espace-conseil/le-marche-de-limmobilier-neuf$" => "/espace-conseil/"
          "/fr/espace-conseil/le-pack-visite-plus$" => "/espace-conseil/le-pack-visite-plus"
          "/fr/espace-conseil/les-differents-types-de-baux-et-de-contrats$" => "/espace-conseil"
          "/fr/espace-conseil/les-frais-de-notaire-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde$" => "/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde"
          "/fr/espace-conseil/mentions-legales$" => "/cms/mentions-legales"
          "/fr/espace-conseil/nos-engagements$" => "/espace-conseil"
          "/fr/espace-conseil/nos-services-et-outils$" => "/espace-conseil"
          "/fr/espace-conseil/nos-valeurs$" => "/espace-conseil"
          "/fr/espace-conseil/notre-reseau-de-conseillers-en-immobilier-independants$" => "/espace-conseil"
          "/fr/espace-conseil/peut-on-vendre-un-appartement-avec-un-locataire-dedans$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-acheter-de-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-confier-son-bien-a-un-agent-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-investir-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/que-verifier-avant-dacheter-une-maison-neuve$" => "/espace-conseil"
          "/fr/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017$" => "/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017"
          "/fr/espace-conseil/selectionner-et-visiter-des-biens-a-louer$" => "/espace-conseil"
          "/fr/espace-conseil/trouver-une-entreprise-a-reprendre$" => "/espace-conseil/trouver-une-entreprise-a-reprendre"
          "/fr/espace-conseil?filter=outils&newpage=true$" => "/espace-conseil"
          "/residentiel/estimation" => "/estimer"
          "/fr/estimation/commerces$" => "/commerces-entreprises/estimation/commerce"
          "/fr/estimation/commerces-entreprises$" => "/commerces-entreprises/ceder"
          "/fr/estimation/entreprises$" => "/commerces-entreprises/2estimation/entreprise"
          "/fr/estimation/murs-commerciaux$" => "/commerces-entreprises/estimation/murs-commerciaux"
          "/fr/estimation/viager" => "/viager/estimation"
          "/fr/les-conseillers-capifrance$" => "/conseillers"
          "/fr/les-conseillers-capifrance/(.*)" => "/conseillers/$1"
          "/fr/luxe-et-prestige/acheter/Appartement\?page=(.*)" => "/luxe-et-prestige/acheter/recherche?activity=APARTMENT"
          "/fr/luxe-et-prestige/acheter/Demeure\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Maison-de-caractere/villes$" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Villa\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/(.*)$" => "/luxe-et-prestige/acheter/recherche/$1"
          "/fr/mon-profil$" => "/"
          "/fr/neuf/acheter" => "/neuf/acheter"
          "/fr/neuf/pathTo.html$" => "/neuf/acheter"
          "/fr/outils/calculatrice-3-modes$" => "/calculatrice-3-modes"
          "/fr/outils/simulateur-frais-de-notaire$" => "/simulateur-frais-de-notaire"
          "/fr/outils/simulateur-loi-pinel$" => "/"
          "/fr/outils/simulateur-pret-immobilier$" => "/simulateur-capacite-emprunt"
          "/fr/outils/simulateur-pret-taux-zero$" => "/simulateur-pret-taux-zero"
          "/fr/qui-sommes-nous$" => "/qui-sommes-nous"
          "/fr/residentiel/acheter$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/appartement/(.*)?page=0" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/appartement/(.*)" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier?page=0$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maisons/villes$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/louer$" => "/residentiel/louer"
          "/fr/residentiel/louer/pathTo.html$" => "/residentiel/louer"
          "/fr/residentiel/luxe-et-prestige/acheter$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/luxe-et-prestige/acheter/result$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/neuf/acheter" => "/neuf/acheter"
          "/fr/residentiel/neuf/acheter/result$" => "/neuf/acheter"
          "/fr/residentiel/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/vendre$" => "/residentiel/vendre"
          "/fr/residentiel/vendre/result$" => "/residentiel/vendre"
          "/proposer-un-bien" => "/residentiel/vendre"
          "/fr/testez-votre-bien$" => "/"
          "/fr/pathTo.html$" => "/"
          "/fr/result$" => "/"
          "/annonces/achat/(.*)/(.*)/(\d+)$" => "/residentiel/acheter/fiche/$3"
          "/annonces/traditionnel/appartement/achat$" => "/residentiel/acheter/recherche?activity=APARTMENT"
          "/residentiel/location/recherche(.*)" => "/residentiel/louer/recherche$1"
          "/residentiel/location/recherche/(.*)" => "/residentiel/louer/recherche/$1"
          "/fr/residentiel/acheter/result$" => "/residentiel/acheter/recherche"
          "/agents/(.*)" => "/conseillers/$1"
          "/en/conseillers/(.*)" => "/agents/$1"
          "/conseillers/ym.bahuna" => "/conseillers/Yolande-Marilyn.bahuna"
          "/conseillers/ag.menanteau" => "/conseillers/anne.menanteau"
          "/conseillers/ibitssam.gautier" => "/conseillers/ibtissam.gautier"
          "/conseillers/camille.banas" => "conseillers/camille.lebreton"
          "/conseillers/undefined/calculators/middle-rate" => "/conseillers"
          "/mon-compte/connexion$" => "/mon-compte"
          "/ventes-privees$" => "/"
          "^/estimer/estimer-en-ligne$" => "/estimer"
          "/luxe-et-prestige/acheter/(.*)$" => "/prestige/acheter/$1"
          "/commerces-entreprises/acheter/(.*)$" => "/commerces/acheter/$1"
          "/commerces-entreprises/location/(.*)$" => "/commerces/louer/$1"
          "(.*)/estimer/appartement" => "/estimer-appartement"
          "(.*)/estimer/maison" => "/estimer-maison"
        ]
        "routes" => array:143 [
          "(.*)/residential/regions$" => "/residentiel/regions"
          "/commerces-entreprises/reprendre/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/acheter/fiche"
          "/commerces-entreprises/louer/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/louer/fiche"
          "/residentiel/acheter/fiche/([\w-]+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/acheter/fiche"
          "/residentiel/acheter/fiche/(\d{10,})$" => "/residentiel/acheter/fiche"
          "/residentiel/louer/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/louer/fiche"
          "/neuf/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/neuf/acheter/fiche"
          "/prestige/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/prestige/acheter/fiche"
          "(.*)/(residentiel|residential)/(acheter|buy)(?(?=\?)(.+)|)$" => "/residentiel/acheter"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+/[a-z0-9-]+(/page:\d+)?(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville-subtype"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?(?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-primary"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?/[a-z](?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-letter"
          "(.*)/residential/cities?(?(?=\?)(.+)|)$" => "/residentiel/villes"
          "(.*)/(residentiel|residential)/(location|rent)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/residentiel/louer/recherche"
          "(.*)/(residentiel|residential)/(vendre|sale|sell)(?(?=\?)(.+)|)$" => "/residentiel/vendre"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(residentiel|residential)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/louer/fiche"
          "(.*)/(residentiel|residential)/(louer|rent)(?(?=\?)(.+)|)$" => "/residentiel/louer"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche/merci"
          "(.*)/(viager)/(estimation)(?(?=\?)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/(viager)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/viager/acheter/recherche"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche"
          "(.*)/(viager)/(acheter|buy)(?(?=\?)(.+)|)$" => "/viager/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|takeover)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)(?(?=\?)(.+)|)$" => "/commerces/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/acheter/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|vente|sale|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/acheter/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(louer|rent)(?(?=\?)(.+)|)$" => "/commerces/louer"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/louer/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/louer/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(ceder|sell)(?(?=\?)(.+)|)$" => "/commerces/ceder"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(commerce|shop)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(entreprise|business)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(murs-commerciaux|commercial-walls)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-mur"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(droit-au-bail|right-to-lease)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-droit-au-bail"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche/merci"
          "(.*)/(neuf|off-plan)/(acheter|buy)(?(?=\?)(.+)|)$" => "/neuf/acheter"
          "(.*)/(neuf|off-plan)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/neuf/acheter/recherche"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)(?(?=\?)(.+)|)$" => "/prestige/acheter"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)/(.*)" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(estimation|estimation)(?(?=\?)(.+)|)$" => "/prestige/vendre/estimation"
          "(.*)/(conseillers|agents)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/conseillers/patrice.donat-magnin" => "/conseillers/fiche"
          "(.*)/conseillers/anne-sophie.bernier" => "/conseillers/fiche"
          "(.*)/conseillers/natacha.poupet-bourdouleix" => "/conseillers/fiche"
          "(.*)/conseillers/damaye.cisse-oertli" => "/conseillers/fiche"
          "(.*)/conseillers/magali.murekian" => "/conseillers/fiche"
          "(.*)/conseillers/aurelie.bezard-bietry" => "/conseillers/fiche"
          "(.*)/conseillers/fabienne.mourany" => "/conseillers/fiche"
          "(.*)/conseillers/jr.jean-marie" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/([^-]*-?)*$" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(merci|thank-you)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/suivi"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)/(merci|thank-you)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes"
          "(.*)/(calculatrice-3-modes|3-mode-calculator)(?(?=\?)(.+)|)$" => "/simulateurs/3modes"
          "(.*)/(simulateur-frais-de-notaire|notary-fees-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/notaire"
          "(.*)/(simulateur-capacite-emprunt|borrowing-capacity-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/pret-immo"
          "(.*)/(simulateur-pret-taux-zero|tips-and-tools)(?(?=\?)(.+)|)$" => "/simulateurs/pret-taux-zero"
          "(.*)/(favoris|favorites)(?(?=\?)(.+)|)$" => "/favoris"
          "(.*)/(comparateur)(?(?=\?)(.+)|)$" => "/comparateur"
          "(.*)/(preventes)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/preventes/recherche/fiche"
          "(.*)/about-us/our-set-of-services$" => "/qui-sommes-nous/nos-services-et-outils"
          "(.*)/about-us/our-network$" => "/qui-sommes-nous/notre-reseau"
          "(.*)/about-us/our-international-department$" => "/qui-sommes-nous/our-international-department"
          "(.*)/about-us/our-visibility$" => "/qui-sommes-nous/our-visibility"
          "(.*)/cms/need-help$" => "/cms/besoin-daide"
          "(.*)/tips-and-tools$" => "/services"
          "(.*)/agents(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/legal-notice$" => "/mentions-legales"
          "(.*)/cms/contact-capifrance$" => "/cms/contacter-capifrance"
          "(.*)/(general-privacy-policy|general-privacy-policy)$" => "/politique-generale-de-confidentialite"
          "(.*)/(legal-mentions-business-introducer|legal-mentions-business-introducer)$" => "/conditions-generales-apporteur-d-affaires"
          "(.*)/cms/contact-capifrance/thank-you$" => "/cms/contacter-capifrance/merci"
          "(.*)/relocate-in-france$" => "/relocate-infrance"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bretagne/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/bretagne$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/centre-val-de-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/centre-val-de-loire$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/corse/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/corse$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/dom-tom/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/dom-tom$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/grand-est/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/grand-est$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/hauts-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/hauts-de-france$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/ile-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/ile-de-france$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/normandie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/normandie$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/occitanie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/occitanie$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/paca/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/paca$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/pays-de-la-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/relocate-in-france/region/pays-de-la-loire$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/rent-manage/off-plan$" => "/location-gestion/neuf"
          "(.*)/rent-manage/off-plan/thank-you$" => "/location-gestion/neuf/merci"
          "(.*)/rent-manage/manage$" => "/location-gestion/faire-gerer"
          "(.*)/rent-manage/manage/thank-you$" => "/location-gestion/faire-gerer/merci"
          "(.*)/rent-manage/luxury$" => "/location-gestion/luxe-et-prestige"
          "(.*)/rent-manage/luxury/thank-you$" => "/location-gestion/luxe-et-prestige/merci"
          "(.*)/viager/(estimation|estimate)/(.+)(?(?=/)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/viager/estimate/thank-you$" => "/viager/vendre/estimation/merci"
          "(.*)/businesses-trades/estimation/commercial-walls/thank-you$" => "/commerces/ceder/estimation-mur/merci"
          "(.*)/luxury/estimation/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/luxury/estimate/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
          "/estimate/estimate-rdv" => "/estimer/estimer-rdv"
          "/estimate/estimate-rdv/thank-you" => "/estimer/estimer-rdv/merci"
          "(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/conseillers/estimation-luxe-prestige(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation-luxe-prestige/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation-luxe-prestige/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/estimer-appartement(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-maison(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige/etapes(?(?=\?)(.+)|)$" => "/estimer/etapes"
          "(.*)/estimer-luxe-prestige/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
          "(.*)/estimer-maison/etapes$" => "/estimer/etapes"
          "(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
          "/([\w*._]*)(?(?=\?)(.+)|)$" => "/conseillers/fiche"
        ]
        "blog" => array:1 [
          "route" => "/blog"
        ]
        "google_tag_manager_key" => "GTM-XXXXX"
        "geolocation" => array:3 [
          "city" => "Paris"
          "lat" => 48.856614
          "lng" => 2.3522219
        ]
        "emails" => array:1 [
          "regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
        ]
        "access_token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
        "mapping_url_subdomain" => array:28 [
          "alsace" => "annonces/achat?adresse=Grand%20Est"
          "auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "bretagne" => "annonces/achat?adresse=Bretagne"
          "centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
          "champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
          "corse" => "annonces/achat?adresse=Corse"
          "franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
          "guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
          "ile-de-france" => "annonces/achat?adresse=Île-de-France"
          "languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
          "limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "lorraine" => "annonces/achat?adresse=Grand%20Est"
          "martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
          "midi-pyrenees" => "annonces/achat?adresse=Occitanie"
          "nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
          "basse-normandie" => "annonces/achat?adresse=Normandie"
          "haute-normandie" => "annonces/achat?adresse=Normandie"
          "pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
          "picardie" => "annonces/achat?adresse=Hauts-de-France"
          "poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "paca" => "annonces/achat?adresse=PACA"
          "reunion" => "annonces/achat?adresse=La%20Réunion"
          "rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "exclusif" => "annonces/achat?exclusif=true"
          "medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "commerce" => "commerces"
        ]
        "background-regions" => array:18 [
          "Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
          "Normandie, France" => "bgmoteur_annonces-normandie.jpg"
          "Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
          "Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
          "Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
          "Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
          "Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
          "Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
          "Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
          "Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
          "PACA, France" => "bgmoteur_annonces-paca.jpg"
          "Corse, France" => "bgmoteur_annonces-corse.jpg"
          "Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
          "Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
          "Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
          "La Réunion" => "bgmoteur_annonces-lareunion.jpg"
          "Martinique" => "bgmoteur_annonces-martinique.jpg"
          "Mayotte" => "bgmoteur_annonces-mayotte.jpg"
        ]
        "site_en" => "https://www.capifrance.fr/en"
        "site_fr" => "https://www.capifrance.fr"
        "activityStatus" => "SELLER"
        "partnerId" => "capifrance"
        "domain" => "capifrance"
        "fallback-imgs" => array:2 [
          "property" => "theme://images/img_default.png"
          "agent" => "theme://images/conseiller-default.jpg"
        ]
        "flags" => array:12 [
          "Français" => "FR"
          "Anglais" => "EN"
          "Italien" => "IT"
          "Allemand" => "DE"
          "Espagnol" => "ES"
          "Néerlandais" => "NL"
          "Arabe" => "AR"
          "Russe" => "RU"
          "Portugais" => "PT"
          "Danois" => "DA"
          "Chinois" => "CN"
          "Ukrainien" => "RU"
        ]
        "excluded-agent-specs" => array:1 [
          0 => "Défiscalisation"
        ]
        "new-presale-notification" => array:3 [
          "subject" => "Nouvelle Prévente"
          "to" => "[email protected]"
          "cc" => "[email protected]"
        ]
        "property_pdf" => array:1 [
          "file_name" => "Fiche_bien_"
        ]
        "send-presale-to-intra" => array:2 [
          "method" => "POST"
          "endpoint" => "https://intranet.digitregroup.io/graphql/"
        ]
        "exclude_avis_agent" => array:5 [
          0 => "11356"
          1 => "9609"
          2 => "97"
          3 => "4890"
          4 => "11612"
        ]
        "include_PIS" => array:62 [
          0 => "[email protected]"
          1 => "[email protected]"
          2 => "[email protected]"
          3 => "[email protected]"
          4 => "[email protected]"
          5 => "[email protected]"
          6 => "[email protected]"
          7 => "[email protected]"
          8 => "[email protected]"
          9 => "[email protected]"
          10 => "[email protected]"
          11 => "[email protected]"
          12 => "[email protected]"
          13 => "[email protected]"
          14 => "[email protected]"
          15 => "[email protected]"
          16 => "[email protected]"
          17 => "[email protected]"
          18 => "[email protected]"
          19 => "[email protected]"
          20 => "[email protected]"
          21 => "[email protected]"
          22 => "[email protected]"
          23 => "[email protected]"
          24 => "[email protected]"
          25 => "[email protected]"
          26 => "[email protected]"
          27 => "[email protected]"
          28 => "[email protected]"
          29 => "[email protected]"
          30 => "[email protected]"
          31 => "[email protected]"
          32 => "[email protected]"
          33 => "[email protected]"
          34 => "[email protected]"
          35 => "[email protected]"
          36 => "[email protected]"
          37 => "[email protected]"
          38 => "[email protected]"
          39 => "[email protected]"
          40 => "[email protected]"
          41 => "[email protected]"
          42 => "[email protected]"
          43 => "[email protected]"
          44 => "[email protected]"
          45 => "[email protected]"
          46 => "[email protected]"
          47 => "[email protected]"
          48 => "[email protected]"
          49 => "[email protected]"
          50 => "[email protected]"
          51 => "[email protected]"
          52 => "[email protected]"
          53 => "[email protected]"
          54 => "[email protected]"
          55 => "[email protected]"
          56 => "[email protected]"
          57 => "[email protected]"
          58 => "[email protected]"
          59 => "[email protected] "
          60 => "[email protected]"
          61 => "[email protected]"
        ]
        "exclude_apporteur_agent" => array:1 [
          0 => "325"
        ]
        "no_show_sold_props_agent" => array:1 [
          0 => "97"
        ]
        "drimki-iframe-url" => "https://formulaires.drimki.fr/en/estimation/partners/capifrance"
        "intranet-url" => "https://intranet.digitregroup.io"
      ]
      "uri" => Uri {#139}
      "assets" => Assets {#251}
      "taxonomy" => Taxonomy {#422}
      "browser" => Browser {#473}
      "base_dir" => "/var/app/current"
      "home_url" => "/en"
      "base_url" => "/en"
      "base_url_absolute" => "https://www.capifrance.fr/en"
      "base_url_relative" => "/en"
      "base_url_simple" => ""
      "theme_dir" => "/var/app/current/user/themes/capifrance"
      "theme_url" => "/user/themes/capifrance"
      "html_lang" => "en"
      "language_codes" => LanguageCodes {#474}
      "breadcrumbs" => Breadcrumbs {#1443}
      "form" => Form {#1447}
      "form_max_filesize" => 15
      "form_json_response" => []
      "pages" => Page {#487}
      "page" => Page {#751}
      "header" => {#752}
      "media" => Media {#1457}
      "content" => ""
    ]
    
/
var
/
app
/
current
/
vendor
/
twig
/
twig
/
src
/
TemplateWrapper.php
     * @internal
     */
    public function __construct(Environment $env, Template $template)
    {
        $this->env = $env;
        $this->template = $template;
    }
 
    /**
     * Renders the template.
     *
     * @param array $context An array of parameters to pass to the template
     *
     * @return string The rendered template
     */
    public function render($context = [])
    {
        // using func_get_args() allows to not expose the blocks argument
        // as it should only be used by internal code
        return $this->template->render($context, \func_num_args() > 1 ? func_get_arg(1) : []);
    }
 
    /**
     * Displays the template.
     *
     * @param array $context An array of parameters to pass to the template
     */
    public function display($context = [])
    {
        // using func_get_args() allows to not expose the blocks argument
        // as it should only be used by internal code
        $this->template->display($context, \func_num_args() > 1 ? func_get_arg(1) : []);
    }
 
    /**
     * Checks if a block is defined.
     *
     * @param string $name    The block name
     * @param array  $context An array of parameters to pass to the template
     *
Arguments
  1. array:27 [
      "config" => Config {#96}
      "system" => array:28 [
        "absolute_urls" => false
        "timezone" => ""
        "default_locale" => null
        "param_sep" => ":"
        "wrapped_site" => false
        "reverse_proxy_setup" => false
        "force_ssl" => false
        "force_lowercase_urls" => true
        "custom_base_url" => ""
        "username_regex" => "^[a-z0-9_-]{3,16}$"
        "pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
        "intl_enabled" => true
        "languages" => array:9 [
          "supported" => array:2 [
            0 => "fr"
            1 => "en"
          ]
          "default_lang" => null
          "include_default_lang" => false
          "pages_fallback_only" => false
          "translations" => true
          "translations_fallback" => true
          "session_store_active" => false
          "http_accept_language" => false
          "override_locale" => false
        ]
        "home" => array:2 [
          "alias" => "/home"
          "hide_in_urls" => true
        ]
        "pages" => array:26 [
          "theme" => "capifrance"
          "order" => array:2 [
            "by" => "default"
            "dir" => "asc"
          ]
          "list" => array:1 [
            "count" => 20
          ]
          "dateformat" => array:3 [
            "default" => null
            "short" => "jS M Y"
            "long" => "F jS \a\t g:ia"
          ]
          "publish_dates" => true
          "process" => array:2 [
            "markdown" => false
            "twig" => true
          ]
          "twig_first" => false
          "never_cache_twig" => false
          "events" => array:2 [
            "page" => true
            "twig" => true
          ]
          "markdown" => array:5 [
            "extra" => false
            "auto_line_breaks" => false
            "auto_url_links" => false
            "escape_markup" => false
            "special_chars" => array:2 [
              ">" => "gt"
              "<" => "lt"
            ]
          ]
          "types" => array:7 [
            0 => "html"
            1 => "htm"
            2 => "xml"
            3 => "txt"
            4 => "json"
            5 => "rss"
            6 => "atom"
          ]
          "append_url_extension" => ""
          "expires" => 604800
          "cache_control" => null
          "last_modified" => false
          "etag" => false
          "vary_accept_encoding" => false
          "redirect_default_route" => false
          "redirect_default_code" => "301"
          "redirect_trailing_slash" => true
          "ignore_files" => array:1 [
            0 => ".DS_Store"
          ]
          "ignore_folders" => array:2 [
            0 => ".git"
            1 => ".idea"
          ]
          "ignore_hidden" => true
          "hide_empty_folders" => false
          "url_taxonomy_filters" => true
          "frontmatter" => array:2 [
            "process_twig" => true
            "ignore_fields" => array:2 [
              0 => "form"
              1 => "forms"
            ]
          ]
        ]
        "cache" => array:13 [
          "enabled" => true
          "check" => array:1 [
            "method" => "file"
          ]
          "driver" => "file"
          "prefix" => "g"
          "purge_at" => "0 4 * * *"
          "clear_at" => "0 3 * * *"
          "clear_job_type" => "standard"
          "clear_images_by_default" => true
          "cli_compatibility" => false
          "lifetime" => 21600
          "gzip" => false
          "allow_webserver_gzip" => false
          "redis" => array:1 [
            "socket" => false
          ]
        ]
        "twig" => array:7 [
          "cache" => true
          "debug" => false
          "auto_reload" => true
          "autoescape" => false
          "undefined_functions" => true
          "undefined_filters" => true
          "umask_fix" => false
        ]
        "assets" => array:12 [
          "css_pipeline" => false
          "css_pipeline_include_externals" => true
          "css_pipeline_before_excludes" => true
          "css_minify" => true
          "css_minify_windows" => false
          "css_rewrite" => true
          "js_pipeline" => false
          "js_pipeline_include_externals" => true
          "js_pipeline_before_excludes" => true
          "js_minify" => true
          "enable_asset_timestamp" => false
          "collections" => array:1 [
            "jquery" => "system://assets/jquery/jquery-2.x.min.js"
          ]
        ]
        "errors" => array:2 [
          "display" => true
          "log" => true
        ]
        "log" => array:2 [
          "handler" => "file"
          "syslog" => array:1 [
            "facility" => "local6"
          ]
        ]
        "debugger" => array:3 [
          "enabled" => false
          "shutdown" => array:1 [
            "close_connection" => true
          ]
          "twig" => true
        ]
        "images" => array:6 [
          "default_image_quality" => 85
          "cache_all" => false
          "cache_perms" => "0755"
          "debug" => false
          "auto_fix_orientation" => false
          "seofriendly" => false
        ]
        "media" => array:5 [
          "enable_media_timestamp" => false
          "unsupported_inline_types" => []
          "allowed_fallback_types" => []
          "auto_metadata_exif" => false
          "upload_limit" => 15728640
        ]
        "session" => array:9 [
          "enabled" => true
          "initialize" => true
          "timeout" => 1800
          "name" => "grav-site"
          "uniqueness" => "path"
          "secure" => false
          "httponly" => true
          "split" => true
          "path" => null
        ]
        "gpm" => array:5 [
          "releases" => "stable"
          "proxy_url" => null
          "method" => "auto"
          "verify_peer" => true
          "official_gpm_only" => true
        ]
        "accounts" => array:2 [
          "type" => "data"
          "storage" => "file"
        ]
        "strict_mode" => array:2 [
          "yaml_compat" => true
          "twig_compat" => true
        ]
        "seo-factory" => array:1 [
          "bu" => "CAPIFRANCE"
        ]
      ]
      "theme" => array:1 [
        "streams" => array:1 [
          "schemes" => array:1 [
            "theme" => array:2 [
              "type" => "ReadOnlyStream"
              "prefixes" => array:1 [
                "" => array:2 [
                  0 => "user/themes/capifrance"
                  1 => "user/themes/digit-website"
                ]
              ]
            ]
          ]
        ]
      ]
      "site" => array:32 [
        "title" => "Capifrance"
        "default_lang" => "fr"
        "author" => array:2 [
          "name" => "DigitRE"
          "email" => "[email protected]"
        ]
        "taxonomies" => array:2 [
          0 => "category"
          1 => "tag"
        ]
        "metadata" => array:1 [
          "description" => "description"
        ]
        "summary" => array:4 [
          "enabled" => true
          "format" => "short"
          "size" => 300
          "delimiter" => "==="
        ]
        "redirects" => array:122 [
          "/.*/api/createPdf(.*)$" => "/api/propertyToPdf$1"
          "/conseillers/market$" => "/maintenance"
          "/fr/commerces-entreprises/acheter/((.*)-(\d+))$" => "/commerces-entreprises/reprendre/$1"
          "/fr/commerces-entreprises/louer/((.*)-(\d+))$" => "/commerces-entreprises/louer/$1"
          "/fr/residentiel/louer/((.*)-(\d+))$" => "/residentiel/louer/fiche/$1"
          "/fr/residentiel/acheter/((.*)-(\d+))$" => "/residentiel/acheter/fiche/$1"
          "/fr/neuf/acheter/((.*)-(\d+))$" => "/neuf/acheter/fiche/$1"
          "/fr/luxe-et-prestige/acheter/((.*)-(\d+))$" => "/prestige/acheter/fiche/$1"
          "/fr/commerces-entreprises/acheter/type/result$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Appartement$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Bar$" => "/commerces-entreprises/acheter/recherche?activity=BAR-BREWERY"
          "/fr/commerces-entreprises/acheter/type/Restaurant$" => "/commerces-entreprises/acheter/recherche?activity=RESTAURANT"
          "/fr/advice(.*)" => "/conseillers"
          "/fr/faq$" => "/cms/besoin-daide"
          "/fr/commerces-entreprises/louer/pathTo.html$" => "/commerces-entreprises/louer"
          "/fr/commerces-entreprises/pathTo.html$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/cafe-restaurant$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/(.*)/(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/fonds-de-commerce/(.*)?(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre/result$" => "/commerces-entreprises/ceder"
          "/fr/contact$" => "/cms/contacter-capifrance"
          "/fr/contacter-capifrance$" => "/cms/contacter-capifrance"
          "/fr/espace-conseil$" => "/espace-conseil"
          "/fr/espace-conseil/2017-un-dynamisme-confirme-pour-capifrance$" => "/espace-conseil"
          "/fr/espace-conseil/affaires-confidentielles-off-market$" => "/espace-conseil"
          "/fr/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-limmobilier-les-ateliers-capifrance-1$" => "/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-l-immobilier-les-ateliers-capifrance"
          "/fr/espace-conseil/capifrance-prestige$" => "/espace-conseil"
          "/fr/espace-conseil/carneo-lassistant-immobilier-numerique$" => "/espace-conseil/carneo-l-assistant-immobilier-numerique"
          "/fr/espace-conseil/ce-quil-faut-savoir-avant-dacheter-un-bien-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/choisir-le-mode-de-cession-de-votre-entreprise$" => "/espace-conseil"
          "/fr/espace-conseil/comment-acheter-un-bien-immobilier-en-indivision$" => "/espace-conseil"
          "/fr/espace-conseil/comment-concevoir-un-plan-de-reprise-dentreprise$" => "/espace-conseil/comment-concevoir-un-plan-de-reprise-d-entreprise"
          "/fr/espace-conseil/comment-se-passe-lachat-dun-appartement-neuf-sur-plan$" => "/espace-conseil"
          "/fr/espace-conseil/conditions-generales-dutilisation$" => "/politique-generale-de-confidentialite"
          "/fr/espace-conseil/conseils-et-astuces$" => "/espace-conseil/conseils-et-astuces"
          "/fr/espace-conseil/creer-une-sci-familiale$" => "/espace-conseil"
          "/fr/espace-conseil/devenir-dirigeant-dune-entreprise-a-reprendre$" => "/espace-conseil/devenir-dirigeant-d-une-entreprise-a-reprendre"
          "/fr/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs$" => "/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs"
          "/fr/espace-conseil/etat-des-risques-naturels-miniers-et-technologiques-ernmt$" => "/espace-conseil"
          "/fr/espace-conseil/le-diagnostic-amiante$" => "/espace-conseil/le-diagnostic-amiante"
          "/fr/espace-conseil/le-marche-de-limmobilier-neuf$" => "/espace-conseil/"
          "/fr/espace-conseil/le-pack-visite-plus$" => "/espace-conseil/le-pack-visite-plus"
          "/fr/espace-conseil/les-differents-types-de-baux-et-de-contrats$" => "/espace-conseil"
          "/fr/espace-conseil/les-frais-de-notaire-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde$" => "/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde"
          "/fr/espace-conseil/mentions-legales$" => "/cms/mentions-legales"
          "/fr/espace-conseil/nos-engagements$" => "/espace-conseil"
          "/fr/espace-conseil/nos-services-et-outils$" => "/espace-conseil"
          "/fr/espace-conseil/nos-valeurs$" => "/espace-conseil"
          "/fr/espace-conseil/notre-reseau-de-conseillers-en-immobilier-independants$" => "/espace-conseil"
          "/fr/espace-conseil/peut-on-vendre-un-appartement-avec-un-locataire-dedans$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-acheter-de-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-confier-son-bien-a-un-agent-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-investir-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/que-verifier-avant-dacheter-une-maison-neuve$" => "/espace-conseil"
          "/fr/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017$" => "/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017"
          "/fr/espace-conseil/selectionner-et-visiter-des-biens-a-louer$" => "/espace-conseil"
          "/fr/espace-conseil/trouver-une-entreprise-a-reprendre$" => "/espace-conseil/trouver-une-entreprise-a-reprendre"
          "/fr/espace-conseil?filter=outils&newpage=true$" => "/espace-conseil"
          "/residentiel/estimation" => "/estimer"
          "/fr/estimation/commerces$" => "/commerces-entreprises/estimation/commerce"
          "/fr/estimation/commerces-entreprises$" => "/commerces-entreprises/ceder"
          "/fr/estimation/entreprises$" => "/commerces-entreprises/2estimation/entreprise"
          "/fr/estimation/murs-commerciaux$" => "/commerces-entreprises/estimation/murs-commerciaux"
          "/fr/estimation/viager" => "/viager/estimation"
          "/fr/les-conseillers-capifrance$" => "/conseillers"
          "/fr/les-conseillers-capifrance/(.*)" => "/conseillers/$1"
          "/fr/luxe-et-prestige/acheter/Appartement\?page=(.*)" => "/luxe-et-prestige/acheter/recherche?activity=APARTMENT"
          "/fr/luxe-et-prestige/acheter/Demeure\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Maison-de-caractere/villes$" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Villa\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/(.*)$" => "/luxe-et-prestige/acheter/recherche/$1"
          "/fr/mon-profil$" => "/"
          "/fr/neuf/acheter" => "/neuf/acheter"
          "/fr/neuf/pathTo.html$" => "/neuf/acheter"
          "/fr/outils/calculatrice-3-modes$" => "/calculatrice-3-modes"
          "/fr/outils/simulateur-frais-de-notaire$" => "/simulateur-frais-de-notaire"
          "/fr/outils/simulateur-loi-pinel$" => "/"
          "/fr/outils/simulateur-pret-immobilier$" => "/simulateur-capacite-emprunt"
          "/fr/outils/simulateur-pret-taux-zero$" => "/simulateur-pret-taux-zero"
          "/fr/qui-sommes-nous$" => "/qui-sommes-nous"
          "/fr/residentiel/acheter$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/appartement/(.*)?page=0" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/appartement/(.*)" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier?page=0$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maisons/villes$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/louer$" => "/residentiel/louer"
          "/fr/residentiel/louer/pathTo.html$" => "/residentiel/louer"
          "/fr/residentiel/luxe-et-prestige/acheter$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/luxe-et-prestige/acheter/result$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/neuf/acheter" => "/neuf/acheter"
          "/fr/residentiel/neuf/acheter/result$" => "/neuf/acheter"
          "/fr/residentiel/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/vendre$" => "/residentiel/vendre"
          "/fr/residentiel/vendre/result$" => "/residentiel/vendre"
          "/proposer-un-bien" => "/residentiel/vendre"
          "/fr/testez-votre-bien$" => "/"
          "/fr/pathTo.html$" => "/"
          "/fr/result$" => "/"
          "/annonces/achat/(.*)/(.*)/(\d+)$" => "/residentiel/acheter/fiche/$3"
          "/annonces/traditionnel/appartement/achat$" => "/residentiel/acheter/recherche?activity=APARTMENT"
          "/residentiel/location/recherche(.*)" => "/residentiel/louer/recherche$1"
          "/residentiel/location/recherche/(.*)" => "/residentiel/louer/recherche/$1"
          "/fr/residentiel/acheter/result$" => "/residentiel/acheter/recherche"
          "/agents/(.*)" => "/conseillers/$1"
          "/en/conseillers/(.*)" => "/agents/$1"
          "/conseillers/ym.bahuna" => "/conseillers/Yolande-Marilyn.bahuna"
          "/conseillers/ag.menanteau" => "/conseillers/anne.menanteau"
          "/conseillers/ibitssam.gautier" => "/conseillers/ibtissam.gautier"
          "/conseillers/camille.banas" => "conseillers/camille.lebreton"
          "/conseillers/undefined/calculators/middle-rate" => "/conseillers"
          "/mon-compte/connexion$" => "/mon-compte"
          "/ventes-privees$" => "/"
          "^/estimer/estimer-en-ligne$" => "/estimer"
          "/luxe-et-prestige/acheter/(.*)$" => "/prestige/acheter/$1"
          "/commerces-entreprises/acheter/(.*)$" => "/commerces/acheter/$1"
          "/commerces-entreprises/location/(.*)$" => "/commerces/louer/$1"
          "(.*)/estimer/appartement" => "/estimer-appartement"
          "(.*)/estimer/maison" => "/estimer-maison"
        ]
        "routes" => array:143 [
          "(.*)/residential/regions$" => "/residentiel/regions"
          "/commerces-entreprises/reprendre/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/acheter/fiche"
          "/commerces-entreprises/louer/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/louer/fiche"
          "/residentiel/acheter/fiche/([\w-]+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/acheter/fiche"
          "/residentiel/acheter/fiche/(\d{10,})$" => "/residentiel/acheter/fiche"
          "/residentiel/louer/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/louer/fiche"
          "/neuf/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/neuf/acheter/fiche"
          "/prestige/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/prestige/acheter/fiche"
          "(.*)/(residentiel|residential)/(acheter|buy)(?(?=\?)(.+)|)$" => "/residentiel/acheter"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+/[a-z0-9-]+(/page:\d+)?(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville-subtype"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?(?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-primary"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?/[a-z](?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-letter"
          "(.*)/residential/cities?(?(?=\?)(.+)|)$" => "/residentiel/villes"
          "(.*)/(residentiel|residential)/(location|rent)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/residentiel/louer/recherche"
          "(.*)/(residentiel|residential)/(vendre|sale|sell)(?(?=\?)(.+)|)$" => "/residentiel/vendre"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(residentiel|residential)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/louer/fiche"
          "(.*)/(residentiel|residential)/(louer|rent)(?(?=\?)(.+)|)$" => "/residentiel/louer"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche/merci"
          "(.*)/(viager)/(estimation)(?(?=\?)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/(viager)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/viager/acheter/recherche"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche"
          "(.*)/(viager)/(acheter|buy)(?(?=\?)(.+)|)$" => "/viager/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|takeover)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)(?(?=\?)(.+)|)$" => "/commerces/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/acheter/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|vente|sale|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/acheter/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(louer|rent)(?(?=\?)(.+)|)$" => "/commerces/louer"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/louer/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/louer/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(ceder|sell)(?(?=\?)(.+)|)$" => "/commerces/ceder"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(commerce|shop)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(entreprise|business)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(murs-commerciaux|commercial-walls)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-mur"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(droit-au-bail|right-to-lease)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-droit-au-bail"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche/merci"
          "(.*)/(neuf|off-plan)/(acheter|buy)(?(?=\?)(.+)|)$" => "/neuf/acheter"
          "(.*)/(neuf|off-plan)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/neuf/acheter/recherche"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)(?(?=\?)(.+)|)$" => "/prestige/acheter"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)/(.*)" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(estimation|estimation)(?(?=\?)(.+)|)$" => "/prestige/vendre/estimation"
          "(.*)/(conseillers|agents)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/conseillers/patrice.donat-magnin" => "/conseillers/fiche"
          "(.*)/conseillers/anne-sophie.bernier" => "/conseillers/fiche"
          "(.*)/conseillers/natacha.poupet-bourdouleix" => "/conseillers/fiche"
          "(.*)/conseillers/damaye.cisse-oertli" => "/conseillers/fiche"
          "(.*)/conseillers/magali.murekian" => "/conseillers/fiche"
          "(.*)/conseillers/aurelie.bezard-bietry" => "/conseillers/fiche"
          "(.*)/conseillers/fabienne.mourany" => "/conseillers/fiche"
          "(.*)/conseillers/jr.jean-marie" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/([^-]*-?)*$" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(merci|thank-you)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/suivi"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)/(merci|thank-you)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes"
          "(.*)/(calculatrice-3-modes|3-mode-calculator)(?(?=\?)(.+)|)$" => "/simulateurs/3modes"
          "(.*)/(simulateur-frais-de-notaire|notary-fees-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/notaire"
          "(.*)/(simulateur-capacite-emprunt|borrowing-capacity-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/pret-immo"
          "(.*)/(simulateur-pret-taux-zero|tips-and-tools)(?(?=\?)(.+)|)$" => "/simulateurs/pret-taux-zero"
          "(.*)/(favoris|favorites)(?(?=\?)(.+)|)$" => "/favoris"
          "(.*)/(comparateur)(?(?=\?)(.+)|)$" => "/comparateur"
          "(.*)/(preventes)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/preventes/recherche/fiche"
          "(.*)/about-us/our-set-of-services$" => "/qui-sommes-nous/nos-services-et-outils"
          "(.*)/about-us/our-network$" => "/qui-sommes-nous/notre-reseau"
          "(.*)/about-us/our-international-department$" => "/qui-sommes-nous/our-international-department"
          "(.*)/about-us/our-visibility$" => "/qui-sommes-nous/our-visibility"
          "(.*)/cms/need-help$" => "/cms/besoin-daide"
          "(.*)/tips-and-tools$" => "/services"
          "(.*)/agents(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/legal-notice$" => "/mentions-legales"
          "(.*)/cms/contact-capifrance$" => "/cms/contacter-capifrance"
          "(.*)/(general-privacy-policy|general-privacy-policy)$" => "/politique-generale-de-confidentialite"
          "(.*)/(legal-mentions-business-introducer|legal-mentions-business-introducer)$" => "/conditions-generales-apporteur-d-affaires"
          "(.*)/cms/contact-capifrance/thank-you$" => "/cms/contacter-capifrance/merci"
          "(.*)/relocate-in-france$" => "/relocate-infrance"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bretagne/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/bretagne$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/centre-val-de-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/centre-val-de-loire$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/corse/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/corse$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/dom-tom/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/dom-tom$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/grand-est/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/grand-est$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/hauts-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/hauts-de-france$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/ile-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/ile-de-france$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/normandie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/normandie$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/occitanie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/occitanie$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/paca/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/paca$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/pays-de-la-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/relocate-in-france/region/pays-de-la-loire$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/rent-manage/off-plan$" => "/location-gestion/neuf"
          "(.*)/rent-manage/off-plan/thank-you$" => "/location-gestion/neuf/merci"
          "(.*)/rent-manage/manage$" => "/location-gestion/faire-gerer"
          "(.*)/rent-manage/manage/thank-you$" => "/location-gestion/faire-gerer/merci"
          "(.*)/rent-manage/luxury$" => "/location-gestion/luxe-et-prestige"
          "(.*)/rent-manage/luxury/thank-you$" => "/location-gestion/luxe-et-prestige/merci"
          "(.*)/viager/(estimation|estimate)/(.+)(?(?=/)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/viager/estimate/thank-you$" => "/viager/vendre/estimation/merci"
          "(.*)/businesses-trades/estimation/commercial-walls/thank-you$" => "/commerces/ceder/estimation-mur/merci"
          "(.*)/luxury/estimation/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/luxury/estimate/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
          "/estimate/estimate-rdv" => "/estimer/estimer-rdv"
          "/estimate/estimate-rdv/thank-you" => "/estimer/estimer-rdv/merci"
          "(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/conseillers/estimation-luxe-prestige(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation-luxe-prestige/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation-luxe-prestige/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/estimer-appartement(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-maison(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige/etapes(?(?=\?)(.+)|)$" => "/estimer/etapes"
          "(.*)/estimer-luxe-prestige/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
          "(.*)/estimer-maison/etapes$" => "/estimer/etapes"
          "(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
          "/([\w*._]*)(?(?=\?)(.+)|)$" => "/conseillers/fiche"
        ]
        "blog" => array:1 [
          "route" => "/blog"
        ]
        "google_tag_manager_key" => "GTM-XXXXX"
        "geolocation" => array:3 [
          "city" => "Paris"
          "lat" => 48.856614
          "lng" => 2.3522219
        ]
        "emails" => array:1 [
          "regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
        ]
        "access_token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
        "mapping_url_subdomain" => array:28 [
          "alsace" => "annonces/achat?adresse=Grand%20Est"
          "auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "bretagne" => "annonces/achat?adresse=Bretagne"
          "centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
          "champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
          "corse" => "annonces/achat?adresse=Corse"
          "franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
          "guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
          "ile-de-france" => "annonces/achat?adresse=Île-de-France"
          "languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
          "limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "lorraine" => "annonces/achat?adresse=Grand%20Est"
          "martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
          "midi-pyrenees" => "annonces/achat?adresse=Occitanie"
          "nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
          "basse-normandie" => "annonces/achat?adresse=Normandie"
          "haute-normandie" => "annonces/achat?adresse=Normandie"
          "pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
          "picardie" => "annonces/achat?adresse=Hauts-de-France"
          "poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "paca" => "annonces/achat?adresse=PACA"
          "reunion" => "annonces/achat?adresse=La%20Réunion"
          "rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "exclusif" => "annonces/achat?exclusif=true"
          "medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "commerce" => "commerces"
        ]
        "background-regions" => array:18 [
          "Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
          "Normandie, France" => "bgmoteur_annonces-normandie.jpg"
          "Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
          "Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
          "Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
          "Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
          "Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
          "Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
          "Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
          "Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
          "PACA, France" => "bgmoteur_annonces-paca.jpg"
          "Corse, France" => "bgmoteur_annonces-corse.jpg"
          "Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
          "Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
          "Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
          "La Réunion" => "bgmoteur_annonces-lareunion.jpg"
          "Martinique" => "bgmoteur_annonces-martinique.jpg"
          "Mayotte" => "bgmoteur_annonces-mayotte.jpg"
        ]
        "site_en" => "https://www.capifrance.fr/en"
        "site_fr" => "https://www.capifrance.fr"
        "activityStatus" => "SELLER"
        "partnerId" => "capifrance"
        "domain" => "capifrance"
        "fallback-imgs" => array:2 [
          "property" => "theme://images/img_default.png"
          "agent" => "theme://images/conseiller-default.jpg"
        ]
        "flags" => array:12 [
          "Français" => "FR"
          "Anglais" => "EN"
          "Italien" => "IT"
          "Allemand" => "DE"
          "Espagnol" => "ES"
          "Néerlandais" => "NL"
          "Arabe" => "AR"
          "Russe" => "RU"
          "Portugais" => "PT"
          "Danois" => "DA"
          "Chinois" => "CN"
          "Ukrainien" => "RU"
        ]
        "excluded-agent-specs" => array:1 [
          0 => "Défiscalisation"
        ]
        "new-presale-notification" => array:3 [
          "subject" => "Nouvelle Prévente"
          "to" => "[email protected]"
          "cc" => "[email protected]"
        ]
        "property_pdf" => array:1 [
          "file_name" => "Fiche_bien_"
        ]
        "send-presale-to-intra" => array:2 [
          "method" => "POST"
          "endpoint" => "https://intranet.digitregroup.io/graphql/"
        ]
        "exclude_avis_agent" => array:5 [
          0 => "11356"
          1 => "9609"
          2 => "97"
          3 => "4890"
          4 => "11612"
        ]
        "include_PIS" => array:62 [
          0 => "[email protected]"
          1 => "[email protected]"
          2 => "[email protected]"
          3 => "[email protected]"
          4 => "[email protected]"
          5 => "[email protected]"
          6 => "[email protected]"
          7 => "[email protected]"
          8 => "[email protected]"
          9 => "[email protected]"
          10 => "[email protected]"
          11 => "[email protected]"
          12 => "[email protected]"
          13 => "[email protected]"
          14 => "[email protected]"
          15 => "[email protected]"
          16 => "[email protected]"
          17 => "[email protected]"
          18 => "[email protected]"
          19 => "[email protected]"
          20 => "[email protected]"
          21 => "[email protected]"
          22 => "[email protected]"
          23 => "[email protected]"
          24 => "[email protected]"
          25 => "[email protected]"
          26 => "[email protected]"
          27 => "[email protected]"
          28 => "[email protected]"
          29 => "[email protected]"
          30 => "[email protected]"
          31 => "[email protected]"
          32 => "[email protected]"
          33 => "[email protected]"
          34 => "[email protected]"
          35 => "[email protected]"
          36 => "[email protected]"
          37 => "[email protected]"
          38 => "[email protected]"
          39 => "[email protected]"
          40 => "[email protected]"
          41 => "[email protected]"
          42 => "[email protected]"
          43 => "[email protected]"
          44 => "[email protected]"
          45 => "[email protected]"
          46 => "[email protected]"
          47 => "[email protected]"
          48 => "[email protected]"
          49 => "[email protected]"
          50 => "[email protected]"
          51 => "[email protected]"
          52 => "[email protected]"
          53 => "[email protected]"
          54 => "[email protected]"
          55 => "[email protected]"
          56 => "[email protected]"
          57 => "[email protected]"
          58 => "[email protected]"
          59 => "[email protected] "
          60 => "[email protected]"
          61 => "[email protected]"
        ]
        "exclude_apporteur_agent" => array:1 [
          0 => "325"
        ]
        "no_show_sold_props_agent" => array:1 [
          0 => "97"
        ]
        "drimki-iframe-url" => "https://formulaires.drimki.fr/en/estimation/partners/capifrance"
        "intranet-url" => "https://intranet.digitregroup.io"
      ]
      "uri" => Uri {#139}
      "assets" => Assets {#251}
      "taxonomy" => Taxonomy {#422}
      "browser" => Browser {#473}
      "base_dir" => "/var/app/current"
      "home_url" => "/en"
      "base_url" => "/en"
      "base_url_absolute" => "https://www.capifrance.fr/en"
      "base_url_relative" => "/en"
      "base_url_simple" => ""
      "theme_dir" => "/var/app/current/user/themes/capifrance"
      "theme_url" => "/user/themes/capifrance"
      "html_lang" => "en"
      "language_codes" => LanguageCodes {#474}
      "breadcrumbs" => Breadcrumbs {#1443}
      "form" => Form {#1447}
      "form_max_filesize" => 15
      "form_json_response" => []
      "pages" => Page {#487}
      "page" => Page {#751}
      "header" => {#752}
      "media" => Media {#1457}
      "content" => ""
    ]
    
  2. []
    
/
var
/
app
/
current
/
vendor
/
twig
/
twig
/
src
/
Environment.php
        @trigger_error(sprintf('The %s method is deprecated since version 1.22 and will be removed in Twig 2.0.', __METHOD__), E_USER_DEPRECATED);
 
        return $this->templateClassPrefix;
    }
 
    /**
     * Renders a template.
     *
     * @param string|TemplateWrapper $name    The template name
     * @param array                  $context An array of parameters to pass to the template
     *
     * @return string The rendered template
     *
     * @throws LoaderError  When the template cannot be found
     * @throws SyntaxError  When an error occurred during compilation
     * @throws RuntimeError When an error occurred during rendering
     */
    public function render($name, array $context = [])
    {
        return $this->load($name)->render($context);
    }
 
    /**
     * Displays a template.
     *
     * @param string|TemplateWrapper $name    The template name
     * @param array                  $context An array of parameters to pass to the template
     *
     * @throws LoaderError  When the template cannot be found
     * @throws SyntaxError  When an error occurred during compilation
     * @throws RuntimeError When an error occurred during rendering
     */
    public function display($name, array $context = [])
    {
        $this->load($name)->display($context);
    }
 
    /**
     * Loads a template.
     *
Arguments
  1. array:27 [
      "config" => Config {#96}
      "system" => array:28 [
        "absolute_urls" => false
        "timezone" => ""
        "default_locale" => null
        "param_sep" => ":"
        "wrapped_site" => false
        "reverse_proxy_setup" => false
        "force_ssl" => false
        "force_lowercase_urls" => true
        "custom_base_url" => ""
        "username_regex" => "^[a-z0-9_-]{3,16}$"
        "pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
        "intl_enabled" => true
        "languages" => array:9 [
          "supported" => array:2 [
            0 => "fr"
            1 => "en"
          ]
          "default_lang" => null
          "include_default_lang" => false
          "pages_fallback_only" => false
          "translations" => true
          "translations_fallback" => true
          "session_store_active" => false
          "http_accept_language" => false
          "override_locale" => false
        ]
        "home" => array:2 [
          "alias" => "/home"
          "hide_in_urls" => true
        ]
        "pages" => array:26 [
          "theme" => "capifrance"
          "order" => array:2 [
            "by" => "default"
            "dir" => "asc"
          ]
          "list" => array:1 [
            "count" => 20
          ]
          "dateformat" => array:3 [
            "default" => null
            "short" => "jS M Y"
            "long" => "F jS \a\t g:ia"
          ]
          "publish_dates" => true
          "process" => array:2 [
            "markdown" => false
            "twig" => true
          ]
          "twig_first" => false
          "never_cache_twig" => false
          "events" => array:2 [
            "page" => true
            "twig" => true
          ]
          "markdown" => array:5 [
            "extra" => false
            "auto_line_breaks" => false
            "auto_url_links" => false
            "escape_markup" => false
            "special_chars" => array:2 [
              ">" => "gt"
              "<" => "lt"
            ]
          ]
          "types" => array:7 [
            0 => "html"
            1 => "htm"
            2 => "xml"
            3 => "txt"
            4 => "json"
            5 => "rss"
            6 => "atom"
          ]
          "append_url_extension" => ""
          "expires" => 604800
          "cache_control" => null
          "last_modified" => false
          "etag" => false
          "vary_accept_encoding" => false
          "redirect_default_route" => false
          "redirect_default_code" => "301"
          "redirect_trailing_slash" => true
          "ignore_files" => array:1 [
            0 => ".DS_Store"
          ]
          "ignore_folders" => array:2 [
            0 => ".git"
            1 => ".idea"
          ]
          "ignore_hidden" => true
          "hide_empty_folders" => false
          "url_taxonomy_filters" => true
          "frontmatter" => array:2 [
            "process_twig" => true
            "ignore_fields" => array:2 [
              0 => "form"
              1 => "forms"
            ]
          ]
        ]
        "cache" => array:13 [
          "enabled" => true
          "check" => array:1 [
            "method" => "file"
          ]
          "driver" => "file"
          "prefix" => "g"
          "purge_at" => "0 4 * * *"
          "clear_at" => "0 3 * * *"
          "clear_job_type" => "standard"
          "clear_images_by_default" => true
          "cli_compatibility" => false
          "lifetime" => 21600
          "gzip" => false
          "allow_webserver_gzip" => false
          "redis" => array:1 [
            "socket" => false
          ]
        ]
        "twig" => array:7 [
          "cache" => true
          "debug" => false
          "auto_reload" => true
          "autoescape" => false
          "undefined_functions" => true
          "undefined_filters" => true
          "umask_fix" => false
        ]
        "assets" => array:12 [
          "css_pipeline" => false
          "css_pipeline_include_externals" => true
          "css_pipeline_before_excludes" => true
          "css_minify" => true
          "css_minify_windows" => false
          "css_rewrite" => true
          "js_pipeline" => false
          "js_pipeline_include_externals" => true
          "js_pipeline_before_excludes" => true
          "js_minify" => true
          "enable_asset_timestamp" => false
          "collections" => array:1 [
            "jquery" => "system://assets/jquery/jquery-2.x.min.js"
          ]
        ]
        "errors" => array:2 [
          "display" => true
          "log" => true
        ]
        "log" => array:2 [
          "handler" => "file"
          "syslog" => array:1 [
            "facility" => "local6"
          ]
        ]
        "debugger" => array:3 [
          "enabled" => false
          "shutdown" => array:1 [
            "close_connection" => true
          ]
          "twig" => true
        ]
        "images" => array:6 [
          "default_image_quality" => 85
          "cache_all" => false
          "cache_perms" => "0755"
          "debug" => false
          "auto_fix_orientation" => false
          "seofriendly" => false
        ]
        "media" => array:5 [
          "enable_media_timestamp" => false
          "unsupported_inline_types" => []
          "allowed_fallback_types" => []
          "auto_metadata_exif" => false
          "upload_limit" => 15728640
        ]
        "session" => array:9 [
          "enabled" => true
          "initialize" => true
          "timeout" => 1800
          "name" => "grav-site"
          "uniqueness" => "path"
          "secure" => false
          "httponly" => true
          "split" => true
          "path" => null
        ]
        "gpm" => array:5 [
          "releases" => "stable"
          "proxy_url" => null
          "method" => "auto"
          "verify_peer" => true
          "official_gpm_only" => true
        ]
        "accounts" => array:2 [
          "type" => "data"
          "storage" => "file"
        ]
        "strict_mode" => array:2 [
          "yaml_compat" => true
          "twig_compat" => true
        ]
        "seo-factory" => array:1 [
          "bu" => "CAPIFRANCE"
        ]
      ]
      "theme" => array:1 [
        "streams" => array:1 [
          "schemes" => array:1 [
            "theme" => array:2 [
              "type" => "ReadOnlyStream"
              "prefixes" => array:1 [
                "" => array:2 [
                  0 => "user/themes/capifrance"
                  1 => "user/themes/digit-website"
                ]
              ]
            ]
          ]
        ]
      ]
      "site" => array:32 [
        "title" => "Capifrance"
        "default_lang" => "fr"
        "author" => array:2 [
          "name" => "DigitRE"
          "email" => "[email protected]"
        ]
        "taxonomies" => array:2 [
          0 => "category"
          1 => "tag"
        ]
        "metadata" => array:1 [
          "description" => "description"
        ]
        "summary" => array:4 [
          "enabled" => true
          "format" => "short"
          "size" => 300
          "delimiter" => "==="
        ]
        "redirects" => array:122 [
          "/.*/api/createPdf(.*)$" => "/api/propertyToPdf$1"
          "/conseillers/market$" => "/maintenance"
          "/fr/commerces-entreprises/acheter/((.*)-(\d+))$" => "/commerces-entreprises/reprendre/$1"
          "/fr/commerces-entreprises/louer/((.*)-(\d+))$" => "/commerces-entreprises/louer/$1"
          "/fr/residentiel/louer/((.*)-(\d+))$" => "/residentiel/louer/fiche/$1"
          "/fr/residentiel/acheter/((.*)-(\d+))$" => "/residentiel/acheter/fiche/$1"
          "/fr/neuf/acheter/((.*)-(\d+))$" => "/neuf/acheter/fiche/$1"
          "/fr/luxe-et-prestige/acheter/((.*)-(\d+))$" => "/prestige/acheter/fiche/$1"
          "/fr/commerces-entreprises/acheter/type/result$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Appartement$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Bar$" => "/commerces-entreprises/acheter/recherche?activity=BAR-BREWERY"
          "/fr/commerces-entreprises/acheter/type/Restaurant$" => "/commerces-entreprises/acheter/recherche?activity=RESTAURANT"
          "/fr/advice(.*)" => "/conseillers"
          "/fr/faq$" => "/cms/besoin-daide"
          "/fr/commerces-entreprises/louer/pathTo.html$" => "/commerces-entreprises/louer"
          "/fr/commerces-entreprises/pathTo.html$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/cafe-restaurant$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/(.*)/(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/fonds-de-commerce/(.*)?(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre/result$" => "/commerces-entreprises/ceder"
          "/fr/contact$" => "/cms/contacter-capifrance"
          "/fr/contacter-capifrance$" => "/cms/contacter-capifrance"
          "/fr/espace-conseil$" => "/espace-conseil"
          "/fr/espace-conseil/2017-un-dynamisme-confirme-pour-capifrance$" => "/espace-conseil"
          "/fr/espace-conseil/affaires-confidentielles-off-market$" => "/espace-conseil"
          "/fr/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-limmobilier-les-ateliers-capifrance-1$" => "/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-l-immobilier-les-ateliers-capifrance"
          "/fr/espace-conseil/capifrance-prestige$" => "/espace-conseil"
          "/fr/espace-conseil/carneo-lassistant-immobilier-numerique$" => "/espace-conseil/carneo-l-assistant-immobilier-numerique"
          "/fr/espace-conseil/ce-quil-faut-savoir-avant-dacheter-un-bien-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/choisir-le-mode-de-cession-de-votre-entreprise$" => "/espace-conseil"
          "/fr/espace-conseil/comment-acheter-un-bien-immobilier-en-indivision$" => "/espace-conseil"
          "/fr/espace-conseil/comment-concevoir-un-plan-de-reprise-dentreprise$" => "/espace-conseil/comment-concevoir-un-plan-de-reprise-d-entreprise"
          "/fr/espace-conseil/comment-se-passe-lachat-dun-appartement-neuf-sur-plan$" => "/espace-conseil"
          "/fr/espace-conseil/conditions-generales-dutilisation$" => "/politique-generale-de-confidentialite"
          "/fr/espace-conseil/conseils-et-astuces$" => "/espace-conseil/conseils-et-astuces"
          "/fr/espace-conseil/creer-une-sci-familiale$" => "/espace-conseil"
          "/fr/espace-conseil/devenir-dirigeant-dune-entreprise-a-reprendre$" => "/espace-conseil/devenir-dirigeant-d-une-entreprise-a-reprendre"
          "/fr/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs$" => "/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs"
          "/fr/espace-conseil/etat-des-risques-naturels-miniers-et-technologiques-ernmt$" => "/espace-conseil"
          "/fr/espace-conseil/le-diagnostic-amiante$" => "/espace-conseil/le-diagnostic-amiante"
          "/fr/espace-conseil/le-marche-de-limmobilier-neuf$" => "/espace-conseil/"
          "/fr/espace-conseil/le-pack-visite-plus$" => "/espace-conseil/le-pack-visite-plus"
          "/fr/espace-conseil/les-differents-types-de-baux-et-de-contrats$" => "/espace-conseil"
          "/fr/espace-conseil/les-frais-de-notaire-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde$" => "/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde"
          "/fr/espace-conseil/mentions-legales$" => "/cms/mentions-legales"
          "/fr/espace-conseil/nos-engagements$" => "/espace-conseil"
          "/fr/espace-conseil/nos-services-et-outils$" => "/espace-conseil"
          "/fr/espace-conseil/nos-valeurs$" => "/espace-conseil"
          "/fr/espace-conseil/notre-reseau-de-conseillers-en-immobilier-independants$" => "/espace-conseil"
          "/fr/espace-conseil/peut-on-vendre-un-appartement-avec-un-locataire-dedans$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-acheter-de-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-confier-son-bien-a-un-agent-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-investir-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/que-verifier-avant-dacheter-une-maison-neuve$" => "/espace-conseil"
          "/fr/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017$" => "/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017"
          "/fr/espace-conseil/selectionner-et-visiter-des-biens-a-louer$" => "/espace-conseil"
          "/fr/espace-conseil/trouver-une-entreprise-a-reprendre$" => "/espace-conseil/trouver-une-entreprise-a-reprendre"
          "/fr/espace-conseil?filter=outils&newpage=true$" => "/espace-conseil"
          "/residentiel/estimation" => "/estimer"
          "/fr/estimation/commerces$" => "/commerces-entreprises/estimation/commerce"
          "/fr/estimation/commerces-entreprises$" => "/commerces-entreprises/ceder"
          "/fr/estimation/entreprises$" => "/commerces-entreprises/2estimation/entreprise"
          "/fr/estimation/murs-commerciaux$" => "/commerces-entreprises/estimation/murs-commerciaux"
          "/fr/estimation/viager" => "/viager/estimation"
          "/fr/les-conseillers-capifrance$" => "/conseillers"
          "/fr/les-conseillers-capifrance/(.*)" => "/conseillers/$1"
          "/fr/luxe-et-prestige/acheter/Appartement\?page=(.*)" => "/luxe-et-prestige/acheter/recherche?activity=APARTMENT"
          "/fr/luxe-et-prestige/acheter/Demeure\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Maison-de-caractere/villes$" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Villa\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/(.*)$" => "/luxe-et-prestige/acheter/recherche/$1"
          "/fr/mon-profil$" => "/"
          "/fr/neuf/acheter" => "/neuf/acheter"
          "/fr/neuf/pathTo.html$" => "/neuf/acheter"
          "/fr/outils/calculatrice-3-modes$" => "/calculatrice-3-modes"
          "/fr/outils/simulateur-frais-de-notaire$" => "/simulateur-frais-de-notaire"
          "/fr/outils/simulateur-loi-pinel$" => "/"
          "/fr/outils/simulateur-pret-immobilier$" => "/simulateur-capacite-emprunt"
          "/fr/outils/simulateur-pret-taux-zero$" => "/simulateur-pret-taux-zero"
          "/fr/qui-sommes-nous$" => "/qui-sommes-nous"
          "/fr/residentiel/acheter$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/appartement/(.*)?page=0" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/appartement/(.*)" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier?page=0$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maisons/villes$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/louer$" => "/residentiel/louer"
          "/fr/residentiel/louer/pathTo.html$" => "/residentiel/louer"
          "/fr/residentiel/luxe-et-prestige/acheter$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/luxe-et-prestige/acheter/result$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/neuf/acheter" => "/neuf/acheter"
          "/fr/residentiel/neuf/acheter/result$" => "/neuf/acheter"
          "/fr/residentiel/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/vendre$" => "/residentiel/vendre"
          "/fr/residentiel/vendre/result$" => "/residentiel/vendre"
          "/proposer-un-bien" => "/residentiel/vendre"
          "/fr/testez-votre-bien$" => "/"
          "/fr/pathTo.html$" => "/"
          "/fr/result$" => "/"
          "/annonces/achat/(.*)/(.*)/(\d+)$" => "/residentiel/acheter/fiche/$3"
          "/annonces/traditionnel/appartement/achat$" => "/residentiel/acheter/recherche?activity=APARTMENT"
          "/residentiel/location/recherche(.*)" => "/residentiel/louer/recherche$1"
          "/residentiel/location/recherche/(.*)" => "/residentiel/louer/recherche/$1"
          "/fr/residentiel/acheter/result$" => "/residentiel/acheter/recherche"
          "/agents/(.*)" => "/conseillers/$1"
          "/en/conseillers/(.*)" => "/agents/$1"
          "/conseillers/ym.bahuna" => "/conseillers/Yolande-Marilyn.bahuna"
          "/conseillers/ag.menanteau" => "/conseillers/anne.menanteau"
          "/conseillers/ibitssam.gautier" => "/conseillers/ibtissam.gautier"
          "/conseillers/camille.banas" => "conseillers/camille.lebreton"
          "/conseillers/undefined/calculators/middle-rate" => "/conseillers"
          "/mon-compte/connexion$" => "/mon-compte"
          "/ventes-privees$" => "/"
          "^/estimer/estimer-en-ligne$" => "/estimer"
          "/luxe-et-prestige/acheter/(.*)$" => "/prestige/acheter/$1"
          "/commerces-entreprises/acheter/(.*)$" => "/commerces/acheter/$1"
          "/commerces-entreprises/location/(.*)$" => "/commerces/louer/$1"
          "(.*)/estimer/appartement" => "/estimer-appartement"
          "(.*)/estimer/maison" => "/estimer-maison"
        ]
        "routes" => array:143 [
          "(.*)/residential/regions$" => "/residentiel/regions"
          "/commerces-entreprises/reprendre/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/acheter/fiche"
          "/commerces-entreprises/louer/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/louer/fiche"
          "/residentiel/acheter/fiche/([\w-]+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/acheter/fiche"
          "/residentiel/acheter/fiche/(\d{10,})$" => "/residentiel/acheter/fiche"
          "/residentiel/louer/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/louer/fiche"
          "/neuf/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/neuf/acheter/fiche"
          "/prestige/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/prestige/acheter/fiche"
          "(.*)/(residentiel|residential)/(acheter|buy)(?(?=\?)(.+)|)$" => "/residentiel/acheter"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+/[a-z0-9-]+(/page:\d+)?(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville-subtype"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?(?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-primary"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?/[a-z](?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-letter"
          "(.*)/residential/cities?(?(?=\?)(.+)|)$" => "/residentiel/villes"
          "(.*)/(residentiel|residential)/(location|rent)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/residentiel/louer/recherche"
          "(.*)/(residentiel|residential)/(vendre|sale|sell)(?(?=\?)(.+)|)$" => "/residentiel/vendre"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(residentiel|residential)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/louer/fiche"
          "(.*)/(residentiel|residential)/(louer|rent)(?(?=\?)(.+)|)$" => "/residentiel/louer"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche/merci"
          "(.*)/(viager)/(estimation)(?(?=\?)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/(viager)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/viager/acheter/recherche"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche"
          "(.*)/(viager)/(acheter|buy)(?(?=\?)(.+)|)$" => "/viager/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|takeover)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)(?(?=\?)(.+)|)$" => "/commerces/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/acheter/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|vente|sale|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/acheter/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(louer|rent)(?(?=\?)(.+)|)$" => "/commerces/louer"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/louer/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/louer/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(ceder|sell)(?(?=\?)(.+)|)$" => "/commerces/ceder"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(commerce|shop)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(entreprise|business)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(murs-commerciaux|commercial-walls)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-mur"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(droit-au-bail|right-to-lease)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-droit-au-bail"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche/merci"
          "(.*)/(neuf|off-plan)/(acheter|buy)(?(?=\?)(.+)|)$" => "/neuf/acheter"
          "(.*)/(neuf|off-plan)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/neuf/acheter/recherche"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)(?(?=\?)(.+)|)$" => "/prestige/acheter"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)/(.*)" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(estimation|estimation)(?(?=\?)(.+)|)$" => "/prestige/vendre/estimation"
          "(.*)/(conseillers|agents)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/conseillers/patrice.donat-magnin" => "/conseillers/fiche"
          "(.*)/conseillers/anne-sophie.bernier" => "/conseillers/fiche"
          "(.*)/conseillers/natacha.poupet-bourdouleix" => "/conseillers/fiche"
          "(.*)/conseillers/damaye.cisse-oertli" => "/conseillers/fiche"
          "(.*)/conseillers/magali.murekian" => "/conseillers/fiche"
          "(.*)/conseillers/aurelie.bezard-bietry" => "/conseillers/fiche"
          "(.*)/conseillers/fabienne.mourany" => "/conseillers/fiche"
          "(.*)/conseillers/jr.jean-marie" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/([^-]*-?)*$" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(merci|thank-you)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/suivi"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)/(merci|thank-you)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes"
          "(.*)/(calculatrice-3-modes|3-mode-calculator)(?(?=\?)(.+)|)$" => "/simulateurs/3modes"
          "(.*)/(simulateur-frais-de-notaire|notary-fees-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/notaire"
          "(.*)/(simulateur-capacite-emprunt|borrowing-capacity-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/pret-immo"
          "(.*)/(simulateur-pret-taux-zero|tips-and-tools)(?(?=\?)(.+)|)$" => "/simulateurs/pret-taux-zero"
          "(.*)/(favoris|favorites)(?(?=\?)(.+)|)$" => "/favoris"
          "(.*)/(comparateur)(?(?=\?)(.+)|)$" => "/comparateur"
          "(.*)/(preventes)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/preventes/recherche/fiche"
          "(.*)/about-us/our-set-of-services$" => "/qui-sommes-nous/nos-services-et-outils"
          "(.*)/about-us/our-network$" => "/qui-sommes-nous/notre-reseau"
          "(.*)/about-us/our-international-department$" => "/qui-sommes-nous/our-international-department"
          "(.*)/about-us/our-visibility$" => "/qui-sommes-nous/our-visibility"
          "(.*)/cms/need-help$" => "/cms/besoin-daide"
          "(.*)/tips-and-tools$" => "/services"
          "(.*)/agents(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/legal-notice$" => "/mentions-legales"
          "(.*)/cms/contact-capifrance$" => "/cms/contacter-capifrance"
          "(.*)/(general-privacy-policy|general-privacy-policy)$" => "/politique-generale-de-confidentialite"
          "(.*)/(legal-mentions-business-introducer|legal-mentions-business-introducer)$" => "/conditions-generales-apporteur-d-affaires"
          "(.*)/cms/contact-capifrance/thank-you$" => "/cms/contacter-capifrance/merci"
          "(.*)/relocate-in-france$" => "/relocate-infrance"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bretagne/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/bretagne$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/centre-val-de-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/centre-val-de-loire$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/corse/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/corse$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/dom-tom/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/dom-tom$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/grand-est/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/grand-est$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/hauts-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/hauts-de-france$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/ile-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/ile-de-france$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/normandie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/normandie$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/occitanie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/occitanie$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/paca/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/paca$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/pays-de-la-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/relocate-in-france/region/pays-de-la-loire$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/rent-manage/off-plan$" => "/location-gestion/neuf"
          "(.*)/rent-manage/off-plan/thank-you$" => "/location-gestion/neuf/merci"
          "(.*)/rent-manage/manage$" => "/location-gestion/faire-gerer"
          "(.*)/rent-manage/manage/thank-you$" => "/location-gestion/faire-gerer/merci"
          "(.*)/rent-manage/luxury$" => "/location-gestion/luxe-et-prestige"
          "(.*)/rent-manage/luxury/thank-you$" => "/location-gestion/luxe-et-prestige/merci"
          "(.*)/viager/(estimation|estimate)/(.+)(?(?=/)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/viager/estimate/thank-you$" => "/viager/vendre/estimation/merci"
          "(.*)/businesses-trades/estimation/commercial-walls/thank-you$" => "/commerces/ceder/estimation-mur/merci"
          "(.*)/luxury/estimation/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/luxury/estimate/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
          "/estimate/estimate-rdv" => "/estimer/estimer-rdv"
          "/estimate/estimate-rdv/thank-you" => "/estimer/estimer-rdv/merci"
          "(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/conseillers/estimation-luxe-prestige(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation-luxe-prestige/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation-luxe-prestige/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/estimer-appartement(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-maison(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige/etapes(?(?=\?)(.+)|)$" => "/estimer/etapes"
          "(.*)/estimer-luxe-prestige/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
          "(.*)/estimer-maison/etapes$" => "/estimer/etapes"
          "(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
          "/([\w*._]*)(?(?=\?)(.+)|)$" => "/conseillers/fiche"
        ]
        "blog" => array:1 [
          "route" => "/blog"
        ]
        "google_tag_manager_key" => "GTM-XXXXX"
        "geolocation" => array:3 [
          "city" => "Paris"
          "lat" => 48.856614
          "lng" => 2.3522219
        ]
        "emails" => array:1 [
          "regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
        ]
        "access_token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
        "mapping_url_subdomain" => array:28 [
          "alsace" => "annonces/achat?adresse=Grand%20Est"
          "auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "bretagne" => "annonces/achat?adresse=Bretagne"
          "centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
          "champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
          "corse" => "annonces/achat?adresse=Corse"
          "franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
          "guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
          "ile-de-france" => "annonces/achat?adresse=Île-de-France"
          "languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
          "limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "lorraine" => "annonces/achat?adresse=Grand%20Est"
          "martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
          "midi-pyrenees" => "annonces/achat?adresse=Occitanie"
          "nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
          "basse-normandie" => "annonces/achat?adresse=Normandie"
          "haute-normandie" => "annonces/achat?adresse=Normandie"
          "pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
          "picardie" => "annonces/achat?adresse=Hauts-de-France"
          "poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "paca" => "annonces/achat?adresse=PACA"
          "reunion" => "annonces/achat?adresse=La%20Réunion"
          "rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "exclusif" => "annonces/achat?exclusif=true"
          "medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "commerce" => "commerces"
        ]
        "background-regions" => array:18 [
          "Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
          "Normandie, France" => "bgmoteur_annonces-normandie.jpg"
          "Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
          "Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
          "Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
          "Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
          "Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
          "Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
          "Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
          "Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
          "PACA, France" => "bgmoteur_annonces-paca.jpg"
          "Corse, France" => "bgmoteur_annonces-corse.jpg"
          "Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
          "Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
          "Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
          "La Réunion" => "bgmoteur_annonces-lareunion.jpg"
          "Martinique" => "bgmoteur_annonces-martinique.jpg"
          "Mayotte" => "bgmoteur_annonces-mayotte.jpg"
        ]
        "site_en" => "https://www.capifrance.fr/en"
        "site_fr" => "https://www.capifrance.fr"
        "activityStatus" => "SELLER"
        "partnerId" => "capifrance"
        "domain" => "capifrance"
        "fallback-imgs" => array:2 [
          "property" => "theme://images/img_default.png"
          "agent" => "theme://images/conseiller-default.jpg"
        ]
        "flags" => array:12 [
          "Français" => "FR"
          "Anglais" => "EN"
          "Italien" => "IT"
          "Allemand" => "DE"
          "Espagnol" => "ES"
          "Néerlandais" => "NL"
          "Arabe" => "AR"
          "Russe" => "RU"
          "Portugais" => "PT"
          "Danois" => "DA"
          "Chinois" => "CN"
          "Ukrainien" => "RU"
        ]
        "excluded-agent-specs" => array:1 [
          0 => "Défiscalisation"
        ]
        "new-presale-notification" => array:3 [
          "subject" => "Nouvelle Prévente"
          "to" => "[email protected]"
          "cc" => "[email protected]"
        ]
        "property_pdf" => array:1 [
          "file_name" => "Fiche_bien_"
        ]
        "send-presale-to-intra" => array:2 [
          "method" => "POST"
          "endpoint" => "https://intranet.digitregroup.io/graphql/"
        ]
        "exclude_avis_agent" => array:5 [
          0 => "11356"
          1 => "9609"
          2 => "97"
          3 => "4890"
          4 => "11612"
        ]
        "include_PIS" => array:62 [
          0 => "[email protected]"
          1 => "[email protected]"
          2 => "[email protected]"
          3 => "[email protected]"
          4 => "[email protected]"
          5 => "[email protected]"
          6 => "[email protected]"
          7 => "[email protected]"
          8 => "[email protected]"
          9 => "[email protected]"
          10 => "[email protected]"
          11 => "[email protected]"
          12 => "[email protected]"
          13 => "[email protected]"
          14 => "[email protected]"
          15 => "[email protected]"
          16 => "[email protected]"
          17 => "[email protected]"
          18 => "[email protected]"
          19 => "[email protected]"
          20 => "[email protected]"
          21 => "[email protected]"
          22 => "[email protected]"
          23 => "[email protected]"
          24 => "[email protected]"
          25 => "[email protected]"
          26 => "[email protected]"
          27 => "[email protected]"
          28 => "[email protected]"
          29 => "[email protected]"
          30 => "[email protected]"
          31 => "[email protected]"
          32 => "[email protected]"
          33 => "[email protected]"
          34 => "[email protected]"
          35 => "[email protected]"
          36 => "[email protected]"
          37 => "[email protected]"
          38 => "[email protected]"
          39 => "[email protected]"
          40 => "[email protected]"
          41 => "[email protected]"
          42 => "[email protected]"
          43 => "[email protected]"
          44 => "[email protected]"
          45 => "[email protected]"
          46 => "[email protected]"
          47 => "[email protected]"
          48 => "[email protected]"
          49 => "[email protected]"
          50 => "[email protected]"
          51 => "[email protected]"
          52 => "[email protected]"
          53 => "[email protected]"
          54 => "[email protected]"
          55 => "[email protected]"
          56 => "[email protected]"
          57 => "[email protected]"
          58 => "[email protected]"
          59 => "[email protected] "
          60 => "[email protected]"
          61 => "[email protected]"
        ]
        "exclude_apporteur_agent" => array:1 [
          0 => "325"
        ]
        "no_show_sold_props_agent" => array:1 [
          0 => "97"
        ]
        "drimki-iframe-url" => "https://formulaires.drimki.fr/en/estimation/partners/capifrance"
        "intranet-url" => "https://intranet.digitregroup.io"
      ]
      "uri" => Uri {#139}
      "assets" => Assets {#251}
      "taxonomy" => Taxonomy {#422}
      "browser" => Browser {#473}
      "base_dir" => "/var/app/current"
      "home_url" => "/en"
      "base_url" => "/en"
      "base_url_absolute" => "https://www.capifrance.fr/en"
      "base_url_relative" => "/en"
      "base_url_simple" => ""
      "theme_dir" => "/var/app/current/user/themes/capifrance"
      "theme_url" => "/user/themes/capifrance"
      "html_lang" => "en"
      "language_codes" => LanguageCodes {#474}
      "breadcrumbs" => Breadcrumbs {#1443}
      "form" => Form {#1447}
      "form_max_filesize" => 15
      "form_json_response" => []
      "pages" => Page {#487}
      "page" => Page {#751}
      "header" => {#752}
      "media" => Media {#1457}
      "content" => ""
    ]
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Twig
/
Twig.php
 
        $twig_vars['theme'] = $this->grav['config']->get('theme');
        $twig_vars['pages'] = $pages->root();
        $twig_vars['page'] = $page;
        $twig_vars['header'] = $page->header();
        $twig_vars['media'] = $page->media();
        $twig_vars['content'] = $content;
        $ext = '.' . ($format ?: 'html') . TWIG_EXT;
 
        // determine if params are set, if so disable twig cache
        $params = $this->grav['uri']->params(null, true);
        if (!empty($params)) {
            $this->twig->setCache(false);
        }
 
        // Get Twig template layout
        $template = $this->template($page->template() . $ext);
 
        try {
            $output = $this->twig->render($template, $vars + $twig_vars);
        } catch (\Twig_Error_Loader $e) {
            $error_msg = $e->getMessage();
            // Try html version of this template if initial template was NOT html
            if ($ext !== '.html' . TWIG_EXT) {
                try {
                    $page->templateFormat('html');
                    $output = $this->twig->render($page->template() . '.html' . TWIG_EXT, $vars + $twig_vars);
                } catch (\Twig_Error_Loader $e) {
                    throw new \RuntimeException($error_msg, 400, $e);
                }
            } else {
                throw new \RuntimeException($error_msg, 400, $e);
            }
        }
 
        return $output;
    }
 
    /**
     * Wraps the Twig_Loader_Filesystem addPath method (should be used only in `onTwigLoader()` event
Arguments
  1. "agent-detail.html.twig"
    
  2. array:27 [
      "config" => Config {#96}
      "system" => array:28 [
        "absolute_urls" => false
        "timezone" => ""
        "default_locale" => null
        "param_sep" => ":"
        "wrapped_site" => false
        "reverse_proxy_setup" => false
        "force_ssl" => false
        "force_lowercase_urls" => true
        "custom_base_url" => ""
        "username_regex" => "^[a-z0-9_-]{3,16}$"
        "pwd_regex" => "(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}"
        "intl_enabled" => true
        "languages" => array:9 [
          "supported" => array:2 [
            0 => "fr"
            1 => "en"
          ]
          "default_lang" => null
          "include_default_lang" => false
          "pages_fallback_only" => false
          "translations" => true
          "translations_fallback" => true
          "session_store_active" => false
          "http_accept_language" => false
          "override_locale" => false
        ]
        "home" => array:2 [
          "alias" => "/home"
          "hide_in_urls" => true
        ]
        "pages" => array:26 [
          "theme" => "capifrance"
          "order" => array:2 [
            "by" => "default"
            "dir" => "asc"
          ]
          "list" => array:1 [
            "count" => 20
          ]
          "dateformat" => array:3 [
            "default" => null
            "short" => "jS M Y"
            "long" => "F jS \a\t g:ia"
          ]
          "publish_dates" => true
          "process" => array:2 [
            "markdown" => false
            "twig" => true
          ]
          "twig_first" => false
          "never_cache_twig" => false
          "events" => array:2 [
            "page" => true
            "twig" => true
          ]
          "markdown" => array:5 [
            "extra" => false
            "auto_line_breaks" => false
            "auto_url_links" => false
            "escape_markup" => false
            "special_chars" => array:2 [
              ">" => "gt"
              "<" => "lt"
            ]
          ]
          "types" => array:7 [
            0 => "html"
            1 => "htm"
            2 => "xml"
            3 => "txt"
            4 => "json"
            5 => "rss"
            6 => "atom"
          ]
          "append_url_extension" => ""
          "expires" => 604800
          "cache_control" => null
          "last_modified" => false
          "etag" => false
          "vary_accept_encoding" => false
          "redirect_default_route" => false
          "redirect_default_code" => "301"
          "redirect_trailing_slash" => true
          "ignore_files" => array:1 [
            0 => ".DS_Store"
          ]
          "ignore_folders" => array:2 [
            0 => ".git"
            1 => ".idea"
          ]
          "ignore_hidden" => true
          "hide_empty_folders" => false
          "url_taxonomy_filters" => true
          "frontmatter" => array:2 [
            "process_twig" => true
            "ignore_fields" => array:2 [
              0 => "form"
              1 => "forms"
            ]
          ]
        ]
        "cache" => array:13 [
          "enabled" => true
          "check" => array:1 [
            "method" => "file"
          ]
          "driver" => "file"
          "prefix" => "g"
          "purge_at" => "0 4 * * *"
          "clear_at" => "0 3 * * *"
          "clear_job_type" => "standard"
          "clear_images_by_default" => true
          "cli_compatibility" => false
          "lifetime" => 21600
          "gzip" => false
          "allow_webserver_gzip" => false
          "redis" => array:1 [
            "socket" => false
          ]
        ]
        "twig" => array:7 [
          "cache" => true
          "debug" => false
          "auto_reload" => true
          "autoescape" => false
          "undefined_functions" => true
          "undefined_filters" => true
          "umask_fix" => false
        ]
        "assets" => array:12 [
          "css_pipeline" => false
          "css_pipeline_include_externals" => true
          "css_pipeline_before_excludes" => true
          "css_minify" => true
          "css_minify_windows" => false
          "css_rewrite" => true
          "js_pipeline" => false
          "js_pipeline_include_externals" => true
          "js_pipeline_before_excludes" => true
          "js_minify" => true
          "enable_asset_timestamp" => false
          "collections" => array:1 [
            "jquery" => "system://assets/jquery/jquery-2.x.min.js"
          ]
        ]
        "errors" => array:2 [
          "display" => true
          "log" => true
        ]
        "log" => array:2 [
          "handler" => "file"
          "syslog" => array:1 [
            "facility" => "local6"
          ]
        ]
        "debugger" => array:3 [
          "enabled" => false
          "shutdown" => array:1 [
            "close_connection" => true
          ]
          "twig" => true
        ]
        "images" => array:6 [
          "default_image_quality" => 85
          "cache_all" => false
          "cache_perms" => "0755"
          "debug" => false
          "auto_fix_orientation" => false
          "seofriendly" => false
        ]
        "media" => array:5 [
          "enable_media_timestamp" => false
          "unsupported_inline_types" => []
          "allowed_fallback_types" => []
          "auto_metadata_exif" => false
          "upload_limit" => 15728640
        ]
        "session" => array:9 [
          "enabled" => true
          "initialize" => true
          "timeout" => 1800
          "name" => "grav-site"
          "uniqueness" => "path"
          "secure" => false
          "httponly" => true
          "split" => true
          "path" => null
        ]
        "gpm" => array:5 [
          "releases" => "stable"
          "proxy_url" => null
          "method" => "auto"
          "verify_peer" => true
          "official_gpm_only" => true
        ]
        "accounts" => array:2 [
          "type" => "data"
          "storage" => "file"
        ]
        "strict_mode" => array:2 [
          "yaml_compat" => true
          "twig_compat" => true
        ]
        "seo-factory" => array:1 [
          "bu" => "CAPIFRANCE"
        ]
      ]
      "theme" => array:1 [
        "streams" => array:1 [
          "schemes" => array:1 [
            "theme" => array:2 [
              "type" => "ReadOnlyStream"
              "prefixes" => array:1 [
                "" => array:2 [
                  0 => "user/themes/capifrance"
                  1 => "user/themes/digit-website"
                ]
              ]
            ]
          ]
        ]
      ]
      "site" => array:32 [
        "title" => "Capifrance"
        "default_lang" => "fr"
        "author" => array:2 [
          "name" => "DigitRE"
          "email" => "[email protected]"
        ]
        "taxonomies" => array:2 [
          0 => "category"
          1 => "tag"
        ]
        "metadata" => array:1 [
          "description" => "description"
        ]
        "summary" => array:4 [
          "enabled" => true
          "format" => "short"
          "size" => 300
          "delimiter" => "==="
        ]
        "redirects" => array:122 [
          "/.*/api/createPdf(.*)$" => "/api/propertyToPdf$1"
          "/conseillers/market$" => "/maintenance"
          "/fr/commerces-entreprises/acheter/((.*)-(\d+))$" => "/commerces-entreprises/reprendre/$1"
          "/fr/commerces-entreprises/louer/((.*)-(\d+))$" => "/commerces-entreprises/louer/$1"
          "/fr/residentiel/louer/((.*)-(\d+))$" => "/residentiel/louer/fiche/$1"
          "/fr/residentiel/acheter/((.*)-(\d+))$" => "/residentiel/acheter/fiche/$1"
          "/fr/neuf/acheter/((.*)-(\d+))$" => "/neuf/acheter/fiche/$1"
          "/fr/luxe-et-prestige/acheter/((.*)-(\d+))$" => "/prestige/acheter/fiche/$1"
          "/fr/commerces-entreprises/acheter/type/result$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Appartement$" => "/commerces-entreprises/acheter"
          "/fr/commerces-entreprises/acheter/type/Bar$" => "/commerces-entreprises/acheter/recherche?activity=BAR-BREWERY"
          "/fr/commerces-entreprises/acheter/type/Restaurant$" => "/commerces-entreprises/acheter/recherche?activity=RESTAURANT"
          "/fr/advice(.*)" => "/conseillers"
          "/fr/faq$" => "/cms/besoin-daide"
          "/fr/commerces-entreprises/louer/pathTo.html$" => "/commerces-entreprises/louer"
          "/fr/commerces-entreprises/pathTo.html$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/cafe-restaurant$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/(.*)/(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/reprendre/fonds-de-commerce/(.*)?(.*)$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre$" => "/commerces-entreprises/ceder"
          "/fr/commerces-entreprises/vendre/result$" => "/commerces-entreprises/ceder"
          "/fr/contact$" => "/cms/contacter-capifrance"
          "/fr/contacter-capifrance$" => "/cms/contacter-capifrance"
          "/fr/espace-conseil$" => "/espace-conseil"
          "/fr/espace-conseil/2017-un-dynamisme-confirme-pour-capifrance$" => "/espace-conseil"
          "/fr/espace-conseil/affaires-confidentielles-off-market$" => "/espace-conseil"
          "/fr/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-limmobilier-les-ateliers-capifrance-1$" => "/espace-conseil/capifrance-lance-un-nouveau-concept-de-boutiques-dediees-a-l-immobilier-les-ateliers-capifrance"
          "/fr/espace-conseil/capifrance-prestige$" => "/espace-conseil"
          "/fr/espace-conseil/carneo-lassistant-immobilier-numerique$" => "/espace-conseil/carneo-l-assistant-immobilier-numerique"
          "/fr/espace-conseil/ce-quil-faut-savoir-avant-dacheter-un-bien-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/choisir-le-mode-de-cession-de-votre-entreprise$" => "/espace-conseil"
          "/fr/espace-conseil/comment-acheter-un-bien-immobilier-en-indivision$" => "/espace-conseil"
          "/fr/espace-conseil/comment-concevoir-un-plan-de-reprise-dentreprise$" => "/espace-conseil/comment-concevoir-un-plan-de-reprise-d-entreprise"
          "/fr/espace-conseil/comment-se-passe-lachat-dun-appartement-neuf-sur-plan$" => "/espace-conseil"
          "/fr/espace-conseil/conditions-generales-dutilisation$" => "/politique-generale-de-confidentialite"
          "/fr/espace-conseil/conseils-et-astuces$" => "/espace-conseil/conseils-et-astuces"
          "/fr/espace-conseil/creer-une-sci-familiale$" => "/espace-conseil"
          "/fr/espace-conseil/devenir-dirigeant-dune-entreprise-a-reprendre$" => "/espace-conseil/devenir-dirigeant-d-une-entreprise-a-reprendre"
          "/fr/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs$" => "/espace-conseil/digitre-group-lance-une-nouvelle-marque-immobiliere-dediee-aux-proprietaires-vendeurs"
          "/fr/espace-conseil/etat-des-risques-naturels-miniers-et-technologiques-ernmt$" => "/espace-conseil"
          "/fr/espace-conseil/le-diagnostic-amiante$" => "/espace-conseil/le-diagnostic-amiante"
          "/fr/espace-conseil/le-marche-de-limmobilier-neuf$" => "/espace-conseil/"
          "/fr/espace-conseil/le-pack-visite-plus$" => "/espace-conseil/le-pack-visite-plus"
          "/fr/espace-conseil/les-differents-types-de-baux-et-de-contrats$" => "/espace-conseil"
          "/fr/espace-conseil/les-frais-de-notaire-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde$" => "/espace-conseil/les-hotels-de-luxe-bulgari-a-travers-le-monde"
          "/fr/espace-conseil/mentions-legales$" => "/cms/mentions-legales"
          "/fr/espace-conseil/nos-engagements$" => "/espace-conseil"
          "/fr/espace-conseil/nos-services-et-outils$" => "/espace-conseil"
          "/fr/espace-conseil/nos-valeurs$" => "/espace-conseil"
          "/fr/espace-conseil/notre-reseau-de-conseillers-en-immobilier-independants$" => "/espace-conseil"
          "/fr/espace-conseil/peut-on-vendre-un-appartement-avec-un-locataire-dedans$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-acheter-de-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-confier-son-bien-a-un-agent-immobilier$" => "/espace-conseil"
          "/fr/espace-conseil/pourquoi-investir-dans-limmobilier-neuf$" => "/espace-conseil"
          "/fr/espace-conseil/que-verifier-avant-dacheter-une-maison-neuve$" => "/espace-conseil"
          "/fr/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017$" => "/espace-conseil/qui-sont-les-acheteurs-de-biens-luxe-and-prestige-en-france-en-2017"
          "/fr/espace-conseil/selectionner-et-visiter-des-biens-a-louer$" => "/espace-conseil"
          "/fr/espace-conseil/trouver-une-entreprise-a-reprendre$" => "/espace-conseil/trouver-une-entreprise-a-reprendre"
          "/fr/espace-conseil?filter=outils&newpage=true$" => "/espace-conseil"
          "/residentiel/estimation" => "/estimer"
          "/fr/estimation/commerces$" => "/commerces-entreprises/estimation/commerce"
          "/fr/estimation/commerces-entreprises$" => "/commerces-entreprises/ceder"
          "/fr/estimation/entreprises$" => "/commerces-entreprises/2estimation/entreprise"
          "/fr/estimation/murs-commerciaux$" => "/commerces-entreprises/estimation/murs-commerciaux"
          "/fr/estimation/viager" => "/viager/estimation"
          "/fr/les-conseillers-capifrance$" => "/conseillers"
          "/fr/les-conseillers-capifrance/(.*)" => "/conseillers/$1"
          "/fr/luxe-et-prestige/acheter/Appartement\?page=(.*)" => "/luxe-et-prestige/acheter/recherche?activity=APARTMENT"
          "/fr/luxe-et-prestige/acheter/Demeure\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Maison-de-caractere/villes$" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/Villa\?page=(.*)" => "/luxe-et-prestige/acheter"
          "/fr/luxe-et-prestige/acheter/(.*)$" => "/luxe-et-prestige/acheter/recherche/$1"
          "/fr/mon-profil$" => "/"
          "/fr/neuf/acheter" => "/neuf/acheter"
          "/fr/neuf/pathTo.html$" => "/neuf/acheter"
          "/fr/outils/calculatrice-3-modes$" => "/calculatrice-3-modes"
          "/fr/outils/simulateur-frais-de-notaire$" => "/simulateur-frais-de-notaire"
          "/fr/outils/simulateur-loi-pinel$" => "/"
          "/fr/outils/simulateur-pret-immobilier$" => "/simulateur-capacite-emprunt"
          "/fr/outils/simulateur-pret-taux-zero$" => "/simulateur-pret-taux-zero"
          "/fr/qui-sommes-nous$" => "/qui-sommes-nous"
          "/fr/residentiel/acheter$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/appartement/(.*)?page=0" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/appartement/(.*)" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maison/montpellier?page=0$" => "/residentiel/acheter/recherche/$1"
          "/fr/residentiel/acheter/maisons/villes$" => "/residentiel/acheter"
          "/fr/residentiel/acheter/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/louer$" => "/residentiel/louer"
          "/fr/residentiel/louer/pathTo.html$" => "/residentiel/louer"
          "/fr/residentiel/luxe-et-prestige/acheter$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/luxe-et-prestige/acheter/result$" => "/luxe-et-prestige/acheter"
          "/fr/residentiel/neuf/acheter" => "/neuf/acheter"
          "/fr/residentiel/neuf/acheter/result$" => "/neuf/acheter"
          "/fr/residentiel/pathTo.html$" => "/residentiel/acheter"
          "/fr/residentiel/vendre$" => "/residentiel/vendre"
          "/fr/residentiel/vendre/result$" => "/residentiel/vendre"
          "/proposer-un-bien" => "/residentiel/vendre"
          "/fr/testez-votre-bien$" => "/"
          "/fr/pathTo.html$" => "/"
          "/fr/result$" => "/"
          "/annonces/achat/(.*)/(.*)/(\d+)$" => "/residentiel/acheter/fiche/$3"
          "/annonces/traditionnel/appartement/achat$" => "/residentiel/acheter/recherche?activity=APARTMENT"
          "/residentiel/location/recherche(.*)" => "/residentiel/louer/recherche$1"
          "/residentiel/location/recherche/(.*)" => "/residentiel/louer/recherche/$1"
          "/fr/residentiel/acheter/result$" => "/residentiel/acheter/recherche"
          "/agents/(.*)" => "/conseillers/$1"
          "/en/conseillers/(.*)" => "/agents/$1"
          "/conseillers/ym.bahuna" => "/conseillers/Yolande-Marilyn.bahuna"
          "/conseillers/ag.menanteau" => "/conseillers/anne.menanteau"
          "/conseillers/ibitssam.gautier" => "/conseillers/ibtissam.gautier"
          "/conseillers/camille.banas" => "conseillers/camille.lebreton"
          "/conseillers/undefined/calculators/middle-rate" => "/conseillers"
          "/mon-compte/connexion$" => "/mon-compte"
          "/ventes-privees$" => "/"
          "^/estimer/estimer-en-ligne$" => "/estimer"
          "/luxe-et-prestige/acheter/(.*)$" => "/prestige/acheter/$1"
          "/commerces-entreprises/acheter/(.*)$" => "/commerces/acheter/$1"
          "/commerces-entreprises/location/(.*)$" => "/commerces/louer/$1"
          "(.*)/estimer/appartement" => "/estimer-appartement"
          "(.*)/estimer/maison" => "/estimer-maison"
        ]
        "routes" => array:143 [
          "(.*)/residential/regions$" => "/residentiel/regions"
          "/commerces-entreprises/reprendre/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/acheter/fiche"
          "/commerces-entreprises/louer/(\w+)-(\w+)-(\w+)-(\d+)$" => "/commerces/louer/fiche"
          "/residentiel/acheter/fiche/([\w-]+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/acheter/fiche"
          "/residentiel/acheter/fiche/(\d{10,})$" => "/residentiel/acheter/fiche"
          "/residentiel/louer/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/residentiel/louer/fiche"
          "/neuf/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/neuf/acheter/fiche"
          "/prestige/acheter/fiche/(\w+)-(\w+)-(\w+)-(\d+)$" => "/prestige/acheter/fiche"
          "(.*)/(residentiel|residential)/(acheter|buy)(?(?=\?)(.+)|)$" => "/residentiel/acheter"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville"
          "/(residentiel|residential)/(acheter|buy)/(recherche|search)(/\w+)/[a-z-]+/[a-z0-9-]+(/page:\d+)?(?(?=\?)(.+)|)$" => "/residentiel/seo/listing-ville-subtype"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?(?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-primary"
          "/villes/([a-z-]+)(/([a-z-]+))?(/([a-z-0-9]+))?/[a-z](?(?=\?)(.+)|)$" => "/residentiel/seo/sitemap-villes-letter"
          "(.*)/residential/cities?(?(?=\?)(.+)|)$" => "/residentiel/villes"
          "(.*)/(residentiel|residential)/(location|rent)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/residentiel/louer/recherche"
          "(.*)/(residentiel|residential)/(vendre|sale|sell)(?(?=\?)(.+)|)$" => "/residentiel/vendre"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche"
          "(.*)/(residentiel|residential)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(residentiel|residential)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/louer/fiche"
          "(.*)/(residentiel|residential)/(louer|rent)(?(?=\?)(.+)|)$" => "/residentiel/louer"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche/merci"
          "(.*)/(viager)/(estimation)(?(?=\?)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/(viager)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/viager/acheter/recherche"
          "(.*)/(viager)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/viager/acheter/fiche"
          "(.*)/(viager)/(acheter|buy)(?(?=\?)(.+)|)$" => "/viager/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|takeover)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/residentiel/acheter/fiche/merci"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)(?(?=\?)(.+)|)$" => "/commerces/acheter"
          "(.*)/(commerces-entreprises|businesses-trades)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/acheter/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(reprendre|vente|sale|resume)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/acheter/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(louer|rent)(?(?=\?)(.+)|)$" => "/commerces/louer"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/commerces/louer/recherche"
          "(.*)/(commerces-entreprises|businesses-trades)/(location|rental)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/commerces/louer/fiche"
          "(.*)/(commerces-entreprises|businesses-trades)/(ceder|sell)(?(?=\?)(.+)|)$" => "/commerces/ceder"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(commerce|shop)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-commerce"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(entreprise|business)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-entreprise"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(murs-commerciaux|commercial-walls)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-mur"
          "(.*)/(commerces-entreprises|businesses-trades)/(estimation)/(droit-au-bail|right-to-lease)(?(?=\?)(.+)|)$" => "/commerces/ceder/estimation-droit-au-bail"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/merci/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche/merci"
          "(.*)/(neuf|off-plan)/(acheter|buy)(?(?=\?)(.+)|)$" => "/neuf/acheter"
          "(.*)/(neuf|off-plan)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/neuf/acheter/recherche"
          "(.*)/(neuf|off-plan)/(vente|sale)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/neuf/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(vente|sale|buy)/(\w+)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/prestige/acheter/fiche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)(?(?=\?)(.+)|)$" => "/prestige/acheter"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)(/\w+)?(?(?=\?)(.+)|)$" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(acheter|buy)/(recherche|search)/(.*)" => "/prestige/acheter/recherche"
          "(.*)/(luxe-et-prestige|luxury)/(estimation|estimation)(?(?=\?)(.+)|)$" => "/prestige/vendre/estimation"
          "(.*)/(conseillers|agents)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/conseillers/patrice.donat-magnin" => "/conseillers/fiche"
          "(.*)/conseillers/anne-sophie.bernier" => "/conseillers/fiche"
          "(.*)/conseillers/natacha.poupet-bourdouleix" => "/conseillers/fiche"
          "(.*)/conseillers/damaye.cisse-oertli" => "/conseillers/fiche"
          "(.*)/conseillers/magali.murekian" => "/conseillers/fiche"
          "(.*)/conseillers/aurelie.bezard-bietry" => "/conseillers/fiche"
          "(.*)/conseillers/fabienne.mourany" => "/conseillers/fiche"
          "(.*)/conseillers/jr.jean-marie" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/([^-]*-?)*$" => "/conseillers/fiche"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv"
          "(.*)/(conseillers|agents)/(estimation-rdv|estimate-rdv)/(merci|thank-you)/(.+)(?(?=/)(.+)|)$" => "/conseillers/fiche/estimation-rdv/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/suivi/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/suivi"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)/(merci|thank-you)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes/merci"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires"
          "(.*)/(conseillers|agents)/(apporteur-affaires|business-carrier)/etapes/([\w\-.]+)(?(?=\?)(.+)|)$" => "/conseillers/fiche/apporteur-affaires/etapes"
          "(.*)/(calculatrice-3-modes|3-mode-calculator)(?(?=\?)(.+)|)$" => "/simulateurs/3modes"
          "(.*)/(simulateur-frais-de-notaire|notary-fees-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/notaire"
          "(.*)/(simulateur-capacite-emprunt|borrowing-capacity-simulator)(?(?=\?)(.+)|)$" => "/simulateurs/pret-immo"
          "(.*)/(simulateur-pret-taux-zero|tips-and-tools)(?(?=\?)(.+)|)$" => "/simulateurs/pret-taux-zero"
          "(.*)/(favoris|favorites)(?(?=\?)(.+)|)$" => "/favoris"
          "(.*)/(comparateur)(?(?=\?)(.+)|)$" => "/comparateur"
          "(.*)/(preventes)/(\w+)/(\w+)/([\w-]+)-(\w+)-(\w+)(?(?=\?)(.+)|)$" => "/preventes/recherche/fiche"
          "(.*)/about-us/our-set-of-services$" => "/qui-sommes-nous/nos-services-et-outils"
          "(.*)/about-us/our-network$" => "/qui-sommes-nous/notre-reseau"
          "(.*)/about-us/our-international-department$" => "/qui-sommes-nous/our-international-department"
          "(.*)/about-us/our-visibility$" => "/qui-sommes-nous/our-visibility"
          "(.*)/cms/need-help$" => "/cms/besoin-daide"
          "(.*)/tips-and-tools$" => "/services"
          "(.*)/agents(?(?=\?)(.+)|)$" => "/conseillers"
          "(.*)/legal-notice$" => "/mentions-legales"
          "(.*)/cms/contact-capifrance$" => "/cms/contacter-capifrance"
          "(.*)/(general-privacy-policy|general-privacy-policy)$" => "/politique-generale-de-confidentialite"
          "(.*)/(legal-mentions-business-introducer|legal-mentions-business-introducer)$" => "/conditions-generales-apporteur-d-affaires"
          "(.*)/cms/contact-capifrance/thank-you$" => "/cms/contacter-capifrance/merci"
          "(.*)/relocate-in-france$" => "/relocate-infrance"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/auvergne-rhone-alpes$" => "/relocate-in-france/region/auvergne-rhone-alpes"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bourgogne-franche-comte$" => "/relocate-in-france/region/bourgogne-franche-comte"
          "(.*)/relocate-in-france/region/bretagne/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/bretagne$" => "/relocate-in-france/region/bretagne"
          "(.*)/relocate-in-france/region/centre-val-de-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/centre-val-de-loire$" => "/relocate-in-france/region/centre-val-de-loire"
          "(.*)/relocate-in-france/region/corse/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/corse$" => "/relocate-in-france/region/corse"
          "(.*)/relocate-in-france/region/dom-tom/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/dom-tom$" => "/relocate-in-france/region/dom-tom"
          "(.*)/relocate-in-france/region/grand-est/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/grand-est$" => "/relocate-in-france/region/grand-est"
          "(.*)/relocate-in-france/region/hauts-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/hauts-de-france$" => "/relocate-in-france/region/hauts-de-france"
          "(.*)/relocate-in-france/region/ile-de-france/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/ile-de-france$" => "/relocate-in-france/region/ile-de-france"
          "(.*)/relocate-in-france/region/normandie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/normandie$" => "/relocate-in-france/region/normandie"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/nouvelle-aquitaine$" => "/relocate-in-france/region/nouvelle-aquitaine"
          "(.*)/relocate-in-france/region/occitanie/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/occitanie$" => "/relocate-in-france/region/occitanie"
          "(.*)/relocate-in-france/region/paca/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/paca$" => "/relocate-in-france/region/paca"
          "(.*)/relocate-in-france/region/pays-de-la-loire/search(?(?=\?)(.+)|)$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/relocate-in-france/region/pays-de-la-loire$" => "/relocate-in-france/region/pays-de-la-loire"
          "(.*)/rent-manage/off-plan$" => "/location-gestion/neuf"
          "(.*)/rent-manage/off-plan/thank-you$" => "/location-gestion/neuf/merci"
          "(.*)/rent-manage/manage$" => "/location-gestion/faire-gerer"
          "(.*)/rent-manage/manage/thank-you$" => "/location-gestion/faire-gerer/merci"
          "(.*)/rent-manage/luxury$" => "/location-gestion/luxe-et-prestige"
          "(.*)/rent-manage/luxury/thank-you$" => "/location-gestion/luxe-et-prestige/merci"
          "(.*)/viager/(estimation|estimate)/(.+)(?(?=/)(.+)|)$" => "/viager/vendre/estimation"
          "(.*)/viager/estimate/thank-you$" => "/viager/vendre/estimation/merci"
          "(.*)/businesses-trades/estimation/commercial-walls/thank-you$" => "/commerces/ceder/estimation-mur/merci"
          "(.*)/luxury/estimation/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/luxury/estimate/thank-you$" => "/prestige/vendre/estimation/merci"
          "(.*)/estimer/etapes/resultat/(.*)" => "/estimer/resultat"
          "/estimate/estimate-rdv" => "/estimer/estimer-rdv"
          "/estimate/estimate-rdv/thank-you" => "/estimer/estimer-rdv/merci"
          "(.*)/conseillers/estimation(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/conseillers/estimation-luxe-prestige(?(?=/)(.+)|)$" => "/estimer"
          "(.*)/conseillers/estimation-luxe-prestige/etapes(?(?=/)(.+)|)$" => "/estimer/etapes"
          "(.*)conseillers/estimation-luxe-prestige/etapes/.*/resultat/(.*)" => "/estimer/resultat-agent"
          "(.*)/estimer-appartement(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-maison(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige(?(?=\?)(.+)|)$" => "/estimer"
          "(.*)/estimer-luxe-prestige/etapes(?(?=\?)(.+)|)$" => "/estimer/etapes"
          "(.*)/estimer-luxe-prestige/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-appartement/etapes$" => "/estimer/etapes"
          "(.*)/estimer-maison/etapes$" => "/estimer/etapes"
          "(.*)/estimer-appartement/etapes/resultat/(.*)" => "/estimer/resultat"
          "(.*)/estimer-maison/etapes/resultat/(.*)" => "/estimer/resultat"
          "/([\w*._]*)(?(?=\?)(.+)|)$" => "/conseillers/fiche"
        ]
        "blog" => array:1 [
          "route" => "/blog"
        ]
        "google_tag_manager_key" => "GTM-XXXXX"
        "geolocation" => array:3 [
          "city" => "Paris"
          "lat" => 48.856614
          "lng" => 2.3522219
        ]
        "emails" => array:1 [
          "regex" => "/([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+)/"
        ]
        "access_token" => "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjowLCJlbWFpbCI6ImFkbWluQGRpZ2l0cmVncm91cC5jb20iLCJyb2xlIjpbIkFETUlOIl0sInJ1bGVzIjpbeyJhY3Rpb25zIjpbInJlYWQiLCJ3cml0ZSIsImRlbGV0ZSJdLCJzdWJqZWN0IjoiYW55In1dfSwiaWF0IjoxNTUyNTgwNDI4fQ.SQdTRJQEUlvHMTn6_3pNwYDCM3aj2Taw-_bNjK3NBhM"
        "mapping_url_subdomain" => array:28 [
          "alsace" => "annonces/achat?adresse=Grand%20Est"
          "auvergne" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "bourgogne" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "bretagne" => "annonces/achat?adresse=Bretagne"
          "centre" => "annonces/achat?adresse=Centre-Val%20de%20Loire"
          "champagne-ardenne" => "annonces/achat?adresse=Grand%20Est"
          "corse" => "annonces/achat?adresse=Corse"
          "franche-comte" => "annonces/achat?adresse=Bourgogne%20Franche-Comté"
          "guadeloupe" => "annonces/achat?affichage=grid-view&adresse=Guadeloupe"
          "guyane" => "annonces/achat?affichage=grid-view&adresse=Guyane%20française"
          "ile-de-france" => "annonces/achat?adresse=Île-de-France"
          "languedoc-roussillon" => "annonces/achat?adresse=Occitanie"
          "limousin" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "lorraine" => "annonces/achat?adresse=Grand%20Est"
          "martinique" => "annonces/achat?affichage=grid-view&adresse=Martinique"
          "midi-pyrenees" => "annonces/achat?adresse=Occitanie"
          "nord-pas-de-calais" => "annonces/achat?adresse=Hauts-de-France"
          "basse-normandie" => "annonces/achat?adresse=Normandie"
          "haute-normandie" => "annonces/achat?adresse=Normandie"
          "pays-de-la-loire" => "annonces/achat?adresse=Pays%20de%20la%20Loire"
          "picardie" => "annonces/achat?adresse=Hauts-de-France"
          "poitou-charentes" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "paca" => "annonces/achat?adresse=PACA"
          "reunion" => "annonces/achat?adresse=La%20Réunion"
          "rhone-alpes" => "annonces/achat?adresse=Auvergne-Rhône-Alpes"
          "exclusif" => "annonces/achat?exclusif=true"
          "medoc" => "annonces/achat?adresse=Nouvelle-Aquitaine"
          "commerce" => "commerces"
        ]
        "background-regions" => array:18 [
          "Hauts-de-France, France" => "bgmoteur_annonces-hautsdefrance.jpg"
          "Normandie, France" => "bgmoteur_annonces-normandie.jpg"
          "Île-de-France, France" => "bgmoteur_annonces-iledefrance.jpg"
          "Bretagne, France" => "bgmoteur_annonces-bretagne.jpg"
          "Auvergne-Rhône-Alpes, France" => "bgmoteur_annonces-auvergnerhonealpes.jpg"
          "Bourgogne Franche-Comté, France" => "bgmoteur_annonces-bourgognefranchecompte.jpg"
          "Centre-Val de Loire, France" => "bgmoteur_annonces-centrevaldeloire.jpg"
          "Pays de la Loire, France" => "bgmoteur_annonces-valdeloire.jpg"
          "Nouvelle-Aquitaine, France" => "bgmoteur_annonces-nouvelleaquitaine.jpg"
          "Occitanie, France" => "bgmoteur_annonces-occitanie.jpg"
          "PACA, France" => "bgmoteur_annonces-paca.jpg"
          "Corse, France" => "bgmoteur_annonces-corse.jpg"
          "Grand Est, France" => "bgmoteur_annonces-grandest.jpg"
          "Guadeloupe" => "bgmoteur_annonces-guadeloupe.jpg"
          "Arrondissement de Cayenne, France" => "bgmoteur_annonces-guyane.jpg"
          "La Réunion" => "bgmoteur_annonces-lareunion.jpg"
          "Martinique" => "bgmoteur_annonces-martinique.jpg"
          "Mayotte" => "bgmoteur_annonces-mayotte.jpg"
        ]
        "site_en" => "https://www.capifrance.fr/en"
        "site_fr" => "https://www.capifrance.fr"
        "activityStatus" => "SELLER"
        "partnerId" => "capifrance"
        "domain" => "capifrance"
        "fallback-imgs" => array:2 [
          "property" => "theme://images/img_default.png"
          "agent" => "theme://images/conseiller-default.jpg"
        ]
        "flags" => array:12 [
          "Français" => "FR"
          "Anglais" => "EN"
          "Italien" => "IT"
          "Allemand" => "DE"
          "Espagnol" => "ES"
          "Néerlandais" => "NL"
          "Arabe" => "AR"
          "Russe" => "RU"
          "Portugais" => "PT"
          "Danois" => "DA"
          "Chinois" => "CN"
          "Ukrainien" => "RU"
        ]
        "excluded-agent-specs" => array:1 [
          0 => "Défiscalisation"
        ]
        "new-presale-notification" => array:3 [
          "subject" => "Nouvelle Prévente"
          "to" => "[email protected]"
          "cc" => "[email protected]"
        ]
        "property_pdf" => array:1 [
          "file_name" => "Fiche_bien_"
        ]
        "send-presale-to-intra" => array:2 [
          "method" => "POST"
          "endpoint" => "https://intranet.digitregroup.io/graphql/"
        ]
        "exclude_avis_agent" => array:5 [
          0 => "11356"
          1 => "9609"
          2 => "97"
          3 => "4890"
          4 => "11612"
        ]
        "include_PIS" => array:62 [
          0 => "[email protected]"
          1 => "[email protected]"
          2 => "[email protected]"
          3 => "[email protected]"
          4 => "[email protected]"
          5 => "[email protected]"
          6 => "[email protected]"
          7 => "[email protected]"
          8 => "[email protected]"
          9 => "[email protected]"
          10 => "[email protected]"
          11 => "[email protected]"
          12 => "[email protected]"
          13 => "[email protected]"
          14 => "[email protected]"
          15 => "[email protected]"
          16 => "[email protected]"
          17 => "[email protected]"
          18 => "[email protected]"
          19 => "[email protected]"
          20 => "[email protected]"
          21 => "[email protected]"
          22 => "[email protected]"
          23 => "[email protected]"
          24 => "[email protected]"
          25 => "[email protected]"
          26 => "[email protected]"
          27 => "[email protected]"
          28 => "[email protected]"
          29 => "[email protected]"
          30 => "[email protected]"
          31 => "[email protected]"
          32 => "[email protected]"
          33 => "[email protected]"
          34 => "[email protected]"
          35 => "[email protected]"
          36 => "[email protected]"
          37 => "[email protected]"
          38 => "[email protected]"
          39 => "[email protected]"
          40 => "[email protected]"
          41 => "[email protected]"
          42 => "[email protected]"
          43 => "[email protected]"
          44 => "[email protected]"
          45 => "[email protected]"
          46 => "[email protected]"
          47 => "[email protected]"
          48 => "[email protected]"
          49 => "[email protected]"
          50 => "[email protected]"
          51 => "[email protected]"
          52 => "[email protected]"
          53 => "[email protected]"
          54 => "[email protected]"
          55 => "[email protected]"
          56 => "[email protected]"
          57 => "[email protected]"
          58 => "[email protected]"
          59 => "[email protected] "
          60 => "[email protected]"
          61 => "[email protected]"
        ]
        "exclude_apporteur_agent" => array:1 [
          0 => "325"
        ]
        "no_show_sold_props_agent" => array:1 [
          0 => "97"
        ]
        "drimki-iframe-url" => "https://formulaires.drimki.fr/en/estimation/partners/capifrance"
        "intranet-url" => "https://intranet.digitregroup.io"
      ]
      "uri" => Uri {#139}
      "assets" => Assets {#251}
      "taxonomy" => Taxonomy {#422}
      "browser" => Browser {#473}
      "base_dir" => "/var/app/current"
      "home_url" => "/en"
      "base_url" => "/en"
      "base_url_absolute" => "https://www.capifrance.fr/en"
      "base_url_relative" => "/en"
      "base_url_simple" => ""
      "theme_dir" => "/var/app/current/user/themes/capifrance"
      "theme_url" => "/user/themes/capifrance"
      "html_lang" => "en"
      "language_codes" => LanguageCodes {#474}
      "breadcrumbs" => Breadcrumbs {#1443}
      "form" => Form {#1447}
      "form_max_filesize" => 15
      "form_json_response" => []
      "pages" => Page {#487}
      "page" => Page {#751}
      "header" => {#752}
      "media" => Media {#1457}
      "content" => ""
    ]
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Service
/
OutputServiceProvider.php
 
namespace Grav\Common\Service;
 
use Grav\Common\Page\Interfaces\PageInterface;
use Grav\Common\Twig\Twig;
use Pimple\Container;
use Pimple\ServiceProviderInterface;
 
class OutputServiceProvider implements ServiceProviderInterface
{
    public function register(Container $container)
    {
        $container['output'] = function ($c) {
            /** @var Twig $twig */
            $twig = $c['twig'];
 
            /** @var PageInterface $page */
            $page = $c['page'];
 
            return $twig->processSite($page->templateFormat());
        };
    }
}
 
Arguments
  1. "html"
    
/
var
/
app
/
current
/
vendor
/
pimple
/
pimple
/
src
/
Pimple
/
Container.php
    {
        if (!isset($this->keys[$id])) {
            throw new UnknownIdentifierException($id);
        }
 
        if (
            isset($this->raw[$id])
            || !\is_object($this->values[$id])
            || isset($this->protected[$this->values[$id]])
            || !\method_exists($this->values[$id], '__invoke')
        ) {
            return $this->values[$id];
        }
 
        if (isset($this->factories[$this->values[$id]])) {
            return $this->values[$id]($this);
        }
 
        $raw = $this->values[$id];
        $val = $this->values[$id] = $raw($this);
        $this->raw[$id] = $raw;
 
        $this->frozen[$id] = true;
 
        return $val;
    }
 
    /**
     * Checks if a parameter or an object is set.
     *
     * @param string $id The unique identifier for the parameter or object
     *
     * @return bool
     */
    public function offsetExists($id)
    {
        return isset($this->keys[$id]);
    }
 
    /**
Arguments
  1. Grav {#3}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
RenderProcessor.php
 
namespace Grav\Common\Processors;
 
use Grav\Common\Page\Interfaces\PageInterface;
use Grav\Framework\Psr7\Response;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class RenderProcessor extends ProcessorBase
{
    public $id = 'render';
    public $title = 'Render';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
 
        $container = $this->container;
        $output =  $container['output'];
 
        if ($output instanceof ResponseInterface) {
            return $output;
        }
 
        ob_start();
 
        // Use internal Grav output.
        $container->output = $output;
        $container->fireEvent('onOutputGenerated');
 
        echo $container->output;
 
        // remove any output
        $container->output = '';
 
        $this->container->fireEvent('onOutputRendered');
 
        $html = ob_get_clean();
 
Arguments
  1. "output"
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#1190}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
DebuggerAssetsProcessor.php
 
namespace Grav\Common\Processors;
 
use Grav\Framework\Psr7\Response;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class DebuggerAssetsProcessor extends ProcessorBase
{
    public $id = 'debugger_assets';
    public $title = 'Debugger Assets';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $this->container['debugger']->addAssets();
        $this->stopTimer();
 
        return $handler->handle($request);
 
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#1192}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
PagesProcessor.php
            $this->addMessage("Routed to page {$page->rawRoute()} (type: {$page->template()}) [Not Found fallback]");
        } else {
            $this->addMessage("Routed to page {$page->rawRoute()} (type: {$page->template()})");
 
            $task = $this->container['task'];
            $action = $this->container['action'];
            if ($task) {
                $event = new Event(['task' => $task, 'page' => $page]);
                $this->container->fireEvent('onPageTask', $event);
                $this->container->fireEvent('onPageTask.' . $task, $event);
            } elseif ($action) {
                $event = new Event(['action' => $action, 'page' => $page]);
                $this->container->fireEvent('onPageAction', $event);
                $this->container->fireEvent('onPageAction.' . $action, $event);
            }
        }
 
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#476}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
TwigProcessor.php
 */
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class TwigProcessor extends ProcessorBase
{
    public $id = 'twig';
    public $title = 'Twig';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $this->container['twig']->init();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#253}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
AssetsProcessor.php
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class AssetsProcessor extends ProcessorBase
{
    public $id = '_assets';
    public $title = 'Assets';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $this->container['assets']->init();
        $this->container->fireEvent('onAssetsInitialized');
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#250}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
SchedulerProcessor.php
namespace Grav\Common\Processors;
 
use RocketTheme\Toolbox\Event\Event;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class SchedulerProcessor extends ProcessorBase
{
    public $id = '_scheduler';
    public $title = 'Scheduler';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $scheduler = $this->container['scheduler'];
        $this->container->fireEvent('onSchedulerInitialized', new Event(['scheduler' => $scheduler]));
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#220}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
BackupsProcessor.php
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class BackupsProcessor extends ProcessorBase
{
    public $id = '_backups';
    public $title = 'Backups';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $backups = $this->container['backups'];
        $backups->init();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#217}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
TasksProcessor.php
                    }
 
                    $this->stopTimer();
 
                    return $response;
 
                } catch (NotFoundException $e) {
                    // Task not found: Let it pass through.
                }
            }
 
            if ($task) {
                $this->container->fireEvent('onTask.' . $task);
            } elseif ($action) {
                $this->container->fireEvent('onAction.' . $action);
            }
        }
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#215}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
RequestProcessor.php
        $uri = $request->getUri();
        $ext = mb_strtolower(pathinfo($uri->getPath(), PATHINFO_EXTENSION));
 
        $request = $request
            ->withAttribute('grav', $this->container)
            ->withAttribute('time', $_SERVER['REQUEST_TIME_FLOAT'] ?? GRAV_REQUEST_TIME)
            ->withAttribute('route', Uri::getCurrentRoute()->withExtension($ext))
            ->withAttribute('referrer', $this->container['uri']->referrer());
 
        $event = new RequestHandlerEvent(['request' => $request, 'handler' => $handler]);
        /** @var RequestHandlerEvent $event */
        $event = $this->container->fireEvent('onRequestHandlerInit', $event);
        $response = $event->getResponse();
        $this->stopTimer();
 
        if ($response) {
            return $response;
        }
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#212}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#212}
    
  2. RequestHandler {#211}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
ThemesProcessor.php
 */
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class ThemesProcessor extends ProcessorBase
{
    public $id = 'themes';
    public $title = 'Themes';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $this->container['themes']->init();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
  2. RequestHandler {#201}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
PluginsProcessor.php
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class PluginsProcessor extends ProcessorBase
{
    public $id = 'plugins';
    public $title = 'Plugins';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        // TODO: remove in 2.0.
        $this->container['accounts'];
        $this->container['plugins']->init();
        $this->container->fireEvent('onPluginsInitialized');
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
  2. RequestHandler {#144}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
InitializeProcessor.php
        }
 
        /** @var Uri $uri */
        $uri = $this->container['uri'];
        $uri->init();
 
        // Redirect pages with trailing slash if configured to do so.
        $path = $uri->path() ?: '/';
        if ($path !== '/'
            && $config->get('system.pages.redirect_trailing_slash', false)
            && Utils::endsWith($path, '/')) {
 
            $redirect = (string) $uri::getCurrentRoute()->toString();
            $this->container->redirect($redirect);
        }
 
        $this->container->setLocale();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
  2. RequestHandler {#137}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
DebuggerProcessor.php
 */
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class DebuggerProcessor extends ProcessorBase
{
    public $id = '_debugger';
    public $title = 'Init Debugger';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $this->container['debugger']->init();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
  2. RequestHandler {#135}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
ErrorsProcessor.php
 */
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class ErrorsProcessor extends ProcessorBase
{
    public $id = '_errors';
    public $title = 'Error Handlers Reset';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $this->container['errors']->resetHandlers();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
  2. RequestHandler {#123}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
LoggerProcessor.php
 
        /** @var Config $config */
        $config = $grav['config'];
 
        switch ($config->get('system.log.handler', 'file')) {
            case 'syslog':
                $log = $grav['log'];
                $log->popHandler();
 
                $facility = $config->get('system.log.syslog.facility', 'local6');
                $logHandler = new SyslogHandler('grav', $facility);
                $formatter = new LineFormatter("%channel%.%level_name%: %message% %extra%");
                $logHandler->setFormatter($formatter);
 
                $log->pushHandler($logHandler);
                break;
        }
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
  2. RequestHandler {#100}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Processors
/
ConfigurationProcessor.php
 
namespace Grav\Common\Processors;
 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
 
class ConfigurationProcessor extends ProcessorBase
{
    public $id = '_config';
    public $title = 'Configuration';
 
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler) : ResponseInterface
    {
        $this->startTimer();
        $this->container['config']->init();
        $this->container['plugins']->setup();
        $this->stopTimer();
 
        return $handler->handle($request);
    }
}
 
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
    private $handler;
 
    /** @var ContainerInterface|null */
    private $container;
 
    /**
     * {@inheritdoc}
     * @throws InvalidArgumentException
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $middleware = array_shift($this->middleware);
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
  2. RequestHandler {#93}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Framework
/
RequestHandler
/
Traits
/
RequestHandlerTrait.php
 
        // Use default callable if there is no middleware.
        if ($middleware === null) {
            return \call_user_func($this->handler, $request);
        }
 
        if ($middleware instanceof MiddlewareInterface) {
            return $middleware->process($request, clone $this);
        }
 
        if (null === $this->container || !$this->container->has($middleware)) {
            throw new InvalidArgumentException(
                sprintf('The middleware is not a valid %s and is not passed in the Container', MiddlewareInterface::class),
                $middleware
            );
        }
 
        array_unshift($this->middleware, $this->container->get($middleware));
 
        return $this->handle($request);
    }
}
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
system
/
src
/
Grav
/
Common
/
Grav.php
                },
                'debuggerAssetsProcessor' => function () {
                    return new DebuggerAssetsProcessor($this);
                },
                'renderProcessor' => function () {
                    return new RenderProcessor($this);
                },
            ]
        );
 
        $default = function (ServerRequestInterface $request) {
            return new Response(404);
        };
 
        /** @var Debugger $debugger */
        $debugger = $this['debugger'];
 
        $collection = new RequestHandler($this->middleware, $default, $container);
 
        $response = $collection->handle($this['request']);
 
        $this->header($response);
        echo $response->getBody();
 
        $debugger->render();
 
        register_shutdown_function([$this, 'shutdown']);
    }
 
    /**
     * Set the system locale based on the language and configuration
     */
    public function setLocale()
    {
        // Initialize Locale if set and configured.
        if ($this['language']->enabled() && $this['config']->get('system.languages.override_locale')) {
            $language = $this['language']->getLanguage();
            setlocale(LC_ALL, \strlen($language) < 3 ? ($language . '_' . strtoupper($language)) : $language);
        } elseif ($this['config']->get('system.default_locale')) {
            setlocale(LC_ALL, $this['config']->get('system.default_locale'));
Arguments
  1. ServerRequest {#66}
    
/
var
/
app
/
current
/
index.php
 
// Set timezone to default, falls back to system if php.ini not set
date_default_timezone_set(@date_default_timezone_get());
 
// Set internal encoding if mbstring loaded
if (!\extension_loaded('mbstring')) {
    die("'mbstring' extension is not loaded.  This is required for Grav to run correctly");
}
mb_internal_encoding('UTF-8');
 
// Get the Grav instance
$grav = Grav::instance(
    array(
        'loader' => $loader
    )
);
 
// Process the page
try {
    $grav->process();
} catch (\Error $e) {
    $grav['log']->error('Error.' . __CLASS__ . ':' . __METHOD__ . ': ' . print_r([
            'msg'   => $e->getMessage(),
            'url'   => $grav['page']->url(),
            'uri'   => $grav['uri']->route(),
            'trace' => $e->getTraceAsString(),
        ], true));
    $grav->fireEvent('onFatalException', new Event(array('exception' => $e)));
    throw $e;
} catch (\Exception $e) {
    $grav['log']->error('Exception.' . __CLASS__ . ':' . __METHOD__ . ': ' . print_r([
            'msg'   => $e->getMessage(),
            'url'   => $grav['page']->url(),
            'uri'   => $grav['uri']->route(),
            'trace' => $e->getTraceAsString(),
        ], true));
    $grav->fireEvent('onFatalException', new Event(array('exception' => $e)));
    throw $e;
}
 

Environment & details:

empty
empty
empty
empty
Key Value
redirect_after_login
"/conseillers/fiche"
redirect_after_auth
"/mon-compte"
user
User {#1187}
Key Value
TEMP
"/tmp"
TMPDIR
"/tmp"
TMP
"/tmp"
HOSTNAME
""
USER
"webapp"
HOME
"/home/webapp"
HTTP_CONNECTION
"keep-alive"
HTTP_X_FORWARDED_PROTO
"https"
HTTP_X_FORWARDED_PORT
"443"
HTTP_X_FORWARDED_FOR
"44.210.78.150, 172.70.42.205"
HTTP_USER_AGENT
"claudebot"
HTTP_CF_VISITOR
"{"scheme":"https"}"
HTTP_CF_RAY
"86bef48558bc3b0c-IAD"
HTTP_CF_IPCOUNTRY
"US"
HTTP_CF_CONNECTING_IP
"44.210.78.150"
HTTP_CDN_LOOP
"cloudflare"
HTTP_ACCEPT_ENCODING
"gzip, br"
HTTP_ACCEPT
"*/*"
HTTP_HOST
"www.capifrance.fr"
SCRIPT_FILENAME
"/var/www/html/index.php"
PATH_INFO
""
REDIRECT_STATUS
"200"
SERVER_NAME
"_"
SERVER_PORT
"80"
SERVER_ADDR
"10.20.5.141"
REMOTE_PORT
"4270"
REMOTE_ADDR
"10.20.12.28"
SERVER_SOFTWARE
"nginx/1.14.1"
GATEWAY_INTERFACE
"CGI/1.1"
REQUEST_SCHEME
"http"
SERVER_PROTOCOL
"HTTP/1.1"
DOCUMENT_ROOT
"/var/www/html"
DOCUMENT_URI
"/index.php"
REQUEST_URI
"/en/agents/david.azoulay"
SCRIPT_NAME
"/index.php"
CONTENT_LENGTH
""
CONTENT_TYPE
""
REQUEST_METHOD
"GET"
QUERY_STRING
""
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1711705821.0761
REQUEST_TIME
1711705821
Key Value
TEMP
"/tmp"
TMPDIR
"/tmp"
TMP
"/tmp"
HOSTNAME
""
USER
"webapp"
HOME
"/home/webapp"
HTTP_CONNECTION
"keep-alive"
HTTP_X_FORWARDED_PROTO
"https"
HTTP_X_FORWARDED_PORT
"443"
HTTP_X_FORWARDED_FOR
"44.210.78.150, 172.70.42.205"
HTTP_USER_AGENT
"claudebot"
HTTP_CF_VISITOR
"{"scheme":"https"}"
HTTP_CF_RAY
"86bef48558bc3b0c-IAD"
HTTP_CF_IPCOUNTRY
"US"
HTTP_CF_CONNECTING_IP
"44.210.78.150"
HTTP_CDN_LOOP
"cloudflare"
HTTP_ACCEPT_ENCODING
"gzip, br"
HTTP_ACCEPT
"*/*"
HTTP_HOST
"www.capifrance.fr"
SCRIPT_FILENAME
"/var/www/html/index.php"
PATH_INFO
""
REDIRECT_STATUS
"200"
SERVER_NAME
"_"
SERVER_PORT
"80"
SERVER_ADDR
"10.20.5.141"
REMOTE_PORT
"4270"
REMOTE_ADDR
"10.20.12.28"
SERVER_SOFTWARE
"nginx/1.14.1"
GATEWAY_INTERFACE
"CGI/1.1"
REQUEST_SCHEME
"http"
SERVER_PROTOCOL
"HTTP/1.1"
DOCUMENT_ROOT
"/var/www/html"
DOCUMENT_URI
"/index.php"
REQUEST_URI
"/en/agents/david.azoulay"
SCRIPT_NAME
"/index.php"
CONTENT_LENGTH
""
CONTENT_TYPE
""
REQUEST_METHOD
"GET"
QUERY_STRING
""
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1711705821.0761
REQUEST_TIME
1711705821
0. Whoops\Handler\PrettyPageHandler
1. Whoops\Handler\CallbackHandler