Error 500 Internal Server Error

GET https://kplan.kameldigitalsn.com/dashboard/insights?department=&periodMonth=9&periodYear=2025&scope=ORGANIZATION

Forwarded to ErrorController (559fb5)

Exceptions

HTTP/2 401 returned for "https://api.openai.com/v1/chat/completions".

Exception

Symfony\Component\HttpClient\Exception\ ClientException

Show exception properties
Symfony\Component\HttpClient\Exception\ClientException {#2053
  -response: Symfony\Component\HttpClient\Response\TraceableResponse {#1992
    -client: Symfony\Component\HttpClient\UriTemplateHttpClient {#976
      -expander: null
      -defaultVars: []
      -client: Symfony\Component\HttpClient\CurlHttpClient {#980
        -defaultOptions: array:31 [
          "auth_basic" => null
          "auth_bearer" => null
          "query" => []
          "headers" => []
          "body" => ""
          "json" => null
          "user_data" => null
          "max_redirects" => 20
          "http_version" => null
          "base_uri" => null
          "buffer" => true
          "on_progress" => null
          "resolve" => []
          "proxy" => null
          "no_proxy" => null
          "timeout" => null
          "max_duration" => 0
          "bindto" => "0"
          "verify_peer" => true
          "verify_host" => true
          "cafile" => null
          "capath" => null
          "local_cert" => null
          "local_pk" => null
          "passphrase" => null
          "ciphers" => null
          "peer_fingerprint" => null
          "capture_peer_cert_chain" => false
          "crypto_method" => 33
          "extra" => []
          "auth_ntlm" => null
        ]
        -logger: Monolog\Logger {#950
          #name: "http_client"
          #handlers: array:2 [
            0 => Monolog\Handler\StreamHandler {#525
              #level: Monolog\Level {#65
                +name: "Debug"
                +value: 100
              }
              #bubble: true
              #processors: array:1 [
                0 => Monolog\Processor\PsrLogMessageProcessor {#523
                  -dateFormat: null
                  -removeUsedContextFields: false
                }
              ]
              #formatter: Monolog\Formatter\JsonFormatter {#88
                #dateFormat: "Y-m-d\TH:i:sP"
                #maxNormalizeDepth: 9
                #maxNormalizeItemCount: 1000
                -jsonEncodeOptions: 2099008
                #basePath: ""
                #batchMode: 1
                #appendNewline: true
                #ignoreEmptyContextAndExtra: false
                #includeStacktraces: false
              }
              #streamChunkSize: 53687091
              #stream: stream resource @319
                timed_out: false
                blocked: true
                eof: false
                wrapper_type: "PHP"
                stream_type: "STDIO"
                mode: "a"
                unread_bytes: 0
                seekable: false
                uri: "php://stderr"
                options: []
              }
              #url: "php://stderr"
              -errorMessage: null
              #filePermission: null
              #useLocking: false
              #fileOpenMode: "a"
              -dirCreated: true
              -retrying: false
            }
            1 => Symfony\Bridge\Monolog\Handler\ConsoleHandler {#526
              #level: Monolog\Level {#65}
              #bubble: true
              #processors: []
              #formatter: null
              -output: null
              -verbosityLevelMap: array:5 [
                16 => Monolog\Level {#508
                  +name: "Error"
                  +value: 400
                }
                32 => Monolog\Level {#507
                  +name: "Warning"
                  +value: 300
                }
                64 => Monolog\Level {#506
                  +name: "Notice"
                  +value: 250
                }
                128 => Monolog\Level {#503
                  +name: "Info"
                  +value: 200
                }
                256 => Monolog\Level {#65}
              ]
              -consoleFormatterOptions: []
            }
          ]
          #processors: array:1 [
            0 => Symfony\Bridge\Monolog\Processor\DebugProcessor {#515
              -records: array:3 [
                "" => array:1 [
                  0 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.928+02:00"
                    "message" => "Warning: Zend OPcache API is restricted by "restrict_api" configuration directive"
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:1 [
                      "exception" => Symfony\Component\ErrorHandler\Exception\SilencedErrorContext {#489
                        +count: 8
                        -severity: E_WARNING
                        trace: {
                          /home/batrams/Kplan/vendor/symfony/error-handler/DebugClassLoader.php:296 {
                            Symfony\Component\ErrorHandler\DebugClassLoader->loadClass(string $class): void …
                            ›     // no-op} elseif (\function_exists('opcache_is_script_cached') && @opcache_is_script_cached($file)) {    include $file;
                          }
                          /home/batrams/Kplan/vendor/doctrine/doctrine-bundle/src/DoctrineBundle.php:132 {
                            › 
                            ›     $this->autoloader = Autoloader::register($dir, $namespace, $proxyGenerator);}
                          }
                        }
                      }
                    ]
                    "channel" => "php"
                  ]
                ]
                8 => array:40 [
                  0 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.931+02:00"
                    "message" => "Matched route "{route}"."
                    "priority" => 200
                    "priorityName" => "INFO"
                    "context" => array:4 [
                      "route" => "app_dashboard_insights"
                      "route_parameters" => array:2 [
                        "_route" => "app_dashboard_insights"
                        "_controller" => "App\Controller\Dashboard\DashboardController::dashboardInsights"
                      ]
                      "request_uri" => "https://kplan.kameldigitalsn.com/dashboard/insights?department=&periodMonth=9&periodYear=2025&scope=ORGANIZATION"
                      "method" => "GET"
                    ]
                    "channel" => "request"
                  ]
                  1 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.948+02:00"
                    "message" => "Connecting with parameters {params}"
                    "priority" => 200
                    "priorityName" => "INFO"
                    "context" => array:1 [
                      "params" => array:11 [
                        "dbname" => "batramskplan"
                        "host" => "batramskplan.mysql.db"
                        "port" => "3306"
                        "user" => "batramskplan"
                        "password" => "<redacted>"
                        "use_savepoints" => true
                        "driver" => "pdo_mysql"
                        "idle_connection_ttl" => 600
                        "driverOptions" => []
                        "defaultTableOptions" => array:1 [
                          "collation" => "utf8mb4_unicode_ci"
                        ]
                        "charset" => "utf8mb4"
                      ]
                    ]
                    "channel" => "doctrine"
                  ]
                  2 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.953+02:00"
                    "message" => "User Deprecated: Using ArrayAccess on Doctrine\ORM\Mapping\FieldMapping is deprecated and will not be possible in Doctrine ORM 4.0. Use the corresponding property instead. (ArrayAccessImplementation.php:31 called by AbstractAnnotationDriver.php:134, https://github.com/doctrine/orm/pull/11211, package doctrine/orm)"
                    "priority" => 200
                    "priorityName" => "INFO"
                    "context" => array:1 [
                      "exception" => ErrorException {#754
                        #message: "User Deprecated: Using ArrayAccess on Doctrine\ORM\Mapping\FieldMapping is deprecated and will not be possible in Doctrine ORM 4.0. Use the corresponding property instead. (ArrayAccessImplementation.php:31 called by AbstractAnnotationDriver.php:134, https://github.com/doctrine/orm/pull/11211, package doctrine/orm)"
                        #code: 0
                        #file: "/home/batrams/Kplan/vendor/doctrine/deprecations/src/Deprecation.php"
                        #line: 208
                        #severity: E_USER_DEPRECATED
                        trace: {
                          /home/batrams/Kplan/vendor/doctrine/deprecations/src/Deprecation.php:208 {
                            Doctrine\Deprecations\Deprecation::delegateTriggerToBackend(string $message, array $backtrace, string $link, string $package): void …
                            › 
                            ›     @trigger_error($message, E_USER_DEPRECATED);}
                          }
                          /home/batrams/Kplan/vendor/doctrine/deprecations/src/Deprecation.php:108 {
                            Doctrine\Deprecations\Deprecation::trigger(string $package, string $link, string $message, ...$args): void …
                            › 
                            ›     self::delegateTriggerToBackend($message, $backtrace, $link, $package);}
                          }
                          /home/batrams/Kplan/vendor/doctrine/orm/src/Mapping/ArrayAccessImplementation.php:31 {
                            Doctrine\ORM\Mapping\FieldMapping->offsetGet(mixed $offset): mixed …
                            › {    Deprecation::trigger(        'doctrine/orm',
                          }
                          /home/batrams/Kplan/vendor/gedmo/doctrine-extensions/src/Mapping/Driver/AbstractAnnotationDriver.php:134 {
                            Gedmo\Mapping\Driver\AbstractAnnotationDriver->isValidField($meta, $field) …
                            › 
                            ›     return $mapping && in_array($mapping['type'], $this->validTypes, true);}
                          }
                          /home/batrams/Kplan/vendor/gedmo/doctrine-extensions/src/Timestampable/Mapping/Driver/Attribute.php:74 {
                            Gedmo\Timestampable\Mapping\Driver\Attribute->readExtendedMetadata($meta, array &$config) …
                            › 
                            › if (!$this->isValidField($meta, $field)) {    throw new InvalidMappingException("Field - [{$field}] type is not valid and must be 'date', 'datetime' or 'time' in class - {$meta->getName()}");
                          }
                          /home/batrams/Kplan/vendor/gedmo/doctrine-extensions/src/Mapping/Driver/Chain.php:82 {
                            Gedmo\Mapping\Driver\Chain->readExtendedMetadata($meta, array &$config) …
                            › if (0 === strpos($meta->getName(), $namespace)) {    $extendedMetadata = $driver->readExtendedMetadata($meta, $config);}
                          /home/batrams/Kplan/vendor/gedmo/doctrine-extensions/src/Mapping/ExtensionMetadataFactory.php:155 {
                            Gedmo\Mapping\ExtensionMetadataFactory->getExtensionMetadata($meta) …
                            › 
                            › $extendedMetadata = $this->driver->readExtendedMetadata($meta, $config);}
                          /home/batrams/Kplan/vendor/gedmo/doctrine-extensions/src/Mapping/MappedEventSubscriber.php:242 {
                            Gedmo\Mapping\MappedEventSubscriber->loadMetadataForObjectClass(ObjectManager $objectManager, $metadata) …
                            › try {    $config = $factory->getExtensionMetadata($metadata);} catch (\ReflectionException $e) {
                          }
                          /home/batrams/Kplan/vendor/gedmo/doctrine-extensions/src/AbstractTrackingListener.php:65 {
                            Gedmo\AbstractTrackingListener->loadClassMetadata(EventArgs $eventArgs) …
                            › {    $this->loadMetadataForObjectClass($eventArgs->getObjectManager(), $eventArgs->getClassMetadata());}
                          }
                          /home/batrams/Kplan/vendor/symfony/doctrine-bridge/ContainerAwareEventManager.php:63 {
                            Symfony\Bridge\Doctrine\ContainerAwareEventManager->dispatchEvent(string $eventName, ?EventArgs $eventArgs = null): void …
                            › foreach ($this->listeners[$eventName] as $hash => $listener) {    $listener->{$this->methods[$eventName][$hash]}($eventArgs);}
                          }
                          /home/batrams/Kplan/vendor/doctrine/orm/src/Mapping/ClassMetadataFactory.php:246 {
                            Doctrine\ORM\Mapping\ClassMetadataFactory->doLoadMetadata(ClassMetadata $class, ?ClassMetadata $parent, bool $rootEntityFound, array $nonSuperclassParents): void …
                            ›     $eventArgs = new LoadClassMetadataEventArgs($class, $this->em);    $this->evm->dispatchEvent(Events::loadClassMetadata, $eventArgs);}
                          }
                          /home/batrams/Kplan/vendor/doctrine/doctrine-bundle/src/Mapping/ClassMetadataFactory.php:18 {
                            Doctrine\Bundle\DoctrineBundle\Mapping\ClassMetadataFactory->doLoadMetadata($class, $parent, $rootEntityFound, array $nonSuperclassParents): void …
                            › {    parent::doLoadMetadata($class, $parent, $rootEntityFound, $nonSuperclassParents);}
                          /home/batrams/Kplan/vendor/doctrine/persistence/src/Persistence/Mapping/AbstractClassMetadataFactory.php:343 {
                            Doctrine\Persistence\Mapping\AbstractClassMetadataFactory->loadMetadata(string $name) …
                            › 
                            › $this->doLoadMetadata($class, $parent, $rootEntityFound, $visited);}
                          /home/batrams/Kplan/vendor/doctrine/persistence/src/Persistence/Mapping/AbstractClassMetadataFactory.php:207 {
                            Doctrine\Persistence\Mapping\AbstractClassMetadataFactory->getMetadataFor(string $className) …
                            › } else {    $loadedMetadata = $this->loadMetadata($realClassName);    $classNames     = array_combine(
                          }
                          /home/batrams/Kplan/vendor/doctrine/orm/src/EntityManager.php:220 {
                            Doctrine\ORM\EntityManager->getClassMetadata(string $className): ClassMetadata …
                            › {    return $this->metadataFactory->getMetadataFor($className);}
                          }
                          /home/batrams/Kplan/vendor/doctrine/doctrine-bundle/src/Repository/ServiceEntityRepositoryProxy.php:130 {
                            Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepositoryProxy->resolveRepository(): EntityRepository …
                            › 
                            ›     return new EntityRepository($manager, $manager->getClassMetadata($this->entityClass));}
                          }
                          /home/batrams/Kplan/vendor/doctrine/doctrine-bundle/src/Repository/ServiceEntityRepositoryProxy.php:104 {
                            Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepositoryProxy->getEntityManager(): EntityManagerInterface …
                            › {    return ($this->repository ??= $this->resolveRepository())->getEntityManager();}
                          }
                          /home/batrams/Kplan/src/Repository/DepartmentRepository.php:25 {
                            App\Repository\DepartmentRepository->__construct(ManagerRegistry $registry, UserContextService $userContextService) …
                            › parent::__construct($registry, Department::class);$this->nestedTreeRepo = $this->getEntityManager()->getRepository(Department::class);$this->userContextService = $userContextService;
                          }
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/App_KernelDevDebugContainer.php:1384 {
                            ContainerTQBsBG0\App_KernelDevDebugContainer::getDepartmentRepositoryService($container) …
                            › 
                            ›     return $container->privates['App\\Repository\\DepartmentRepository'] = new \App\Repository\DepartmentRepository(($container->services['doctrine'] ?? self::getDoctrineService($container)), $a);}
                          }
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/App_KernelDevDebugContainer.php:1419 {
                            ContainerTQBsBG0\App_KernelDevDebugContainer::getUserRepositoryService($container) …
                            › }$b = ($container->privates['App\\Repository\\DepartmentRepository'] ?? self::getDepartmentRepositoryService($container));}
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/getUserProviderService.php:24 {
                            ContainerTQBsBG0\getUserProviderService::do($container, $lazyLoad = true) …
                            › 
                            › $a = ($container->privates['App\\Repository\\UserRepository'] ?? self::getUserRepositoryService($container));}
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/App_KernelDevDebugContainer.php:642 {
                            ContainerTQBsBG0\App_KernelDevDebugContainer->load($file, $lazyLoad = true): mixed …
                            › 
                            ›     return class_exists($class, false) ? $class::do($this, $lazyLoad) : $service;}
                          }
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/getSecurity_Authenticator_FormLogin_MainService.php:45 {
                            ContainerTQBsBG0\getSecurity_Authenticator_FormLogin_MainService::do($container, $lazyLoad = true) …
                            › 
                            ›     return $container->privates['security.authenticator.form_login.main'] = new \Symfony\Component\Security\Http\Authenticator\FormLoginAuthenticator($b, ($container->privates['App\\Security\\UserProvider'] ?? $container->load('getUserProviderService')), $c, $d, ['login_path' => 'app_login', 'check_path' => 'app_login', 'enable_csrf' => true, 'use_forward' => false, 'username_parameter' => '_username', 'password_parameter' => '_password', 'csrf_parameter' => '_csrf_token', 'csrf_token_id' => 'authenticate', 'post_only' => true, 'form_only' => false]);}
                          }
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/App_KernelDevDebugContainer.php:642 {
                            ContainerTQBsBG0\App_KernelDevDebugContainer->load($file, $lazyLoad = true): mixed …
                            › 
                            ›     return class_exists($class, false) ? $class::do($this, $lazyLoad) : $service;}
                          }
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/getSecurity_Firewall_Map_Context_MainService.php:28 {
                            ContainerTQBsBG0\getSecurity_Firewall_Map_Context_MainService::do($container, $lazyLoad = true) …
                            › 
                            › $a = ($container->privates['security.authenticator.form_login.main'] ?? $container->load('getSecurity_Authenticator_FormLogin_MainService'));}
                          /home/batrams/Kplan/var/cache/dev/ContainerTQBsBG0/App_KernelDevDebugContainer.php:642 {
                            ContainerTQBsBG0\App_KernelDevDebugContainer->load($file, $lazyLoad = true): mixed …
                            › 
                            ›     return class_exists($class, false) ? $class::do($this, $lazyLoad) : $service;}
                          }
                          /home/batrams/Kplan/vendor/symfony/dependency-injection/Container.php:390 {
                            Symfony\Component\DependencyInjection\Container->getService(string|false $registry, string $id, ?string $method, string|bool $load): mixed …
                            › if (false !== $registry) {    return $this->{$registry}[$id] ??= $load ? $this->load($method) : $this->{$method}($this);}
                          }
                          /home/batrams/Kplan/vendor/symfony/dependency-injection/Argument/ServiceLocator.php:40 {
                            Symfony\Component\DependencyInjection\Argument\ServiceLocator->get(string $id): mixed …
                            ›     1 => $this->serviceMap[$id][0],    default => ($this->factory)(...$this->serviceMap[$id]),};
                          }
                          /home/batrams/Kplan/vendor/symfony/security-bundle/Security/FirewallMap.php:69 {
                            Symfony\Bundle\SecurityBundle\Security\FirewallMap->getFirewallContext(Request $request): FirewallContext …
                            › 
                            ›     return $this->container->get($contextId);}
                          }
                          /home/batrams/Kplan/vendor/symfony/security-bundle/Security/FirewallMap.php:49 {
                            Symfony\Bundle\SecurityBundle\Security\FirewallMap->getFirewallConfig(Request $request): FirewallConfig …
                            › {    return $this->getFirewallContext($request)?->getConfig();}
                          }
                          /home/batrams/Kplan/vendor/symfony/security-bundle/EventListener/FirewallListener.php:45 {
                            Symfony\Bundle\SecurityBundle\EventListener\FirewallListener->configureLogoutUrlGenerator(RequestEvent $event): void …
                            › 
                            › if ($this->map instanceof FirewallMap && $config = $this->map->getFirewallConfig($event->getRequest())) {    $this->logoutUrlGenerator->setCurrentFirewall($config->getName(), $config->getContext());
                          }
                          /home/batrams/Kplan/vendor/symfony/event-dispatcher/Debug/WrappedListener.php:115 {
                            Symfony\Component\EventDispatcher\Debug\WrappedListener->__invoke(object $event, string $eventName, EventDispatcherInterface $dispatcher): void …
                            › try {    ($this->optimizedListener ?? $this->listener)($event, $eventName, $dispatcher);} finally {
                          }
                          /home/batrams/Kplan/vendor/symfony/event-dispatcher/EventDispatcher.php:206 {
                            Symfony\Component\EventDispatcher\EventDispatcher->callListeners(iterable $listeners, string $eventName, object $event): void …
                            ›     }    $listener($event, $eventName, $this);}
                          }
                          /home/batrams/Kplan/vendor/symfony/event-dispatcher/EventDispatcher.php:56 {
                            Symfony\Component\EventDispatcher\EventDispatcher->dispatch(object $event, ?string $eventName = null): object …
                            › if ($listeners) {    $this->callListeners($listeners, $eventName, $event);}
                          }
                          /home/batrams/Kplan/vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:122 {
                            Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher->dispatch(object $event, ?string $eventName = null): object …
                            › try {    $this->dispatcher->dispatch($event, $eventName);} finally {
                          }
                          /home/batrams/Kplan/vendor/symfony/http-kernel/HttpKernel.php:159 {
                            Symfony\Component\HttpKernel\HttpKernel->handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response …
                            › $event = new RequestEvent($this, $request, $type);$this->dispatcher->dispatch($event, KernelEvents::REQUEST);}
                          /home/batrams/Kplan/vendor/symfony/http-kernel/HttpKernel.php:76 {
                            Symfony\Component\HttpKernel\HttpKernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
                            › try {    return $response = $this->handleRaw($request, $type);} catch (\Throwable $e) {
                          }
                          /home/batrams/Kplan/vendor/symfony/http-kernel/Kernel.php:182 {
                            Symfony\Component\HttpKernel\Kernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
                            › try {    return $this->getHttpKernel()->handle($request, $type, $catch);} finally {
                          }
                          /home/batrams/Kplan/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35 {
                            Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run(): int …
                            › {    $response = $this->kernel->handle($this->request);}
                          /home/batrams/Kplan/vendor/autoload_runtime.php:29 {
                            require_once …
                            ›         ->getRunner($app)        ->run());
                          }
                          /home/batrams/Kplan/public/index.php:5 {
                            › 
                            › require_once dirname(__DIR__).'/vendor/autoload_runtime.php';}
                        }
                      }
                    ]
                    "channel" => "deprecation"
                  ]
                  3 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.960+02:00"
                    "message" => "Checking for authenticator support."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "firewall_name" => "main"
                      "authenticators" => 1
                    ]
                    "channel" => "security"
                  ]
                  4 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.960+02:00"
                    "message" => "Checking support on authenticator."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "firewall_name" => "main"
                      "authenticator" => "Symfony\Component\Security\Http\Authenticator\FormLoginAuthenticator"
                    ]
                    "channel" => "security"
                  ]
                  5 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.960+02:00"
                    "message" => "Authenticator does not support the request."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "firewall_name" => "main"
                      "authenticator" => "Symfony\Component\Security\Http\Authenticator\FormLoginAuthenticator"
                    ]
                    "channel" => "security"
                  ]
                  6 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.964+02:00"
                    "message" => "Read existing security token from the session."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "key" => "_security_main"
                      "token_class" => "Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken"
                    ]
                    "channel" => "security"
                  ]
                  7 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.980+02:00"
                    "message" => "Executing statement: {sql} (parameters: {params}, types: {types})"
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:3 [
                      "sql" => "SELECT u0_.id AS id_0, u0_.email AS email_1, u0_.password AS password_2, u0_.first_name AS first_name_3, u0_.last_name AS last_name_4, u0_.date_of_birth AS date_of_birth_5, u0_.is_active AS is_active_6, u0_.confirmation_token AS confirmation_token_7, u0_.password_reset_token AS password_reset_token_8, u0_.last_login_at AS last_login_at_9, u0_.phone_number AS phone_number_10, u0_.fonction AS fonction_11, u0_.sex AS sex_12, u0_.avatar AS avatar_13, u0_.created_at AS created_at_14, u0_.updated_at AS updated_at_15, u0_.deleted_at AS deleted_at_16, u0_.id AS id_17, u0_.email AS email_18, u0_.password AS password_19, u0_.first_name AS first_name_20, u0_.last_name AS last_name_21, u0_.date_of_birth AS date_of_birth_22, u0_.is_active AS is_active_23, u0_.confirmation_token AS confirmation_token_24, u0_.password_reset_token AS password_reset_token_25, u0_.last_login_at AS last_login_at_26, u0_.phone_number AS phone_number_27, u0_.fonction AS fonction_28, u0_.sex AS sex_29, u0_.avatar AS avatar_30, u0_.created_at AS created_at_31, u0_.updated_at AS updated_at_32, u0_.deleted_at AS deleted_at_33, r1_.id AS id_34, r1_.code AS code_35, r1_.name AS name_36, r1_.description AS description_37, r1_.is_default AS is_default_38, r1_.created_at AS created_at_39, r1_.updated_at AS updated_at_40, r1_.deleted_at AS deleted_at_41, p2_.id AS id_42, p2_.code AS code_43, p2_.name AS name_44, p2_.description AS description_45, p2_.created_at AS created_at_46, p2_.updated_at AS updated_at_47, p2_.deleted_at AS deleted_at_48, u0_.user_preference_id AS user_preference_id_49, u0_.department_id AS department_id_50, u0_.organization_id AS organization_id_51, r1_.department_id AS department_id_52, r1_.organization_id AS organization_id_53, p2_.permission_group_id AS permission_group_id_54 FROM user u0_ LEFT JOIN user_role u3_ ON u0_.id = u3_.user_id LEFT JOIN role r1_ ON r1_.id = u3_.role_id AND (r1_.deleted_at IS NULL) LEFT JOIN role_permission r4_ ON r1_.id = r4_.role_id LEFT JOIN permission p2_ ON p2_.id = r4_.permission_id AND (p2_.deleted_at IS NULL) WHERE (u0_.id = ?) AND (u0_.deleted_at IS NULL)"
                      "params" => array:1 [
                        1 => 2
                      ]
                      "types" => array:1 [
                        1 => 1
                      ]
                    ]
                    "channel" => "doctrine"
                  ]
                  8 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.992+02:00"
                    "message" => "User was reloaded from a user provider."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "provider" => "App\Security\UserProvider"
                      "username" => "massamba.fall92+01@gmail.com"
                    ]
                    "channel" => "security"
                  ]
                  9 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "debug.security.authorization.vote"
                      "listener" => "Symfony\Bundle\SecurityBundle\EventListener\VoteListener::onVoterVote"
                    ]
                    "channel" => "event"
                  ]
                  10 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "debug.security.authorization.vote"
                      "listener" => "Symfony\Bundle\SecurityBundle\EventListener\VoteListener::onVoterVote"
                    ]
                    "channel" => "event"
                  ]
                  11 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure"
                    ]
                    "channel" => "event"
                  ]
                  12 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Stof\DoctrineExtensionsBundle\EventListener\IpTraceListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  13 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  14 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  15 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  16 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale"
                    ]
                    "channel" => "event"
                  ]
                  17 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  18 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  19 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  20 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  21 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator"
                    ]
                    "channel" => "event"
                  ]
                  22 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  23 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  24 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.993+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Stof\DoctrineExtensionsBundle\EventListener\BlameListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  25 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.994+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller"
                      "listener" => "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController"
                    ]
                    "channel" => "event"
                  ]
                  26 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.994+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller"
                      "listener" => "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController"
                    ]
                    "channel" => "event"
                  ]
                  27 => array:7 [
                    "timestamp" => 1777911018
                    "timestamp_rfc3339" => "2026-05-04T18:10:18.994+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller"
                      "listener" => "DH\AuditorBundle\Event\ViewerEventSubscriber::onKernelController"
                    ]
                    "channel" => "event"
                  ]
                  28 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.007+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  29 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.007+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "App\EventSubscriber\PermissionsOnlySubscriber::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  30 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.008+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  31 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.008+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  32 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.008+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "ContainerTQBsBG0\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  33 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.008+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  34 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.008+02:00"
                    "message" => "Executing statement: {sql} (parameters: {params}, types: {types})"
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:3 [
                      "sql" => "SELECT t0.id AS id_1, t0.name AS name_2, t0.abbreviation AS abbreviation_3, t0.lft AS lft_4, t0.lvl AS lvl_5, t0.rgt AS rgt_6, t0.created_at AS created_at_7, t0.updated_at AS updated_at_8, t0.deleted_at AS deleted_at_9, t0.organization_id AS organization_id_10, t0.tree_root AS tree_root_11, t0.parent_id AS parent_id_12 FROM department t0 WHERE t0.id = ? AND ((t0.deleted_at IS NULL))"
                      "params" => array:1 [
                        1 => 19
                      ]
                      "types" => array:1 [
                        1 => 1
                      ]
                    ]
                    "channel" => "doctrine"
                  ]
                  35 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.015+02:00"
                    "message" => "Executing statement: {sql} (parameters: {params}, types: {types})"
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:3 [
                      "sql" => "SELECT d0_.id AS id_0, d0_.code AS code_1, d0_.label AS label_2, d0_.value AS value_3, d0_.updated_at AS updated_at_4, d0_.created_at AS created_at_5, d0_.period_month AS period_month_6, d0_.period_year AS period_year_7, d0_.scope AS scope_8, d0_.metadata AS metadata_9, d0_.department_id AS department_id_10, d0_.organization_id AS organization_id_11 FROM dashboard_kpi d0_ WHERE (d0_.period_month = ? AND d0_.period_year = ?) AND d0_.organization_id = ? AND d0_.scope = ? AND d0_.department_id IS NULL"
                      "params" => array:4 [
                        1 => "9"
                        2 => "2025"
                        3 => 1
                        4 => "ORGANIZATION"
                      ]
                      "types" => array:4 [
                        1 => 2
                        2 => 2
                        3 => 1
                        4 => 2
                      ]
                    ]
                    "channel" => "doctrine"
                  ]
                  36 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.016+02:00"
                    "message" => "Lock acquired, now computing item "{key}""
                    "priority" => 200
                    "priorityName" => "INFO"
                    "context" => array:1 [
                      "key" => "011faf1e180fe65f70e532d1ea39d0e6"
                    ]
                    "channel" => "cache"
                  ]
                  37 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.019+02:00"
                    "message" => "Request: "POST https://api.openai.com/v1/chat/completions""
                    "priority" => 200
                    "priorityName" => "INFO"
                    "context" => []
                    "channel" => "http_client"
                  ]
                  38 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.529+02:00"
                    "message" => "Response: "401 https://api.openai.com/v1/chat/completions""
                    "priority" => 200
                    "priorityName" => "INFO"
                    "context" => []
                    "channel" => "http_client"
                  ]
                  39 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.537+02:00"
                    "message" => "Uncaught PHP Exception Symfony\Component\HttpClient\Exception\ClientException: "HTTP/2 401  returned for "https://api.openai.com/v1/chat/completions"." at TraceableResponse.php line 209"
                    "priority" => 500
                    "priorityName" => "CRITICAL"
                    "context" => array:1 [
                      "exception" => Symfony\Component\HttpClient\Exception\ClientException {#2053}
                    ]
                    "channel" => "request"
                  ]
                ]
                2353 => array:23 [
                  0 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure"
                    ]
                    "channel" => "event"
                  ]
                  1 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Stof\DoctrineExtensionsBundle\EventListener\IpTraceListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  2 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  3 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  4 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  5 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale"
                    ]
                    "channel" => "event"
                  ]
                  6 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  7 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  8 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  9 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  10 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator"
                    ]
                    "channel" => "event"
                  ]
                  11 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  12 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  13 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.539+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.request"
                      "listener" => "Stof\DoctrineExtensionsBundle\EventListener\BlameListener::onKernelRequest"
                    ]
                    "channel" => "event"
                  ]
                  14 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller"
                      "listener" => "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController"
                    ]
                    "channel" => "event"
                  ]
                  15 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller"
                      "listener" => "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController"
                    ]
                    "channel" => "event"
                  ]
                  16 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller"
                      "listener" => "DH\AuditorBundle\Event\ViewerEventSubscriber::onKernelController"
                    ]
                    "channel" => "event"
                  ]
                  17 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  18 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "App\EventSubscriber\PermissionsOnlySubscriber::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  19 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  20 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  21 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "ContainerTQBsBG0\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                  22 => array:7 [
                    "timestamp" => 1777911019
                    "timestamp_rfc3339" => "2026-05-04T18:10:19.541+02:00"
                    "message" => "Notified event "{event}" to listener "{listener}"."
                    "priority" => 100
                    "priorityName" => "DEBUG"
                    "context" => array:2 [
                      "event" => "kernel.controller_arguments"
                      "listener" => "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments"
                    ]
                    "channel" => "event"
                  ]
                ]
              ]
              -errorCount: array:3 [
                "" => 0
                8 => 1
                2353 => 0
              ]
              -requestStack: Symfony\Component\HttpKernel\Debug\VirtualRequestStack {#516
                -requests: []
                -decorated: Symfony\Component\HttpFoundation\RequestStack {#521
                  -requests: array:2 [
                    0 => Symfony\Component\HttpFoundation\Request {#8
                      +attributes: Symfony\Component\HttpFoundation\ParameterBag {#60
                        #parameters: array:6 [
                          "_stopwatch_token" => "cb813d"
                          "_route" => "app_dashboard_insights"
                          "_controller" => "App\Controller\Dashboard\DashboardController::dashboardInsights"
                          "_route_params" => []
                          "_firewall_context" => "security.firewall.map.context.main"
                          "_security_firewall_run" => "_security_main"
                        ]
                      }
                      +request: Symfony\Component\HttpFoundation\InputBag {#58
                        #parameters: []
                      }
                      +query: Symfony\Component\HttpFoundation\InputBag {#59
                        #parameters: array:4 [
                          "periodMonth" => "9"
                          "periodYear" => "2025"
                          "department" => ""
                          "scope" => "ORGANIZATION"
                        ]
                      }
                      +server: Symfony\Component\HttpFoundation\ServerBag {#63
                        #parameters: array:90 [
                          "USER" => "batrams"
                          "SCRIPT_NAME" => "/index.php"
                          "REQUEST_URI" => "/dashboard/insights?periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          "QUERY_STRING" => "periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          "REQUEST_METHOD" => "GET"
                          "SERVER_PROTOCOL" => "HTTP/1.1"
                          "GATEWAY_INTERFACE" => "CGI/1.1"
                          "REDIRECT_QUERY_STRING" => "periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          "REDIRECT_URL" => "/dashboard/insights"
                          "REMOTE_PORT" => "46286"
                          "SCRIPT_FILENAME" => "/home/batrams/Kplan/public/index.php"
                          "SERVER_ADMIN" => "postmaster@kplan.kameldigitalsn.com"
                          "DOCUMENT_ROOT" => "/home/batrams/Kplan/public"
                          "REMOTE_ADDR" => "41.214.116.18"
                          "SERVER_PORT" => "443"
                          "SERVER_ADDR" => "10.123.20.10"
                          "SERVER_NAME" => "kplan.kameldigitalsn.com"
                          "SERVER_SOFTWARE" => "Apache"
                          "SERVER_SIGNATURE" => ""
                          "HTTP_REMOTE_IP" => "41.214.116.18"
                          "HTTP_PRIORITY" => "u=1, i"
                          "HTTP_ACCEPT_LANGUAGE" => "fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7"
                          "HTTP_ACCEPT_ENCODING" => "gzip, deflate, br, zstd"
                          "HTTP_REFERER" => "https://kplan.kameldigitalsn.com/dashboard?periodMonth=9&periodYear=2025"
                          "HTTP_SEC_FETCH_DEST" => "empty"
                          "HTTP_SEC_FETCH_MODE" => "cors"
                          "HTTP_SEC_FETCH_SITE" => "same-origin"
                          "HTTP_ACCEPT" => "*/*"
                          "HTTP_SEC_CH_UA_MOBILE" => "?0"
                          "HTTP_SEC_CH_UA" => ""Chromium";v="146", "Not-A.Brand";v="24", "Google Chrome";v="146""
                          "HTTP_USER_AGENT" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                          "HTTP_SEC_CH_UA_PLATFORM" => ""macOS""
                          "HTTP_X_OVHREQUEST_ID" => "b2d79d5653b5bfe2e6b5c568bf5e5a03"
                          "HTTP_X_FORWARDED_PROTO" => "https"
                          "HTTP_X_FORWARDED_FOR" => "41.214.116.18"
                          "HTTP_X_PREDICTOR" => "1"
                          "HTTP_COOKIE" => "PHPSESSID=82a6b55e8a8317056d5b8ec13fbeb332"
                          "HTTP_HOST" => "kplan.kameldigitalsn.com"
                          "ENVIRONMENT" => "production"
                          "CFG_CLUSTER" => "cluster123"
                          "HTTPS" => "on"
                          "SCRIPT_URI" => "https://kplan.kameldigitalsn.com:443/dashboard/insights"
                          "SCRIPT_URL" => "/dashboard/insights"
                          "GEOIP_LONGITUDE" => "-17.444500"
                          "GEOIP_LATITUDE" => "14.667000"
                          "GEOIP_AREA_CODE" => "0"
                          "GEOIP_DMA_CODE" => "0"
                          "GEOIP_CITY" => "Dakar"
                          "GEOIP_REGION" => "01"
                          "GEOIP_COUNTRY_NAME" => "Senegal"
                          "GEOIP_COUNTRY_CODE" => "SN"
                          "UNIQUE_ID" => "afjE6qoYroxwBird7Al1vQAAAmM"
                          "REDIRECT_STATUS" => "200"
                          "FCGI_ROLE" => "RESPONDER"
                          "PHP_SELF" => "/index.php"
                          "REQUEST_TIME_FLOAT" => 1777911018.9023
                          "REQUEST_TIME" => 1777911018
                          "argv" => array:1 [
                            0 => "periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          ]
                          "argc" => 1
                          "SYMFONY_DOTENV_PATH" => "/home/batrams/Kplan/.env"
                          "APP_ENV" => "dev"
                          "APP_SECRET" => "fc17c3c63363db67a7131d4f3d4aa076"
                          "APP_URL" => "http://localhost:8742"
                          "MYSQL_USER" => "batramskplan"
                          "MYSQL_PASSWORD" => "Kplan2020ML"
                          "MYSQL_HOST" => "batramskplan.mysql.db"
                          "MYSQL_DB_NAME" => "batramskplan"
                          "MYSQL_PORT" => "3306"
                          "MESSENGER_TRANSPORT_DSN" => "sync://"
                          "MAILER_DSN" => "sendgrid://KEY@default"
                          "EMAIL_SEND_METHOD" => "BREVO"
                          "BREVO_API_KEY" => "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"
                          "MAILGUN_API_KEY" => "66d92310568aecee8f710ba3748ddeb0-c02fd0ba-c282267d"
                          "MAILGUN_DOMAIN" => "k-plan.fallintech.fr"
                          "OPENAI_API_KEY" => ""
                          "OPENAI_API_URL" => "https://api.openai.com/v1/chat/completions"
                          "LOCK_DSN" => "flock"
                          "WKHTMLTOPDF_PATH" => "/usr/local/bin/wkhtmltopdf"
                          "WKHTMLTOIMAGE_PATH" => "/usr/local/bin/wkhtmltoimage"
                          "RUN_MIGRATIONS" => "true"
                          "PHP_SESSION_SAVE_HANDLER" => "redis"
                          "PHP_SESSION_SAVE_PATH" => "tcp://redis:6379?database=2&prefix=sess:"
                          "CACHE_DSN" => "redis://redis:6379/1"
                          "GOOGLE_VIEWER_ENABLE" => "true"
                          "SYMFONY_DOTENV_VARS" => "APP_ENV,APP_SECRET,APP_URL,MYSQL_USER,MYSQL_PASSWORD,MYSQL_HOST,MYSQL_DB_NAME,MYSQL_PORT,MESSENGER_TRANSPORT_DSN,MAILER_DSN,EMAIL_SEND_METHOD,BREVO_API_KEY,MAILGUN_API_KEY,MAILGUN_DOMAIN,OPENAI_API_KEY,OPENAI_API_URL,LOCK_DSN,WKHTMLTOPDF_PATH,WKHTMLTOIMAGE_PATH,RUN_MIGRATIONS,PHP_SESSION_SAVE_HANDLER,PHP_SESSION_SAVE_PATH,CACHE_DSN,GOOGLE_VIEWER_ENABLE,SENDGRID_API_KEY,MESSENGER_TRANSPORT_DSN_HIGH,MAILER_FROM_EMAIL,MAILER_FROM_NAME"
                          "SENDGRID_API_KEY" => ""
                          "MESSENGER_TRANSPORT_DSN_HIGH" => "sync://"
                          "MAILER_FROM_EMAIL" => "no-reply@k-plan.fallintech.fr"
                          "MAILER_FROM_NAME" => "KPLAN Notifications"
                          "APP_DEBUG" => "1"
                        ]
                      }
                      +files: Symfony\Component\HttpFoundation\FileBag {#62
                        #parameters: []
                      }
                      +cookies: Symfony\Component\HttpFoundation\InputBag {#61
                        #parameters: array:1 [
                          "PHPSESSID" => "82a6b55e8a8317056d5b8ec13fbeb332"
                        ]
                      }
                      +headers: Symfony\Component\HttpFoundation\HeaderBag {#64
                        #headers: array:20 [
                          "remote-ip" => array:1 [
                            0 => "41.214.116.18"
                          ]
                          "priority" => array:1 [
                            0 => "u=1, i"
                          ]
                          "accept-language" => array:1 [
                            0 => "fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7"
                          ]
                          "accept-encoding" => array:1 [
                            0 => "gzip, deflate, br, zstd"
                          ]
                          "referer" => array:1 [
                            0 => "https://kplan.kameldigitalsn.com/dashboard?periodMonth=9&periodYear=2025"
                          ]
                          "sec-fetch-dest" => array:1 [
                            0 => "empty"
                          ]
                          "sec-fetch-mode" => array:1 [
                            0 => "cors"
                          ]
                          "sec-fetch-site" => array:1 [
                            0 => "same-origin"
                          ]
                          "accept" => array:1 [
                            0 => "*/*"
                          ]
                          "sec-ch-ua-mobile" => array:1 [
                            0 => "?0"
                          ]
                          "sec-ch-ua" => array:1 [
                            0 => ""Chromium";v="146", "Not-A.Brand";v="24", "Google Chrome";v="146""
                          ]
                          "user-agent" => array:1 [
                            0 => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                          ]
                          "sec-ch-ua-platform" => array:1 [
                            0 => ""macOS""
                          ]
                          "x-ovhrequest-id" => array:1 [
                            0 => "b2d79d5653b5bfe2e6b5c568bf5e5a03"
                          ]
                          "x-forwarded-proto" => array:1 [
                            0 => "https"
                          ]
                          "x-forwarded-for" => array:1 [
                            0 => "41.214.116.18"
                          ]
                          "x-predictor" => array:1 [
                            0 => "1"
                          ]
                          "cookie" => array:1 [
                            0 => "PHPSESSID=82a6b55e8a8317056d5b8ec13fbeb332"
                          ]
                          "host" => array:1 [
                            0 => "kplan.kameldigitalsn.com"
                          ]
                          "x-php-ob-level" => array:1 [
                            0 => "1"
                          ]
                        ]
                        #cacheControl: []
                      }
                      #content: null
                      #languages: null
                      #charsets: null
                      #encodings: null
                      #acceptableContentTypes: null
                      #pathInfo: "/dashboard/insights"
                      #requestUri: "/dashboard/insights?periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                      #baseUrl: ""
                      #basePath: null
                      #method: "GET"
                      #format: null
                      #session: Symfony\Component\HttpFoundation\Session\Session {#542
                        #storage: Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage {#580
                          #bags: array:2 [
                            "attributes" => Symfony\Component\HttpFoundation\Session\SessionBagProxy {#604
                              -bag: Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag {#588
                                #attributes: &6 array:6 [
                                  "_security.last_username" => "massamba.fall92+01@gmail.com"
                                  "_security_main" => "O:74:"Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken":3:{i:0;N;i:1;s:4:"main";i:2;a:5:{i:0;O:15:"App\Entity\User":24:{s:19:"\x00App\Entity\User\x00id";i:2;s:22:"\x00App\Entity\User\x00email";s:28:"massamba.fall92+01@gmail.com";s:25:"\x00App\Entity\User\x00password";s:60:"$2y$13$W769pnBezXMkhegpxwHbWOFjIzCB9fAgpPsVT6jlJq4vsXNRuWnOK";s:26:"\x00App\Entity\User\x00firstName";s:8:"Babacar ";s:25:"\x00App\Entity\User\x00lastName";s:4:"Youm";s:28:"\x00App\Entity\User\x00dateOfBirth";O:8:"DateTime":3:{s:4:"date";s:26:"2025-04-10 00:00:00.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:25:"\x00App\Entity\User\x00isActive";b:1;s:34:"\x00App\Entity\User\x00confirmationToken";s:64:"d1695deaf888b39df90d889534aebd08b6a182c1d9006b227af6eee5ce04cc16";s:35:"\x00App\Entity\User\x00passwordResetToken";N;s:28:"\x00App\Entity\User\x00lastLoginAt";O:17:"DateTimeImmutable":3:{s:4:"date";s:26:"2026-05-04 18:03:08.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:28:"\x00App\Entity\User\x00phoneNumber";s:9:"555432980";s:25:"\x00App\Entity\User\x00fonction";s:14:"Chef de projet";s:20:"\x00App\Entity\User\x00sex";s:4:"Male";s:25:"\x00App\Entity\User\x00fullName";N;s:23:"\x00App\Entity\User\x00avatar";s:42:"uploads/avatars/avatar-2-69017628a79ad.jpg";s:31:"\x00App\Entity\User\x00userPreference";O:40:"Proxies\__CG__\App\Entity\UserPreference":1:{s:29:"\x00App\Entity\UserPreference\x00id";i:1;}s:30:"\x00App\Entity\User\x00notifications";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:27:"\x00App\Entity\User\x00department";O:36:"Proxies\__CG__\App\Entity\Department":17:{s:25:"\x00App\Entity\Department\x00id";i:19;s:27:"\x00App\Entity\Department\x00name";s:52:"Agence pour la Sécurité de la Navigation Aérienne";s:35:"\x00App\Entity\Department\x00abbreviation";s:5:"ASNAS";s:35:"\x00App\Entity\Department\x00organization";O:38:"Proxies\__CG__\App\Entity\Organization":1:{s:27:"\x00App\Entity\Organization\x00id";i:1;}s:26:"\x00App\Entity\Department\x00lft";i:1;s:26:"\x00App\Entity\Department\x00lvl";i:0;s:26:"\x00App\Entity\Department\x00rgt";i:2;s:27:"\x00App\Entity\Department\x00root";r:33;s:29:"\x00App\Entity\Department\x00parent";N;s:31:"\x00App\Entity\Department\x00children";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:31:"\x00App\Entity\Department\x00projects";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:28:"\x00App\Entity\Department\x00users";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:28:"\x00App\Entity\Department\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:31:"\x00App\Entity\Department\x00programs";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2026-01-30 17:54:36.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2026-01-30 17:54:36.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}s:26:"\x00App\Entity\User\x00userRoles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:4:{i:0;O:15:"App\Entity\Role":12:{s:19:"\x00App\Entity\Role\x00id";i:2;s:21:"\x00App\Entity\Role\x00code";s:10:"ROLE_ADMIN";s:21:"\x00App\Entity\Role\x00name";s:32:"Administrateur de l'organisation";s:28:"\x00App\Entity\Role\x00description";s:57:"Charger d'administrer l'organisation, il peut tout faire.";s:28:"\x00App\Entity\Role\x00permissions";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:1:{i:0;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:3;s:27:"\x00App\Entity\Permission\x00code";s:15:"DEPARTMENT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:51:"Lister tous les départements (sous-départements).";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:2;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}}}s:14:"\x00*\x00initialized";b:1;}s:27:"\x00App\Entity\Role\x00department";N;s:29:"\x00App\Entity\Role\x00organization";N;s:22:"\x00App\Entity\Role\x00users";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:26:"\x00App\Entity\Role\x00isDefault";b:1;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:34.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:19.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:1;O:15:"App\Entity\Role":12:{s:19:"\x00App\Entity\Role\x00id";i:4;s:21:"\x00App\Entity\Role\x00code";s:24:"ROLE_PROJECT_RESPONSIBLE";s:21:"\x00App\Entity\Role\x00name";s:21:"Responsable de projet";s:28:"\x00App\Entity\Role\x00description";N;s:28:"\x00App\Entity\Role\x00permissions";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:40:{i:0;r:84;i:1;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:19;s:27:"\x00App\Entity\Permission\x00code";s:20:"USER_DEPARTMENT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:66:"Lister tous les utilisateurs du département (sous-départements).";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:5;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:2;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:20;s:27:"\x00App\Entity\Permission\x00code";s:9:"USER_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:35:"Voir les détails de l'utilisateur.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:139;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:3;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:23;s:27:"\x00App\Entity\Permission\x00code";s:17:"USER_ACCOUNT_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:50:"Modifier les informations d'un compte utilisateur.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:139;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:4;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:24;s:27:"\x00App\Entity\Permission\x00code";s:18:"USER_PASSWORD_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:49:"Modifier le mot de passe d'un compte utilisateur.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:139;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:5;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:28;s:27:"\x00App\Entity\Permission\x00code";s:23:"PROJECT_DEPARTMENT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:61:"Lister tous les projets du département (sous-départements).";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:6;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:6;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:29;s:27:"\x00App\Entity\Permission\x00code";s:14:"PROJECT_CREATE";s:27:"\x00App\Entity\Permission\x00name";s:25:"Créer un nouveau projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:216;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:7;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:30;s:27:"\x00App\Entity\Permission\x00code";s:12:"PROJECT_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:30:"Voir les détails d'un projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:216;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:8;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:31;s:27:"\x00App\Entity\Permission\x00code";s:12:"PROJECT_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:38:"Modifier les informations d'un projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:216;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:9;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:37;s:27:"\x00App\Entity\Permission\x00code";s:22:"COMPONENT_PROJECT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:38:"Lister tous les composantes du projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:7;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:10;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:38;s:27:"\x00App\Entity\Permission\x00code";s:16:"COMPONENT_CREATE";s:27:"\x00App\Entity\Permission\x00name";s:31:"Créer une nouvelle composante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:293;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:11;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:39;s:27:"\x00App\Entity\Permission\x00code";s:14:"COMPONENT_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:35:"Voir les détails d'une composante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:293;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:12;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:40;s:27:"\x00App\Entity\Permission\x00code";s:14:"COMPONENT_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:43:"Modifier les informations d'une composante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:293;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:13;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:41;s:27:"\x00App\Entity\Permission\x00code";s:16:"COMPONENT_DELETE";s:27:"\x00App\Entity\Permission\x00name";s:25:"Supprimer une composante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:293;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:14;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:42;s:27:"\x00App\Entity\Permission\x00code";s:17:"COMPONENT_ARCHIVE";s:27:"\x00App\Entity\Permission\x00name";s:24:"Archiver une composante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:293;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:15;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:45;s:27:"\x00App\Entity\Permission\x00code";s:21:"ACTIVITY_PROJECT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:37:"Lister tous les activités du projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:8;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:16;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:46;s:27:"\x00App\Entity\Permission\x00code";s:23:"ACTIVITY_COMPONENT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:42:"Lister tous les activités du composannte.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:408;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:17;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:47;s:27:"\x00App\Entity\Permission\x00code";s:15:"ACTIVITY_CREATE";s:27:"\x00App\Entity\Permission\x00name";s:30:"Créer une nouvelle activité.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:408;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:18;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:48;s:27:"\x00App\Entity\Permission\x00code";s:13:"ACTIVITY_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:34:"Voir les détails d'une activité.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:408;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:19;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:49;s:27:"\x00App\Entity\Permission\x00code";s:13:"ACTIVITY_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:42:"Modifier les informations d'une activité.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:408;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:20;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:50;s:27:"\x00App\Entity\Permission\x00code";s:15:"ACTIVITY_DELETE";s:27:"\x00App\Entity\Permission\x00name";s:24:"Supprimer une activité.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:408;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:21;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:51;s:27:"\x00App\Entity\Permission\x00code";s:16:"ACTIVITY_ARCHIVE";s:27:"\x00App\Entity\Permission\x00name";s:23:"Archiver une activité.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:408;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:22;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:52;s:27:"\x00App\Entity\Permission\x00code";s:13:"DOCUMENT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:20:"Lister les documents";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:9;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:23;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:53;s:27:"\x00App\Entity\Permission\x00code";s:15:"DOCUMENT_UPLOAD";s:27:"\x00App\Entity\Permission\x00name";s:19:"Uploader un fichier";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:542;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:24;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:54;s:27:"\x00App\Entity\Permission\x00code";s:17:"DOCUMENT_DOWNLOAD";s:27:"\x00App\Entity\Permission\x00name";s:24:"Télécharger un fichier";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:542;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:25;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:55;s:27:"\x00App\Entity\Permission\x00code";s:15:"DOCUMENT_DELETE";s:27:"\x00App\Entity\Permission\x00name";s:20:"Supprimer un fichier";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:542;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:26;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:56;s:27:"\x00App\Entity\Permission\x00code";s:16:"STAKEHOLDER_LIST";s:27:"\x00App\Entity\Permission\x00name";s:28:"Lister les parties prenantes";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:10;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:27;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:57;s:27:"\x00App\Entity\Permission\x00code";s:18:"STAKEHOLDER_CREATE";s:27:"\x00App\Entity\Permission\x00name";s:36:"Créer une nouvelle partie prenante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:619;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:28;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:58;s:27:"\x00App\Entity\Permission\x00code";s:16:"STAKEHOLDER_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:40:"Voir les détails d'une partie prenante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:619;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:29;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:59;s:27:"\x00App\Entity\Permission\x00code";s:16:"STAKEHOLDER_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:48:"Modifier les informations d'une partie prenante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:619;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:30;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:60;s:27:"\x00App\Entity\Permission\x00code";s:18:"STAKEHOLDER_DELETE";s:27:"\x00App\Entity\Permission\x00name";s:30:"Supprimer une partie prenante.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:619;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:31;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:61;s:27:"\x00App\Entity\Permission\x00code";s:16:"BUDGET_LINE_LIST";s:27:"\x00App\Entity\Permission\x00name";s:31:"Lister des lignes budgétaires.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:11;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:32;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:62;s:27:"\x00App\Entity\Permission\x00code";s:18:"BUDGET_LINE_CREATE";s:27:"\x00App\Entity\Permission\x00name";s:29:"Créer une ligne budgétaire.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:715;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:33;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:63;s:27:"\x00App\Entity\Permission\x00code";s:18:"BUDGET_LINE_UPDATE";s:27:"\x00App\Entity\Permission\x00name";s:31:"Modifier une ligne budgétaire.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:715;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:34;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:64;s:27:"\x00App\Entity\Permission\x00code";s:18:"BUDGET_LINE_DELETE";s:27:"\x00App\Entity\Permission\x00name";s:32:"Supprimer une ligne budgétaire.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:715;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:35;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:67;s:27:"\x00App\Entity\Permission\x00code";s:22:"ORGANIZATION_DASHBOARD";s:27:"\x00App\Entity\Permission\x00name";s:35:"Tableau de board de l'organisation.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:216;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:36;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:68;s:27:"\x00App\Entity\Permission\x00code";s:27:"DASHBOARD_ORGANIZATION_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:34:"Tableau de bord de l'organisation.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:13;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:37;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:69;s:27:"\x00App\Entity\Permission\x00code";s:25:"DASHBOARD_DEPARTMENT_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:31:"Tableau de bord du départment.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:811;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:38;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:70;s:27:"\x00App\Entity\Permission\x00code";s:22:"DASHBOARD_PROJECT_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:26:"Tableau de bord du projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:811;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:39;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:71;s:27:"\x00App\Entity\Permission\x00code";s:13:"CALENDAR_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:41:"Visualiser le calendrier des événements";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:14;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:13.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}}}s:14:"\x00*\x00initialized";b:1;}s:27:"\x00App\Entity\Role\x00department";N;s:29:"\x00App\Entity\Role\x00organization";N;s:22:"\x00App\Entity\Role\x00users";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:26:"\x00App\Entity\Role\x00isDefault";b:1;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:34.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:19.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:2;O:15:"App\Entity\Role":12:{s:19:"\x00App\Entity\Role\x00id";i:5;s:21:"\x00App\Entity\Role\x00code";s:20:"ROLE_PROJECT_MONITOR";s:21:"\x00App\Entity\Role\x00name";s:27:"Chargé de suivi de projet.";s:28:"\x00App\Entity\Role\x00description";N;s:28:"\x00App\Entity\Role\x00permissions";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:40:{i:0;r:84;i:1;r:130;i:2;r:150;i:3;r:169;i:4;r:188;i:5;r:207;i:6;r:227;i:7;r:246;i:8;r:265;i:9;r:284;i:10;r:304;i:11;r:323;i:12;r:342;i:13;r:361;i:14;r:380;i:15;r:399;i:16;r:419;i:17;r:438;i:18;r:457;i:19;r:476;i:20;r:495;i:21;r:514;i:22;r:533;i:23;r:553;i:24;r:572;i:25;r:591;i:26;r:610;i:27;r:630;i:28;r:649;i:29;r:668;i:30;r:687;i:31;r:706;i:32;r:726;i:33;r:745;i:34;r:764;i:35;r:783;i:36;r:802;i:37;r:822;i:38;r:841;i:39;r:860;}}s:14:"\x00*\x00initialized";b:1;}s:27:"\x00App\Entity\Role\x00department";N;s:29:"\x00App\Entity\Role\x00organization";N;s:22:"\x00App\Entity\Role\x00users";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:26:"\x00App\Entity\Role\x00isDefault";b:1;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:34.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-11-02 17:41:19.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:3;O:15:"App\Entity\Role":12:{s:19:"\x00App\Entity\Role\x00id";i:9;s:21:"\x00App\Entity\Role\x00code";s:20:"ROLE_PROJECT_MANAGER";s:21:"\x00App\Entity\Role\x00name";s:14:"Chef de projet";s:28:"\x00App\Entity\Role\x00description";s:32:"Chef de projet de chemins de Fer";s:28:"\x00App\Entity\Role\x00permissions";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:51:{i:0;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:1;s:27:"\x00App\Entity\Permission\x00code";s:17:"ORGANIZATION_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:50:"Mettre à jour les informations de l'organisation.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:1;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:1;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:2;s:27:"\x00App\Entity\Permission\x00code";s:17:"ORGANIZATION_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:40:"Voir les informations de l'organisation.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:979;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:2;r:84;i:3;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:4;s:27:"\x00App\Entity\Permission\x00code";s:15:"DEPARTMENT_VIEW";s:27:"\x00App\Entity\Permission\x00name";s:36:"Voir les détails d'un département.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:93;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:4;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:5;s:27:"\x00App\Entity\Permission\x00code";s:17:"DEPARTMENT_CREATE";s:27:"\x00App\Entity\Permission\x00name";s:31:"Créer un nouveau département.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:93;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:5;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:6;s:27:"\x00App\Entity\Permission\x00code";s:15:"DEPARTMENT_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:44:"Modifier les informations d'un département.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:93;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:6;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:7;s:27:"\x00App\Entity\Permission\x00code";s:17:"DEPARTMENT_DELETE";s:27:"\x00App\Entity\Permission\x00name";s:26:"Supprimer un département.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:93;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:7;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:8;s:27:"\x00App\Entity\Permission\x00code";s:22:"ROLE_ORGANIZATION_LIST";s:27:"\x00App\Entity\Permission\x00name";s:41:"Lister tous les rôles de l'organisation.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";O:41:"Proxies\__CG__\App\Entity\PermissionGroup":1:{s:30:"\x00App\Entity\PermissionGroup\x00id";i:3;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:8;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:9;s:27:"\x00App\Entity\Permission\x00code";s:20:"ROLE_DEPARTMENT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:62:"Lister tous les rôles d'un département (sous-départements).";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:1095;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:9;r:130;i:10;r:150;i:11;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:21;s:27:"\x00App\Entity\Permission\x00code";s:11:"USER_INVITE";s:27:"\x00App\Entity\Permission\x00name";s:23:"Inviter un utilisateur.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:139;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:12;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:22;s:27:"\x00App\Entity\Permission\x00code";s:9:"USER_EDIT";s:27:"\x00App\Entity\Permission\x00name";s:43:"Modifier les informations d'un utilisateur.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:139;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:13;r:169;i:14;r:188;i:15;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:27;s:27:"\x00App\Entity\Permission\x00code";s:25:"PROJECT_ORGANIZATION_LIST";s:27:"\x00App\Entity\Permission\x00name";s:42:"Lister tous les projets de l'organisation.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:216;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:16;r:207;i:17;r:227;i:18;r:246;i:19;r:265;i:20;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:32;s:27:"\x00App\Entity\Permission\x00code";s:14:"PROJECT_DELETE";s:27:"\x00App\Entity\Permission\x00name";s:20:"Supprimer un projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:216;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:21;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:33;s:27:"\x00App\Entity\Permission\x00code";s:15:"PROJECT_ARCHIVE";s:27:"\x00App\Entity\Permission\x00name";s:19:"Archiver un projet.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:216;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:22;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:35;s:27:"\x00App\Entity\Permission\x00code";s:27:"COMPONENT_ORGANIZATION_LIST";s:27:"\x00App\Entity\Permission\x00name";s:46:"Lister tous les composantes de l'organisation.";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:293;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:23;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:36;s:27:"\x00App\Entity\Permission\x00code";s:25:"COMPONENT_DEPARTMENT_LIST";s:27:"\x00App\Entity\Permission\x00name";s:65:"Lister tous les composantes du département (sous-départements).";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:293;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:24;r:284;i:25;r:304;i:26;r:323;i:27;r:342;i:28;r:361;i:29;r:380;i:30;O:21:"App\Entity\Permission":9:{s:25:"\x00App\Entity\Permission\x00id";i:43;s:27:"\x00App\Entity\Permission\x00code";s:26:"ACTIVITY_ORGANIZATION_LIST";s:27:"\x00App\Entity\Permission\x00name";s:46:"Lister tous les activités de l'organisation..";s:34:"\x00App\Entity\Permission\x00description";N;s:28:"\x00App\Entity\Permission\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:38:"\x00App\Entity\Permission\x00permissionGroup";r:408;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:50.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:31;r:399;i:32;r:419;i:33;r:438;i:34;r:457;i:35;r:476;i:36;r:495;i:37;r:514;i:38;r:533;i:39;r:553;i:40;r:572;i:41;r:591;i:42;r:610;i:43;r:630;i:44;r:649;i:45;r:668;i:46;r:687;i:47;r:706;i:48;r:726;i:49;r:745;i:50;r:764;}}s:14:"\x00*\x00initialized";b:1;}s:27:"\x00App\Entity\Role\x00department";O:36:"Proxies\__CG__\App\Entity\Department":17:{s:25:"\x00App\Entity\Department\x00id";i:1;s:27:"\x00App\Entity\Department\x00name";s:20:"Direction Générale";s:35:"\x00App\Entity\Department\x00abbreviation";s:9:"SENTER/DG";s:35:"\x00App\Entity\Department\x00organization";r:37;s:26:"\x00App\Entity\Department\x00lft";i:1;s:26:"\x00App\Entity\Department\x00lvl";i:0;s:26:"\x00App\Entity\Department\x00rgt";i:10;s:27:"\x00App\Entity\Department\x00root";r:1312;s:29:"\x00App\Entity\Department\x00parent";N;s:31:"\x00App\Entity\Department\x00children";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:31:"\x00App\Entity\Department\x00projects";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:28:"\x00App\Entity\Department\x00users";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:28:"\x00App\Entity\Department\x00roles";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:31:"\x00App\Entity\Department\x00programs";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:11.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:24:11.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}s:29:"\x00App\Entity\Role\x00organization";N;s:22:"\x00App\Entity\Role\x00users";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:26:"\x00App\Entity\Role\x00isDefault";N;s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:54:59.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-09-21 16:05:10.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}}}s:14:"\x00*\x00initialized";b:1;}s:29:"\x00App\Entity\User\x00organization";N;s:32:"\x00App\Entity\User\x00userAssignments";O:33:"Doctrine\ORM\PersistentCollection":2:{s:13:"\x00*\x00collection";O:43:"Doctrine\Common\Collections\ArrayCollection":1:{s:53:"\x00Doctrine\Common\Collections\ArrayCollection\x00elements";a:0:{}}s:14:"\x00*\x00initialized";b:0;}s:12:"\x00*\x00createdAt";O:8:"DateTime":3:{s:4:"date";s:26:"2025-08-26 15:56:14.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00updatedAt";O:8:"DateTime":3:{s:4:"date";s:26:"2026-05-04 18:03:08.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:12:"Europe/Paris";}s:12:"\x00*\x00deletedAt";N;}i:1;b:1;i:2;N;i:3;a:0:{}i:4;a:5:{i:0;s:10:"ROLE_ADMIN";i:1;s:24:"ROLE_PROJECT_RESPONSIBLE";i:2;s:20:"ROLE_PROJECT_MONITOR";i:3;s:20:"ROLE_PROJECT_MANAGER";i:4;s:9:"ROLE_USER";}}}"
                                  "_csrf/https-app_csrf" => "5Qkg0hs_FI5j-TcVodiAIS1a1tO2aoLaj49M0P5O0Ms"
                                  "_csrf/https-organization" => "7JS6I3nFcIZXKlfh_5reMz4KJy-xfQG3rNFG0ALxhqM"
                                  "_csrf/https-department" => "aGl8fHxwJ1rVixBPi0XLh694SwoF3hKKbGc3j_aVLYE"
                                  "_csrf/https-role" => "ae7lf8j4v6ZZbb2xmCQDfdysvqHGFU2rS4-ASWj1ij0"
                                ]
                                -name: "attributes"
                                -storageKey: "_sf2_attributes"
                              }
                              -data: &7 array:2 [
                                "_sf2_attributes" => &6 array:6 [&6]
                                "_symfony_flashes" => &8 []
                              ]
                              -usageIndex: &9 -9223372036854775803
                              -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#567
                                returnType: "void"
                                this: Symfony\Component\HttpKernel\EventListener\SessionListener {#415 …}
                                file: "/home/batrams/Kplan/vendor/symfony/http-kernel/EventListener/AbstractSessionListener.php"
                                line: "225 to 258"
                              }
                            }
                            "flashes" => Symfony\Component\HttpFoundation\Session\SessionBagProxy {#570
                              -bag: Symfony\Component\HttpFoundation\Session\Flash\FlashBag {#761
                                -name: "flashes"
                                -flashes: &8 []
                                -storageKey: "_symfony_flashes"
                              }
                              -data: &7 array:2 [&7]
                              -usageIndex: &9 -9223372036854775803
                              -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#567}
                            }
                          ]
                          #started: true
                          #closed: false
                          #saveHandler: Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy {#605
                            #wrapper: false
                            #saveHandlerName: "files"
                            #handler: Symfony\Component\HttpFoundation\Session\Storage\Handler\StrictSessionHandler {#122
                              -sessionName: "PHPSESSID"
                              -prefetchId: ? string
                              -prefetchData: ? string
                              -newSessionId: null
                              -igbinaryEmptyData: ? string
                              -handler: SessionHandler {#169}
                              -doDestroy: ? bool
                            }
                          }
                          #metadataBag: Symfony\Component\HttpFoundation\Session\Storage\MetadataBag {#602
                            #meta: & array:3 [
                              "u" => 1777911018
                              "c" => 1777910588
                              "l" => 43200
                            ]
                            -name: "__metadata"
                            -storageKey: "_sf2_meta"
                            -lastUsed: 1777911018
                            -updateThreshold: 0
                          }
                        }
                        -flashName: "flashes"
                        -attributeName: "attributes"
                        -data: &7 array:2 [&7]
                        -usageIndex: &9 -9223372036854775803
                        -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#567}
                      }
                      #locale: null
                      #defaultLocale: "fr"
                      -preferredFormat: null
                      -isHostValid: true
                      -isForwardedValid: true
                      -isSafeContentPreferred: ? bool
                      -trustedValuesCache: []
                      -isIisRewrite: false
                      basePath: ""
                      format: "html"
                    }
                    1 => Symfony\Component\HttpFoundation\Request {#2353
                      +attributes: Symfony\Component\HttpFoundation\ParameterBag {#2299
                        #parameters: array:4 [
                          "_controller" => "error_controller"
                          "exception" => Symfony\Component\HttpClient\Exception\ClientException {#2053}
                          "logger" => Symfony\Bridge\Monolog\Processor\DebugProcessor {#515}
                          "_stopwatch_token" => "d781bd"
                        ]
                      }
                      +request: Symfony\Component\HttpFoundation\InputBag {#2355
                        #parameters: []
                      }
                      +query: Symfony\Component\HttpFoundation\InputBag {#2354
                        #parameters: array:4 [
                          "periodMonth" => "9"
                          "periodYear" => "2025"
                          "department" => ""
                          "scope" => "ORGANIZATION"
                        ]
                      }
                      +server: Symfony\Component\HttpFoundation\ServerBag {#2351
                        #parameters: array:90 [
                          "USER" => "batrams"
                          "SCRIPT_NAME" => "/index.php"
                          "REQUEST_URI" => "/dashboard/insights?periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          "QUERY_STRING" => "periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          "REQUEST_METHOD" => "GET"
                          "SERVER_PROTOCOL" => "HTTP/1.1"
                          "GATEWAY_INTERFACE" => "CGI/1.1"
                          "REDIRECT_QUERY_STRING" => "periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          "REDIRECT_URL" => "/dashboard/insights"
                          "REMOTE_PORT" => "46286"
                          "SCRIPT_FILENAME" => "/home/batrams/Kplan/public/index.php"
                          "SERVER_ADMIN" => "postmaster@kplan.kameldigitalsn.com"
                          "DOCUMENT_ROOT" => "/home/batrams/Kplan/public"
                          "REMOTE_ADDR" => "41.214.116.18"
                          "SERVER_PORT" => "443"
                          "SERVER_ADDR" => "10.123.20.10"
                          "SERVER_NAME" => "kplan.kameldigitalsn.com"
                          "SERVER_SOFTWARE" => "Apache"
                          "SERVER_SIGNATURE" => ""
                          "HTTP_REMOTE_IP" => "41.214.116.18"
                          "HTTP_PRIORITY" => "u=1, i"
                          "HTTP_ACCEPT_LANGUAGE" => "fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7"
                          "HTTP_ACCEPT_ENCODING" => "gzip, deflate, br, zstd"
                          "HTTP_REFERER" => "https://kplan.kameldigitalsn.com/dashboard?periodMonth=9&periodYear=2025"
                          "HTTP_SEC_FETCH_DEST" => "empty"
                          "HTTP_SEC_FETCH_MODE" => "cors"
                          "HTTP_SEC_FETCH_SITE" => "same-origin"
                          "HTTP_ACCEPT" => "*/*"
                          "HTTP_SEC_CH_UA_MOBILE" => "?0"
                          "HTTP_SEC_CH_UA" => ""Chromium";v="146", "Not-A.Brand";v="24", "Google Chrome";v="146""
                          "HTTP_USER_AGENT" => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                          "HTTP_SEC_CH_UA_PLATFORM" => ""macOS""
                          "HTTP_X_OVHREQUEST_ID" => "b2d79d5653b5bfe2e6b5c568bf5e5a03"
                          "HTTP_X_FORWARDED_PROTO" => "https"
                          "HTTP_X_FORWARDED_FOR" => "41.214.116.18"
                          "HTTP_X_PREDICTOR" => "1"
                          "HTTP_COOKIE" => "PHPSESSID=82a6b55e8a8317056d5b8ec13fbeb332"
                          "HTTP_HOST" => "kplan.kameldigitalsn.com"
                          "ENVIRONMENT" => "production"
                          "CFG_CLUSTER" => "cluster123"
                          "HTTPS" => "on"
                          "SCRIPT_URI" => "https://kplan.kameldigitalsn.com:443/dashboard/insights"
                          "SCRIPT_URL" => "/dashboard/insights"
                          "GEOIP_LONGITUDE" => "-17.444500"
                          "GEOIP_LATITUDE" => "14.667000"
                          "GEOIP_AREA_CODE" => "0"
                          "GEOIP_DMA_CODE" => "0"
                          "GEOIP_CITY" => "Dakar"
                          "GEOIP_REGION" => "01"
                          "GEOIP_COUNTRY_NAME" => "Senegal"
                          "GEOIP_COUNTRY_CODE" => "SN"
                          "UNIQUE_ID" => "afjE6qoYroxwBird7Al1vQAAAmM"
                          "REDIRECT_STATUS" => "200"
                          "FCGI_ROLE" => "RESPONDER"
                          "PHP_SELF" => "/index.php"
                          "REQUEST_TIME_FLOAT" => 1777911018.9023
                          "REQUEST_TIME" => 1777911018
                          "argv" => array:1 [
                            0 => "periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                          ]
                          "argc" => 1
                          "SYMFONY_DOTENV_PATH" => "/home/batrams/Kplan/.env"
                          "APP_ENV" => "dev"
                          "APP_SECRET" => "fc17c3c63363db67a7131d4f3d4aa076"
                          "APP_URL" => "http://localhost:8742"
                          "MYSQL_USER" => "batramskplan"
                          "MYSQL_PASSWORD" => "Kplan2020ML"
                          "MYSQL_HOST" => "batramskplan.mysql.db"
                          "MYSQL_DB_NAME" => "batramskplan"
                          "MYSQL_PORT" => "3306"
                          "MESSENGER_TRANSPORT_DSN" => "sync://"
                          "MAILER_DSN" => "sendgrid://KEY@default"
                          "EMAIL_SEND_METHOD" => "BREVO"
                          "BREVO_API_KEY" => "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"
                          "MAILGUN_API_KEY" => "66d92310568aecee8f710ba3748ddeb0-c02fd0ba-c282267d"
                          "MAILGUN_DOMAIN" => "k-plan.fallintech.fr"
                          "OPENAI_API_KEY" => ""
                          "OPENAI_API_URL" => "https://api.openai.com/v1/chat/completions"
                          "LOCK_DSN" => "flock"
                          "WKHTMLTOPDF_PATH" => "/usr/local/bin/wkhtmltopdf"
                          "WKHTMLTOIMAGE_PATH" => "/usr/local/bin/wkhtmltoimage"
                          "RUN_MIGRATIONS" => "true"
                          "PHP_SESSION_SAVE_HANDLER" => "redis"
                          "PHP_SESSION_SAVE_PATH" => "tcp://redis:6379?database=2&prefix=sess:"
                          "CACHE_DSN" => "redis://redis:6379/1"
                          "GOOGLE_VIEWER_ENABLE" => "true"
                          "SYMFONY_DOTENV_VARS" => "APP_ENV,APP_SECRET,APP_URL,MYSQL_USER,MYSQL_PASSWORD,MYSQL_HOST,MYSQL_DB_NAME,MYSQL_PORT,MESSENGER_TRANSPORT_DSN,MAILER_DSN,EMAIL_SEND_METHOD,BREVO_API_KEY,MAILGUN_API_KEY,MAILGUN_DOMAIN,OPENAI_API_KEY,OPENAI_API_URL,LOCK_DSN,WKHTMLTOPDF_PATH,WKHTMLTOIMAGE_PATH,RUN_MIGRATIONS,PHP_SESSION_SAVE_HANDLER,PHP_SESSION_SAVE_PATH,CACHE_DSN,GOOGLE_VIEWER_ENABLE,SENDGRID_API_KEY,MESSENGER_TRANSPORT_DSN_HIGH,MAILER_FROM_EMAIL,MAILER_FROM_NAME"
                          "SENDGRID_API_KEY" => ""
                          "MESSENGER_TRANSPORT_DSN_HIGH" => "sync://"
                          "MAILER_FROM_EMAIL" => "no-reply@k-plan.fallintech.fr"
                          "MAILER_FROM_NAME" => "KPLAN Notifications"
                          "APP_DEBUG" => "1"
                        ]
                      }
                      +files: Symfony\Component\HttpFoundation\FileBag {#2350
                        #parameters: []
                      }
                      +cookies: Symfony\Component\HttpFoundation\InputBag {#2349
                        #parameters: array:1 [
                          "PHPSESSID" => "82a6b55e8a8317056d5b8ec13fbeb332"
                        ]
                      }
                      +headers: Symfony\Component\HttpFoundation\HeaderBag {#2352
                        #headers: array:20 [
                          "remote-ip" => array:1 [
                            0 => "41.214.116.18"
                          ]
                          "priority" => array:1 [
                            0 => "u=1, i"
                          ]
                          "accept-language" => array:1 [
                            0 => "fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7"
                          ]
                          "accept-encoding" => array:1 [
                            0 => "gzip, deflate, br, zstd"
                          ]
                          "referer" => array:1 [
                            0 => "https://kplan.kameldigitalsn.com/dashboard?periodMonth=9&periodYear=2025"
                          ]
                          "sec-fetch-dest" => array:1 [
                            0 => "empty"
                          ]
                          "sec-fetch-mode" => array:1 [
                            0 => "cors"
                          ]
                          "sec-fetch-site" => array:1 [
                            0 => "same-origin"
                          ]
                          "accept" => array:1 [
                            0 => "*/*"
                          ]
                          "sec-ch-ua-mobile" => array:1 [
                            0 => "?0"
                          ]
                          "sec-ch-ua" => array:1 [
                            0 => ""Chromium";v="146", "Not-A.Brand";v="24", "Google Chrome";v="146""
                          ]
                          "user-agent" => array:1 [
                            0 => "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                          ]
                          "sec-ch-ua-platform" => array:1 [
                            0 => ""macOS""
                          ]
                          "x-ovhrequest-id" => array:1 [
                            0 => "b2d79d5653b5bfe2e6b5c568bf5e5a03"
                          ]
                          "x-forwarded-proto" => array:1 [
                            0 => "https"
                          ]
                          "x-forwarded-for" => array:1 [
                            0 => "41.214.116.18"
                          ]
                          "x-predictor" => array:1 [
                            0 => "1"
                          ]
                          "cookie" => array:1 [
                            0 => "PHPSESSID=82a6b55e8a8317056d5b8ec13fbeb332"
                          ]
                          "host" => array:1 [
                            0 => "kplan.kameldigitalsn.com"
                          ]
                          "x-php-ob-level" => array:1 [
                            0 => "1"
                          ]
                        ]
                        #cacheControl: []
                      }
                      #content: ""
                      #languages: null
                      #charsets: null
                      #encodings: null
                      #acceptableContentTypes: array:1 [
                        0 => "*/*"
                      ]
                      #pathInfo: "/dashboard/insights"
                      #requestUri: "/dashboard/insights?periodMonth=9&periodYear=2025&department=&scope=ORGANIZATION"
                      #baseUrl: ""
                      #basePath: null
                      #method: "GET"
                      #format: null
                      #session: Symfony\Component\HttpFoundation\Session\Session {#542}
                      #locale: null
                      #defaultLocale: "fr"
                      -preferredFormat: null
                      -isHostValid: true
                      -isForwardedValid: true
                      -isSafeContentPreferred: ? bool
                      -trustedValuesCache: []
                      -isIisRewrite: false
                      basePath: ""
                      format: "html"
                    }
                  ]
                }
              }
            }
          ]
          #microsecondTimestamps: true
          #timezone: DateTimeZone {#957
            timezone: Europe/Paris (+02:00)
            +"timezone_type": 3
            +"timezone": "Europe/Paris"
          }
          #exceptionHandler: null
          -logDepth: 0
          -fiberLogDepth: WeakMap {#956
            map: []
          }
          -detectCycles: true
        }
        -maxHostConnections: 6
        -maxPendingPushes: 50
        -multi: Symfony\Component\HttpClient\Internal\CurlClientState {#2030 …}
      }
    }
    -response: Symfony\Component\HttpClient\Response\CurlResponse {#1972
      response_headers: array:15 [
        0 => "HTTP/2 401 "
        1 => "date: Mon, 04 May 2026 16:10:19 GMT"
        2 => "content-type: application/json; charset=utf-8"
        3 => "content-length: 496"
        4 => "set-cookie: __cf_bm=wzrLolm_rgGTCr56tbXWeketxG0cF6m1w1W03m4L9Y8-1777911019.4552722-1.0.1.1-HqWcCJEDJ.wp8q6BhWH.Goyt5I86yyKoqPZzBcgdgRcnxzlhPhWRoByCJ2CIaMFDU1jpfQ5vbdSVK.EHXDqH3YdwsQp44qzJ_bayS8BwhAUXH4cbmFwgOBUyQsQrXKff; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Mon, 04 May 2026 16:40:19 GMT"
        5 => "set-cookie: _cfuvid=mZtL3TfGLOeqZjLcM9nIh_NA.xwFVYewZk5GfScCmVU-1777911019.4552722-1.0.1.1-Aw0XFDGlC_V07gtUifBYUcyrUV2xlMp0hVps1wD1Be0; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com"
        6 => "cf-ray: 9f68c65f9cdc7008-CDG"
        7 => "cf-cache-status: DYNAMIC"
        8 => "server: cloudflare"
        9 => "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        10 => "vary: Origin"
        11 => "x-content-type-options: nosniff"
        12 => "x-openai-proxy-wasm: v0.1"
        13 => "x-request-id: req_72445fc4253141848533d496a1c614ec"
        14 => "alt-svc: h3=":443"; ma=86400"
      ]
      http_code: 401
      error: null
      canceled: false
      http_method: "POST"
      user_data: null
      max_duration: 0.0
      start_time: 1777911019.0213
      original_url: "https://api.openai.com/v1/chat/completions"
      pause_handler: Closure(float $duration) {#2051
        class: "Symfony\Component\HttpClient\Response\CurlResponse"
        use: {
          $ch: CurlHandle {#1983 …}
          $multi: Symfony\Component\HttpClient\Internal\CurlClientState {#2030 …}
          $execCounter: -9223372036854775808
        }
        file: "/home/batrams/Kplan/vendor/symfony/http-client/Response/CurlResponse.php"
        line: "102 to 119"
      }
      redirect_url: null
      url: "https://api.openai.com/v1/chat/completions"
      content_type: "application/json; charset=utf-8"
      header_size: 934
      request_size: 211
      filetime: -1
      ssl_verify_result: 0
      redirect_count: 0
      total_time: 0.508179
      namelookup_time: 0.200219
      connect_time: 0.206399
      pretransfer_time: 0.215989
      size_upload: 3351.0
      size_download: 496.0
      speed_download: 976.0
      speed_upload: 6596.0
      download_content_length: 496.0
      upload_content_length: 3351.0
      starttransfer_time: 0.216012
      redirect_time: 0.0
      primary_ip: "162.159.140.245"
      certinfo: []
      primary_port: 443
      local_ip: "10.123.20.10"
      local_port: 40962
      http_version: 3
      protocol: 2
      ssl_verifyresult: 0
      scheme: "HTTPS"
      appconnect_time_us: 215777
      connect_time_us: 206399
      namelookup_time_us: 200219
      pretransfer_time_us: 215989
      redirect_time_us: 0
      starttransfer_time_us: 216012
      total_time_us: 508179
      debug: "Due to a bug in curl 7.64.0, the debug log is disabled; use another version to work around the issue."
       …16
    }
    -content: & """
      {\n
          "error": {\n
              "message": "You didn't provide an API key. You need to provide your API key in an Authorization header using Bearer auth (i.e. Authorization: Bearer YOUR_KEY), or as the password field (with blank username) if you're accessing the API from your browser and are prompted for a username and password. You can obtain an API key from https://platform.openai.com/account/api-keys.",\n
              "type": "invalid_request_error",\n
              "param": null,\n
              "code": null\n
          }\n
      }\n
      """
    -event: Symfony\Component\Stopwatch\StopwatchEvent {#2058
      -periods: array:1 [
        0 => Symfony\Component\Stopwatch\StopwatchPeriod {#2057
          -start: 92.5
          -end: 601.1
          -memory: 16777216
        }
      ]
      -origin: 1777911018929.1
      -category: "http_client"
      -started: []
      -name: "POST https://api.openai.com/v1/chat/completions"
      -morePrecision: true
    }
  }
}
  1. if (500 <= $code) {
  2. throw new ServerException($this);
  3. }
  4. if (400 <= $code) {
  5. throw new ClientException($this);
  6. }
  7. if (300 <= $code) {
  8. throw new RedirectionException($this);
  9. }
  1. } finally {
  2. if ($this->event?->isStarted()) {
  3. $this->event->stop();
  4. }
  5. if ($throw) {
  6. $this->checkStatusCode($this->response->getStatusCode());
  7. }
  8. }
  9. }
  10. public function toArray(bool $throw = true): array
