<?xml version="1.0" encoding="UTF-8"?>
<!--
  The five URLs that exist to be read by someone who is not signed in.

  Every URL listed here now serves its CONTENT to a crawler. /privacy and
  /terms used to be listed as SPA routes, which return the same empty shell as
  every other path -- 46 characters of body text, all of it "You need to enable
  JavaScript to run this app." They are now generated from the legal screens
  into public/ as .html siblings (bun run legal:build), for the same reason
  about.html is a file: it is the one path to a crawler that works here.

  This mattered beyond search. Google's OAuth verification fetches the privacy
  policy URL SERVER-SIDE, and an empty page there fails the review.

  Every other route in the app either requires a session or carries a token in
  the path (/r/, /reset-password, /restore-account) — listing those would
  invite crawls that can only ever return the empty shell. robots.txt closes
  them explicitly.

  Served straight from public/, which EAS Hosting copies to the site root ahead
  of the single-page catch-all.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://relladex.com/</loc>
    <lastmod>2026-08-25</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://relladex.com/about.html</loc>
    <lastmod>2026-08-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://relladex.com/relladex-explained.html</loc>
    <lastmod>2026-08-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://relladex.com/privacy.html</loc>
    <lastmod>2026-08-27</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://relladex.com/terms.html</loc>
    <lastmod>2026-08-27</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
</urlset>
