<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>https://typescriptonline.com/en</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/progress</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/progress" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/progress" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/progress" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/progress" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/progress" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/qa</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/qa" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/qa" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/qa" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/qa" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/qa" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00002-medium-return-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00002-medium-return-type" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00003-medium-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00003-medium-omit" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00004-easy-pick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00004-easy-pick" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00005-extreme-readonly-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00005-extreme-readonly-keys" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00006-hard-simple-vue</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00006-hard-simple-vue" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00007-easy-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00007-easy-readonly" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00008-medium-readonly-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00008-medium-readonly-2" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00009-medium-deep-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00009-medium-deep-readonly" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00010-medium-tuple-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00010-medium-tuple-to-union" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00011-easy-tuple-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00011-easy-tuple-to-object" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00012-medium-chainable-options</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00012-medium-chainable-options" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00013-warm-hello-world</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00013-warm-hello-world" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00014-easy-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00014-easy-first" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00015-medium-last</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00015-medium-last" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00016-medium-pop</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00016-medium-pop" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00017-hard-currying-1</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00017-hard-currying-1" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00018-easy-tuple-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00018-easy-tuple-length" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00020-medium-promise-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00020-medium-promise-all" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00043-easy-exclude</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00043-easy-exclude" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00055-hard-union-to-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00055-hard-union-to-intersection" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00057-hard-get-required</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00057-hard-get-required" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00059-hard-get-optional</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00059-hard-get-optional" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00062-medium-type-lookup</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00062-medium-type-lookup" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00089-hard-required-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00089-hard-required-keys" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00090-hard-optional-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00090-hard-optional-keys" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00106-medium-trimleft</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00106-medium-trimleft" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00108-medium-trim</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00108-medium-trim" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00110-medium-capitalize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00110-medium-capitalize" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00112-hard-capitalizewords</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00112-hard-capitalizewords" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00114-hard-camelcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00114-hard-camelcase" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00116-medium-replace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00116-medium-replace" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00119-medium-replaceall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00119-medium-replaceall" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00147-hard-c-printf-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00147-hard-c-printf-parser" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00151-extreme-query-string-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00151-extreme-query-string-parser" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00189-easy-awaited</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00189-easy-awaited" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00191-medium-append-argument</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00191-medium-append-argument" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00213-hard-vue-basic-props</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00213-hard-vue-basic-props" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00216-extreme-slice</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00216-extreme-slice" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00223-hard-isany</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00223-hard-isany" />
<lastmod>2026-02-02T13:15:19.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00268-easy-if</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00268-easy-if" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00270-hard-typed-get</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00270-hard-typed-get" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00274-extreme-integers-comparator</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00274-extreme-integers-comparator" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00296-medium-permutation</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00296-medium-permutation" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00298-medium-length-of-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00298-medium-length-of-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00300-hard-string-to-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00300-hard-string-to-number" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00399-hard-tuple-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00399-hard-tuple-filter" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00459-medium-flatten</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00459-medium-flatten" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00462-extreme-currying-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00462-extreme-currying-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00472-hard-tuple-to-enum-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00472-hard-tuple-to-enum-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00476-extreme-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00476-extreme-sum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00517-extreme-multiply</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00517-extreme-multiply" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00527-medium-append-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00527-medium-append-to-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00529-medium-absolute</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00529-medium-absolute" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00531-medium-string-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00531-medium-string-to-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00533-easy-concat</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00533-easy-concat" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00545-hard-printf</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00545-hard-printf" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00553-hard-deep-object-to-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00553-hard-deep-object-to-unique" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00599-medium-merge</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00599-medium-merge" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00612-medium-kebabcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00612-medium-kebabcase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00645-medium-diff</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00645-medium-diff" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00651-hard-length-of-string-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00651-hard-length-of-string-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00697-extreme-tag</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00697-extreme-tag" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00730-hard-union-to-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00730-hard-union-to-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00734-extreme-inclusive-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00734-extreme-inclusive-range" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00741-extreme-sort</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00741-extreme-sort" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00847-hard-string-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00847-hard-string-join" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00869-extreme-distributeunions</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00869-extreme-distributeunions" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00898-easy-includes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00898-easy-includes" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00925-extreme-assert-array-index</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00925-extreme-assert-array-index" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00949-medium-anyof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00949-medium-anyof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/00956-hard-deeppick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00956-hard-deeppick" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/01042-medium-isnever</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01042-medium-isnever" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/01097-medium-isunion</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01097-medium-isunion" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/01130-medium-replacekeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01130-medium-replacekeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/01290-hard-pinia</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01290-hard-pinia" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/01367-medium-remove-index-signature</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01367-medium-remove-index-signature" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/01383-hard-camelize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01383-hard-camelize" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/01978-medium-percentage-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01978-medium-percentage-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02059-hard-drop-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02059-hard-drop-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02070-medium-drop-char</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02070-medium-drop-char" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02257-medium-minusone</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02257-medium-minusone" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02595-medium-pickbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02595-medium-pickbytype" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02688-medium-startswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02688-medium-startswith" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02693-medium-endswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02693-medium-endswith" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02757-medium-partialbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02757-medium-partialbykeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02759-medium-requiredbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02759-medium-requiredbykeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02793-medium-mutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02793-medium-mutable" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02822-hard-split</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02822-hard-split" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02828-hard-classpublickeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02828-hard-classpublickeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02852-medium-omitbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02852-medium-omitbytype" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02857-hard-isrequiredkey</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02857-hard-isrequiredkey" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02946-medium-objectentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02946-medium-objectentries" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/02949-hard-objectfromentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02949-hard-objectfromentries" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03057-easy-push</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03057-easy-push" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03060-easy-unshift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03060-easy-unshift" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03062-medium-shift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03062-medium-shift" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03188-medium-tuple-to-nested-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03188-medium-tuple-to-nested-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03192-medium-reverse</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03192-medium-reverse" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03196-medium-flip-arguments</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03196-medium-flip-arguments" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03243-medium-flattendepth</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03243-medium-flattendepth" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03312-easy-parameters</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03312-easy-parameters" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03326-medium-bem-style-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03326-medium-bem-style-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/03376-medium-inordertraversal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03376-medium-inordertraversal" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04037-hard-ispalindrome</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04037-hard-ispalindrome" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04179-medium-flip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04179-medium-flip" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04182-medium-fibonacci-sequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04182-medium-fibonacci-sequence" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04260-medium-nomiwase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04260-medium-nomiwase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04425-medium-greater-than</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04425-medium-greater-than" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04471-medium-zip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04471-medium-zip" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04484-medium-istuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04484-medium-istuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04499-medium-chunk</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04499-medium-chunk" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04518-medium-fill</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04518-medium-fill" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/04803-medium-trim-right</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04803-medium-trim-right" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05117-medium-without</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05117-medium-without" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05140-medium-trunc</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05140-medium-trunc" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05153-medium-indexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05153-medium-indexof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05181-hard-mutable-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05181-hard-mutable-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05310-medium-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05310-medium-join" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05317-medium-lastindexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05317-medium-lastindexof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05360-medium-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05360-medium-unique" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05423-hard-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05423-hard-intersection" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/05821-medium-maptypes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05821-medium-maptypes" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/06141-hard-binary-to-decimal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06141-hard-binary-to-decimal" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/06228-extreme-json-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06228-extreme-json-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/07258-hard-object-key-paths</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07258-hard-object-key-paths" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/07544-medium-construct-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07544-medium-construct-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/07561-extreme-subtract</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07561-extreme-subtract" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/08640-medium-number-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08640-medium-number-range" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/08767-medium-combination</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08767-medium-combination" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/08804-hard-two-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08804-hard-two-sum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/08987-medium-subsequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08987-medium-subsequence" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09142-medium-checkrepeatedchars</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09142-medium-checkrepeatedchars" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09155-hard-validdate</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09155-hard-validdate" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09160-hard-assign</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09160-hard-assign" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09286-medium-firstuniquecharindex</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09286-medium-firstuniquecharindex" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09384-hard-maximum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09384-hard-maximum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09616-medium-parse-url-params</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09616-medium-parse-url-params" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09775-hard-capitalize-nest-object-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09775-hard-capitalize-nest-object-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09896-medium-get-middle-element</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09896-medium-get-middle-element" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/10969-medium-integer</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/10969-medium-integer" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/13580-hard-replace-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/13580-hard-replace-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/14080-hard-fizzbuzz</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14080-hard-fizzbuzz" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/14188-hard-run-length-encoding</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14188-hard-run-length-encoding" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/15260-hard-tree-path-array</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/15260-hard-tree-path-array" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/16259-medium-to-primitive</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/16259-medium-to-primitive" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/17973-medium-deepmutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/17973-medium-deepmutable" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/18142-medium-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18142-medium-all" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/18220-medium-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18220-medium-filter" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/19458-hard-snakecase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/19458-hard-snakecase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/21104-medium-findall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21104-medium-findall" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/21220-medium-permutations-of-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21220-medium-permutations-of-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/25170-medium-replace-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25170-medium-replace-first" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/25270-medium-transpose</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25270-medium-transpose" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/25747-hard-isnegativenumber</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25747-hard-isnegativenumber" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/26401-medium-json-schema-to-typescript</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/26401-medium-json-schema-to-typescript" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/27133-medium-square</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27133-medium-square" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/27152-medium-triangular-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27152-medium-triangular-number" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/27862-medium-cartesianproduct</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27862-medium-cartesianproduct" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/27932-medium-mergeall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27932-medium-mergeall" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/27958-medium-checkrepeatedtuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27958-medium-checkrepeatedtuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/28143-hard-optionalundefined</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28143-hard-optionalundefined" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/28333-medium-public-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28333-medium-public-type" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/29650-medium-extracttoobject</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29650-medium-extracttoobject" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/29785-medium-deep-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29785-medium-deep-omit" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/30178-hard-unique-items</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30178-hard-unique-items" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/30301-medium-isodd</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30301-medium-isodd" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/30430-medium-tower-of-hanoi</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30430-medium-tower-of-hanoi" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/30575-hard-bitwisexor</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30575-hard-bitwisexor" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/30958-medium-pascals-triangle</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30958-medium-pascals-triangle" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/30970-medium-shitariteraru</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30970-medium-shitariteraru" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/31447-extreme-countreversepairs</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31447-extreme-countreversepairs" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/31797-hard-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31797-hard-sudoku" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/31824-hard-length-of-string-3</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31824-hard-length-of-string-3" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/31997-extreme-parameter-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31997-extreme-parameter-intersection" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/32427-hard-unbox</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32427-hard-unbox" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/32532-hard-binary-addition</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32532-hard-binary-addition" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/33345-extreme-dynamic-route</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33345-extreme-dynamic-route" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/33763-hard-union-to-object-from-key</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33763-hard-union-to-object-from-key" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/34007-medium-compare-array-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34007-medium-compare-array-length" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/34286-hard-take-elements</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34286-hard-take-elements" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/34857-medium-defined-partial-record</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34857-medium-defined-partial-record" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/35045-medium-longest-common-prefix</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35045-medium-longest-common-prefix" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/35191-medium-trace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35191-medium-trace" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/35252-medium-isalphabet</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35252-medium-isalphabet" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/en/challenges/35314-hard-valid-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35314-hard-valid-sudoku" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/progress</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/progress" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/progress" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/progress" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/progress" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/progress" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/qa</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/qa" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/qa" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/qa" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/qa" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/qa" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00002-medium-return-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00002-medium-return-type" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00003-medium-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00003-medium-omit" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00004-easy-pick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00004-easy-pick" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00005-extreme-readonly-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00005-extreme-readonly-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00006-hard-simple-vue</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00006-hard-simple-vue" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00007-easy-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00007-easy-readonly" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00008-medium-readonly-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00008-medium-readonly-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00009-medium-deep-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00009-medium-deep-readonly" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00010-medium-tuple-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00010-medium-tuple-to-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00011-easy-tuple-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00011-easy-tuple-to-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00012-medium-chainable-options</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00012-medium-chainable-options" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00013-warm-hello-world</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00013-warm-hello-world" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00014-easy-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00014-easy-first" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00015-medium-last</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00015-medium-last" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00016-medium-pop</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00016-medium-pop" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00017-hard-currying-1</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00017-hard-currying-1" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00018-easy-tuple-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00018-easy-tuple-length" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00020-medium-promise-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00020-medium-promise-all" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00043-easy-exclude</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00043-easy-exclude" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00055-hard-union-to-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00055-hard-union-to-intersection" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00057-hard-get-required</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00057-hard-get-required" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00059-hard-get-optional</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00059-hard-get-optional" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00062-medium-type-lookup</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00062-medium-type-lookup" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00089-hard-required-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00089-hard-required-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00090-hard-optional-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00090-hard-optional-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00106-medium-trimleft</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00106-medium-trimleft" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00108-medium-trim</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00108-medium-trim" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00110-medium-capitalize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00110-medium-capitalize" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00112-hard-capitalizewords</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00112-hard-capitalizewords" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00114-hard-camelcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00114-hard-camelcase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00116-medium-replace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00116-medium-replace" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00119-medium-replaceall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00119-medium-replaceall" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00147-hard-c-printf-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00147-hard-c-printf-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00151-extreme-query-string-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00151-extreme-query-string-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00189-easy-awaited</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00189-easy-awaited" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00191-medium-append-argument</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00191-medium-append-argument" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00213-hard-vue-basic-props</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00213-hard-vue-basic-props" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00216-extreme-slice</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00216-extreme-slice" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00223-hard-isany</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00223-hard-isany" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00268-easy-if</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00268-easy-if" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00270-hard-typed-get</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00270-hard-typed-get" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00274-extreme-integers-comparator</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00274-extreme-integers-comparator" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00296-medium-permutation</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00296-medium-permutation" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00298-medium-length-of-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00298-medium-length-of-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00300-hard-string-to-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00300-hard-string-to-number" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00399-hard-tuple-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00399-hard-tuple-filter" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00459-medium-flatten</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00459-medium-flatten" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00462-extreme-currying-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00462-extreme-currying-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00472-hard-tuple-to-enum-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00472-hard-tuple-to-enum-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00476-extreme-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00476-extreme-sum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00517-extreme-multiply</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00517-extreme-multiply" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00527-medium-append-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00527-medium-append-to-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00529-medium-absolute</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00529-medium-absolute" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00531-medium-string-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00531-medium-string-to-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00533-easy-concat</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00533-easy-concat" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00545-hard-printf</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00545-hard-printf" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00553-hard-deep-object-to-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00553-hard-deep-object-to-unique" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00599-medium-merge</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00599-medium-merge" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00612-medium-kebabcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00612-medium-kebabcase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00645-medium-diff</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00645-medium-diff" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00651-hard-length-of-string-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00651-hard-length-of-string-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00697-extreme-tag</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00697-extreme-tag" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00730-hard-union-to-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00730-hard-union-to-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00734-extreme-inclusive-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00734-extreme-inclusive-range" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00741-extreme-sort</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00741-extreme-sort" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00847-hard-string-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00847-hard-string-join" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00869-extreme-distributeunions</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00869-extreme-distributeunions" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00898-easy-includes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00898-easy-includes" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00925-extreme-assert-array-index</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00925-extreme-assert-array-index" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00949-medium-anyof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00949-medium-anyof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/00956-hard-deeppick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00956-hard-deeppick" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/01042-medium-isnever</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01042-medium-isnever" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/01097-medium-isunion</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01097-medium-isunion" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/01130-medium-replacekeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01130-medium-replacekeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/01290-hard-pinia</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01290-hard-pinia" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/01367-medium-remove-index-signature</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01367-medium-remove-index-signature" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/01383-hard-camelize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01383-hard-camelize" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/01978-medium-percentage-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01978-medium-percentage-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02059-hard-drop-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02059-hard-drop-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02070-medium-drop-char</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02070-medium-drop-char" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02257-medium-minusone</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02257-medium-minusone" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02595-medium-pickbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02595-medium-pickbytype" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02688-medium-startswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02688-medium-startswith" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02693-medium-endswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02693-medium-endswith" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02757-medium-partialbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02757-medium-partialbykeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02759-medium-requiredbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02759-medium-requiredbykeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02793-medium-mutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02793-medium-mutable" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02822-hard-split</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02822-hard-split" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02828-hard-classpublickeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02828-hard-classpublickeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02852-medium-omitbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02852-medium-omitbytype" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02857-hard-isrequiredkey</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02857-hard-isrequiredkey" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02946-medium-objectentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02946-medium-objectentries" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/02949-hard-objectfromentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02949-hard-objectfromentries" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03057-easy-push</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03057-easy-push" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03060-easy-unshift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03060-easy-unshift" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03062-medium-shift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03062-medium-shift" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03188-medium-tuple-to-nested-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03188-medium-tuple-to-nested-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03192-medium-reverse</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03192-medium-reverse" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03196-medium-flip-arguments</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03196-medium-flip-arguments" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03243-medium-flattendepth</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03243-medium-flattendepth" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03312-easy-parameters</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03312-easy-parameters" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03326-medium-bem-style-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03326-medium-bem-style-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/03376-medium-inordertraversal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03376-medium-inordertraversal" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04037-hard-ispalindrome</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04037-hard-ispalindrome" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04179-medium-flip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04179-medium-flip" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04182-medium-fibonacci-sequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04182-medium-fibonacci-sequence" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04260-medium-nomiwase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04260-medium-nomiwase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04425-medium-greater-than</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04425-medium-greater-than" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04471-medium-zip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04471-medium-zip" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04484-medium-istuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04484-medium-istuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04499-medium-chunk</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04499-medium-chunk" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04518-medium-fill</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04518-medium-fill" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/04803-medium-trim-right</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04803-medium-trim-right" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05117-medium-without</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05117-medium-without" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05140-medium-trunc</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05140-medium-trunc" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05153-medium-indexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05153-medium-indexof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05181-hard-mutable-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05181-hard-mutable-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05310-medium-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05310-medium-join" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05317-medium-lastindexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05317-medium-lastindexof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05360-medium-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05360-medium-unique" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05423-hard-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05423-hard-intersection" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/05821-medium-maptypes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05821-medium-maptypes" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/06141-hard-binary-to-decimal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06141-hard-binary-to-decimal" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/06228-extreme-json-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06228-extreme-json-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/07258-hard-object-key-paths</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07258-hard-object-key-paths" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/07544-medium-construct-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07544-medium-construct-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/07561-extreme-subtract</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07561-extreme-subtract" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/08640-medium-number-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08640-medium-number-range" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/08767-medium-combination</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08767-medium-combination" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/08804-hard-two-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08804-hard-two-sum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/08987-medium-subsequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08987-medium-subsequence" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09142-medium-checkrepeatedchars</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09142-medium-checkrepeatedchars" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09155-hard-validdate</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09155-hard-validdate" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09160-hard-assign</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09160-hard-assign" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09286-medium-firstuniquecharindex</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09286-medium-firstuniquecharindex" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09384-hard-maximum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09384-hard-maximum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09616-medium-parse-url-params</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09616-medium-parse-url-params" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09775-hard-capitalize-nest-object-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09775-hard-capitalize-nest-object-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09896-medium-get-middle-element</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09896-medium-get-middle-element" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/10969-medium-integer</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/10969-medium-integer" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/13580-hard-replace-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/13580-hard-replace-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/14080-hard-fizzbuzz</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14080-hard-fizzbuzz" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/14188-hard-run-length-encoding</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14188-hard-run-length-encoding" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/15260-hard-tree-path-array</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/15260-hard-tree-path-array" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/16259-medium-to-primitive</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/16259-medium-to-primitive" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/17973-medium-deepmutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/17973-medium-deepmutable" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/18142-medium-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18142-medium-all" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/18220-medium-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18220-medium-filter" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/19458-hard-snakecase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/19458-hard-snakecase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/21104-medium-findall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21104-medium-findall" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/21220-medium-permutations-of-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21220-medium-permutations-of-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/25170-medium-replace-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25170-medium-replace-first" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/25270-medium-transpose</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25270-medium-transpose" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/25747-hard-isnegativenumber</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25747-hard-isnegativenumber" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/26401-medium-json-schema-to-typescript</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/26401-medium-json-schema-to-typescript" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/27133-medium-square</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27133-medium-square" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/27152-medium-triangular-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27152-medium-triangular-number" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/27862-medium-cartesianproduct</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27862-medium-cartesianproduct" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/27932-medium-mergeall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27932-medium-mergeall" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/27958-medium-checkrepeatedtuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27958-medium-checkrepeatedtuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/28143-hard-optionalundefined</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28143-hard-optionalundefined" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/28333-medium-public-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28333-medium-public-type" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/29650-medium-extracttoobject</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29650-medium-extracttoobject" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/29785-medium-deep-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29785-medium-deep-omit" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/30178-hard-unique-items</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30178-hard-unique-items" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/30301-medium-isodd</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30301-medium-isodd" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/30430-medium-tower-of-hanoi</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30430-medium-tower-of-hanoi" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/30575-hard-bitwisexor</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30575-hard-bitwisexor" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/30958-medium-pascals-triangle</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30958-medium-pascals-triangle" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/30970-medium-shitariteraru</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30970-medium-shitariteraru" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/31447-extreme-countreversepairs</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31447-extreme-countreversepairs" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/31797-hard-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31797-hard-sudoku" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/31824-hard-length-of-string-3</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31824-hard-length-of-string-3" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/31997-extreme-parameter-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31997-extreme-parameter-intersection" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/32427-hard-unbox</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32427-hard-unbox" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/32532-hard-binary-addition</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32532-hard-binary-addition" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/33345-extreme-dynamic-route</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33345-extreme-dynamic-route" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/33763-hard-union-to-object-from-key</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33763-hard-union-to-object-from-key" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/34007-medium-compare-array-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34007-medium-compare-array-length" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/34286-hard-take-elements</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34286-hard-take-elements" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/34857-medium-defined-partial-record</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34857-medium-defined-partial-record" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/35045-medium-longest-common-prefix</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35045-medium-longest-common-prefix" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/35191-medium-trace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35191-medium-trace" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/35252-medium-isalphabet</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35252-medium-isalphabet" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/zh/challenges/35314-hard-valid-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35314-hard-valid-sudoku" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/progress</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/progress" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/progress" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/progress" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/progress" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/progress" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/qa</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/qa" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/qa" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/qa" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/qa" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/qa" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00002-medium-return-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00002-medium-return-type" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00003-medium-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00003-medium-omit" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00004-easy-pick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00004-easy-pick" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00005-extreme-readonly-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00005-extreme-readonly-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00006-hard-simple-vue</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00006-hard-simple-vue" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00007-easy-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00007-easy-readonly" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00008-medium-readonly-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00008-medium-readonly-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00009-medium-deep-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00009-medium-deep-readonly" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00010-medium-tuple-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00010-medium-tuple-to-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00011-easy-tuple-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00011-easy-tuple-to-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00012-medium-chainable-options</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00012-medium-chainable-options" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00013-warm-hello-world</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00013-warm-hello-world" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00014-easy-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00014-easy-first" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00015-medium-last</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00015-medium-last" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00016-medium-pop</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00016-medium-pop" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00017-hard-currying-1</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00017-hard-currying-1" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00018-easy-tuple-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00018-easy-tuple-length" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00020-medium-promise-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00020-medium-promise-all" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00043-easy-exclude</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00043-easy-exclude" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00055-hard-union-to-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00055-hard-union-to-intersection" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00057-hard-get-required</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00057-hard-get-required" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00059-hard-get-optional</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00059-hard-get-optional" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00062-medium-type-lookup</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00062-medium-type-lookup" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00089-hard-required-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00089-hard-required-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00090-hard-optional-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00090-hard-optional-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00106-medium-trimleft</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00106-medium-trimleft" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00108-medium-trim</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00108-medium-trim" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00110-medium-capitalize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00110-medium-capitalize" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00112-hard-capitalizewords</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00112-hard-capitalizewords" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00114-hard-camelcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00114-hard-camelcase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00116-medium-replace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00116-medium-replace" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00119-medium-replaceall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00119-medium-replaceall" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00147-hard-c-printf-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00147-hard-c-printf-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00151-extreme-query-string-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00151-extreme-query-string-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00189-easy-awaited</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00189-easy-awaited" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00191-medium-append-argument</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00191-medium-append-argument" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00213-hard-vue-basic-props</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00213-hard-vue-basic-props" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00216-extreme-slice</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00216-extreme-slice" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00223-hard-isany</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00223-hard-isany" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00268-easy-if</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00268-easy-if" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00270-hard-typed-get</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00270-hard-typed-get" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00274-extreme-integers-comparator</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00274-extreme-integers-comparator" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00296-medium-permutation</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00296-medium-permutation" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00298-medium-length-of-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00298-medium-length-of-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00300-hard-string-to-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00300-hard-string-to-number" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00399-hard-tuple-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00399-hard-tuple-filter" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00459-medium-flatten</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00459-medium-flatten" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00462-extreme-currying-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00462-extreme-currying-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00472-hard-tuple-to-enum-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00472-hard-tuple-to-enum-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00476-extreme-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00476-extreme-sum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00517-extreme-multiply</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00517-extreme-multiply" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00527-medium-append-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00527-medium-append-to-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00529-medium-absolute</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00529-medium-absolute" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00531-medium-string-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00531-medium-string-to-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00533-easy-concat</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00533-easy-concat" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00545-hard-printf</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00545-hard-printf" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00553-hard-deep-object-to-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00553-hard-deep-object-to-unique" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00599-medium-merge</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00599-medium-merge" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00612-medium-kebabcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00612-medium-kebabcase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00645-medium-diff</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00645-medium-diff" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00651-hard-length-of-string-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00651-hard-length-of-string-2" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00697-extreme-tag</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00697-extreme-tag" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00730-hard-union-to-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00730-hard-union-to-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00734-extreme-inclusive-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00734-extreme-inclusive-range" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00741-extreme-sort</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00741-extreme-sort" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00847-hard-string-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00847-hard-string-join" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00869-extreme-distributeunions</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00869-extreme-distributeunions" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00898-easy-includes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00898-easy-includes" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00925-extreme-assert-array-index</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00925-extreme-assert-array-index" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00949-medium-anyof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00949-medium-anyof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/00956-hard-deeppick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00956-hard-deeppick" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/01042-medium-isnever</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01042-medium-isnever" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/01097-medium-isunion</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01097-medium-isunion" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/01130-medium-replacekeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01130-medium-replacekeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/01290-hard-pinia</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01290-hard-pinia" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/01367-medium-remove-index-signature</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01367-medium-remove-index-signature" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/01383-hard-camelize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01383-hard-camelize" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/01978-medium-percentage-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01978-medium-percentage-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02059-hard-drop-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02059-hard-drop-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02070-medium-drop-char</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02070-medium-drop-char" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02257-medium-minusone</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02257-medium-minusone" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02595-medium-pickbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02595-medium-pickbytype" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02688-medium-startswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02688-medium-startswith" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02693-medium-endswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02693-medium-endswith" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02757-medium-partialbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02757-medium-partialbykeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02759-medium-requiredbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02759-medium-requiredbykeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02793-medium-mutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02793-medium-mutable" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02822-hard-split</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02822-hard-split" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02828-hard-classpublickeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02828-hard-classpublickeys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02852-medium-omitbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02852-medium-omitbytype" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02857-hard-isrequiredkey</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02857-hard-isrequiredkey" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02946-medium-objectentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02946-medium-objectentries" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/02949-hard-objectfromentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02949-hard-objectfromentries" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03057-easy-push</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03057-easy-push" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03060-easy-unshift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03060-easy-unshift" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03062-medium-shift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03062-medium-shift" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03188-medium-tuple-to-nested-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03188-medium-tuple-to-nested-object" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03192-medium-reverse</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03192-medium-reverse" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03196-medium-flip-arguments</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03196-medium-flip-arguments" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03243-medium-flattendepth</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03243-medium-flattendepth" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03312-easy-parameters</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03312-easy-parameters" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03326-medium-bem-style-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03326-medium-bem-style-string" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/03376-medium-inordertraversal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03376-medium-inordertraversal" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04037-hard-ispalindrome</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04037-hard-ispalindrome" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04179-medium-flip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04179-medium-flip" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04182-medium-fibonacci-sequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04182-medium-fibonacci-sequence" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04260-medium-nomiwase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04260-medium-nomiwase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04425-medium-greater-than</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04425-medium-greater-than" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04471-medium-zip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04471-medium-zip" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04484-medium-istuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04484-medium-istuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04499-medium-chunk</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04499-medium-chunk" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04518-medium-fill</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04518-medium-fill" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/04803-medium-trim-right</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04803-medium-trim-right" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05117-medium-without</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05117-medium-without" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05140-medium-trunc</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05140-medium-trunc" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05153-medium-indexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05153-medium-indexof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05181-hard-mutable-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05181-hard-mutable-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05310-medium-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05310-medium-join" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05317-medium-lastindexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05317-medium-lastindexof" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05360-medium-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05360-medium-unique" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05423-hard-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05423-hard-intersection" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/05821-medium-maptypes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05821-medium-maptypes" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/06141-hard-binary-to-decimal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06141-hard-binary-to-decimal" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/06228-extreme-json-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06228-extreme-json-parser" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/07258-hard-object-key-paths</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07258-hard-object-key-paths" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/07544-medium-construct-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07544-medium-construct-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/07561-extreme-subtract</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07561-extreme-subtract" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/08640-medium-number-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08640-medium-number-range" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/08767-medium-combination</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08767-medium-combination" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/08804-hard-two-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08804-hard-two-sum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/08987-medium-subsequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08987-medium-subsequence" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09142-medium-checkrepeatedchars</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09142-medium-checkrepeatedchars" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09155-hard-validdate</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09155-hard-validdate" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09160-hard-assign</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09160-hard-assign" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09286-medium-firstuniquecharindex</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09286-medium-firstuniquecharindex" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09384-hard-maximum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09384-hard-maximum" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09616-medium-parse-url-params</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09616-medium-parse-url-params" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09775-hard-capitalize-nest-object-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09775-hard-capitalize-nest-object-keys" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09896-medium-get-middle-element</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09896-medium-get-middle-element" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/10969-medium-integer</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/10969-medium-integer" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/13580-hard-replace-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/13580-hard-replace-union" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/14080-hard-fizzbuzz</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14080-hard-fizzbuzz" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/14188-hard-run-length-encoding</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14188-hard-run-length-encoding" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/15260-hard-tree-path-array</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/15260-hard-tree-path-array" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/16259-medium-to-primitive</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/16259-medium-to-primitive" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/17973-medium-deepmutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/17973-medium-deepmutable" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/18142-medium-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18142-medium-all" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/18220-medium-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18220-medium-filter" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/19458-hard-snakecase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/19458-hard-snakecase" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/21104-medium-findall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21104-medium-findall" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/21220-medium-permutations-of-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21220-medium-permutations-of-tuple" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/25170-medium-replace-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25170-medium-replace-first" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/25270-medium-transpose</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25270-medium-transpose" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/25747-hard-isnegativenumber</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25747-hard-isnegativenumber" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/26401-medium-json-schema-to-typescript</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/26401-medium-json-schema-to-typescript" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/27133-medium-square</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27133-medium-square" />
<lastmod>2026-02-02T13:15:19.077Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/27152-medium-triangular-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27152-medium-triangular-number" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/27862-medium-cartesianproduct</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27862-medium-cartesianproduct" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/27932-medium-mergeall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27932-medium-mergeall" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/27958-medium-checkrepeatedtuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27958-medium-checkrepeatedtuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/28143-hard-optionalundefined</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28143-hard-optionalundefined" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/28333-medium-public-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28333-medium-public-type" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/29650-medium-extracttoobject</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29650-medium-extracttoobject" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/29785-medium-deep-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29785-medium-deep-omit" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/30178-hard-unique-items</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30178-hard-unique-items" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/30301-medium-isodd</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30301-medium-isodd" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/30430-medium-tower-of-hanoi</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30430-medium-tower-of-hanoi" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/30575-hard-bitwisexor</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30575-hard-bitwisexor" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/30958-medium-pascals-triangle</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30958-medium-pascals-triangle" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/30970-medium-shitariteraru</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30970-medium-shitariteraru" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/31447-extreme-countreversepairs</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31447-extreme-countreversepairs" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/31797-hard-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31797-hard-sudoku" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/31824-hard-length-of-string-3</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31824-hard-length-of-string-3" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/31997-extreme-parameter-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31997-extreme-parameter-intersection" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/32427-hard-unbox</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32427-hard-unbox" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/32532-hard-binary-addition</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32532-hard-binary-addition" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/33345-extreme-dynamic-route</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33345-extreme-dynamic-route" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/33763-hard-union-to-object-from-key</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33763-hard-union-to-object-from-key" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/34007-medium-compare-array-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34007-medium-compare-array-length" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/34286-hard-take-elements</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34286-hard-take-elements" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/34857-medium-defined-partial-record</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34857-medium-defined-partial-record" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/35045-medium-longest-common-prefix</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35045-medium-longest-common-prefix" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/35191-medium-trace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35191-medium-trace" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/35252-medium-isalphabet</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35252-medium-isalphabet" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ja/challenges/35314-hard-valid-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35314-hard-valid-sudoku" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/progress</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/progress" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/progress" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/progress" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/progress" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/progress" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/qa</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/qa" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/qa" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/qa" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/qa" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/qa" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00002-medium-return-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00002-medium-return-type" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00003-medium-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00003-medium-omit" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00004-easy-pick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00004-easy-pick" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00005-extreme-readonly-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00005-extreme-readonly-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00006-hard-simple-vue</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00006-hard-simple-vue" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00007-easy-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00007-easy-readonly" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00008-medium-readonly-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00008-medium-readonly-2" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00009-medium-deep-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00009-medium-deep-readonly" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00010-medium-tuple-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00010-medium-tuple-to-union" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00011-easy-tuple-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00011-easy-tuple-to-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00012-medium-chainable-options</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00012-medium-chainable-options" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00013-warm-hello-world</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00013-warm-hello-world" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00014-easy-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00014-easy-first" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00015-medium-last</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00015-medium-last" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00016-medium-pop</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00016-medium-pop" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00017-hard-currying-1</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00017-hard-currying-1" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00018-easy-tuple-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00018-easy-tuple-length" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00020-medium-promise-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00020-medium-promise-all" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00043-easy-exclude</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00043-easy-exclude" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00055-hard-union-to-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00055-hard-union-to-intersection" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00057-hard-get-required</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00057-hard-get-required" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00059-hard-get-optional</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00059-hard-get-optional" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00062-medium-type-lookup</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00062-medium-type-lookup" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00089-hard-required-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00089-hard-required-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00090-hard-optional-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00090-hard-optional-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00106-medium-trimleft</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00106-medium-trimleft" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00108-medium-trim</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00108-medium-trim" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00110-medium-capitalize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00110-medium-capitalize" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00112-hard-capitalizewords</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00112-hard-capitalizewords" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00114-hard-camelcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00114-hard-camelcase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00116-medium-replace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00116-medium-replace" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00119-medium-replaceall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00119-medium-replaceall" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00147-hard-c-printf-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00147-hard-c-printf-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00151-extreme-query-string-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00151-extreme-query-string-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00189-easy-awaited</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00189-easy-awaited" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00191-medium-append-argument</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00191-medium-append-argument" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00213-hard-vue-basic-props</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00213-hard-vue-basic-props" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00216-extreme-slice</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00216-extreme-slice" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00223-hard-isany</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00223-hard-isany" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00268-easy-if</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00268-easy-if" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00270-hard-typed-get</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00270-hard-typed-get" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00274-extreme-integers-comparator</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00274-extreme-integers-comparator" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00296-medium-permutation</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00296-medium-permutation" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00298-medium-length-of-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00298-medium-length-of-string" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00300-hard-string-to-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00300-hard-string-to-number" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00399-hard-tuple-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00399-hard-tuple-filter" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00459-medium-flatten</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00459-medium-flatten" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00462-extreme-currying-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00462-extreme-currying-2" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00472-hard-tuple-to-enum-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00472-hard-tuple-to-enum-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00476-extreme-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00476-extreme-sum" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00517-extreme-multiply</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00517-extreme-multiply" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00527-medium-append-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00527-medium-append-to-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00529-medium-absolute</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00529-medium-absolute" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00531-medium-string-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00531-medium-string-to-union" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00533-easy-concat</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00533-easy-concat" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00545-hard-printf</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00545-hard-printf" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00553-hard-deep-object-to-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00553-hard-deep-object-to-unique" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00599-medium-merge</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00599-medium-merge" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00612-medium-kebabcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00612-medium-kebabcase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00645-medium-diff</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00645-medium-diff" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00651-hard-length-of-string-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00651-hard-length-of-string-2" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00697-extreme-tag</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00697-extreme-tag" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00730-hard-union-to-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00730-hard-union-to-tuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00734-extreme-inclusive-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00734-extreme-inclusive-range" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00741-extreme-sort</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00741-extreme-sort" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00847-hard-string-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00847-hard-string-join" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00869-extreme-distributeunions</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00869-extreme-distributeunions" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00898-easy-includes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00898-easy-includes" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00925-extreme-assert-array-index</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00925-extreme-assert-array-index" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00949-medium-anyof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00949-medium-anyof" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/00956-hard-deeppick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00956-hard-deeppick" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/01042-medium-isnever</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01042-medium-isnever" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/01097-medium-isunion</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01097-medium-isunion" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/01130-medium-replacekeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01130-medium-replacekeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/01290-hard-pinia</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01290-hard-pinia" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/01367-medium-remove-index-signature</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01367-medium-remove-index-signature" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/01383-hard-camelize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01383-hard-camelize" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/01978-medium-percentage-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01978-medium-percentage-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02059-hard-drop-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02059-hard-drop-string" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02070-medium-drop-char</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02070-medium-drop-char" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02257-medium-minusone</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02257-medium-minusone" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02595-medium-pickbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02595-medium-pickbytype" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02688-medium-startswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02688-medium-startswith" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02693-medium-endswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02693-medium-endswith" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02757-medium-partialbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02757-medium-partialbykeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02759-medium-requiredbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02759-medium-requiredbykeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02793-medium-mutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02793-medium-mutable" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02822-hard-split</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02822-hard-split" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02828-hard-classpublickeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02828-hard-classpublickeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02852-medium-omitbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02852-medium-omitbytype" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02857-hard-isrequiredkey</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02857-hard-isrequiredkey" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02946-medium-objectentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02946-medium-objectentries" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/02949-hard-objectfromentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02949-hard-objectfromentries" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03057-easy-push</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03057-easy-push" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03060-easy-unshift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03060-easy-unshift" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03062-medium-shift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03062-medium-shift" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03188-medium-tuple-to-nested-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03188-medium-tuple-to-nested-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03192-medium-reverse</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03192-medium-reverse" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03196-medium-flip-arguments</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03196-medium-flip-arguments" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03243-medium-flattendepth</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03243-medium-flattendepth" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03312-easy-parameters</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03312-easy-parameters" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03326-medium-bem-style-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03326-medium-bem-style-string" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/03376-medium-inordertraversal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03376-medium-inordertraversal" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04037-hard-ispalindrome</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04037-hard-ispalindrome" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04179-medium-flip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04179-medium-flip" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04182-medium-fibonacci-sequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04182-medium-fibonacci-sequence" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04260-medium-nomiwase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04260-medium-nomiwase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04425-medium-greater-than</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04425-medium-greater-than" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04471-medium-zip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04471-medium-zip" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04484-medium-istuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04484-medium-istuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04499-medium-chunk</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04499-medium-chunk" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04518-medium-fill</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04518-medium-fill" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/04803-medium-trim-right</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04803-medium-trim-right" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05117-medium-without</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05117-medium-without" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05140-medium-trunc</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05140-medium-trunc" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05153-medium-indexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05153-medium-indexof" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05181-hard-mutable-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05181-hard-mutable-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05310-medium-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05310-medium-join" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05317-medium-lastindexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05317-medium-lastindexof" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05360-medium-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05360-medium-unique" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05423-hard-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05423-hard-intersection" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/05821-medium-maptypes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05821-medium-maptypes" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/06141-hard-binary-to-decimal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06141-hard-binary-to-decimal" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/06228-extreme-json-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06228-extreme-json-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/07258-hard-object-key-paths</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07258-hard-object-key-paths" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/07544-medium-construct-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07544-medium-construct-tuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/07561-extreme-subtract</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07561-extreme-subtract" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/08640-medium-number-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08640-medium-number-range" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/08767-medium-combination</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08767-medium-combination" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/08804-hard-two-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08804-hard-two-sum" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/08987-medium-subsequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08987-medium-subsequence" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09142-medium-checkrepeatedchars</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09142-medium-checkrepeatedchars" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09155-hard-validdate</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09155-hard-validdate" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09160-hard-assign</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09160-hard-assign" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09286-medium-firstuniquecharindex</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09286-medium-firstuniquecharindex" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09384-hard-maximum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09384-hard-maximum" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09616-medium-parse-url-params</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09616-medium-parse-url-params" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09775-hard-capitalize-nest-object-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09775-hard-capitalize-nest-object-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09896-medium-get-middle-element</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09896-medium-get-middle-element" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/10969-medium-integer</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/10969-medium-integer" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/13580-hard-replace-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/13580-hard-replace-union" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/14080-hard-fizzbuzz</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14080-hard-fizzbuzz" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/14188-hard-run-length-encoding</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14188-hard-run-length-encoding" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/15260-hard-tree-path-array</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/15260-hard-tree-path-array" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/16259-medium-to-primitive</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/16259-medium-to-primitive" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/17973-medium-deepmutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/17973-medium-deepmutable" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/18142-medium-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18142-medium-all" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/18220-medium-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18220-medium-filter" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/19458-hard-snakecase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/19458-hard-snakecase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/21104-medium-findall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21104-medium-findall" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/21220-medium-permutations-of-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21220-medium-permutations-of-tuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/25170-medium-replace-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25170-medium-replace-first" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/25270-medium-transpose</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25270-medium-transpose" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/25747-hard-isnegativenumber</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25747-hard-isnegativenumber" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/26401-medium-json-schema-to-typescript</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/26401-medium-json-schema-to-typescript" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/27133-medium-square</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27133-medium-square" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/27152-medium-triangular-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27152-medium-triangular-number" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/27862-medium-cartesianproduct</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27862-medium-cartesianproduct" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/27932-medium-mergeall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27932-medium-mergeall" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/27958-medium-checkrepeatedtuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27958-medium-checkrepeatedtuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/28143-hard-optionalundefined</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28143-hard-optionalundefined" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/28333-medium-public-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28333-medium-public-type" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/29650-medium-extracttoobject</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29650-medium-extracttoobject" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/29785-medium-deep-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29785-medium-deep-omit" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/30178-hard-unique-items</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30178-hard-unique-items" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/30301-medium-isodd</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30301-medium-isodd" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/30430-medium-tower-of-hanoi</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30430-medium-tower-of-hanoi" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/30575-hard-bitwisexor</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30575-hard-bitwisexor" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/30958-medium-pascals-triangle</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30958-medium-pascals-triangle" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/30970-medium-shitariteraru</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30970-medium-shitariteraru" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/31447-extreme-countreversepairs</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31447-extreme-countreversepairs" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/31797-hard-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31797-hard-sudoku" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/31824-hard-length-of-string-3</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31824-hard-length-of-string-3" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/31997-extreme-parameter-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31997-extreme-parameter-intersection" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/32427-hard-unbox</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32427-hard-unbox" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/32532-hard-binary-addition</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32532-hard-binary-addition" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/33345-extreme-dynamic-route</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33345-extreme-dynamic-route" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/33763-hard-union-to-object-from-key</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33763-hard-union-to-object-from-key" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/34007-medium-compare-array-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34007-medium-compare-array-length" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/34286-hard-take-elements</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34286-hard-take-elements" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/34857-medium-defined-partial-record</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34857-medium-defined-partial-record" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/35045-medium-longest-common-prefix</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35045-medium-longest-common-prefix" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/35191-medium-trace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35191-medium-trace" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/35252-medium-isalphabet</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35252-medium-isalphabet" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/pt/challenges/35314-hard-valid-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35314-hard-valid-sudoku" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/progress</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/progress" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/progress" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/progress" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/progress" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/progress" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/qa</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/qa" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/qa" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/qa" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/qa" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/qa" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00002-medium-return-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00002-medium-return-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00002-medium-return-type" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00003-medium-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00003-medium-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00003-medium-omit" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00004-easy-pick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00004-easy-pick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00004-easy-pick" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00005-extreme-readonly-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00005-extreme-readonly-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00005-extreme-readonly-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00006-hard-simple-vue</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00006-hard-simple-vue" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00006-hard-simple-vue" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00007-easy-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00007-easy-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00007-easy-readonly" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00008-medium-readonly-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00008-medium-readonly-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00008-medium-readonly-2" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00009-medium-deep-readonly</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00009-medium-deep-readonly" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00009-medium-deep-readonly" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00010-medium-tuple-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00010-medium-tuple-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00010-medium-tuple-to-union" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00011-easy-tuple-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00011-easy-tuple-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00011-easy-tuple-to-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00012-medium-chainable-options</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00012-medium-chainable-options" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00012-medium-chainable-options" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00013-warm-hello-world</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00013-warm-hello-world" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00013-warm-hello-world" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00014-easy-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00014-easy-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00014-easy-first" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00015-medium-last</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00015-medium-last" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00015-medium-last" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00016-medium-pop</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00016-medium-pop" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00016-medium-pop" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00017-hard-currying-1</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00017-hard-currying-1" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00017-hard-currying-1" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00018-easy-tuple-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00018-easy-tuple-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00018-easy-tuple-length" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00020-medium-promise-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00020-medium-promise-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00020-medium-promise-all" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00043-easy-exclude</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00043-easy-exclude" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00043-easy-exclude" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00055-hard-union-to-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00055-hard-union-to-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00055-hard-union-to-intersection" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00057-hard-get-required</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00057-hard-get-required" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00057-hard-get-required" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00059-hard-get-optional</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00059-hard-get-optional" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00059-hard-get-optional" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00062-medium-type-lookup</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00062-medium-type-lookup" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00062-medium-type-lookup" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00089-hard-required-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00089-hard-required-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00089-hard-required-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00090-hard-optional-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00090-hard-optional-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00090-hard-optional-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00106-medium-trimleft</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00106-medium-trimleft" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00106-medium-trimleft" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00108-medium-trim</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00108-medium-trim" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00108-medium-trim" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00110-medium-capitalize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00110-medium-capitalize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00110-medium-capitalize" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00112-hard-capitalizewords</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00112-hard-capitalizewords" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00112-hard-capitalizewords" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00114-hard-camelcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00114-hard-camelcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00114-hard-camelcase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00116-medium-replace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00116-medium-replace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00116-medium-replace" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00119-medium-replaceall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00119-medium-replaceall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00119-medium-replaceall" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00147-hard-c-printf-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00147-hard-c-printf-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00147-hard-c-printf-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00151-extreme-query-string-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00151-extreme-query-string-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00151-extreme-query-string-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00189-easy-awaited</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00189-easy-awaited" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00189-easy-awaited" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00191-medium-append-argument</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00191-medium-append-argument" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00191-medium-append-argument" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00213-hard-vue-basic-props</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00213-hard-vue-basic-props" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00213-hard-vue-basic-props" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00216-extreme-slice</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00216-extreme-slice" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00216-extreme-slice" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00223-hard-isany</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00223-hard-isany" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00223-hard-isany" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00268-easy-if</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00268-easy-if" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00268-easy-if" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00270-hard-typed-get</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00270-hard-typed-get" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00270-hard-typed-get" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00274-extreme-integers-comparator</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00274-extreme-integers-comparator" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00274-extreme-integers-comparator" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00296-medium-permutation</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00296-medium-permutation" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00296-medium-permutation" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00298-medium-length-of-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00298-medium-length-of-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00298-medium-length-of-string" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00300-hard-string-to-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00300-hard-string-to-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00300-hard-string-to-number" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00399-hard-tuple-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00399-hard-tuple-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00399-hard-tuple-filter" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00459-medium-flatten</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00459-medium-flatten" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00459-medium-flatten" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00462-extreme-currying-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00462-extreme-currying-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00462-extreme-currying-2" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00472-hard-tuple-to-enum-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00472-hard-tuple-to-enum-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00472-hard-tuple-to-enum-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00476-extreme-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00476-extreme-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00476-extreme-sum" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00517-extreme-multiply</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00517-extreme-multiply" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00517-extreme-multiply" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00527-medium-append-to-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00527-medium-append-to-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00527-medium-append-to-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00529-medium-absolute</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00529-medium-absolute" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00529-medium-absolute" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00531-medium-string-to-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00531-medium-string-to-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00531-medium-string-to-union" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00533-easy-concat</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00533-easy-concat" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00533-easy-concat" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00545-hard-printf</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00545-hard-printf" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00545-hard-printf" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00553-hard-deep-object-to-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00553-hard-deep-object-to-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00553-hard-deep-object-to-unique" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00599-medium-merge</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00599-medium-merge" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00599-medium-merge" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00612-medium-kebabcase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00612-medium-kebabcase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00612-medium-kebabcase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00645-medium-diff</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00645-medium-diff" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00645-medium-diff" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00651-hard-length-of-string-2</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00651-hard-length-of-string-2" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00651-hard-length-of-string-2" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00697-extreme-tag</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00697-extreme-tag" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00697-extreme-tag" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00730-hard-union-to-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00730-hard-union-to-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00730-hard-union-to-tuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00734-extreme-inclusive-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00734-extreme-inclusive-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00734-extreme-inclusive-range" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00741-extreme-sort</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00741-extreme-sort" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00741-extreme-sort" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00847-hard-string-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00847-hard-string-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00847-hard-string-join" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00869-extreme-distributeunions</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00869-extreme-distributeunions" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00869-extreme-distributeunions" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00898-easy-includes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00898-easy-includes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00898-easy-includes" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00925-extreme-assert-array-index</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00925-extreme-assert-array-index" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00925-extreme-assert-array-index" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00949-medium-anyof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00949-medium-anyof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00949-medium-anyof" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/00956-hard-deeppick</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/00956-hard-deeppick" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/00956-hard-deeppick" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/01042-medium-isnever</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01042-medium-isnever" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01042-medium-isnever" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/01097-medium-isunion</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01097-medium-isunion" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01097-medium-isunion" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/01130-medium-replacekeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01130-medium-replacekeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01130-medium-replacekeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/01290-hard-pinia</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01290-hard-pinia" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01290-hard-pinia" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/01367-medium-remove-index-signature</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01367-medium-remove-index-signature" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01367-medium-remove-index-signature" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/01383-hard-camelize</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01383-hard-camelize" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01383-hard-camelize" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/01978-medium-percentage-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/01978-medium-percentage-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/01978-medium-percentage-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02059-hard-drop-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02059-hard-drop-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02059-hard-drop-string" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02070-medium-drop-char</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02070-medium-drop-char" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02070-medium-drop-char" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02257-medium-minusone</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02257-medium-minusone" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02257-medium-minusone" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02595-medium-pickbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02595-medium-pickbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02595-medium-pickbytype" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02688-medium-startswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02688-medium-startswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02688-medium-startswith" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02693-medium-endswith</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02693-medium-endswith" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02693-medium-endswith" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02757-medium-partialbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02757-medium-partialbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02757-medium-partialbykeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02759-medium-requiredbykeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02759-medium-requiredbykeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02759-medium-requiredbykeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02793-medium-mutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02793-medium-mutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02793-medium-mutable" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02822-hard-split</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02822-hard-split" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02822-hard-split" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02828-hard-classpublickeys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02828-hard-classpublickeys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02828-hard-classpublickeys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02852-medium-omitbytype</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02852-medium-omitbytype" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02852-medium-omitbytype" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02857-hard-isrequiredkey</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02857-hard-isrequiredkey" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02857-hard-isrequiredkey" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02946-medium-objectentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02946-medium-objectentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02946-medium-objectentries" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/02949-hard-objectfromentries</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/02949-hard-objectfromentries" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/02949-hard-objectfromentries" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03057-easy-push</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03057-easy-push" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03057-easy-push" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03060-easy-unshift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03060-easy-unshift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03060-easy-unshift" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03062-medium-shift</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03062-medium-shift" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03062-medium-shift" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03188-medium-tuple-to-nested-object</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03188-medium-tuple-to-nested-object" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03188-medium-tuple-to-nested-object" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03192-medium-reverse</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03192-medium-reverse" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03192-medium-reverse" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03196-medium-flip-arguments</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03196-medium-flip-arguments" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03196-medium-flip-arguments" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03243-medium-flattendepth</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03243-medium-flattendepth" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03243-medium-flattendepth" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03312-easy-parameters</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03312-easy-parameters" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03312-easy-parameters" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03326-medium-bem-style-string</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03326-medium-bem-style-string" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03326-medium-bem-style-string" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/03376-medium-inordertraversal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/03376-medium-inordertraversal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/03376-medium-inordertraversal" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04037-hard-ispalindrome</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04037-hard-ispalindrome" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04037-hard-ispalindrome" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04179-medium-flip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04179-medium-flip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04179-medium-flip" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04182-medium-fibonacci-sequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04182-medium-fibonacci-sequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04182-medium-fibonacci-sequence" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04260-medium-nomiwase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04260-medium-nomiwase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04260-medium-nomiwase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04425-medium-greater-than</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04425-medium-greater-than" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04425-medium-greater-than" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04471-medium-zip</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04471-medium-zip" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04471-medium-zip" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04484-medium-istuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04484-medium-istuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04484-medium-istuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04499-medium-chunk</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04499-medium-chunk" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04499-medium-chunk" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04518-medium-fill</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04518-medium-fill" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04518-medium-fill" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/04803-medium-trim-right</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/04803-medium-trim-right" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/04803-medium-trim-right" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05117-medium-without</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05117-medium-without" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05117-medium-without" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05140-medium-trunc</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05140-medium-trunc" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05140-medium-trunc" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05153-medium-indexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05153-medium-indexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05153-medium-indexof" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05181-hard-mutable-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05181-hard-mutable-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05181-hard-mutable-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05310-medium-join</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05310-medium-join" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05310-medium-join" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05317-medium-lastindexof</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05317-medium-lastindexof" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05317-medium-lastindexof" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05360-medium-unique</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05360-medium-unique" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05360-medium-unique" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05423-hard-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05423-hard-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05423-hard-intersection" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/05821-medium-maptypes</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/05821-medium-maptypes" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/05821-medium-maptypes" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/06141-hard-binary-to-decimal</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06141-hard-binary-to-decimal" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06141-hard-binary-to-decimal" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/06228-extreme-json-parser</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/06228-extreme-json-parser" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/06228-extreme-json-parser" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/07258-hard-object-key-paths</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07258-hard-object-key-paths" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07258-hard-object-key-paths" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/07544-medium-construct-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07544-medium-construct-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07544-medium-construct-tuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/07561-extreme-subtract</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/07561-extreme-subtract" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/07561-extreme-subtract" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/08640-medium-number-range</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08640-medium-number-range" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08640-medium-number-range" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/08767-medium-combination</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08767-medium-combination" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08767-medium-combination" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/08804-hard-two-sum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08804-hard-two-sum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08804-hard-two-sum" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/08987-medium-subsequence</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/08987-medium-subsequence" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/08987-medium-subsequence" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09142-medium-checkrepeatedchars</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09142-medium-checkrepeatedchars" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09142-medium-checkrepeatedchars" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09155-hard-validdate</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09155-hard-validdate" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09155-hard-validdate" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09160-hard-assign</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09160-hard-assign" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09160-hard-assign" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09286-medium-firstuniquecharindex</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09286-medium-firstuniquecharindex" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09286-medium-firstuniquecharindex" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09384-hard-maximum</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09384-hard-maximum" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09384-hard-maximum" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09616-medium-parse-url-params</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09616-medium-parse-url-params" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09616-medium-parse-url-params" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09775-hard-capitalize-nest-object-keys</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09775-hard-capitalize-nest-object-keys" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09775-hard-capitalize-nest-object-keys" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09896-medium-get-middle-element</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09896-medium-get-middle-element" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09896-medium-get-middle-element" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09898-medium-zhao-chu-mu-biao-shu-zu-zhong-zhi-chu-xian-guo-yi-ci-de-yuan-su" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/09989-medium-tong-ji-shu-zu-zhong-de-yuan-su-ge-shu" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/10969-medium-integer</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/10969-medium-integer" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/10969-medium-integer" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/13580-hard-replace-union</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/13580-hard-replace-union" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/13580-hard-replace-union" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/14080-hard-fizzbuzz</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14080-hard-fizzbuzz" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14080-hard-fizzbuzz" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/14188-hard-run-length-encoding</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/14188-hard-run-length-encoding" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/14188-hard-run-length-encoding" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/15260-hard-tree-path-array</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/15260-hard-tree-path-array" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/15260-hard-tree-path-array" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/16259-medium-to-primitive</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/16259-medium-to-primitive" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/16259-medium-to-primitive" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/17973-medium-deepmutable</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/17973-medium-deepmutable" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/17973-medium-deepmutable" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/18142-medium-all</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18142-medium-all" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18142-medium-all" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/18220-medium-filter</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/18220-medium-filter" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/18220-medium-filter" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/19458-hard-snakecase</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/19458-hard-snakecase" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/19458-hard-snakecase" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/21104-medium-findall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21104-medium-findall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21104-medium-findall" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21106-medium-zu-he-jian-lei-xing-combination-key-type" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/21220-medium-permutations-of-tuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/21220-medium-permutations-of-tuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/21220-medium-permutations-of-tuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/25170-medium-replace-first</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25170-medium-replace-first" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25170-medium-replace-first" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/25270-medium-transpose</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25270-medium-transpose" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25270-medium-transpose" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/25747-hard-isnegativenumber</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/25747-hard-isnegativenumber" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/25747-hard-isnegativenumber" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/26401-medium-json-schema-to-typescript</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/26401-medium-json-schema-to-typescript" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/26401-medium-json-schema-to-typescript" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/27133-medium-square</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27133-medium-square" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27133-medium-square" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/27152-medium-triangular-number</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27152-medium-triangular-number" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27152-medium-triangular-number" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/27862-medium-cartesianproduct</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27862-medium-cartesianproduct" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27862-medium-cartesianproduct" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/27932-medium-mergeall</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27932-medium-mergeall" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27932-medium-mergeall" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/27958-medium-checkrepeatedtuple</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/27958-medium-checkrepeatedtuple" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/27958-medium-checkrepeatedtuple" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/28143-hard-optionalundefined</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28143-hard-optionalundefined" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28143-hard-optionalundefined" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/28333-medium-public-type</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/28333-medium-public-type" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/28333-medium-public-type" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/29650-medium-extracttoobject</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29650-medium-extracttoobject" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29650-medium-extracttoobject" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/29785-medium-deep-omit</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/29785-medium-deep-omit" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/29785-medium-deep-omit" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/30178-hard-unique-items</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30178-hard-unique-items" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30178-hard-unique-items" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/30301-medium-isodd</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30301-medium-isodd" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30301-medium-isodd" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/30430-medium-tower-of-hanoi</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30430-medium-tower-of-hanoi" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30430-medium-tower-of-hanoi" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/30575-hard-bitwisexor</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30575-hard-bitwisexor" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30575-hard-bitwisexor" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/30958-medium-pascals-triangle</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30958-medium-pascals-triangle" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30958-medium-pascals-triangle" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/30970-medium-shitariteraru</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/30970-medium-shitariteraru" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/30970-medium-shitariteraru" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/31447-extreme-countreversepairs</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31447-extreme-countreversepairs" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31447-extreme-countreversepairs" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/31797-hard-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31797-hard-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31797-hard-sudoku" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/31824-hard-length-of-string-3</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31824-hard-length-of-string-3" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31824-hard-length-of-string-3" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/31997-extreme-parameter-intersection</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/31997-extreme-parameter-intersection" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/31997-extreme-parameter-intersection" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/32427-hard-unbox</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32427-hard-unbox" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32427-hard-unbox" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/32532-hard-binary-addition</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/32532-hard-binary-addition" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/32532-hard-binary-addition" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/33345-extreme-dynamic-route</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33345-extreme-dynamic-route" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33345-extreme-dynamic-route" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/33763-hard-union-to-object-from-key</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/33763-hard-union-to-object-from-key" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/33763-hard-union-to-object-from-key" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/34007-medium-compare-array-length</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34007-medium-compare-array-length" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34007-medium-compare-array-length" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/34286-hard-take-elements</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34286-hard-take-elements" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34286-hard-take-elements" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/34857-medium-defined-partial-record</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/34857-medium-defined-partial-record" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/34857-medium-defined-partial-record" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/35045-medium-longest-common-prefix</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35045-medium-longest-common-prefix" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35045-medium-longest-common-prefix" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/35191-medium-trace</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35191-medium-trace" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35191-medium-trace" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/35252-medium-isalphabet</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35252-medium-isalphabet" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35252-medium-isalphabet" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://typescriptonline.com/ko/challenges/35314-hard-valid-sudoku</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://typescriptonline.com/en/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="zh" href="https://typescriptonline.com/zh/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ja" href="https://typescriptonline.com/ja/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="pt" href="https://typescriptonline.com/pt/challenges/35314-hard-valid-sudoku" />
<xhtml:link rel="alternate" hreflang="ko" href="https://typescriptonline.com/ko/challenges/35314-hard-valid-sudoku" />
<lastmod>2026-02-02T13:15:19.078Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
</urlset>