TraceableResponse->getContent() in src/Domain/Services/AI/OpenAiAPIService.php (line 72)
  1. ],
  2. 'temperature' => 0.7,
  3. ],
  4. ]);
  5. return $response->getContent();
  6. });
  7. return $this->decodeChatGptResponse($response);
  8. }
in vendor/symfony/cache/Adapter/TraceableAdapter.php -> {closure:App\Domain\Services\AI\OpenAiAPIService::analyseKPI():58} (line 48)
  1. $isHit = true;
  2. $callback = function (CacheItem $item, bool &$save) use ($callback, &$isHit) {
  3. $isHit = $item->isHit();
  4. return $callback($item, $save);
  5. };
  6. $event = $this->start(__FUNCTION__);
  7. try {
  8. $value = $this->pool->get($key, $callback, $beta, $metadata);
in vendor/symfony/cache/LockRegistry.php -> {closure:Symfony\Component\Cache\Adapter\TraceableAdapter::get():45} (line 111)
  1. if ($locked || !$wouldBlock) {
  2. $logger?->info(sprintf('Lock %s, now computing item "{key}"', $locked ? 'acquired' : 'not supported'), ['key' => $item->getKey()]);
  3. self::$lockedFiles[$key] = true;
  4. $value = $callback($item, $save);
  5. if ($save) {
  6. if ($setMetadata) {
  7. $setMetadata($item);
  8. }
  1. if (!isset($this->callbackWrapper)) {
  2. $this->setCallbackWrapper($this->setCallbackWrapper(null));
  3. }
  4. try {
  5. $value = ($this->callbackWrapper)($callback, $item, $save, $pool, function (CacheItem $item) use ($setMetadata, $startTime, &$metadata) {
  6. $setMetadata($item, $startTime, $metadata);
  7. }, $this->logger ?? null);
  8. $setMetadata($item, $startTime, $metadata);
  9. return $value;
in vendor/symfony/cache-contracts/CacheTrait.php -> {closure:Symfony\Component\Cache\Traits\ContractsTrait::doGet():85} (line 64)
  1. }
  2. }
  3. if ($recompute) {
  4. $save = true;
  5. $item->set($callback($item, $save));
  6. if ($save) {
  7. $pool->save($item);
  8. }
  9. }
  1. CacheItem::class
  2. );
  3. $this->callbackWrapper ??= LockRegistry::compute(...);
  4. return $this->contractsGet($pool, $key, function (CacheItem $item, bool &$save) use ($pool, $callback, $setMetadata, &$metadata, $key) {
  5. // don't wrap nor save recursive calls
  6. if (isset($this->computing[$key])) {
  7. $value = $callback($item, $save);
  8. $save = false;
  1. */
  2. trait CacheTrait
  3. {
  4. public function get(string $key, callable $callback, ?float $beta = null, ?array &$metadata = null): mixed
  5. {
  6. return $this->doGet($this, $key, $callback, $beta, $metadata);
  7. }
  8. public function delete(string $key): bool
  9. {
  10. return $this->deleteItem($key);
  1. return $callback($item, $save);
  2. };
  3. $event = $this->start(__FUNCTION__);
  4. try {
  5. $value = $this->pool->get($key, $callback, $beta, $metadata);
  6. $event->result[$key] = get_debug_type($value);
  7. } finally {
  8. $event->end = microtime(true);
  9. }
  10. if ($isHit) {
TraceableAdapter->get('011faf1e180fe65f70e532d1ea39d0e6', object(Closure)) in src/Domain/Services/AI/OpenAiAPIService.php (line 58)
  1. public function analyseKPI(string $prompt): array
  2. {
  3. $cacheKey = md5($prompt);
  4. $response = $this->cache->get($cacheKey, function(ItemInterface $item) use ($prompt) {
  5. $item->expiresAfter(self::CACHE_DURATION);
  6. $response = $this->client->request('POST', $this->apiUrl, [
  7. 'headers' => $this->getHeaders(),
  8. 'json' => [
  9. 'model' => 'gpt-4o',
OpenAiAPIService->analyseKPI('Tu es un expert en suivi-évaluation de projets gouvernementaux. Je vais te fournir un ensemble de données (KPIs globaux, projets en retard, incidents...).Génère une liste d\'insights structurés en JSON respectant strictement le modèle suivant :[ { "observation": "[emoji] Titre de l’observation (phrase courte)", "description": "Texte explicatif ou analyse en une phrase", "actionable_steps": ["Étape concrète à envisager", "Autre action à prendre"], "keywords": ["mot-clé-1", "mot-clé-2"] }]Ne commente pas. Ne fournis aucun texte hors du tableau JSON.Voici les données :- execution_rate : 1.28 (metadata : {"value":1.28,"period":"2025-09","variation":0,"department":null,"performance":0,"project_count":1})- milestone_processing_delay : 0 (metadata : {"value":0,"department":null,"fill_delay":13.03,"approve_delay":0,"validate_delay":0,"fill_trend_delay":0,"approve_trend_delay":0,"validate_trend_delay":0})- milestone_performance_score : 0 (metadata : {"value":0,"metadata":{"raw_delays":{"fill_delay":0,"approve_delay":0,"validate_delay":0},"weighted_delay":0},"department":null})- top_5_projects : 0 (metadata : {"value":0,"metadata":[],"department":null})- flop_5_projects : 0 (metadata : {"value":0,"metadata":[{"id":1,"owner":"SENTER\\/DG","acronym":"MEPDU","gap_avg":-98.72,"project":"Mise en place d\'une usine de Traverse en B\\u00e9ton","performance":1.28,"actual_progress_avg":1.28,"planned_progress_avg":100,"relative_performance":1.28}],"department":null})- projects_performance : 1.28 (metadata : {"trend":0,"value":1.28,"period":"2025-09","variation":0,"department":null,"project_count":1,"project_count_status":"stable","delayed_project_count":1,"on_time_project_count":0})- budget_allocated : 10000000000 (metadata : {"unit":"FCFA","value":10000000000,"department":null})- budget_committed : 2603000 (metadata : {"unit":"FCFA","value":2603000,"department":null})- budget_disbursed : 0 (metadata : {"unit":"FCFA","value":0,"department":null})- budget_execution_rate : 0 (metadata : {"unit":"%","value":0,"department":null})Rédige les insights sous forme de liste avec des emojis et des mots-clés utiles.') in src/Domain/UseCase/AI/DashboardInsightUseCase.php (line 20)
  1. array $kpis,
  2. ): array
  3. {
  4. $prompt = $this->buildPrompt($kpis);
  5. return $this->openAPIService->analyseKPI($prompt);
  6. }
  7. private function buildPrompt(array $kpis): string
  8. {
  9. $prompt = "Tu es un expert en suivi-évaluation de projets gouvernementaux. Je vais te fournir un ensemble de données (KPIs globaux, projets en retard, incidents...).
DashboardInsightUseCase->execute(array(object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI))) in src/Controller/Dashboard/DashboardController.php (line 113)
  1. if ($departmentId) {
  2. $department = $this->departmentRepository->find($departmentId);
  3. }
  4. $kpis = $this->getKpis($organization, $periodMonth, $periodYear, $department);
  5. $insights = $useCase->execute($kpis);
  6. return $this->json($insights);
  7. }
  8. private function getKpis(
in vendor/symfony/http-kernel/HttpKernel.php -> dashboardInsights (line 183)
  1. $this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);
  2. $controller = $event->getController();
  3. $arguments = $event->getArguments();
  4. // call controller
  5. $response = $controller(...$arguments);
  6. // view
  7. if (!$response instanceof Response) {
  8. $event = new ViewEvent($this, $request, $type, $response, $event);
  9. $this->dispatcher->dispatch($event, KernelEvents::VIEW);
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. $this->boot();
  2. ++$this->requestStackSize;
  3. $this->resetServices = true;
  4. try {
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. } finally {
  7. --$this->requestStackSize;
  8. }
  9. }
  1. ) {
  2. }
  3. public function run(): int
  4. {
  5. $response = $this->kernel->handle($this->request);
  6. if (Kernel::VERSION_ID >= 60400) {
  7. $response->send(false);
  8. if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in vendor/autoload_runtime.php -> run (line 29)
  1. $app = $app(...$args);
  2. exit(
  3. $runtime
  4. ->getRunner($app)
  5. ->run()
  6. );
require_once('/home/batrams/Kplan/vendor/autoload_runtime.php') in public/index.php (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5. return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

Logs

Level Channel Message
DEBUG 20:08:07 php Warning: Zend OPcache API is restricted by "restrict_api" configuration directive
{
    "exception": {
        "severity": 2,
        "file": "/home/batrams/Kplan/vendor/symfony/error-handler/DebugClassLoader.php",
        "line": 296,
        "trace": [
            {
                "file": "/home/batrams/Kplan/vendor/doctrine/doctrine-bundle/src/DoctrineBundle.php",
                "line": 132,
                "function": "loadClass",
                "class": "Symfony\\Component\\ErrorHandler\\DebugClassLoader",
                "type": "->"
            }
        ],
        "count": 8
    }
}
INFO 20:08:07 request Matched route "_profiler".
{
    "route": "_profiler",
    "route_parameters": {
        "_route": "_profiler",
        "_controller": "web_profiler.controller.profiler::panelAction",
        "token": "8de05d"
    },
    "request_uri": "https://www.kplan.kameldigitalsn.com/public/_profiler/8de05d?panel=exception&type=request",
    "method": "GET"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Stof\DoctrineExtensionsBundle\EventListener\IpTraceListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Stof\\DoctrineExtensionsBundle\\EventListener\\IpTraceListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bridge\\Doctrine\\Middleware\\IdleConnection\\Listener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\FragmentListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Knp\\Bundle\\PaginatorBundle\\Subscriber\\SlidingPaginationSubscriber::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Stof\DoctrineExtensionsBundle\EventListener\BlameListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Stof\\DoctrineExtensionsBundle\\EventListener\\BlameListener::onKernelRequest"
}
INFO 20:08:07 doctrine Connecting with parameters {params}
{
    "params": {
        "dbname": "batramskplan",
        "host": "batramskplan.mysql.db",
        "port": "3306",
        "user": "batramskplan",
        "password": "<redacted>",
        "use_savepoints": true,
        "driver": "pdo_mysql",
        "idle_connection_ttl": 600,
        "driverOptions": [],
        "defaultTableOptions": {
            "collation": "utf8mb4_unicode_ci"
        },
        "charset": "utf8mb4"
    }
}
INFO 20:08:07 deprecation User Deprecated: Using ArrayAccess on Doctrine\ORM\Mapping\FieldMapping is deprecated and will not be possible in Doctrine ORM 4.0. Use the corresponding property instead. (ArrayAccessImplementation.php:31 called by AbstractAnnotationDriver.php:134, https://github.com/doctrine/orm/pull/11211, package doctrine/orm)
{
    "exception": {}
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "DH\AuditorBundle\Event\ViewerEventSubscriber::onKernelController".
{
    "event": "kernel.controller",
    "listener": "DH\\AuditorBundle\\Event\\ViewerEventSubscriber::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "App\EventSubscriber\PermissionsOnlySubscriber::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "App\\EventSubscriber\\PermissionsOnlySubscriber::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "ContainerTQBsBG0\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerTQBsBG0\\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Stof\DoctrineExtensionsBundle\EventListener\IpTraceListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Stof\\DoctrineExtensionsBundle\\EventListener\\IpTraceListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bridge\\Doctrine\\Middleware\\IdleConnection\\Listener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\FragmentListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Knp\\Bundle\\PaginatorBundle\\Subscriber\\SlidingPaginationSubscriber::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Stof\DoctrineExtensionsBundle\EventListener\BlameListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Stof\\DoctrineExtensionsBundle\\EventListener\\BlameListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "DH\AuditorBundle\Event\ViewerEventSubscriber::onKernelController".
{
    "event": "kernel.controller",
    "listener": "DH\\AuditorBundle\\Event\\ViewerEventSubscriber::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "App\EventSubscriber\PermissionsOnlySubscriber::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "App\\EventSubscriber\\PermissionsOnlySubscriber::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "ContainerTQBsBG0\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerTQBsBG0\\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\Firewall\ContextListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\Security\\Http\\Firewall\\ContextListener::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ResponseListener::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\WebLink\EventListener\AddLinkHeaderListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\WebLink\\EventListener\\AddLinkHeaderListener::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ProfilerListener::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::removeCspHeader".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::removeCspHeader"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Bundle\\WebProfilerBundle\\EventListener\\WebDebugToolbarListener::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\DisallowRobotsIndexingListener::onResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DisallowRobotsIndexingListener::onResponse"
}
DEBUG 20:08:07 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelResponse".
{
    "event": "kernel.response",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelResponse"
}
DEBUG 20:08:07 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelFinishRequest"
}
DEBUG 20:08:07 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelFinishRequest"
}
DEBUG 20:08:07 event Notified event "kernel.finish_request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelFinishRequest"
}
DEBUG 20:08:07 event Notified event "kernel.finish_request" to listener "Symfony\WebpackEncoreBundle\EventListener\ResetAssetsEventListener::resetAssets".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\WebpackEncoreBundle\\EventListener\\ResetAssetsEventListener::resetAssets"
}
DEBUG 20:08:07 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelFinishRequest".
{
    "event": "kernel.finish_request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelFinishRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Stof\DoctrineExtensionsBundle\EventListener\IpTraceListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Stof\\DoctrineExtensionsBundle\\EventListener\\IpTraceListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bridge\\Doctrine\\Middleware\\IdleConnection\\Listener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\FragmentListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Knp\\Bundle\\PaginatorBundle\\Subscriber\\SlidingPaginationSubscriber::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.request" to listener "Stof\DoctrineExtensionsBundle\EventListener\BlameListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Stof\\DoctrineExtensionsBundle\\EventListener\\BlameListener::onKernelRequest"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller" to listener "DH\AuditorBundle\Event\ViewerEventSubscriber::onKernelController".
{
    "event": "kernel.controller",
    "listener": "DH\\AuditorBundle\\Event\\ViewerEventSubscriber::onKernelController"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "App\EventSubscriber\PermissionsOnlySubscriber::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "App\\EventSubscriber\\PermissionsOnlySubscriber::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "ContainerTQBsBG0\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerTQBsBG0\\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments"
}
DEBUG 20:08:07 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}

Stack Trace

ClientException
Symfony\Component\HttpClient\Exception\ClientException:
HTTP/2 401  returned for "https://api.openai.com/v1/chat/completions".

  at vendor/symfony/http-client/Response/TraceableResponse.php:209
  at Symfony\Component\HttpClient\Response\TraceableResponse->checkStatusCode(401)
     (vendor/symfony/http-client/Response/TraceableResponse.php:100)
  at Symfony\Component\HttpClient\Response\TraceableResponse->getContent()
     (src/Domain/Services/AI/OpenAiAPIService.php:72)
  at App\Domain\Services\AI\OpenAiAPIService->{closure:App\Domain\Services\AI\OpenAiAPIService::analyseKPI():58}(object(CacheItem), true)
     (vendor/symfony/cache/Adapter/TraceableAdapter.php:48)
  at Symfony\Component\Cache\Adapter\TraceableAdapter->{closure:Symfony\Component\Cache\Adapter\TraceableAdapter::get():45}(object(CacheItem), true)
     (vendor/symfony/cache/LockRegistry.php:111)
  at Symfony\Component\Cache\LockRegistry::compute(object(Closure), object(CacheItem), true, object(FilesystemAdapter), object(Closure), object(Logger))
     (vendor/symfony/cache/Traits/ContractsTrait.php:102)
  at Symfony\Component\Cache\Adapter\AbstractAdapter->{closure:Symfony\Component\Cache\Traits\ContractsTrait::doGet():85}(object(CacheItem), true)
     (vendor/symfony/cache-contracts/CacheTrait.php:64)
  at Symfony\Component\Cache\Adapter\AbstractAdapter->contractsGet(object(FilesystemAdapter), '011faf1e180fe65f70e532d1ea39d0e6', object(Closure), 1.0, array(), object(Logger))
     (vendor/symfony/cache/Traits/ContractsTrait.php:85)
  at Symfony\Component\Cache\Adapter\AbstractAdapter->doGet(object(FilesystemAdapter), '011faf1e180fe65f70e532d1ea39d0e6', object(Closure), 1.0, array())
     (vendor/symfony/cache-contracts/CacheTrait.php:30)
  at Symfony\Component\Cache\Adapter\AbstractAdapter->get('011faf1e180fe65f70e532d1ea39d0e6', object(Closure), null, array())
     (vendor/symfony/cache/Adapter/TraceableAdapter.php:53)
  at Symfony\Component\Cache\Adapter\TraceableAdapter->get('011faf1e180fe65f70e532d1ea39d0e6', object(Closure))
     (src/Domain/Services/AI/OpenAiAPIService.php:58)
  at App\Domain\Services\AI\OpenAiAPIService->analyseKPI('Tu es un expert en suivi-évaluation de projets gouvernementaux. Je vais te fournir un ensemble de données (KPIs globaux, projets en retard, incidents...).Génère une liste d\'insights structurés en JSON respectant strictement le modèle suivant :[  {    "observation": "[emoji] Titre de l’observation (phrase courte)",    "description": "Texte explicatif ou analyse en une phrase",    "actionable_steps": ["Étape concrète à envisager", "Autre action à prendre"],    "keywords": ["mot-clé-1", "mot-clé-2"]  }]Ne commente pas. Ne fournis aucun texte hors du tableau JSON.Voici les données :- execution_rate : 1.28 (metadata : {"value":1.28,"period":"2025-09","variation":0,"department":null,"performance":0,"project_count":1})- milestone_processing_delay : 0 (metadata : {"value":0,"department":null,"fill_delay":13.03,"approve_delay":0,"validate_delay":0,"fill_trend_delay":0,"approve_trend_delay":0,"validate_trend_delay":0})- milestone_performance_score : 0 (metadata : {"value":0,"metadata":{"raw_delays":{"fill_delay":0,"approve_delay":0,"validate_delay":0},"weighted_delay":0},"department":null})- top_5_projects : 0 (metadata : {"value":0,"metadata":[],"department":null})- flop_5_projects : 0 (metadata : {"value":0,"metadata":[{"id":1,"owner":"SENTER\\/DG","acronym":"MEPDU","gap_avg":-98.72,"project":"Mise en place d\'une usine de Traverse en B\\u00e9ton","performance":1.28,"actual_progress_avg":1.28,"planned_progress_avg":100,"relative_performance":1.28}],"department":null})- projects_performance : 1.28 (metadata : {"trend":0,"value":1.28,"period":"2025-09","variation":0,"department":null,"project_count":1,"project_count_status":"stable","delayed_project_count":1,"on_time_project_count":0})- budget_allocated : 10000000000 (metadata : {"unit":"FCFA","value":10000000000,"department":null})- budget_committed : 2603000 (metadata : {"unit":"FCFA","value":2603000,"department":null})- budget_disbursed : 0 (metadata : {"unit":"FCFA","value":0,"department":null})- budget_execution_rate : 0 (metadata : {"unit":"%","value":0,"department":null})Rédige les insights sous forme de liste avec des emojis et des mots-clés utiles.')
     (src/Domain/UseCase/AI/DashboardInsightUseCase.php:20)
  at App\Domain\UseCase\AI\DashboardInsightUseCase->execute(array(object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI), object(DashboardKPI)))
     (src/Controller/Dashboard/DashboardController.php:113)
  at App\Controller\Dashboard\DashboardController->dashboardInsights(object(Request), object(DashboardInsightUseCase))
     (vendor/symfony/http-kernel/HttpKernel.php:183)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
     (vendor/symfony/http-kernel/Kernel.php:182)
  at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:29)
  at require_once('/home/batrams/Kplan/vendor/autoload_runtime.php')
     (public/index.php:5)