public function checkIfBenchmarkSurveyGenerationIsPossible(ClientSurvey $client_survey, Request $request): void 	{ 		$client_survey->load([ 			'applicants' => function ($query) { 				$query->available()->final(); 			}, 		]);  		$locale = $request->language ?? DomainLanguages::getDefaultLanguage(); 		$cycle = $client_survey->survey->cycles()->forCurrentUserDomain()->firstOrFail();  		if ($cycle->benchmark_report_publication_date->gt(now())) { 			abort(403, (string) __('client-surveys.report-generation-errors.benchmark-date-not-reached', ['date' => formatTimestamp($cycle->benchmark_report_publication_date, 'Y-m-d')], $locale)); 		}  		if ($client_survey->applicants->where('filled', true)->where('draft', false)->whereNotNull('enps_grade')->count() < setting('min_employees')) { 			abort(422, (string) __('client-surveys.validation.not-enough-surveys')); 		}  		if (!$client_survey->where('relevant', true) 		->where('paid', true) 		->where('draft', false)->exists()) { 			abort(422, (string) __('client-surveys.validation.survey-not-available-for-report-generation')); 		}  		if (!$client_survey->comparable) { 			abort(422, (string) __('client-surveys.validation.benchmark-not-approved')); 		}  		if (!isset($client_survey->client->industry->parent)) { 			abort(404, (string) __('client-surveys.validation.missing-industry')); 		}  		$this->checkIfSurveyGenerationIsPossible($client_survey, $request); 	}