You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ri...@apache.org on 2026/05/05 12:24:21 UTC

(phoenix-site) branch asf-site updated: PHOENIX-7807: Addendum: add independent static 404 page (#18)

This is an automated email from the ASF dual-hosted git repository.

richardantal pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/phoenix-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 73519036 PHOENIX-7807: Addendum: add independent static 404 page (#18)
73519036 is described below

commit 73519036d48458f2e9393530b477725292f8a88c
Author: Yurii Palamarchuk <yu...@gmail.com>
AuthorDate: Tue May 5 14:24:15 2026 +0200

    PHOENIX-7807: Addendum: add independent static 404 page (#18)
---
 README.md                                          |   4 +-
 app/routes.ts                                      |   1 -
 app/routes/404.tsx                                 |  58 --------
 output/.htaccess                                   |   2 +-
 output/404.html                                    | 157 +++++++++++++++++++++
 output/404/index.html                              |  38 -----
 output/__spa-fallback.html                         |   6 +-
 output/assets/404-BAhoWCKG.js                      |   1 -
 output/assets/app-BY1sUmqX.css                     |   1 +
 output/assets/app-Rl_ZgLAo.css                     |   1 -
 output/assets/manifest-3a78eba7.js                 |   1 +
 output/assets/manifest-aa6e1522.js                 |   1 -
 .../assets/{root-BHBAHx51.js => root-BpXmv09N.js}  |   4 +-
 .../apache-phoenix-reference-guide-dark-mode.pdf   | Bin 14964949 -> 14964585 bytes
 output/books/apache-phoenix-reference-guide.pdf    | Bin 14931145 -> 14930830 bytes
 .../phoenix-omid-transaction-manager/index.html    |   6 +-
 output/docs/addons/phoenix-orm-library/index.html  |   6 +-
 .../phoenix-tephra-transaction-manager/index.html  |   6 +-
 output/docs/array-type/index.html                  |   6 +-
 .../docs/contributing/building-website/index.html  |   6 +-
 output/docs/contributing/develop/index.html        |   6 +-
 output/docs/contributing/how-to-release/index.html |   6 +-
 output/docs/contributing/index.html                |   6 +-
 output/docs/datatypes/index.html                   |   6 +-
 output/docs/explain-plan/index.html                |   6 +-
 output/docs/faq/index.html                         |   6 +-
 output/docs/features/atomic-upsert/index.html      |   6 +-
 output/docs/features/bson/index.html               |   6 +-
 output/docs/features/bulk-loading/index.html       |   6 +-
 .../docs/features/change-data-capture/index.html   |   6 +-
 output/docs/features/conditional-ttl/index.html    |   6 +-
 output/docs/features/cursor/index.html             |   6 +-
 output/docs/features/dynamic-columns/index.html    |   6 +-
 output/docs/features/metrics/index.html            |   6 +-
 output/docs/features/multi-tenancy/index.html      |   6 +-
 output/docs/features/namespace-mapping/index.html  |   6 +-
 output/docs/features/paged-queries/index.html      |   6 +-
 .../docs/features/phoenix-row-timestamp/index.html |   6 +-
 output/docs/features/query-server/index.html       |   6 +-
 .../docs/features/row-timestamp-column/index.html  |   6 +-
 output/docs/features/salted-tables/index.html      |   6 +-
 output/docs/features/secondary-indexes/index.html  |   6 +-
 output/docs/features/segment-scan/index.html       |   6 +-
 output/docs/features/skip-scan/index.html          |   6 +-
 .../docs/features/statistics-collection/index.html |   6 +-
 output/docs/features/storage-formats/index.html    |   6 +-
 output/docs/features/table-sampling/index.html     |   6 +-
 output/docs/features/tracing/index.html            |   6 +-
 output/docs/features/transactions/index.html       |   6 +-
 output/docs/features/ttl/index.html                |   6 +-
 .../features/user-defined-functions/index.html     |   6 +-
 output/docs/features/varbinary-encoded/index.html  |   6 +-
 output/docs/features/view-ttl/index.html           |   6 +-
 output/docs/features/views/index.html              |   6 +-
 output/docs/functions/index.html                   |   6 +-
 .../fundamentals/backward-compatibility/index.html |   6 +-
 output/docs/fundamentals/building/index.html       |   6 +-
 .../client-classpath-and-jdbc-url/index.html       |   6 +-
 output/docs/fundamentals/configuration/index.html  |   6 +-
 .../fundamentals/performance-testing/index.html    |   6 +-
 output/docs/fundamentals/performance/index.html    |   6 +-
 output/docs/fundamentals/tuning-guide/index.html   |   6 +-
 output/docs/grammar/index.html                     |   6 +-
 output/docs/index.html                             |   6 +-
 output/docs/installation/index.html                |   6 +-
 output/docs/integrations/apache-hive/index.html    |   6 +-
 output/docs/integrations/flume-plugin/index.html   |   6 +-
 output/docs/integrations/kafka-plugin/index.html   |   6 +-
 .../integrations/map-reduce-integration/index.html |   6 +-
 .../docs/integrations/phoenix-dynamodb/index.html  |   6 +-
 .../docs/integrations/pig-integration/index.html   |   6 +-
 output/docs/integrations/python-driver/index.html  |   6 +-
 .../docs/integrations/spark-integration/index.html |   6 +-
 output/docs/joins/index.html                       |   6 +-
 output/docs/quick-start/index.html                 |   6 +-
 output/docs/sequences/index.html                   |   6 +-
 output/docs/single-page/index.html                 |   6 +-
 output/docs/subqueries/index.html                  |   6 +-
 output/downloads/index.html                        |   6 +-
 output/index.html                                  |   6 +-
 output/issues-tracking/index.html                  |   6 +-
 output/mailing-lists/index.html                    |   6 +-
 output/news/index.html                             |   6 +-
 output/phoenixcon-2018/index.html                  |   6 +-
 output/phoenixcon-archives/index.html              |   6 +-
 output/presentations/index.html                    |   6 +-
 output/recent-improvements/index.html              |   6 +-
 output/release-notes/index.html                    |   6 +-
 output/roadmap/index.html                          |   6 +-
 output/sitemap.xml                                 |   2 +-
 output/source-repository/index.html                |   6 +-
 output/team/index.html                             |   6 +-
 output/tech-talks/index.html                       |   6 +-
 output/who-is-using/index.html                     |   6 +-
 public/.htaccess                                   |   2 +-
 public/404.html                                    | 157 +++++++++++++++++++++
 96 files changed, 560 insertions(+), 344 deletions(-)

diff --git a/README.md b/README.md
index 4d34c878..25b1971c 100644
--- a/README.md
+++ b/README.md
@@ -242,8 +242,8 @@ Add a UI component:
 
 Update the 404 page:
 
-- Edit the content in `app/routes/404.tsx`.
-- Apache 404 handling lives in `public/.htaccess` (uses `ErrorDocument 404 /404`).
+- Edit the standalone static page in `public/404.html`.
+- Apache 404 handling lives in `public/.htaccess` (uses `ErrorDocument 404 /404.html`).
 
 Check code quality:
 
diff --git a/app/routes.ts b/app/routes.ts
index cd7b3d0e..18553ccb 100644
--- a/app/routes.ts
+++ b/app/routes.ts
@@ -27,7 +27,6 @@ export default [
   // Landing
   layout("./pages/_landing/landing-layout.tsx", [
     index("routes/_landing/home.tsx"),
-    route("404", "routes/404.tsx"),
     route("downloads", "routes/_landing/downloads.tsx"),
     route("mailing-lists", "routes/_landing/mailing-lists.tsx"),
     route("news", "routes/_landing/news.tsx"),
diff --git a/app/routes/404.tsx b/app/routes/404.tsx
deleted file mode 100644
index f17895d7..00000000
--- a/app/routes/404.tsx
+++ /dev/null
@@ -1,58 +0,0 @@
-//
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
-//
-//     http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-//
-
-import type { Route } from "./+types/404";
-import { Link } from "@/components/link";
-import { Button } from "@/ui/button";
-
-export function meta({}: Route.MetaArgs) {
-  return [
-    { title: "Page Not Found | Apache Phoenix" },
-    {
-      name: "description",
-      content:
-        "The page you are looking for does not exist. The website was updated recently, so the route you were trying to visit might have changed."
-    },
-    { name: "robots", content: "noindex, nofollow" }
-  ];
-}
-
-export default function NotFound() {
-  return (
-    <section className="container mx-auto px-4 py-16 md:py-24">
-      <div className="mx-auto flex max-w-2xl flex-col items-center text-center">
-        <p className="text-muted-foreground text-sm font-semibold tracking-[0.3em] uppercase">
-          404
-        </p>
-        <h1 className="mt-4 text-4xl font-semibold tracking-tight text-balance md:text-6xl">
-          Page not found
-        </h1>
-        <p className="text-muted-foreground mt-4 text-lg text-pretty md:text-xl">
-          The page you are looking for doesn&apos;t exist. The website was
-          updated recently, so the route you were trying to visit might have
-          changed.
-        </p>
-        <div className="mt-8 flex flex-wrap items-center justify-center gap-3">
-          <Button asChild size="lg">
-            <Link to="/">Go back home</Link>
-          </Button>
-        </div>
-      </div>
-    </section>
-  );
-}
diff --git a/output/.htaccess b/output/.htaccess
index ce0af188..6e6a952f 100644
--- a/output/.htaccess
+++ b/output/.htaccess
@@ -1,4 +1,4 @@
-ErrorDocument 404 /404/
+ErrorDocument 404 /404.html
 
 <IfModule mod_alias.c>
   # Landing pages
diff --git a/output/404.html b/output/404.html
new file mode 100644
index 00000000..fce73d28
--- /dev/null
+++ b/output/404.html
@@ -0,0 +1,157 @@
+<!doctype html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <meta name="robots" content="noindex, nofollow" />
+    <title>Page Not Found | Apache Phoenix</title>
+    <style>
+      @font-face {
+        font-family: Inter;
+        font-style: normal;
+        font-weight: 100 900;
+        font-display: swap;
+        src: url("/fonts/inter-latin-wght-normal.woff2") format("woff2");
+      }
+
+      :root {
+        color-scheme: light;
+        --radius: 0.625rem;
+        --background: oklch(1 0 0);
+        --foreground: oklch(0.145 0 0);
+        --muted-foreground: oklch(0.556 0 0);
+        --border: oklch(0.922 0 0);
+        --primary: oklch(68.67% 0.18445 44.756);
+        --primary-foreground: oklch(0.985 0 0);
+        --ring: oklch(0.708 0 0);
+      }
+
+      * {
+        box-sizing: border-box;
+      }
+
+      body {
+        min-height: 100vh;
+        margin: 0;
+        background:
+          radial-gradient(
+            circle at top,
+            rgba(249, 115, 22, 0.08),
+            transparent 32rem
+          ),
+          var(--background);
+        color: var(--foreground);
+        font-family:
+          Inter,
+          ui-sans-serif,
+          system-ui,
+          -apple-system,
+          BlinkMacSystemFont,
+          "Segoe UI",
+          sans-serif;
+      }
+
+      main {
+        display: grid;
+        min-height: 100vh;
+        place-items: center;
+        padding: 2rem;
+      }
+
+      .content {
+        width: min(100%, 42rem);
+        padding: clamp(2rem, 6vw, 4rem);
+        text-align: center;
+      }
+
+      .logo {
+        width: 9rem;
+        height: auto;
+        margin-bottom: 2rem;
+      }
+
+      .eyebrow {
+        margin: 0;
+        color: var(--muted-foreground);
+        font-size: 1rem;
+        font-weight: 700;
+        letter-spacing: 0.3em;
+        text-transform: uppercase;
+      }
+
+      h1 {
+        margin: 1rem 0 0;
+        font-size: clamp(2.5rem, 8vw, 4.5rem);
+        line-height: 1;
+        letter-spacing: -0.05em;
+      }
+
+      .message {
+        margin: 1.25rem auto 0;
+        max-width: 34rem;
+        color: var(--muted-foreground);
+        font-size: clamp(1.125rem, 2vw, 1.25rem);
+        line-height: 1.65;
+      }
+
+      .actions {
+        display: flex;
+        justify-content: center;
+        margin-top: 2rem;
+      }
+
+      .button {
+        display: inline-flex;
+        align-items: center;
+        justify-content: center;
+        gap: 0.5rem;
+        height: 2.25rem;
+        padding: 0.5rem 1rem;
+        border-radius: var(--radius);
+        background: var(--primary);
+        color: var(--primary-foreground);
+        font-size: 0.875rem;
+        font-weight: 500;
+        line-height: 1.25rem;
+        text-decoration: none;
+        white-space: nowrap;
+        box-shadow:
+          0 1px 2px 0 rgb(0 0 0 / 0.05),
+          0 1px 3px 0 rgb(0 0 0 / 0.1);
+        transition-property:
+          color, background-color, border-color, box-shadow, transform;
+        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+        transition-duration: 150ms;
+      }
+
+      .button:hover {
+        background: color-mix(in oklch, var(--primary) 90%, transparent);
+      }
+
+      .button:focus-visible {
+        outline: none;
+        border-color: var(--ring);
+        box-shadow:
+          0 1px 2px 0 rgb(0 0 0 / 0.05),
+          0 1px 3px 0 rgb(0 0 0 / 0.1),
+          0 0 0 3px color-mix(in oklch, var(--primary) 50%, transparent);
+      }
+    </style>
+  </head>
+  <body>
+    <main>
+      <section class="content" aria-labelledby="page-title">
+        <img class="logo" src="/images/logo.svg" alt="Apache Phoenix" />
+        <p class="eyebrow">404</p>
+        <h1 id="page-title">Page not found</h1>
+        <p class="message">
+          The website was updated recently, so the route you were trying to
+          visit might have changed.
+        </p>
+        <div class="actions">
+          <a class="button" href="/">Go back home</a>
+        </div>
+      </section>
+    </main>
+  </body>
+</html>
diff --git a/output/404/index.html b/output/404/index.html
deleted file mode 100644
index 77778e40..00000000
--- a/output/404/index.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Page Not Found | Apache Phoenix</title><meta name="description" content="The page you are looking for does not exist. The website was updated recently, so the route you were trying to visit might have changed."/><meta name="robots" c [...]
-              (function() {
-                const theme = localStorage.getItem('theme');
-                const root = document.documentElement;
-                root.classList.remove('light', 'dark');
-                
-                if (theme && ['light', 'dark'].includes(theme)) {
-                  root.classList.add(theme);
-                } else {
-                  const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
-                  root.classList.add(systemTheme);
-                  localStorage.setItem('theme', systemTheme);
-                }
-              })();
-            </script><noscript><style>.theme-toggle-wrapper { display: none !important; }</style></noscript></head><body class="font-base"><header class="border-border/0 bg-background/80 supports-[backdrop-filter]:bg-background/60 sticky top-0 z-50 w-full border-b backdrop-blur transition-[border] duration-200"><nav class="container mx-auto flex h-16 items-center justify-between px-4"><a class="relative z-50 flex items-center gap-3" aria-label="Phoenix Home" href="/" data-discover="true" [...]
-    if (!window.history.state || !window.history.state.key) {
-      let key = Math.random().toString(32).slice(2);
-      window.history.replaceState({ key }, "");
-    }
-    try {
-      let positions = JSON.parse(sessionStorage.getItem(storageKey2) || "{}");
-      let storedY = positions[restoreKey || window.history.state.key];
-      if (typeof storedY === "number") {
-        window.scrollTo(0, storedY);
-      }
-    } catch (error) {
-      console.error(error);
-      sessionStorage.removeItem(storageKey2);
-    }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
-import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
-import * as route2 from "/assets/404-BAhoWCKG.js";
-  
-  window.__reactRouterRouteModules = {"root":route0,"pages/_landing/landing-layout":route1,"routes/404":route2};
-
-import("/assets/entry.client-_CVK9qYI.js");</script><!--$?--><template id="B:0"></template><!--/$--><script id="_R_">requestAnimationFrame(function(){$RT=performance.now()});</script><div hidden id="S:0"><script>window.__reactRouterContext.streamController.enqueue("[{\"_1\":2,\"_3\":-5,\"_4\":-5},\"loaderData\",{},\"actionData\",\"errors\"]\n");</script><!--$?--><template id="B:1"></template><!--/$--></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){ [...]
-$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><div hidden id="S:1"><script>window.__reactRouterContext.streamController.close();</script></div><script>$RC("B:1","S:1")</script></body></html>
\ No newline at end of file
diff --git a/output/__spa-fallback.html b/output/__spa-fallback.html
index 3cdbdd66..3ff4e003 100644
--- a/output/__spa-fallback.html
+++ b/output/__spa-fallback.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="modulepreload" href="/assets/entry.client-_CVK9qYI.js" [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="modulepreload" href="/assets/entry.client-_CVK9qYI.js" [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -19,8 +19,8 @@
                 "functions. Check out https://reactrouter.com/start/framework/route-module#hydratefallback " +
                 "for more information."
               );
-            </script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":true};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamController = controller;}}).pipeTh [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+            </script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":true};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamController = controller;}}).pipeTh [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
   
   window.__reactRouterRouteModules = {"root":route0};
 
diff --git a/output/assets/404-BAhoWCKG.js b/output/assets/404-BAhoWCKG.js
deleted file mode 100644
index a92d3635..00000000
--- a/output/assets/404-BAhoWCKG.js
+++ /dev/null
@@ -1 +0,0 @@
-import{w as t,j as e}from"./chunk-EPOLDU6W-B5LwAila.js";import{L as o}from"./link-DuHRbjfY.js";import{B as n}from"./button-CG5cUoV1.js";import"./index-jbG8BFt3.js";import"./utils-Cu_tFavh.js";function l({}){return[{title:"Page Not Found | Apache Phoenix"},{name:"description",content:"The page you are looking for does not exist. The website was updated recently, so the route you were trying to visit might have changed."},{name:"robots",content:"noindex, nofollow"}]}const x=t(function(){re [...]
diff --git a/output/assets/app-BY1sUmqX.css b/output/assets/app-BY1sUmqX.css
new file mode 100644
index 00000000..ad043c75
--- /dev/null
+++ b/output/assets/app-BY1sUmqX.css
@@ -0,0 +1 @@
+@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal [...]
diff --git a/output/assets/app-Rl_ZgLAo.css b/output/assets/app-Rl_ZgLAo.css
deleted file mode 100644
index 3baa00df..00000000
--- a/output/assets/app-Rl_ZgLAo.css
+++ /dev/null
@@ -1 +0,0 @@
-@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal [...]
diff --git a/output/assets/manifest-3a78eba7.js b/output/assets/manifest-3a78eba7.js
new file mode 100644
index 00000000..e611948b
--- /dev/null
+++ b/output/assets/manifest-3a78eba7.js
@@ -0,0 +1 @@
+window.__reactRouterManifest={"entry":{"module":"/assets/entry.client-_CVK9qYI.js","imports":["/assets/chunk-EPOLDU6W-B5LwAila.js","/assets/index-FCA4GwU0.js"],"css":[]},"routes":{"root":{"id":"root","path":"","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasErrorBoundary":true,"module":"/assets/root-BpXmv09N.js","imports":["/assets/chunk-EPOLDU6W-B5LwAila.js","/assets/index-FCA4GwU0.js","/assets/theme-provider-BI6ghFmW.j [...]
\ No newline at end of file
diff --git a/output/assets/manifest-aa6e1522.js b/output/assets/manifest-aa6e1522.js
deleted file mode 100644
index c0cdc5f7..00000000
--- a/output/assets/manifest-aa6e1522.js
+++ /dev/null
@@ -1 +0,0 @@
-window.__reactRouterManifest={"entry":{"module":"/assets/entry.client-_CVK9qYI.js","imports":["/assets/chunk-EPOLDU6W-B5LwAila.js","/assets/index-FCA4GwU0.js"],"css":[]},"routes":{"root":{"id":"root","path":"","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasErrorBoundary":true,"module":"/assets/root-BHBAHx51.js","imports":["/assets/chunk-EPOLDU6W-B5LwAila.js","/assets/index-FCA4GwU0.js","/assets/theme-provider-BI6ghFmW.j [...]
\ No newline at end of file
diff --git a/output/assets/root-BHBAHx51.js b/output/assets/root-BpXmv09N.js
similarity index 95%
rename from output/assets/root-BHBAHx51.js
rename to output/assets/root-BpXmv09N.js
index 3a059675..ae9a1df1 100644
--- a/output/assets/root-BHBAHx51.js
+++ b/output/assets/root-BpXmv09N.js
@@ -1,4 +1,4 @@
-import{w as a,a as i,j as e,M as l,b as c,S as h,c as m,O as d,i as p}from"./chunk-EPOLDU6W-B5LwAila.js";import{T as u}from"./theme-provider-BI6ghFmW.js";const f="/assets/app-Rl_ZgLAo.css",j=()=>[{rel:"preload",as:"font",href:"/fonts/inter-latin-wght-normal.woff2",type:"font/woff2",crossOrigin:"anonymous"},{rel:"prefetch",as:"font",href:"/fonts/inter-latin-wght-italic.woff2",type:"font/woff2",crossOrigin:"anonymous"},{rel:"stylesheet",href:f}];function y({children:s}){return e.jsxs("html [...]
+import{w as a,a as i,j as e,M as l,b as c,S as h,c as m,O as d,i as p}from"./chunk-EPOLDU6W-B5LwAila.js";import{T as u}from"./theme-provider-BI6ghFmW.js";const f="/assets/app-BY1sUmqX.css",g=()=>[{rel:"preload",as:"font",href:"/fonts/inter-latin-wght-normal.woff2",type:"font/woff2",crossOrigin:"anonymous"},{rel:"prefetch",as:"font",href:"/fonts/inter-latin-wght-italic.woff2",type:"font/woff2",crossOrigin:"anonymous"},{rel:"stylesheet",href:f}];function y({children:s}){return e.jsxs("html [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -12,4 +12,4 @@ import{w as a,a as i,j as e,M as l,b as c,S as h,c as m,O as d,i as p}from"./chu
                   localStorage.setItem('theme', systemTheme);
                 }
               })();
-            `}}),e.jsx("noscript",{children:e.jsx("style",{children:".theme-toggle-wrapper { display: none !important; }"})})]}),e.jsx("body",{className:"font-base",children:e.jsxs(u,{defaultTheme:"light",children:[s,e.jsx(h,{}),e.jsx(m,{})]})})]})}const w=a(function(){return e.jsx(d,{})}),T=i(function({error:t}){let r="Oops!",o="An unexpected error occurred.",n;return p(t)&&(r=t.status===404?"404":"Error",o=t.status===404?"The requested page could not be found.":t.statusText||o),e.jsxs( [...]
+            `}}),e.jsx("noscript",{children:e.jsx("style",{children:".theme-toggle-wrapper { display: none !important; }"})})]}),e.jsx("body",{className:"font-base",children:e.jsxs(u,{defaultTheme:"light",children:[s,e.jsx(h,{}),e.jsx(m,{})]})})]})}const w=a(function(){return e.jsx(d,{})}),T=i(function({error:t}){let r="Oops!",o="An unexpected error occurred.",n;return p(t)&&(r=t.status===404?"404":"Error",o=t.status===404?"The requested page could not be found.":t.statusText||o),e.jsxs( [...]
diff --git a/output/books/apache-phoenix-reference-guide-dark-mode.pdf b/output/books/apache-phoenix-reference-guide-dark-mode.pdf
index 55805a8f..9c946992 100644
Binary files a/output/books/apache-phoenix-reference-guide-dark-mode.pdf and b/output/books/apache-phoenix-reference-guide-dark-mode.pdf differ
diff --git a/output/books/apache-phoenix-reference-guide.pdf b/output/books/apache-phoenix-reference-guide.pdf
index 75a39fe8..4ceb80a3 100644
Binary files a/output/books/apache-phoenix-reference-guide.pdf and b/output/books/apache-phoenix-reference-guide.pdf differ
diff --git a/output/docs/addons/phoenix-omid-transaction-manager/index.html b/output/docs/addons/phoenix-omid-transaction-manager/index.html
index 7c9da757..55f13622 100644
--- a/output/docs/addons/phoenix-omid-transaction-manager/index.html
+++ b/output/docs/addons/phoenix-omid-transaction-manager/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -31,8 +31,8 @@ for more information about this effort.</p></div><a href="https://github.com/apa
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/addons/phoenix-orm-library/index.html b/output/docs/addons/phoenix-orm-library/index.html
index a8474c5d..de68f5b4 100644
--- a/output/docs/addons/phoenix-orm-library/index.html
+++ b/output/docs/addons/phoenix-orm-library/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/pho-CUhmhcBP.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/ [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/pho-CUhmhcBP.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/ [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -191,8 +191,8 @@ Custom <code>EntityResolvers</code> and <code>PropertyResolvers</code> are strai
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/addons/phoenix-tephra-transaction-manager/index.html b/output/docs/addons/phoenix-tephra-transaction-manager/index.html
index 2d281fb8..a90fb9e6 100644
--- a/output/docs/addons/phoenix-tephra-transaction-manager/index.html
+++ b/output/docs/addons/phoenix-tephra-transaction-manager/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -31,8 +31,8 @@ for more information about this effort.</p></div><a href="https://github.com/apa
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/array-type/index.html b/output/docs/array-type/index.html
index ad63f95a..17a9b05d 100644
--- a/output/docs/array-type/index.html
+++ b/output/docs/array-type/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -72,8 +72,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/contributing/building-website/index.html b/output/docs/contributing/building-website/index.html
index 88331b2a..22f596fc 100644
--- a/output/docs/contributing/building-website/index.html
+++ b/output/docs/contributing/building-website/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -74,8 +74,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/contributing/develop/index.html b/output/docs/contributing/develop/index.html
index b8cc628e..1376d269 100644
--- a/output/docs/contributing/develop/index.html
+++ b/output/docs/contributing/develop/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -286,8 +286,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/contributing/how-to-release/index.html b/output/docs/contributing/how-to-release/index.html
index f3cfbd77..41d524ff 100644
--- a/output/docs/contributing/how-to-release/index.html
+++ b/output/docs/contributing/how-to-release/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -149,8 +149,8 @@ To avoid this, <a href="https://central.sonatype.org/publish/release/#locate-and
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/contributing/index.html b/output/docs/contributing/index.html
index f40ce5e7..29d7a866 100644
--- a/output/docs/contributing/index.html
+++ b/output/docs/contributing/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -86,8 +86,8 @@ Tephra and Omid also have their own <a href="/issues-tracking" data-discover="tr
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/datatypes/index.html b/output/docs/datatypes/index.html
index 9eddfb41..81076a91 100644
--- a/output/docs/datatypes/index.html
+++ b/output/docs/datatypes/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -773,8 +773,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/explain-plan/index.html b/output/docs/explain-plan/index.html
index bec259c6..1b245c93 100644
--- a/output/docs/explain-plan/index.html
+++ b/output/docs/explain-plan/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -104,8 +104,8 @@ Phoenix cannot provide the estimate information, the columns return null. Below
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/faq/index.html b/output/docs/faq/index.html
index a8f924e2..3770a4a5 100644
--- a/output/docs/faq/index.html
+++ b/output/docs/faq/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -271,8 +271,8 @@ for all non-key columns) will be included in a scan result.</p></div><a href="ht
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/atomic-upsert/index.html b/output/docs/features/atomic-upsert/index.html
index bee778f5..1c3f3958 100644
--- a/output/docs/features/atomic-upsert/index.html
+++ b/output/docs/features/atomic-upsert/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -123,8 +123,8 @@ does not handle atomicity unless the latest value is being updated.</li>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/bson/index.html b/output/docs/features/bson/index.html
index 12c50172..0d33cde5 100644
--- a/output/docs/features/bson/index.html
+++ b/output/docs/features/bson/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -200,8 +200,8 @@ you&#x27;ll typically want an index per hot field rather than a generic &quot;BS
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/bulk-loading/index.html b/output/docs/features/bulk-loading/index.html
index 350710d5..388336d0 100644
--- a/output/docs/features/bulk-loading/index.html
+++ b/output/docs/features/bulk-loading/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -100,8 +100,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/change-data-capture/index.html b/output/docs/features/change-data-capture/index.html
index 9e7205ed..dac88bf4 100644
--- a/output/docs/features/change-data-capture/index.html
+++ b/output/docs/features/change-data-capture/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -185,8 +185,8 @@ their offsets cleanly.</li>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/conditional-ttl/index.html b/output/docs/features/conditional-ttl/index.html
index 00d5019d..1a565c6a 100644
--- a/output/docs/features/conditional-ttl/index.html
+++ b/output/docs/features/conditional-ttl/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -87,8 +87,8 @@ at once.</li>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/cursor/index.html b/output/docs/features/cursor/index.html
index 25e43951..c569a683 100644
--- a/output/docs/features/cursor/index.html
+++ b/output/docs/features/cursor/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -60,8 +60,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/dynamic-columns/index.html b/output/docs/features/dynamic-columns/index.html
index 31120041..363a37a7 100644
--- a/output/docs/features/dynamic-columns/index.html
+++ b/output/docs/features/dynamic-columns/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -50,8 +50,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/metrics/index.html b/output/docs/features/metrics/index.html
index 7c4a4f01..a17b008c 100644
--- a/output/docs/features/metrics/index.html
+++ b/output/docs/features/metrics/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -124,8 +124,8 @@ Below is a code snippet showing how to log/report global metrics by using a sche
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/multi-tenancy/index.html b/output/docs/features/multi-tenancy/index.html
index 327c9589..81151bd9 100644
--- a/output/docs/features/multi-tenancy/index.html
+++ b/output/docs/features/multi-tenancy/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -65,8 +65,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/namespace-mapping/index.html b/output/docs/features/namespace-mapping/index.html
index f78e4c6c..7e606589 100644
--- a/output/docs/features/namespace-mapping/index.html
+++ b/output/docs/features/namespace-mapping/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -75,8 +75,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/paged-queries/index.html b/output/docs/features/paged-queries/index.html
index 77d648a2..b299eb17 100644
--- a/output/docs/features/paged-queries/index.html
+++ b/output/docs/features/paged-queries/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -64,8 +64,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/phoenix-row-timestamp/index.html b/output/docs/features/phoenix-row-timestamp/index.html
index c593c69a..e05a2f7b 100644
--- a/output/docs/features/phoenix-row-timestamp/index.html
+++ b/output/docs/features/phoenix-row-timestamp/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -98,8 +98,8 @@ returns the value of the <code>ROW_TIMESTAMP</code> column for that row.</p></di
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/query-server/index.html b/output/docs/features/query-server/index.html
index fdd288d0..7f4fd12d 100644
--- a/output/docs/features/query-server/index.html
+++ b/output/docs/features/query-server/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -172,8 +172,8 @@ ZooKeeper (see <a href="https://issues.apache.org/jira/browse/PHOENIX-4085">PHOE
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/row-timestamp-column/index.html b/output/docs/features/row-timestamp-column/index.html
index 70e95402..84b43d36 100644
--- a/output/docs/features/row-timestamp-column/index.html
+++ b/output/docs/features/row-timestamp-column/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -59,8 +59,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/salted-tables/index.html b/output/docs/features/salted-tables/index.html
index 66dbb2e5..9575e294 100644
--- a/output/docs/features/salted-tables/index.html
+++ b/output/docs/features/salted-tables/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -42,8 +42,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/secondary-indexes/index.html b/output/docs/features/secondary-indexes/index.html
index 2372115c..4ffa5f85 100644
--- a/output/docs/features/secondary-indexes/index.html
+++ b/output/docs/features/secondary-indexes/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -500,8 +500,8 @@ it directly to Phoenix; although, such a tool is not currently provided by Phoen
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/segment-scan/index.html b/output/docs/features/segment-scan/index.html
index b6037ebe..a3ed8747 100644
--- a/output/docs/features/segment-scan/index.html
+++ b/output/docs/features/segment-scan/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -107,8 +107,8 @@ runs a regular Phoenix query bounded with <code>SCAN_START_KEY() = ? AND SCAN_EN
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/skip-scan/index.html b/output/docs/features/skip-scan/index.html
index 6c297798..dcd8f54c 100644
--- a/output/docs/features/skip-scan/index.html
+++ b/output/docs/features/skip-scan/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/skip-scan-Bnrmt1Cn.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" h [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/skip-scan-Bnrmt1Cn.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" h [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -40,8 +40,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/statistics-collection/index.html b/output/docs/features/statistics-collection/index.html
index 06f2582e..0738da3f 100644
--- a/output/docs/features/statistics-collection/index.html
+++ b/output/docs/features/statistics-collection/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -107,8 +107,8 @@ on the data should be used to drive query parallelization.</li>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/storage-formats/index.html b/output/docs/features/storage-formats/index.html
index d710ea7a..364a7d81 100644
--- a/output/docs/features/storage-formats/index.html
+++ b/output/docs/features/storage-formats/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -77,8 +77,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/table-sampling/index.html b/output/docs/features/table-sampling/index.html
index ac0d57be..1176cc30 100644
--- a/output/docs/features/table-sampling/index.html
+++ b/output/docs/features/table-sampling/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/sampling_accuracy_perf-D6G8Z0nV.jpg" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/sampling_accuracy_perf-D6G8Z0nV.jpg" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -68,8 +68,8 @@ Resource consumption drops quickly as sampling rate decreases. In general, the a
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/tracing/index.html b/output/docs/features/tracing/index.html
index e8a37bb1..1fcac307 100644
--- a/output/docs/features/tracing/index.html
+++ b/output/docs/features/tracing/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/trace-dashboard-zASBbm2T.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="image" href="/assets/trace-list-D_9jNPId.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fe [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/trace-dashboard-zASBbm2T.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="image" href="/assets/trace-list-D_9jNPId.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fe [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -177,8 +177,8 @@ Enabling one of these properties only turns on trace collection. Trace data stil
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/transactions/index.html b/output/docs/features/transactions/index.html
index 9f75bd88..520a658e 100644
--- a/output/docs/features/transactions/index.html
+++ b/output/docs/features/transactions/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -74,8 +74,8 @@ For now, an administrator can manually clear transactions from this list after a
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/ttl/index.html b/output/docs/features/ttl/index.html
index 5826faa1..97e166aa 100644
--- a/output/docs/features/ttl/index.html
+++ b/output/docs/features/ttl/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -75,8 +75,8 @@ acceptable for your readers.</p></div><a href="https://github.com/apache/phoenix
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/user-defined-functions/index.html b/output/docs/features/user-defined-functions/index.html
index ea01fd83..ef659ada 100644
--- a/output/docs/features/user-defined-functions/index.html
+++ b/output/docs/features/user-defined-functions/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -156,8 +156,8 @@ The method returns <code>false</code> if there is not enough information to calc
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/varbinary-encoded/index.html b/output/docs/features/varbinary-encoded/index.html
index 6353676a..66c0ca45 100644
--- a/output/docs/features/varbinary-encoded/index.html
+++ b/output/docs/features/varbinary-encoded/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -95,8 +95,8 @@ the values into the new physical layout for you).</li>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/view-ttl/index.html b/output/docs/features/view-ttl/index.html
index 0ae12d86..ae1c79df 100644
--- a/output/docs/features/view-ttl/index.html
+++ b/output/docs/features/view-ttl/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -96,8 +96,8 @@ TTL too.</p></div><a href="https://github.com/apache/phoenix-site/edit/asf-site/
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/features/views/index.html b/output/docs/features/views/index.html
index 43cb2a73..9c002c6f 100644
--- a/output/docs/features/views/index.html
+++ b/output/docs/features/views/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -67,8 +67,8 @@ Notice that unlike with standard SQL views, you may define additional columns fo
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/functions/index.html b/output/docs/functions/index.html
index b09f7532..7b5efe58 100644
--- a/output/docs/functions/index.html
+++ b/output/docs/functions/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -6604,8 +6604,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/fundamentals/backward-compatibility/index.html b/output/docs/fundamentals/backward-compatibility/index.html
index 7aa78b7e..3f9d6207 100644
--- a/output/docs/fundamentals/backward-compatibility/index.html
+++ b/output/docs/fundamentals/backward-compatibility/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -58,8 +58,8 @@ determined on a release-by-release basis.</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/fundamentals/building/index.html b/output/docs/fundamentals/building/index.html
index 6afd36c6..387fe6d2 100644
--- a/output/docs/fundamentals/building/index.html
+++ b/output/docs/fundamentals/building/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -60,8 +60,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/fundamentals/client-classpath-and-jdbc-url/index.html b/output/docs/fundamentals/client-classpath-and-jdbc-url/index.html
index ff49cd58..44cbbdd4 100644
--- a/output/docs/fundamentals/client-classpath-and-jdbc-url/index.html
+++ b/output/docs/fundamentals/client-classpath-and-jdbc-url/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -113,8 +113,8 @@ Phoenix will throw an error if a variant that the HBase client version doesn&#x2
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/fundamentals/configuration/index.html b/output/docs/fundamentals/configuration/index.html
index 8807e50b..40929577 100644
--- a/output/docs/fundamentals/configuration/index.html
+++ b/output/docs/fundamentals/configuration/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -32,8 +32,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/fundamentals/performance-testing/index.html b/output/docs/fundamentals/performance-testing/index.html
index 2a0a1f98..605e9c64 100644
--- a/output/docs/fundamentals/performance-testing/index.html
+++ b/output/docs/fundamentals/performance-testing/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/pherf-zjt4kTra.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href= [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/pherf-zjt4kTra.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href= [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -162,8 +162,8 @@ runtime, timeout status, result row count, and more. The header file format can
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/fundamentals/performance/index.html b/output/docs/fundamentals/performance/index.html
index 6c564b1e..68dd21c3 100644
--- a/output/docs/fundamentals/performance/index.html
+++ b/output/docs/fundamentals/performance/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/PhoenixVsHive-CrdSmERl.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="image" href="/assets/PhoenixVsImpala-Cm5ZYcnR.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/PhoenixVsHive-CrdSmERl.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="image" href="/assets/PhoenixVsImpala-Cm5ZYcnR.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -82,8 +82,8 @@ servers: 4 (HBase heap: 10GB, processor: 6 cores @ 3.3GHz Xeon).</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/fundamentals/tuning-guide/index.html b/output/docs/fundamentals/tuning-guide/index.html
index 6763d30c..bb0510cb 100644
--- a/output/docs/fundamentals/tuning-guide/index.html
+++ b/output/docs/fundamentals/tuning-guide/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -217,8 +217,8 @@ Statistics are turned on by default. With Phoenix 4.9, the user can set guidepos
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/grammar/index.html b/output/docs/grammar/index.html
index 8cea5632..545790cb 100644
--- a/output/docs/grammar/index.html
+++ b/output/docs/grammar/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -8219,8 +8219,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/index.html b/output/docs/index.html
index 9f1da62c..5c685ed2 100644
--- a/output/docs/index.html
+++ b/output/docs/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.wof [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.wof [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -118,8 +118,8 @@ download <a href="/downloads" data-discover="true">here</a>. Follow Apache Phoen
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/installation/index.html b/output/docs/installation/index.html
index ca19e24a..a7c88045 100644
--- a/output/docs/installation/index.html
+++ b/output/docs/installation/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/sqlline-h05veEny.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="image" href="/assets/squirrel-CeQy7FtI.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriorit [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/sqlline-h05veEny.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="image" href="/assets/squirrel-CeQy7FtI.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriorit [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -76,8 +76,8 @@ ready to run SQL queries against Phoenix.</p></div></div>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/apache-hive/index.html b/output/docs/integrations/apache-hive/index.html
index ab6a9acc..bab681fc 100644
--- a/output/docs/integrations/apache-hive/index.html
+++ b/output/docs/integrations/apache-hive/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -171,8 +171,8 @@ Otherwise, create a world-readable directory on the system and copy the connecto
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/flume-plugin/index.html b/output/docs/integrations/flume-plugin/index.html
index 10f640e6..dcf2d114 100644
--- a/output/docs/integrations/flume-plugin/index.html
+++ b/output/docs/integrations/flume-plugin/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -49,8 +49,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/kafka-plugin/index.html b/output/docs/integrations/kafka-plugin/index.html
index a0253e62..8496b1b5 100644
--- a/output/docs/integrations/kafka-plugin/index.html
+++ b/output/docs/integrations/kafka-plugin/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/producer_consumer-DjmJXk5s.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as= [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/assets/producer_consumer-DjmJXk5s.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as= [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -84,8 +84,8 @@ instructions <a href="/docs/fundamentals/building" data-discover="true">here</a>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/map-reduce-integration/index.html b/output/docs/integrations/map-reduce-integration/index.html
index 23ae634b..48575bb0 100644
--- a/output/docs/integrations/map-reduce-integration/index.html
+++ b/output/docs/integrations/map-reduce-integration/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -176,8 +176,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/phoenix-dynamodb/index.html b/output/docs/integrations/phoenix-dynamodb/index.html
index 3c6c3402..894b0ad7 100644
--- a/output/docs/integrations/phoenix-dynamodb/index.html
+++ b/output/docs/integrations/phoenix-dynamodb/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -54,8 +54,8 @@ SQL surface, not just whatever subset the DynamoDB API maps onto.</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/pig-integration/index.html b/output/docs/integrations/pig-integration/index.html
index 8d04164d..72cc955d 100644
--- a/output/docs/integrations/pig-integration/index.html
+++ b/output/docs/integrations/pig-integration/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -82,8 +82,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/python-driver/index.html b/output/docs/integrations/python-driver/index.html
index a0c6730d..f0077c97 100644
--- a/output/docs/integrations/python-driver/index.html
+++ b/output/docs/integrations/python-driver/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -71,8 +71,8 @@ repository.</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/integrations/spark-integration/index.html b/output/docs/integrations/spark-integration/index.html
index 6b98df9c..b7032cb2 100644
--- a/output/docs/integrations/spark-integration/index.html
+++ b/output/docs/integrations/spark-integration/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -450,8 +450,8 @@ correspond to the Java types Phoenix supports <a href="/docs/datatypes" data-dis
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/joins/index.html b/output/docs/joins/index.html
index b41f4da5..01c1a9e9 100644
--- a/output/docs/joins/index.html
+++ b/output/docs/joins/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -198,8 +198,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/quick-start/index.html b/output/docs/quick-start/index.html
index 53c9bb39..229a1a2b 100644
--- a/output/docs/quick-start/index.html
+++ b/output/docs/quick-start/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -90,8 +90,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/sequences/index.html b/output/docs/sequences/index.html
index b26e3d64..4a49388f 100644
--- a/output/docs/sequences/index.html
+++ b/output/docs/sequences/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -56,8 +56,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/single-page/index.html b/output/docs/single-page/index.html
index 2f75f306..322a8d8b 100644
--- a/output/docs/single-page/index.html
+++ b/output/docs/single-page/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><link rel="preload" as="image" href="/assets/sqlline-h05veEny.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="imag [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><link rel="preload" as="image" href="/assets/sqlline-h05veEny.png" imageSizes="(max-width: 768px) 100vw, (max-width: 1200px) 70vw, 900px" fetchPriority="auto"/><link rel="preload" as="imag [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -20977,8 +20977,8 @@ To avoid this, <a href="https://central.sonatype.org/publish/release/#locate-and
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/docs/subqueries/index.html b/output/docs/subqueries/index.html
index 861094af..77a60fdc 100644
--- a/output/docs/subqueries/index.html
+++ b/output/docs/subqueries/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="mo [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/favicon.ico"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="mo [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -136,8 +136,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/docs-layout-Ezb4kvRE.js";
 import * as route2 from "/assets/docs-DOBS8KVH.js";
   
diff --git a/output/downloads/index.html b/output/downloads/index.html
index 110bcfe8..39277ef2 100644
--- a/output/downloads/index.html
+++ b/output/downloads/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Downloads - Apache Phoenix</title><meta name="description" content="Download Apache Phoenix releases, connectors, and operator tools with verification hashes and signatures."/><link rel="preload" as="font" href="/fonts/inter-latin-wg [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Downloads - Apache Phoenix</title><meta name="description" content="Download Apache Phoenix releases, connectors, and operator tools with verification hashes and signatures."/><link rel="preload" as="font" href="/fonts/inter-latin-wg [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -50,8 +50,8 @@ Current release 5.3.0 can run on Apache HBase 2.5 and 2.6 versions.</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/downloads-nPTKAI2k.js";
   
diff --git a/output/index.html b/output/index.html
index 90645d47..9ff957d1 100644
--- a/output/index.html
+++ b/output/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Apache Phoenix</title><meta name="description" content="Query HBase with standard SQL and JDBC. Low latency OLTP and operational analytics for Hadoop."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type=" [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Apache Phoenix</title><meta name="description" content="Query HBase with standard SQL and JDBC. Low latency OLTP and operational analytics for Hadoop."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type=" [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -27,8 +27,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/home-Dymhx5Xx.js";
   
diff --git a/output/issues-tracking/index.html b/output/issues-tracking/index.html
index 5fbc8212..f10bc058 100644
--- a/output/issues-tracking/index.html
+++ b/output/issues-tracking/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Issue Tracking - Apache Phoenix</title><meta name="description" content="Track issues, bugs, and feature requests for Apache Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" cross [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Issue Tracking - Apache Phoenix</title><meta name="description" content="Track issues, bugs, and feature requests for Apache Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" cross [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -35,8 +35,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/issues-tracking-D2UNn17s.js";
   
diff --git a/output/mailing-lists/index.html b/output/mailing-lists/index.html
index 0734c026..8c12ae64 100644
--- a/output/mailing-lists/index.html
+++ b/output/mailing-lists/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Mailing Lists - Apache Phoenix</title><meta name="description" content="Subscribe to Apache Phoenix mailing lists including user, developer, commits, issues, and builds lists."/><link rel="preload" as="font" href="/fonts/inter-latin- [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Mailing Lists - Apache Phoenix</title><meta name="description" content="Subscribe to Apache Phoenix mailing lists including user, developer, commits, issues, and builds lists."/><link rel="preload" as="font" href="/fonts/inter-latin- [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -29,8 +29,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/mailing-lists-BSTnC29W.js";
   
diff --git a/output/news/index.html b/output/news/index.html
index 8ac28d6c..90100e7b 100644
--- a/output/news/index.html
+++ b/output/news/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>News - Apache Phoenix</title><meta name="description" content="Latest news, events, and releases for Apache Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>News - Apache Phoenix</title><meta name="description" content="Latest news, events, and releases for Apache Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -27,8 +27,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/news-C-JE5FJh.js";
   
diff --git a/output/phoenixcon-2018/index.html b/output/phoenixcon-2018/index.html
index 8f34a7ee..a9d58357 100644
--- a/output/phoenixcon-2018/index.html
+++ b/output/phoenixcon-2018/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="modulepreload" href="/assets/entry.client-_CVK9qYI.js" [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="modulepreload" href="/assets/entry.client-_CVK9qYI.js" [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -27,8 +27,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/phoenixcon-2018-E6RKkUUf.js";
   
   window.__reactRouterRouteModules = {"root":route0,"routes/phoenixcon-2018":route1};
diff --git a/output/phoenixcon-archives/index.html b/output/phoenixcon-archives/index.html
index ddac51ee..3043aa17 100644
--- a/output/phoenixcon-archives/index.html
+++ b/output/phoenixcon-archives/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-aa6e1522.js"/><link rel="modulepreload" href="/assets/entry.client-_CVK9qYI.js" [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="/fonts/inter-latin-wght-italic.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/manifest-3a78eba7.js"/><link rel="modulepreload" href="/assets/entry.client-_CVK9qYI.js" [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -27,8 +27,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/phoenixcon-archives-BrA1WaaW.js";
   
   window.__reactRouterRouteModules = {"root":route0,"routes/phoenixcon-archives":route1};
diff --git a/output/presentations/index.html b/output/presentations/index.html
index a0ee4ec5..f36a63c8 100644
--- a/output/presentations/index.html
+++ b/output/presentations/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Presentations - Apache Phoenix</title><meta name="description" content="Presentations and videos about Apache Phoenix from community events."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2 [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Presentations - Apache Phoenix</title><meta name="description" content="Presentations and videos about Apache Phoenix from community events."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2 [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -36,8 +36,8 @@ presentations about how they are using Apache Phoenix or new features coming to
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/presentations-qDW_RxDY.js";
   
diff --git a/output/recent-improvements/index.html b/output/recent-improvements/index.html
index e98bd275..f9b25508 100644
--- a/output/recent-improvements/index.html
+++ b/output/recent-improvements/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Recent Improvements - Apache Phoenix</title><meta name="description" content="Recent updates and improvements of Apache Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigi [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Recent Improvements - Apache Phoenix</title><meta name="description" content="Recent updates and improvements of Apache Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigi [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -85,8 +85,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/recent-improvements-BVyGojk8.js";
   
diff --git a/output/release-notes/index.html b/output/release-notes/index.html
index 7f4d5dd6..d12a2049 100644
--- a/output/release-notes/index.html
+++ b/output/release-notes/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Release Notes - Apache Phoenix</title><meta name="description" content="Release notes and upgrade considerations for Apache Phoenix releases."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Release Notes - Apache Phoenix</title><meta name="description" content="Release notes and upgrade considerations for Apache Phoenix releases."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -115,8 +115,8 @@ impact on performance until the upgrade is performed.</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/release-notes-C6nU5G3H.js";
   
diff --git a/output/roadmap/index.html b/output/roadmap/index.html
index 3080dd58..3a5f38f8 100644
--- a/output/roadmap/index.html
+++ b/output/roadmap/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Roadmap - Apache Phoenix</title><meta name="description" content="Roadmap of Apache Phoenix driven by the community."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Roadmap - Apache Phoenix</title><meta name="description" content="Roadmap of Apache Phoenix driven by the community."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin="anonymous [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -58,8 +58,8 @@ current plan for Phoenix:</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/roadmap-BQKYnSI0.js";
   
diff --git a/output/sitemap.xml b/output/sitemap.xml
index 476ace09..d0ca31ce 100644
--- a/output/sitemap.xml
+++ b/output/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://phoenix.apache.org/</loc></url><url><loc>https://phoenix.apache.org/docs/</loc></url><url><loc>https://phoenix.apache.org/docs/addons/phoenix-omid-tr [...]
+<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://phoenix.apache.org/</loc></url><url><loc>https://phoenix.apache.org/docs/</loc></url><url><loc>https://phoenix.apache.org/docs/addons/phoenix-omid-tr [...]
\ No newline at end of file
diff --git a/output/source-repository/index.html b/output/source-repository/index.html
index 1ca2444f..1608cedf 100644
--- a/output/source-repository/index.html
+++ b/output/source-repository/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Source Repository - Apache Phoenix</title><meta name="description" content="Access the Apache Phoenix source code repository."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin=" [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Source Repository - Apache Phoenix</title><meta name="description" content="Access the Apache Phoenix source code repository."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" crossorigin=" [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -53,8 +53,8 @@ and so on.</p>
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/source-repository-Dr0IOOXq.js";
   
diff --git a/output/team/index.html b/output/team/index.html
index 0cd5841e..d3919aca 100644
--- a/output/team/index.html
+++ b/output/team/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Team - Apache Phoenix</title><meta name="description" content="Meet the Apache Phoenix project team members and contributors who develop and maintain Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2 [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Team - Apache Phoenix</title><meta name="description" content="Meet the Apache Phoenix project team members and contributors who develop and maintain Phoenix."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2 [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -27,8 +27,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/team-ByeUkygk.js";
   
diff --git a/output/tech-talks/index.html b/output/tech-talks/index.html
index e9f15e52..2f859f20 100644
--- a/output/tech-talks/index.html
+++ b/output/tech-talks/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Tech Talks - Apache Phoenix</title><meta name="description" content="Technical talks and presentations from the Apache Phoenix community."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" c [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Tech Talks - Apache Phoenix</title><meta name="description" content="Technical talks and presentations from the Apache Phoenix community."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" c [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -37,8 +37,8 @@
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/tech-talks-CyEwmdjk.js";
   
diff --git a/output/who-is-using/index.html b/output/who-is-using/index.html
index 027cb57d..db2953e4 100644
--- a/output/who-is-using/index.html
+++ b/output/who-is-using/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Who is Using - Apache Phoenix</title><meta name="description" content="See organizations and projects using Apache Phoenix in production."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" c [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/images/logo.svg"/><link rel="preload" as="image" href="/images/dark-theme-logo.svg"/><title>Who is Using - Apache Phoenix</title><meta name="description" content="See organizations and projects using Apache Phoenix in production."/><link rel="preload" as="font" href="/fonts/inter-latin-wght-normal.woff2" type="font/woff2" c [...]
               (function() {
                 const theme = localStorage.getItem('theme');
                 const root = document.documentElement;
@@ -135,8 +135,8 @@ This is near real time aggregation of tracking data to find trend of events with
       console.error(error);
       sessionStorage.removeItem(storageKey2);
     }
-  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
-import * as route0 from "/assets/root-BHBAHx51.js";
+  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"unstable_subResourceIntegrity":false,"unstable_trailingSlashAwareDataRequests":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":false,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamCo [...]
+import * as route0 from "/assets/root-BpXmv09N.js";
 import * as route1 from "/assets/landing-layout-BpAkdLQB.js";
 import * as route2 from "/assets/who-is-using-DN2qLuJ4.js";
   
diff --git a/public/.htaccess b/public/.htaccess
index ce0af188..6e6a952f 100644
--- a/public/.htaccess
+++ b/public/.htaccess
@@ -1,4 +1,4 @@
-ErrorDocument 404 /404/
+ErrorDocument 404 /404.html
 
 <IfModule mod_alias.c>
   # Landing pages
diff --git a/public/404.html b/public/404.html
new file mode 100644
index 00000000..fce73d28
--- /dev/null
+++ b/public/404.html
@@ -0,0 +1,157 @@
+<!doctype html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <meta name="robots" content="noindex, nofollow" />
+    <title>Page Not Found | Apache Phoenix</title>
+    <style>
+      @font-face {
+        font-family: Inter;
+        font-style: normal;
+        font-weight: 100 900;
+        font-display: swap;
+        src: url("/fonts/inter-latin-wght-normal.woff2") format("woff2");
+      }
+
+      :root {
+        color-scheme: light;
+        --radius: 0.625rem;
+        --background: oklch(1 0 0);
+        --foreground: oklch(0.145 0 0);
+        --muted-foreground: oklch(0.556 0 0);
+        --border: oklch(0.922 0 0);
+        --primary: oklch(68.67% 0.18445 44.756);
+        --primary-foreground: oklch(0.985 0 0);
+        --ring: oklch(0.708 0 0);
+      }
+
+      * {
+        box-sizing: border-box;
+      }
+
+      body {
+        min-height: 100vh;
+        margin: 0;
+        background:
+          radial-gradient(
+            circle at top,
+            rgba(249, 115, 22, 0.08),
+            transparent 32rem
+          ),
+          var(--background);
+        color: var(--foreground);
+        font-family:
+          Inter,
+          ui-sans-serif,
+          system-ui,
+          -apple-system,
+          BlinkMacSystemFont,
+          "Segoe UI",
+          sans-serif;
+      }
+
+      main {
+        display: grid;
+        min-height: 100vh;
+        place-items: center;
+        padding: 2rem;
+      }
+
+      .content {
+        width: min(100%, 42rem);
+        padding: clamp(2rem, 6vw, 4rem);
+        text-align: center;
+      }
+
+      .logo {
+        width: 9rem;
+        height: auto;
+        margin-bottom: 2rem;
+      }
+
+      .eyebrow {
+        margin: 0;
+        color: var(--muted-foreground);
+        font-size: 1rem;
+        font-weight: 700;
+        letter-spacing: 0.3em;
+        text-transform: uppercase;
+      }
+
+      h1 {
+        margin: 1rem 0 0;
+        font-size: clamp(2.5rem, 8vw, 4.5rem);
+        line-height: 1;
+        letter-spacing: -0.05em;
+      }
+
+      .message {
+        margin: 1.25rem auto 0;
+        max-width: 34rem;
+        color: var(--muted-foreground);
+        font-size: clamp(1.125rem, 2vw, 1.25rem);
+        line-height: 1.65;
+      }
+
+      .actions {
+        display: flex;
+        justify-content: center;
+        margin-top: 2rem;
+      }
+
+      .button {
+        display: inline-flex;
+        align-items: center;
+        justify-content: center;
+        gap: 0.5rem;
+        height: 2.25rem;
+        padding: 0.5rem 1rem;
+        border-radius: var(--radius);
+        background: var(--primary);
+        color: var(--primary-foreground);
+        font-size: 0.875rem;
+        font-weight: 500;
+        line-height: 1.25rem;
+        text-decoration: none;
+        white-space: nowrap;
+        box-shadow:
+          0 1px 2px 0 rgb(0 0 0 / 0.05),
+          0 1px 3px 0 rgb(0 0 0 / 0.1);
+        transition-property:
+          color, background-color, border-color, box-shadow, transform;
+        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+        transition-duration: 150ms;
+      }
+
+      .button:hover {
+        background: color-mix(in oklch, var(--primary) 90%, transparent);
+      }
+
+      .button:focus-visible {
+        outline: none;
+        border-color: var(--ring);
+        box-shadow:
+          0 1px 2px 0 rgb(0 0 0 / 0.05),
+          0 1px 3px 0 rgb(0 0 0 / 0.1),
+          0 0 0 3px color-mix(in oklch, var(--primary) 50%, transparent);
+      }
+    </style>
+  </head>
+  <body>
+    <main>
+      <section class="content" aria-labelledby="page-title">
+        <img class="logo" src="/images/logo.svg" alt="Apache Phoenix" />
+        <p class="eyebrow">404</p>
+        <h1 id="page-title">Page not found</h1>
+        <p class="message">
+          The website was updated recently, so the route you were trying to
+          visit might have changed.
+        </p>
+        <div class="actions">
+          <a class="button" href="/">Go back home</a>
+        </div>
+      </section>
+    </main>
+  </body>
+</html>