public function getAllDataIfGroupQuestionIsSelected(): array 	{ 		$comparativeExtraQuestionService = new ComparativeExtraQuestionService($this->client_survey, $this->request, $this->locale, $this->group_question_id); 		$locations = []; 		$departments = [];  		// get location & department names 		$location_department_names = $this->comparativePdfService->getLocationAndDepartmentNames([ 			'locations' => $this->location_ids, 			'departments' => $this->department_ids, 		], $this->locale);  		$locations = $location_department_names['locations']; 		$departments = $location_department_names['departments'];  		$extra_filters_selected = $this->checkIfExtraQuestionGroupIsSelectedWithLocationsDepartments($locations, $departments); 		$extra_question_titles = $comparativeExtraQuestionService->getExtraQuestionTitles($this->locale, $extra_filters_selected);  		foreach ($this->question_filter_values as $question_filter_value) { 			$question_id_with_filter_value[$this->group_question_id] = [$question_filter_value];  			$applicants = $this->service->filterClientSurveyApplicants($this->client_survey, $this->request, $this->location_ids, $this->department_ids, $question_id_with_filter_value); 			$applicants_ids = $applicants->pluck('id')->all();  			$categories_data = $this->service->getCategoriesAverageScore($this->client_survey->survey->categories, $applicants_ids, $this->locale);  			if (count($applicants_ids)) { 				$this->comparativeDataObject->setApplicants(true);  				// CATEGORIES 				array_push($this->all_matrix_data, [ 					'title' => $this->generateColumnTitle($extra_question_titles, $this->question_available_answers[$question_filter_value - 1], $locations, $departments), 					'data' => $categories_data, 				]);  				// ENGAGEMENT 				array_push($this->all_engagement_data, [ 					'title' => $this->generateColumnTitle($extra_question_titles, $this->question_available_answers[$question_filter_value - 1], $locations, $departments), 					'data' => $this->service->getAllEngagementsData($this->client_survey, $applicants_ids), 				]);  				// ENPS 				array_push($this->all_enps_data, [ 					'title' => $this->generateColumnTitle($extra_question_titles, $this->question_available_answers[$question_filter_value - 1], $locations, $departments), 					'enps_score' => $this->service->getAllEnpsData($this->client_survey, $applicants_ids)['enps_score'], 					'enps_percentage_data' => $this->service->getAllEnpsData($this->client_survey, $applicants_ids)['enps_percentage_data'], 				]);  				// ESI 				$esiObject = App::make(EsiMetrics::class)->generate($applicants);  				array_push($this->all_esi_data, [ 					'client_survey_id' => $this->client_survey->getKey(), 					'year' => $this->client_survey->survey->year, 					'year_average' => $esiObject->getEsiTotal(), 					'esi_workplace_expectations' => $esiObject->getWorkplaceExpectations()->getAverage(), 					'esi_workplace_satisfaction' => $esiObject->getWorkplaceSatisfaction()->getAverage(), 					'esi_ideal_job_comparison' => $esiObject->getIdealJobComparison()->getAverage(), 					'title' => $this->generateColumnTitle($extra_question_titles, $this->question_available_answers[$question_filter_value - 1], $locations, $departments), 				]); 			} 		}  		return [ 			'all_matrix_data' => $this->all_matrix_data, 			'all_engagement_data' => $this->all_engagement_data, 			'all_enps_data' => $this->all_enps_data, 			'all_esi_data' => $this->all_esi_data,  		]; 	}