<?xml version="1.0" encoding="UTF-8"?>
<!--
  Lists the storefront's public, crawlable routes. This is the same route set exposed by
  Routing/StorefrontLinks.cs (the single catalog every header/footer/checkout/FAQ link already goes
  through, mechanically checked against the real @page components by
  tests/Thruline.Tests.Buy.Web/Routing/StorefrontLinksTests.cs) minus the two transactional routes
  that are never meant to be indexed or discovered by a crawler: /thanks (the Paddle success redirect
  target, already <meta name="robots" content="noindex">) and /license/reset (an emailed single-use
  token link). /viewer/ is a separate composed application (see !docs/VIEWER-INTEGRATION.md) with no
  @page route of its own here, so it is linked from the storefront pages but is not a sitemap entry.
  /download is EXCLUDED while it carries its prelaunch noindex meta (a sitemap entry for a noindexed
  page draws Search Console warnings); re-add it in the same change that removes the noindex when a
  real installer URL goes live.
  tests/Thruline.Tests.Buy.Web/Routing/SitemapTests.cs pins this file's route set against
  StorefrontLinks so the two can never silently drift apart; regenerate this file by hand from that
  catalog whenever a public route is added, renamed, or retired.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://thrulinewrite.com/</loc>
  </url>
  <url>
    <loc>https://thrulinewrite.com/changelog</loc>
  </url>
  <url>
    <loc>https://thrulinewrite.com/license</loc>
  </url>
  <url>
    <loc>https://thrulinewrite.com/refunds</loc>
  </url>
  <url>
    <loc>https://thrulinewrite.com/support</loc>
  </url>
  <url>
    <loc>https://thrulinewrite.com/privacy</loc>
  </url>
  <url>
    <loc>https://thrulinewrite.com/terms</loc>
  </url>
</urlset>
