<?xml version="1.0" encoding="UTF-8"?>
<!--
  oshizi.com — Blog sitemap
  =========================
  Blog index + every post entry, in every locale. Posts are kept in
  Astro content collections at src/content/blog/<lang>/<slug>.md and
  served at /(locale)/blog/<slug>/. Each post appears three times —
  once per language — with a reciprocal en/ko/ja/x-default hreflang
  cluster. Generated at deploy time; rebuild after publishing a post.
  Referenced from /sitemap.xml.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">

  <!-- ─── EN ──────────────────────────────────────────────────────────── -->
  <url><loc>https://oshizi.com/blog/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/"/><lastmod>2026-04-19</lastmod></url>
  <url><loc>https://oshizi.com/blog/ssr-bottleneck/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/ssr-bottleneck/"/><lastmod>2026-04-06</lastmod></url>
  <url><loc>https://oshizi.com/blog/solving-apple-game-optimally/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/solving-apple-game-optimally/"/><lastmod>2026-03-31</lastmod></url>
  <url><loc>https://oshizi.com/blog/what-affects-apple-game-scores/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/what-affects-apple-game-scores/"/><lastmod>2026-03-25</lastmod></url>
  <url><loc>https://oshizi.com/blog/extracting-boards-with-ocr/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/extracting-boards-with-ocr/"/><lastmod>2026-03-14</lastmod></url>
  <url><loc>https://oshizi.com/blog/how-apple-game-boards-are-generated/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/how-apple-game-boards-are-generated/"/><lastmod>2026-03-13</lastmod></url>
  <url><loc>https://oshizi.com/blog/rejection-sampling/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/rejection-sampling/"/><lastmod>2026-03-03</lastmod></url>
  <url><loc>https://oshizi.com/blog/greedy-solver/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/greedy-solver/"/><lastmod>2026-02-27</lastmod></url>

  <!-- ─── KO ──────────────────────────────────────────────────────────── -->
  <url><loc>https://oshizi.com/ko/blog/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/"/><lastmod>2026-04-19</lastmod></url>
  <url><loc>https://oshizi.com/ko/blog/ssr-bottleneck/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/ssr-bottleneck/"/><lastmod>2026-04-06</lastmod></url>
  <url><loc>https://oshizi.com/ko/blog/solving-apple-game-optimally/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/solving-apple-game-optimally/"/><lastmod>2026-03-31</lastmod></url>
  <url><loc>https://oshizi.com/ko/blog/what-affects-apple-game-scores/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/what-affects-apple-game-scores/"/><lastmod>2026-03-25</lastmod></url>
  <url><loc>https://oshizi.com/ko/blog/extracting-boards-with-ocr/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/extracting-boards-with-ocr/"/><lastmod>2026-03-14</lastmod></url>
  <url><loc>https://oshizi.com/ko/blog/how-apple-game-boards-are-generated/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/how-apple-game-boards-are-generated/"/><lastmod>2026-03-13</lastmod></url>
  <url><loc>https://oshizi.com/ko/blog/rejection-sampling/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/rejection-sampling/"/><lastmod>2026-03-03</lastmod></url>
  <url><loc>https://oshizi.com/ko/blog/greedy-solver/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/greedy-solver/"/><lastmod>2026-02-27</lastmod></url>

  <!-- ─── JA ──────────────────────────────────────────────────────────── -->
  <url><loc>https://oshizi.com/ja/blog/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/"/><lastmod>2026-04-19</lastmod></url>
  <url><loc>https://oshizi.com/ja/blog/ssr-bottleneck/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/ssr-bottleneck/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/ssr-bottleneck/"/><lastmod>2026-04-06</lastmod></url>
  <url><loc>https://oshizi.com/ja/blog/solving-apple-game-optimally/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/solving-apple-game-optimally/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/solving-apple-game-optimally/"/><lastmod>2026-03-31</lastmod></url>
  <url><loc>https://oshizi.com/ja/blog/what-affects-apple-game-scores/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/what-affects-apple-game-scores/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/what-affects-apple-game-scores/"/><lastmod>2026-03-25</lastmod></url>
  <url><loc>https://oshizi.com/ja/blog/extracting-boards-with-ocr/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/extracting-boards-with-ocr/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/extracting-boards-with-ocr/"/><lastmod>2026-03-14</lastmod></url>
  <url><loc>https://oshizi.com/ja/blog/how-apple-game-boards-are-generated/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/how-apple-game-boards-are-generated/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/how-apple-game-boards-are-generated/"/><lastmod>2026-03-13</lastmod></url>
  <url><loc>https://oshizi.com/ja/blog/rejection-sampling/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/rejection-sampling/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/rejection-sampling/"/><lastmod>2026-03-03</lastmod></url>
  <url><loc>https://oshizi.com/ja/blog/greedy-solver/</loc><xhtml:link rel="alternate" hreflang="en" href="https://oshizi.com/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="ko" href="https://oshizi.com/ko/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="ja" href="https://oshizi.com/ja/blog/greedy-solver/"/><xhtml:link rel="alternate" hreflang="x-default" href="https://oshizi.com/blog/greedy-solver/"/><lastmod>2026-02-27</lastmod></url>
</urlset>
