public function handle(Request $request, Closure $next): Response 	{ 		$user = $request->user(); 		$route = $request->route()->getName();  		if ( 			!$user 			|| !$user->isAvailable() 			|| !$user->hasAllowedMethod($request->method()) 			|| ($route && !$user->canViewRoute($route)) 		) { 			abort(Response::HTTP_FORBIDDEN, (string) __('auth.forbidden-permissions')); 		}  		$dryRunHeaderName = config('custom.dry_run_header_name');  		if ($header = $request->header($dryRunHeaderName) && !$this->checkIfMiddlewareExistsInStack('restrict_by_user_type', $request->route()->gatherMiddleware())) { 			abort(Response::HTTP_NO_CONTENT, '', [ 				$dryRunHeaderName => $header, 			]); 		}  		return $next($request); 	}