Index: app/Http/Middleware/Authenticate.php
===================================================================
--- app/Http/Middleware/Authenticate.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/Authenticate.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,17 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Auth\Middleware\Authenticate as Middleware;
+use Illuminate\Http\Request;
+
+class Authenticate extends Middleware
+{
+    /**
+     * Get the path the user should be redirected to when they are not authenticated.
+     */
+    protected function redirectTo(Request $request): ?string
+    {
+        return $request->expectsJson() ? null : route('login');
+    }
+}
Index: app/Http/Middleware/EncryptCookies.php
===================================================================
--- app/Http/Middleware/EncryptCookies.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/EncryptCookies.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,17 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Cookie\Middleware\EncryptCookies as Middleware;
+
+class EncryptCookies extends Middleware
+{
+    /**
+     * The names of the cookies that should not be encrypted.
+     *
+     * @var array<int, string>
+     */
+    protected $except = [
+        //
+    ];
+}
Index: app/Http/Middleware/PreventRequestsDuringMaintenance.php
===================================================================
--- app/Http/Middleware/PreventRequestsDuringMaintenance.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/PreventRequestsDuringMaintenance.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,17 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance as Middleware;
+
+class PreventRequestsDuringMaintenance extends Middleware
+{
+    /**
+     * The URIs that should be reachable while maintenance mode is enabled.
+     *
+     * @var array<int, string>
+     */
+    protected $except = [
+        //
+    ];
+}
Index: app/Http/Middleware/RedirectIfAuthenticated.php
===================================================================
--- app/Http/Middleware/RedirectIfAuthenticated.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/RedirectIfAuthenticated.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,30 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use App\Providers\RouteServiceProvider;
+use Closure;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Auth;
+use Symfony\Component\HttpFoundation\Response;
+
+class RedirectIfAuthenticated
+{
+    /**
+     * Handle an incoming request.
+     *
+     * @param  \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response)  $next
+     */
+    public function handle(Request $request, Closure $next, string ...$guards): Response
+    {
+        $guards = empty($guards) ? [null] : $guards;
+
+        foreach ($guards as $guard) {
+            if (Auth::guard($guard)->check()) {
+                return redirect(RouteServiceProvider::HOME);
+            }
+        }
+
+        return $next($request);
+    }
+}
Index: app/Http/Middleware/TrimStrings.php
===================================================================
--- app/Http/Middleware/TrimStrings.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/TrimStrings.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,19 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Foundation\Http\Middleware\TrimStrings as Middleware;
+
+class TrimStrings extends Middleware
+{
+    /**
+     * The names of the attributes that should not be trimmed.
+     *
+     * @var array<int, string>
+     */
+    protected $except = [
+        'current_password',
+        'password',
+        'password_confirmation',
+    ];
+}
Index: app/Http/Middleware/TrustHosts.php
===================================================================
--- app/Http/Middleware/TrustHosts.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/TrustHosts.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,20 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Http\Middleware\TrustHosts as Middleware;
+
+class TrustHosts extends Middleware
+{
+    /**
+     * Get the host patterns that should be trusted.
+     *
+     * @return array<int, string|null>
+     */
+    public function hosts(): array
+    {
+        return [
+            $this->allSubdomainsOfApplicationUrl(),
+        ];
+    }
+}
Index: app/Http/Middleware/TrustProxies.php
===================================================================
--- app/Http/Middleware/TrustProxies.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/TrustProxies.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,28 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Http\Middleware\TrustProxies as Middleware;
+use Illuminate\Http\Request;
+
+class TrustProxies extends Middleware
+{
+    /**
+     * The trusted proxies for this application.
+     *
+     * @var array<int, string>|string|null
+     */
+    protected $proxies;
+
+    /**
+     * The headers that should be used to detect proxies.
+     *
+     * @var int
+     */
+    protected $headers =
+        Request::HEADER_X_FORWARDED_FOR |
+        Request::HEADER_X_FORWARDED_HOST |
+        Request::HEADER_X_FORWARDED_PORT |
+        Request::HEADER_X_FORWARDED_PROTO |
+        Request::HEADER_X_FORWARDED_AWS_ELB;
+}
Index: app/Http/Middleware/ValidateSignature.php
===================================================================
--- app/Http/Middleware/ValidateSignature.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/ValidateSignature.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,22 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Routing\Middleware\ValidateSignature as Middleware;
+
+class ValidateSignature extends Middleware
+{
+    /**
+     * The names of the query string parameters that should be ignored.
+     *
+     * @var array<int, string>
+     */
+    protected $except = [
+        // 'fbclid',
+        // 'utm_campaign',
+        // 'utm_content',
+        // 'utm_medium',
+        // 'utm_source',
+        // 'utm_term',
+    ];
+}
Index: app/Http/Middleware/VerifyCsrfToken.php
===================================================================
--- app/Http/Middleware/VerifyCsrfToken.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
+++ app/Http/Middleware/VerifyCsrfToken.php	(revision c454c0f93713a533502b59e836c3d5437dc28a04)
@@ -0,0 +1,17 @@
+<?php
+
+namespace App\Http\Middleware;
+
+use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
+
+class VerifyCsrfToken extends Middleware
+{
+    /**
+     * The URIs that should be excluded from CSRF verification.
+     *
+     * @var array<int, string>
+     */
+    protected $except = [
+        //
+    ];
+}
