<?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%3Alinks-Wikt</id>
	<title>Module:links-Wikt - 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%3Alinks-Wikt"/>
	<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:links-Wikt&amp;action=history"/>
	<updated>2026-04-06T10:18:08Z</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:links-Wikt&amp;diff=230893&amp;oldid=prev</id>
		<title>Sware at 20:16, 13 July 2021</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:links-Wikt&amp;diff=230893&amp;oldid=prev"/>
		<updated>2021-07-13T20:16:59Z</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 20:16, 13 July 2021&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-l12&quot;&gt;Line 12:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 12:&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;		[[Module:utilities]]&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;		[[Module:utilities]]&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;		[[Module:string]]&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;		[[Module:string]]&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;		[[Module:debug]]&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;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-l86&quot;&gt;Line 86:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 85:&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 langCode == &amp;quot;se&amp;quot; or langCode == &amp;quot;sia&amp;quot; or langCode:find(&amp;quot;^sm[ajns]$&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;	if langCode == &amp;quot;se&amp;quot; or langCode == &amp;quot;sia&amp;quot; or langCode:find(&amp;quot;^sm[ajns]$&amp;quot;)&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;			or langCode:find(&amp;quot;^sj[dektu]$&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;			or langCode:find(&amp;quot;^sj[dektu]$&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;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		if link.display and link.display:find(&quot;&#039;&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;			require(&quot;Module:debug&quot;).track(&quot;links/Sami apostrophe display&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;		elseif link.target and link.target:find(&quot;&#039;&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;			require(&quot;Module:debug&quot;).track(&quot;links/Sami apostrophe target&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;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 colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l157&quot;&gt;Line 157:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 151:&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;	if not prefixes[prefix] 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 not prefixes[prefix] 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;		if link.fragment or link.target:find(&quot;#$&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;			require(&quot;Module:debug&quot;).track {&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;				&quot;links/fragment&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;				&quot;links/fragment/&quot; .. lang:getCode()&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;			}&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;		&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;		if not link.fragment and lang:getCode() ~= &amp;quot;und&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 not link.fragment and lang:getCode() ~= &amp;quot;und&amp;quot; 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-l236&quot;&gt;Line 236:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 224:&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;		if data.alt 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 data.alt 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;			require(&quot;Module:debug&quot;).track(&quot;links/alt-ignored&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;			mw.log(&amp;quot;(from Module:links)&amp;quot;, &amp;quot;text with embedded wikilinks:&amp;quot;, text,&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;			mw.log(&amp;quot;(from Module:links)&amp;quot;, &amp;quot;text with embedded wikilinks:&amp;quot;, text,&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;				&amp;quot;ignored alt:&amp;quot;, data.alt, &amp;quot;lang:&amp;quot;, data.lang:getCode())&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;				&amp;quot;ignored alt:&amp;quot;, data.alt, &amp;quot;lang:&amp;quot;, data.lang:getCode())&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-l242&quot;&gt;Line 242:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 229:&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;		if data.id 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 data.id 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;			require(&quot;Module:debug&quot;).track(&quot;links/id-ignored&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;			mw.log(&amp;quot;(from Module:links)&amp;quot;, &amp;quot;text with embedded wikilinks:&amp;quot;, text,&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;			mw.log(&amp;quot;(from Module:links)&amp;quot;, &amp;quot;text with embedded wikilinks:&amp;quot;, text,&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;				&amp;quot;ignored id:&amp;quot;, data.id, &amp;quot;lang:&amp;quot;, data.lang:getCode())&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;				&amp;quot;ignored id:&amp;quot;, data.id, &amp;quot;lang:&amp;quot;, data.lang:getCode())&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-l251&quot;&gt;Line 251:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 237:&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;			-- There are no [ ] in between.&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;			-- There are no [ ] in between.&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;			-- This makes the wikilink tag redundant.&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;			-- This makes the wikilink tag redundant.&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 text:find(&quot;^%[%[[^%[%]]+%]%]$&quot;) then&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 &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;not &lt;/ins&gt;text:find(&quot;^%[%[[^%[%]]+%]%]$&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;				require(&quot;Module:debug&quot;).track(&quot;links/redundant wikilink&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;			else&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 temp = text:gsub(&amp;quot;^%[%[(.+)%]%]$&amp;quot;, &amp;quot;%1&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 temp = text:gsub(&amp;quot;^%[%[(.+)%]%]$&amp;quot;, &amp;quot;%1&amp;quot;)&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;				temp = temp:gsub(&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;				temp = temp:gsub(&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;				&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 temp:find(&quot;[%[%]]&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;					require(&quot;Module:debug&quot;).track(&quot;links/list&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;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-l406&quot;&gt;Line 406:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 386:&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;			-- Track uses of sc parameter&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;			-- Track uses of sc parameter&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 best = require(&amp;quot;Module:scripts&amp;quot;).findBestScript(data.alt or data.term, data.lang)&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 best = require(&amp;quot;Module:scripts&amp;quot;).findBestScript(data.alt or data.term, data.lang)&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;			require(&quot;Module:debug&quot;).track(&quot;links/sc&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;			&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 data.sc:getCode() == best:getCode() 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;				require(&quot;Module:debug&quot;).track(&quot;links/sc/redundant&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;				require(&quot;Module:debug&quot;).track(&quot;links/sc/redundant/&quot; .. data.sc:getCode())&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;			else&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;				require(&quot;Module:debug&quot;).track(&quot;links/sc/needed&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;				require(&quot;Module:debug&quot;).track(&quot;links/sc/needed/&quot; .. data.sc:getCode())&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;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 colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l440&quot;&gt;Line 440:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 411:&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;			else&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;			else&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;				accel = data.accel&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;				accel = data.accel&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;				require(&quot;Module:debug&quot;).track(&quot;links/accel not table&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;				require(&quot;Module:debug&quot;).track(&quot;links/accel not table/&quot; .. data.lang:getCode())&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;			&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;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:links-Wikt&amp;diff=133365&amp;oldid=prev</id>
		<title>Учхљёная: Учхљёная moved page Module:links to Module:links-Wikt without leaving a redirect</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:links-Wikt&amp;diff=133365&amp;oldid=prev"/>
		<updated>2018-10-27T04:23:21Z</updated>

		<summary type="html">&lt;p&gt;Учхљёная moved page &lt;a href=&quot;/wiki/Module:links&quot; title=&quot;Module:links&quot;&gt;Module:links&lt;/a&gt; to &lt;a href=&quot;/wiki/Module:links-Wikt&quot; title=&quot;Module:links-Wikt&quot;&gt;Module:links-Wikt&lt;/a&gt; without leaving a redirect&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 04:23, 27 October 2018&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>Учхљёная</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:links-Wikt&amp;diff=133364&amp;oldid=prev</id>
		<title>Учхљёная: Created page with &quot;local export = {}  --[=[ 	Unsupported titles and pages with high 	memory usage are listed at Module:links/data. 	 	Other modules used: 		Module:script utilities...&quot;</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:links-Wikt&amp;diff=133364&amp;oldid=prev"/>
		<updated>2018-10-27T04:19:52Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local export = {}  --[=[ 	&lt;a href=&quot;/w/index.php?title=Unsupported_titles&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Unsupported titles (page does not exist)&quot;&gt;Unsupported titles&lt;/a&gt; and pages with high 	memory usage are listed at &lt;a href=&quot;/wiki/Module:links/data&quot; title=&quot;Module:links/data&quot;&gt;Module:links/data&lt;/a&gt;. 	 	Other modules used: 		&lt;a href=&quot;/wiki/Module:script_utilities&quot; title=&quot;Module:script utilities&quot;&gt;Module:script utilities&lt;/a&gt;...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local export = {}&lt;br /&gt;
&lt;br /&gt;
--[=[&lt;br /&gt;
	[[Unsupported titles]] and pages with high&lt;br /&gt;
	memory usage are listed at [[Module:links/data]].&lt;br /&gt;
	&lt;br /&gt;
	Other modules used:&lt;br /&gt;
		[[Module:script utilities]]&lt;br /&gt;
		[[Module:scripts]]&lt;br /&gt;
		[[Module:languages]] and its submodules&lt;br /&gt;
		[[Module:gender and number]]&lt;br /&gt;
		[[Module:utilities]]&lt;br /&gt;
		[[Module:string]]&lt;br /&gt;
		[[Module:debug]]&lt;br /&gt;
]=]&lt;br /&gt;
&lt;br /&gt;
-- These are prefixed with u to avoid confusion with the default string methods&lt;br /&gt;
-- of the same name.&lt;br /&gt;
local usub = mw.ustring.sub&lt;br /&gt;
&lt;br /&gt;
local table_insert = table.insert&lt;br /&gt;
local table_concat = table.concat&lt;br /&gt;
&lt;br /&gt;
local ignore_cap = {&lt;br /&gt;
	[&amp;quot;ko&amp;quot;] = true,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local phonetic_extraction = {&lt;br /&gt;
	[&amp;quot;th&amp;quot;] = &amp;quot;Module:th&amp;quot;,&lt;br /&gt;
	[&amp;quot;km&amp;quot;] = &amp;quot;Module:km&amp;quot;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local pos_tags = {&lt;br /&gt;
	[&amp;quot;a&amp;quot;] = &amp;quot;adjective&amp;quot;,&lt;br /&gt;
	[&amp;quot;adv&amp;quot;] = &amp;quot;adverb&amp;quot;,&lt;br /&gt;
	[&amp;quot;int&amp;quot;] = &amp;quot;interjection&amp;quot;,&lt;br /&gt;
	[&amp;quot;n&amp;quot;] = &amp;quot;noun&amp;quot;,&lt;br /&gt;
	[&amp;quot;pron&amp;quot;] = &amp;quot;pronoun&amp;quot;,&lt;br /&gt;
	[&amp;quot;v&amp;quot;] = &amp;quot;verb&amp;quot;,&lt;br /&gt;
	[&amp;quot;vi&amp;quot;] = &amp;quot;intransitive verb&amp;quot;,&lt;br /&gt;
	[&amp;quot;vt&amp;quot;] = &amp;quot;transitive verb&amp;quot;,&lt;br /&gt;
	[&amp;quot;vti&amp;quot;] = &amp;quot;transitive and intransitive verb&amp;quot;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function export.getLinkPage(target, lang)&lt;br /&gt;
	if mw.loadData(&amp;quot;Module:links/data&amp;quot;).unsupported_titles[target] then&lt;br /&gt;
		return &amp;quot;Unsupported titles/&amp;quot; .. mw.loadData(&amp;quot;Module:links/data&amp;quot;).unsupported_titles[target]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- If the link contains unexpanded template parameters, then don&amp;#039;t create a link.&lt;br /&gt;
	if target:find(&amp;quot;{{{&amp;quot;) then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if target:sub(1, 1) == &amp;quot;:&amp;quot; or target:sub(1, 2) == &amp;quot;w:&amp;quot; or target:sub(1, 10) == &amp;quot;wikipedia:&amp;quot; then&lt;br /&gt;
		return target&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Remove diacritics from the page name&lt;br /&gt;
	target = lang:makeEntryName(target)&lt;br /&gt;
	&lt;br /&gt;
	if target:sub(1, 1) == &amp;quot;/&amp;quot; then&lt;br /&gt;
		return &amp;quot;:&amp;quot; .. target&lt;br /&gt;
	&lt;br /&gt;
	-- Link to appendix for reconstructed terms and terms in appendix-only languages&lt;br /&gt;
	elseif target:sub(1, 1) == &amp;quot;*&amp;quot; then&lt;br /&gt;
		if lang:getCode() == &amp;quot;und&amp;quot; then&lt;br /&gt;
			return nil&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		target = &amp;quot;Reconstruction:&amp;quot; .. lang:getCanonicalName() .. &amp;quot;/&amp;quot; .. usub(target, 2)&lt;br /&gt;
	elseif lang:getType() == &amp;quot;reconstructed&amp;quot; then&lt;br /&gt;
		error(&amp;quot;The specified language &amp;quot; .. lang:getCanonicalName()&lt;br /&gt;
			.. &amp;quot; is unattested, while the given word is not marked with &amp;#039;*&amp;#039; to indicate that it is reconstructed&amp;quot;)&lt;br /&gt;
	elseif lang:getType() == &amp;quot;appendix-constructed&amp;quot; then&lt;br /&gt;
		target = &amp;quot;Appendix:&amp;quot; .. lang:getCanonicalName() .. &amp;quot;/&amp;quot; .. target&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return target&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Make a language-specific link from given link&amp;#039;s parts&lt;br /&gt;
local function makeLangLink(link, lang, id, allowSelfLink)&lt;br /&gt;
	-- Temporary tracking code&lt;br /&gt;
	local langCode = lang:getCode()&lt;br /&gt;
	if langCode == &amp;quot;se&amp;quot; or langCode == &amp;quot;sia&amp;quot; or langCode:find(&amp;quot;^sm[ajns]$&amp;quot;)&lt;br /&gt;
			or langCode:find(&amp;quot;^sj[dektu]$&amp;quot;) then&lt;br /&gt;
		if link.display and link.display:find(&amp;quot;&amp;#039;&amp;quot;) then&lt;br /&gt;
			require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/Sami apostrophe display&amp;quot;)&lt;br /&gt;
		elseif link.target and link.target:find(&amp;quot;&amp;#039;&amp;quot;) then&lt;br /&gt;
			require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/Sami apostrophe target&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Find fragments (when link didn&amp;#039;t come from parseLink).&lt;br /&gt;
	-- Prevents {{l|en|word#Etymology 2|word}} from linking to [[word#Etymology 2#English]].&lt;br /&gt;
	if link.fragment == nil then&lt;br /&gt;
		-- Replace numeric character references with the corresponding character (&amp;amp;#29; → &amp;#039;),&lt;br /&gt;
		-- as they contain #, which causes the numeric character reference to be&lt;br /&gt;
		-- misparsed (wa&amp;#039;a → wa&amp;amp;#29;a → pagename wa&amp;amp;, fragment 29;a).&lt;br /&gt;
		link.target = link.target:gsub(&amp;quot;&amp;amp;#(%d+);&amp;quot;,&lt;br /&gt;
			function(number) return mw.ustring.char(tonumber(number)) end)&lt;br /&gt;
		local first, second = link.target:match(&amp;quot;^([^#]+)#(.+)$&amp;quot;)&lt;br /&gt;
		if first then&lt;br /&gt;
			link.target, link.fragment = first, second&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- If there is no display form, then create a default one&lt;br /&gt;
	if not link.display then&lt;br /&gt;
		link.display = link.target&lt;br /&gt;
		&lt;br /&gt;
		-- Strip the prefix from the displayed form&lt;br /&gt;
		-- TODO: other interwiki links?&lt;br /&gt;
		if link.display:sub(1, 1) == &amp;quot;:&amp;quot; and not mw.loadData(&amp;quot;Module:links/data&amp;quot;).unsupported_titles[link.display] then&lt;br /&gt;
			link.display = link.display:sub(2) -- remove colon from beginning&lt;br /&gt;
		else&lt;br /&gt;
			local prefix = link.display:match(&amp;quot;^([^:]+):&amp;quot;)&lt;br /&gt;
			local prefixes = {&lt;br /&gt;
				w = true,&lt;br /&gt;
				wikipedia = true,&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			if prefixes[prefix] then&lt;br /&gt;
				link.display = link.display:sub(#prefix + 2) -- remove prefix plus colon&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Process the target&lt;br /&gt;
	link.target = export.getLinkPage(link.target, lang)&lt;br /&gt;
	&lt;br /&gt;
	if not link.target then&lt;br /&gt;
		return link.display&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- If the target is the same as the current page and there is no sense id&lt;br /&gt;
	-- and linking to the same page hasn&amp;#039;t been turned on, then return a &amp;quot;self-link&amp;quot;&lt;br /&gt;
	-- like the software does.&lt;br /&gt;
	if not (allowSelfLink or id) and link.target:gsub(&amp;quot;^:&amp;quot;, &amp;quot;&amp;quot;) == mw.title.getCurrentTitle().prefixedText then&lt;br /&gt;
		return &amp;quot;&amp;lt;strong class=\&amp;quot;selflink\&amp;quot;&amp;gt;&amp;quot; .. link.display .. &amp;quot;&amp;lt;/strong&amp;gt;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--[[&lt;br /&gt;
		Add fragment&lt;br /&gt;
		Do not add a section link to &amp;quot;Undetermined&amp;quot;, as such sections do not exist and are invalid.&lt;br /&gt;
		TabbedLanguages handles links without a section by linking to the &amp;quot;last visited&amp;quot; section,&lt;br /&gt;
		but adding &amp;quot;Undetermined&amp;quot; would break that feature.&lt;br /&gt;
		For localized prefixes that make syntax error, please use the format: [&amp;quot;xyz&amp;quot;] = true,&lt;br /&gt;
	]]&lt;br /&gt;
	local prefix = link.target:match(&amp;quot;^:?([^:]+):&amp;quot;)&lt;br /&gt;
	local prefixes = {&lt;br /&gt;
		w = true,&lt;br /&gt;
		wikipedia = true,&lt;br /&gt;
		Category = true,&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	if not prefixes[prefix] then&lt;br /&gt;
		if link.fragment or link.target:find(&amp;quot;#$&amp;quot;) then&lt;br /&gt;
			require(&amp;quot;Module:debug&amp;quot;).track {&lt;br /&gt;
				&amp;quot;links/fragment&amp;quot;,&lt;br /&gt;
				&amp;quot;links/fragment/&amp;quot; .. lang:getCode()&lt;br /&gt;
			}&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if not link.fragment and lang:getCode() ~= &amp;quot;und&amp;quot; then&lt;br /&gt;
			if id then&lt;br /&gt;
				link.fragment = require(&amp;quot;Module:utilities&amp;quot;).make_id(lang, id)&lt;br /&gt;
			elseif not mw.ustring.find(link.target, &amp;quot;^Appendix:&amp;quot;)&lt;br /&gt;
					and not mw.ustring.find(link.target, &amp;quot;^Reconstruction:&amp;quot;) then&lt;br /&gt;
				link.fragment = lang:getCanonicalName()&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- This allows linking to pages like [[sms:a]] without it being treated weirdly.&lt;br /&gt;
		link.target = link.target:gsub(&amp;quot;:&amp;quot;, &amp;quot;&amp;amp;#x3a;&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return &amp;quot;[[&amp;quot; .. link.target .. (link.fragment and &amp;quot;#&amp;quot; .. link.fragment or &amp;quot;&amp;quot;) .. &amp;quot;|&amp;quot; .. link.display .. &amp;quot;]]&amp;quot;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-- Split a link into its parts&lt;br /&gt;
local function parseLink(linktext)&lt;br /&gt;
	local link = { target = linktext }&lt;br /&gt;
	local first, second = link.target:match(&amp;quot;^([^|]+)|(.+)$&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	if first then&lt;br /&gt;
		link.target = first&lt;br /&gt;
		link.display = second&lt;br /&gt;
	else&lt;br /&gt;
		link.display = link.target&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	first, second = link.target:match(&amp;quot;^(.+)#(.+)$&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	if first then&lt;br /&gt;
		link.target = first&lt;br /&gt;
		link.fragment = second&lt;br /&gt;
	else&lt;br /&gt;
		-- So that makeLangLink does not look for a fragment again&lt;br /&gt;
		link.fragment = false&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return link&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-- Creates a basic wikilink to the given term. If the text already contains&lt;br /&gt;
-- links, these are replaced with links to the correct section.&lt;br /&gt;
function export.language_link(data, allowSelfLink, dontLinkRecons)&lt;br /&gt;
	if type(data) ~= &amp;quot;table&amp;quot; then&lt;br /&gt;
		error(&amp;quot;The first argument to the function language_link must be a table. See Module:links/documentation for more information.&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local text = data.term&lt;br /&gt;
	&lt;br /&gt;
	if ignore_cap[data.lang:getCode()] and text then&lt;br /&gt;
		text = text:gsub(&amp;quot;%^&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- If the text begins with * and another character,&lt;br /&gt;
	-- then act as if each link begins with *&lt;br /&gt;
	local allReconstructed = false&lt;br /&gt;
	&lt;br /&gt;
	if text:find(&amp;quot;^*.&amp;quot;) then&lt;br /&gt;
		allReconstructed = true&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Do we have embedded wikilinks?&lt;br /&gt;
	if text:find(&amp;quot;[[&amp;quot;, nil, true) then&lt;br /&gt;
		--[=[&lt;br /&gt;
		[[Special:WhatLinksHere/Template:tracking/links/alt-ignored]]&lt;br /&gt;
		[[Special:WhatLinksHere/Template:tracking/links/id-ignored]]&lt;br /&gt;
		]=]&lt;br /&gt;
		&lt;br /&gt;
		if data.alt then&lt;br /&gt;
			require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/alt-ignored&amp;quot;)&lt;br /&gt;
			mw.log(&amp;quot;(from Module:links)&amp;quot;, &amp;quot;text with embedded wikilinks:&amp;quot;, text,&lt;br /&gt;
				&amp;quot;ignored alt:&amp;quot;, data.alt, &amp;quot;lang:&amp;quot;, data.lang:getCode())&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if data.id then&lt;br /&gt;
			require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/id-ignored&amp;quot;)&lt;br /&gt;
			mw.log(&amp;quot;(from Module:links)&amp;quot;, &amp;quot;text with embedded wikilinks:&amp;quot;, text,&lt;br /&gt;
				&amp;quot;ignored id:&amp;quot;, data.id, &amp;quot;lang:&amp;quot;, data.lang:getCode())&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- Begins and ends with a wikilink tag&lt;br /&gt;
		if text:find(&amp;quot;^%[%[(.+)%]%]$&amp;quot;) then&lt;br /&gt;
			-- There are no [ ] in between.&lt;br /&gt;
			-- This makes the wikilink tag redundant.&lt;br /&gt;
			if text:find(&amp;quot;^%[%[[^%[%]]+%]%]$&amp;quot;) then&lt;br /&gt;
				require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/redundant wikilink&amp;quot;)&lt;br /&gt;
			else&lt;br /&gt;
				local temp = text:gsub(&amp;quot;^%[%[(.+)%]%]$&amp;quot;, &amp;quot;%1&amp;quot;)&lt;br /&gt;
				temp = temp:gsub(&amp;quot;%]%], %[%[&amp;quot;, &amp;quot;|&amp;quot;)&lt;br /&gt;
				&lt;br /&gt;
				if not temp:find(&amp;quot;[%[%]]&amp;quot;) then&lt;br /&gt;
					require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/list&amp;quot;)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		text = text:gsub(&amp;quot;%[%[([^%]]+)%]%]&amp;quot;,&lt;br /&gt;
			function(linktext)&lt;br /&gt;
				local link = parseLink(linktext)&lt;br /&gt;
				&lt;br /&gt;
				if allReconstructed then&lt;br /&gt;
					link.target = &amp;quot;*&amp;quot; .. link.target&lt;br /&gt;
				end&lt;br /&gt;
				&lt;br /&gt;
				return makeLangLink(link, data.lang, data.id, allowSelfLink, dontLinkRecons)&lt;br /&gt;
			end)&lt;br /&gt;
		&lt;br /&gt;
		-- Remove the extra * at the beginning if it&amp;#039;s immediately followed&lt;br /&gt;
		-- by a link whose display begins with * too&lt;br /&gt;
		if allReconstructed then&lt;br /&gt;
			text = text:gsub(&amp;quot;^%*%[%[([^|%]]+)|%*&amp;quot;, &amp;quot;[[%1|*&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		-- There is no embedded wikilink, make a link using the parameters.&lt;br /&gt;
		text = makeLangLink({ target = text, display = data.alt }, data.lang, data.id, allowSelfLink, dontLinkRecons)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return text&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.mark(text, itemType, face, lang)&lt;br /&gt;
	local tag = { &amp;quot;&amp;quot;, &amp;quot;&amp;quot; }&lt;br /&gt;
	&lt;br /&gt;
	if itemType == &amp;quot;gloss&amp;quot; then&lt;br /&gt;
		tag = { &amp;#039;&amp;lt;span class=&amp;quot;mention-gloss-double-quote&amp;quot;&amp;gt;“&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;mention-gloss&amp;quot;&amp;gt;&amp;#039;,&lt;br /&gt;
			&amp;#039;&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;mention-gloss-double-quote&amp;quot;&amp;gt;”&amp;lt;/span&amp;gt;&amp;#039; }&lt;br /&gt;
	elseif itemType == &amp;quot;tr&amp;quot; then&lt;br /&gt;
		if face == &amp;quot;term&amp;quot; then&lt;br /&gt;
			tag = { &amp;#039;&amp;lt;span lang=&amp;quot;&amp;#039; .. lang:getCode() .. &amp;#039;&amp;quot; class=&amp;quot;tr mention-tr Latn&amp;quot;&amp;gt;&amp;#039;,&lt;br /&gt;
				&amp;#039;&amp;lt;/span&amp;gt;&amp;#039; }&lt;br /&gt;
		else&lt;br /&gt;
			tag = { &amp;#039;&amp;lt;span lang=&amp;quot;&amp;#039; .. lang:getCode() .. &amp;#039;&amp;quot; class=&amp;quot;tr Latn&amp;quot;&amp;gt;&amp;#039;, &amp;#039;&amp;lt;/span&amp;gt;&amp;#039; }&lt;br /&gt;
		end&lt;br /&gt;
	elseif itemType == &amp;quot;ts&amp;quot; then&lt;br /&gt;
		tag = { &amp;#039;&amp;lt;span class=&amp;quot;ts mention-ts Latn&amp;quot;&amp;gt;/&amp;#039;, &amp;#039;/&amp;lt;/span&amp;gt;&amp;#039; }&lt;br /&gt;
	elseif itemType == &amp;quot;annotations&amp;quot; then&lt;br /&gt;
		tag = { &amp;#039;&amp;lt;span class=&amp;quot;mention-gloss-paren annotation-paren&amp;quot;&amp;gt;(&amp;lt;/span&amp;gt;&amp;#039;,&lt;br /&gt;
			&amp;#039;&amp;lt;span class=&amp;quot;mention-gloss-paren annotation-paren&amp;quot;&amp;gt;)&amp;lt;/span&amp;gt;&amp;#039; }&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if type(text) == &amp;quot;string&amp;quot; then&lt;br /&gt;
		return tag[1] .. text .. tag[2]&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Format the annotations (things following the linked term)&lt;br /&gt;
function export.format_link_annotations(data, face)&lt;br /&gt;
	local output = {}&lt;br /&gt;
	&lt;br /&gt;
	-- Interwiki link&lt;br /&gt;
	if data.interwiki then&lt;br /&gt;
		table_insert(output, data.interwiki)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Genders&lt;br /&gt;
	if type(data.genders) ~= &amp;quot;table&amp;quot; then&lt;br /&gt;
		data.genders = { data.genders }&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if data.genders and #data.genders &amp;gt; 0 then&lt;br /&gt;
		local m_gen = require(&amp;quot;Module:gender and number&amp;quot;)&lt;br /&gt;
		table_insert(output, &amp;quot;&amp;amp;nbsp;&amp;quot; .. m_gen.format_list(data.genders, data.lang))&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local annotations = {}&lt;br /&gt;
	&lt;br /&gt;
	-- Transliteration and transcription&lt;br /&gt;
	if data.tr or data.ts then&lt;br /&gt;
		local kind&lt;br /&gt;
		if face == &amp;quot;term&amp;quot; then&lt;br /&gt;
			kind = face&lt;br /&gt;
		else&lt;br /&gt;
			kind = &amp;quot;default&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if data.tr and data.ts then&lt;br /&gt;
			table_insert(annotations,&lt;br /&gt;
				require(&amp;quot;Module:script utilities&amp;quot;).tag_translit(data.tr, data.lang, kind)&lt;br /&gt;
				.. &amp;quot; &amp;quot; .. export.mark(data.ts, &amp;quot;ts&amp;quot;))&lt;br /&gt;
		elseif data.ts then&lt;br /&gt;
			table_insert(annotations, export.mark(data.ts, &amp;quot;ts&amp;quot;))&lt;br /&gt;
		else&lt;br /&gt;
			table_insert(annotations,&lt;br /&gt;
				require(&amp;quot;Module:script utilities&amp;quot;).tag_translit(data.tr, data.lang, kind))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Gloss/translation&lt;br /&gt;
	if data.gloss then&lt;br /&gt;
		table_insert(annotations, export.mark(data.gloss, &amp;quot;gloss&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Part of speech&lt;br /&gt;
	if data.pos then&lt;br /&gt;
		-- debug category for pos= containing transcriptions&lt;br /&gt;
		if data.pos:find(&amp;quot;/[^&amp;gt;&amp;lt;]*/&amp;quot;) then&lt;br /&gt;
			data.pos = data.pos .. &amp;quot;[[Category:links likely containing transcriptions in pos]]&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		table_insert(annotations, pos_tags[data.pos] or data.pos)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Literal/sum-of-parts meaning&lt;br /&gt;
	if data.lit then&lt;br /&gt;
		table_insert(annotations, &amp;quot;literally &amp;quot; .. export.mark(data.lit, &amp;quot;gloss&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if #annotations &amp;gt; 0 then&lt;br /&gt;
		table_insert(output, &amp;quot; &amp;quot; .. export.mark(table_concat(annotations, &amp;quot;, &amp;quot;), &amp;quot;annotations&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return table_concat(output)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- A version of {{l}} or {{m}} that can be called from other modules too&lt;br /&gt;
function export.full_link(data, face, allowSelfLink, dontLinkRecons)&lt;br /&gt;
	if type(data) ~= &amp;quot;table&amp;quot; then&lt;br /&gt;
		error(&amp;quot;The first argument to the function full_link must be a table. &amp;quot;&lt;br /&gt;
			.. &amp;quot;See Module:links/documentation for more information.&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Create the link&lt;br /&gt;
	local output = {}&lt;br /&gt;
	local categories = {}&lt;br /&gt;
	local link = &amp;quot;&amp;quot;&lt;br /&gt;
	local annotations&lt;br /&gt;
	&lt;br /&gt;
	--local m_utilities = require(&amp;quot;Module:utilities&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	-- Is there any text to show?&lt;br /&gt;
	if (data.term or data.alt) then&lt;br /&gt;
		-- Try to detect the script if it was not provided&lt;br /&gt;
		if not data.sc then&lt;br /&gt;
			data.sc = require(&amp;quot;Module:scripts&amp;quot;).findBestScript(data.alt or data.term, data.lang)&lt;br /&gt;
		else&lt;br /&gt;
			-- Track uses of sc parameter&lt;br /&gt;
			local best = require(&amp;quot;Module:scripts&amp;quot;).findBestScript(data.alt or data.term, data.lang)&lt;br /&gt;
			require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/sc&amp;quot;)&lt;br /&gt;
			&lt;br /&gt;
			if data.sc:getCode() == best:getCode() then&lt;br /&gt;
				require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/sc/redundant&amp;quot;)&lt;br /&gt;
				require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/sc/redundant/&amp;quot; .. data.sc:getCode())&lt;br /&gt;
			else&lt;br /&gt;
				require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/sc/needed&amp;quot;)&lt;br /&gt;
				require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/sc/needed/&amp;quot; .. data.sc:getCode())&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local class = &amp;quot;&amp;quot;&lt;br /&gt;
		&lt;br /&gt;
		if data.accel then&lt;br /&gt;
			local accel&lt;br /&gt;
			if type(data.accel) == &amp;quot;table&amp;quot; then&lt;br /&gt;
				local form, gender, translit, lemma, lemma_translit, no_store&lt;br /&gt;
				form = data.accel.form and data.accel.form .. &amp;quot;-form-of&amp;quot; or &amp;quot;&amp;quot;&lt;br /&gt;
				gender = data.accel.gender and &amp;quot;gender-&amp;quot; .. data.accel.gender or &amp;quot;&amp;quot;&lt;br /&gt;
				translit = data.accel.translit and &amp;quot;transliteration-&amp;quot; .. data.accel.translit or &amp;quot;&amp;quot;&lt;br /&gt;
				-- This is decoded again by [[WT:ACCEL]].&lt;br /&gt;
				lemma = data.accel.lemma and &amp;quot;origin-&amp;quot; .. data.accel.lemma:gsub(&amp;quot;%%&amp;quot;, &amp;quot;.&amp;quot;):gsub(&amp;quot; &amp;quot;, &amp;quot;_&amp;quot;) or &amp;quot;&amp;quot; &lt;br /&gt;
				lemma_translit = data.accel.lemma_translit and &amp;quot;origin-transliteration-&amp;quot; .. data.accel.lemma_translit or &amp;quot;&amp;quot;&lt;br /&gt;
				no_store = data.accel.no_store and &amp;quot;form-of-nostore&amp;quot; or &amp;quot;&amp;quot;&lt;br /&gt;
				&lt;br /&gt;
				accel =&lt;br /&gt;
					form .. &amp;quot; &amp;quot; ..&lt;br /&gt;
					gender .. &amp;quot; &amp;quot; ..&lt;br /&gt;
					translit .. &amp;quot; &amp;quot; ..&lt;br /&gt;
					lemma .. &amp;quot; &amp;quot; ..&lt;br /&gt;
					lemma_translit .. &amp;quot; &amp;quot; ..&lt;br /&gt;
					no_store .. &amp;quot; &amp;quot;&lt;br /&gt;
			else&lt;br /&gt;
				accel = data.accel&lt;br /&gt;
				require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/accel not table&amp;quot;)&lt;br /&gt;
				require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;links/accel not table/&amp;quot; .. data.lang:getCode())&lt;br /&gt;
			end&lt;br /&gt;
			&lt;br /&gt;
			class = &amp;quot;form-of lang-&amp;quot; .. data.lang:getCode() .. &amp;quot; &amp;quot; .. accel&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- Only make a link if the term has been given, otherwise just show the alt text without a link&lt;br /&gt;
		link = require(&amp;quot;Module:script utilities&amp;quot;).tag_text(&lt;br /&gt;
			data.term and export.language_link(data, allowSelfLink, dontLinkRecons)&lt;br /&gt;
			or data.alt, data.lang, data.sc, face, class)&lt;br /&gt;
	else&lt;br /&gt;
		--[[	No term to show.&lt;br /&gt;
				Is there at least a transliteration we can work from?	]]&lt;br /&gt;
		link = require(&amp;quot;Module:script utilities&amp;quot;).request_script(data.lang, data.sc)&lt;br /&gt;
		&lt;br /&gt;
		if link == &amp;quot;&amp;quot; or not data.tr or data.tr == &amp;quot;-&amp;quot; then&lt;br /&gt;
			-- No link to show, and no transliteration either. Show a term request.&lt;br /&gt;
			local category = &amp;quot;&amp;quot;&lt;br /&gt;
			&lt;br /&gt;
			if mw.title.getCurrentTitle().nsText ~= &amp;quot;Template&amp;quot; then&lt;br /&gt;
				table_insert(categories, &amp;quot;[[Category:&amp;quot; .. data.lang:getCanonicalName() .. &amp;quot; term requests]]&amp;quot;)&lt;br /&gt;
			end&lt;br /&gt;
			&lt;br /&gt;
			link = &amp;quot;&amp;lt;small&amp;gt;[Term?]&amp;lt;/small&amp;gt;&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	table_insert(output, link)&lt;br /&gt;
	&lt;br /&gt;
	if data.tr == &amp;quot;&amp;quot; or data.tr == &amp;quot;-&amp;quot; then&lt;br /&gt;
		data.tr = nil&lt;br /&gt;
	&lt;br /&gt;
	elseif phonetic_extraction[data.lang:getCode()] then&lt;br /&gt;
		local m_phonetic = require(phonetic_extraction[data.lang:getCode()])&lt;br /&gt;
		data.tr = data.tr or m_phonetic.getTranslit(export.remove_links(data.term))&lt;br /&gt;
	&lt;br /&gt;
	elseif (data.term or data.alt) and not data.sc:getCode():find(&amp;quot;Lati?n&amp;quot;) then&lt;br /&gt;
		&lt;br /&gt;
		-- Try to generate a transliteration, unless transliteration has been&lt;br /&gt;
		-- supplied and we are in a high-memory entry.&lt;br /&gt;
		if not (data.tr and mw.loadData(&amp;quot;Module:links/data&amp;quot;).high_memory_entries[mw.title.getCurrentTitle().text]) then&lt;br /&gt;
			local automated_tr = data.lang:transliterate(export.remove_links(data.alt or data.term), data.sc)&lt;br /&gt;
			&lt;br /&gt;
			if automated_tr then&lt;br /&gt;
				local manual_tr = data.tr&lt;br /&gt;
				&lt;br /&gt;
				if manual_tr then&lt;br /&gt;
					if manual_tr == automated_tr then&lt;br /&gt;
						table_insert(categories,&lt;br /&gt;
							&amp;quot;[[Category:Terms with redundant transliterations]]&amp;quot;&lt;br /&gt;
									.. &amp;quot;[[Category:Terms with redundant transliterations/&amp;quot; .. data.lang:getCode() .. &amp;quot;]]&amp;quot;)&lt;br /&gt;
					else&lt;br /&gt;
						-- Prevents Arabic root categories from flooding the tracking categories.&lt;br /&gt;
						if mw.title.getCurrentTitle().nsText ~= &amp;quot;Category&amp;quot; then&lt;br /&gt;
							table_insert(categories,&lt;br /&gt;
								&amp;quot;[[Category:Terms with manual transliterations different from the automated ones]]&amp;quot;&lt;br /&gt;
										.. &amp;quot;[[Category:Terms with manual transliterations different from the automated ones/&amp;quot; .. data.lang:getCode() .. &amp;quot;]]&amp;quot;)&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				&lt;br /&gt;
				if (not manual_tr) or data.lang:overrideManualTranslit() then&lt;br /&gt;
					data.tr = automated_tr&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Link to the transliteration entry for languages that require this&lt;br /&gt;
	if data.tr and data.lang:link_tr() then&lt;br /&gt;
		data.tr = export.language_link { lang = data.lang, term = data.tr }&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	table_insert(output, export.format_link_annotations(data, face))&lt;br /&gt;
	&lt;br /&gt;
	return table_concat(output) .. table_concat(categories)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[	Strips links: deletes category links,&lt;br /&gt;
		the targets of piped links,&lt;br /&gt;
		and all double square brackets.			]]&lt;br /&gt;
function export.remove_links(text)&lt;br /&gt;
	if type(text) == &amp;quot;table&amp;quot; then&lt;br /&gt;
		text = text.args[1]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if not text or text == &amp;quot;&amp;quot; then&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	text = mw.ustring.gsub(text, &amp;quot;%[%[Category:[^|%]]-|?[^|%]]-%]%]&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	text = text:gsub(&amp;quot;%[%[[^|%]]-|&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	text = text:gsub(&amp;quot;%[%[&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	text = text:gsub(&amp;quot;%]%]&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	return text&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.english_links(text)&lt;br /&gt;
	local lang = require(&amp;quot;Module:languages&amp;quot;).getByCode(&amp;quot;en&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	-- Parentheses around function call to remove second return value, the&lt;br /&gt;
	-- number of replacements.&lt;br /&gt;
	return (text:gsub(&amp;quot;%[%[([^%]]+)%]%]&amp;quot;,&lt;br /&gt;
		function(linktext)&lt;br /&gt;
			local link = parseLink(linktext)&lt;br /&gt;
			return makeLangLink(link, lang, nil, true, false)&lt;br /&gt;
		end))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.light_link(data)&lt;br /&gt;
	local language_names = mw.loadData(&amp;quot;Module:languages/code to canonical name&amp;quot;)&lt;br /&gt;
	local script_codes = mw.loadData(&amp;quot;Module:scripts/codes&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	if data.langCode then&lt;br /&gt;
		data.langName = language_names[data.langCode] or error(&amp;#039;The language code &amp;quot;&amp;#039; .. data.langCode .. &amp;#039;&amp;quot; is not recognized.&amp;#039;)&lt;br /&gt;
	else&lt;br /&gt;
		error(&amp;#039;Language code is required.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if not data.term then&lt;br /&gt;
		error(&amp;#039;Term to link to is required.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if data.scCode then&lt;br /&gt;
		if not script_codes[data.scCode] then&lt;br /&gt;
			error(&amp;#039;The script code &amp;quot;&amp;#039; .. data.sc .. &amp;#039;&amp;quot; is not recognized.&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		error(&amp;quot;The function light_link requires a script code.&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local fragment&lt;br /&gt;
	if data.id then&lt;br /&gt;
		fragment = data.langName .. &amp;quot;-&amp;quot; .. mw.uri.encode(data.id, &amp;quot;WIKI&amp;quot;)&lt;br /&gt;
	else&lt;br /&gt;
		fragment = data.langName&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return table_concat {&lt;br /&gt;
		&amp;#039;&amp;lt;span class=&amp;quot;&amp;#039;, data.scCode, &amp;#039;&amp;quot; lang=&amp;quot;&amp;#039;, data.langCode,&lt;br /&gt;
		&amp;#039;&amp;quot;&amp;gt;[[&amp;#039;, data.term, &amp;quot;#&amp;quot;, fragment, &amp;quot;|&amp;quot;, (data.alt or data.term), &amp;quot;]]&amp;lt;/span&amp;gt;&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[=[&lt;br /&gt;
	For example, Norwegian_Bokm.C3.A5l → Norwegian_Bokmål. 0xC3 and 0xA5 are the&lt;br /&gt;
	hexadecimal-base representation of the two bytes used to encode the character&lt;br /&gt;
	å in the UTF-8 encoding:&lt;br /&gt;
		11000011 10100101&lt;br /&gt;
	&lt;br /&gt;
	Note that the bytes used to represent a character are actually different from&lt;br /&gt;
	the Unicode codepoint. For å, the codepoint is 0xE5. The bits (digits) that&lt;br /&gt;
	actually spell the codepoint are found in the brackets: 110[00011] 10[100101].&lt;br /&gt;
	For further explanation, see [[w:UTF-8#Description]].&lt;br /&gt;
]=]&lt;br /&gt;
&lt;br /&gt;
-- The character class %x should not be used, as it includes the characters a-f,&lt;br /&gt;
-- which do not occur in these anchor encodings.&lt;br /&gt;
local capitalHex = &amp;quot;[0-9A-F]&amp;quot;&lt;br /&gt;
&lt;br /&gt;
local function decodeAnchor(anchor)&lt;br /&gt;
	return (anchor:gsub(&amp;quot;%.(&amp;quot; .. capitalHex .. capitalHex .. &amp;quot;)&amp;quot;,&lt;br /&gt;
		function(hexByte)&lt;br /&gt;
			return string.char(tonumber(hexByte, 16))&lt;br /&gt;
		end))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.section_link(link)&lt;br /&gt;
	if type(link) ~= &amp;quot;string&amp;quot; then&lt;br /&gt;
		error(&amp;quot;The first argument to section_link was a &amp;quot; .. type(link) .. &amp;quot;, but it should be a string.&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	link = link:gsub(&amp;quot;_&amp;quot;, &amp;quot; &amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	local numberSigns = require(&amp;quot;Module:string&amp;quot;).count(link, &amp;quot;#&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	if numberSigns &amp;gt; 1 then&lt;br /&gt;
		error(&amp;quot;The section link should only contain one number sign (#).&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local page, section = link:match(&amp;quot;^([^#]+)#(.+)$&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	if page and section then&lt;br /&gt;
		section = decodeAnchor(section)&lt;br /&gt;
		&lt;br /&gt;
		-- URI-encode (percent-encode) section to allow square brackets, [],&lt;br /&gt;
		-- in section name. If not percent-encoded, they prevent the parser from&lt;br /&gt;
		-- recognizing the link.&lt;br /&gt;
		return table_concat { &amp;quot;[[&amp;quot;, page, &amp;quot;#&amp;quot;, mw.uri.encode(section, &amp;quot;WIKI&amp;quot;), &amp;quot;|&amp;quot;, page, &amp;quot; § &amp;quot;, section, &amp;quot;]]&amp;quot; }&lt;br /&gt;
	else&lt;br /&gt;
		error(&amp;#039;The function &amp;quot;&amp;#039; .. section_link .. &amp;#039;&amp;quot; could not find a number sign marking a section name.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>Учхљёная</name></author>
	</entry>
</feed>