<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  
  <url>
    <loc>https://maskray.me/blog/2021-11-07-init-ctors-init-array</loc>
    
    <lastmod>2026-03-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-10-15-address-sanitizer-global-variable-instrumentation</loc>
    
    <lastmod>2026-03-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-06-29-leetcode-solutions</loc>
    
    <lastmod>2026-03-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-07-27-llvm-integrated-assembler-engineering-better-fragments</loc>
    
    <lastmod>2026-03-27</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-04-25-weak-symbol</loc>
    
    <lastmod>2026-03-21</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-05-08-assemblers</loc>
    
    <lastmod>2026-03-21</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-12-17-exploring-the-section-layout-in-linker-output</loc>
    
    <lastmod>2026-03-19</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-09-24-a-deep-dive-into-clang-source-file-compilation</loc>
    
    <lastmod>2026-03-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-08-24-understanding-alignment-from-source-to-object-file</loc>
    
    <lastmod>2026-03-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-12-12-c++-exception-handling-abi</loc>
    
    <lastmod>2026-03-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-02-14-all-about-thread-local-storage</loc>
    
    <lastmod>2026-03-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-03-16-relocation-generation-in-assemblers</loc>
    
    <lastmod>2026-02-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-01-16-archives-and-start-lib</loc>
    
    <lastmod>2026-02-25</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-10-31-relative-relocations-and-relr</loc>
    
    <lastmod>2026-02-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2026-02-22-bit-field-layout</loc>
    
    <lastmod>2026-02-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2026-01-25-long-branches-in-compilers-assemblers-and-linkers</loc>
    
    <lastmod>2026-02-17</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2026-02-16-call-relocation-types</loc>
    
    <lastmod>2026-02-17</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-08-15-extract-archive-member-to-satisfy-dso-undef</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-09-05-build-glibc-with-lld</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-01-31-metadata-sections-comdat-and-shf-link-order</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-04-11-segment-tree</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-05-15-c-standard-library-headers-in-c++</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-08-28-march-mcpu-mtune</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-06-25-c++-standard-library-abi-compatibility</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-08-25-clang-wunused-command-line-argument</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-06-18-port-llvm-xray-to-apple-systems</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-07-16-precompiled-headers</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-12-30-reviews.llvm.org-became-read-only-archive</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-12-01-clang-format-and-single-line-statements</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-11-17-removing-global-state-from-lld</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-01-28-mc-dc-and-compiler-implementations</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-06-30-integrated-assembler-improvements-in-llvm-19</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-12-14-weak-avl-tree</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-07-13-gcc-miscompiles-llvm</loc>
    
    <lastmod>2026-02-16</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-02-11-toolchain-notes-on-z-architecture</loc>
    
    <lastmod>2026-02-15</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-03-05-linker-notes-on-aarch64</loc>
    
    <lastmod>2026-02-10</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-01-29-all-about-undefined-behavior-sanitizer</loc>
    
    <lastmod>2026-02-07</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-10-10-when-can-glibc-be-built-with-clang</loc>
    
    <lastmod>2026-02-05</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-05-16-elf-interposition-and-bsymbolic</loc>
    
    <lastmod>2026-02-03</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-08-21-glibc-and-dt-gnu-hash</loc>
    
    <lastmod>2026-02-03</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-11-08-stack-unwinding</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2026-02-01-lld-22-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-05-14-relocation-overflow-and-code-models</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-02-20-lld-14-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-09-05-lld-15-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-03-19-lld-16-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-07-30-lld-17-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-02-18-lld-18-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-08-04-lld-19-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-02-02-lld-20-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-09-07-lld-21-elf-changes</loc>
    
    <lastmod>2026-02-02</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-12-19-lld-and-gnu-linker-incompatibilities</loc>
    
    <lastmod>2026-02-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-09-04-toolchain-notes-on-mips</loc>
    
    <lastmod>2026-01-27</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/presentations/index.html</loc>
    
    <lastmod>2026-01-25</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-02-27-analysis-and-introspection-options-in-linkers</loc>
    
    <lastmod>2026-01-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-11-02-perfect-maze-generation</loc>
    
    <lastmod>2026-01-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-11-26-all-about-symbol-versioning</loc>
    
    <lastmod>2026-01-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2026-01-22-maintaining-shadow-branches-for-github-prs</loc>
    
    <lastmod>2026-01-23</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-08-18-my-involvement-with-llvm-19</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-07-21-mapping-symbols-rethinking-for-efficiency</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-07-07-linker-compatibility-and-the-user-agent-problem</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-06-02-understanding-orphan-sections</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-05-26-evolution-of-elf-object-file-format</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-05-12-exploring-gnu-extensions-in-linux-kernel</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-04-27-clang-o0-output-branch-displacement-and-size-increase</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-04-23-when-qoi-meets-xz</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-04-01-light-elf-exploring-potential-size-reduction</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-03-31-a-compact-section-header-table-for-elf</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-03-17-c++-exit-time-destructors</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-03-09-a-compact-relocation-format-for-elf</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-02-25-my-involvement-with-llvm-18</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-02-20-mmu-less-systems-and-fdpic</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-01-30-raw-symbol-names-in-inline-assembly</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-01-23-riscv-tlsdesc-works</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-01-14-exploring-object-file-formats</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-12-31-summary</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-12-03-linker-notes-on-pe-coff</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-10-31-dso-undef-and-non-exported-definition</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-09-09-reflections-on-llvm-switch-to-github-pull-requests</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-08-20-my-involvement-with-llvm-17</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-07-07-compressed-arbitrary-sections</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-04-25-compiler-output-files</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-04-23-linker-notes-on-aarch32</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-04-12-elf-hash-function</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-02-26-linker-notes-on-power-isa</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-02-19-linker-notes-on-x86</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-02-12-all-about-leak-sanitizer</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-02-05-function-multi-versioning</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2023-01-08-all-about-sanitizer-interceptors</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-12-31-summary</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-12-26-kth-element-in-a-subarray</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-12-18-control-flow-integrity</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-11-21-relocatable-linking</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-11-13-odr-violation-detection</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-11-06-fortify-source</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-11-05-lld-musl-powerpc64</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-10-30-distribution-of-debug-information</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-10-09-c-minifier-with-clang</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-09-25-layering-check-with-clang</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-09-09-zstd-compressed-debug-sections</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-08-14-dwarf-in-reproducible-builds</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-07-10-riscv-linker-relaxation-in-lld</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-05-29-glibc</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-04-24-pi-static-and-hidden-in-glibc-rtld</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-04-10-unwinding-through-signal-handler</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-02-06-all-about-common-symbols</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2022-01-23-compressed-debug-sections</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-12-31-summary</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-12-19-why-isnt-ld.lld-faster</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-09-26-competitive-programming-in-nim</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-09-19-all-about-procedure-linkage-table</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-08-29-all-about-global-offset-table</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-08-22-freebsd-src-browsing-on-linux-and-my-rtld-contribution</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-08-08-toolchain-testing</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-07-25-comdat-and-section-group</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-07-04-sections-and-overwrite-sections</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-06-20-symbol-processing</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-06-13-dependency-related-linker-options</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-05-09-fno-semantic-interposition</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-03-28-compiler-driver-and-cross-compilation</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-03-14-the-dark-side-of-riscv-linker-relaxation</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-02-28-linker-garbage-collection</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-01-24-gnu-toolchain</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-01-18-gnu-indirect-function</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2021-01-09-copy-relocations-canonical-plt-entries-and-protected</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-12-31-summary</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-12-11-dominator-tree</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-11-15-explain-gnu-linker-options</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-10-15-intra-call-and-libc-symbol-renaming</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-10-03-llvm-command-line-processing</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-09-27-gcov-and-llvm</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2020-02-01-fpatchable-function-entry</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2019-12-31-summary</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-10-03-discrete-fourier-transform</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-08-26-defcon-24-ctf</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-10-16-leetcode-expression-add-operators</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-09-08-j-programming-language</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-05-02-jq-internals-bytecode</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-03-27-leetcode-best-time-to-buy-and-sell-stock-iv</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-31-summary</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-24-caml-compiler-overview</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-24-caml-compiler-design</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-06-30-isc14</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-06-08-ko-aluru-suffix-array-construction</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-05-10-suffix-automaton</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-10-01-force-directed-drawing-fruchterman-reingold</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-01-10-hanoi-related-problems</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/zh/2020-11-15-explain-gnu-linker-options.html</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/zh/2020-10-03-llvm-command-line-processing.html</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-02-25-introduction-to-makefile</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-07-21-design-thinking-of-eight-programming-languages</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-11-14-build-static-website-with-docpad</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-10-01-transfer-to-maskray-me</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-12-24-net-lesson</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-01-08-ranking-suffixes</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-12-07-sacramento-travelogue</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-06-02-emulate-vim-in-emacs</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-12-26-python-is-ugly</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-06-30-eight-languages-in-eighty-minutes</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-07-16-ouroboros-program</loc>
    
    <lastmod>2026-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/zh/2020-11-26-all-about-symbol-versioning.html</loc>
    
    <lastmod>2026-01-18</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-12-31-summary</loc>
    
    <lastmod>2026-01-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-10-26-stack-walking-space-and-time-trade-offs</loc>
    
    <lastmod>2025-12-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-09-28-remarks-on-sframe</loc>
    
    <lastmod>2025-11-29</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/zh/2020-12-12-c++-exception-handling-abi.html</loc>
    
    <lastmod>2025-11-03</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-08-31-benchmarking-compression-programs</loc>
    
    <lastmod>2025-09-17</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2025.html</loc>
    
    <lastmod>2025-09-12</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/zh/2020-02-01-fpatchable-function-entry.html</loc>
    
    <lastmod>2025-09-08</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/zh/2020-11-08-stack-unwinding.html</loc>
    
    <lastmod>2025-09-08</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-08-17-llvm-integrated-assembler-improving-sections-and-symbols</loc>
    
    <lastmod>2025-08-23</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-05-26-llvm-integrated-assembler-improving-expressions-and-relocations</loc>
    
    <lastmod>2025-08-09</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-12-25-exporting-tweets</loc>
    
    <lastmod>2025-05-31</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-12-22-simplifying-disassembly-with-llvm-tools</loc>
    
    <lastmod>2025-05-31</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-04-06-llvm-integrated-assembler-improving-mcexpr-mcvalue</loc>
    
    <lastmod>2025-05-31</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-12-31-strongswan</loc>
    
    <lastmod>2025-04-25</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-03-09-compiling-c++-with-clang-api</loc>
    
    <lastmod>2025-03-19</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-08-15-interesting-bits-of-email-culture</loc>
    
    <lastmod>2025-02-18</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-24-caml-compiler-others</loc>
    
    <lastmod>2025-02-18</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-02-17-migrating-comments-to-giscus</loc>
    
    <lastmod>2025-02-18</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/til/index.html</loc>
    
    <lastmod>2025-02-17</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-12-30-skipping-boring-functions-in-debuggers</loc>
    
    <lastmod>2025-02-15</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-01-12-understanding-and-improving-clang-ftime-report</loc>
    
    <lastmod>2025-02-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2025-01-20-natural-loops</loc>
    
    <lastmod>2025-01-20</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-12-31-summary</loc>
    
    <lastmod>2025-01-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-11-02-tinkering-with-neovim</loc>
    
    <lastmod>2024-12-30</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/index.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2013.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2012.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2015.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2016.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2014.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2018.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2019.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2017.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2022.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2020.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2023.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2021.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/feeds/2024.html</loc>
    
    <lastmod>2024-12-28</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-11-10-keeping-pace-with-llvm-compatibility-strategies</loc>
    
    <lastmod>2024-11-10</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2024-10-20-ccls-and-lsp-semantic-tokens</loc>
    
    <lastmod>2024-11-09</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/llvm/index.html</loc>
    
    <lastmod>2024-09-26</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/presentations/2021-12-implement-an-elf-linker/slides.html</loc>
    
    <lastmod>2024-01-13</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2009-11-14-dotemacs</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-01-15-maze-generator-with-pygtk</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-01-22-usaco-jan10-gold-solutions</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-02-11-algorithm-contest-test-data-checker</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-04-30-awesome-3-debian-menu</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-11-21-tuna-npm-mirror</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-07-25-debug-hacks</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-12-23-student-festival-1001-puzzle-elf</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-03-23-bctf-2015-camlmaze</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-03-13-terminal-emulator-fullwidth-color-emoji</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-08-13-defcon-26-ctf</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-12-09-real-world-ctf-2018-rwext5</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-12-25-ccls-release</loc>
    
    <lastmod>2022-12-24</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-07-06-wechatircd-webqqircd-without-scanning-qrcode-daily</loc>
    
    <lastmod>2022-10-10</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-08-19-popular-posts-with-google-analytics-api</loc>
    
    <lastmod>2022-05-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/presentations/2021-05-last-alliance-of-elf-and-men/elf.html</loc>
    
    <lastmod>2022-05-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/presentations/2021-06-static-initialization-order-fiasco-and-elf/slides.html</loc>
    
    <lastmod>2022-05-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/presentations/2021-09-recent-blog-posts/slides.html</loc>
    
    <lastmod>2022-05-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/presentations/2021-10-fun-with-elf-dynamic-loaders/slides.html</loc>
    
    <lastmod>2022-05-01</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2009-11-23-noip-2004-cryptarithmetic</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2009-11-23-sudoku-with-dancing-links-and-algorithm-x</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2009-12-19-extended-weighing-pool-balls-puzzle</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-01-01-tic-tac-toe-with-gtk</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-01-02-reversi-with-gtk</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-03-13-xv-olimpiada-informatyczna-etap-1-klo</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-04-17-zju-1638-greedy-island</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2010-05-24-genkernel-in-gentoo</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-07-10-expect-connect-wireless</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-07-12-blogging-with-makefile</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-07-19-blogging-with-makefile-2</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-07-20-read-feeds-with-rss2email</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-07-31-get-ssh-password-and-login</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-08-11-generate-dependency-in-makefile</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-08-12-udev-automount-usb</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-08-13-parse-csv-in-perl</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-08-16-break-out-of-chroot</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-09-28-splay-tree-in-haskell</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-11-30-xmonad-config</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2011-12-18-eight-puzzle</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-01-11-tiling-window-manager-application-and-design</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-01-19-rush-hour</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-02-11-haskell-learning-note</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-03-14-xbindkeys-key-sequence</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-04-07-sqrt-in-gcc</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-07-25-svt13117ecs-gentoo</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-09-10-parallel-n-body</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-10-06-word-extractor</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-11-05-regex-engine</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-11-13-personal-mail-system</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-11-18-ai9</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-11-25-ructfe-2012</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2012-12-09-alternative-build-system</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-02-10-bk-tree</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-02-21-double-array-trie-pac</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-02-24-a-pretty-printer-library-in-haskell</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-05-26-secuinside-ctf-quals-2013</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-07-26-ids-ips-with-suricata</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-07-27-adolescent-developer-conference-2013</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-08-05-defcon-21-my-struggle</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-08-06-defcon-21-ctf</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-08-11-overthewire-natas-wargame</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-08-23-hdu-acm</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-08-27-josephus-problem-two-log-n-solutions</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-11-30-dlink-backdoor</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-12-02-redtigers-hackit-wargame</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2013-12-31-summary</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-05-05-bctf-workgroup</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-08-11-defcon-22-ctf</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-08-19-trendmicro-codinsanity-2014</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-08-31-binary-tree-traversal</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-10-14-wechat-export</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-11-24-jsxajs-workgroup</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-27-js-of-ocaml-and-emscripten</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-03-14-debug-hacks-2</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-03-26-elf-hacks</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-06-16-morris-post-order-traversal</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-06-30-bmc-firmware-reverse-enginnering</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-08-12-defcon-23-ctf</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-09-18-conversion-to-emacs</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-09-29-specify-dynamic-linker-to-use-higher-version-gcc</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-10-06-nginx-accept-language-zhs-zht</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2015-10-07-asc14-to-isc15-curtain-call-of-my-cluster-competition</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-02-12-gmail-offlineimap-xoauth2</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-02-21-wechatircd</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-03-21-bctf-2016-hsab-and-betafour</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-03-22-terminal-emulator-fullwidth-backspace</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-04-11-webqqircd</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-05-07-telegramircd</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-06-11-yanshi-automaton-generator</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-08-13-weechat-rules-all</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-09-24-cgc-defcon-ctf-presentation</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-12-10-buffalo-wzr-600dhp-openwrt-comcast-ipv6</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2016-12-10-situation</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2017-02-19-how-i-use-wechat-recent-updates-of-wechatircd</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2017-07-01-emacs-helm-kythe-and-haskell-xrefs</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2017-08-01-defcon-25-ctf</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2017-09-09-r2con-r2clemency</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2017-12-03-c++-language-server-cquery</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2017-12-25-cquery-updates-and-libclang-one-byte-patch</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-01-14-cquery-usr-and-hierarchical-diff</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-04-01-c++-language-server-ccls</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-07-31-real-world-ctf-2018-ccls-fringe</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-09-03-ccls-navigate-and-index-multiversion</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2018-09-09-ccls-update</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2019-04-01-ccls-one-year</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/about/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/algorithm/hackerrank/ad-infinitum-17.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/algorithm/noip/2016.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/algorithm/hackerrank/week-of-code-28.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/ai9/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/bctf/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/brainfuck/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/defcon-ctf/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/flockly/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/force-directed/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/gba-gameshark2-decoder/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/gitw/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/gobang/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/grade-manager/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/greedy-snake/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/hython/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/isc-15/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/kongming-chess/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/molecular-weight-calculator/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/regex/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/reversi/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/shining-soul-2-reworker/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/sokoban/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2012-spr-object-oriented-programming/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2012-sum-parallel-programming/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2013-aut-database-management-system/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2013-aut-network/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2013-spr-artificial-intelligence/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2014-spr-computer-architecture/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2013-sum-assembly/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2013-spr-computer-graphics/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/portfolio/courses/2014-spr-database-special-topic-training/index.html</loc>
    
    <lastmod>2022-01-11</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-11-06-hackerrank-fp-compilers</loc>
    
    <lastmod>2020-12-12</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-24-caml-compiler-data-representation</loc>
    
    <lastmod>2020-12-12</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-24-caml-compiler-abstract-machine</loc>
    
    <lastmod>2020-12-12</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-24-caml-compiler-compiling</loc>
    
    <lastmod>2020-12-12</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/2014-12-24-caml-compiler-garbage-collection</loc>
    
    <lastmod>2020-12-12</lastmod>
    
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  

  <url>
    <loc>https://maskray.me/blog</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
  </url>

  
  <url>
    <loc>https://maskray.me/blog/tags/llvm/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/linker/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/emacs/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/desktop/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/algorithm/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/oi/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/noip/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/puzzle/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/game/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/gtk/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/hanoi/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/maze/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/python/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/data-structure/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/oj/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/awesome/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/kernel/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/gentoo/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/expect/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/network/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/makefile/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/shell/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/website/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/email/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/feeds/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ssh/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/udev/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/usb/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/perl/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/regex/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/csv/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/linux/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/chroot/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/haskell/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/xmonad/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/search/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ruby/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/window-manager/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ocaml/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/xbindkeys/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/scheme/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/cpp/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/parallel/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/n-body/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/graph-drawing/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/stringology/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/nlp/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/mutt/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/offlineimap/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/notmuch/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/inotify/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/node-js/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/adc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ai9/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/npm/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/mirror/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/computer-security/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ctf/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ructfe/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/build-system/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/coffee-script/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/presentation/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/suffix-automaton/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/security/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/debug/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/c/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/review/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/suricata/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/event/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/defcon/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/contest/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/wargame/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/hacker-culture/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/web-analytics/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/josephus-problem/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/reverse-engineering/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/student-festival-puzzle/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/summary/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/bctf/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/suffix-array/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/hpc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/isc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/trendmicro/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/codinsanity/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/tree/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/traversal/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/wechat/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/forensics/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/leetcode/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/hackerrank/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/fp/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/compiler/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ml/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/emscripten/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/binary/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/docker/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/jq/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/firmware/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/bmc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/j/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/vim/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/elf/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ld/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/gcc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/nginx/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/asc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/vpn/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ipsec/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/irc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/wechatircd/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/javascript/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/terminal/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/vte/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/emoji/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/unicode/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/qq/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/webqqircd/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/telegram/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/telegramircd/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/automaton/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/parser-generator/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/regular-expression/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/yanshi/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/cgc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/math/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/floating-point/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/router/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/openwrt/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/kythe/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/radare2/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/lsp/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ccls/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/ext4/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/binutils/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/glibc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/tls/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/assembler/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/riscv/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/freebsd/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/rtld/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/nim/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/clang/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/libunwind/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/m68k/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/powerpc/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/musl/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/sanitizer/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/github/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/windows/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/s390x/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/fdpic/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/image/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/compression/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/xz/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/x86/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/unix/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/lld/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/arm/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/neovim/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/clang-format/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/gdb/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/lldb/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/graph/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/sframe/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/travel/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/git/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  
  <url>
    <loc>https://maskray.me/blog/tags/release/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.2</priority>
  </url>
  

  
</urlset>
