<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Aheadword%2Fpage</id>
	<title>Module:headword/page - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Aheadword%2Fpage"/>
	<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;action=history"/>
	<updated>2026-04-21T21:53:04Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=494905&amp;oldid=prev</id>
		<title>Sware at 11:32, 21 April 2026</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=494905&amp;oldid=prev"/>
		<updated>2026-04-21T11:32:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://linguifex.com/w/index.php?title=Module:headword/page&amp;amp;diff=494905&amp;amp;oldid=494848&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=494848&amp;oldid=prev</id>
		<title>Sware: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=494848&amp;oldid=prev"/>
		<updated>2026-04-21T11:22:46Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:22, 21 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=494847&amp;oldid=prev</id>
		<title>wikt&gt;Benwing2: export get_L2_sort_key()</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=494847&amp;oldid=prev"/>
		<updated>2025-12-24T06:50:59Z</updated>

		<summary type="html">&lt;p&gt;export get_L2_sort_key()&lt;/p&gt;
&lt;a href=&quot;https://linguifex.com/w/index.php?title=Module:headword/page&amp;amp;diff=494847&amp;amp;oldid=411913&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>wikt&gt;Benwing2</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=411913&amp;oldid=prev</id>
		<title>Sware at 22:19, 9 January 2025</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=411913&amp;oldid=prev"/>
		<updated>2025-01-09T22:19:34Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:19, 9 January 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l731&quot;&gt;Line 731:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 731:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Get the pagename.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Get the pagename.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	pagename = gsub(raw_title.subpageText, &amp;quot;^Unsupported titles/(.+)&amp;quot;, function(m)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	pagename = gsub(raw_title.subpageText, &amp;quot;^Unsupported titles/(.+)&amp;quot;, function(m)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		insert(cats, &quot;Unsupported titles&quot;)&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		local title = (unsupported_titles or get_unsupported_titles())[m]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		local title = (unsupported_titles or get_unsupported_titles())[m]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		if title then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		if title then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l836&quot;&gt;Line 836:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 835:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			L2_list[L2_list_len] = name&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			L2_list[L2_list_len] = name&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			L2_sections[heading.section] = name&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			L2_sections[heading.section] = name&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			-- Also add any L1s, since they terminate the preceding L2, but add a maintenance category since it&#039;s probably a mistake.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			if level == 1 then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;				new_cats[&quot;Pages with unwanted L1 headings&quot;] = false&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- Check the heading is in the right order.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- Check the heading is in the right order.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- FIXME: we need a more sophisticated sorting method which handles non-diacritic special characters (e.g. Magɨ).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- FIXME: we need a more sophisticated sorting method which handles non-diacritic special characters (e.g. Magɨ).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l846&quot;&gt;Line 846:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 842:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				string_sort(get_weight(prev), get_weight(name))&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				string_sort(get_weight(prev), get_weight(name))&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			) then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			) then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;				new_cats[&quot;Pages with language headings in the wrong order&quot;] = false&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				L2_wrong_order = true&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				L2_wrong_order = true&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l854&quot;&gt;Line 854:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 849:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		local function handle_template(template)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		local function handle_template(template)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			local name = template:get_name()&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			local name = template:get_name()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			if &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;name == &quot;DEFAULTSORT:&quot; then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			if name == &quot;DISPLAYTITLE:&quot; then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;				new_cats[&quot;Pages with DEFAULTSORT conflicts&quot;] = false&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with DISPLAYTITLE conflicts&quot;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;true&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			elseif &lt;/del&gt;name == &quot;DISPLAYTITLE:&quot; then&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with DISPLAYTITLE conflicts&quot;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;false&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l868&quot;&gt;Line 868:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 861:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				elseif node_class == &amp;quot;template&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				elseif node_class == &amp;quot;template&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;					handle_template(node)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;					handle_template(node)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;				elseif node_class == &quot;parameter&quot; then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;					new_cats[&quot;Pages with raw triple-brace template parameters&quot;] = false&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l885&quot;&gt;Line 885:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 876:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	------ 4. Parse page for maintenance categories. ------&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	------ 4. Parse page for maintenance categories. ------&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Use of tab characters.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Use of tab characters.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;	if content and find(content, &quot;\t&quot;, 1, true) then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		insert(cats, get_category(&quot;Pages with tab characters&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;	end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Unencoded character(s) in title.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Unencoded character(s) in title.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	local IDS = list_to_set{&amp;quot;⿰&amp;quot;, &amp;quot;⿱&amp;quot;, &amp;quot;⿲&amp;quot;, &amp;quot;⿳&amp;quot;, &amp;quot;⿴&amp;quot;, &amp;quot;⿵&amp;quot;, &amp;quot;⿶&amp;quot;, &amp;quot;⿷&amp;quot;, &amp;quot;⿸&amp;quot;, &amp;quot;⿹&amp;quot;, &amp;quot;⿺&amp;quot;, &amp;quot;⿻&amp;quot;, &amp;quot;⿼&amp;quot;, &amp;quot;⿽&amp;quot;, &amp;quot;⿾&amp;quot;, &amp;quot;⿿&amp;quot;, &amp;quot;㇯&amp;quot;}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	local IDS = list_to_set{&amp;quot;⿰&amp;quot;, &amp;quot;⿱&amp;quot;, &amp;quot;⿲&amp;quot;, &amp;quot;⿳&amp;quot;, &amp;quot;⿴&amp;quot;, &amp;quot;⿵&amp;quot;, &amp;quot;⿶&amp;quot;, &amp;quot;⿷&amp;quot;, &amp;quot;⿸&amp;quot;, &amp;quot;⿹&amp;quot;, &amp;quot;⿺&amp;quot;, &amp;quot;⿻&amp;quot;, &amp;quot;⿼&amp;quot;, &amp;quot;⿽&amp;quot;, &amp;quot;⿾&amp;quot;, &amp;quot;⿿&amp;quot;, &amp;quot;㇯&amp;quot;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;	for char in pairs(explode_pagename) do&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if IDS[char] and char ~= data.pagename then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, &quot;Terms containing unencoded characters&quot;)&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			break&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;	end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Raw wikitext use of a topic or langname category. Also check if any raw sortkeys have been used.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	-- Raw wikitext use of a topic or langname category. Also check if any raw sortkeys have been used.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l994&quot;&gt;Line 994:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 976:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_topic_cat = wikitext_topic_cat&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_topic_cat = wikitext_topic_cat&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_langname_cat = wikitext_langname_cat&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_langname_cat = wikitext_langname_cat&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if raw_sortkey then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with raw sortkeys&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=411909&amp;oldid=prev</id>
		<title>Sware at 22:15, 9 January 2025</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=411909&amp;oldid=prev"/>
		<updated>2025-01-09T22:15:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:15, 9 January 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l838&quot;&gt;Line 838:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 838:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- Also add any L1s, since they terminate the preceding L2, but add a maintenance category since it&amp;#039;s probably a mistake.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- Also add any L1s, since they terminate the preceding L2, but add a maintenance category since it&amp;#039;s probably a mistake.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			if level == 1 then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			if level == 1 then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with unwanted L1 headings&quot;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;true&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with unwanted L1 headings&quot;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;false&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- Check the heading is in the right order.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			-- Check the heading is in the right order.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l846&quot;&gt;Line 846:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 846:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				string_sort(get_weight(prev), get_weight(name))&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				string_sort(get_weight(prev), get_weight(name))&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			) then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			) then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with language headings in the wrong order&quot;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;true&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with language headings in the wrong order&quot;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;false&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				L2_wrong_order = true&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				L2_wrong_order = true&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l855&quot;&gt;Line 855:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 855:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			local name = template:get_name()&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			local name = template:get_name()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			if name == &amp;quot;DEFAULTSORT:&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			if name == &amp;quot;DEFAULTSORT:&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with DEFAULTSORT conflicts&quot;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;true&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with DEFAULTSORT conflicts&quot;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;false&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			elseif name == &amp;quot;DISPLAYTITLE:&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			elseif name == &amp;quot;DISPLAYTITLE:&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with DISPLAYTITLE conflicts&quot;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;true&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&quot;Pages with DISPLAYTITLE conflicts&quot;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;false&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l869&quot;&gt;Line 869:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 869:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;					handle_template(node)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;					handle_template(node)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				elseif node_class == &amp;quot;parameter&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				elseif node_class == &amp;quot;parameter&amp;quot; then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;					new_cats[&quot;Pages with raw triple-brace template parameters&quot;] = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;true&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;					new_cats[&quot;Pages with raw triple-brace template parameters&quot;] = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;false&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=410308&amp;oldid=prev</id>
		<title>Sware at 12:59, 8 January 2025</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=410308&amp;oldid=prev"/>
		<updated>2025-01-08T12:59:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:59, 8 January 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l848&quot;&gt;Line 848:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 848:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&amp;quot;Pages with language headings in the wrong order&amp;quot;] = true&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				new_cats[&amp;quot;Pages with language headings in the wrong order&amp;quot;] = true&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				L2_wrong_order = true&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;				L2_wrong_order = true&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			-- Check it&#039;s a canonical language name.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			if not (langnames or get_langnames())[name] then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;				new_cats[&quot;Pages with nonstandard language headings&quot;] = true&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			prev = name&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			prev = name&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=410302&amp;oldid=prev</id>
		<title>Sware at 12:49, 8 January 2025</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=410302&amp;oldid=prev"/>
		<updated>2025-01-08T12:49:24Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:49, 8 January 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l881&quot;&gt;Line 881:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 881:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_list = L2_list&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_list = L2_list&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_sections = L2_sections&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_sections = L2_sections&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		insert(cats, get_category(&quot;Pages with entries&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		insert(cats, get_category(format(&quot;Pages with %s entr%s&quot;, L2_list_len, L2_list_len == 1 and &quot;y&quot; or &quot;ies&quot;)))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		for cat in pairs(new_cats) do&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		for cat in pairs(new_cats) do&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=410278&amp;oldid=prev</id>
		<title>Sware at 12:26, 8 January 2025</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=410278&amp;oldid=prev"/>
		<updated>2025-01-08T12:26:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://linguifex.com/w/index.php?title=Module:headword/page&amp;amp;diff=410278&amp;amp;oldid=374726&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=374726&amp;oldid=prev</id>
		<title>Sware at 11:24, 6 August 2024</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=374726&amp;oldid=prev"/>
		<updated>2024-08-06T11:24:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:24, 6 August 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l639&quot;&gt;Line 639:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 639:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_list = L2_list&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_list = L2_list&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_sections = L2_sections&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.L2_sections = L2_sections&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if defaultsort then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with DEFAULTSORT conflicts&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if displaytitle then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with DISPLAYTITLE conflicts&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if page_has_L1 then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with unwanted L1 headings&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if L2_wrong_order then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with language headings in the wrong order&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if L2_nonstandard then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with nonstandard language headings&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if page_has_arg then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with raw triple-brace template arguments&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l787&quot;&gt;Line 787:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 769:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_topic_cat = wikitext_topic_cat&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_topic_cat = wikitext_topic_cat&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_langname_cat = wikitext_langname_cat&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		data.wikitext_langname_cat = wikitext_langname_cat&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if raw_sortkey then&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;			insert(cats, get_category(&quot;Pages with raw sortkeys&quot;))&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		end&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	end&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=373738&amp;oldid=prev</id>
		<title>Sware: Created page with &quot;local require = require local m_str_utils = require(&quot;Module:string utilities&quot;)  local mw = mw local string = string local table = table local ustring = mw.ustring  local concat = table.concat local decode_entities = m_str_utils.decode_entities local encode_entities = m_str_utils.encode_entities local find = string.find local get_category = require(&quot;Module:maintenance category&quot;).get_category local get_etym_lang = require(&quot;Module:etymology languages&quot;).getByCanonicalName lo...&quot;</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:headword/page&amp;diff=373738&amp;oldid=prev"/>
		<updated>2024-07-31T09:40:14Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local require = require local m_str_utils = require(&amp;quot;Module:string utilities&amp;quot;)  local mw = mw local string = string local table = table local ustring = mw.ustring  local concat = table.concat local decode_entities = m_str_utils.decode_entities local encode_entities = m_str_utils.encode_entities local find = string.find local get_category = require(&amp;quot;Module:maintenance category&amp;quot;).get_category local get_etym_lang = require(&amp;quot;Module:etymology languages&amp;quot;).getByCanonicalName lo...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local require = require&lt;br /&gt;
local m_str_utils = require(&amp;quot;Module:string utilities&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
local mw = mw&lt;br /&gt;
local string = string&lt;br /&gt;
local table = table&lt;br /&gt;
local ustring = mw.ustring&lt;br /&gt;
&lt;br /&gt;
local concat = table.concat&lt;br /&gt;
local decode_entities = m_str_utils.decode_entities&lt;br /&gt;
local encode_entities = m_str_utils.encode_entities&lt;br /&gt;
local find = string.find&lt;br /&gt;
local get_category = require(&amp;quot;Module:maintenance category&amp;quot;).get_category&lt;br /&gt;
local get_etym_lang = require(&amp;quot;Module:etymology languages&amp;quot;).getByCanonicalName&lt;br /&gt;
local insert = table.insert&lt;br /&gt;
local ipairs = ipairs&lt;br /&gt;
local list_to_set = require(&amp;quot;Module:table&amp;quot;).listToSet&lt;br /&gt;
local load_data = mw.loadData&lt;br /&gt;
local match = string.match&lt;br /&gt;
local new_title = mw.title.new&lt;br /&gt;
local remove_comments = m_str_utils.remove_comments&lt;br /&gt;
local split = m_str_utils.split&lt;br /&gt;
local string_sort = require(&amp;quot;Module:collation&amp;quot;).string_sort&lt;br /&gt;
local sub = string.sub&lt;br /&gt;
local toNFC = ustring.toNFC&lt;br /&gt;
local toNFD = ustring.toNFD&lt;br /&gt;
local type = type&lt;br /&gt;
local type_or_class = require(&amp;quot;Module:parser&amp;quot;).type_or_class&lt;br /&gt;
local u = m_str_utils.char&lt;br /&gt;
local ugsub = ustring.gsub&lt;br /&gt;
local uupper = m_str_utils.upper&lt;br /&gt;
&lt;br /&gt;
local langnames = load_data(&amp;quot;Module:languages/canonical names&amp;quot;)&lt;br /&gt;
local etym_langnames = load_data(&amp;quot;Module:etymology languages/canonical names&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
local export = {}&lt;br /&gt;
&lt;br /&gt;
-- Convert a numeric list of characters and ranges to the equivalent Lua pattern. WARNING: This destructively modifies&lt;br /&gt;
-- the contents of `ranges`.&lt;br /&gt;
local function char_ranges_to_pattern(ranges)&lt;br /&gt;
	for j, range in ipairs(ranges) do&lt;br /&gt;
		if type(range) == &amp;quot;table&amp;quot; then&lt;br /&gt;
			for k, char in ipairs(range) do&lt;br /&gt;
				range[k] = u(char)&lt;br /&gt;
			end&lt;br /&gt;
			ranges[j] = concat(range, &amp;quot;-&amp;quot;)&lt;br /&gt;
		else&lt;br /&gt;
			ranges[j] = u(range)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return concat(ranges)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-- Combining character data used when categorising unusual characters. These resolve into two patterns, used to find&lt;br /&gt;
-- single combining characters (i.e. character + diacritic(s)) or double combining characters (i.e. character +&lt;br /&gt;
-- diacritic(s) + character).&lt;br /&gt;
local comb_chars = {&lt;br /&gt;
	single = {&lt;br /&gt;
		{0x0300, 0x034E},&lt;br /&gt;
		-- Exclude combining grapheme joiner.&lt;br /&gt;
		{0x0350, 0x035B},&lt;br /&gt;
		{0x0363, 0x036F},&lt;br /&gt;
		{0x0483, 0x0489},&lt;br /&gt;
		{0x0591, 0x05BD},&lt;br /&gt;
		0x05BF,&lt;br /&gt;
		{0x05C1, 0x05C2},&lt;br /&gt;
		{0x05C4, 0x05C5},&lt;br /&gt;
		0x05C7,&lt;br /&gt;
		{0x0610, 0x061A},&lt;br /&gt;
		{0x064B, 0x065F},&lt;br /&gt;
		0x0670,&lt;br /&gt;
		{0x06D6, 0x06DC},&lt;br /&gt;
		{0x06DF, 0x06E4},&lt;br /&gt;
		{0x06E7, 0x06E8},&lt;br /&gt;
		{0x06EA, 0x06ED},&lt;br /&gt;
		0x0711,&lt;br /&gt;
		{0x0730, 0x074A},&lt;br /&gt;
		{0x07A6, 0x07B0},&lt;br /&gt;
		{0x07EB, 0x07F3},&lt;br /&gt;
		0x07FD,&lt;br /&gt;
		{0x0816, 0x0819},&lt;br /&gt;
		{0x081B, 0x0823},&lt;br /&gt;
		{0x0825, 0x0827},&lt;br /&gt;
		{0x0829, 0x082D},&lt;br /&gt;
		{0x0859, 0x085B},&lt;br /&gt;
		{0x0898, 0x089F},&lt;br /&gt;
		{0x08CA, 0x08E1},&lt;br /&gt;
		{0x08E3, 0x0903},&lt;br /&gt;
		{0x093A, 0x093C},&lt;br /&gt;
		{0x093E, 0x094F},&lt;br /&gt;
		{0x0951, 0x0957},&lt;br /&gt;
		{0x0962, 0x0963},&lt;br /&gt;
		{0x0981, 0x0983},&lt;br /&gt;
		0x09BC,&lt;br /&gt;
		{0x09BE, 0x09C4},&lt;br /&gt;
		{0x09C7, 0x09C8},&lt;br /&gt;
		{0x09CB, 0x09CD},&lt;br /&gt;
		0x09D7,&lt;br /&gt;
		{0x09E2, 0x09E3},&lt;br /&gt;
		0x09FE,&lt;br /&gt;
		{0x0A01, 0x0A03},&lt;br /&gt;
		0x0A3C,&lt;br /&gt;
		{0x0A3E, 0x0A42},&lt;br /&gt;
		{0x0A47, 0x0A48},&lt;br /&gt;
		{0x0A4B, 0x0A4D},&lt;br /&gt;
		0x0A51,&lt;br /&gt;
		{0x0A70, 0x0A71},&lt;br /&gt;
		0x0A75,&lt;br /&gt;
		{0x0A81, 0x0A83},&lt;br /&gt;
		0x0ABC,&lt;br /&gt;
		{0x0ABE, 0x0AC5},&lt;br /&gt;
		{0x0AC7, 0x0AC9},&lt;br /&gt;
		{0x0ACB, 0x0ACD},&lt;br /&gt;
		{0x0AE2, 0x0AE3},&lt;br /&gt;
		{0x0AFA, 0x0AFF},&lt;br /&gt;
		{0x0B01, 0x0B03},&lt;br /&gt;
		0x0B3C,&lt;br /&gt;
		{0x0B3E, 0x0B44},&lt;br /&gt;
		{0x0B47, 0x0B48},&lt;br /&gt;
		{0x0B4B, 0x0B4D},&lt;br /&gt;
		{0x0B55, 0x0B57},&lt;br /&gt;
		{0x0B62, 0x0B63},&lt;br /&gt;
		0x0B82,&lt;br /&gt;
		{0x0BBE, 0x0BC2},&lt;br /&gt;
		{0x0BC6, 0x0BC8},&lt;br /&gt;
		{0x0BCA, 0x0BCD},&lt;br /&gt;
		0x0BD7,&lt;br /&gt;
		{0x0C00, 0x0C04},&lt;br /&gt;
		0x0C3C,&lt;br /&gt;
		{0x0C3E, 0x0C44},&lt;br /&gt;
		{0x0C46, 0x0C48},&lt;br /&gt;
		{0x0C4A, 0x0C4D},&lt;br /&gt;
		{0x0C55, 0x0C56},&lt;br /&gt;
		{0x0C62, 0x0C63},&lt;br /&gt;
		{0x0C81, 0x0C83},&lt;br /&gt;
		0x0CBC,&lt;br /&gt;
		{0x0CBE, 0x0CC4},&lt;br /&gt;
		{0x0CC6, 0x0CC8},&lt;br /&gt;
		{0x0CCA, 0x0CCD},&lt;br /&gt;
		{0x0CD5, 0x0CD6},&lt;br /&gt;
		{0x0CE2, 0x0CE3},&lt;br /&gt;
		0x0CF3,&lt;br /&gt;
		{0x0D00, 0x0D03},&lt;br /&gt;
		{0x0D3B, 0x0D3C},&lt;br /&gt;
		{0x0D3E, 0x0D44},&lt;br /&gt;
		{0x0D46, 0x0D48},&lt;br /&gt;
		{0x0D4A, 0x0D4D},&lt;br /&gt;
		0x0D57,&lt;br /&gt;
		{0x0D62, 0x0D63},&lt;br /&gt;
		{0x0D81, 0x0D83},&lt;br /&gt;
		0x0DCA,&lt;br /&gt;
		{0x0DCF, 0x0DD4},&lt;br /&gt;
		0x0DD6,&lt;br /&gt;
		{0x0DD8, 0x0DDF},&lt;br /&gt;
		{0x0DF2, 0x0DF3},&lt;br /&gt;
		0x0E31,&lt;br /&gt;
		{0x0E34, 0x0E3A},&lt;br /&gt;
		{0x0E47, 0x0E4E},&lt;br /&gt;
		0x0EB1,&lt;br /&gt;
		{0x0EB4, 0x0EBC},&lt;br /&gt;
		{0x0EC8, 0x0ECE},&lt;br /&gt;
		{0x0F18, 0x0F19},&lt;br /&gt;
		0x0F35,&lt;br /&gt;
		0x0F37,&lt;br /&gt;
		0x0F39,&lt;br /&gt;
		{0x0F3E, 0x0F3F},&lt;br /&gt;
		{0x0F71, 0x0F84},&lt;br /&gt;
		{0x0F86, 0x0F87},&lt;br /&gt;
		{0x0F8D, 0x0F97},&lt;br /&gt;
		{0x0F99, 0x0FBC},&lt;br /&gt;
		0x0FC6,&lt;br /&gt;
		{0x102B, 0x103E},&lt;br /&gt;
		{0x1056, 0x1059},&lt;br /&gt;
		{0x105E, 0x1060},&lt;br /&gt;
		{0x1062, 0x1064},&lt;br /&gt;
		{0x1067, 0x106D},&lt;br /&gt;
		{0x1071, 0x1074},&lt;br /&gt;
		{0x1082, 0x108D},&lt;br /&gt;
		0x108F,&lt;br /&gt;
		{0x109A, 0x109D},&lt;br /&gt;
		{0x135D, 0x135F},&lt;br /&gt;
		{0x1712, 0x1715},&lt;br /&gt;
		{0x1732, 0x1734},&lt;br /&gt;
		{0x1752, 0x1753},&lt;br /&gt;
		{0x1772, 0x1773},&lt;br /&gt;
		{0x17B4, 0x17D3},&lt;br /&gt;
		0x17DD,&lt;br /&gt;
		-- Exclude Mongolian variation selectors.&lt;br /&gt;
		{0x1885, 0x1886},&lt;br /&gt;
		0x18A9,&lt;br /&gt;
		{0x1920, 0x192B},&lt;br /&gt;
		{0x1930, 0x193B},&lt;br /&gt;
		{0x1A17, 0x1A1B},&lt;br /&gt;
		{0x1A55, 0x1A5E},&lt;br /&gt;
		{0x1A60, 0x1A7C},&lt;br /&gt;
		0x1A7F,&lt;br /&gt;
		{0x1AB0, 0x1ACE},&lt;br /&gt;
		{0x1B00, 0x1B04},&lt;br /&gt;
		{0x1B34, 0x1B44},&lt;br /&gt;
		{0x1B6B, 0x1B73},&lt;br /&gt;
		{0x1B80, 0x1B82},&lt;br /&gt;
		{0x1BA1, 0x1BAD},&lt;br /&gt;
		{0x1BE6, 0x1BF3},&lt;br /&gt;
		{0x1C24, 0x1C37},&lt;br /&gt;
		{0x1CD0, 0x1CD2},&lt;br /&gt;
		{0x1CD4, 0x1CE8},&lt;br /&gt;
		0x1CED,&lt;br /&gt;
		0x1CF4,&lt;br /&gt;
		{0x1CF7, 0x1CF9},&lt;br /&gt;
		{0x1DC0, 0x1DCC},&lt;br /&gt;
		{0x1DCE, 0x1DFB},&lt;br /&gt;
		{0x1DFD, 0x1DFF},&lt;br /&gt;
		{0x20D0, 0x20F0},&lt;br /&gt;
		{0x2CEF, 0x2CF1},&lt;br /&gt;
		0x2D7F,&lt;br /&gt;
		{0x2DE0, 0x2DFF},&lt;br /&gt;
		{0x302A, 0x302F},&lt;br /&gt;
		{0x3099, 0x309A},&lt;br /&gt;
		{0xA66F, 0xA672},&lt;br /&gt;
		{0xA674, 0xA67D},&lt;br /&gt;
		{0xA69E, 0xA69F},&lt;br /&gt;
		{0xA6F0, 0xA6F1},&lt;br /&gt;
		0xA802,&lt;br /&gt;
		0xA806,&lt;br /&gt;
		0xA80B,&lt;br /&gt;
		{0xA823, 0xA827},&lt;br /&gt;
		0xA82C,&lt;br /&gt;
		{0xA880, 0xA881},&lt;br /&gt;
		{0xA8B4, 0xA8C5},&lt;br /&gt;
		{0xA8E0, 0xA8F1},&lt;br /&gt;
		0xA8FF,&lt;br /&gt;
		{0xA926, 0xA92D},&lt;br /&gt;
		{0xA947, 0xA953},&lt;br /&gt;
		{0xA980, 0xA983},&lt;br /&gt;
		{0xA9B3, 0xA9C0},&lt;br /&gt;
		0xA9E5,&lt;br /&gt;
		{0xAA29, 0xAA36},&lt;br /&gt;
		0xAA43,&lt;br /&gt;
		{0xAA4C, 0xAA4D},&lt;br /&gt;
		{0xAA7B, 0xAA7D},&lt;br /&gt;
		0xAAB0,&lt;br /&gt;
		{0xAAB2, 0xAAB4},&lt;br /&gt;
		{0xAAB7, 0xAAB8},&lt;br /&gt;
		{0xAABE, 0xAABF},&lt;br /&gt;
		0xAAC1,&lt;br /&gt;
		{0xAAEB, 0xAAEF},&lt;br /&gt;
		{0xAAF5, 0xAAF6},&lt;br /&gt;
		{0xABE3, 0xABEA},&lt;br /&gt;
		{0xABEC, 0xABED},&lt;br /&gt;
		0xFB1E,&lt;br /&gt;
		{0xFE20, 0xFE2F},&lt;br /&gt;
		0x101FD,&lt;br /&gt;
		0x102E0,&lt;br /&gt;
		{0x10376, 0x1037A},&lt;br /&gt;
		{0x10A01, 0x10A03},&lt;br /&gt;
		{0x10A05, 0x10A06},&lt;br /&gt;
		{0x10A0C, 0x10A0F},&lt;br /&gt;
		{0x10A38, 0x10A3A},&lt;br /&gt;
		0x10A3F,&lt;br /&gt;
		{0x10AE5, 0x10AE6},&lt;br /&gt;
		{0x10D24, 0x10D27},&lt;br /&gt;
		{0x10EAB, 0x10EAC},&lt;br /&gt;
		{0x10EFD, 0x10EFF},&lt;br /&gt;
		{0x10F46, 0x10F50},&lt;br /&gt;
		{0x10F82, 0x10F85},&lt;br /&gt;
		{0x11000, 0x11002},&lt;br /&gt;
		{0x11038, 0x11046},&lt;br /&gt;
		0x11070,&lt;br /&gt;
		{0x11073, 0x11074},&lt;br /&gt;
		{0x1107F, 0x11082},&lt;br /&gt;
		{0x110B0, 0x110BA},&lt;br /&gt;
		0x110C2,&lt;br /&gt;
		{0x11100, 0x11102},&lt;br /&gt;
		{0x11127, 0x11134},&lt;br /&gt;
		{0x11145, 0x11146},&lt;br /&gt;
		0x11173,&lt;br /&gt;
		{0x11180, 0x11182},&lt;br /&gt;
		{0x111B3, 0x111C0},&lt;br /&gt;
		{0x111C9, 0x111CC},&lt;br /&gt;
		{0x111CE, 0x111CF},&lt;br /&gt;
		{0x1122C, 0x11237},&lt;br /&gt;
		0x1123E,&lt;br /&gt;
		0x11241,&lt;br /&gt;
		{0x112DF, 0x112EA},&lt;br /&gt;
		{0x11300, 0x11303},&lt;br /&gt;
		{0x1133B, 0x1133C},&lt;br /&gt;
		{0x1133E, 0x11344},&lt;br /&gt;
		{0x11347, 0x11348},&lt;br /&gt;
		{0x1134B, 0x1134D},&lt;br /&gt;
		0x11357,&lt;br /&gt;
		{0x11362, 0x11363},&lt;br /&gt;
		{0x11366, 0x1136C},&lt;br /&gt;
		{0x11370, 0x11374},&lt;br /&gt;
		{0x11435, 0x11446},&lt;br /&gt;
		0x1145E,&lt;br /&gt;
		{0x114B0, 0x114C3},&lt;br /&gt;
		{0x115AF, 0x115B5},&lt;br /&gt;
		{0x115B8, 0x115C0},&lt;br /&gt;
		{0x115DC, 0x115DD},&lt;br /&gt;
		{0x11630, 0x11640},&lt;br /&gt;
		{0x116AB, 0x116B7},&lt;br /&gt;
		{0x1171D, 0x1172B},&lt;br /&gt;
		{0x1182C, 0x1183A},&lt;br /&gt;
		{0x11930, 0x11935},&lt;br /&gt;
		{0x11937, 0x11938},&lt;br /&gt;
		{0x1193B, 0x1193E},&lt;br /&gt;
		0x11940,&lt;br /&gt;
		{0x11942, 0x11943},&lt;br /&gt;
		{0x119D1, 0x119D7},&lt;br /&gt;
		{0x119DA, 0x119E0},&lt;br /&gt;
		0x119E4,&lt;br /&gt;
		{0x11A01, 0x11A0A},&lt;br /&gt;
		{0x11A33, 0x11A39},&lt;br /&gt;
		{0x11A3B, 0x11A3E},&lt;br /&gt;
		0x11A47,&lt;br /&gt;
		{0x11A51, 0x11A5B},&lt;br /&gt;
		{0x11A8A, 0x11A99},&lt;br /&gt;
		{0x11C2F, 0x11C36},&lt;br /&gt;
		{0x11C38, 0x11C3F},&lt;br /&gt;
		{0x11C92, 0x11CA7},&lt;br /&gt;
		{0x11CA9, 0x11CB6},&lt;br /&gt;
		{0x11D31, 0x11D36},&lt;br /&gt;
		0x11D3A,&lt;br /&gt;
		{0x11D3C, 0x11D3D},&lt;br /&gt;
		{0x11D3F, 0x11D45},&lt;br /&gt;
		0x11D47,&lt;br /&gt;
		{0x11D8A, 0x11D8E},&lt;br /&gt;
		{0x11D90, 0x11D91},&lt;br /&gt;
		{0x11D93, 0x11D97},&lt;br /&gt;
		{0x11EF3, 0x11EF6},&lt;br /&gt;
		{0x11F00, 0x11F01},&lt;br /&gt;
		0x11F03,&lt;br /&gt;
		{0x11F34, 0x11F3A},&lt;br /&gt;
		{0x11F3E, 0x11F42},&lt;br /&gt;
		0x13440,&lt;br /&gt;
		{0x13447, 0x13455},&lt;br /&gt;
		{0x16AF0, 0x16AF4},&lt;br /&gt;
		{0x16B30, 0x16B36},&lt;br /&gt;
		0x16F4F,&lt;br /&gt;
		{0x16F51, 0x16F87},&lt;br /&gt;
		{0x16F8F, 0x16F92},&lt;br /&gt;
		-- Exclude Khitan Small Script filler.&lt;br /&gt;
		{0x16FF0, 0x16FF1},&lt;br /&gt;
		{0x1BC9D, 0x1BC9E},&lt;br /&gt;
		{0x1CF00, 0x1CF2D},&lt;br /&gt;
		{0x1CF30, 0x1CF46},&lt;br /&gt;
		{0x1D165, 0x1D169},&lt;br /&gt;
		{0x1D16D, 0x1D172},&lt;br /&gt;
		{0x1D17B, 0x1D182},&lt;br /&gt;
		{0x1D185, 0x1D18B},&lt;br /&gt;
		{0x1D1AA, 0x1D1AD},&lt;br /&gt;
		{0x1D242, 0x1D244},&lt;br /&gt;
		{0x1DA00, 0x1DA36},&lt;br /&gt;
		{0x1DA3B, 0x1DA6C},&lt;br /&gt;
		0x1DA75,&lt;br /&gt;
		0x1DA84,&lt;br /&gt;
		{0x1DA9B, 0x1DA9F},&lt;br /&gt;
		{0x1DAA1, 0x1DAAF},&lt;br /&gt;
		{0x1E000, 0x1E006},&lt;br /&gt;
		{0x1E008, 0x1E018},&lt;br /&gt;
		{0x1E01B, 0x1E021},&lt;br /&gt;
		{0x1E023, 0x1E024},&lt;br /&gt;
		{0x1E026, 0x1E02A},&lt;br /&gt;
		0x1E08F,&lt;br /&gt;
		{0x1E130, 0x1E136},&lt;br /&gt;
		0x1E2AE,&lt;br /&gt;
		{0x1E2EC, 0x1E2EF},&lt;br /&gt;
		{0x1E4EC, 0x1E4EF},&lt;br /&gt;
		{0x1E8D0, 0x1E8D6},&lt;br /&gt;
		{0x1E944, 0x1E94A},&lt;br /&gt;
	},&lt;br /&gt;
	double = {&lt;br /&gt;
		{0x035C, 0x0362},&lt;br /&gt;
		0x1DCD,&lt;br /&gt;
		0x1DFC,&lt;br /&gt;
	},&lt;br /&gt;
	vs = { -- variation selectors; separated out so that we don&amp;#039;t get categories for them&lt;br /&gt;
		{0xFE00, 0xFE0F},&lt;br /&gt;
		{0xE0100, 0xE01EF},&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
for key, charset in pairs(comb_chars) do&lt;br /&gt;
	comb_chars[key] = char_ranges_to_pattern(charset)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local comb_chars_all = comb_chars.single .. comb_chars.double .. comb_chars.vs&lt;br /&gt;
&lt;br /&gt;
comb_chars = {&lt;br /&gt;
	combined_single = &amp;quot;[^&amp;quot; .. comb_chars_all .. &amp;quot;][&amp;quot; .. comb_chars.single .. comb_chars.vs .. &amp;quot;]+%f[^&amp;quot; .. comb_chars_all .. &amp;quot;]&amp;quot;,&lt;br /&gt;
	combined_double = &amp;quot;[^&amp;quot; .. comb_chars_all .. &amp;quot;][&amp;quot; .. comb_chars.single .. comb_chars.vs .. &amp;quot;]*[&amp;quot; .. comb_chars.double .. &amp;quot;]+[&amp;quot; .. comb_chars_all .. &amp;quot;]*.[&amp;quot; .. comb_chars.single .. comb_chars.vs .. &amp;quot;]*&amp;quot;,&lt;br /&gt;
	diacritics_single = &amp;quot;[&amp;quot; .. comb_chars.single .. &amp;quot;]&amp;quot;,&lt;br /&gt;
	diacritics_double = &amp;quot;[&amp;quot; .. comb_chars.double .. &amp;quot;]&amp;quot;,&lt;br /&gt;
	diacritics_all = &amp;quot;[&amp;quot; .. comb_chars_all .. &amp;quot;]&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- From https://unicode.org/Public/emoji/15.1/emoji-sequences.txt&lt;br /&gt;
local emoji_chars = {&lt;br /&gt;
	{0x231A, 0x231B}, --  watch..hourglass done                                          # E0.6   [2] (⌚..⌛)&lt;br /&gt;
	{0x23E9, 0x23EC}, --  fast-forward button..fast down button                          # E0.6   [4] (⏩..⏬)&lt;br /&gt;
	0x23F0,           --  alarm clock                                                    # E0.6   [1] (⏰)&lt;br /&gt;
	0x23F3,           --  hourglass not done                                             # E0.6   [1] (⏳)&lt;br /&gt;
	{0x25FD, 0x25FE}, --  white medium-small square..black medium-small square           # E0.6   [2] (◽..◾)&lt;br /&gt;
	{0x2614, 0x2615}, --  umbrella with rain drops..hot beverage                         # E0.6   [2] (☔..☕)&lt;br /&gt;
	{0x2648, 0x2653}, --  Aries..Pisces                                                  # E0.6  [12] (♈..♓)&lt;br /&gt;
	0x267F,           --  wheelchair symbol                                              # E0.6   [1] (♿)&lt;br /&gt;
	0x2693,           --  anchor                                                         # E0.6   [1] (⚓)&lt;br /&gt;
	0x26A1,           --  high voltage                                                   # E0.6   [1] (⚡)&lt;br /&gt;
	{0x26AA, 0x26AB}, --  white circle..black circle                                     # E0.6   [2] (⚪..⚫)&lt;br /&gt;
	{0x26BD, 0x26BE}, --  soccer ball..baseball                                          # E0.6   [2] (⚽..⚾)&lt;br /&gt;
	{0x26C4, 0x26C5}, --  snowman without snow..sun behind cloud                         # E0.6   [2] (⛄..⛅)&lt;br /&gt;
	0x26CE,           --  Ophiuchus                                                      # E0.6   [1] (⛎)&lt;br /&gt;
	0x26D4,           --  no entry                                                       # E0.6   [1] (⛔)&lt;br /&gt;
	0x26EA,           --  church                                                         # E0.6   [1] (⛪)&lt;br /&gt;
	{0x26F2, 0x26F3}, --  fountain..flag in hole                                         # E0.6   [2] (⛲..⛳)&lt;br /&gt;
	0x26F5,           --  sailboat                                                       # E0.6   [1] (⛵)&lt;br /&gt;
	0x26FA,           --  tent                                                           # E0.6   [1] (⛺)&lt;br /&gt;
	0x26FD,           --  fuel pump                                                      # E0.6   [1] (⛽)&lt;br /&gt;
	0x2705,           --  check mark button                                              # E0.6   [1] (✅)&lt;br /&gt;
	{0x270A, 0x270B}, --  raised fist..raised hand                                       # E0.6   [2] (✊..✋)&lt;br /&gt;
	0x2728,           --  sparkles                                                       # E0.6   [1] (✨)&lt;br /&gt;
	0x274C,           --  cross mark                                                     # E0.6   [1] (❌)&lt;br /&gt;
	0x274E,           --  cross mark button                                              # E0.6   [1] (❎)&lt;br /&gt;
	{0x2753, 0x2755}, --  red question mark..white exclamation mark                      # E0.6   [3] (❓..❕)&lt;br /&gt;
	0x2757,           --  red exclamation mark                                           # E0.6   [1] (❗)&lt;br /&gt;
	{0x2795, 0x2797}, --  plus..divide                                                   # E0.6   [3] (➕..➗)&lt;br /&gt;
	0x27B0,           --  curly loop                                                     # E0.6   [1] (➰)&lt;br /&gt;
	0x27BF,           --  double curly loop                                              # E1.0   [1] (➿)&lt;br /&gt;
	{0x2B1B, 0x2B1C}, --  black large square..white large square                         # E0.6   [2] (⬛..⬜)&lt;br /&gt;
	0x2B50,           --  star                                                           # E0.6   [1] (⭐)&lt;br /&gt;
	0x2B55,           --  hollow red circle                                              # E0.6   [1] (⭕)&lt;br /&gt;
	{0x1F300, 0x1FAFF}, --  emoji in Plane 1&lt;br /&gt;
	-- NOTE: There are lots more emoji sequences involving non-emoji Plane 0 symbols followed by 0xFE0F, which we don&amp;#039;t&lt;br /&gt;
	-- (yet?) handle.&lt;br /&gt;
}&lt;br /&gt;
emoji_chars = char_ranges_to_pattern(emoji_chars)&lt;br /&gt;
&lt;br /&gt;
local unsupported_characters = {}&lt;br /&gt;
for k, v in pairs(require(&amp;quot;Module:links/data&amp;quot;).unsupported_characters) do&lt;br /&gt;
	unsupported_characters[v] = k&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Get the list of unsupported titles and invert it (so the keys are pagenames and values are canonical titles).&lt;br /&gt;
local unsupported_titles = {}&lt;br /&gt;
for k, v in pairs(require(&amp;quot;Module:links/data&amp;quot;).unsupported_titles) do&lt;br /&gt;
	unsupported_titles[v] = k&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[==[&lt;br /&gt;
Given a pagename (or {nil} for the current page), create and return a data structure describing the page. The returned&lt;br /&gt;
object includes the following fields:&lt;br /&gt;
* `comb_chars`: A table containing various Lua character class patterns for different types of combined characters&lt;br /&gt;
  (those that decompose into multiple characters in the NFD decomposition). The patterns are meant to be used with&lt;br /&gt;
  {mw.ustring.find()}. The keys are:&lt;br /&gt;
** `single`: Single combining characters (character + diacritic), without surrounding brackets;&lt;br /&gt;
** `double`: Double combining characters (character + diacritic + character), without surrounding brackets;&lt;br /&gt;
** `vs`: Variation selectors, without surrounding brackets;&lt;br /&gt;
** `all`: Concatenation of `single` + `double` + `vs`, without surrounding brackets;&lt;br /&gt;
** `diacritics_single`: Like `single` but with surrounding brackets;&lt;br /&gt;
** `diacritics_double`: Like `double` but with surrounding brackets;&lt;br /&gt;
** `diacritics_all`: Like `all` but with surrounding brackets;&lt;br /&gt;
** `combined_single`: Lua pattern for matching a spacing character followed by one or more single combining characters;&lt;br /&gt;
** `combined_double`: Lua pattern for matching a combination of two spacing characters separated by one or more double&lt;br /&gt;
   combining characters, possibly also with single combining characters;&lt;br /&gt;
* `emoji_pattern`: A Lua character class pattern (including surrounding brackets) that matches emojis. Meant to be used&lt;br /&gt;
  with {mw.ustring.find()}.&lt;br /&gt;
* `L2_list`: Ordered list of L2 headings on the page, with the extra key `n` that gives the length of the list.&lt;br /&gt;
* `L2_sections`: Lookup table of L2 headings on the page, where the key is the section number assigned by the preprocessor, and the value is the L2 heading name. Once an invocation has got its actual section number from get_current_section in [[Module:utilities]], it can use this table to determine its parent L2. TODO: We could expand this to include subsections, to check POS headings are correct etc.&lt;br /&gt;
* `unsupported_titles`: Map from pagenames to canonical titles for unsupported-title pages.&lt;br /&gt;
* `namespace`: Namespace of the pagename.&lt;br /&gt;
* `ns`: Namespace table for the page from mw.site.namespaces (TODO: merge with `namespace` above).&lt;br /&gt;
* `full_raw_pagename`: Full version of the &amp;#039;&amp;#039;&amp;#039;RAW&amp;#039;&amp;#039;&amp;#039; pagename (i.e. unsupported-title pages aren&amp;#039;t canonicalized);&lt;br /&gt;
  including the namespace and the root (portion before the slash).&lt;br /&gt;
* `pagename`: Canonicalized subpage portion of the pagename (unsupported-title pages are canonicalized).&lt;br /&gt;
* `decompose_pagename`: Equivalent of `pagename` in NFD decomposition.&lt;br /&gt;
* `pagename_len`: Length of `pagename` in Unicode chars, where combinations of spacing character + decomposed diacritic&lt;br /&gt;
  are treated as single characters.&lt;br /&gt;
* `explode_pagename`: Set of characters found in `pagename`. The keys are characters (where combinations of spacing&lt;br /&gt;
  character + decomposed diacritic are treated as single characters).&lt;br /&gt;
* `encoded_pagename`: FIXME: Document me.&lt;br /&gt;
* `pagename_defaultsort`: FIXME: Document me.&lt;br /&gt;
* `raw_defaultsort`: FIXME: Document me.&lt;br /&gt;
* `wikitext_topic_cat`: FIXME: Document me.&lt;br /&gt;
* `wikitext_langname_cat`: FIXME: Document me.&lt;br /&gt;
]==]&lt;br /&gt;
&lt;br /&gt;
function export.process_page(pagename)&lt;br /&gt;
	local data = {&lt;br /&gt;
		comb_chars = comb_chars,&lt;br /&gt;
		emoji_pattern = &amp;quot;[&amp;quot; .. emoji_chars .. &amp;quot;]&amp;quot;,&lt;br /&gt;
		unsupported_titles = unsupported_titles&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local cats = {}&lt;br /&gt;
	data.cats = cats&lt;br /&gt;
&lt;br /&gt;
	-- We cannot store `raw_title` in `data` because it contains a metatable.&lt;br /&gt;
	local raw_title&lt;br /&gt;
	local function bad_pagename()&lt;br /&gt;
		if not pagename then&lt;br /&gt;
			error(&amp;quot;Internal error: Something wrong, `data.pagename` not specified but current title containg illegal characters&amp;quot;)&lt;br /&gt;
		else&lt;br /&gt;
			error((&amp;quot;Bad value for `data.pagename`: &amp;#039;%s&amp;#039;, which must not contain illegal characters&amp;quot;):format(pagename))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if pagename then -- for testing, doc pages, etc.&lt;br /&gt;
		raw_title = new_title(pagename)&lt;br /&gt;
		if not raw_title then&lt;br /&gt;
			bad_pagename()&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		raw_title = mw.title.getCurrentTitle()&lt;br /&gt;
	end&lt;br /&gt;
	data.namespace = raw_title.nsText&lt;br /&gt;
	data.ns = mw.site.namespaces[raw_title.namespace]&lt;br /&gt;
	data.full_raw_pagename = raw_title.fullText&lt;br /&gt;
&lt;br /&gt;
	local frame = mw.getCurrentFrame()&lt;br /&gt;
	-- WARNING: `content` May be nil, e.g. if we&amp;#039;re substing a template like {{ja-new}} on a not-yet-created page&lt;br /&gt;
	-- or if the module specifies the subpage as `data.pagename` (which many modules do) and we&amp;#039;re in an Appendix&lt;br /&gt;
	-- or other non-mainspace page. We used to make the latter an error but there are too many modules that do it,&lt;br /&gt;
	-- and substing on a nonexistent page is totally legit, and we don&amp;#039;t actually need to be able to access the&lt;br /&gt;
	-- content of the page.&lt;br /&gt;
	local content = raw_title:getContent()&lt;br /&gt;
	local content_lang = mw.getContentLanguage()&lt;br /&gt;
&lt;br /&gt;
	--Get the pagename.&lt;br /&gt;
	pagename = raw_title.subpageText&lt;br /&gt;
		:gsub(&amp;quot;^Unsupported titles/(.*)&amp;quot;, function(m)&lt;br /&gt;
			insert(cats, &amp;quot;Unsupported titles&amp;quot;)&lt;br /&gt;
			return unsupported_titles[m] or (m:gsub(&amp;quot;`.-`&amp;quot;, unsupported_characters))&lt;br /&gt;
		end)&lt;br /&gt;
	-- Save pagename, as local variable will be destructively modified.&lt;br /&gt;
	data.pagename = pagename&lt;br /&gt;
	-- Decompose the pagename in Unicode normalization form D.&lt;br /&gt;
	data.decompose_pagename = toNFD(pagename)&lt;br /&gt;
	-- Explode the current page name into a character table, taking decomposed combining characters into account.&lt;br /&gt;
	local explode_pagename = {}&lt;br /&gt;
	local pagename_len = 0&lt;br /&gt;
	local function explode(char)&lt;br /&gt;
		explode_pagename[char] = true&lt;br /&gt;
		pagename_len = pagename_len + 1&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	pagename = ugsub(pagename, comb_chars.combined_double, explode)&lt;br /&gt;
	pagename = ugsub(pagename, comb_chars.combined_single, explode)&lt;br /&gt;
		:gsub(&amp;quot;.[\128-\191]*&amp;quot;, explode)&lt;br /&gt;
&lt;br /&gt;
	data.explode_pagename = explode_pagename&lt;br /&gt;
	data.pagename_len = pagename_len&lt;br /&gt;
	&lt;br /&gt;
	-- Generate DEFAULTSORT.&lt;br /&gt;
	data.encoded_pagename = encode_entities(data.pagename)&lt;br /&gt;
	data.pagename_defaultsort = require(&amp;quot;Module:languages&amp;quot;).getByCode(&amp;quot;mul&amp;quot;):makeSortKey(data.encoded_pagename)&lt;br /&gt;
	frame:callParserFunction(&lt;br /&gt;
		&amp;quot;DEFAULTSORT&amp;quot;,&lt;br /&gt;
		data.pagename_defaultsort&lt;br /&gt;
	)&lt;br /&gt;
	data.raw_defaultsort = raw_title.text:uupper()&lt;br /&gt;
	&lt;br /&gt;
	-- Make `L2_list` and `L2_sections`, note raw wikitext use of {{DEFAULTSORT:}} and {{DISPLAYTITLE:}}, then add categories if any unwanted L1 headings are found, the L2 headings are in the wrong order, or they don&amp;#039;t match a canonical language name.&lt;br /&gt;
	-- Note: HTML comments shouldn&amp;#039;t be removed from `content` until after this step, as they can affect the result.&lt;br /&gt;
	do&lt;br /&gt;
		local L2_list, L2_list_len, L2_sections, sort_cache, prev = {}, 0, {}, {}&lt;br /&gt;
		local defaultsort, displaytitle, page_has_L1, L2_wrong_order, L2_nonstandard, page_has_arg&lt;br /&gt;
		&lt;br /&gt;
		local function get_weight(L2)&lt;br /&gt;
			if L2 == &amp;quot;Translingual&amp;quot; then&lt;br /&gt;
				return &amp;quot;\1&amp;quot;&lt;br /&gt;
			elseif L2 == &amp;quot;English&amp;quot; then&lt;br /&gt;
				return &amp;quot;\2&amp;quot;&lt;br /&gt;
			elseif match(L2, &amp;quot;^[%z\1-\b\14-!#-&amp;amp;(-,.-\127]+$&amp;quot;) then&lt;br /&gt;
				return L2&lt;br /&gt;
			end&lt;br /&gt;
			local weight = sort_cache[L2]&lt;br /&gt;
			if weight then&lt;br /&gt;
				return weight&lt;br /&gt;
			end&lt;br /&gt;
			weight = toNFC(ugsub(ugsub(toNFD(L2), &amp;quot;[&amp;quot; .. comb_chars_all .. &amp;quot;&amp;#039;\&amp;quot;ʻʼ]+&amp;quot;, &amp;quot;&amp;quot;), &amp;quot;[%s%-]+&amp;quot;, &amp;quot; &amp;quot;))&lt;br /&gt;
			sort_cache[L2] = weight&lt;br /&gt;
			return weight&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local function handle_heading(node)&lt;br /&gt;
			local level = node.level&lt;br /&gt;
			if level &amp;gt; 2 then&lt;br /&gt;
				return&lt;br /&gt;
			end&lt;br /&gt;
			local name = node:get_name()&lt;br /&gt;
			-- Check there are no newline characters in the heading, which might appear after preprocessing (e.g. from an expanded template). In such cases, the preprocessor section count still increments (since it&amp;#039;s calculated pre-expansion), but the heading will fail, so we shouldn&amp;#039;t increment the L2 count.&lt;br /&gt;
			if find(name, &amp;quot;\n&amp;quot;, 1, true) then&lt;br /&gt;
				return&lt;br /&gt;
			end&lt;br /&gt;
			L2_list_len = L2_list_len + 1&lt;br /&gt;
			L2_list[L2_list_len] = name&lt;br /&gt;
			L2_sections[node.section] = name&lt;br /&gt;
			-- We also add any L1s, since they terminate the preceding L2, but add a maintenance category since it&amp;#039;s probably a mistake.&lt;br /&gt;
			if level == 1 then&lt;br /&gt;
				page_has_L1 = true&lt;br /&gt;
			end&lt;br /&gt;
			-- Check the heading is in the right order.&lt;br /&gt;
			-- FIXME: we need a more sophisticated sorting method which handles non-diacritic special characters (e.g. Magɨ).&lt;br /&gt;
			if prev and not (&lt;br /&gt;
				L2_wrong_order or&lt;br /&gt;
				string_sort(get_weight(prev), get_weight(name))&lt;br /&gt;
			) then&lt;br /&gt;
				L2_wrong_order = true&lt;br /&gt;
			end&lt;br /&gt;
			-- Check it&amp;#039;s a canonical language name.&lt;br /&gt;
			if not langnames[name] then&lt;br /&gt;
				L2_nonstandard = true&lt;br /&gt;
			end&lt;br /&gt;
			prev = name&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local function handle_template(node)&lt;br /&gt;
			local name = node:get_name()&lt;br /&gt;
			if name == &amp;quot;DEFAULTSORT:&amp;quot; then&lt;br /&gt;
				defaultsort = true&lt;br /&gt;
			elseif name == &amp;quot;DISPLAYTITLE:&amp;quot; then&lt;br /&gt;
				displaytitle = true&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if content then&lt;br /&gt;
			for node in require(&amp;quot;Module:template parser&amp;quot;).parse(content):__pairs(&amp;quot;next_node&amp;quot;) do&lt;br /&gt;
				local node_type = type_or_class(node)&lt;br /&gt;
				if node_type == &amp;quot;heading&amp;quot; then&lt;br /&gt;
					handle_heading(node)&lt;br /&gt;
				elseif node_type == &amp;quot;template&amp;quot; and not (defaultsort and displaytitle) then&lt;br /&gt;
					handle_template(node)&lt;br /&gt;
				elseif node_type == &amp;quot;argument&amp;quot; then&lt;br /&gt;
					page_has_arg = true&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		L2_list.n = L2_list_len&lt;br /&gt;
		data.L2_list = L2_list&lt;br /&gt;
		data.L2_sections = L2_sections&lt;br /&gt;
		&lt;br /&gt;
		if defaultsort then&lt;br /&gt;
			insert(cats, get_category(&amp;quot;Pages with DEFAULTSORT conflicts&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
		if displaytitle then&lt;br /&gt;
			insert(cats, get_category(&amp;quot;Pages with DISPLAYTITLE conflicts&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
		if page_has_L1 then&lt;br /&gt;
			insert(cats, get_category(&amp;quot;Pages with unwanted L1 headings&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
		if L2_wrong_order then&lt;br /&gt;
			insert(cats, get_category(&amp;quot;Pages with language headings in the wrong order&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
		if L2_nonstandard then&lt;br /&gt;
			insert(cats, get_category(&amp;quot;Pages with nonstandard language headings&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
		if page_has_arg then&lt;br /&gt;
			insert(cats, get_category(&amp;quot;Pages with raw triple-brace template arguments&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	------ 4. Parse page for maintenance categories. ------&lt;br /&gt;
	-- Use of tab characters.&lt;br /&gt;
	if content and find(content, &amp;quot;\t&amp;quot;, 1, true) then&lt;br /&gt;
		insert(cats, get_category(&amp;quot;Pages with tab characters&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	-- Unencoded character(s) in title.&lt;br /&gt;
	local IDS = list_to_set{&amp;quot;⿰&amp;quot;, &amp;quot;⿱&amp;quot;, &amp;quot;⿲&amp;quot;, &amp;quot;⿳&amp;quot;, &amp;quot;⿴&amp;quot;, &amp;quot;⿵&amp;quot;, &amp;quot;⿶&amp;quot;, &amp;quot;⿷&amp;quot;, &amp;quot;⿸&amp;quot;, &amp;quot;⿹&amp;quot;, &amp;quot;⿺&amp;quot;, &amp;quot;⿻&amp;quot;, &amp;quot;⿼&amp;quot;, &amp;quot;⿽&amp;quot;, &amp;quot;⿾&amp;quot;, &amp;quot;⿿&amp;quot;, &amp;quot;㇯&amp;quot;}&lt;br /&gt;
	for char in pairs(explode_pagename) do&lt;br /&gt;
		if IDS[char] and char ~= data.pagename then&lt;br /&gt;
			insert(cats, &amp;quot;Terms containing unencoded characters&amp;quot;)&lt;br /&gt;
			break&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Raw wikitext use of a topic or langname category. Also check if any raw sortkeys have been used.&lt;br /&gt;
	do&lt;br /&gt;
		local wikitext_topic_cat = {}&lt;br /&gt;
		local wikitext_langname_cat = {}&lt;br /&gt;
		local raw_sortkey&lt;br /&gt;
		&lt;br /&gt;
		-- If a raw sortkey has been found, add it to the relevant table.&lt;br /&gt;
		-- If there&amp;#039;s no table (or the index is just `true`), create one first.&lt;br /&gt;
		local function add_cat_table(t, lang, sortkey)&lt;br /&gt;
			local t_lang = t[lang]&lt;br /&gt;
			if not sortkey then&lt;br /&gt;
				if not t_lang then&lt;br /&gt;
					t[lang] = true&lt;br /&gt;
				end&lt;br /&gt;
				return&lt;br /&gt;
			elseif t_lang == true or not t_lang then&lt;br /&gt;
				t_lang = {}&lt;br /&gt;
				t[lang] = t_lang&lt;br /&gt;
			end&lt;br /&gt;
			t_lang[uupper(decode_entities(sortkey))] = true&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local function do_iteration(name, sortkey, wikitext_langname_cat)&lt;br /&gt;
			if langnames[name] then&lt;br /&gt;
				return add_cat_table(wikitext_langname_cat, name, sortkey)&lt;br /&gt;
			end&lt;br /&gt;
			name = etym_langnames[name] and name or content_lang:lcfirst(name)&lt;br /&gt;
			if etym_langnames[name] then&lt;br /&gt;
				name = get_etym_lang(name):getFullName()&lt;br /&gt;
				return add_cat_table(wikitext_langname_cat, name, sortkey)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local function process_category(content, cat, colon, nxt)&lt;br /&gt;
			local pipe = find(cat, &amp;quot;|&amp;quot;, colon + 1, true)&lt;br /&gt;
			-- Categories cannot end &amp;quot;|]]&amp;quot;.&lt;br /&gt;
			if pipe == #cat then&lt;br /&gt;
				return&lt;br /&gt;
			end&lt;br /&gt;
			local title = new_title(pipe and sub(cat, 1, pipe - 1) or cat)&lt;br /&gt;
			if not (title and title.namespace == 14) then&lt;br /&gt;
				return&lt;br /&gt;
			end&lt;br /&gt;
			-- Get the sortkey (if any), then canonicalize category title.&lt;br /&gt;
			local sortkey = pipe and sub(cat, pipe + 1) or nil&lt;br /&gt;
			cat = title.text&lt;br /&gt;
			if sortkey then&lt;br /&gt;
				raw_sortkey = true&lt;br /&gt;
				-- If the sortkey contains &amp;quot;[&amp;quot;, the first &amp;quot;]&amp;quot; of a final &amp;quot;]]]&amp;quot; is treated as part of the sortkey.&lt;br /&gt;
				if find(sortkey, &amp;quot;[&amp;quot;, 1, true) and sub(content, nxt, nxt) == &amp;quot;]&amp;quot; then&lt;br /&gt;
					sortkey = sortkey .. &amp;quot;]&amp;quot;&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			local code = match(cat, &amp;quot;^([%w%-.]+):&amp;quot;)&lt;br /&gt;
			if code then&lt;br /&gt;
				return add_cat_table(wikitext_topic_cat, code, sortkey)&lt;br /&gt;
			end&lt;br /&gt;
			-- Split by word.&lt;br /&gt;
			cat = split(cat, &amp;quot; &amp;quot;, true, true)&lt;br /&gt;
			-- Iterate over the category name, starting with the longest possible name and shaving off the first word until we find one. We do it this way because:&lt;br /&gt;
			-- (a) Going from shortest to longest risks falsely matching (e.g.) German Low German categories as German.&lt;br /&gt;
			-- (b) Checking the start of category names first risks falsely match (e.g.) Alsatian French as Alsatian (a variety of Alemannic German), not French.&lt;br /&gt;
			-- If no matches are found, then check the start of the category name, shaving off the last word each iteration.&lt;br /&gt;
			local cat_len, n, name, done = #cat, 1&lt;br /&gt;
			repeat&lt;br /&gt;
				name = concat(cat, &amp;quot; &amp;quot;, n, cat_len)&lt;br /&gt;
				done = do_iteration(name, sortkey, wikitext_langname_cat)&lt;br /&gt;
				if done then&lt;br /&gt;
					return&lt;br /&gt;
				end&lt;br /&gt;
				n = n + 1&lt;br /&gt;
			until n &amp;gt; cat_len&lt;br /&gt;
			n = cat_len - 1&lt;br /&gt;
			if n &amp;lt;= 0 then&lt;br /&gt;
				return&lt;br /&gt;
			end&lt;br /&gt;
			repeat&lt;br /&gt;
				name = concat(cat, &amp;quot; &amp;quot;, 1, n)&lt;br /&gt;
				done = do_iteration(name, sortkey, wikitext_langname_cat)&lt;br /&gt;
				if done then&lt;br /&gt;
					return&lt;br /&gt;
				end&lt;br /&gt;
				n = n - 1&lt;br /&gt;
			until n == 0&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if content then&lt;br /&gt;
			-- Remove comments, then iterate over category links.&lt;br /&gt;
			content = remove_comments(content, &amp;quot;BOTH&amp;quot;)&lt;br /&gt;
			local head = find(content, &amp;quot;[[&amp;quot;, 1, true)&lt;br /&gt;
			while head do&lt;br /&gt;
				local close = find(content, &amp;quot;]]&amp;quot;, head + 2, true)&lt;br /&gt;
				if not close then&lt;br /&gt;
					break&lt;br /&gt;
				end&lt;br /&gt;
				-- Make sure there are no intervening &amp;quot;[[&amp;quot; between head and close.&lt;br /&gt;
				local open = find(content, &amp;quot;[[&amp;quot;, head + 2, true)&lt;br /&gt;
				while open and open &amp;lt; close do&lt;br /&gt;
					head = open&lt;br /&gt;
					open = find(content, &amp;quot;[[&amp;quot;, head + 2, true)&lt;br /&gt;
				end&lt;br /&gt;
				local cat = sub(content, head + 2, close - 1)&lt;br /&gt;
				-- Locate the colon, and weed out most unwanted links. &amp;quot;[ _\128-\244]*&amp;quot; catches valid whitespace, and ensures any category links using the colon trick are ignored. We match all non-ASCII characters, as there could be multibyte spaces, and mw.title.new will filter out any remaining false-positives; this is a lot faster than running mw.title.new on every link.&lt;br /&gt;
				local colon = match(cat, &amp;quot;^[ _\128-\244]*[Cc][Aa][Tt][EeGgOoRrYy _\128-\244]*():&amp;quot;)&lt;br /&gt;
				if colon then&lt;br /&gt;
					process_category(content, cat, colon, close + 2)&lt;br /&gt;
				end&lt;br /&gt;
				head = open&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		data.wikitext_topic_cat = wikitext_topic_cat&lt;br /&gt;
		data.wikitext_langname_cat = wikitext_langname_cat&lt;br /&gt;
		if raw_sortkey then&lt;br /&gt;
			insert(cats, get_category(&amp;quot;Pages with raw sortkeys&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return data&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
</feed>