<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://fajarfirdaus.net/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/"/>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/"/>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/about"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/about"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/about"/>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/about"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/about"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/about"/>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog"/>
    <changefreq>daily</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog"/>
    <changefreq>daily</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/resume</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/resume"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/resume"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/resume"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/resume</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/resume"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/resume"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/resume"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/projects</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects"/>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/projects</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects"/>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/projects/jkt48-sorter</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects/jkt48-sorter"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects/jkt48-sorter"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects/jkt48-sorter"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/projects/jkt48-sorter</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects/jkt48-sorter"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects/jkt48-sorter"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects/jkt48-sorter"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/projects/jkt48-facemash</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects/jkt48-facemash"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects/jkt48-facemash"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects/jkt48-facemash"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/projects/jkt48-facemash</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects/jkt48-facemash"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects/jkt48-facemash"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects/jkt48-facemash"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/projects/umandanify</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects/umandanify"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects/umandanify"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects/umandanify"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/projects/umandanify</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/projects/umandanify"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/projects/umandanify"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/projects/umandanify"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/jkt48</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/jkt48"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/jkt48"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/jkt48"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/jkt48</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/jkt48"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/jkt48"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/jkt48"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/kpop-biases</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/kpop-biases"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/kpop-biases"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/kpop-biases"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/kpop-biases</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/kpop-biases"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/kpop-biases"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/kpop-biases"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/now</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now"/>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/now</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now"/>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/now/history</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/history"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/history"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/history"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/now/history</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/history"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/history"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/history"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/series</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/series"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/series"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/series"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/series</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/series"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/series"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/series"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/dashboard</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/dashboard"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/dashboard"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/dashboard"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/dashboard</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/dashboard"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/dashboard"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/dashboard"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/now/2026-07-09</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2026-07-09"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2026-07-09"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2026-07-09"/>
    <lastmod>2026-07-09T07:59:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/now/2026-07-09</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2026-07-09"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2026-07-09"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2026-07-09"/>
    <lastmod>2026-07-09T07:59:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/now/2026-04-15</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2026-04-15"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2026-04-15"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2026-04-15"/>
    <lastmod>2026-04-15T03:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/now/2026-04-15</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2026-04-15"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2026-04-15"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2026-04-15"/>
    <lastmod>2026-04-15T03:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/now/2026-01-02</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2026-01-02"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2026-01-02"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2026-01-02"/>
    <lastmod>2026-01-02T00:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/now/2026-01-02</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2026-01-02"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2026-01-02"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2026-01-02"/>
    <lastmod>2026-01-02T00:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/now/2025-11-28</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2025-11-28"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2025-11-28"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2025-11-28"/>
    <lastmod>2025-11-28T00:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/now/2025-11-28</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2025-11-28"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2025-11-28"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2025-11-28"/>
    <lastmod>2025-11-28T00:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/now/2025-11-10</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2025-11-10"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2025-11-10"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2025-11-10"/>
    <lastmod>2025-11-10T00:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/now/2025-11-10</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/now/2025-11-10"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/now/2025-11-10"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/now/2025-11-10"/>
    <lastmod>2025-11-10T00:00:00.000Z</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/09/chelsea-two-enzos-and-a-promise-kept</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/chelsea-two-enzos-and-a-promise-kept"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/chelsea-two-enzos-and-a-promise-kept"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/chelsea-two-enzos-and-a-promise-kept"/>
    <lastmod>2026-09-22T00:55:40.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/09/chelsea-two-enzos-and-a-promise-kept</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/chelsea-two-enzos-and-a-promise-kept"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/chelsea-two-enzos-and-a-promise-kept"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/chelsea-two-enzos-and-a-promise-kept"/>
    <lastmod>2026-09-22T00:55:40.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/09/age-brute-force-how-long-it-takes</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-brute-force-how-long-it-takes"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-brute-force-how-long-it-takes"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-brute-force-how-long-it-takes"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/09/age-brute-force-how-long-it-takes</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-brute-force-how-long-it-takes"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-brute-force-how-long-it-takes"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-brute-force-how-long-it-takes"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/09/age-passphrase-or-key-pair</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-or-key-pair"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-passphrase-or-key-pair"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-or-key-pair"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/09/age-passphrase-or-key-pair</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-or-key-pair"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-passphrase-or-key-pair"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-or-key-pair"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/09/chacha20-poly1305-sealing-the-body</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/chacha20-poly1305-sealing-the-body"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/chacha20-poly1305-sealing-the-body"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/chacha20-poly1305-sealing-the-body"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/09/chacha20-poly1305-sealing-the-body</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/chacha20-poly1305-sealing-the-body"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/chacha20-poly1305-sealing-the-body"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/chacha20-poly1305-sealing-the-body"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/09/scrypt-from-password-to-key</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/scrypt-from-password-to-key"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/scrypt-from-password-to-key"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/scrypt-from-password-to-key"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/09/scrypt-from-password-to-key</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/scrypt-from-password-to-key"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/scrypt-from-password-to-key"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/scrypt-from-password-to-key"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/09/age-file-format-reading-the-header</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-file-format-reading-the-header"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-file-format-reading-the-header"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-file-format-reading-the-header"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/09/age-file-format-reading-the-header</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-file-format-reading-the-header"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-file-format-reading-the-header"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-file-format-reading-the-header"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/09/age-passphrase-encryption-what-it-does</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-encryption-what-it-does"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-passphrase-encryption-what-it-does"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-encryption-what-it-does"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/09/age-passphrase-encryption-what-it-does</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-encryption-what-it-does"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/09/age-passphrase-encryption-what-it-does"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/09/age-passphrase-encryption-what-it-does"/>
    <lastmod>2026-09-09T06:07:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafka-or-redis-streams-how-to-choose</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-or-redis-streams-how-to-choose"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-or-redis-streams-how-to-choose"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-or-redis-streams-how-to-choose"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafka-or-redis-streams-how-to-choose</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-or-redis-streams-how-to-choose"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-or-redis-streams-how-to-choose"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-or-redis-streams-how-to-choose"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/benchmarking-kafka-vs-redis-streams</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/benchmarking-kafka-vs-redis-streams"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/benchmarking-kafka-vs-redis-streams"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/benchmarking-kafka-vs-redis-streams"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/benchmarking-kafka-vs-redis-streams</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/benchmarking-kafka-vs-redis-streams"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/benchmarking-kafka-vs-redis-streams"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/benchmarking-kafka-vs-redis-streams"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/live-market-dashboard-sse-nextjs</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/live-market-dashboard-sse-nextjs"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/live-market-dashboard-sse-nextjs"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/live-market-dashboard-sse-nextjs"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/live-market-dashboard-sse-nextjs</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/live-market-dashboard-sse-nextjs"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/live-market-dashboard-sse-nextjs"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/live-market-dashboard-sse-nextjs"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/stateful-stream-processing-edge-vs-level-ohlc"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafka-isr-vs-redis-cluster-sharding</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-isr-vs-redis-cluster-sharding"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-isr-vs-redis-cluster-sharding"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-isr-vs-redis-cluster-sharding"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafka-isr-vs-redis-cluster-sharding</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-isr-vs-redis-cluster-sharding"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-isr-vs-redis-cluster-sharding"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-isr-vs-redis-cluster-sharding"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafkajs-custom-co-partition-assigner</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafkajs-custom-co-partition-assigner"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafkajs-custom-co-partition-assigner"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafkajs-custom-co-partition-assigner"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafkajs-custom-co-partition-assigner</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafkajs-custom-co-partition-assigner"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafkajs-custom-co-partition-assigner"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafkajs-custom-co-partition-assigner"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/co-partitioning-same-key-same-partition</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/co-partitioning-same-key-same-partition"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/co-partitioning-same-key-same-partition"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/co-partitioning-same-key-same-partition"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/co-partitioning-same-key-same-partition</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/co-partitioning-same-key-same-partition"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/co-partitioning-same-key-same-partition"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/co-partitioning-same-key-same-partition"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/redis-pubsub-vs-streams</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-pubsub-vs-streams"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-pubsub-vs-streams"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-pubsub-vs-streams"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/redis-pubsub-vs-streams</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-pubsub-vs-streams"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-pubsub-vs-streams"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-pubsub-vs-streams"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafka-exactly-once-transactions</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-exactly-once-transactions"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-exactly-once-transactions"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-exactly-once-transactions"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafka-exactly-once-transactions</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-exactly-once-transactions"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-exactly-once-transactions"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-exactly-once-transactions"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/leaving-xendit</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/leaving-xendit"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/leaving-xendit"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/leaving-xendit"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/leaving-xendit</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/leaving-xendit"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/leaving-xendit"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/leaving-xendit"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-pel-xautoclaim-dead-letters"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafka-at-least-once-retries-and-dlq</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-at-least-once-retries-and-dlq"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-at-least-once-retries-and-dlq"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-at-least-once-retries-and-dlq"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafka-at-least-once-retries-and-dlq</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-at-least-once-retries-and-dlq"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-at-least-once-retries-and-dlq"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-at-least-once-retries-and-dlq"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/redis-streams-consumer-groups-and-the-pel</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-consumer-groups-and-the-pel"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-streams-consumer-groups-and-the-pel"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-consumer-groups-and-the-pel"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/redis-streams-consumer-groups-and-the-pel</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-consumer-groups-and-the-pel"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-streams-consumer-groups-and-the-pel"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-consumer-groups-and-the-pel"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-consumer-groups-lag-and-rebalancing"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/redis-streams-fundamentals</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-fundamentals"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-streams-fundamentals"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-fundamentals"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/redis-streams-fundamentals</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-fundamentals"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/redis-streams-fundamentals"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/redis-streams-fundamentals"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafka-partitions-keys-and-ordering</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-partitions-keys-and-ordering"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-partitions-keys-and-ordering"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-partitions-keys-and-ordering"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafka-partitions-keys-and-ordering</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-partitions-keys-and-ordering"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-partitions-keys-and-ordering"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-partitions-keys-and-ordering"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/chelsea-maresca-and-the-badge</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/chelsea-maresca-and-the-badge"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/chelsea-maresca-and-the-badge"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/chelsea-maresca-and-the-badge"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/chelsea-maresca-and-the-badge</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/chelsea-maresca-and-the-badge"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/chelsea-maresca-and-the-badge"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/chelsea-maresca-and-the-badge"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/07/kafka-vs-redis-streams-building-a-stock-ticker-twice"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/05/with-hardship-comes-ease</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/05/with-hardship-comes-ease"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/05/with-hardship-comes-ease"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/05/with-hardship-comes-ease"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/05/with-hardship-comes-ease</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/05/with-hardship-comes-ease"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/05/with-hardship-comes-ease"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/05/with-hardship-comes-ease"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/04/choosing-the-right-queue-system</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/choosing-the-right-queue-system"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/choosing-the-right-queue-system"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/choosing-the-right-queue-system"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/04/choosing-the-right-queue-system</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/choosing-the-right-queue-system"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/choosing-the-right-queue-system"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/choosing-the-right-queue-system"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/04/understanding-caching-strategies</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/understanding-caching-strategies"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/understanding-caching-strategies"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/understanding-caching-strategies"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/04/understanding-caching-strategies</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/understanding-caching-strategies"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/understanding-caching-strategies"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/understanding-caching-strategies"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/04/postgres-advisory-locks</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/postgres-advisory-locks"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/postgres-advisory-locks"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/postgres-advisory-locks"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/04/postgres-advisory-locks</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/postgres-advisory-locks"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/postgres-advisory-locks"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/postgres-advisory-locks"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2026/04/pgboss-vs-bullmq</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/pgboss-vs-bullmq"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/pgboss-vs-bullmq"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/pgboss-vs-bullmq"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2026/04/pgboss-vs-bullmq</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2026/04/pgboss-vs-bullmq"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2026/04/pgboss-vs-bullmq"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2026/04/pgboss-vs-bullmq"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2025/11/merge-k-sorted-lists</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/merge-k-sorted-lists"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/merge-k-sorted-lists"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/merge-k-sorted-lists"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2025/11/merge-k-sorted-lists</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/merge-k-sorted-lists"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/merge-k-sorted-lists"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/merge-k-sorted-lists"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2025/11/n-queens-ii</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/n-queens-ii"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/n-queens-ii"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/n-queens-ii"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2025/11/n-queens-ii</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/n-queens-ii"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/n-queens-ii"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/n-queens-ii"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2025/11/valid-number-algorithm-evolution</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/valid-number-algorithm-evolution"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/valid-number-algorithm-evolution"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/valid-number-algorithm-evolution"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2025/11/valid-number-algorithm-evolution</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/valid-number-algorithm-evolution"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/valid-number-algorithm-evolution"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/valid-number-algorithm-evolution"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2025/11/rotate-array-three-step-reversal</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/rotate-array-three-step-reversal"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/rotate-array-three-step-reversal"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/rotate-array-three-step-reversal"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2025/11/rotate-array-three-step-reversal</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/11/rotate-array-three-step-reversal"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/11/rotate-array-three-step-reversal"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/11/rotate-array-three-step-reversal"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2025/04/My-First-Year-as-a-Developer-Dad</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/04/My-First-Year-as-a-Developer-Dad"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/04/My-First-Year-as-a-Developer-Dad"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/04/My-First-Year-as-a-Developer-Dad"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2025/04/My-First-Year-as-a-Developer-Dad</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2025/04/My-First-Year-as-a-Developer-Dad"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2025/04/My-First-Year-as-a-Developer-Dad"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2025/04/My-First-Year-as-a-Developer-Dad"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/11/api-design-design-first-vs-code-first</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/11/api-design-design-first-vs-code-first"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/11/api-design-design-first-vs-code-first"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/11/api-design-design-first-vs-code-first"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/11/api-design-design-first-vs-code-first</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/11/api-design-design-first-vs-code-first"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/11/api-design-design-first-vs-code-first"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/11/api-design-design-first-vs-code-first"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/10/introduction-to-nextjs</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/10/introduction-to-nextjs"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/10/introduction-to-nextjs"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/10/introduction-to-nextjs"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/10/introduction-to-nextjs</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/10/introduction-to-nextjs"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/10/introduction-to-nextjs"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/10/introduction-to-nextjs"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/10/n-queens</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/10/n-queens"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/10/n-queens"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/10/n-queens"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/10/n-queens</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/10/n-queens"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/10/n-queens"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/10/n-queens"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/understanding-priority-queue-min-heap</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/understanding-priority-queue-min-heap"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/understanding-priority-queue-min-heap"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/understanding-priority-queue-min-heap"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/understanding-priority-queue-min-heap</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/understanding-priority-queue-min-heap"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/understanding-priority-queue-min-heap"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/understanding-priority-queue-min-heap"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/candy</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/candy"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/candy"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/candy"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/candy</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/candy"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/candy"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/candy"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock-ii</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock-ii"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/best-time-to-buy-and-sell-stock-ii"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock-ii"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/best-time-to-buy-and-sell-stock-ii</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock-ii"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/best-time-to-buy-and-sell-stock-ii"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock-ii"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/best-time-to-buy-and-sell-stock"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/best-time-to-buy-and-sell-stock</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/best-time-to-buy-and-sell-stock"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/best-time-to-buy-and-sell-stock"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/reverse-linked-list</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/reverse-linked-list"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/reverse-linked-list"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/reverse-linked-list"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/reverse-linked-list</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/reverse-linked-list"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/reverse-linked-list"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/reverse-linked-list"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-in-place-manipulation-of-a-linked-list"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/introduction-to-priority-queue</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-priority-queue"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-priority-queue"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-priority-queue"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/introduction-to-priority-queue</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-priority-queue"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-priority-queue"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-priority-queue"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/container-with-most-water</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/container-with-most-water"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/container-with-most-water"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/container-with-most-water"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/container-with-most-water</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/container-with-most-water"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/container-with-most-water"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/container-with-most-water"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/trapping-rain-water</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/trapping-rain-water"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/trapping-rain-water"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/trapping-rain-water"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/trapping-rain-water</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/trapping-rain-water"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/trapping-rain-water"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/trapping-rain-water"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/palindrome-permutation</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/palindrome-permutation"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/palindrome-permutation"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/palindrome-permutation"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/palindrome-permutation</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/palindrome-permutation"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/palindrome-permutation"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/palindrome-permutation"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/introduction-to-knowing-what-to-track</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-knowing-what-to-track"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-knowing-what-to-track"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-knowing-what-to-track"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/introduction-to-knowing-what-to-track</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-knowing-what-to-track"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-knowing-what-to-track"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-knowing-what-to-track"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/logger-rate-limiter</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/logger-rate-limiter"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/logger-rate-limiter"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/logger-rate-limiter"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/logger-rate-limiter</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/logger-rate-limiter"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/logger-rate-limiter"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/logger-rate-limiter"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/designing-hashmap</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/designing-hashmap"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/designing-hashmap"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/designing-hashmap"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/designing-hashmap</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/designing-hashmap"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/designing-hashmap"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/designing-hashmap"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/introduction-to-hash-map</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-hash-map"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-hash-map"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-hash-map"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/introduction-to-hash-map</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-hash-map"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-hash-map"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-hash-map"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/implement-queue-using-stacks</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/implement-queue-using-stacks"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/implement-queue-using-stacks"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/implement-queue-using-stacks"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/implement-queue-using-stacks</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/implement-queue-using-stacks"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/implement-queue-using-stacks"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/implement-queue-using-stacks"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/remove-all-adjacent-duplicates-in-string</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/remove-all-adjacent-duplicates-in-string"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/remove-all-adjacent-duplicates-in-string"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/remove-all-adjacent-duplicates-in-string"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/remove-all-adjacent-duplicates-in-string</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/remove-all-adjacent-duplicates-in-string"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/remove-all-adjacent-duplicates-in-string"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/remove-all-adjacent-duplicates-in-string"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/introduction-to-stacks</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-stacks"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-stacks"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-stacks"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/introduction-to-stacks</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-stacks"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-stacks"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-stacks"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/linked-list-cycle</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/linked-list-cycle"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/linked-list-cycle"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/linked-list-cycle"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/linked-list-cycle</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/linked-list-cycle"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/linked-list-cycle"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/linked-list-cycle"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/happy-number</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/happy-number"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/happy-number"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/happy-number"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/happy-number</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/happy-number"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/happy-number"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/happy-number"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/fast-and-slow-pointers</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/fast-and-slow-pointers"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/fast-and-slow-pointers"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/fast-and-slow-pointers"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/fast-and-slow-pointers</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/fast-and-slow-pointers"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/fast-and-slow-pointers"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/fast-and-slow-pointers"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/sum-of-three-values</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/sum-of-three-values"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/sum-of-three-values"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/sum-of-three-values"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/sum-of-three-values</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/sum-of-three-values"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/sum-of-three-values"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/sum-of-three-values"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/valid-palindrome</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/valid-palindrome"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/valid-palindrome"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/valid-palindrome"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/valid-palindrome</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/valid-palindrome"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/valid-palindrome"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/valid-palindrome"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2024/08/introduction-to-two-pointers</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-two-pointers"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-two-pointers"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-two-pointers"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2024/08/introduction-to-two-pointers</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-two-pointers"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2024/08/introduction-to-two-pointers"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2024/08/introduction-to-two-pointers"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2023/04/solid-principles-oop</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2023/04/solid-principles-oop"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2023/04/solid-principles-oop"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2023/04/solid-principles-oop"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2023/04/solid-principles-oop</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2023/04/solid-principles-oop"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2023/04/solid-principles-oop"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2023/04/solid-principles-oop"/>
    <lastmod>2026-09-09T01:36:43.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2021/04/love-is-dead</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2021/04/love-is-dead"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2021/04/love-is-dead"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2021/04/love-is-dead"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2021/04/love-is-dead</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2021/04/love-is-dead"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2021/04/love-is-dead"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2021/04/love-is-dead"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2021/04/you-will-never-know-how-much-you-mean-to-me</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2021/04/you-will-never-know-how-much-you-mean-to-me"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2021/04/you-will-never-know-how-much-you-mean-to-me"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2021/04/you-will-never-know-how-much-you-mean-to-me"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2021/04/you-will-never-know-how-much-you-mean-to-me</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2021/04/you-will-never-know-how-much-you-mean-to-me"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2021/04/you-will-never-know-how-much-you-mean-to-me"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2021/04/you-will-never-know-how-much-you-mean-to-me"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/blog/2018/10/fake-happy-eh</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2018/10/fake-happy-eh"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2018/10/fake-happy-eh"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2018/10/fake-happy-eh"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://fajarfirdaus.net/id/blog/2018/10/fake-happy-eh</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://fajarfirdaus.net/blog/2018/10/fake-happy-eh"/>
    <xhtml:link rel="alternate" hreflang="id" href="https://fajarfirdaus.net/id/blog/2018/10/fake-happy-eh"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://fajarfirdaus.net/blog/2018/10/fake-happy-eh"/>
    <lastmod>2026-09-09T01:08:28.000Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
</urlset>