<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://nssportwiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Astograth</id>
	<title>NationStates Sports Wiki - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://nssportwiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Astograth"/>
	<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Special:Contributions/Astograth"/>
	<updated>2026-05-16T21:04:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://nssportwiki.com/index.php?title=User:Astograth&amp;diff=65810</id>
		<title>User:Astograth</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=User:Astograth&amp;diff=65810"/>
		<updated>2024-08-16T22:01:18Z</updated>

		<summary type="html">&lt;p&gt;Astograth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The user behind [[Astograth]].&lt;br /&gt;
&lt;br /&gt;
{{Infobox military conflict&lt;br /&gt;
| conflict          = Reunification of Astograth&lt;br /&gt;
| partof            = &lt;br /&gt;
| image             = [[File:RumiatziUnificationTank.png|300px]]&lt;br /&gt;
| image_size        = &lt;br /&gt;
| caption           = A tank of the Rumiatzi 1st Cuirassiers advancing in the vicinity of Maniarrieta, May 597&lt;br /&gt;
| date              = 5 January 593&amp;amp;nbsp;– 18 March 611&amp;lt;br/&amp;gt;(18 years, 2 months and 14 days)&lt;br /&gt;
| place             = [[Astograth]]&lt;br /&gt;
| result            = Rumiatzi victory&lt;br /&gt;
* Annexation by Rumiatzi of all states in the League of Astograth&lt;br /&gt;
* Proclamation of the Grand Duchy of Astograth&lt;br /&gt;
| combatant1        = {{flagicon|Rumiatzi}} Duchy of Rumiatzi&amp;lt;br/&amp;gt;Duchy of Bizkarra&amp;lt;br/&amp;gt;Duchy of Lermendia&amp;lt;br/&amp;gt;Duchy of Urana&amp;lt;br/&amp;gt;{{flagicon|Echegoyan}} Duchy of the Blue Mountains (597–611)&lt;br /&gt;
| combatant1a        = &#039;&#039;&#039;Supported by:&#039;&#039;&#039;&amp;lt;br/&amp;gt;Aitorist partisans&amp;lt;br/&amp;gt;[[Mytanija|Mytanar]] crown forces&amp;lt;br/&amp;gt;Iturributan loyalists (608–611)&lt;br /&gt;
| combatant2        = &#039;&#039;&#039;League of Astograth (593–608)&#039;&#039;&#039;:&amp;lt;br/&amp;gt;{{flagicon|Iturributa}} Duchy of Iturributa (593–608)&amp;lt;br/&amp;gt;{{flagicon|Ituraitz}} Republic of Ituraitz{{flagicon|Basabe}} Duchy of the Anzar&amp;lt;br/&amp;gt;{{flagicon|Echegoyan}} Duchy of the Blue Mountains (593–597)&amp;lt;br/&amp;gt;Duchy of Arexa&amp;lt;br/&amp;gt;Duchy of Antiguoko&amp;lt;br/&amp;gt;Duchy of Gesterlake&amp;lt;br/&amp;gt;Duchy of Arkamo&amp;lt;br/&amp;gt;Duchy of Letzama&amp;lt;br/&amp;gt;Duchy of Sagastia&amp;lt;br/&amp;gt;Duchy of Yungoitio&lt;br /&gt;
----&lt;br /&gt;
{{flagicon|Iturributa}} Republic of Iturributa (608–611)&lt;br /&gt;
| combatant2a        = &#039;&#039;&#039;Supported by:&#039;&#039;&#039;&amp;lt;br/&amp;gt;[[Mytanija|Mytanar]] republicans&lt;br /&gt;
| commander1        = {{flagicon|Rumiatzi}} Aitor VII&amp;lt;br&amp;gt;&lt;br /&gt;
| commander2        = &lt;br /&gt;
| strength1         = &lt;br /&gt;
| strength2         = &lt;br /&gt;
| casualties1       = &lt;br /&gt;
| casualties2       = &lt;br /&gt;
| casualties3       = &lt;br /&gt;
| campaignbox       = &lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=User:Astograth&amp;diff=65809</id>
		<title>User:Astograth</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=User:Astograth&amp;diff=65809"/>
		<updated>2024-08-16T21:56:34Z</updated>

		<summary type="html">&lt;p&gt;Astograth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The user behind [[Astograth]].&lt;br /&gt;
&lt;br /&gt;
{{Infobox military conflict&lt;br /&gt;
| conflict          = Reunification of Astograth&lt;br /&gt;
| partof            = &lt;br /&gt;
| image             = [[File:RumiatziUnificationTank.png|300px]]&lt;br /&gt;
| image_size        = &lt;br /&gt;
| caption           = A tank of the Rumiatzi 1st Cuirassiers advancing in the vicinity of Maniarrieta, May 597&lt;br /&gt;
| date              = 5 January 593&amp;amp;nbsp;– 18 March 611&amp;lt;br/&amp;gt;(18 years, 2 months and 14 days)&lt;br /&gt;
| place             = [[Astograth]]&lt;br /&gt;
| result            = Rumiatzi victory&lt;br /&gt;
* Annexation by Rumiatzi of all states in the League of Astograth&lt;br /&gt;
* Proclamation of the Grand Duchy of Astograth&lt;br /&gt;
| combatant1        = {{flagicon|Rumiatzi}} Duchy of Rumiatzi&amp;lt;br/&amp;gt;Duchy of Bizkarra&amp;lt;br/&amp;gt;Duchy of Lermendia&amp;lt;br/&amp;gt;Duchy of Urana&amp;lt;br/&amp;gt;{{flagicon|Echegoyan}} Duchy of the Blue Mountains (597–611)&lt;br /&gt;
&#039;&#039;&#039;Supported by:&#039;&#039;&#039;&amp;lt;br/&amp;gt;Aitorist partisans&amp;lt;br/&amp;gt;[[Mytanija|Mytanar]] crown forces&amp;lt;br/&amp;gt;Iturributan loyalists (608–611)&lt;br /&gt;
| combatant2        = &#039;&#039;&#039;League of Astograth (593–608)&#039;&#039;&#039;:&amp;lt;br/&amp;gt;{{flagicon|Iturributa}} Duchy of Iturributa (593–608)&amp;lt;br/&amp;gt;{{flagicon|Ituraitz}} Republic of Ituraitz{{flagicon|Basabe}} Duchy of the Anzar&amp;lt;br/&amp;gt;{{flagicon|Echegoyan}} Duchy of the Blue Mountains (593–597)&amp;lt;br/&amp;gt;Duchy of Arexa&amp;lt;br/&amp;gt;Duchy of Antiguoko&amp;lt;br/&amp;gt;Duchy of Gesterlake&amp;lt;br/&amp;gt;Duchy of Arkamo&amp;lt;br/&amp;gt;Duchy of Letzama&amp;lt;br/&amp;gt;Duchy of Sagastia&amp;lt;br/&amp;gt;Duchy of Yungoitio&amp;lt;br/&amp;gt;&#039;&#039;&#039;Supported by:&#039;&#039;&#039;&amp;lt;br/&amp;gt;[[Mytanija|Mytanar]] republicans&lt;br /&gt;
----&lt;br /&gt;
{{flagicon|Iturributa}} Republic of Iturributa (608–611)&lt;br /&gt;
| commander1        = {{flagicon|Rumiatzi}} Aitor VII&amp;lt;br&amp;gt;&lt;br /&gt;
| commander2        = &lt;br /&gt;
| strength1         = &lt;br /&gt;
| strength2         = &lt;br /&gt;
| casualties1       = &lt;br /&gt;
| casualties2       = &lt;br /&gt;
| casualties3       = &lt;br /&gt;
| campaignbox       = &lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=User:Astograth&amp;diff=65808</id>
		<title>User:Astograth</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=User:Astograth&amp;diff=65808"/>
		<updated>2024-08-16T21:46:18Z</updated>

		<summary type="html">&lt;p&gt;Astograth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The user behind [[Astograth]].&lt;br /&gt;
&lt;br /&gt;
{{Infobox military conflict&lt;br /&gt;
| conflict          = Reunification of Astograth&lt;br /&gt;
| partof            = &lt;br /&gt;
| image             = [[File:RumiatziUnificationTank.png|300px]]&lt;br /&gt;
| image_size        = &lt;br /&gt;
| caption           = A tank of the Rumiatzi 1st Cuirassiers advancing in the vicinity of Maniarrieta, May 597&lt;br /&gt;
| date              = 5 January 593&amp;amp;nbsp;– 18 March 611&amp;lt;br/&amp;gt;(18 years, 2 months and 14 days)&lt;br /&gt;
| place             = [[Astograth]]&lt;br /&gt;
| result            = Rumiatzi victory&lt;br /&gt;
* Annexation by Rumiatzi of all states in the League of Astograth&lt;br /&gt;
* Proclamation of the Grand Duchy of Astograth&lt;br /&gt;
| combatant1        = {{flagicon|Rumiatzi}} Duchy of Rumiatzi&amp;lt;br/&amp;gt;Duchy of Bizkarra&amp;lt;br/&amp;gt;Duchy of Lermendia&amp;lt;br/&amp;gt;Duchy of Urana&amp;lt;br/&amp;gt;{{flagicon|Echegoyan}} Duchy of the Blue Mountains (597–611)&lt;br /&gt;
&#039;&#039;&#039;Supported by:&#039;&#039;&#039;&amp;lt;br/&amp;gt;Aitorist partisans&amp;lt;br/&amp;gt;Iturributan loyalists (608–611)&lt;br /&gt;
| combatant2        = &lt;br /&gt;
{{plainlist|&lt;br /&gt;
*&#039;&#039;&#039;League of Astograth (593–608)&#039;&#039;&#039;:&lt;br /&gt;
**{{flagicon|Iturributa}} Duchy of Iturributa (593–608)&lt;br /&gt;
**{{flagicon|Ituraitz}} Republic of Ituraitz&lt;br /&gt;
**{{flagicon|Basabe}} Duchy of the Anzar&lt;br /&gt;
**{{flagicon|Echegoyan}} Duchy of the Blue Mountains (593–597)&lt;br /&gt;
**Duchy of Arexa&lt;br /&gt;
**Duchy of Antiguoko&lt;br /&gt;
**Duchy of Gesterlake&lt;br /&gt;
**Duchy of Arkamo&lt;br /&gt;
**Duchy of Letzama&lt;br /&gt;
**Duchy of Sagastia&lt;br /&gt;
**Duchy of Yungoitio}}&lt;br /&gt;
----&lt;br /&gt;
{{flagicon|Iturributa}} Republic of Iturributa (608–611)&lt;br /&gt;
| commander1        = {{flagicon|Rumiatzi}} Aitor VII&amp;lt;br&amp;gt;&lt;br /&gt;
| commander2        = &lt;br /&gt;
| strength1         = &lt;br /&gt;
| strength2         = &lt;br /&gt;
| casualties1       = &lt;br /&gt;
| casualties2       = &lt;br /&gt;
| casualties3       = &lt;br /&gt;
| campaignbox       = &lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=File:RumiatziUnificationTank.png&amp;diff=65807</id>
		<title>File:RumiatziUnificationTank.png</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=File:RumiatziUnificationTank.png&amp;diff=65807"/>
		<updated>2024-08-16T20:46:56Z</updated>

		<summary type="html">&lt;p&gt;Astograth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Flag_icon/core&amp;diff=65806</id>
		<title>Template:Flag icon/core</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Flag_icon/core&amp;diff=65806"/>
		<updated>2024-08-16T20:33:32Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span class=&amp;quot;flagicon&amp;quot;&amp;gt;[[File:{{{flag alias-{{{variant}}}|{{safesubst&amp;lt;noinclude /&amp;gt;:#if:{{{flag alias|}}}|{{{flag alias}}}|Flag placeholder.svg}}}}}|{{safesubst&amp;lt;noinclude /&amp;gt;:#if:{{{size|}}}|{{{size}}}|{{{size flag alias-{{{variant}}}|{{safesubst&amp;lt;noinclude /&amp;gt;:#if:{{{variant|}}}|23x15px|{{{size flag alias|23x15px}}}}}}}}}}|{{{border-{{{variant}}}|{{{border|border}}}}}} |alt={{{alias}}}|link={{{alias}}}]]&amp;lt;/span&amp;gt;&amp;lt;noinclude&amp;gt;{{documentation}}&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Died_of_wounds&amp;diff=65804</id>
		<title>Template:Died of wounds</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Died_of_wounds&amp;diff=65804"/>
		<updated>2024-08-16T20:33:32Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;amp;nbsp;([[Killed in action|{{abbr|DOW|Died of wounds}}]])&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Add categories and interwikis to the /doc subpage, not here! --&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:UF-hcal-geo&amp;diff=65802</id>
		<title>Template:UF-hcal-geo</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:UF-hcal-geo&amp;diff=65802"/>
		<updated>2024-08-16T20:33:32Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The HTML markup produced by this template includes an [[hCalendar|hCalendar microformat]], which makes the event details [[parsing|parsable]] by computers, either acting automatically to catalogue article across Wikipedia, or via a browser tool operated by a person, to (for example) add the subject to a calendar or diary application. Within the hCalendar is a [[Geo (microformat)|Geo microformat]], which additionally makes the [[geographic coordinate system|coordinates]] (latitude &amp;amp; longitude) parsable, so that they can be, say, looked up on a map, or downloaded to a [[Global Positioning System|GPS]] unit. For more information about the use of [[microformat]]s on Wikipedia, please see [[Wikipedia:WikiProject Microformats|the microformat project]].&lt;br /&gt;
&lt;br /&gt;
Dates will only be included if you use {{tl|Start date}} or {{tl|End date}} (use the former for single dates, [[Wikipedia:WikiProject Microformats/dates|but do not use any of these if the date is before 1583 CE]]). {{tl|End date}} requires that a time be specified, but display of this time may be suppressed by adding {{para|nodate|yes}} to the end.&lt;br /&gt;
&lt;br /&gt;
To include a URL, use {{tl|URL}}.&lt;br /&gt;
&lt;br /&gt;
hCalendar uses HTML classes including:&lt;br /&gt;
&lt;br /&gt;
{{Flatlist|indent=1|&lt;br /&gt;
*attendee&lt;br /&gt;
*dtend&lt;br /&gt;
*dtstart&lt;br /&gt;
*location&lt;br /&gt;
*summary&lt;br /&gt;
*url&lt;br /&gt;
*vevent&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Geo is produced by calling {{tl|coord}}, and uses HTML classes:&lt;br /&gt;
&lt;br /&gt;
{{Flatlist|indent=1|&lt;br /&gt;
*geo&lt;br /&gt;
*latitude&lt;br /&gt;
*longitude&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Please do not rename or remove these classes nor collapse nested elements which use them.&#039;&#039;&#039;&amp;lt;br/&amp;gt;Also, when giving coordinates, please don&#039;t be [[wikipedia:WikiProject Geographical coordinates#Precision|overly precise]].&lt;br /&gt;
&amp;lt;includeonly&amp;gt;{{#ifeq:{{SUBPAGENAME}}|doc | |{{#ifeq:{{SUBPAGENAME}}|sandbox | |[[Category:Templates generating hCalendars and Geo|{{PAGENAME}}]]}} }}&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Microformat (uF) message templates]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Operational_plan/doc&amp;diff=65800</id>
		<title>Template:Operational plan/doc</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Operational_plan/doc&amp;diff=65800"/>
		<updated>2024-08-16T20:33:32Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Template:Infobox military operation/doc]]&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Infobox_military_operation/doc&amp;diff=65798</id>
		<title>Template:Infobox military operation/doc</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Infobox_military_operation/doc&amp;diff=65798"/>
		<updated>2024-08-16T20:33:32Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#ifeq:{{{noheader|}}}|yes||{{Documentation subpage}}&lt;br /&gt;
{{Lua|Module:Infobox|Module:InfoboxImage|Module:Check for unknown parameters}}&lt;br /&gt;
}}&lt;br /&gt;
This infobox may be used to describe a particular planned or executed military operation or attack.  For operations that resulted in combat, it can be used as an auxiliary template to the {{tl|infobox military conflict}}, if necessary; for other types of operations, including those that were planned but never executed, it may be used alone.  In the case of conflicts that consisted of multiple independent operations, multiple copies of the box may be used on a single article.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
{{Parameter names example|_template = Infobox military operation |title |name |partof |conflict |image |image_size |image_upright |alt |caption |coordinates = {{coord|0|0}} |map_type=Earth |map_size= |map_label |map_caption |scope |type |location |coordinates |planned |planned_by |commanded_by |target |objective |date |time |time-begin |time-end |timezone |executed_by |outcome |casualties |fatalities |injuries}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;wikitext&amp;quot; style=&amp;quot;overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{{Infobox military operation&lt;br /&gt;
 |name          = &lt;br /&gt;
 |partof        = &lt;br /&gt;
 |subtitle      = &lt;br /&gt;
 |image         = &lt;br /&gt;
 |image_upright = &lt;br /&gt;
 |alt           = &lt;br /&gt;
 |caption       = &lt;br /&gt;
 |scope         = &lt;br /&gt;
 |type          = &lt;br /&gt;
 |location      = &lt;br /&gt;
 |location2     = &amp;lt;!-- 2 through 10 for more locations --&amp;gt;&lt;br /&gt;
 |coordinates   = &lt;br /&gt;
 |coordinates2  = &amp;lt;!-- 2 through 10 for more locations --&amp;gt;&lt;br /&gt;
 |map_type      = &lt;br /&gt;
 |map_size      = &lt;br /&gt;
 |map_caption   = &lt;br /&gt;
 |map_label     = &lt;br /&gt;
 |map_label2    = &amp;lt;!-- 2 through 10 for more locations --&amp;gt;&lt;br /&gt;
 |planned       = &lt;br /&gt;
 |planned_by    = &lt;br /&gt;
 |commanded_by  = &lt;br /&gt;
 |objective     = &lt;br /&gt;
 |target        = &lt;br /&gt;
 |date          = &amp;lt;!-- {{start date|YYYY|MM|DD|df=y}} --&amp;gt; &lt;br /&gt;
 |time          = &lt;br /&gt;
 |time-begin    = &lt;br /&gt;
 |time-end      = &lt;br /&gt;
 |timezone      = &lt;br /&gt;
 |executed_by   = &lt;br /&gt;
 |outcome       = &lt;br /&gt;
 |casualties    = &lt;br /&gt;
 |fatalities    = &lt;br /&gt;
 |injuries      = &lt;br /&gt;
}}&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
{{Infobox military operation&lt;br /&gt;
 |name        = Case Blue&lt;br /&gt;
 |scope       = Strategic offensive&lt;br /&gt;
 |planned_by  = &#039;&#039;[[Wehrmacht]]&#039;&#039;&lt;br /&gt;
 |objective   = Capture of [[Caucasus]] oil fields&lt;br /&gt;
 |executed    = Began {{start date|1942|06|28|df=y}}&lt;br /&gt;
 |executed_by = [[Army Group South]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;wikitext&amp;quot; style=&amp;quot;overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
{{Infobox military operation&lt;br /&gt;
 |name        = Case Blue&lt;br /&gt;
 |scope       = Strategic offensive&lt;br /&gt;
 |planned_by  = &#039;&#039;[[Wehrmacht]]&#039;&#039;&lt;br /&gt;
 |objective   = Capture of [[Caucasus]] oil fields&lt;br /&gt;
 |executed    = Began {{start date|1942|06|28|df=y}}&lt;br /&gt;
 |executed_by = [[Army Group South]]&lt;br /&gt;
}}&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: When using parameters, avoid the ambiguous abbreviation &amp;quot;N/A&amp;quot;, and instead use &amp;quot;unknown&amp;quot; or &amp;quot;none&amp;quot;. All subjective or qualitative judgements and numerical quantities or statistics must be cited to a reliable source (see [[WP:MILMOS#CITE]]).&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;name&#039;&#039;&#039; – the name of the operational plan; names in multiple languages may be provided. &lt;br /&gt;
* &#039;&#039;&#039;subtitle&#039;&#039;&#039; – alternative name of the conflict being described.&lt;br /&gt;
* &#039;&#039;&#039;partof&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the larger conflict containing the event described in the article.&lt;br /&gt;
* &#039;&#039;&#039;image&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – an image for the warbox.  Given in the form &amp;lt;code&amp;gt;File:Example.jpg&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;image_upright&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – image upright scaling factor.&lt;br /&gt;
* &#039;&#039;&#039;alt&#039;&#039;&#039;  – &#039;&#039;optional&#039;&#039; – [[Wikipedia:Manual of Style/Accessibility/Alternative text for images|Alternative text for image]] that is accessible to [[screen reader]]s to help the [[visually impaired]]&lt;br /&gt;
* &#039;&#039;&#039;caption&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the text to be placed below the image.&lt;br /&gt;
* &#039;&#039;&#039;location&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the location of the operation.&lt;br /&gt;
* &#039;&#039;&#039;coordinates&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the coordinates for the location above, given as {{tl|coord}} with &#039;&#039;|display=inline,title&#039;&#039;. Used to display the geographic location of the conflict and the location on a map added with the &amp;lt;code&amp;gt;map_type&amp;lt;/code&amp;gt; parameter. If coordinates for several locations are given, consider if hany shall have the title display.&lt;br /&gt;
* &#039;&#039;&#039;map_type&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; the base map to be used for the location map, e.g. &amp;quot;Scotland&amp;quot;; see {{tl|location map}} for more details.&lt;br /&gt;
* &#039;&#039;&#039;map_size&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; width of the location map in pixels (px), e.g. &amp;quot;150&amp;quot;; defaults to: &amp;quot;220&amp;quot;.  &lt;br /&gt;
* &#039;&#039;&#039;map_caption&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; caption displayed below the location map; defaults to &amp;quot;Location within {{{map_type}}}&amp;quot;, e.g. &amp;quot;Location within Scotland&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;map_label&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; the label placed next to the marker on the location map.&lt;br /&gt;
* &#039;&#039;&#039;scope&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the scope of the operation, such as &amp;quot;Strategic&amp;quot;, &amp;quot;Operational&amp;quot;, or &amp;quot;Tactical&amp;quot;. &lt;br /&gt;
* &#039;&#039;&#039;type&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – as an alternative to the &#039;&#039;&#039;scope&#039;&#039;&#039; field above, the type of operation, such as &amp;quot;Suicide attack&amp;quot; or &amp;quot;Ambush&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;planned&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the date(s) on which the plan was developed. &lt;br /&gt;
* &#039;&#039;&#039;planned_by&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the person or group responsible for developing the plan. &lt;br /&gt;
* &#039;&#039;&#039;commanded_by&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the person commanding the operation. &lt;br /&gt;
* &#039;&#039;&#039;objective&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the objective(s) of the operation. &lt;br /&gt;
* &#039;&#039;&#039;target&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – as an alternative to the &#039;&#039;&#039;objective&#039;&#039;&#039; field above, the target(s) of the operation. &lt;br /&gt;
* &#039;&#039;&#039;date&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the date(s), if any, on which the operation was executed. use {{Tl|Start date}} (and {{Tl|End date}} if required) &lt;br /&gt;
* &#039;&#039;&#039;time&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the time, if any, at which the operation was executed.&lt;br /&gt;
* &#039;&#039;&#039;time-begin&#039;&#039;&#039; and &#039;&#039;&#039;time-end&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – as an alternative to the &#039;&#039;&#039;time&#039;&#039;&#039; field above, the start and end times, respectively.&lt;br /&gt;
* &#039;&#039;&#039;timezone&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the timezone of the location of the operation; [[UTC]]+X, [[UTC]]-X, or [[UTC]] (i.e. offset from [[UTC]]) is preferred.&lt;br /&gt;
* &#039;&#039;&#039;executed_by&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the people, groups, units, or formations responsible for executing the operation.&lt;br /&gt;
* &#039;&#039;&#039;outcome&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the outcome of the operation from the perspective of the planners with a very brief summary of defence if appropriate.&lt;br /&gt;
* &#039;&#039;&#039;casualties&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – any casualties occurring during the execution of the operation.&lt;br /&gt;
* &#039;&#039;&#039;fatalities&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – as an alternative to the &#039;&#039;&#039;casualties&#039;&#039;&#039; field above, the number of fatalities occurring during the execution of the operation.&lt;br /&gt;
* &#039;&#039;&#039;injuries&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – as an alternative to the &#039;&#039;&#039;casualties&#039;&#039;&#039; field above, the number of injuries occurring during the execution of the operation.&lt;br /&gt;
&lt;br /&gt;
=== Microformat ===&lt;br /&gt;
{{UF-hcal}}&lt;br /&gt;
&lt;br /&gt;
=== TemplateData ===&lt;br /&gt;
{{collapse top|title=[[Wikipedia:TemplateData|TemplateData]] for this template used by [[mw:Extension:TemplateWizard|TemplateWizard]], [[Wikipedia:VisualEditor|VisualEditor]] and other tools}}&lt;br /&gt;
{{TemplateData header|noheader=y}}&lt;br /&gt;
&amp;lt;templatedata&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;description&amp;quot;: &amp;quot;This infobox may be used to describe a particular planned or executed military operation or attack.&amp;quot;,&lt;br /&gt;
	&amp;quot;format&amp;quot;: &amp;quot;{{_\n| _____________ = _\n}}\n&amp;quot;,&lt;br /&gt;
	&amp;quot;params&amp;quot;: {&lt;br /&gt;
		&amp;quot;name&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Name&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The name of the military operation&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;suggested&amp;quot;: true&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	&amp;quot;paramOrder&amp;quot;: [&lt;br /&gt;
		&amp;quot;name&amp;quot;&lt;br /&gt;
	]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/templatedata&amp;gt;&lt;br /&gt;
{{collapse bottom}}&lt;br /&gt;
&lt;br /&gt;
=== See also ===&lt;br /&gt;
* {{tl|Infobox civil conflict}}&lt;br /&gt;
* {{tl|Infobox civilian attack}}&lt;br /&gt;
* {{tl|Infobox military conflict}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:WikiProject Military history template instructions|Military operation]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;includeonly&amp;gt;&lt;br /&gt;
{{Sandbox other||{{#ifeq:{{{noheader|}}}|yes||&lt;br /&gt;
&amp;lt;!-- Categories below this line; interwikis at Wikidata --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Templates with coordinates fields]]&lt;br /&gt;
[[Category:Military auxiliary infobox templates|Military operation]]&lt;br /&gt;
[[Category:Templates that add a tracking category|{{PAGENAME}}]]&lt;br /&gt;
}}}}&amp;lt;/includeonly&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Infobox_military_conflict/doc&amp;diff=65796</id>
		<title>Template:Infobox military conflict/doc</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Infobox_military_conflict/doc&amp;diff=65796"/>
		<updated>2024-08-16T20:33:31Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{pp|small=yes}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{Documentation subpage}}&lt;br /&gt;
{{High-use|16,100}}&lt;br /&gt;
{{Lua|Module:Infobox military conflict}}&lt;br /&gt;
__TOC__&lt;br /&gt;
==Usage==&lt;br /&gt;
{{Infobox military conflict&lt;br /&gt;
| conflict    = Battle of Lützen&lt;br /&gt;
| partof      = the [[Thirty Years&#039; War]]&lt;br /&gt;
| image       = Battle of Lutzen.jpg&lt;br /&gt;
| alt         = Battle of Lutzen by Carl Whalbom depicting King Gustavus Aolphus falling from a horse mortally wounded in a melee&lt;br /&gt;
| image_size  = 300px&lt;br /&gt;
| caption     = The &#039;&#039; &#039;&#039;&#039;Battle of Lützen&#039;&#039;&#039; &#039;&#039; by [[Carl Wahlbom]] shows the death of King [[Gustavus Adolphus]] on 16 November 1632.&lt;br /&gt;
| date        = 6 November ([[Old Style and New Style dates|O.S.]]) or 16 November ([[Old Style and New Style dates|N.S.]]), 1632&lt;br /&gt;
| place       = Near [[Lützen]], southwest of [[Leipzig]]&amp;lt;br /&amp;gt;(present-day [[Germany]])&lt;br /&gt;
| coordinates = {{coord|51|15|N|12|08|E|region:DE_type:city}}&lt;br /&gt;
| result      = Protestant victory &amp;lt;br /&amp;gt;(see {{blue|Aftermath}} section)&lt;br /&gt;
| combatant1  = {{flagicon|Sweden|1562}} [[Swedish Empire|Sweden]]&amp;lt;br /&amp;gt;[[Protestant Union]]&lt;br /&gt;
| combatant2  = {{flag|Holy Roman Empire}}&amp;lt;br/&amp;gt;{{flagicon image|Catholic League (Germany).svg}} [[Catholic League (German)|Catholic League]]&lt;br /&gt;
| commander1  = {{flagicon|Sweden|1562}} [[Gustavus Adolphus]]{{KIA}}&amp;lt;br/&amp;gt;{{flagicon|Sweden|1562}} [[Dodo zu Innhausen und Knyphausen|Dodo von Knyphausen]]&amp;lt;br/&amp;gt;{{Flagicon|Electorate of Saxony}} [[Bernhard of Saxe-Weimar]]&amp;lt;br/&amp;gt;{{flagicon|Sweden|1562}} [[Robert Munro, 18th Baron of Foulis]]&lt;br /&gt;
| commander2  = {{flagicon|Holy Roman Empire}} [[Albrecht von Wallenstein]]&amp;lt;br/&amp;gt;{{flagicon|Holy Roman Empire}} [[Heinrich Holk]]&amp;lt;br/&amp;gt;{{flagicon|Holy Roman Empire}} [[Gottfried zu Pappenheim|Count Gottfried zu Pappenheim]]{{DOW}}&lt;br /&gt;
| strength1   = 12,800 infantry&amp;lt;br /&amp;gt;6,200 cavalry&amp;lt;br /&amp;gt;60 guns&lt;br /&gt;
| strength2   = 10,000 infantry&amp;lt;br /&amp;gt;7,000 cavalry, plus 3,000 infantry and 2,000 cavalry on arrival&amp;lt;br /&amp;gt;24 guns&lt;br /&gt;
| casualties1 = 3,400 dead and 1,600 wounded or missing&lt;br /&gt;
| casualties2 = Probably about the same as Swedish casualties{{fakeref|1}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A military conflict infobox (sometimes referred to as a warbox) may be used to summarize information about a particular military conflict (a battle, campaign, war, or group of related wars) in a standard manner.&lt;br /&gt;
&lt;br /&gt;
Information summarized in an infobox should follow the general guidance for writing a [[Wikipedia:Manual of Style/Lead section|lead section]]. It should not &amp;quot;make claims&amp;quot; or present material not covered by the article. As with a lead section, there is some discretion in citing information in an infobox. The same guidance should be applied to an infobox as given for [[Wikipedia:Manual of Style/Lead section#Citations|citations in a lead section]]. Information in an infobox must conform with [[Wikipedia:Verifiability|verifiability]], [[Wikipedia:Neutral point of view|point-of-view]] and other policies.&lt;br /&gt;
&lt;br /&gt;
Information in the infobox should not be &amp;quot;controversial&amp;quot;. Refer the reader to an appropriate section in the article or leave the parameter blank rather than make an unsubstantiated or doubtful claim.&lt;br /&gt;
&lt;br /&gt;
The infobox should be added using the {{tl|infobox military conflict}} template, as shown below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:250px;background:#dddddd;border: 1px solid black;padding:0.5em 1em 0.5em 1em&amp;quot;&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;wikitext&amp;quot;&amp;gt;&lt;br /&gt;
{{Infobox military conflict&lt;br /&gt;
| conflict    = &lt;br /&gt;
| width       = &lt;br /&gt;
| partof      = &lt;br /&gt;
| image       = &lt;br /&gt;
| image_size  =&lt;br /&gt;
| alt         =&lt;br /&gt;
| caption     = &lt;br /&gt;
| date        = &lt;br /&gt;
| place       = &lt;br /&gt;
| coordinates = &amp;lt;!--Use the {{coord}} template --&amp;gt;&lt;br /&gt;
| map_type    = &lt;br /&gt;
| map_relief  = &lt;br /&gt;
| map_size    = &lt;br /&gt;
| map_marksize = &lt;br /&gt;
| map_caption = &lt;br /&gt;
| map_label   = &lt;br /&gt;
| territory   = &lt;br /&gt;
| result      = &lt;br /&gt;
| status      = &lt;br /&gt;
| combatants_header = &lt;br /&gt;
| combatant1  = &lt;br /&gt;
| combatant2  = &lt;br /&gt;
| combatant3  = &lt;br /&gt;
| commander1  = &lt;br /&gt;
| commander2  = &lt;br /&gt;
| commander3  = &lt;br /&gt;
| units1      = &lt;br /&gt;
| units2      = &lt;br /&gt;
| units3      = &lt;br /&gt;
| strength1   = &lt;br /&gt;
| strength2   = &lt;br /&gt;
| strength3   = &lt;br /&gt;
| casualties1 = &lt;br /&gt;
| casualties2 = &lt;br /&gt;
| casualties3 = &lt;br /&gt;
| notes       = &lt;br /&gt;
| campaignbox = &lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: When using parameters, avoid the ambiguous abbreviation &amp;quot;N/A&amp;quot;, and instead use &amp;quot;unknown&amp;quot; or &amp;quot;none&amp;quot;. All subjective or qualitative judgements and numerical quantities or statistics must be cited to a reliable source (see [[WP:MILMOS#CITE]]).&lt;br /&gt;
&lt;br /&gt;
===Parameters===&lt;br /&gt;
* &#039;&#039;&#039;conflict&#039;&#039;&#039; – the name of the conflict being described (e.g. &amp;quot;Battle of Lützen&amp;quot; or &amp;quot;World War I&amp;quot;).&lt;br /&gt;
* &#039;&#039;&#039;width&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the width of the infobox, e.g. &amp;quot;400px&amp;quot;; defaults to: &amp;quot;315px&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;partof&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the larger conflict containing the event described in the article. For battles or campaigns, this should be the war during which the event takes place; for particularly large wars, this may include a theatre (e.g. &amp;quot;the Eastern Front of World War II&amp;quot;). For wars, the parameter may be used to link to a larger group of wars (e.g. the [[Italian War of 1521–26]] to the [[Italian Wars]]). It may be necessary to insert &amp;quot;the&amp;quot; before the name of the war for proper grammar.&lt;br /&gt;
* &#039;&#039;&#039;image&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – an image for the warbox. Given in the form &amp;lt;code&amp;gt;Example.jpg&amp;lt;/code&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;image_size&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – a size for the image&lt;br /&gt;
* &#039;&#039;&#039;alt&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – [[Wikipedia:Manual of Style/Accessibility/Alternative text for images|Alternative text for image]] that is accessible to [[screen reader]]s to help the [[visually impaired]]&lt;br /&gt;
* &#039;&#039;&#039;caption&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the text to be placed below the image.&lt;br /&gt;
* &#039;&#039;&#039;date&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the date of the conflict described. Convention is to give the actual date for battles and the years for wars, but this does not always apply.&lt;br /&gt;
* &#039;&#039;&#039;place&#039;&#039;&#039; – the location of the conflict. For conflicts covering a wide area, a general description (e.g. &amp;quot;France&amp;quot;, or &amp;quot;Europe&amp;quot;, or &amp;quot;Worldwide&amp;quot;) may be used.&lt;br /&gt;
* &#039;&#039;&#039;coordinates&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; the location of the structure, given as a coordinate pair by using {{tl|coord}} with &#039;&#039;display=inline,title&#039;&#039;. Used to display the geographic location of the conflict and the location on a map added with the &amp;lt;code&amp;gt;map_type&amp;lt;/code&amp;gt; parameter.&lt;br /&gt;
* &#039;&#039;&#039;map_type&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; the base map to be used for the location map, e.g. &amp;quot;Scotland&amp;quot;; see {{tl|location map}} for more details.&lt;br /&gt;
* &#039;&#039;&#039;map_relief&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; &amp;quot;yes&amp;quot; if the location map is a relief map; see {{tl|location map}} for more details.&lt;br /&gt;
* &#039;&#039;&#039;map_size&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; width of the location map in pixels (px), e.g. &amp;quot;150&amp;quot;; defaults to: &amp;quot;220&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;map_mark&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; the name of a file to use as the location map marker, e.g. Green_pog.svg; defaults to: &amp;quot;Red_pog.svg&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;map_marksize&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; width of the location map marker in pixels (px), e.g. &amp;quot;10&amp;quot;; defaults to: &amp;quot;8&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;map_caption&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; caption displayed below the location map; defaults to &amp;quot;Location within {{{map_type}}}&amp;quot;, e.g. &amp;quot;Location within Scotland&amp;quot;.&lt;br /&gt;
* &#039;&#039;&#039;map_label&#039;&#039;&#039; &amp;amp;ndash; &#039;&#039;optional&#039;&#039; &amp;amp;ndash; the label placed next to the marker on the location map.&lt;br /&gt;
* &#039;&#039;&#039;territory&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – any changes in territorial control as a result of the conflict; this should not be used for overly lengthy descriptions of the peace settlement.&lt;br /&gt;
* &#039;&#039;&#039;action&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – In case of Coup d&#039;État, short description of &#039;&#039;modus operandi&#039;&#039;, e.g. &amp;quot;...marched over the city...&amp;quot;, &amp;quot;...dissolving the Congress of the Republic...&amp;quot;, &amp;quot;...take the government hostage ...&amp;quot;, &amp;quot;...put the country under military control ...&amp;quot;, etc.&lt;br /&gt;
*{{anchor|result}} &#039;&#039;&#039;result&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – this parameter may use one of two standard terms: &amp;quot;X victory&amp;quot; or &amp;quot;Inconclusive&amp;quot;. The term used is for the &amp;quot;immediate&amp;quot; outcome of the &amp;quot;subject&amp;quot; conflict and should reflect what the sources say. In cases where the standard terms do not accurately describe the outcome, a link or note should be made to the section of the article where the result is discussed in detail (such as &amp;quot;See the {{blue|Aftermath}} section&amp;quot;). Such a note can also be used in conjunction with the standard terms but should not be used to conceal an ambiguity in the &amp;quot;immediate&amp;quot; result. Do not introduce non-standard terms like &amp;quot;decisive&amp;quot;, &amp;quot;marginal&amp;quot; or &amp;quot;tactical&amp;quot;, or contradictory statements like &amp;quot;decisive tactical victory but strategic defeat&amp;quot;. Omit this parameter altogether rather than engage in [[WP:NOR|speculation]] about which side won or by how much.&lt;br /&gt;
* &#039;&#039;&#039;status&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – for ongoing conflicts, the current status of the conflict. This should not be used if a final result (above) is provided.&lt;br /&gt;
* &#039;&#039;&#039;combatants_header&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – sets the header text for the combatants section. Default is &amp;quot;Belligerents&amp;quot;. In case of Coup d&#039;État, use &amp;quot;Government-Insurgents&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;quot;&lt;br /&gt;
* &#039;&#039;&#039;combatant1&#039;&#039;&#039;/&#039;&#039;&#039;combatant2&#039;&#039;&#039;/&#039;&#039;&#039;combatant3&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the parties participating in the conflict. This is most commonly the countries whose forces took part in the conflict; however, larger groups (such as alliances or international organizations) or smaller ones (such as particular units, formations, or groups) may be indicated if doing so improves reader understanding. When there is a large number of participants, it may be better to list only the three or four major groups on each side of the conflict, and to describe the rest in the body of the article. The &#039;&#039;&#039;combatant3&#039;&#039;&#039; field may be used if a conflict has three distinct &amp;quot;sides&amp;quot;, and should be left blank on other articles. Combatants should be listed in order of importance to the conflict, be it in terms of military contribution, political clout, or a recognized chain of command. If differing metrics can support alternative lists, then ordering is left to the editors of the particular article. The practice of writing in a &amp;quot;Supported by&amp;quot; subheading is deprecated (see [[Template talk:Infobox military conflict#RfC on &amp;quot;supported by&amp;quot; being used with the belligerent parameter|discussion]]).&lt;br /&gt;
** &#039;&#039;&#039;combatant1a&#039;&#039;&#039;/&#039;&#039;&#039;combatant2a&#039;&#039;&#039;/&#039;&#039;&#039;combatant3a&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – in cases where the parties significantly changed over the course of the conflict, these subsidiary fields may be used to provide additional rows for the &#039;&#039;&#039;combatant&#039;&#039;N&#039;&#039;&#039;&#039;&#039; fields (above).&lt;br /&gt;
** &#039;&#039;&#039;combatant1b&#039;&#039;&#039;/&#039;&#039;&#039;combatant2b&#039;&#039;&#039;/&#039;&#039;&#039;combatant3b&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
** &#039;&#039;&#039;combatant1c&#039;&#039;&#039;/&#039;&#039;&#039;combatant2c&#039;&#039;&#039;/&#039;&#039;&#039;combatant3c&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
** &#039;&#039;&#039;combatant1d&#039;&#039;&#039;/&#039;&#039;&#039;combatant2d&#039;&#039;&#039;/&#039;&#039;&#039;combatant3d&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
** &#039;&#039;&#039;combatant1e&#039;&#039;&#039;/&#039;&#039;&#039;combatant2e&#039;&#039;&#039;/&#039;&#039;&#039;combatant3e&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
* &#039;&#039;&#039;commander1&#039;&#039;&#039;/&#039;&#039;&#039;commander2&#039;&#039;&#039;/&#039;&#039;&#039;commander3&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the commanders of the military forces involved. For battles, this should include military commanders (and other officers as necessary). For wars, only prominent or notable leaders should be listed, with an upper limit of about seven per combatant column recommended. Ranks and position titles should be omitted. The {{tl|KIA}} and {{tl|POW}} templates may be included immediately after the names of commanders who were killed in action or surrendered and were taken prisoner, respectively. The &#039;&#039;&#039;commander3&#039;&#039;&#039; field can only be used if the &#039;&#039;&#039;combatant3&#039;&#039;&#039; field is set.&lt;br /&gt;
** &#039;&#039;&#039;commander1a&#039;&#039;&#039;/&#039;&#039;&#039;commander2a&#039;&#039;&#039;/&#039;&#039;&#039;commander3a&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – in cases where the commanders significantly changed over the course of the conflict, these subsidiary fields may be used to provide additional rows for the &#039;&#039;&#039;commander&#039;&#039;N&#039;&#039;&#039;&#039;&#039; fields (above).&lt;br /&gt;
** &#039;&#039;&#039;commander1b&#039;&#039;&#039;/&#039;&#039;&#039;commander2b&#039;&#039;&#039;/&#039;&#039;&#039;commander3b&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
** &#039;&#039;&#039;commander1c&#039;&#039;&#039;/&#039;&#039;&#039;commander2c&#039;&#039;&#039;/&#039;&#039;&#039;commander3c&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
** &#039;&#039;&#039;commander1d&#039;&#039;&#039;/&#039;&#039;&#039;commander2d&#039;&#039;&#039;/&#039;&#039;&#039;commander3d&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
** &#039;&#039;&#039;commander1e&#039;&#039;&#039;/&#039;&#039;&#039;commander2e&#039;&#039;&#039;/&#039;&#039;&#039;commander3e&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – additional row, as above.&lt;br /&gt;
* &#039;&#039;&#039;units1&#039;&#039;&#039;/&#039;&#039;&#039;units2&#039;&#039;&#039;/&#039;&#039;&#039;units3&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the units or formations involved. If a large number of distinct formations is present, it may be better to reference an order of battle in the body of the article than to include the entire list in this field. The &#039;&#039;&#039;units3&#039;&#039;&#039; field can only be used if the &#039;&#039;&#039;combatant3&#039;&#039;&#039; field is set.&lt;br /&gt;
* &#039;&#039;&#039;strength1&#039;&#039;&#039;/&#039;&#039;&#039;strength2&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – the numerical strength of the units involved.&lt;br /&gt;
:* &#039;&#039;&#039;polstrength1&#039;&#039;&#039;/&#039;&#039;&#039;polstrength2&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – In case of Coup d&#039;Etat, political organizations that supported the government (1) respective the insurgents (2).&lt;br /&gt;
:* &#039;&#039;&#039;milstrength1&#039;&#039;&#039;/&#039;&#039;&#039;milstrength2&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – In case of Coup d&#039;Etat, military units that supported the government (1) respective the insurgents (2).&lt;br /&gt;
* &#039;&#039;&#039;strength3&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – if &#039;&#039;&#039;combatant3&#039;&#039;&#039; is set, this is a third strength field identical to the two above; if it is &#039;&#039;&#039;&#039;&#039;not&#039;&#039;&#039;&#039;&#039; set, this is an alternate combined field for use where only the total participation in a conflict is known.&lt;br /&gt;
* &#039;&#039;&#039;casualties1&#039;&#039;&#039;/&#039;&#039;&#039;casualties2&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – [[Casualty (person)|casualties suffered]] (including: dead, wounded, missing, captured and civilian deaths) and equipment losses. Note that this section of the infobox is headed &amp;quot;Casualties and losses&amp;quot;. Terms such as &amp;quot;dead&amp;quot; (or &amp;quot;killed&amp;quot;), &amp;quot;wounded&amp;quot;, or &amp;quot;captured&amp;quot; should be used in place of abbreviations such as &amp;quot;KIA&amp;quot; or &amp;quot;POW&amp;quot;. Where equipment losses are reported, this should be confined to major or significant types of equipment broadly categorized such as: tanks, guns (artillery pieces), aircraft, destroyers etc.&lt;br /&gt;
* &#039;&#039;&#039;casualties3&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – if &#039;&#039;&#039;combatant3&#039;&#039;&#039; is set, this is a third casualty field identical to the two above; if it is &#039;&#039;&#039;&#039;&#039;not&#039;&#039;&#039;&#039;&#039; set, this is an alternate combined field for use where only the total casualties of a conflict are known, or where civilian casualties cannot be directly attributed to either side.&lt;br /&gt;
* &#039;&#039;&#039;notes&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – optional field for further notes; this should only be used in exceptional circumstances.&lt;br /&gt;
* &#039;&#039;&#039;campaignbox&#039;&#039;&#039; – &#039;&#039;optional&#039;&#039; – optional field for appending a [[WP:CAMPAIGN|campaignbox template]] to the bottom of the infobox, which allows both boxes to float as a single element (useful if there are subsequent left floating images, which would otherwise not be able to float above the campaign box); the template must be specified in the format &amp;lt;nowiki&amp;gt;{{Campaignbox XYZ}}&amp;lt;/nowiki&amp;gt;.&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:WikiProject Military history template instructions|Military conflict infobox]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;{{Campaign/doc|noheader=yes}}&lt;br /&gt;
{{Operational plan/doc|noheader=yes}}&lt;br /&gt;
&lt;br /&gt;
==Microformat==&lt;br /&gt;
{{UF-hcal-geo}}&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
{{TemplateData header}}&lt;br /&gt;
{{collapse top|title=TemplateData}}&lt;br /&gt;
&amp;lt;templatedata&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&amp;quot;description&amp;quot;: &amp;quot;Summarize information about a particular military conflict (a battle, campaign, war, or group of related wars).&amp;quot;,&lt;br /&gt;
	&amp;quot;format&amp;quot;: &amp;quot;{{_\n| _________________ = _\n}}\n&amp;quot;,&lt;br /&gt;
	&amp;quot;params&amp;quot;: {&lt;br /&gt;
		&amp;quot;conflict&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Conflict&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The name of the conflict being described.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string/line&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: true&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;width&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Width&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Width of the infobox.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;default&amp;quot;: &amp;quot;315px&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;partof&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Part of&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The larger conflict containing the event described in the article.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;wiki-page-name&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;image&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Image&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;An image for the warbox given in the form Example.jpg.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;wiki-file-name&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;image_size&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Image size&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The size of the image&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;alt&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Alt&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Alternative textual description of the image&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;caption&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Caption&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The text to be placed below the image.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;date&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Date&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The date of the conflict described. Convention is to give the actual date for battles and the years for wars, but this does not always apply.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;place&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Place&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The location of the conflict.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: true&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;coordinates&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Coordinates&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The location of the structure, given as a coordinate pair by using {{coord}} with display=inline,title.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;map_type&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Map Type&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The base map to be used for the location map, e.g. \&amp;quot;Scotland\&amp;quot;; see {{location map}} for more details.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;map_relief&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Map Relief&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;\&amp;quot;yes\&amp;quot; if the location map is a relief map.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;map_size&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Map Size&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Width of the location map in pixels (px).&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;number&amp;quot;,&lt;br /&gt;
			&amp;quot;default&amp;quot;: &amp;quot;220&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;map_mark&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Map Marker&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;File to use as the location map marker.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;default&amp;quot;: &amp;quot;red_pog.svg&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;map_marksize&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Map Marker Size&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Width of the location map marker in pixels (px).&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;number&amp;quot;,&lt;br /&gt;
			&amp;quot;default&amp;quot;: &amp;quot;8&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;map_caption&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Map Caption&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Caption displayed below the location map.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;default&amp;quot;: &amp;quot;Location within {{{map_type}}}&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;map_label&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Map Label&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The label placed next to the marker on the location map.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string/line&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;territory&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Territory&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Any changes in territorial control as a result of the conflict; this should not be used for overly lengthy descriptions of the peace settlement.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;result&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Result&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;This parameter may use one of two standard terms: \&amp;quot;X victory\&amp;quot; or \&amp;quot;Inconclusive\&amp;quot;. The term used is for the \&amp;quot;immediate\&amp;quot; outcome of the \&amp;quot;subject\&amp;quot; conflict and should reflect what the sources say. In cases where the standard terms do not accurately describe the outcome, a link or note should be made to the section of the article where the result is discussed in detail (such as \&amp;quot;See the Aftermath section\&amp;quot;). Such a note can also be used in conjunction with the standard terms but should not be used to conceal an ambiguity in the \&amp;quot;immediate\&amp;quot; result. Do not introduce non-standard terms like \&amp;quot;decisive\&amp;quot;, \&amp;quot;marginal\&amp;quot; or \&amp;quot;tactical\&amp;quot;, or contradictory statements like \&amp;quot;decisive tactical victory but strategic defeat\&amp;quot;. Omit this parameter altogether rather than engage in speculation about which side won or by how much.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;status&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Status&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;For ongoing conflicts, the current status of the conflict.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string/line&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatants_header&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;\&amp;quot;Combatants\&amp;quot; Header Text&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Sets the header text for the combatants section.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string/line&amp;quot;,&lt;br /&gt;
			&amp;quot;default&amp;quot;: &amp;quot;Belligerents&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant1&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 1&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;A party participating in the conflict.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant2&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 2&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;A party participating in the conflict.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant3&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 3&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;A party participating in the conflict. (only if the conflict has three distinct \&amp;quot;sides\&amp;quot;)&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant1a&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 1a&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 1 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant2a&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 2a&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 2 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant3a&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 3a&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 3 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant1b&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 1b&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 1 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant2b&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 2b&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 2 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant3b&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 3b&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 3 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant1c&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 1c&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 1 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant2c&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 2c&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 2 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant3c&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 3c&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 3 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant1d&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 1d&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 1 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant2d&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 2d&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 2 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;combatant3d&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Combatant 3d&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;In cases where the parties significantly changed over the course of the conflict, this field may be used to provide additional rows for the Combatant 3 field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;commander1&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Commander of Combatant 1&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The commanders of the military forces of Combatant (1) involved.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;commander2&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Commander of Combatant 2&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The commanders of the military forces of Combatant 2 involved.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;commander3&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Commander of Combatant 3&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The commanders of the military forces of Combatant 3 involved.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;units1&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Units of Combatant 1&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The units or formations of Combatant 1 involved. If a large number of distinct formations is present, it may be better to reference an order of battle in the body of the article than to include the entire list in this field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;units2&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Units of Combatant 2&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The units or formations of Combatant 2 involved. If a large number of distinct formations is present, it may be better to reference an order of battle in the body of the article than to include the entire list in this field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;units3&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Units of Combatant 3&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The units or formations of Combatant 3 involved. If a large number of distinct formations is present, it may be better to reference an order of battle in the body of the article than to include the entire list in this field.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;strength1&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Strength of Combatant 1&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The numerical strength of Combatant 1.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;strength2&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Strength of Combatant 2&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;The numerical strength of Combatant 2.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;strength3&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Strength of Combatant 3&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;If Combatant 3 is set, this field is for the numerical strength of Combatant 3. If Combatant 3 is not set, this is an alternate combined field for use where only the total participation in a conflict is known.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;casualties1&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Casualties of Combatant 1&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Casualties suffered by Combatant 1 (including: dead, wounded, missing, captured and civilian deaths) and equipment losses. Terms such as \&amp;quot;dead\&amp;quot; (or \&amp;quot;killed\&amp;quot;), \&amp;quot;wounded\&amp;quot;, or \&amp;quot;captured\&amp;quot; should be used in place of abbreviations such as \&amp;quot;KIA\&amp;quot; or \&amp;quot;POW\&amp;quot;. Where equipment losses are reported, this should be confined to major or significant types of equipment broadly categorized such as: tanks, guns (artillery pieces), aircraft, destroyers etc.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;casualties2&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Casualties of Combatant 2&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Casualties suffered by Combatant 2 (including: dead, wounded, missing, captured and civilian deaths) and equipment losses. Terms such as \&amp;quot;dead\&amp;quot; (or \&amp;quot;killed\&amp;quot;), \&amp;quot;wounded\&amp;quot;, or \&amp;quot;captured\&amp;quot; should be used in place of abbreviations such as \&amp;quot;KIA\&amp;quot; or \&amp;quot;POW\&amp;quot;. Where equipment losses are reported, this should be confined to major or significant types of equipment broadly categorized such as: tanks, guns (artillery pieces), aircraft, destroyers etc.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;casualties3&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Casualties of Combatant 3&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;If Combatant 3 is set, this field is for the casualties suffered by Combatant 3, (including: dead, wounded, missing, captured and civilian deaths) and equipment losses. Terms such as \&amp;quot;dead\&amp;quot; (or \&amp;quot;killed\&amp;quot;), \&amp;quot;wounded\&amp;quot;, or \&amp;quot;captured\&amp;quot; should be used in place of abbreviations such as \&amp;quot;KIA\&amp;quot; or \&amp;quot;POW\&amp;quot;. Where equipment losses are reported, this should be confined to major or significant types of equipment broadly categorized such as: tanks, guns (artillery pieces), aircraft, destroyers etc. If combatant3 is not set, this is an alternate combined field for use where only the total casualties of a conflict are known, or where civilian casualties cannot be directly attributed to either side.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;notes&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Notes&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Optional field for further notes; this should only be used in exceptional circumstances.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		},&lt;br /&gt;
		&amp;quot;campaignbox&amp;quot;: {&lt;br /&gt;
			&amp;quot;label&amp;quot;: &amp;quot;Campaignbox&amp;quot;,&lt;br /&gt;
			&amp;quot;description&amp;quot;: &amp;quot;Optional field for appending a campaignbox template to the bottom of the infobox, which allows both boxes to float as a single element (useful if there are subsequent left floating images, which would otherwise not be able to float above the campaign box); the template must be specified in the format {{Campaignbox XYZ}}.&amp;quot;,&lt;br /&gt;
			&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;br /&gt;
			&amp;quot;required&amp;quot;: false&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&amp;lt;/templatedata&amp;gt;&lt;br /&gt;
{{Collapse bottom}}&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*{{tl|Infobox military operation}}&lt;br /&gt;
*{{tl|Infobox civil conflict}}&lt;br /&gt;
*{{tl|Infobox civilian attack}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;includeonly&amp;gt;{{Sandbox other||&lt;br /&gt;
&amp;lt;!-- Categories below this line, please; interwikis at Wikidata --&amp;gt;&lt;br /&gt;
[[Category:War and conflict infobox templates| ]]&lt;br /&gt;
[[Category:Templates based on the Infobox Lua module]]&lt;br /&gt;
}}&amp;lt;/includeonly&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Campaign/doc&amp;diff=65794</id>
		<title>Template:Campaign/doc</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Campaign/doc&amp;diff=65794"/>
		<updated>2024-08-16T20:33:28Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Template:Campaignbox/doc]]&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Campaignbox/doc&amp;diff=65792</id>
		<title>Template:Campaignbox/doc</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Campaignbox/doc&amp;diff=65792"/>
		<updated>2024-08-16T20:33:28Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#ifeq:{{{noheader|}}}|yes |&lt;br /&gt;
 | {{Documentation subpage}}&lt;br /&gt;
{{High-use}}&lt;br /&gt;
{{lua|Module:Military navigation}}&lt;br /&gt;
{{Template display|nomobile}}&lt;br /&gt;
{{Template redirect|Campaign}}&lt;br /&gt;
{{Navbox visibility}}&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
}}&lt;br /&gt;
{{#switch:{{ARTICLESPACE}}&lt;br /&gt;
 | Wikipedia =&lt;br /&gt;
&lt;br /&gt;
====Campaignboxes====&lt;br /&gt;
 | #default =&lt;br /&gt;
&lt;br /&gt;
===Campaignboxes===&lt;br /&gt;
}}&lt;br /&gt;
One common type of navigational template in articles concerning conflicts, wars and related topics is the &#039;&#039;&#039;campaignbox&#039;&#039;&#039; template, intended to provide context and convenient navigation among articles on the [[battles]] in a [[Military campaign|campaign]], [[Front (military)|front]], [[Theater (warfare)|theater]] or [[war]] (or, more rarely, among several campaigns or wars).&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right;width:26.7em;margin-bottom:1.0em;&amp;quot;&amp;gt;&lt;br /&gt;
{{Campaignbox Second Punic War}}&lt;br /&gt;
{{Campaignbox Punic Wars}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the article includes an [[Help:Infobox|infobox]], the campaignbox/es are usually placed immediately after it (i.e. just below it). If available, as with infoboxes such as {{tl|Infobox military conflict}}, use the infobox&#039;s {{para|campaignbox}} parameter:&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:25.0em;border:1px solid black;background:#ddd;padding:0.5em 1.0em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;wikitext&amp;quot;&amp;gt;&lt;br /&gt;
{{Infobox military conflict&lt;br /&gt;
...&lt;br /&gt;
}}&lt;br /&gt;
{{Campaignbox XXXX}}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;or&amp;lt;syntaxhighlight lang=&amp;quot;wikitext&amp;quot;&amp;gt;&lt;br /&gt;
{{Infobox military conflict&lt;br /&gt;
...&lt;br /&gt;
| campaignbox = {{campaignbox XXXX}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Articles may include multiple campaignboxes; typically, these are stacked under the infobox. The most common scenario occurs when two levels of campaignboxes are present&amp;amp;nbsp;– for example, an article about a battle can include both a campaignbox listing the battle itself and an &amp;quot;enclosing&amp;quot; campaignbox listing the campaign, theater or war during which the battle took place.  Similarly, an article about a war can include both a campaignbox listing the war (among a series of wars) and a campaignbox for the war itself, listing the battles that took place during it.&lt;br /&gt;
&lt;br /&gt;
=== Creating campaignboxes ===&lt;br /&gt;
&lt;br /&gt;
Existing campaignboxes may be viewed through the [[:Category:Campaignbox templates|Campaignbox template category]] to which campaignboxes are added automatically.  If a new campaignbox becomes necessary, it should be named &#039;&#039;Template:Campaignbox XXXX&#039;&#039; (where XXXX is the (shortened) name of the campaign) and should use {{tlf|Campaignbox}} thus:&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:16.7em;border:1px solid black;background:#ddd;padding:0.5em 1.0em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;wikitext&amp;quot;&amp;gt;&lt;br /&gt;
{{Campaignbox&lt;br /&gt;
| name = &lt;br /&gt;
| title = &lt;br /&gt;
| battles = &lt;br /&gt;
| notes = &lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Parameters ====&lt;br /&gt;
; &#039;&#039;name&#039;&#039;    : The name by which Wikipedia refers to the template, i.e. &amp;quot;Template:Campaignbox XXXX&amp;quot;. This can be produced by using &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{subst:PAGENAME}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
; &#039;&#039;title&#039;&#039;   : The name of the campaign or war, which, if an article about the campaign or war exists, should link to it. Dates should not be indicated unless needed for clarity.  Note that long links may cause alignment problems; see [[WP:MILMOS#NAVPROBLEMS|the troubleshooting guide]] for more information.&lt;br /&gt;
; &#039;&#039;battles&#039;&#039; : A chronological list of battles and operations in the campaign, linked as &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[[Battle of YYYY|YYYY]]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;. A convenient and accessible way to separate the items in the list is to add &amp;lt;code&amp;gt;| listclass = hlist&amp;lt;/code&amp;gt; and then use the standard &amp;lt;kbd&amp;gt;*&amp;lt;/kbd&amp;gt; (asterisk)-based [[Help:List|listing format]].&lt;br /&gt;
; &#039;&#039;notes&#039;&#039;   : (optional) Any explanatory notes needed to clarify the list. This option should be used sparingly.&lt;br /&gt;
; (&#039;&#039;raw_name&#039;&#039;) : (optional; deprecated) This parameter overrides the use of the title in determining the template name and exists for the sake of backward compatibility. When creating a new campaignbox, both title and name should be specified as above and this parameter omitted.&lt;br /&gt;
&lt;br /&gt;
The following optional parameters are passed on to the templates {{tl|Military navigation}} or {{tl|Navbox}} used to create campaignboxes and so can affect their styling. See these two templates&#039; documentation pages for further details.&lt;br /&gt;
; &#039;&#039;state&#039;&#039; : To set whether the campaignbox appears fully visible or collapsed (to titlebar only) when it is first presented by a page.&lt;br /&gt;
; &#039;&#039;bodyclass&#039;&#039; : CSS styling to affect the whole template.&lt;br /&gt;
; &#039;&#039;listclass&#039;&#039; : CSS styling to affect the list of battles, operations, etc. (e.g. to affect {{para|battles}}).&lt;br /&gt;
&lt;br /&gt;
The use of special formatting (such as bolding or changes in font size) in the list of battles{{spaced ndash}}particularly to mark battles as &amp;quot;important&amp;quot;{{spaced ndash}}is generally discouraged; while there are a &#039;&#039;few&#039;&#039; cases where such approaches may be both helpful to the reader and sufficiently well-sourced that they do not constitute original research, they are usually both unnecessary and potentially confusing.  Similarly, dividing the list of battles into multiple blocks by inserting heading-like separations should be exceptional; if such a division is felt to be needed, a better solution may be to split the one campaignbox into two or more.&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:WikiProject Military history template instructions|Campaignbox]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&amp;lt;includeonly&amp;gt;{{Sandbox other||&lt;br /&gt;
[[Category:Campaignbox templates| ]]&lt;br /&gt;
{{#ifeq:{{{noheader|}}}|yes | |&lt;br /&gt;
[[Category:Navigational box wrapper templates]]&lt;br /&gt;
[[Category:Military navigational boxes|Campaignbox]]&lt;br /&gt;
[[Category:Templates that add a category]]&lt;br /&gt;
}}}}&amp;lt;/includeonly&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Transclusion_count/data/I&amp;diff=65790</id>
		<title>Module:Transclusion count/data/I</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Transclusion_count/data/I&amp;diff=65790"/>
		<updated>2024-08-16T20:33:26Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;return {&lt;br /&gt;
[&amp;quot;IAST&amp;quot;] = 6700,&lt;br /&gt;
[&amp;quot;IBDB_name&amp;quot;] = 9300,&lt;br /&gt;
[&amp;quot;ICD10&amp;quot;] = 5000,&lt;br /&gt;
[&amp;quot;ICD9&amp;quot;] = 4400,&lt;br /&gt;
[&amp;quot;ICS&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;IDN&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;IMDb_episode&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;IMDb_episodes&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;IMDb_name&amp;quot;] = 158000,&lt;br /&gt;
[&amp;quot;IMDb_title&amp;quot;] = 197000,&lt;br /&gt;
[&amp;quot;IMO_Number&amp;quot;] = 4200,&lt;br /&gt;
[&amp;quot;IMSLP&amp;quot;] = 8500,&lt;br /&gt;
[&amp;quot;INA&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;IND&amp;quot;] = 7900,&lt;br /&gt;
[&amp;quot;INR&amp;quot;] = 7000,&lt;br /&gt;
[&amp;quot;INRConvert&amp;quot;] = 6100,&lt;br /&gt;
[&amp;quot;INRConvert/CurrentRate&amp;quot;] = 6000,&lt;br /&gt;
[&amp;quot;INRConvert/USD&amp;quot;] = 6000,&lt;br /&gt;
[&amp;quot;INRConvert/out&amp;quot;] = 6000,&lt;br /&gt;
[&amp;quot;IOBDB_name&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;IP&amp;quot;] = 2700,&lt;br /&gt;
[&amp;quot;IPA&amp;quot;] = 149000,&lt;br /&gt;
[&amp;quot;IPA-ca&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;IPA-de&amp;quot;] = 8300,&lt;br /&gt;
[&amp;quot;IPA-es&amp;quot;] = 8000,&lt;br /&gt;
[&amp;quot;IPA-fr&amp;quot;] = 44000,&lt;br /&gt;
[&amp;quot;IPA-it&amp;quot;] = 5700,&lt;br /&gt;
[&amp;quot;IPA-nl&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;IPA-pl&amp;quot;] = 4100,&lt;br /&gt;
[&amp;quot;IPA-pt&amp;quot;] = 3300,&lt;br /&gt;
[&amp;quot;IPA-sl&amp;quot;] = 6900,&lt;br /&gt;
[&amp;quot;IPA-th&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;IPA_audio_link&amp;quot;] = 3600,&lt;br /&gt;
[&amp;quot;IPA_link&amp;quot;] = 4100,&lt;br /&gt;
[&amp;quot;IPAblink&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;IPAc-cmn&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;IPAc-en&amp;quot;] = 50000,&lt;br /&gt;
[&amp;quot;IPAc-pl&amp;quot;] = 51000,&lt;br /&gt;
[&amp;quot;IPC_athlete&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;IPSummary&amp;quot;] = 78000,&lt;br /&gt;
[&amp;quot;IP_summary&amp;quot;] = 79000,&lt;br /&gt;
[&amp;quot;IPtalk&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;IPuser&amp;quot;] = 7200,&lt;br /&gt;
[&amp;quot;IPvandal&amp;quot;] = 2900,&lt;br /&gt;
[&amp;quot;IRC&amp;quot;] = 7200,&lt;br /&gt;
[&amp;quot;IRI&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;IRL&amp;quot;] = 5600,&lt;br /&gt;
[&amp;quot;IRN&amp;quot;] = 3700,&lt;br /&gt;
[&amp;quot;ISBN&amp;quot;] = 465000,&lt;br /&gt;
[&amp;quot;ISBN?&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;ISBNT&amp;quot;] = 40000,&lt;br /&gt;
[&amp;quot;ISBN_missing&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;ISFDB_name&amp;quot;] = 4200,&lt;br /&gt;
[&amp;quot;ISFDB_title&amp;quot;] = 4800,&lt;br /&gt;
[&amp;quot;ISL&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;ISO_15924/script-example-character&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;ISO_15924/wp-article&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;ISO_15924/wp-article/format&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;ISO_15924/wp-article/label&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;ISO_3166_code&amp;quot;] = 534000,&lt;br /&gt;
[&amp;quot;ISO_3166_name&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;ISO_639_name&amp;quot;] = 8600,&lt;br /&gt;
[&amp;quot;ISP&amp;quot;] = 4800,&lt;br /&gt;
[&amp;quot;ISR&amp;quot;] = 5100,&lt;br /&gt;
[&amp;quot;ISSN&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;ISSN_link&amp;quot;] = 31000,&lt;br /&gt;
[&amp;quot;ISTAT&amp;quot;] = 8100,&lt;br /&gt;
[&amp;quot;ISU_figure_skater&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;ITA&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;ITF&amp;quot;] = 6400,&lt;br /&gt;
[&amp;quot;ITF_profile&amp;quot;] = 9200,&lt;br /&gt;
[&amp;quot;ITIS&amp;quot;] = 4900,&lt;br /&gt;
[&amp;quot;ITN_talk&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;ITN_talk/date&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;IUCN_banner&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;I_sup&amp;quot;] = 4300,&lt;br /&gt;
[&amp;quot;Ice_hockey_stats&amp;quot;] = 19000,&lt;br /&gt;
[&amp;quot;Icehockeystats&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Icon&amp;quot;] = 601000,&lt;br /&gt;
[&amp;quot;If&amp;quot;] = 307000,&lt;br /&gt;
[&amp;quot;If_all&amp;quot;] = 6800,&lt;br /&gt;
[&amp;quot;If_between&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;If_both&amp;quot;] = 136000,&lt;br /&gt;
[&amp;quot;If_either&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;If_empty&amp;quot;] = 3890000,&lt;br /&gt;
[&amp;quot;If_first_display_both&amp;quot;] = 73000,&lt;br /&gt;
[&amp;quot;If_in_page&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;If_last_display_both&amp;quot;] = 31000,&lt;br /&gt;
[&amp;quot;If_preview&amp;quot;] = 60000,&lt;br /&gt;
[&amp;quot;If_then_show&amp;quot;] = 327000,&lt;br /&gt;
[&amp;quot;Ifempty&amp;quot;] = 4100,&lt;br /&gt;
[&amp;quot;Ifeq&amp;quot;] = 17000,&lt;br /&gt;
[&amp;quot;Iferror_then_show&amp;quot;] = 3300,&lt;br /&gt;
[&amp;quot;Ifexist_not_redirect&amp;quot;] = 1370000,&lt;br /&gt;
[&amp;quot;Ifnotempty&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;Ifnumber&amp;quot;] = 56000,&lt;br /&gt;
[&amp;quot;Ifsubst&amp;quot;] = 943000,&lt;br /&gt;
[&amp;quot;Ih&amp;quot;] = 7700,&lt;br /&gt;
[&amp;quot;Ill&amp;quot;] = 141000,&lt;br /&gt;
[&amp;quot;Illm&amp;quot;] = 6300,&lt;br /&gt;
[&amp;quot;Image_frame&amp;quot;] = 5200,&lt;br /&gt;
[&amp;quot;Image_label&amp;quot;] = 4600,&lt;br /&gt;
[&amp;quot;Image_label_begin&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Image_label_end&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Image_label_small&amp;quot;] = 2700,&lt;br /&gt;
[&amp;quot;Image_needed&amp;quot;] = 4800,&lt;br /&gt;
[&amp;quot;Image_other&amp;quot;] = 224000,&lt;br /&gt;
[&amp;quot;Image_requested&amp;quot;] = 171000,&lt;br /&gt;
[&amp;quot;Image_requested/Category_helper&amp;quot;] = 162000,&lt;br /&gt;
[&amp;quot;Imbox&amp;quot;] = 933000,&lt;br /&gt;
[&amp;quot;Imdb_name&amp;quot;] = 5500,&lt;br /&gt;
[&amp;quot;Imdb_title&amp;quot;] = 3300,&lt;br /&gt;
[&amp;quot;Import_style&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Import_style/inputbox.css&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Importance&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Importance/colour&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Importance_mask&amp;quot;] = 10900000,&lt;br /&gt;
[&amp;quot;Improve_categories&amp;quot;] = 8600,&lt;br /&gt;
[&amp;quot;Improve_documentation&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;In_class&amp;quot;] = 5600,&lt;br /&gt;
[&amp;quot;In_lang&amp;quot;] = 368000,&lt;br /&gt;
[&amp;quot;In_progress&amp;quot;] = 3400,&lt;br /&gt;
[&amp;quot;In_string&amp;quot;] = 102000,&lt;br /&gt;
[&amp;quot;In_title&amp;quot;] = 21000,&lt;br /&gt;
[&amp;quot;Inactive_userpage_blanked&amp;quot;] = 4900,&lt;br /&gt;
[&amp;quot;Include-USGov&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Incomplete_list&amp;quot;] = 23000,&lt;br /&gt;
[&amp;quot;Inconclusive&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Increase&amp;quot;] = 48000,&lt;br /&gt;
[&amp;quot;Incumbent_pope&amp;quot;] = 4300,&lt;br /&gt;
[&amp;quot;Indent&amp;quot;] = 4800,&lt;br /&gt;
[&amp;quot;IndexFungorum&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Indian_English&amp;quot;] = 4600,&lt;br /&gt;
[&amp;quot;Indian_Rupee&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Indian_railway_code&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Inflation&amp;quot;] = 22000,&lt;br /&gt;
[&amp;quot;Inflation-fn&amp;quot;] = 5500,&lt;br /&gt;
[&amp;quot;Inflation-year&amp;quot;] = 4700,&lt;br /&gt;
[&amp;quot;Inflation/IN/startyear&amp;quot;] = 6000,&lt;br /&gt;
[&amp;quot;Inflation/UK&amp;quot;] = 4700,&lt;br /&gt;
[&amp;quot;Inflation/UK/dataset&amp;quot;] = 4700,&lt;br /&gt;
[&amp;quot;Inflation/UK/startyear&amp;quot;] = 4700,&lt;br /&gt;
[&amp;quot;Inflation/US&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Inflation/US-GDP&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Inflation/US-GDP/dataset&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Inflation/US-GDP/startyear&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Inflation/US/dataset&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Inflation/US/startyear&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Inflation/fn&amp;quot;] = 6700,&lt;br /&gt;
[&amp;quot;Inflation/year&amp;quot;] = 28000,&lt;br /&gt;
[&amp;quot;Info&amp;quot;] = 7100,&lt;br /&gt;
[&amp;quot;Infobox&amp;quot;] = 3310000,&lt;br /&gt;
[&amp;quot;Infobox/Columns&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox/mobileviewfix.css&amp;quot;] = 153000,&lt;br /&gt;
[&amp;quot;Infobox/styles-images.css&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox3cols&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;Infobox_AFL_biography&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Infobox_Aircraft_Begin&amp;quot;] = 5100,&lt;br /&gt;
[&amp;quot;Infobox_Aircraft_Type&amp;quot;] = 4500,&lt;br /&gt;
[&amp;quot;Infobox_Athletics_Championships&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_Australian_place&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;Infobox_COA_wide&amp;quot;] = 3400,&lt;br /&gt;
[&amp;quot;Infobox_Canada_electoral_district&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_Canadian_Football_League_biography&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_Chinese&amp;quot;] = 21000,&lt;br /&gt;
[&amp;quot;Infobox_Chinese/Chinese&amp;quot;] = 2900,&lt;br /&gt;
[&amp;quot;Infobox_Chinese/Footer&amp;quot;] = 8300,&lt;br /&gt;
[&amp;quot;Infobox_Chinese/Header&amp;quot;] = 8300,&lt;br /&gt;
[&amp;quot;Infobox_Chinese/Korean&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;Infobox_Christian_leader&amp;quot;] = 19000,&lt;br /&gt;
[&amp;quot;Infobox_French_commune&amp;quot;] = 38000,&lt;br /&gt;
[&amp;quot;Infobox_French_subdivision&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_GAA_player&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_Gaelic_games_player&amp;quot;] = 5100,&lt;br /&gt;
[&amp;quot;Infobox_German_location&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Infobox_German_place&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Infobox_Grand_Prix_race_report&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_Greece_place&amp;quot;] = 3400,&lt;br /&gt;
[&amp;quot;Infobox_Greek_Dimos&amp;quot;] = 2900,&lt;br /&gt;
[&amp;quot;Infobox_Hindu_temple&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_Indian_constituency&amp;quot;] = 5300,&lt;br /&gt;
[&amp;quot;Infobox_Indian_constituency/defaultdata&amp;quot;] = 5300,&lt;br /&gt;
[&amp;quot;Infobox_Italian_comune&amp;quot;] = 8100,&lt;br /&gt;
[&amp;quot;Infobox_Korean_name&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_Korean_name/categories&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_NASCAR_race_report&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_NCAA_team_season&amp;quot;] = 17000,&lt;br /&gt;
[&amp;quot;Infobox_NFL_biography&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_NFL_team_season&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Infobox_NRHP&amp;quot;] = 73000,&lt;br /&gt;
[&amp;quot;Infobox_NRHP/conv&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;Infobox_NRHP/locmapin2region&amp;quot;] = 67000,&lt;br /&gt;
[&amp;quot;Infobox_Officeholder&amp;quot;] = 4400,&lt;br /&gt;
[&amp;quot;Infobox_Olympic_event&amp;quot;] = 7700,&lt;br /&gt;
[&amp;quot;Infobox_Olympic_event/games_text&amp;quot;] = 7700,&lt;br /&gt;
[&amp;quot;Infobox_Pan_American_Games_event&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_Paralympic_event&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_Paralympic_event/games_text&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_Politician&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_Romanian_subdivision&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_Russian_district&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_Russian_inhabited_locality&amp;quot;] = 4500,&lt;br /&gt;
[&amp;quot;Infobox_SCOTUS_case&amp;quot;] = 3800,&lt;br /&gt;
[&amp;quot;Infobox_SSSI&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_Site_of_Special_Scientific_Interest&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_Swiss_town&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_Switzerland_municipality&amp;quot;] = 2900,&lt;br /&gt;
[&amp;quot;Infobox_Turkey_place&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Infobox_U.S._county&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_U.S._county/district&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_UK_constituency&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_UK_constituency/year&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_UK_legislation&amp;quot;] = 4100,&lt;br /&gt;
[&amp;quot;Infobox_UK_place&amp;quot;] = 26000,&lt;br /&gt;
[&amp;quot;Infobox_UK_place/NoDialCode&amp;quot;] = 8300,&lt;br /&gt;
[&amp;quot;Infobox_UK_place/NoPostCode&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_UK_place/area&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_UK_place/dens&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_UK_place/dist&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_UK_place/local&amp;quot;] = 26000,&lt;br /&gt;
[&amp;quot;Infobox_UK_place/styles.css&amp;quot;] = 26000,&lt;br /&gt;
[&amp;quot;Infobox_UN_resolution&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_US_Supreme_Court_case&amp;quot;] = 4000,&lt;br /&gt;
[&amp;quot;Infobox_US_Supreme_Court_case/courts&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Infobox_Wikipedia_user&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Infobox_YouTube_personality&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_YouTube_personality/styles.css&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_academic&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;Infobox_aircraft_begin&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Infobox_aircraft_occurrence&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_aircraft_type&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Infobox_airline&amp;quot;] = 4600,&lt;br /&gt;
[&amp;quot;Infobox_airport&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_airport/datatable&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_album&amp;quot;] = 164000,&lt;br /&gt;
[&amp;quot;Infobox_album/color&amp;quot;] = 197000,&lt;br /&gt;
[&amp;quot;Infobox_album/link&amp;quot;] = 164000,&lt;br /&gt;
[&amp;quot;Infobox_anatomy&amp;quot;] = 4500,&lt;br /&gt;
[&amp;quot;Infobox_ancient_site&amp;quot;] = 5800,&lt;br /&gt;
[&amp;quot;Infobox_animanga/Footer&amp;quot;] = 7200,&lt;br /&gt;
[&amp;quot;Infobox_animanga/Header&amp;quot;] = 7300,&lt;br /&gt;
[&amp;quot;Infobox_animanga/Print&amp;quot;] = 5900,&lt;br /&gt;
[&amp;quot;Infobox_animanga/Video&amp;quot;] = 4900,&lt;br /&gt;
[&amp;quot;Infobox_architect&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Infobox_artist&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_artist_discography&amp;quot;] = 6100,&lt;br /&gt;
[&amp;quot;Infobox_artwork&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Infobox_athlete&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_automobile&amp;quot;] = 8600,&lt;br /&gt;
[&amp;quot;Infobox_award&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Infobox_badminton_player&amp;quot;] = 3300,&lt;br /&gt;
[&amp;quot;Infobox_baseball_biography&amp;quot;] = 29000,&lt;br /&gt;
[&amp;quot;Infobox_baseball_biography/style&amp;quot;] = 29000,&lt;br /&gt;
[&amp;quot;Infobox_baseball_biography/styles.css&amp;quot;] = 29000,&lt;br /&gt;
[&amp;quot;Infobox_baseball_team_season&amp;quot;] = 3300,&lt;br /&gt;
[&amp;quot;Infobox_baseball_team_season/leagueseason&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_baseball_team_season/season&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_baseball_team_season/styles.css&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_basketball_biography&amp;quot;] = 22000,&lt;br /&gt;
[&amp;quot;Infobox_basketball_biography/style&amp;quot;] = 22000,&lt;br /&gt;
[&amp;quot;Infobox_basketball_club&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;Infobox_basketball_club/styles.css&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;Infobox_beauty_pageant&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_bilateral_relations&amp;quot;] = 4600,&lt;br /&gt;
[&amp;quot;Infobox_body_of_water&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;Infobox_book&amp;quot;] = 54000,&lt;br /&gt;
[&amp;quot;Infobox_boxer&amp;quot;] = 6000,&lt;br /&gt;
[&amp;quot;Infobox_bridge&amp;quot;] = 6200,&lt;br /&gt;
[&amp;quot;Infobox_building&amp;quot;] = 29000,&lt;br /&gt;
[&amp;quot;Infobox_character&amp;quot;] = 7600,&lt;br /&gt;
[&amp;quot;Infobox_chess_biography&amp;quot;] = 4300,&lt;br /&gt;
[&amp;quot;Infobox_chess_player&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_church&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_church/denomination&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_church/font_color&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_civil_conflict&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_civilian_attack&amp;quot;] = 6000,&lt;br /&gt;
[&amp;quot;Infobox_college_coach&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Infobox_college_football_game&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_college_football_player&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_college_sports_team_season&amp;quot;] = 42000,&lt;br /&gt;
[&amp;quot;Infobox_college_sports_team_season/link&amp;quot;] = 42000,&lt;br /&gt;
[&amp;quot;Infobox_college_sports_team_season/name&amp;quot;] = 42000,&lt;br /&gt;
[&amp;quot;Infobox_college_sports_team_season/succession&amp;quot;] = 42000,&lt;br /&gt;
[&amp;quot;Infobox_college_sports_team_season/team&amp;quot;] = 42000,&lt;br /&gt;
[&amp;quot;Infobox_comedian&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_comic_book_title&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;Infobox_comics_character&amp;quot;] = 3700,&lt;br /&gt;
[&amp;quot;Infobox_comics_creator&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_comics_creator/styles.css&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_company&amp;quot;] = 85000,&lt;br /&gt;
[&amp;quot;Infobox_computing_device&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_concert&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_constituency&amp;quot;] = 6000,&lt;br /&gt;
[&amp;quot;Infobox_country&amp;quot;] = 6600,&lt;br /&gt;
[&amp;quot;Infobox_country/formernext&amp;quot;] = 6200,&lt;br /&gt;
[&amp;quot;Infobox_country/imagetable&amp;quot;] = 5400,&lt;br /&gt;
[&amp;quot;Infobox_country/multirow&amp;quot;] = 8600,&lt;br /&gt;
[&amp;quot;Infobox_country/status_text&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_country/styles.css&amp;quot;] = 6600,&lt;br /&gt;
[&amp;quot;Infobox_country_at_games&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;Infobox_country_at_games/core&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;Infobox_country_at_games/see_also&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Infobox_court_case&amp;quot;] = 4900,&lt;br /&gt;
[&amp;quot;Infobox_court_case/images&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_cricket_tournament&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Infobox_cricketer&amp;quot;] = 32000,&lt;br /&gt;
[&amp;quot;Infobox_cricketer/career&amp;quot;] = 32000,&lt;br /&gt;
[&amp;quot;Infobox_cricketer/national_side&amp;quot;] = 7700,&lt;br /&gt;
[&amp;quot;Infobox_criminal&amp;quot;] = 6800,&lt;br /&gt;
[&amp;quot;Infobox_curler&amp;quot;] = 2700,&lt;br /&gt;
[&amp;quot;Infobox_cycling_race_report&amp;quot;] = 4600,&lt;br /&gt;
[&amp;quot;Infobox_cyclist&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;Infobox_dam&amp;quot;] = 5700,&lt;br /&gt;
[&amp;quot;Infobox_deity&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_deity/color&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_designation_list&amp;quot;] = 21000,&lt;br /&gt;
[&amp;quot;Infobox_designation_list/entry&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;Infobox_dim&amp;quot;] = 7000,&lt;br /&gt;
[&amp;quot;Infobox_dim/core&amp;quot;] = 7000,&lt;br /&gt;
[&amp;quot;Infobox_diocese&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Infobox_drug&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/chemical_formula&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/data_page_link&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatATC&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatCASnumber&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatChEBI&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatChEMBL&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatChemDBNIAID&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatChemSpider&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatCompTox&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatDrugBank&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatIUPHARBPS&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatJmol&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatKEGG&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatPDBligand&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatPubChemCID&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatPubChemSID&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/formatUNII&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/legal_status&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/licence&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/maintenance_categories&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/non-ref-space&amp;quot;] = 5100,&lt;br /&gt;
[&amp;quot;Infobox_drug/pregnancy_category&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_drug/title&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_election&amp;quot;] = 33000,&lt;br /&gt;
[&amp;quot;Infobox_election/row&amp;quot;] = 33000,&lt;br /&gt;
[&amp;quot;Infobox_election/shortname&amp;quot;] = 31000,&lt;br /&gt;
[&amp;quot;Infobox_election/styles.css&amp;quot;] = 33000,&lt;br /&gt;
[&amp;quot;Infobox_enzyme&amp;quot;] = 5100,&lt;br /&gt;
[&amp;quot;Infobox_ethnic_group&amp;quot;] = 7500,&lt;br /&gt;
[&amp;quot;Infobox_event&amp;quot;] = 6100,&lt;br /&gt;
[&amp;quot;Infobox_family&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_figure_skater&amp;quot;] = 4000,&lt;br /&gt;
[&amp;quot;Infobox_film&amp;quot;] = 161000,&lt;br /&gt;
[&amp;quot;Infobox_film/short_description&amp;quot;] = 157000,&lt;br /&gt;
[&amp;quot;Infobox_film_awards&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_film_awards/link&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_film_awards/style&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_food&amp;quot;] = 7100,&lt;br /&gt;
[&amp;quot;Infobox_football_biography&amp;quot;] = 211000,&lt;br /&gt;
[&amp;quot;Infobox_football_club&amp;quot;] = 28000,&lt;br /&gt;
[&amp;quot;Infobox_football_club_season&amp;quot;] = 22000,&lt;br /&gt;
[&amp;quot;Infobox_football_league&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_football_league_season&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Infobox_football_match&amp;quot;] = 6100,&lt;br /&gt;
[&amp;quot;Infobox_football_tournament&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_football_tournament_season&amp;quot;] = 8300,&lt;br /&gt;
[&amp;quot;Infobox_former_subdivision&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_former_subdivision/styles.css&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_galaxy&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_game&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_game_score&amp;quot;] = 3600,&lt;br /&gt;
[&amp;quot;Infobox_gene&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Infobox_given_name&amp;quot;] = 4200,&lt;br /&gt;
[&amp;quot;Infobox_golfer&amp;quot;] = 4500,&lt;br /&gt;
[&amp;quot;Infobox_golfer/highest_ranking&amp;quot;] = 4500,&lt;br /&gt;
[&amp;quot;Infobox_government_agency&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_government_cabinet&amp;quot;] = 2900,&lt;br /&gt;
[&amp;quot;Infobox_gridiron_football_person&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_gridiron_football_person/position&amp;quot;] = 5200,&lt;br /&gt;
[&amp;quot;Infobox_gymnast&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Infobox_handball_biography&amp;quot;] = 5000,&lt;br /&gt;
[&amp;quot;Infobox_historic_site&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Infobox_holiday&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_holiday/date&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_horseraces&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_hospital&amp;quot;] = 6600,&lt;br /&gt;
[&amp;quot;Infobox_hospital/care_system&amp;quot;] = 6600,&lt;br /&gt;
[&amp;quot;Infobox_hospital/lists&amp;quot;] = 6600,&lt;br /&gt;
[&amp;quot;Infobox_ice_hockey_biography&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Infobox_ice_hockey_player&amp;quot;] = 19000,&lt;br /&gt;
[&amp;quot;Infobox_ice_hockey_team&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_ice_hockey_team_season&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_international_football_competition&amp;quot;] = 6100,&lt;br /&gt;
[&amp;quot;Infobox_islands&amp;quot;] = 9000,&lt;br /&gt;
[&amp;quot;Infobox_islands/area&amp;quot;] = 9400,&lt;br /&gt;
[&amp;quot;Infobox_islands/density&amp;quot;] = 9400,&lt;br /&gt;
[&amp;quot;Infobox_islands/length&amp;quot;] = 9000,&lt;br /&gt;
[&amp;quot;Infobox_islands/styles.css&amp;quot;] = 9000,&lt;br /&gt;
[&amp;quot;Infobox_journal&amp;quot;] = 9900,&lt;br /&gt;
[&amp;quot;Infobox_journal/Abbreviation_search&amp;quot;] = 9800,&lt;br /&gt;
[&amp;quot;Infobox_journal/Bluebook_check&amp;quot;] = 9600,&lt;br /&gt;
[&amp;quot;Infobox_journal/Former_check&amp;quot;] = 9600,&lt;br /&gt;
[&amp;quot;Infobox_journal/ISO_4_check&amp;quot;] = 9600,&lt;br /&gt;
[&amp;quot;Infobox_journal/ISSN-eISSN&amp;quot;] = 9600,&lt;br /&gt;
[&amp;quot;Infobox_journal/Indexing_search&amp;quot;] = 9700,&lt;br /&gt;
[&amp;quot;Infobox_journal/MathSciNet_check&amp;quot;] = 9600,&lt;br /&gt;
[&amp;quot;Infobox_journal/NLM_check&amp;quot;] = 9600,&lt;br /&gt;
[&amp;quot;Infobox_journal/frequency&amp;quot;] = 8700,&lt;br /&gt;
[&amp;quot;Infobox_journal/openaccess&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_judoka&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_lake&amp;quot;] = 4200,&lt;br /&gt;
[&amp;quot;Infobox_language&amp;quot;] = 9800,&lt;br /&gt;
[&amp;quot;Infobox_language/family-color&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_language/genetic&amp;quot;] = 6700,&lt;br /&gt;
[&amp;quot;Infobox_language/linguistlist&amp;quot;] = 9800,&lt;br /&gt;
[&amp;quot;Infobox_language/ref&amp;quot;] = 7200,&lt;br /&gt;
[&amp;quot;Infobox_law_enforcement_agency&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Infobox_legislation&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_legislature&amp;quot;] = 3900,&lt;br /&gt;
[&amp;quot;Infobox_library&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_lighthouse&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_lighthouse/light&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_locomotive&amp;quot;] = 4900,&lt;br /&gt;
[&amp;quot;Infobox_magazine&amp;quot;] = 7800,&lt;br /&gt;
[&amp;quot;Infobox_manner_of_address&amp;quot;] = 3400,&lt;br /&gt;
[&amp;quot;Infobox_mapframe&amp;quot;] = 90000,&lt;br /&gt;
[&amp;quot;Infobox_martial_artist&amp;quot;] = 5800,&lt;br /&gt;
[&amp;quot;Infobox_martial_artist/record&amp;quot;] = 5800,&lt;br /&gt;
[&amp;quot;Infobox_medal_templates&amp;quot;] = 434000,&lt;br /&gt;
[&amp;quot;Infobox_medical_condition&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_medical_condition_(new)&amp;quot;] = 7800,&lt;br /&gt;
[&amp;quot;Infobox_medical_details&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_medical_person&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_military_conflict&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Infobox_military_installation&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Infobox_military_person&amp;quot;] = 47000,&lt;br /&gt;
[&amp;quot;Infobox_military_unit&amp;quot;] = 27000,&lt;br /&gt;
[&amp;quot;Infobox_mine&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Infobox_model&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_monument&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_mountain&amp;quot;] = 29000,&lt;br /&gt;
[&amp;quot;Infobox_multi-sport_competition_event&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Infobox_museum&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_musical_artist&amp;quot;] = 124000,&lt;br /&gt;
[&amp;quot;Infobox_musical_artist/color&amp;quot;] = 124000,&lt;br /&gt;
[&amp;quot;Infobox_musical_artist/hCard_class&amp;quot;] = 326000,&lt;br /&gt;
[&amp;quot;Infobox_musical_composition&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;Infobox_name&amp;quot;] = 7600,&lt;br /&gt;
[&amp;quot;Infobox_name_module&amp;quot;] = 7700,&lt;br /&gt;
[&amp;quot;Infobox_newspaper&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Infobox_nobility&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_noble&amp;quot;] = 7300,&lt;br /&gt;
[&amp;quot;Infobox_officeholder&amp;quot;] = 236000,&lt;br /&gt;
[&amp;quot;Infobox_officeholder/office&amp;quot;] = 242000,&lt;br /&gt;
[&amp;quot;Infobox_official_post&amp;quot;] = 8500,&lt;br /&gt;
[&amp;quot;Infobox_organization&amp;quot;] = 38000,&lt;br /&gt;
[&amp;quot;Infobox_pageant_titleholder&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;Infobox_park&amp;quot;] = 8000,&lt;br /&gt;
[&amp;quot;Infobox_person&amp;quot;] = 505000,&lt;br /&gt;
[&amp;quot;Infobox_person/Wikidata&amp;quot;] = 4700,&lt;br /&gt;
[&amp;quot;Infobox_person/height&amp;quot;] = 106000,&lt;br /&gt;
[&amp;quot;Infobox_person/length&amp;quot;] = 7200,&lt;br /&gt;
[&amp;quot;Infobox_person/weight&amp;quot;] = 68000,&lt;br /&gt;
[&amp;quot;Infobox_philosopher&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_planet&amp;quot;] = 4700,&lt;br /&gt;
[&amp;quot;Infobox_play&amp;quot;] = 4300,&lt;br /&gt;
[&amp;quot;Infobox_political_party&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Infobox_power_station&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_prepared_food&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_professional_wrestler&amp;quot;] = 4500,&lt;br /&gt;
[&amp;quot;Infobox_professional_wrestling_event&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_protected_area&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Infobox_protein_family&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_publisher&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Infobox_racehorse&amp;quot;] = 5600,&lt;br /&gt;
[&amp;quot;Infobox_racing_driver&amp;quot;] = 4500,&lt;br /&gt;
[&amp;quot;Infobox_racing_driver_series_section&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Infobox_radio_show&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Infobox_radio_station&amp;quot;] = 22000,&lt;br /&gt;
[&amp;quot;Infobox_rail&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_rail_line&amp;quot;] = 7500,&lt;br /&gt;
[&amp;quot;Infobox_rail_service&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_rail_service/doc&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_reality_competition_season&amp;quot;] = 3800,&lt;br /&gt;
[&amp;quot;Infobox_record_label&amp;quot;] = 4000,&lt;br /&gt;
[&amp;quot;Infobox_recurring_event&amp;quot;] = 6700,&lt;br /&gt;
[&amp;quot;Infobox_religious_biography&amp;quot;] = 5900,&lt;br /&gt;
[&amp;quot;Infobox_religious_building&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Infobox_religious_building/color&amp;quot;] = 19000,&lt;br /&gt;
[&amp;quot;Infobox_restaurant&amp;quot;] = 3500,&lt;br /&gt;
[&amp;quot;Infobox_river&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_river/calcunit&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_river/discharge&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_river/row-style&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_river/source&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_road&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Infobox_road/meta/mask/category&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Infobox_road/meta/mask/country&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Infobox_road/styles.css&amp;quot;] = 26000,&lt;br /&gt;
[&amp;quot;Infobox_road_small&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_rockunit&amp;quot;] = 6400,&lt;br /&gt;
[&amp;quot;Infobox_royalty&amp;quot;] = 23000,&lt;br /&gt;
[&amp;quot;Infobox_royalty/short_description&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_rugby_biography&amp;quot;] = 17000,&lt;br /&gt;
[&amp;quot;Infobox_rugby_biography/correct_date&amp;quot;] = 17000,&lt;br /&gt;
[&amp;quot;Infobox_rugby_biography/depcheck&amp;quot;] = 17000,&lt;br /&gt;
[&amp;quot;Infobox_rugby_league_biography&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Infobox_rugby_league_biography/PLAYER&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Infobox_rugby_team&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_sailboat_specifications&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_saint&amp;quot;] = 5200,&lt;br /&gt;
[&amp;quot;Infobox_school&amp;quot;] = 39000,&lt;br /&gt;
[&amp;quot;Infobox_school/short_description&amp;quot;] = 39000,&lt;br /&gt;
[&amp;quot;Infobox_school_district&amp;quot;] = 5800,&lt;br /&gt;
[&amp;quot;Infobox_school_district/styles.css&amp;quot;] = 5800,&lt;br /&gt;
[&amp;quot;Infobox_scientist&amp;quot;] = 51000,&lt;br /&gt;
[&amp;quot;Infobox_service_record&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_settlement&amp;quot;] = 567000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/areadisp&amp;quot;] = 242000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/columns&amp;quot;] = 97000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/columns/styles.css&amp;quot;] = 97000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/densdisp&amp;quot;] = 443000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/impus&amp;quot;] = 83000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/lengthdisp&amp;quot;] = 172000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/link&amp;quot;] = 97000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/metric&amp;quot;] = 215000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/pref&amp;quot;] = 298000,&lt;br /&gt;
[&amp;quot;Infobox_settlement/styles.css&amp;quot;] = 567000,&lt;br /&gt;
[&amp;quot;Infobox_ship_begin&amp;quot;] = 41000,&lt;br /&gt;
[&amp;quot;Infobox_ship_career&amp;quot;] = 37000,&lt;br /&gt;
[&amp;quot;Infobox_ship_characteristics&amp;quot;] = 41000,&lt;br /&gt;
[&amp;quot;Infobox_ship_class_overview&amp;quot;] = 4200,&lt;br /&gt;
[&amp;quot;Infobox_ship_image&amp;quot;] = 41000,&lt;br /&gt;
[&amp;quot;Infobox_shopping_mall&amp;quot;] = 3600,&lt;br /&gt;
[&amp;quot;Infobox_short_story&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_skier&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Infobox_soap_character&amp;quot;] = 3000,&lt;br /&gt;
[&amp;quot;Infobox_software&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Infobox_software/simple&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Infobox_song&amp;quot;] = 78000,&lt;br /&gt;
[&amp;quot;Infobox_song/color&amp;quot;] = 78000,&lt;br /&gt;
[&amp;quot;Infobox_song/link&amp;quot;] = 78000,&lt;br /&gt;
[&amp;quot;Infobox_spaceflight&amp;quot;] = 3700,&lt;br /&gt;
[&amp;quot;Infobox_spaceflight/styles.css&amp;quot;] = 3700,&lt;br /&gt;
[&amp;quot;Infobox_sport_event&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_sports_competition_event&amp;quot;] = 19000,&lt;br /&gt;
[&amp;quot;Infobox_sports_competition_event/medalrow&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Infobox_sports_league&amp;quot;] = 5200,&lt;br /&gt;
[&amp;quot;Infobox_sports_season&amp;quot;] = 5800,&lt;br /&gt;
[&amp;quot;Infobox_sports_team&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_sportsperson&amp;quot;] = 112000,&lt;br /&gt;
[&amp;quot;Infobox_stadium&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;Infobox_station&amp;quot;] = 56000,&lt;br /&gt;
[&amp;quot;Infobox_station/doc&amp;quot;] = 56000,&lt;br /&gt;
[&amp;quot;Infobox_station/services&amp;quot;] = 56000,&lt;br /&gt;
[&amp;quot;Infobox_station/styles.css&amp;quot;] = 56000,&lt;br /&gt;
[&amp;quot;Infobox_street&amp;quot;] = 3800,&lt;br /&gt;
[&amp;quot;Infobox_swimmer&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_television&amp;quot;] = 59000,&lt;br /&gt;
[&amp;quot;Infobox_television/Short_description&amp;quot;] = 56000,&lt;br /&gt;
[&amp;quot;Infobox_television/styles.css&amp;quot;] = 59000,&lt;br /&gt;
[&amp;quot;Infobox_television_channel&amp;quot;] = 6300,&lt;br /&gt;
[&amp;quot;Infobox_television_episode&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Infobox_television_episode/styles.css&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Infobox_television_season&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Infobox_television_station&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Infobox_tennis_biography&amp;quot;] = 11000,&lt;br /&gt;
[&amp;quot;Infobox_tennis_event&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Infobox_tennis_tournament_event&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Infobox_tennis_tournament_year&amp;quot;] = 9700,&lt;br /&gt;
[&amp;quot;Infobox_tennis_tournament_year/color&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_tennis_tournament_year/footer&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Infobox_tournament_season&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Infobox_train&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_university&amp;quot;] = 27000,&lt;br /&gt;
[&amp;quot;Infobox_user&amp;quot;] = 2700,&lt;br /&gt;
[&amp;quot;Infobox_venue&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;Infobox_video_game&amp;quot;] = 28000,&lt;br /&gt;
[&amp;quot;Infobox_video_game/styles.css&amp;quot;] = 28000,&lt;br /&gt;
[&amp;quot;Infobox_volleyball_biography&amp;quot;] = 5600,&lt;br /&gt;
[&amp;quot;Infobox_weapon&amp;quot;] = 7500,&lt;br /&gt;
[&amp;quot;Infobox_weather_event&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_weather_event/Effects&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_weather_event/Footer&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_weather_event/History&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_weather_event/meteorology&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Infobox_weather_event/styles.css&amp;quot;] = 2400,&lt;br /&gt;
[&amp;quot;Infobox_website&amp;quot;] = 7800,&lt;br /&gt;
[&amp;quot;Infobox_writer&amp;quot;] = 41000,&lt;br /&gt;
[&amp;quot;Information&amp;quot;] = 97000,&lt;br /&gt;
[&amp;quot;Information/styles.css&amp;quot;] = 97000,&lt;br /&gt;
[&amp;quot;Inlang&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Inline&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Inline_block&amp;quot;] = 4900,&lt;br /&gt;
[&amp;quot;Inprogress&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Input_link&amp;quot;] = 32000,&lt;br /&gt;
[&amp;quot;Instagram&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Interlanguage_link&amp;quot;] = 180000,&lt;br /&gt;
[&amp;quot;Interlanguage_link_multi&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Internet_Archive_author&amp;quot;] = 19000,&lt;br /&gt;
[&amp;quot;Internet_Archive_film&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Intitle&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Iptalk&amp;quot;] = 17000,&lt;br /&gt;
[&amp;quot;IranCensus2006&amp;quot;] = 45000,&lt;br /&gt;
[&amp;quot;IranNCSGN&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Iran_Census_2006&amp;quot;] = 45000,&lt;br /&gt;
[&amp;quot;Irc&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Irish_place_name&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;IsIPAddress&amp;quot;] = 36000,&lt;br /&gt;
[&amp;quot;IsValidPageName&amp;quot;] = 2800,&lt;br /&gt;
[&amp;quot;Is_MLB_league&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Is_NPB_league&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Is_country_in_Central_America&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Is_country_in_the_Caribbean&amp;quot;] = 14000,&lt;br /&gt;
[&amp;quot;Is_interwiki_link&amp;quot;] = 6200,&lt;br /&gt;
[&amp;quot;Is_italic_taxon&amp;quot;] = 532000,&lt;br /&gt;
[&amp;quot;Is_redirect&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Is_time&amp;quot;] = 6100,&lt;br /&gt;
[&amp;quot;Isbn&amp;quot;] = 8500,&lt;br /&gt;
[&amp;quot;Isfdb_name&amp;quot;] = 3300,&lt;br /&gt;
[&amp;quot;Isfdb_title&amp;quot;] = 4200,&lt;br /&gt;
[&amp;quot;Isnum&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Isnumeric&amp;quot;] = 146000,&lt;br /&gt;
[&amp;quot;Iso2continent&amp;quot;] = 58000,&lt;br /&gt;
[&amp;quot;Iso2country&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Iso2country/article&amp;quot;] = 23000,&lt;br /&gt;
[&amp;quot;Iso2country/data&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Iso2nationality&amp;quot;] = 210000,&lt;br /&gt;
[&amp;quot;Issubst&amp;quot;] = 72000,&lt;br /&gt;
[&amp;quot;Isu_name&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Italic_dab2&amp;quot;] = 5600,&lt;br /&gt;
[&amp;quot;Italic_title&amp;quot;] = 270000,&lt;br /&gt;
[&amp;quot;Italic_title_prefixed&amp;quot;] = 8700,&lt;br /&gt;
[&amp;quot;Italics_title&amp;quot;] = 2200,&lt;br /&gt;
[&amp;quot;Italictitle&amp;quot;] = 3700,&lt;br /&gt;
[&amp;quot;Ivm&amp;quot;] = 5700,&lt;br /&gt;
[&amp;quot;Ivm/styles.css&amp;quot;] = 5700,&lt;br /&gt;
[&amp;quot;Ivmbox&amp;quot;] = 127000,&lt;br /&gt;
[&amp;quot;Ivory_messagebox&amp;quot;] = 152000,&lt;br /&gt;
[&amp;quot;Ivory_messagebox/styles.css&amp;quot;] = 6400,&lt;br /&gt;
[&amp;quot;Module:I18n/complex_date&amp;quot;] = 70000,&lt;br /&gt;
[&amp;quot;Module:IP&amp;quot;] = 135000,&lt;br /&gt;
[&amp;quot;Module:IPA&amp;quot;] = 149000,&lt;br /&gt;
[&amp;quot;Module:IPA/data&amp;quot;] = 134000,&lt;br /&gt;
[&amp;quot;Module:IPA/styles.css&amp;quot;] = 122000,&lt;br /&gt;
[&amp;quot;Module:IPA_symbol&amp;quot;] = 5500,&lt;br /&gt;
[&amp;quot;Module:IPA_symbol/data&amp;quot;] = 5500,&lt;br /&gt;
[&amp;quot;Module:IPAc-en&amp;quot;] = 50000,&lt;br /&gt;
[&amp;quot;Module:IPAc-en/data&amp;quot;] = 50000,&lt;br /&gt;
[&amp;quot;Module:IPAc-en/phonemes&amp;quot;] = 50000,&lt;br /&gt;
[&amp;quot;Module:IPAc-en/pronunciation&amp;quot;] = 50000,&lt;br /&gt;
[&amp;quot;Module:IPAddress&amp;quot;] = 190000,&lt;br /&gt;
[&amp;quot;Module:ISO_3166&amp;quot;] = 1060000,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/AT&amp;quot;] = 2500,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/BA&amp;quot;] = 3400,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/CA&amp;quot;] = 2600,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/CN&amp;quot;] = 2300,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/DE&amp;quot;] = 15000,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/ES&amp;quot;] = 3800,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/FR&amp;quot;] = 38000,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/GB&amp;quot;] = 6400,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/GR&amp;quot;] = 3400,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/IN&amp;quot;] = 30000,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/IR&amp;quot;] = 9900,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/National&amp;quot;] = 1060000,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/PL&amp;quot;] = 7500,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/RS&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/RU&amp;quot;] = 25000,&lt;br /&gt;
[&amp;quot;Module:ISO_3166/data/US&amp;quot;] = 86000,&lt;br /&gt;
[&amp;quot;Module:ISO_639_name&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Module:ISO_639_name/ISO_639-1&amp;quot;] = 9900,&lt;br /&gt;
[&amp;quot;Module:ISO_639_name/ISO_639-2&amp;quot;] = 3100,&lt;br /&gt;
[&amp;quot;Module:ISO_639_name/ISO_639-3_(dep)&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Module:ISO_639_name/ISO_639_deprecated&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Module:ISO_639_name/ISO_639_name_to_code&amp;quot;] = 5300,&lt;br /&gt;
[&amp;quot;Module:ISO_639_name/ISO_639_override&amp;quot;] = 20000,&lt;br /&gt;
[&amp;quot;Module:ISOdate&amp;quot;] = 70000,&lt;br /&gt;
[&amp;quot;Module:Icon&amp;quot;] = 609000,&lt;br /&gt;
[&amp;quot;Module:Icon/data&amp;quot;] = 609000,&lt;br /&gt;
[&amp;quot;Module:If_any_equal&amp;quot;] = 203000,&lt;br /&gt;
[&amp;quot;Module:If_empty&amp;quot;] = 3910000,&lt;br /&gt;
[&amp;quot;Module:If_in_page&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Module:If_not_given_or_empty&amp;quot;] = 7000,&lt;br /&gt;
[&amp;quot;Module:If_preview&amp;quot;] = 309000,&lt;br /&gt;
[&amp;quot;Module:If_preview/configuration&amp;quot;] = 309000,&lt;br /&gt;
[&amp;quot;Module:If_preview/styles.css&amp;quot;] = 309000,&lt;br /&gt;
[&amp;quot;Module:Import_style&amp;quot;] = 12000,&lt;br /&gt;
[&amp;quot;Module:In_lang&amp;quot;] = 368000,&lt;br /&gt;
[&amp;quot;Module:Indent&amp;quot;] = 4800,&lt;br /&gt;
[&amp;quot;Module:Infobox&amp;quot;] = 4260000,&lt;br /&gt;
[&amp;quot;Module:Infobox/dates&amp;quot;] = 72000,&lt;br /&gt;
[&amp;quot;Module:Infobox/styles.css&amp;quot;] = 4520000,&lt;br /&gt;
[&amp;quot;Module:Infobox/utilities&amp;quot;] = 2100,&lt;br /&gt;
[&amp;quot;Module:Infobox3cols&amp;quot;] = 305000,&lt;br /&gt;
[&amp;quot;Module:InfoboxImage&amp;quot;] = 4600000,&lt;br /&gt;
[&amp;quot;Module:Infobox_body_of_water_tracking&amp;quot;] = 18000,&lt;br /&gt;
[&amp;quot;Module:Infobox_cyclist_tracking&amp;quot;] = 16000,&lt;br /&gt;
[&amp;quot;Module:Infobox_gene&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Module:Infobox_mapframe&amp;quot;] = 406000,&lt;br /&gt;
[&amp;quot;Module:Infobox_military_conflict&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Module:Infobox_military_conflict/styles.css&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Module:Infobox_multi-lingual_name&amp;quot;] = 21000,&lt;br /&gt;
[&amp;quot;Module:Infobox_multi-lingual_name/data&amp;quot;] = 21000,&lt;br /&gt;
[&amp;quot;Module:Infobox_power_station&amp;quot;] = 3200,&lt;br /&gt;
[&amp;quot;Module:Infobox_road&amp;quot;] = 26000,&lt;br /&gt;
[&amp;quot;Module:Infobox_road/browselinks&amp;quot;] = 25000,&lt;br /&gt;
[&amp;quot;Module:Infobox_road/errors&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Module:Infobox_road/length&amp;quot;] = 25000,&lt;br /&gt;
[&amp;quot;Module:Infobox_road/locations&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Module:Infobox_road/map&amp;quot;] = 25000,&lt;br /&gt;
[&amp;quot;Module:Infobox_road/route&amp;quot;] = 26000,&lt;br /&gt;
[&amp;quot;Module:Infobox_road/sections&amp;quot;] = 24000,&lt;br /&gt;
[&amp;quot;Module:Infobox_television&amp;quot;] = 59000,&lt;br /&gt;
[&amp;quot;Module:Infobox_television_disambiguation_check&amp;quot;] = 66000,&lt;br /&gt;
[&amp;quot;Module:Infobox_television_episode&amp;quot;] = 13000,&lt;br /&gt;
[&amp;quot;Module:Infobox_television_season_disambiguation_check&amp;quot;] = 9500,&lt;br /&gt;
[&amp;quot;Module:Infobox_television_season_name&amp;quot;] = 10000,&lt;br /&gt;
[&amp;quot;Module:Internet_Archive&amp;quot;] = 19000,&lt;br /&gt;
[&amp;quot;Module:IrelandByCountyCatNav&amp;quot;] = 3400,&lt;br /&gt;
[&amp;quot;Module:Is_article&amp;quot;] = 2000,&lt;br /&gt;
[&amp;quot;Module:Is_infobox_in_lead&amp;quot;] = 447000,&lt;br /&gt;
[&amp;quot;Module:Is_instance&amp;quot;] = 333000,&lt;br /&gt;
[&amp;quot;Module:Italic_title&amp;quot;] = 1150000,&lt;br /&gt;
[&amp;quot;Module:Italic_title2&amp;quot;] = 5600,&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Microformat_message&amp;diff=65788</id>
		<title>Template:Microformat message</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Microformat_message&amp;diff=65788"/>
		<updated>2024-08-16T20:33:25Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The [[Help:HTML in wikitext|HTML mark-up]] produced by this template includes {{#if:{{{type|}}} |{{{type}}} |an [[{{{format}}} microformat]]}} that makes {{{data}}} readily [[Parsing|parsable]] by computer programs. This aids tasks such as the cataloguing of articles and maintenance of databases. For more information about the use of microformats on Wikipedia, please visit [[Wikipedia:WikiProject Microformats|the Microformat WikiProject]].&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;{{#if:{{{subtemplates&amp;lt;includeonly&amp;gt;|&amp;lt;/includeonly&amp;gt;}}}&lt;br /&gt;
    | &amp;lt;div style=&amp;quot;margin-top:0.5em;margin-bottom:0.65em;&amp;quot;&amp;gt;&lt;br /&gt;
; {{large|Subtemplates}}&lt;br /&gt;
{{{subtemplates}}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Please do not remove instances of these subtemplates.&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;/div&amp;gt;}}&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;{{#if:{{{subsection1|}}}&lt;br /&gt;
    | &amp;lt;div style=&amp;quot;margin-top:0.5em;margin-bottom:0.65em;&amp;quot;&amp;gt;&amp;lt;!--(newline in case subsection begins with heading:)--&amp;gt;&lt;br /&gt;
{{{subsection1}}}&lt;br /&gt;
&amp;lt;/div&amp;gt;}}&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;{{#if:{{{1&amp;lt;includeonly&amp;gt;|&amp;lt;/includeonly&amp;gt;}}} &amp;lt;!--(i.e. if at least one unnamed parameter supplied:)--&amp;gt;&lt;br /&gt;
    | &amp;lt;div style=&amp;quot;margin-top:0.5em;margin-bottom:0.65em;&amp;quot;&amp;gt;&lt;br /&gt;
; {{large|Classes used}}&lt;br /&gt;
The [[HTML attribute|HTML class]]es of this microformat include:&lt;br /&gt;
: {{hlist&lt;br /&gt;
   |item_style=font-size:110%;{{{itemstyle|}}}&lt;br /&gt;
   |{{{1}}} |{{{2&amp;lt;includeonly&amp;gt;|&amp;lt;/includeonly&amp;gt;}}} |{{{3|&amp;lt;noinclude&amp;gt;{{nobold|……}}&amp;lt;/noinclude&amp;gt;}}}&lt;br /&gt;
   |{{{4|}}} |{{{5|}}} |{{{6|}}} |{{{7|}}} |{{{8|}}} |{{{9|}}} |{{{10|}}} |{{{11|}}} |{{{12|}}} |{{{13|}}} |{{{14|}}} |{{{15|}}} |{{{16|}}} |{{{17|}}} |{{{18|}}} |{{{19|}}} |{{{20|}}}&lt;br /&gt;
  }}  &amp;lt;/div&amp;gt;&lt;br /&gt;
{{longitem|style=line-height:1.3em|&#039;&#039;&#039;&#039;&#039;Please do not rename or remove these classes{{#if:{{{nocollapse&amp;lt;includeonly&amp;gt;|&amp;lt;/includeonly&amp;gt;}}} |&amp;lt;br/&amp;gt;nor collapse nested elements which use them}}.&#039;&#039;&#039;&#039;&#039;}}&amp;lt;!--&lt;br /&gt;
--&amp;gt;}}&amp;lt;!--(end #if:[1])--&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Campaignbox_Second_Punic_War&amp;diff=65786</id>
		<title>Template:Campaignbox Second Punic War</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Campaignbox_Second_Punic_War&amp;diff=65786"/>
		<updated>2024-08-16T20:33:25Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Campaignbox&lt;br /&gt;
| name      = Campaignbox Second Punic War&lt;br /&gt;
| title     = [[Second Punic War|{{Wrap|Second Punic War}}]]&lt;br /&gt;
| listclass = hlist &lt;br /&gt;
| battles   = &lt;br /&gt;
; Prelude&lt;br /&gt;
* [[Siege of Saguntum|Saguntum]]&lt;br /&gt;
* [[Battle of Rhone Crossing|Rhone]]&lt;br /&gt;
* [[Hannibal&#039;s crossing of the Alps|Crossing of the Alps]]&lt;br /&gt;
; Italy&lt;br /&gt;
* [[Battle of Ticinus|Ticinus]]&lt;br /&gt;
* [[Battle of the Trebia|Trebia]]&lt;br /&gt;
* [[Siege of Mutina (218 BC)|Mutina]]&lt;br /&gt;
* [[Battle of Placentia (217 BC)|Placentia]]&lt;br /&gt;
* [[Battle of Victumulae|Victumulae]]&lt;br /&gt;
* [[Battle of Lake Trasimene|Lake Trasimene]]&lt;br /&gt;
* [[Battle of Umbrian Lake|Umbrian Lake]]&lt;br /&gt;
* [[Hannibal&#039;s crossing of the Apennines|Crossing of the Apennines]]&lt;br /&gt;
* [[Battle of Ager Falernus|Ager Falernus]]&lt;br /&gt;
* [[Battle of Geronium|Geronium]]&lt;br /&gt;
* [[Battle of Cannae|Cannae]]&lt;br /&gt;
* [[Battle of Silva Litana|Silva Litana]]&lt;br /&gt;
* [[Battle of Nola (216 BC)|1st Nola]]&lt;br /&gt;
* [[Siege of Nuceria Alfaterna|Nuceria Alfaterna]]&lt;br /&gt;
* [[Siege of Casilinum (216–215 BC)|1st Casilinum]]&lt;br /&gt;
* [[Battle of Hamae|Hamae]]&lt;br /&gt;
* [[Siege of Petelia|1st Petelia]]&lt;br /&gt;
* [[Battle of Cumae (215 BC)|Cumae]]&lt;br /&gt;
* [[Battle of Nola (215 BC)|2nd Nola]]&lt;br /&gt;
* [[Battle of Beneventum (214 BC)|1st Beneventum]]&lt;br /&gt;
* [[Battle of Nola (214 BC)|3rd Nola]]&lt;br /&gt;
* [[Siege of Casilinum (214 BC)|2nd Casilinum]]&lt;br /&gt;
* [[Battle of Lucania|Lucania]]&lt;br /&gt;
* [[Siege of Arpi|Arpi]]&lt;br /&gt;
* [[Battle of Tarentum (212 BC)|1st Tarentum]]&lt;br /&gt;
* [[Battle of Beneventum (212 BC)|2nd Beneventum]]&lt;br /&gt;
* [[Battle of Campi Veteres|Campi Veteres]]&lt;br /&gt;
* [[Battle of Capua|1st Capua]]&lt;br /&gt;
* [[Battle of the Silarus|Silarus]]&lt;br /&gt;
* [[Battle of Herdonia (212 BC)|1st Herdonia]]&lt;br /&gt;
* [[Siege of Capua (211 BC)|2nd Capua]]&lt;br /&gt;
* [[Hannibal&#039;s raid to Rome|Rome]]&lt;br /&gt;
* [[Battle of Sapriportis|Sapriportis]]&lt;br /&gt;
* [[Battle of Herdonia (210 BC)|2nd Herdonia]]&lt;br /&gt;
* [[Battle of Numistro|Numistro]]&lt;br /&gt;
* [[Battle of Canusium|Canusium]]&lt;br /&gt;
* [[Siege of Manduria|Manduria]]&lt;br /&gt;
* [[Siege of Caulonia|Caulonia]]&lt;br /&gt;
* [[Battle of Tarentum (209 BC)|2nd Tarentum]]&lt;br /&gt;
* [[Battle of Locri (208 BC)|Locri]]&lt;br /&gt;
* [[Battle of Petelia|2nd Petelia]]&lt;br /&gt;
* [[Battle of Venusia|Venusia]]&lt;br /&gt;
* [[Battle of Grumentum|Grumentum]]&lt;br /&gt;
* [[Battle of the Metaurus|Metaurus]]&lt;br /&gt;
* [[Battle of Crotona|Crotona]]&lt;br /&gt;
* [[Battle of Insubria|Insubria]]&lt;br /&gt;
; Iberia&lt;br /&gt;
* [[Battle of Cissa|Cissa]]&lt;br /&gt;
* [[Battle of Ebro River|Ebro River]]&lt;br /&gt;
* [[Battle of Ibera|Ibera]]&lt;br /&gt;
* [[Siege of Illiturgis|Illiturgis]]&lt;br /&gt;
* [[Battle of Munda (214 BC)|Munda]]&lt;br /&gt;
* [[Battle of Orongi|Orongi]]&lt;br /&gt;
* [[Battle of the Upper Baetis|Upper Baetis]]&lt;br /&gt;
* [[Battle of New Carthage|1st New Carthage]]&lt;br /&gt;
* [[Battle of Baria|Baria]]&lt;br /&gt;
* [[Battle of Baecula|Baecula]]&lt;br /&gt;
* [[Battle of Ilipa|Ilipa]]&lt;br /&gt;
* [[Mutiny at Sucro|Sucro]]&lt;br /&gt;
* [[Battle of Carteia|1st Carteia]]&lt;br /&gt;
* [[Battle of Carteia (naval)|2nd Carteia]]&lt;br /&gt;
* [[Battle of Cartagena (206 BC)|2nd New Carthage]]&lt;br /&gt;
; Sicily and Sardinia&lt;br /&gt;
* [[Battle of Lilybaeum|Lilybaeum]]&lt;br /&gt;
* [[Capture of Malta (218 BC)|Malta]]&lt;br /&gt;
* [[Battle of Decimomannu|Decimomannu]]&lt;br /&gt;
* [[Battle of Leontini|Leontini]]&lt;br /&gt;
* [[Siege of Syracuse (213–212 BC)|Syracuse]]&lt;br /&gt;
* [[Battle of Himera (211 BC)|Himera]]&lt;br /&gt;
* [[Siege of Agrigentum (210 BC)|Agrigentum]]&lt;br /&gt;
; North Africa&lt;br /&gt;
* [[Siege of Utica (204 BC)|1st Utica]]&lt;br /&gt;
* [[Battle of Utica (203 BC)|2nd Utica]]&lt;br /&gt;
* [[Battle of the Great Plains|Great Plains]]&lt;br /&gt;
* [[Battle of Cirta|Cirta]]&lt;br /&gt;
* [[Battle of Zama|Zama]]&lt;br /&gt;
&lt;br /&gt;
}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Punic Wars navigational boxes|Second Punic War]]&lt;br /&gt;
[[Category:Ancient Rome campaignbox templates|Campaign]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Country_data_Electorate_of_Saxony&amp;diff=65784</id>
		<title>Template:Country data Electorate of Saxony</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Country_data_Electorate_of_Saxony&amp;diff=65784"/>
		<updated>2024-08-16T20:33:25Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{{1&amp;lt;noinclude&amp;gt;|country showdata&amp;lt;/noinclude&amp;gt;}}}&lt;br /&gt;
| alias = Electorate of Saxony&lt;br /&gt;
| shortname alias = Saxony&lt;br /&gt;
| flag alias = Flag of Electoral Saxony.svg&lt;br /&gt;
| size = {{{size|}}}&lt;br /&gt;
| name = {{{name|}}}&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
| related1 = Kingdom of Saxony&lt;br /&gt;
| related2 = Saxony&lt;br /&gt;
| cat = Saxony electorate&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Campaignbox_Punic_Wars&amp;diff=65782</id>
		<title>Template:Campaignbox Punic Wars</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Campaignbox_Punic_Wars&amp;diff=65782"/>
		<updated>2024-08-16T20:33:22Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Campaignbox&lt;br /&gt;
| name = Campaignbox Punic Wars&lt;br /&gt;
| title = [[Punic Wars]]&lt;br /&gt;
| listclass = hlist &lt;br /&gt;
| battles = &lt;br /&gt;
* [[First Punic War|First]]&lt;br /&gt;
* [[Mercenary War|Mercenary]]&lt;br /&gt;
* [[Second Punic War|Second]]&lt;br /&gt;
* [[Third Punic War|Third]]&lt;br /&gt;
}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Punic Wars navigational boxes|Punic wars]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Infobox_military_operation&amp;diff=65780</id>
		<title>Template:Infobox military operation</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Infobox_military_operation&amp;diff=65780"/>
		<updated>2024-08-16T20:33:21Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox&lt;br /&gt;
|bodyclass = vevent&lt;br /&gt;
|bodystyle = {{WPMILHIST Infobox style|main_box_raw}}&lt;br /&gt;
|abovestyle = {{WPMILHIST Infobox style|header_raw}}&lt;br /&gt;
|aboveclass = summary&lt;br /&gt;
| headerstyle = {{WPMILHIST Infobox style|header_raw}}&lt;br /&gt;
|above = {{if empty|{{{title|}}}|{{{name|}}}|{{PAGENAMEBASE}}}}&lt;br /&gt;
|subheaderstyle = {{WPMILHIST Infobox style|sub_header_raw}}&lt;br /&gt;
|subheader = {{br separated entries|{{{subtitle|}}}|{{#if:{{{partof|}}}{{{conflict|}}}|Part of {{if empty|{{{conflict|}}}|{{{partof|}}}}} }}}}&lt;br /&gt;
|labelstyle = padding-right: 1em;&lt;br /&gt;
|imagestyle = {{WPMILHIST Infobox style|image_box_raw}}&lt;br /&gt;
|image = {{#invoke:InfoboxImage|InfoboxImage|image={{{image|}}}|size={{{image_size|}}}|upright={{{image_upright|1}}}|alt={{{alt|}}}}}&lt;br /&gt;
|caption = {{{caption|}}}&lt;br /&gt;
&lt;br /&gt;
| label1 = {{#if:{{{scope|}}}|Operational scope|Type}}&lt;br /&gt;
| data1 = {{if empty|{{{scope|}}}|{{{type|}}}}}&lt;br /&gt;
&lt;br /&gt;
| label2 = Location{{#if:{{{location2|}}}|s}}&lt;br /&gt;
| data2 = {{br separated entries&lt;br /&gt;
 |1 = {{#if:{{{location|{{{place|}}}}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location|{{{place|}}}}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |2 = {{{coordinates|}}}&lt;br /&gt;
 |3 = {{#if:{{{location2|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location2|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |4 = {{#if:{{{location2|}}}|{{{coordinates2|}}}}}&lt;br /&gt;
 |5 = {{#if:{{{location3|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location3|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |6 = {{#if:{{{location3|}}}|{{{coordinates3|}}}}}&lt;br /&gt;
 |7 = {{#if:{{{location4|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location4|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |8 = {{#if:{{{location4|}}}|{{{coordinates4|}}}}}&lt;br /&gt;
 |9 = {{#if:{{{location5|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location5|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |10= {{#if:{{{location5|}}}|{{{coordinates5|}}}}}&lt;br /&gt;
 |11= {{#if:{{{location6|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location6|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |12= {{#if:{{{location6|}}}|{{{coordinates6|}}}}}&lt;br /&gt;
 |13= {{#if:{{{location7|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location7|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |14= {{#if:{{{location7|}}}|{{{coordinates7|}}}}}&lt;br /&gt;
 |15= {{#if:{{{location8|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location8|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |16= {{#if:{{{location8|}}}|{{{coordinates8|}}}}}&lt;br /&gt;
 |17= {{#if:{{{location9|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location9|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |18= {{#if:{{{location9|}}}|{{{coordinates9|}}}}}&lt;br /&gt;
 |19= {{#if:{{{location10|}}}|&amp;lt;div style=&amp;quot;display:inline;&amp;quot; class=&amp;quot;location&amp;quot;&amp;gt;{{{location10|}}}&amp;lt;/div&amp;gt;}}&lt;br /&gt;
 |20= {{#if:{{{location10|}}}|{{{coordinates10|}}}}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
| label3 = Planned&lt;br /&gt;
| data3 = {{{planned|}}}&lt;br /&gt;
&lt;br /&gt;
| label4 = Planned&amp;amp;nbsp;by&lt;br /&gt;
| data4 = {{{planned_by|}}}&lt;br /&gt;
&lt;br /&gt;
| label5 = Commanded&amp;amp;nbsp;by&lt;br /&gt;
| data5 = {{{commanded_by|}}}&lt;br /&gt;
&lt;br /&gt;
| label6 = {{#if:{{{target|}}}|Target|Objective}}&lt;br /&gt;
| data6 = {{if empty|{{{target|}}}|{{{objective|}}}}}&lt;br /&gt;
&lt;br /&gt;
| label7 = Date&lt;br /&gt;
| data7 = {{br separated entries&lt;br /&gt;
 |1 = {{if empty|{{{executed|}}}|{{{date|}}}}}&lt;br /&gt;
 |2 = {{{time|}}} &lt;br /&gt;
 |3 = {{#if:{{{time-begin|}}}|{{{time-begin}}} &amp;amp;ndash; {{{time-end|}}}}} &lt;br /&gt;
 }} {{#if:{{{timezone|}}}|({{{timezone}}})}} &lt;br /&gt;
&lt;br /&gt;
| label8 = Executed&amp;amp;nbsp;by&lt;br /&gt;
| data8 = {{if empty|{{{instigator|}}}|{{{executed_by|}}}}}&lt;br /&gt;
&lt;br /&gt;
| label9 = Outcome&lt;br /&gt;
| data9 = {{{outcome|}}}&lt;br /&gt;
&lt;br /&gt;
| label10 = Casualties&lt;br /&gt;
| data10 = {{if empty|{{{casualties|}}}|{{br separated entries&lt;br /&gt;
 |1 = {{#if:{{{fatalities|}}}|{{{fatalities|}}} killed}}&lt;br /&gt;
 |2 = {{#if:{{{injuries|}}}|{{{injuries|}}} injured}}&lt;br /&gt;
 }} }}&lt;br /&gt;
&lt;br /&gt;
| header27 = {{#if:{{{map_type|}}}|&amp;lt;nowiki /&amp;gt;}}&lt;br /&gt;
| data28 = {{#if:{{{map_type|}}}|&lt;br /&gt;
{{#if:{{{coordinates2|}}}|&lt;br /&gt;
{{Location map many|{{{map_type}}}|coordinates1={{if empty|{{{map_coord|}}} | {{{coordinates|}}} }}|width={{{map_size|220}}}|float=center|border=infobox|label1={{{map_label|}}}|caption={{{map_caption|Location within {{#invoke:Location map|data|{{{map_type}}}|name}} }}}&lt;br /&gt;
|coordinates2={{{coordinates2|}}}|label2={{{map_label2|}}}&lt;br /&gt;
{{#if:{{{coordinates3|}}}|{{!}}coordinates3={{{coordinates3|}}}{{!}}label3={{{map_label3|}}} }}&lt;br /&gt;
{{#if:{{{coordinates4|}}}|{{!}}coordinates4={{{coordinates4|}}}{{!}}label4={{{map_label4|}}} }}&lt;br /&gt;
{{#if:{{{coordinates5|}}}|{{!}}coordinates5={{{coordinates5|}}}{{!}}label5={{{map_label5|}}} }}&lt;br /&gt;
{{#if:{{{coordinates6|}}}|{{!}}coordinates6={{{coordinates6|}}}{{!}}label6={{{map_label6|}}} }}&lt;br /&gt;
{{#if:{{{coordinates7|}}}|{{!}}coordinates7={{{coordinates7|}}}{{!}}label7={{{map_label7|}}} }}&lt;br /&gt;
{{#if:{{{coordinates8|}}}|{{!}}coordinates8={{{coordinates8|}}}{{!}}label8={{{map_label8|}}} }}&lt;br /&gt;
{{#if:{{{coordinates9|}}}|{{!}}coordinates9={{{coordinates9|}}}{{!}}label9={{{map_label9|}}} }}&lt;br /&gt;
{{#if:{{{coordinates10|}}}|{{!}}coordinates10={{{coordinates10|}}}{{!}}label10={{{map_label10|}}} }}&lt;br /&gt;
}}&lt;br /&gt;
|{{Location map|{{{map_type}}}|coordinates={{if empty|{{{map_coord|}}} | {{{coordinates|}}} }}|width={{{map_size|220}}}|float=center|border=infobox|label={{{map_label|}}}|caption={{{map_caption|Location within {{#invoke:Location map|data|{{{map_type}}}|name}} }}} }}&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
}}{{{campaignbox|}}}{{#invoke:Check for unknown parameters|check|unknown={{main other|[[Category:Pages using infobox military operation with unknown parameters|_VALUE_{{PAGENAME}}]]}}|preview=Page using [[Template:Infobox military operation]] with unknown parameter &amp;quot;_VALUE_&amp;quot;|ignoreblank=y| alt | campaignbox | caption | casualties | commanded_by | conflict | coordinates | date | executed | executed_by | fatalities | image | image_size | image_upright | injuries | instigator | location | map_caption | map_coord | map_label | map_size | map_type | name | objective | outcome | partof | planned | planned_by | scope | subtitle | target | time | time-begin | time-end | timezone | title | type | coordinates2 | coordinates3 | coordinates4 | coordinates5 | coordinates6 | coordinates7 | coordinates8 | coordinates9 | coordinates10 | map_label2 | map_label3 | map_label4 | map_label5 | map_label6 | map_label7 | map_label8 | map_label9 | map_label10 | location2 | location3 | location4 | location5 | location6 | location7 | location8 | location9 | location10 }}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{template doc}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Flag_icon&amp;diff=65778</id>
		<title>Template:Flag icon</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Flag_icon&amp;diff=65778"/>
		<updated>2024-08-16T20:33:21Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{{safesubst&amp;lt;noinclude /&amp;gt;:#ifeq: {{Yesno-no|{{{noredlink|}}}}}|yes&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
   --&amp;gt;&amp;lt;/noinclude&amp;gt;|&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
          #Check for existence of Template: Country data foo before invoking it&lt;br /&gt;
      --&amp;gt;&amp;lt;/noinclude&amp;gt;{{safesubst&amp;lt;noinclude /&amp;gt;:#ifexist: Template: Country data {{{1|}}}&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
         --&amp;gt;&amp;lt;/noinclude&amp;gt;|&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
               # It exists, so proceed&lt;br /&gt;
           --&amp;gt;&amp;lt;/noinclude&amp;gt;{{country data {{{1|}}}|flag icon/core|variant={{{variant|{{{2|}}}}}}|size={{{size|}}}}}&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
         --&amp;gt;&amp;lt;/noinclude&amp;gt;|&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
               # It doesn&#039;t exist, so do nothing&lt;br /&gt;
      --&amp;gt;&amp;lt;/noinclude&amp;gt;}}&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
   --&amp;gt;&amp;lt;/noinclude&amp;gt;|&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
          # DEFAULT call  Template: Country data {{{1|}}}&lt;br /&gt;
          # with no prior checks&lt;br /&gt;
     --&amp;gt;&amp;lt;/noinclude&amp;gt;{{country data {{{1|}}}|flag icon/core|variant={{{variant|{{{2|}}}}}}|size={{{size|}}}}}&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
          # Track use where &amp;quot;Template:Country data Foo&amp;quot; does not exist&lt;br /&gt;
     --&amp;gt;&amp;lt;/noinclude&amp;gt;{{safesubst&amp;lt;noinclude /&amp;gt;:#ifexist: Template:Country data {{{1|}}}||{{safesubst&amp;lt;noinclude /&amp;gt;:namespace detect showall&lt;br /&gt;
| 1 = &lt;br /&gt;
| 2 = [[Category:Flag icons missing country data templates]]&lt;br /&gt;
| user  = 1&lt;br /&gt;
| talk  = 1&lt;br /&gt;
| other = 2&lt;br /&gt;
}}}}&amp;lt;noinclude&amp;gt;&amp;lt;!--&lt;br /&gt;
--&amp;gt;&amp;lt;/noinclude&amp;gt;}}&amp;lt;/includeonly&amp;gt;{{safesubst&amp;lt;noinclude /&amp;gt;:#invoke:Check for unknown parameters|check|unknown={{main other|[[Category:Pages using flag icon template with unknown parameters|_VALUE_{{PAGENAME}}]]}}|preview=Page using [[Template:Flag icon]] with unknown parameter &amp;quot;_VALUE_&amp;quot;|ignoreblank=y| 1 | 2 | noredlink | size | variant }}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Fakeref&amp;diff=65776</id>
		<title>Template:Fakeref</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Fakeref&amp;diff=65776"/>
		<updated>2024-08-16T20:33:21Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Template:Dummy reference]]&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Dummy_reference&amp;diff=65774</id>
		<title>Template:Dummy reference</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Dummy_reference&amp;diff=65774"/>
		<updated>2024-08-16T20:33:21Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&amp;lt;templatestyles src=&amp;quot;Template:Fake link/styles.css&amp;quot; /&amp;gt;{{#ifeq:{{NAMESPACE}}|{{ns:0}}|{{Error|[[Template:Dummy reference]] is only for use in template documentation, guidelines and other Wikipedia-internal purposes. Do not use it in actual articles.}}[[Category:Articles with dummy references]]|&amp;lt;sup class=&amp;quot;reference nowrap ltr fakelinks&amp;quot;&amp;gt;[{{#ifeq:{{yes/no|{{{txtital|}}}}}|yes|&amp;lt;span style=&amp;quot;font-style:italic&amp;quot;&amp;gt;}}{{#if:{{{txtcol|}}}|&amp;lt;span style=&amp;quot;color:{{{txtcol|}}}&amp;quot;&amp;gt;}}{{{1|1}}}{{#if:{{{txtcol|}}}|&amp;lt;/span&amp;gt;}}{{#ifeq:{{yes/no|{{{txtital|}}}}}|yes|&amp;lt;/span&amp;gt;}}]&amp;lt;/sup&amp;gt;}}&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Country_data_Holy_Roman_Empire&amp;diff=65772</id>
		<title>Template:Country data Holy Roman Empire</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Country_data_Holy_Roman_Empire&amp;diff=65772"/>
		<updated>2024-08-16T20:33:20Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{{1&amp;lt;noinclude&amp;gt;|country showdata&amp;lt;/noinclude&amp;gt;}}}&lt;br /&gt;
| alias = Holy Roman Empire&lt;br /&gt;
| flag alias = Banner of the Holy Roman Emperor (after 1400).svg&lt;br /&gt;
| flag alias-1200 = Flag of the Holy Roman Empire (1200-1350).svg&lt;br /&gt;
| flag alias-old = Heiliges Römisches Reich - Reichssturmfahne vor 1433.svg&lt;br /&gt;
| size = {{{size|}}}&lt;br /&gt;
| name = {{{name|}}}&lt;br /&gt;
| variant = {{{variant|}}}&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
| var1 = 1200&lt;br /&gt;
| var2 = old&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:DOW&amp;diff=65770</id>
		<title>Template:DOW</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:DOW&amp;diff=65770"/>
		<updated>2024-08-16T20:33:14Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Template:Died of wounds]]&lt;br /&gt;
&lt;br /&gt;
{{Redirect category shell|&lt;br /&gt;
{{R from move}}&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Infobox_military_conflict/styles.css&amp;diff=65768</id>
		<title>Module:Infobox military conflict/styles.css</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Infobox_military_conflict/styles.css&amp;diff=65768"/>
		<updated>2024-08-16T20:33:14Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp-template}} */&lt;br /&gt;
@media all and (min-width:720px) {&lt;br /&gt;
	.desktop-float-right {&lt;br /&gt;
		box-sizing: border-box;&lt;br /&gt;
		float: right;&lt;br /&gt;
		clear: right;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox.vevent .status &amp;gt; p:first-child {&lt;br /&gt;
	margin: 0;&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Infobox_military_conflict&amp;diff=65766</id>
		<title>Module:Infobox military conflict</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Infobox_military_conflict&amp;diff=65766"/>
		<updated>2024-08-16T20:33:13Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;require(&#039;strict&#039;)&lt;br /&gt;
&lt;br /&gt;
local infoboxStyle = mw.loadData(&#039;Module:WPMILHIST Infobox style&#039;)&lt;br /&gt;
local templatestyles = &#039;Module:Infobox military conflict/styles.css&#039;&lt;br /&gt;
&lt;br /&gt;
local IMC = {}&lt;br /&gt;
IMC.__index = IMC&lt;br /&gt;
&lt;br /&gt;
function IMC:renderPerCombatant(builder, headerText, prefix, suffix)&lt;br /&gt;
	prefix = prefix or &#039;&#039;&lt;br /&gt;
	suffix = suffix or &#039;&#039;&lt;br /&gt;
	local colspans = {}&lt;br /&gt;
	&lt;br /&gt;
	-- This may result in colspans[1] getting set twice, but&lt;br /&gt;
	-- this is no big deal. The second set will be correct.&lt;br /&gt;
	local lastCombatant = 1&lt;br /&gt;
	&lt;br /&gt;
	for i = 1,self.combatants do&lt;br /&gt;
		if self.args[prefix .. i .. suffix] then&lt;br /&gt;
			colspans[lastCombatant] = i - lastCombatant&lt;br /&gt;
			lastCombatant = i&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local jointText = self.args[prefix .. (self.combatants + 1) .. suffix]&lt;br /&gt;
	&lt;br /&gt;
	if headerText and (colspans[1] or jointText) then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;th&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, self.combatants)&lt;br /&gt;
				:cssText(infoboxStyle.header_raw)&lt;br /&gt;
				:wikitext(headerText)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- The only time colspans[1] wouldn&#039;t be set is if no&lt;br /&gt;
	-- combatant has a field with the given prefix and suffix.&lt;br /&gt;
	if colspans[1] then&lt;br /&gt;
		-- Since each found argument set the colspan for the previous&lt;br /&gt;
		-- one, the final one wasn&#039;t set above, so set it now.&lt;br /&gt;
		colspans[lastCombatant] = self.combatants - lastCombatant + 1&lt;br /&gt;
		builder = builder:tag(&#039;tr&#039;)&lt;br /&gt;
		for i = 1,self.combatants do&lt;br /&gt;
			-- At this point, colspans[i] will be set for i=1 unconditionally, and for&lt;br /&gt;
			-- any other value of i where self.args[prefix .. i .. suffix] is set.&lt;br /&gt;
			if colspans[i] then&lt;br /&gt;
				builder:tag(&#039;td&#039;)&lt;br /&gt;
					-- don&#039;t bother emitting colspan=&amp;quot;1&amp;quot;&lt;br /&gt;
					:attr(&#039;colspan&#039;, colspans[i] ~= 1 and colspans[i] or nil)&lt;br /&gt;
					:css(&#039;width&#039;, math.floor(100 / self.combatants * colspans[i] + 0.5) .. &#039;%&#039;)&lt;br /&gt;
					-- no border on the right of the rightmost column&lt;br /&gt;
					:css(&#039;border-right&#039;, i ~= lastCombatant and infoboxStyle.internal_border or nil)&lt;br /&gt;
					-- no padding on the left of the leftmost column&lt;br /&gt;
					:css(&#039;padding-left&#039;, i ~= 1 and &#039;0.25em&#039; or nil)&lt;br /&gt;
					-- don&#039;t show the border if we&#039;re directly under a header&lt;br /&gt;
					:css(&#039;border-top&#039;, not headerText and infoboxStyle.internal_border or nil)&lt;br /&gt;
					:newline()&lt;br /&gt;
					:wikitext(self.args[prefix .. i .. suffix])&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if jointText then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, self.combatants)&lt;br /&gt;
				:css(&#039;text-align&#039;, &#039;center&#039;)&lt;br /&gt;
				-- don&#039;t show the border if we&#039;re directly under a header&lt;br /&gt;
				:css(&#039;border-top&#039;, (not headerText or colspans[1]) and infoboxStyle.internal_border or nil)&lt;br /&gt;
				:newline()&lt;br /&gt;
				:wikitext(jointText)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function IMC:renderHeaderTable(builder)&lt;br /&gt;
	builder = builder:tag(&#039;table&#039;)&lt;br /&gt;
		:css(&#039;width&#039;, &#039;100%&#039;)&lt;br /&gt;
		:css(&#039;margin&#039;, 0)&lt;br /&gt;
		:css(&#039;padding&#039;, 0)&lt;br /&gt;
		:css(&#039;border&#039;, 0)&lt;br /&gt;
		:css(&#039;display&#039;, &#039;inline-table&#039;)&lt;br /&gt;
&lt;br /&gt;
	if self.args.date then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;th&#039;)&lt;br /&gt;
				:css(&#039;padding-right&#039;, &#039;1em&#039;)&lt;br /&gt;
				:wikitext(&#039;Date&#039;)&lt;br /&gt;
			:done()&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:wikitext(self.args.date)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	builder = builder:tag(&#039;tr&#039;)&lt;br /&gt;
		:tag(&#039;th&#039;)&lt;br /&gt;
			:css(&#039;padding-right&#039;, &#039;1em&#039;)&lt;br /&gt;
			:wikitext(&#039;Location&#039;)&lt;br /&gt;
		:done()&lt;br /&gt;
		:tag(&#039;td&#039;)&lt;br /&gt;
			:tag(&#039;div&#039;)&lt;br /&gt;
				:addClass(&#039;location&#039;)&lt;br /&gt;
				:wikitext(self.args.place or &#039;{&amp;amp;#123;{place}&amp;amp;#125;}&#039;) -- hack so that people who don&#039;t know Lua know that this parameter is required&lt;br /&gt;
			:done()&lt;br /&gt;
	if self.args.coordinates then&lt;br /&gt;
		builder:wikitext(self.args.coordinates)&lt;br /&gt;
	end&lt;br /&gt;
	builder = builder:done():done()&lt;br /&gt;
&lt;br /&gt;
	-- only for &amp;quot;Putsch&amp;quot;&lt;br /&gt;
    if self.args.action then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;th&#039;)&lt;br /&gt;
				:css(&#039;padding-right&#039;, &#039;1em&#039;)&lt;br /&gt;
				:wikitext(self.args.action and &#039;Action&#039;)&lt;br /&gt;
			:done()&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:wikitext(self.args.action)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if self.args.status or self.args.result then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;th&#039;)&lt;br /&gt;
				:css(&#039;padding-right&#039;, &#039;1em&#039;)&lt;br /&gt;
				:wikitext(self.args.status and &#039;Status&#039; or &#039;Result&#039;)&lt;br /&gt;
			:done()&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:addClass(&#039;status&#039;)&lt;br /&gt;
				:newline()&lt;br /&gt;
				:wikitext(self.args.status or self.args.result)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if self.args.territory then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;th&#039;)&lt;br /&gt;
				:css(&#039;padding-right&#039;, &#039;1em&#039;)&lt;br /&gt;
				:wikitext(&#039;Territorial&amp;lt;br /&amp;gt;changes&#039;)&lt;br /&gt;
			:done()&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:newline()&lt;br /&gt;
				:wikitext(self.args.territory)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function IMC:render()&lt;br /&gt;
	local builder = mw.html.create()&lt;br /&gt;
	if self.args.campaignbox then&lt;br /&gt;
		-- this should be the same as using {{stack|clear=right|...}}&lt;br /&gt;
		builder:wikitext(self.frame:expandTemplate{ title = &#039;stack begin&#039;, args = { clear=&#039;true&#039;} })&lt;br /&gt;
	end&lt;br /&gt;
	builder = builder:tag(&#039;table&#039;)&lt;br /&gt;
		:addClass(&#039;infobox vevent&#039;)&lt;br /&gt;
		:cssText(infoboxStyle.main_box_raw)&lt;br /&gt;
		:css(&#039;width&#039;, self.args.width or nil)&lt;br /&gt;
&lt;br /&gt;
	builder:tag(&#039;tr&#039;)&lt;br /&gt;
		:tag(&#039;th&#039;)&lt;br /&gt;
			:addClass(&#039;summary&#039;)&lt;br /&gt;
			:attr(&#039;colspan&#039;, self.combatants)&lt;br /&gt;
			:cssText(infoboxStyle.header_raw)&lt;br /&gt;
			:wikitext(self.args.conflict or mw.title.getCurrentTitle().text)&lt;br /&gt;
	if self.args.partof then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, self.combatants)&lt;br /&gt;
				:cssText(infoboxStyle.sub_header_raw)&lt;br /&gt;
				:wikitext(&#039;Part of &#039; .. self.args.partof)&lt;br /&gt;
	end&lt;br /&gt;
	if self.args.image then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, self.combatants)&lt;br /&gt;
				:cssText(infoboxStyle.image_box_raw)&lt;br /&gt;
				:wikitext(string.format(&#039;%s%s%s&#039;,&lt;br /&gt;
					require(&#039;Module:InfoboxImage&#039;).InfoboxImage{args = {&lt;br /&gt;
						image = self.args.image,&lt;br /&gt;
						size = self.args.image_size,&lt;br /&gt;
						sizedefault = &#039;frameless&#039;,&lt;br /&gt;
						upright = 1,&lt;br /&gt;
						alt = self.args.alt&lt;br /&gt;
					}},&lt;br /&gt;
					self.args.caption and &#039;&amp;lt;br /&amp;gt;&#039; or &#039;&#039;,&lt;br /&gt;
					self.args.caption or &#039;&#039;&lt;br /&gt;
				))&lt;br /&gt;
	end&lt;br /&gt;
	self:renderHeaderTable(builder:tag(&#039;tr&#039;):tag(&#039;td&#039;):attr(&#039;colspan&#039;, self.combatants))&lt;br /&gt;
	self:renderPerCombatant(builder, self.args.combatants_header or &#039;Belligerents&#039;, &#039;combatant&#039;)&lt;br /&gt;
	-- can be un-hardcoded once gerrit:165108 is merged&lt;br /&gt;
	for _,v in ipairs{&#039;a&#039;,&#039;b&#039;,&#039;c&#039;,&#039;d&#039;} do&lt;br /&gt;
		self:renderPerCombatant(builder, nil, &#039;combatant&#039;, v)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	self:renderPerCombatant(builder, self.args.commanders_header or &#039;Commanders and leaders&#039;, &#039;commander&#039;)&lt;br /&gt;
	for _,v in ipairs{&#039;a&#039;,&#039;b&#039;,&#039;c&#039;,&#039;d&#039;} do&lt;br /&gt;
		self:renderPerCombatant(builder, nil, &#039;commander&#039;, v)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	self:renderPerCombatant(builder, self.args.units_header or &#039;Units involved&#039;, &#039;units&#039;)&lt;br /&gt;
	self:renderPerCombatant(builder, self.args.strengths_header or &#039;Strength&#039;, &#039;strength&#039;)&lt;br /&gt;
	self:renderPerCombatant(builder, self.args.polstrengths_header or &#039;Political support&#039;, &#039;polstrength&#039;)&lt;br /&gt;
	self:renderPerCombatant(builder, self.args.milstrengths_header or &#039;Military support&#039;, &#039;milstrength&#039;)&lt;br /&gt;
	self:renderPerCombatant(builder, self.args.casualties_header or &#039;Casualties and losses&#039;, &#039;casualties&#039;)&lt;br /&gt;
&lt;br /&gt;
	if self.args.notes then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, self.combatants)&lt;br /&gt;
				:css(&#039;border-top&#039;, infoboxStyle.section_border)&lt;br /&gt;
				:newline()&lt;br /&gt;
				:wikitext(self.args.notes)&lt;br /&gt;
	end&lt;br /&gt;
	if self.args.map_type and self.args.coordinates then&lt;br /&gt;
		builder:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:attr(&#039;colspan&#039;, self.combatants)&lt;br /&gt;
				:css(&#039;border-top&#039;, infoboxStyle.internal_border)&lt;br /&gt;
				:node(require(&#039;Module:Location map&#039;).main(self.frame, {&lt;br /&gt;
					self.args.map_type,&lt;br /&gt;
					relief = self.args.map_relief,&lt;br /&gt;
					coordinates = self.args.coordinates,&lt;br /&gt;
					width = self.args.map_size or 220,&lt;br /&gt;
					float = &#039;center&#039;,&lt;br /&gt;
					border = &#039;none&#039;,&lt;br /&gt;
					mark = self.args.map_mark,&lt;br /&gt;
					marksize = self.args.map_marksize or 8,&lt;br /&gt;
					label = self.args.map_label,&lt;br /&gt;
					alt = self.args.map_alt,&lt;br /&gt;
					caption = self.args.map_caption or (&#039;Location within &#039; &lt;br /&gt;
						.. (require(&#039;Module:Location map&#039;).data(self.frame, {self.args.map_type, &#039;name&#039;})))&lt;br /&gt;
				}))&lt;br /&gt;
	end&lt;br /&gt;
	builder = builder:done()&lt;br /&gt;
	if self.args.campaignbox then&lt;br /&gt;
		builder = builder:done()&lt;br /&gt;
		builder:wikitext(self.args.campaignbox .. self.frame:expandTemplate{ title = &#039;stack end&#039;})&lt;br /&gt;
	end&lt;br /&gt;
	return builder&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function IMC.new(frame, args)&lt;br /&gt;
	if not args then&lt;br /&gt;
		args = require(&#039;Module:Arguments&#039;).getArgs(frame, {wrappers = &#039;Template:Infobox military conflict&#039;})&lt;br /&gt;
	end&lt;br /&gt;
	local obj = {&lt;br /&gt;
		frame = frame,&lt;br /&gt;
		args = args&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	-- until gerrit:165108 is merged, there&#039;s still a cap on combatants, but as soon as it merges, we can update this little bit of code to uncap it&lt;br /&gt;
	-- also, don&#039;t try to make this more efficient, or references could be in the wrong order&lt;br /&gt;
	obj.combatants = 2&lt;br /&gt;
	for _,v in ipairs{&#039;&#039;, &#039;a&#039;, &#039;b&#039;, &#039;c&#039;, &#039;d&#039;} do&lt;br /&gt;
		for i = 1,5 do&lt;br /&gt;
			if args[&#039;combatant&#039; .. i .. v] then&lt;br /&gt;
				obj.combatants = math.max(obj.combatants, i)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return setmetatable(obj, IMC)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	return frame:extensionTag{ name = &#039;templatestyles&#039;, args = { src = templatestyles} } .. tostring(IMC.new(frame):render())&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Campaignbox&amp;diff=65764</id>
		<title>Template:Campaignbox</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Campaignbox&amp;diff=65764"/>
		<updated>2024-08-16T20:33:13Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{{#invoke:Military navigation|main&lt;br /&gt;
|name = {{safesubst:#if:{{{raw_name|}}} |{{{raw_name|}}} |{{safesubst:#if:{{{title|}}} |{{{name|}}} |}} }}&lt;br /&gt;
|state = {{{state|}}}&lt;br /&gt;
|border = {{{border|}}}&lt;br /&gt;
|title = &amp;lt;span style=&amp;quot;line-height:1.6em&amp;quot;&amp;gt;{{safesubst:#if:{{{title|}}}|{{{title}}}|{{{name}}}}}&amp;lt;/span&amp;gt;&lt;br /&gt;
|bodyclass = {{{bodyclass|}}}&lt;br /&gt;
|listclass = {{{listclass|}}}&lt;br /&gt;
|list1 = {{{battles|}}}&lt;br /&gt;
|below = {{{notes|}}}&lt;br /&gt;
}}{{#ifeq:{{NAMESPACE}}|Template|[[Category:Campaignbox templates]]}}&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:KIA&amp;diff=65762</id>
		<title>Template:KIA</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:KIA&amp;diff=65762"/>
		<updated>2024-08-16T20:33:13Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;amp;nbsp;[[&amp;lt;!---(link:)--&amp;gt;{{{1|Killed in action}}}&amp;lt;!--&lt;br /&gt;
       --&amp;gt;|&amp;lt;!--(label:)--&amp;gt;{{#ifeq:{{{alt|}}}|yes |(KIA) |&amp;lt;span style=&amp;quot;font-family:&#039;Times New Roman&#039;,&#039;Old English Text MT&#039;,serif&amp;quot;&amp;gt;{{#ifeq:{{{bold|}}}|no |&amp;amp;dagger; |&#039;&#039;&#039;&amp;amp;dagger;&#039;&#039;&#039;}}&amp;lt;/span&amp;gt;}}&amp;lt;!--&lt;br /&gt;
      --&amp;gt;]]&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Country_data_Sweden&amp;diff=65760</id>
		<title>Template:Country data Sweden</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Country_data_Sweden&amp;diff=65760"/>
		<updated>2024-08-16T20:33:13Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ {{{1&amp;lt;noinclude&amp;gt;|country showdata&amp;lt;/noinclude&amp;gt;}}}&lt;br /&gt;
| alias = Sweden&lt;br /&gt;
| flag alias = Flag of Sweden.svg&lt;br /&gt;
| flag alias-army = Naval Ensign of Sweden.svg&lt;br /&gt;
| flag alias-air force =Naval Ensign of Sweden.svg&lt;br /&gt;
| flag alias-1818 = Swedish and Norwegian merchant flag 1818-1844.svg&lt;br /&gt;
| flag alias-1844 = Swedish civil ensign (1844–1905).svg&lt;br /&gt;
| flag alias-1905 = Flag of Sweden (pre-1906).svg&lt;br /&gt;
| flag alias-naval = Naval Ensign of Sweden.svg&lt;br /&gt;
| flag alias-naval-1844 = Naval Ensign of Sweden (1844-1905).svg&lt;br /&gt;
| flag alias-naval-1815 = Ensign of Sweden and Norway (1815–1844).svg&lt;br /&gt;
| link alias-army = Swedish Army&lt;br /&gt;
| link alias-air force = Swedish Air Force&lt;br /&gt;
| link alias-naval = Swedish Navy&lt;br /&gt;
| flag alias-navy = Naval Ensign of Sweden.svg&lt;br /&gt;
| link alias-navy = Swedish Navy&lt;br /&gt;
| link alias-football = Sweden {{{mw|men&#039;s}}} {{#ifeq:{{{mw|}}}|Olympic||national}} {{{age|}}} football team&lt;br /&gt;
| border-army =&lt;br /&gt;
| border-air force = &lt;br /&gt;
| border-naval = &lt;br /&gt;
| border-navy = &lt;br /&gt;
| border-naval-1815 = &lt;br /&gt;
| border-naval-1844 = &lt;br /&gt;
| size = {{{size|}}}&lt;br /&gt;
| name = {{{name|}}}&lt;br /&gt;
| altlink = {{{altlink|}}}&lt;br /&gt;
| altvar = {{{altvar|}}}&lt;br /&gt;
| variant = {{{variant|}}}&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
| var1 = 1818&lt;br /&gt;
| var2 = 1844&lt;br /&gt;
| var3 = 1905&lt;br /&gt;
| var4 = naval-1844&lt;br /&gt;
| var5 = naval-1815&lt;br /&gt;
| redir1 = SWE&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Start_date&amp;diff=65758</id>
		<title>Template:Start date</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Start_date&amp;diff=65758"/>
		<updated>2024-08-16T20:32:59Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{{#if: {{{4|}}}&lt;br /&gt;
  |{{#if: {{{5|}}}&lt;br /&gt;
     |{{padleft:{{{4}}}|2|0}}:{{padleft:{{{5}}}|2|0}}{{#if: {{{6|}}}&lt;br /&gt;
                                                   |&amp;amp;#58;{{padleft:{{{6}}}|2|0}} }},&amp;amp;#32;}} }}&amp;lt;!--ABOVE FOR TIME; BELOW FOR DATE&lt;br /&gt;
--&amp;gt;{{#if: {{{1|}}}&lt;br /&gt;
     |{{#if: {{{2|}}}&lt;br /&gt;
        |{{#if: {{{3|}}}&lt;br /&gt;
           |{{#if: {{{df|}}}|{{#expr:{{{3}}}}}&amp;amp;nbsp;{{MONTHNAME|{{{2}}}}}|{{MONTHNAME|{{{2}}}}}&amp;amp;nbsp;{{#expr:{{{3}}}}},}}&amp;amp;nbsp;{{{1}}}|{{MONTHNAME|{{{2}}}}}&amp;amp;nbsp;{{{1}}}}}|{{{1}}}}}}}{{#if: {{{7|}}}&lt;br /&gt;
              |&amp;amp;#32;({{#ifeq: {{{7}}}|Z|UTC|{{{7}}}}})}}&amp;lt;!-- BELOW FOR hCalendar&lt;br /&gt;
--&amp;gt;&amp;lt;span style=&amp;quot;display:none&amp;quot;&amp;gt;&amp;amp;#160;(&amp;lt;span class=&amp;quot;bday dtstart published updated itvstart&amp;quot;&amp;gt;{{#if: {{{1|}}}&lt;br /&gt;
  | {{{1}}}{{#if: {{{2|}}}&lt;br /&gt;
     | -{{padleft:{{{2}}}|2|0}}{{#if: {{{3|}}}&lt;br /&gt;
        | -{{padleft:{{{3}}}|2|0}} }} }}&amp;lt;!--&lt;br /&gt;
--&amp;gt;{{#if: {{{4|}}}&lt;br /&gt;
     | T{{padleft:{{{4}}}|2|0}}{{#if: {{{5|}}}&lt;br /&gt;
        | &amp;amp;#58;{{padleft:{{{5}}}|2|0}}{{#if: {{{6|}}}&lt;br /&gt;
           | &amp;amp;#58;{{padleft:{{{6}}}|2|0}} }} }} }} }}{{{7|}}}&amp;lt;/span&amp;gt;)&amp;lt;/span&amp;gt;&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:WPMILHIST_Infobox_style&amp;diff=65756</id>
		<title>Module:WPMILHIST Infobox style</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:WPMILHIST_Infobox_style&amp;diff=65756"/>
		<updated>2024-08-16T20:32:59Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local retval = {&lt;br /&gt;
	main_box_raw_auto_width = &#039;border-spacing:2px;&#039;,&lt;br /&gt;
	header_raw = &#039;background-color:#C3D6EF;color:inherit;text-align:center;vertical-align:middle;font-size:110%;&#039;,&lt;br /&gt;
	sub_header_raw = &#039;background-color:#DCDCDC;color:inherit;text-align:center;vertical-align:middle;&#039;,&lt;br /&gt;
	header_color = &#039;background-color:#C3D6EF;color:inherit;&#039;,&lt;br /&gt;
	nav_box = &#039;margin:0;float:right;clear:right;width:25.5em;margin-bottom:0.5em;margin-left:1em;&#039;,&lt;br /&gt;
	nav_box_child = &#039;margin:0;float:right;clear:right;width:25em;margin-bottom:0.5em;&#039;,&lt;br /&gt;
	nav_box_wide =  &#039;&#039;,&lt;br /&gt;
	nav_box_header = &#039;background-color:#C3D6EF;color:inherit;&#039;,&lt;br /&gt;
	nav_box_wide_header = &#039;background-color:#C3D6EF;color:inherit;&#039;,&lt;br /&gt;
	nav_box_label = &#039;background-color:#DCDCDC;color:inherit;&#039;,&lt;br /&gt;
	image_box_raw = &#039;text-align:center;border-bottom:1px solid #aaa;line-height:1.5em;&#039;,&lt;br /&gt;
	image_box_plain_raw = &#039;text-align:center;line-height:1.5em;&#039;,&lt;br /&gt;
	internal_border = &#039;1px dotted #aaa;&#039;,&lt;br /&gt;
	section_border = &#039;1px solid #aaa;&#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
retval.main_box_raw = &#039;width:25.5em;&#039; .. retval.main_box_raw_auto_width&lt;br /&gt;
retval.header_bar = &#039;style=&amp;quot;&#039; .. retval.header_raw .. &#039;&amp;quot;&#039;&lt;br /&gt;
retval.sub_header_bar = &#039;style=&amp;quot;&#039; .. retval.sub_header_raw .. &#039;&amp;quot;&#039;&lt;br /&gt;
retval.image_box = &#039;style=&amp;quot;&#039; .. retval.image_box_raw .. &#039;&amp;quot;&#039;&lt;br /&gt;
retval.image_box_plain = &#039;style=&amp;quot;&#039; .. retval.image_box_plain_raw .. &#039;&amp;quot;&#039;&lt;br /&gt;
&lt;br /&gt;
return retval&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Military_navigation&amp;diff=65754</id>
		<title>Module:Military navigation</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Military_navigation&amp;diff=65754"/>
		<updated>2024-08-16T20:32:59Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local p = { }&lt;br /&gt;
&lt;br /&gt;
local Navbox = require(&#039;Module:Navbox&#039;)&lt;br /&gt;
local Styles = require(&#039;Module:WPMILHIST Infobox style&#039;)&lt;br /&gt;
&lt;br /&gt;
local function isblank(s)&lt;br /&gt;
	return (not s) or s == &#039;&#039;&lt;br /&gt;
end&lt;br /&gt;
local function ifnotblank(s,p,t)&lt;br /&gt;
	return (s and s ~= &#039;&#039;) and (p..s) or t&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
    local args = { }&lt;br /&gt;
    local pargs = frame:getParent().args&lt;br /&gt;
	local fargs = frame.args&lt;br /&gt;
    local sargs = {}&lt;br /&gt;
    local tcats = &#039;&#039;&lt;br /&gt;
&lt;br /&gt;
	-- process bodystyle and titlestyle&lt;br /&gt;
	local style = fargs[&#039;style&#039;] or pargs[&#039;style&#039;] or &#039;&#039;&lt;br /&gt;
	if style == &#039;wide&#039; then&lt;br /&gt;
		args[&#039;titlestyle&#039;] = Styles[&#039;nav_box_wide_header&#039;]&lt;br /&gt;
		args[&#039;bodystyle&#039;] = Styles[&#039;nav_box_wide&#039;]&lt;br /&gt;
	else&lt;br /&gt;
		args[&#039;titlestyle&#039;] = Styles[&#039;nav_box_header&#039;]&lt;br /&gt;
		local border = fargs[&#039;border&#039;] or pargs[&#039;border&#039;] or &#039;&#039;&lt;br /&gt;
		if border == &#039;child&#039; or border == &#039;subgroup&#039; then&lt;br /&gt;
			args[&#039;bodystyle&#039;] = Styles[&#039;nav_box_child&#039;]&lt;br /&gt;
			tcats = tcats .. &#039;[[Category:Pages using military navigation subgroups without wide style]]&#039;&lt;br /&gt;
		else&lt;br /&gt;
			args[&#039;bodystyle&#039;] = Styles[&#039;nav_box&#039;]&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	sargs[&#039;titlestyle&#039;] = 1&lt;br /&gt;
	sargs[&#039;bodystyle&#039;] = 1&lt;br /&gt;
&lt;br /&gt;
	-- process groupstyle, abovestyle, belowstyle&lt;br /&gt;
	args[&#039;groupstyle&#039;] = Styles[&#039;nav_box_label&#039;] .. (fargs[&#039;groupstyle&#039;] or pargs[&#039;groupstyle&#039;] or &#039;&#039;)&lt;br /&gt;
	sargs[&#039;groupstyle&#039;] = 1&lt;br /&gt;
	args[&#039;abovestyle&#039;] = Styles[&#039;nav_box_label&#039;] .. (fargs[&#039;abovestyle&#039;] or pargs[&#039;abovestyle&#039;] or &#039;&#039;)&lt;br /&gt;
	sargs[&#039;abovestyle&#039;] = 1&lt;br /&gt;
	args[&#039;belowstyle&#039;] = Styles[&#039;nav_box_label&#039;] .. (fargs[&#039;belowstyle&#039;] or pargs[&#039;belowstyle&#039;] or &#039;&#039;)&lt;br /&gt;
	sargs[&#039;belowstyle&#039;] = 1&lt;br /&gt;
	-- process oddstyle, evenstyle&lt;br /&gt;
	args[&#039;oddstyle&#039;] = ifnotblank((fargs[&#039;odd_color&#039;] or pargs[&#039;odd_color&#039;]),&#039;background:&#039;,nil)&lt;br /&gt;
	args[&#039;evenstyle&#039;] = ifnotblank((fargs[&#039;even_color&#039;] or pargs[&#039;even_color&#039;]),&#039;background:&#039;,nil)&lt;br /&gt;
	sargs[&#039;oddstyle&#039;] = 1&lt;br /&gt;
	sargs[&#039;evenstyle&#039;] = 1&lt;br /&gt;
	-- process name and rawname&lt;br /&gt;
	args[&#039;name&#039;] = ifnotblank((fargs[&#039;name&#039;] or pargs[&#039;name&#039;]),&#039;&#039;,(fargs[&#039;rawname&#039;] or pargs[&#039;rawname&#039;]))&lt;br /&gt;
	if isblank(args[&#039;name&#039;]) then args[&#039;navbar&#039;] = &#039;plain&#039; end&lt;br /&gt;
	sargs[&#039;name&#039;] = 1&lt;br /&gt;
	sargs[&#039;rawname&#039;] = 1&lt;br /&gt;
	&lt;br /&gt;
    -- copy the remaining args, with frame args overriding parent args&lt;br /&gt;
    for k, v in pairs(pargs) do&lt;br /&gt;
        if v and v ~= &#039;&#039; and sargs[k] == nil then&lt;br /&gt;
            args[k] = v&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
    for k, v in pairs(fargs) do&lt;br /&gt;
        if v and v ~= &#039;&#039; and sargs[k] == nil then&lt;br /&gt;
            args[k] = v&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
	-- add allow wrap&lt;br /&gt;
	if args[&#039;title&#039;] and style ~= &#039;wide&#039; then&lt;br /&gt;
		if not mw.ustring.match(args[&#039;title&#039;], &#039;&amp;lt;span class=&amp;quot;wrap&amp;quot;&amp;gt;&#039;) then&lt;br /&gt;
			-- probably a more efficient way to match 15 or more characters&lt;br /&gt;
			local m = &#039;[^%[%]&amp;lt;&amp;gt;|][^%[%]&amp;lt;&amp;gt;|][^%[%]&amp;lt;&amp;gt;|][^%[%]&amp;lt;&amp;gt;|][^%[%]&amp;lt;&amp;gt;|]&#039;&lt;br /&gt;
			m = m .. m .. m&lt;br /&gt;
			args[&#039;title&#039;] = mw.ustring.gsub(args[&#039;title&#039;], &lt;br /&gt;
				&#039;%[%[(&#039; .. m .. &#039;[^%[%]&amp;lt;&amp;gt;|]*)%]%]&#039;, &lt;br /&gt;
				&#039;[[%1|&amp;lt;span class=&amp;quot;wrap&amp;quot;&amp;gt;%1&amp;lt;/span&amp;gt;]]&#039;)&lt;br /&gt;
			args[&#039;title&#039;] = mw.ustring.gsub(args[&#039;title&#039;], &lt;br /&gt;
				&#039;%[%[([^%[%]&amp;lt;&amp;gt;|]*)|(&#039; .. m .. &#039;[^%[%]&amp;lt;&amp;gt;|]*)%]%]&#039;, &lt;br /&gt;
				&#039;[[%1|&amp;lt;span class=&amp;quot;wrap&amp;quot;&amp;gt;%2&amp;lt;/span&amp;gt;]]&#039;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- add navbox-vertical for non-wide format&lt;br /&gt;
	if style ~= &#039;wide&#039; then&lt;br /&gt;
		args[&#039;bodyclass&#039;] = &#039;navbox-vertical&#039; .. (args[&#039;bodyclass&#039;] and (&#039; &#039; .. args[&#039;bodyclass&#039;]) or &#039;&#039;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
    return tcats .. Navbox._navbox(args)&lt;br /&gt;
&lt;br /&gt;
end  &lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Location_map/styles.css&amp;diff=65752</id>
		<title>Module:Location map/styles.css</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Location_map/styles.css&amp;diff=65752"/>
		<updated>2024-08-16T20:32:58Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=yes}} */&lt;br /&gt;
.locmap .od {&lt;br /&gt;
	position: absolute;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .id {&lt;br /&gt;
	position: absolute;&lt;br /&gt;
	line-height: 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .l0 {&lt;br /&gt;
	font-size: 0;&lt;br /&gt;
	position: absolute;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .pv {&lt;br /&gt;
	line-height: 110%;&lt;br /&gt;
	position: absolute;&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .pl {&lt;br /&gt;
	line-height: 110%;&lt;br /&gt;
	position: absolute;&lt;br /&gt;
	top: -0.75em;&lt;br /&gt;
	text-align: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .pr {&lt;br /&gt;
	line-height: 110%;&lt;br /&gt;
	position: absolute;&lt;br /&gt;
	top: -0.75em;&lt;br /&gt;
	text-align: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .pv &amp;gt; div {&lt;br /&gt;
	display: inline;&lt;br /&gt;
	padding: 1px;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .pl &amp;gt; div {&lt;br /&gt;
	display: inline; /* inline does not impact floated elements */&lt;br /&gt;
	padding: 1px;&lt;br /&gt;
	float: right;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.locmap .pr &amp;gt; div {&lt;br /&gt;
	display: inline; /* inline does not impact floated elements */&lt;br /&gt;
	padding: 1px;&lt;br /&gt;
	float: left;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Dark mode theme: */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
	html.skin-theme-clientpref-night .od,&lt;br /&gt;
	html.skin-theme-clientpref-night .od .pv &amp;gt; div,&lt;br /&gt;
	html.skin-theme-clientpref-night .od .pl &amp;gt; div,&lt;br /&gt;
	html.skin-theme-clientpref-night .od .pr &amp;gt; div {&lt;br /&gt;
		/* Use !important to override any infobox rules */&lt;br /&gt;
		background: #fff !important;&lt;br /&gt;
		color: #000 !important;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	html.skin-theme-clientpref-night .locmap {&lt;br /&gt;
		filter: grayscale(0.6);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/* Special handling for maps inside infoboxes&lt;br /&gt;
	 * [[Module talk:Location map#Map label background bug in dark mode]]&lt;br /&gt;
	 */&lt;br /&gt;
	html.skin-theme-clientpref-night .infobox-full-data .locmap div {&lt;br /&gt;
		background: transparent !important;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
@media screen and (prefers-color-scheme: dark) {&lt;br /&gt;
	html.skin-theme-clientpref-os .locmap {&lt;br /&gt;
		filter: grayscale(0.6);&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	html.skin-theme-clientpref-os .od,&lt;br /&gt;
	html.skin-theme-clientpref-os .od .pv &amp;gt; div,&lt;br /&gt;
	html.skin-theme-clientpref-os .od .pl &amp;gt; div,&lt;br /&gt;
	html.skin-theme-clientpref-os .od .pr &amp;gt; div {&lt;br /&gt;
		/* Use !important to override any infobox rules */&lt;br /&gt;
		background: white !important;&lt;br /&gt;
		color: #000 !important;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	html.skin-theme-clientpref-os .infobox-full-data .locmap div {&lt;br /&gt;
		background: transparent !important;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Location_map&amp;diff=65750</id>
		<title>Module:Location map</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Location_map&amp;diff=65750"/>
		<updated>2024-08-16T20:32:58Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;require(&#039;strict&#039;)&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local getArgs = require(&#039;Module:Arguments&#039;).getArgs&lt;br /&gt;
&lt;br /&gt;
local function round(n, decimals)&lt;br /&gt;
	local pow = 10^(decimals or 0)&lt;br /&gt;
	return math.floor(n * pow + 0.5) / pow&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.getMapParams(map, frame)&lt;br /&gt;
	if not map then&lt;br /&gt;
		error(&#039;The name of the location map definition to use must be specified&#039;, 2)&lt;br /&gt;
	end&lt;br /&gt;
	local moduletitle = mw.title.new(&#039;Module:Location map/data/&#039; .. map)&lt;br /&gt;
	if not moduletitle then&lt;br /&gt;
		error(string.format(&#039;%q is not a valid name for a location map definition&#039;, map), 2)&lt;br /&gt;
	elseif moduletitle.exists then&lt;br /&gt;
		local mapData = mw.loadData(&#039;Module:Location map/data/&#039; .. map)&lt;br /&gt;
		return function(name, params)&lt;br /&gt;
			if name == nil then&lt;br /&gt;
				return &#039;Module:Location map/data/&#039; .. map&lt;br /&gt;
			elseif mapData[name] == nil then&lt;br /&gt;
				return &#039;&#039;&lt;br /&gt;
			elseif params then&lt;br /&gt;
				return mw.message.newRawMessage(tostring(mapData[name]), unpack(params)):plain()&lt;br /&gt;
			else&lt;br /&gt;
				return mapData[name]&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		error(&#039;Unable to find the specified location map definition: &amp;quot;Module:Location map/data/&#039; .. map .. &#039;&amp;quot; does not exist&#039;, 2)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.data(frame, args, map)&lt;br /&gt;
	if not args then&lt;br /&gt;
		args = getArgs(frame, {frameOnly = true})&lt;br /&gt;
	end&lt;br /&gt;
	if not map then&lt;br /&gt;
		map = p.getMapParams(args[1], frame)&lt;br /&gt;
	end&lt;br /&gt;
	local params = {}&lt;br /&gt;
	for k,v in ipairs(args) do&lt;br /&gt;
		if k &amp;gt; 2 then&lt;br /&gt;
			params[k-2] = v&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return map(args[2], #params ~= 0 and params)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local hemisphereMultipliers = {&lt;br /&gt;
	longitude = { W = -1, w = -1, E = 1, e = 1 },&lt;br /&gt;
	latitude = { S = -1, s = -1, N = 1, n = 1 }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function decdeg(degrees, minutes, seconds, hemisphere, decimal, direction)&lt;br /&gt;
	if decimal then&lt;br /&gt;
		if degrees then&lt;br /&gt;
			error(&#039;Decimal and DMS degrees cannot both be provided for &#039; .. direction, 2)&lt;br /&gt;
		elseif minutes then&lt;br /&gt;
			error(&#039;Minutes can only be provided with DMS degrees for &#039; .. direction, 2)&lt;br /&gt;
		elseif seconds then&lt;br /&gt;
			error(&#039;Seconds can only be provided with DMS degrees for &#039; .. direction, 2)&lt;br /&gt;
		elseif hemisphere then&lt;br /&gt;
			error(&#039;A hemisphere can only be provided with DMS degrees for &#039; .. direction, 2)&lt;br /&gt;
		end&lt;br /&gt;
		local retval = tonumber(decimal)&lt;br /&gt;
		if retval then&lt;br /&gt;
			return retval&lt;br /&gt;
		end&lt;br /&gt;
		error(&#039;The value &amp;quot;&#039; .. decimal .. &#039;&amp;quot; provided for &#039; .. direction .. &#039; is not valid&#039;, 2)&lt;br /&gt;
	elseif seconds and not minutes then&lt;br /&gt;
		error(&#039;Seconds were provided for &#039; .. direction .. &#039; without minutes also being provided&#039;, 2)&lt;br /&gt;
	elseif not degrees then&lt;br /&gt;
		if minutes then&lt;br /&gt;
			error(&#039;Minutes were provided for &#039; .. direction .. &#039; without degrees also being provided&#039;, 2)&lt;br /&gt;
		elseif hemisphere then&lt;br /&gt;
			error(&#039;A hemisphere was provided for &#039; .. direction .. &#039; without degrees also being provided&#039;, 2)&lt;br /&gt;
		end&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	decimal = tonumber(degrees)&lt;br /&gt;
	if not decimal then&lt;br /&gt;
		error(&#039;The degree value &amp;quot;&#039; .. degrees .. &#039;&amp;quot; provided for &#039; .. direction .. &#039; is not valid&#039;, 2)&lt;br /&gt;
	elseif minutes and not tonumber(minutes) then&lt;br /&gt;
		error(&#039;The minute value &amp;quot;&#039; .. minutes .. &#039;&amp;quot; provided for &#039; .. direction .. &#039; is not valid&#039;, 2)&lt;br /&gt;
	elseif seconds and not tonumber(seconds) then&lt;br /&gt;
		error(&#039;The second value &amp;quot;&#039; .. seconds .. &#039;&amp;quot; provided for &#039; .. direction .. &#039; is not valid&#039;, 2)&lt;br /&gt;
	end&lt;br /&gt;
	decimal = decimal + (minutes or 0)/60 + (seconds or 0)/3600&lt;br /&gt;
	if hemisphere then&lt;br /&gt;
		local multiplier = hemisphereMultipliers[direction][hemisphere]&lt;br /&gt;
		if not multiplier then&lt;br /&gt;
			error(&#039;The hemisphere &amp;quot;&#039; .. hemisphere .. &#039;&amp;quot; provided for &#039; .. direction .. &#039; is not valid&#039;, 2)&lt;br /&gt;
		end&lt;br /&gt;
		decimal = decimal * multiplier&lt;br /&gt;
	end&lt;br /&gt;
	return decimal&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Finds a parameter in a transclusion of {{Coord}}.&lt;br /&gt;
local function coord2text(para,coord) -- this should be changed for languages which do not use Arabic numerals or the degree sign&lt;br /&gt;
	local lat, long = mw.ustring.match(coord,&#039;&amp;lt;span class=&amp;quot;p%-latitude latitude&amp;quot;&amp;gt;([^&amp;lt;]+)&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;p%-longitude longitude&amp;quot;&amp;gt;([^&amp;lt;]+)&amp;lt;/span&amp;gt;&#039;)&lt;br /&gt;
	if lat then&lt;br /&gt;
		return tonumber(para == &#039;longitude&#039; and long or lat)&lt;br /&gt;
	end&lt;br /&gt;
	local result = mw.text.split(mw.ustring.match(coord,&#039;%-?[%.%d]+°[NS] %-?[%.%d]+°[EW]&#039;) or &#039;&#039;, &#039;[ °]&#039;)&lt;br /&gt;
	if para == &#039;longitude&#039; then result = {result[3], result[4]} end&lt;br /&gt;
	if not tonumber(result[1]) or not result[2] then&lt;br /&gt;
		mw.log(&#039;Malformed coordinates value&#039;)&lt;br /&gt;
		mw.logObject(para, &#039;para&#039;)&lt;br /&gt;
		mw.logObject(coord, &#039;coord&#039;)&lt;br /&gt;
		return error(&#039;Malformed coordinates value&#039;, 2)&lt;br /&gt;
	end&lt;br /&gt;
	return tonumber(result[1]) * hemisphereMultipliers[para][result[2]]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- effectively make removeBlanks false for caption and maplink, and true for everything else&lt;br /&gt;
-- if useWikidata is present but blank, convert it to false instead of nil&lt;br /&gt;
-- p.top, p.bottom, and their callers need to use this&lt;br /&gt;
function p.valueFunc(key, value)&lt;br /&gt;
	if value then&lt;br /&gt;
		value = mw.text.trim(value)&lt;br /&gt;
	end&lt;br /&gt;
	if value ~= &#039;&#039; or key == &#039;caption&#039; or key == &#039;maplink&#039; then&lt;br /&gt;
		return value&lt;br /&gt;
	elseif key == &#039;useWikidata&#039; then&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getContainerImage(args, map)&lt;br /&gt;
	if args.AlternativeMap then&lt;br /&gt;
		return args.AlternativeMap&lt;br /&gt;
	elseif args.relief then&lt;br /&gt;
        local digits = mw.ustring.match(args.relief,&#039;^[1-9][0-9]?$&#039;) or &#039;1&#039; -- image1 to image99&lt;br /&gt;
        if map(&#039;image&#039; .. digits) ~= &#039;&#039; then&lt;br /&gt;
            return map(&#039;image&#039; .. digits)&lt;br /&gt;
        end&lt;br /&gt;
	end&lt;br /&gt;
    return map(&#039;image&#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.top(frame, args, map)&lt;br /&gt;
	if not args then&lt;br /&gt;
		args = getArgs(frame, {frameOnly = true, valueFunc = p.valueFunc})&lt;br /&gt;
	end&lt;br /&gt;
	if not map then&lt;br /&gt;
		map = p.getMapParams(args[1], frame)&lt;br /&gt;
	end&lt;br /&gt;
	local width&lt;br /&gt;
	local default_as_number = tonumber(mw.ustring.match(tostring(args.default_width),&amp;quot;%d*&amp;quot;))&lt;br /&gt;
	if not args.width then&lt;br /&gt;
		width = round((default_as_number or 240) * (tonumber(map(&#039;defaultscale&#039;)) or 1))&lt;br /&gt;
	elseif mw.ustring.sub(args.width, -2) == &#039;px&#039; then&lt;br /&gt;
		width = mw.ustring.sub(args.width, 1, -3)&lt;br /&gt;
	else&lt;br /&gt;
		width = args.width&lt;br /&gt;
	end&lt;br /&gt;
	local width_as_number = tonumber(mw.ustring.match(tostring(width),&amp;quot;%d*&amp;quot;)) or 0;&lt;br /&gt;
    if width_as_number == 0 then&lt;br /&gt;
    	-- check to see if width is junk. If it is, then use default calculation&lt;br /&gt;
    	width = round((default_as_number or 240) * (tonumber(map(&#039;defaultscale&#039;)) or 1))&lt;br /&gt;
    	width_as_number = tonumber(mw.ustring.match(tostring(width),&amp;quot;%d*&amp;quot;)) or 0;&lt;br /&gt;
    end	&lt;br /&gt;
    if args.max_width ~= &amp;quot;&amp;quot; and args.max_width ~= nil then&lt;br /&gt;
        -- check to see if width bigger than max_width&lt;br /&gt;
        local max_as_number = tonumber(mw.ustring.match(args.max_width,&amp;quot;%d*&amp;quot;)) or 0;&lt;br /&gt;
        if width_as_number&amp;gt;max_as_number and max_as_number&amp;gt;0 then&lt;br /&gt;
            width = args.max_width;&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
	local retval = frame:extensionTag{name = &#039;templatestyles&#039;, args = {src = &#039;Module:Location map/styles.css&#039;}}&lt;br /&gt;
	if args.float == &#039;center&#039; then&lt;br /&gt;
		retval = retval .. &#039;&amp;lt;div class=&amp;quot;center&amp;quot;&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
	if args.caption and args.caption ~= &#039;&#039; and args.border ~= &#039;infobox&#039; then&lt;br /&gt;
		retval = retval .. &#039;&amp;lt;div class=&amp;quot;locmap noviewer noresize thumb &#039;&lt;br /&gt;
		if args.float == &#039;&amp;quot;left&amp;quot;&#039; or args.float == &#039;left&#039; then&lt;br /&gt;
			retval = retval .. &#039;tleft&#039;&lt;br /&gt;
		elseif args.float == &#039;&amp;quot;center&amp;quot;&#039; or args.float == &#039;center&#039; or args.float == &#039;&amp;quot;none&amp;quot;&#039; or args.float == &#039;none&#039; then&lt;br /&gt;
			retval = retval .. &#039;tnone&#039;&lt;br /&gt;
		else&lt;br /&gt;
			retval = retval .. &#039;tright&#039;&lt;br /&gt;
		end&lt;br /&gt;
		retval = retval .. &#039;&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;thumbinner&amp;quot; style=&amp;quot;width:&#039; .. (width + 2) .. &#039;px&#039;&lt;br /&gt;
		if args.border == &#039;none&#039; then&lt;br /&gt;
			retval = retval .. &#039;;border:none&#039;&lt;br /&gt;
		elseif args.border then&lt;br /&gt;
			retval = retval .. &#039;;border-color:&#039; .. args.border&lt;br /&gt;
		end&lt;br /&gt;
		retval = retval .. &#039;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;position:relative;width:&#039; .. width .. &#039;px&#039; .. (args.border ~= &#039;none&#039; and &#039;;border:1px solid lightgray&amp;quot;&amp;gt;&#039; or &#039;&amp;quot;&amp;gt;&#039;)&lt;br /&gt;
	else&lt;br /&gt;
		retval = retval .. &#039;&amp;lt;div class=&amp;quot;locmap&amp;quot; style=&amp;quot;width:&#039; .. width .. &#039;px;&#039;&lt;br /&gt;
		if args.float == &#039;&amp;quot;left&amp;quot;&#039; or args.float == &#039;left&#039; then&lt;br /&gt;
			retval = retval .. &#039;float:left;clear:left&#039;&lt;br /&gt;
		elseif args.float == &#039;&amp;quot;center&amp;quot;&#039; or args.float == &#039;center&#039; then&lt;br /&gt;
			retval = retval .. &#039;float:none;clear:both;margin-left:auto;margin-right:auto&#039;&lt;br /&gt;
		elseif args.float == &#039;&amp;quot;none&amp;quot;&#039; or args.float == &#039;none&#039; then&lt;br /&gt;
			retval = retval .. &#039;float:none;clear:none&#039;&lt;br /&gt;
		else&lt;br /&gt;
			retval = retval .. &#039;float:right;clear:right&#039;&lt;br /&gt;
		end&lt;br /&gt;
		retval = retval .. &#039;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;width:&#039; .. width .. &#039;px;padding:0&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;position:relative;width:&#039; .. width .. &#039;px&amp;quot;&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
	local image = getContainerImage(args, map)&lt;br /&gt;
	local currentTitle = mw.title.getCurrentTitle()&lt;br /&gt;
	retval = string.format(&lt;br /&gt;
		&#039;%s[[File:%s|%spx|%s%s|class=notpageimage]]&#039;,&lt;br /&gt;
		retval,&lt;br /&gt;
		image,&lt;br /&gt;
		width,&lt;br /&gt;
		args.alt or ((args.label or currentTitle.text) .. &#039; is located in &#039; .. map(&#039;name&#039;)),&lt;br /&gt;
		args.maplink and (&#039;|link=&#039; .. args.maplink) or &#039;&#039;&lt;br /&gt;
	)&lt;br /&gt;
	if args.caption and args.caption ~= &#039;&#039; then&lt;br /&gt;
		if (currentTitle.namespace == 0) and mw.ustring.find(args.caption, &#039;##&#039;) then&lt;br /&gt;
			retval = retval .. &#039;[[Category:Pages using location map with a double number sign in the caption]]&#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if args.overlay_image then&lt;br /&gt;
		return retval .. &#039;&amp;lt;div style=&amp;quot;position:absolute;top:0;left:0&amp;quot;&amp;gt;[[File:&#039; .. args.overlay_image .. &#039;|&#039; .. width .. &#039;px|class=notpageimage]]&amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
	else&lt;br /&gt;
		return retval&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.bottom(frame, args, map)&lt;br /&gt;
	if not args then&lt;br /&gt;
		args = getArgs(frame, {frameOnly = true, valueFunc = p.valueFunc})&lt;br /&gt;
	end&lt;br /&gt;
	if not map then&lt;br /&gt;
		map = p.getMapParams(args[1], frame)&lt;br /&gt;
	end&lt;br /&gt;
	local retval = &#039;&amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
	local currentTitle = mw.title.getCurrentTitle()&lt;br /&gt;
	if not args.caption or args.border == &#039;infobox&#039; then&lt;br /&gt;
		if args.border then&lt;br /&gt;
			retval = retval .. &#039;&amp;lt;div style=&amp;quot;padding-top:0.2em&amp;quot;&amp;gt;&#039;&lt;br /&gt;
		else&lt;br /&gt;
			retval = retval .. &#039;&amp;lt;div style=&amp;quot;font-size:91%;padding-top:3px&amp;quot;&amp;gt;&#039;&lt;br /&gt;
		end&lt;br /&gt;
		retval = retval&lt;br /&gt;
		.. (args.caption or (args.label or currentTitle.text) .. &#039; (&#039; .. map(&#039;name&#039;) .. &#039;)&#039;)&lt;br /&gt;
		.. &#039;&amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
	elseif args.caption ~= &#039;&#039;  then&lt;br /&gt;
		-- This is not the pipe trick. We&#039;re creating a link with no text on purpose, so that CSS can give us a nice image&lt;br /&gt;
		retval = retval .. &#039;&amp;lt;div class=&amp;quot;thumbcaption&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;magnify&amp;quot;&amp;gt;[[:File:&#039; .. getContainerImage(args, map) .. &#039;|class=notpageimage| ]]&amp;lt;/div&amp;gt;&#039; .. args.caption .. &#039;&amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if args.switcherLabel then&lt;br /&gt;
		retval = retval .. &#039;&amp;lt;span class=&amp;quot;switcher-label&amp;quot; style=&amp;quot;display:none&amp;quot;&amp;gt;&#039; .. args.switcherLabel .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
	elseif args.autoSwitcherLabel then&lt;br /&gt;
		retval = retval .. &#039;&amp;lt;span class=&amp;quot;switcher-label&amp;quot; style=&amp;quot;display:none&amp;quot;&amp;gt;Show map of &#039; .. map(&#039;name&#039;) .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	retval = retval .. &#039;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
	if args.caption_undefined then&lt;br /&gt;
		mw.log(&#039;Removed parameter caption_undefined used.&#039;)&lt;br /&gt;
		local parent = frame:getParent()&lt;br /&gt;
		if parent then&lt;br /&gt;
			mw.log(&#039;Parent is &#039; .. parent:getTitle())&lt;br /&gt;
		end&lt;br /&gt;
		mw.logObject(args, &#039;args&#039;)&lt;br /&gt;
		if currentTitle.namespace == 0 then&lt;br /&gt;
		    retval = retval .. &#039;[[Category:Location maps with removed parameters|caption_undefined]]&#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if map(&#039;skew&#039;) ~= &#039;&#039; or map(&#039;lat_skew&#039;) ~= &#039;&#039; or map(&#039;crosses180&#039;) ~= &#039;&#039; or map(&#039;type&#039;) ~= &#039;&#039; then&lt;br /&gt;
		mw.log(&#039;Removed parameter used in map definition &#039; .. map())&lt;br /&gt;
		if currentTitle.namespace == 0 then&lt;br /&gt;
		    local key = (map(&#039;skew&#039;) ~= &#039;&#039; and &#039;skew&#039; or &#039;&#039;) ..&lt;br /&gt;
					(map(&#039;lat_skew&#039;) ~= &#039;&#039; and &#039;lat_skew&#039; or &#039;&#039;) ..&lt;br /&gt;
					(map(&#039;crosses180&#039;) ~= &#039;&#039; and &#039;crosses180&#039; or &#039;&#039;) ..&lt;br /&gt;
					(map(&#039;type&#039;) ~= &#039;&#039; and &#039;type&#039; or &#039;&#039;)&lt;br /&gt;
		    retval = retval .. &#039;[[Category:Location maps with removed parameters|&#039; .. key .. &#039; ]]&#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if string.find(map(&#039;name&#039;), &#039;|&#039;, 1, true) then&lt;br /&gt;
		mw.log(&#039;Pipe used in name of map definition &#039; .. map())&lt;br /&gt;
		if currentTitle.namespace == 0 then&lt;br /&gt;
		   retval = retval .. &#039;[[Category:Location maps with a name containing a pipe]]&#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if args.float == &#039;center&#039; then&lt;br /&gt;
		retval = retval .. &#039;&amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
	return retval&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function markOuterDiv(x, y, imageDiv, labelDiv, label_size)&lt;br /&gt;
	return mw.html.create(&#039;div&#039;)&lt;br /&gt;
		:addClass(&#039;od&#039;)&lt;br /&gt;
		:addClass(&#039;notheme&#039;) -- T236137&lt;br /&gt;
		:cssText(&#039;top:&#039; .. round(y, 3) .. &#039;%;left:&#039; .. round(x, 3) .. &#039;%;font-size:&#039; .. label_size .. &#039;%&#039;)&lt;br /&gt;
		:node(imageDiv)&lt;br /&gt;
		:node(labelDiv)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function markImageDiv(mark, marksize, label, link, alt, title)&lt;br /&gt;
	local builder = mw.html.create(&#039;div&#039;)&lt;br /&gt;
		:addClass(&#039;id&#039;)&lt;br /&gt;
		:cssText(&#039;left:-&#039; .. round(marksize / 2) .. &#039;px;top:-&#039; .. round(marksize / 2) .. &#039;px&#039;)&lt;br /&gt;
		:attr(&#039;title&#039;, title)&lt;br /&gt;
	if marksize ~= 0 then&lt;br /&gt;
		builder:wikitext(string.format(&lt;br /&gt;
			&#039;[[File:%s|%dx%dpx|%s|link=%s%s|class=notpageimage]]&#039;,&lt;br /&gt;
			mark,&lt;br /&gt;
			marksize,&lt;br /&gt;
			marksize,&lt;br /&gt;
			label,&lt;br /&gt;
			link,&lt;br /&gt;
			alt and (&#039;|alt=&#039; .. alt) or &#039;&#039;&lt;br /&gt;
		))&lt;br /&gt;
	end&lt;br /&gt;
	return builder&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function markLabelDiv(label, label_size, label_width, position, background, x, marksize)&lt;br /&gt;
	if tonumber(label_size) == 0 then&lt;br /&gt;
		return mw.html.create(&#039;div&#039;):addClass(&#039;l0&#039;):wikitext(label)&lt;br /&gt;
	end&lt;br /&gt;
	local builder = mw.html.create(&#039;div&#039;)&lt;br /&gt;
		:cssText(&#039;width:&#039; .. label_width .. &#039;em&#039;)&lt;br /&gt;
	local distance = round(marksize / 2 + 1)&lt;br /&gt;
	if position == &#039;top&#039; then -- specified top&lt;br /&gt;
		builder:addClass(&#039;pv&#039;):cssText(&#039;bottom:&#039; .. distance .. &#039;px;left:&#039; .. (-label_width / 2) .. &#039;em&#039;)&lt;br /&gt;
	elseif position == &#039;bottom&#039; then -- specified bottom&lt;br /&gt;
		builder:addClass(&#039;pv&#039;):cssText(&#039;top:&#039; .. distance .. &#039;px;left:&#039; .. (-label_width / 2) .. &#039;em&#039;)&lt;br /&gt;
	elseif position == &#039;left&#039; or (tonumber(x) &amp;gt; 70 and position ~= &#039;right&#039;) then -- specified left or autodetected to left&lt;br /&gt;
		builder:addClass(&#039;pl&#039;):cssText(&#039;right:&#039; .. distance .. &#039;px&#039;)&lt;br /&gt;
	else -- specified right or autodetected to right&lt;br /&gt;
		builder:addClass(&#039;pr&#039;):cssText(&#039;left:&#039; .. distance .. &#039;px&#039;)&lt;br /&gt;
	end&lt;br /&gt;
	builder = builder:tag(&#039;div&#039;)&lt;br /&gt;
		:wikitext(label)&lt;br /&gt;
	if background then&lt;br /&gt;
		builder:cssText(&#039;background-color:&#039; .. background)&lt;br /&gt;
	end&lt;br /&gt;
	return builder:done()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getX(longitude, left, right)&lt;br /&gt;
	local width = (right - left) % 360&lt;br /&gt;
	if width == 0 then&lt;br /&gt;
		width = 360&lt;br /&gt;
	end&lt;br /&gt;
	local distanceFromLeft = (longitude - left) % 360&lt;br /&gt;
	-- the distance needed past the map to the right equals distanceFromLeft - width. the distance needed past the map to the left equals 360 - distanceFromLeft. to minimize page stretching, go whichever way is shorter&lt;br /&gt;
	if distanceFromLeft - width / 2 &amp;gt;= 180 then&lt;br /&gt;
		distanceFromLeft = distanceFromLeft - 360&lt;br /&gt;
	end&lt;br /&gt;
	return 100 * distanceFromLeft / width&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getY(latitude, top, bottom)&lt;br /&gt;
	return 100 * (top - latitude) / (top - bottom)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.mark(frame, args, map)&lt;br /&gt;
	if not args then&lt;br /&gt;
		args = getArgs(frame, {wrappers = &#039;Template:Location map~&#039;})&lt;br /&gt;
	end&lt;br /&gt;
	local mapnames = {}&lt;br /&gt;
	if not map then&lt;br /&gt;
		if args[1] then&lt;br /&gt;
			map = {}&lt;br /&gt;
			for mapname in mw.text.gsplit(args[1], &#039;#&#039;, true) do&lt;br /&gt;
				map[#map + 1] = p.getMapParams(mw.ustring.gsub(mapname, &#039;^%s*(.-)%s*$&#039;, &#039;%1&#039;), frame)&lt;br /&gt;
				mapnames[#mapnames + 1] = mapname&lt;br /&gt;
			end&lt;br /&gt;
			if #map == 1 then map = map[1] end&lt;br /&gt;
		else&lt;br /&gt;
			map = p.getMapParams(&#039;World&#039;, frame)&lt;br /&gt;
			args[1] = &#039;World&#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if type(map) == &#039;table&#039; then&lt;br /&gt;
		local outputs = {}&lt;br /&gt;
		local oldargs = args[1]&lt;br /&gt;
		for k,v in ipairs(map) do&lt;br /&gt;
			args[1] = mapnames[k]&lt;br /&gt;
			outputs[k] = tostring(p.mark(frame, args, v))&lt;br /&gt;
		end&lt;br /&gt;
		args[1] = oldargs&lt;br /&gt;
		return table.concat(outputs, &#039;#PlaceList#&#039;) .. &#039;#PlaceList#&#039;&lt;br /&gt;
	end&lt;br /&gt;
	local x, y, longitude, latitude&lt;br /&gt;
	longitude = decdeg(args.lon_deg, args.lon_min, args.lon_sec, args.lon_dir, args.long, &#039;longitude&#039;)&lt;br /&gt;
	latitude = decdeg(args.lat_deg, args.lat_min, args.lat_sec, args.lat_dir, args.lat, &#039;latitude&#039;)&lt;br /&gt;
	if args.excludefrom then&lt;br /&gt;
		-- If this mark is to be excluded from certain maps entirely (useful in the context of multiple maps)&lt;br /&gt;
		for exclusionmap in mw.text.gsplit(args.excludefrom, &#039;#&#039;, true) do&lt;br /&gt;
			-- Check if this map is excluded. If so, return an empty string.&lt;br /&gt;
			if args[1] == exclusionmap then&lt;br /&gt;
				return &#039;&#039;&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
			&lt;br /&gt;
	end&lt;br /&gt;
	local builder = mw.html.create()&lt;br /&gt;
	local currentTitle = mw.title.getCurrentTitle()&lt;br /&gt;
	if args.coordinates then&lt;br /&gt;
--		Temporarily removed to facilitate infobox conversion. See [[Wikipedia:Coordinates in infoboxes]]&lt;br /&gt;
&lt;br /&gt;
--		if longitude or latitude then&lt;br /&gt;
--			error(&#039;Coordinates from [[Module:Coordinates]] and individual coordinates cannot both be provided&#039;)&lt;br /&gt;
--		end&lt;br /&gt;
		longitude = coord2text(&#039;longitude&#039;, args.coordinates)&lt;br /&gt;
		latitude = coord2text(&#039;latitude&#039;, args.coordinates)&lt;br /&gt;
	elseif not longitude and not latitude and args.useWikidata then&lt;br /&gt;
		-- If they didn&#039;t provide either coordinate, try Wikidata. If they provided one but not the other, don&#039;t.&lt;br /&gt;
		local entity = mw.wikibase.getEntity()&lt;br /&gt;
		if entity and entity.claims and entity.claims.P625 and entity.claims.P625[1].mainsnak.snaktype == &#039;value&#039; then&lt;br /&gt;
			local value = entity.claims.P625[1].mainsnak.datavalue.value&lt;br /&gt;
			longitude, latitude = value.longitude, value.latitude&lt;br /&gt;
		end&lt;br /&gt;
		if args.link and (currentTitle.namespace == 0) then&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with linked markers with coordinates from Wikidata]]&#039;)	&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if not longitude then&lt;br /&gt;
		error(&#039;No value was provided for longitude&#039;)&lt;br /&gt;
	elseif not latitude then&lt;br /&gt;
		error(&#039;No value was provided for latitude&#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if currentTitle.namespace &amp;gt; 0 then&lt;br /&gt;
		if (not args.lon_deg) ~= (not args.lat_deg) then&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with different longitude and latitude precisions|Degrees]]&#039;)&lt;br /&gt;
		elseif (not args.lon_min) ~= (not args.lat_min) then&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with different longitude and latitude precisions|Minutes]]&#039;)&lt;br /&gt;
		elseif (not args.lon_sec) ~= (not args.lat_sec) then&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with different longitude and latitude precisions|Seconds]]&#039;)&lt;br /&gt;
		elseif (not args.lon_dir) ~= (not args.lat_dir) then&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with different longitude and latitude precisions|Hemisphere]]&#039;)&lt;br /&gt;
		elseif (not args.long) ~= (not args.lat) then&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with different longitude and latitude precisions|Decimal]]&#039;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if ((tonumber(args.lat_deg) or 0) &amp;lt; 0) and ((tonumber(args.lat_min) or 0) ~= 0 or (tonumber(args.lat_sec) or 0) ~= 0 or (args.lat_dir and args.lat_dir ~=&#039;&#039;)) then&lt;br /&gt;
		builder:wikitext(&#039;[[Category:Location maps with negative degrees and minutes or seconds]]&#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if ((tonumber(args.lon_deg) or 0) &amp;lt; 0) and ((tonumber(args.lon_min) or 0) ~= 0 or (tonumber(args.lon_sec) or 0) ~= 0 or (args.lon_dir and args.lon_dir ~= &#039;&#039;)) then&lt;br /&gt;
		builder:wikitext(&#039;[[Category:Location maps with negative degrees and minutes or seconds]]&#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if (((tonumber(args.lat_min) or 0) &amp;lt; 0) or ((tonumber(args.lat_sec) or 0) &amp;lt; 0)) then&lt;br /&gt;
		builder:wikitext(&#039;[[Category:Location maps with negative degrees and minutes or seconds]]&#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if (((tonumber(args.lon_min) or 0) &amp;lt; 0) or ((tonumber(args.lon_sec) or 0) &amp;lt; 0)) then&lt;br /&gt;
		builder:wikitext(&#039;[[Category:Location maps with negative degrees and minutes or seconds]]&#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if args.skew or args.lon_shift or args.markhigh then&lt;br /&gt;
		mw.log(&#039;Removed parameter used in invocation.&#039;)&lt;br /&gt;
		local parent = frame:getParent()&lt;br /&gt;
		if parent then&lt;br /&gt;
			mw.log(&#039;Parent is &#039; .. parent:getTitle())&lt;br /&gt;
		end&lt;br /&gt;
		mw.logObject(args, &#039;args&#039;)&lt;br /&gt;
		if currentTitle.namespace == 0 then&lt;br /&gt;
			local key = (args.skew and &#039;skew&#039; or &#039;&#039;) ..&lt;br /&gt;
						(args.lon_shift and &#039;lon_shift&#039; or &#039;&#039;) ..&lt;br /&gt;
						(args.markhigh and &#039;markhigh&#039; or &#039;&#039;)&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with removed parameters|&#039; .. key ..&#039; ]]&#039;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if map(&#039;x&#039;) ~= &#039;&#039; then&lt;br /&gt;
		x = tonumber(mw.ext.ParserFunctions.expr(map(&#039;x&#039;, { latitude, longitude })))&lt;br /&gt;
	else&lt;br /&gt;
		x = tonumber(getX(longitude, map(&#039;left&#039;), map(&#039;right&#039;)))&lt;br /&gt;
	end&lt;br /&gt;
	if map(&#039;y&#039;) ~= &#039;&#039; then&lt;br /&gt;
		y = tonumber(mw.ext.ParserFunctions.expr(map(&#039;y&#039;, { latitude, longitude })))&lt;br /&gt;
	else&lt;br /&gt;
		y = tonumber(getY(latitude, map(&#039;top&#039;), map(&#039;bottom&#039;)))&lt;br /&gt;
	end&lt;br /&gt;
	if (x &amp;lt; 0 or x &amp;gt; 100 or y &amp;lt; 0 or y &amp;gt; 100) and not args.outside then&lt;br /&gt;
		mw.log(&#039;Mark placed outside map boundaries without outside flag set. x = &#039; .. x .. &#039;, y = &#039; .. y)&lt;br /&gt;
		local parent = frame:getParent()&lt;br /&gt;
		if parent then&lt;br /&gt;
			mw.log(&#039;Parent is &#039; .. parent:getTitle())&lt;br /&gt;
		end&lt;br /&gt;
		mw.logObject(args, &#039;args&#039;)&lt;br /&gt;
		if currentTitle.namespace == 0 then&lt;br /&gt;
			local key = currentTitle.prefixedText&lt;br /&gt;
			builder:wikitext(&#039;[[Category:Location maps with marks outside map and outside parameter not set|&#039; .. key .. &#039; ]]&#039;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local mark = args.mark or map(&#039;mark&#039;)&lt;br /&gt;
	if mark == &#039;&#039; then&lt;br /&gt;
		mark = &#039;Red pog.svg&#039;&lt;br /&gt;
	end&lt;br /&gt;
	local marksize = tonumber(args.marksize) or tonumber(map(&#039;marksize&#039;)) or 8&lt;br /&gt;
	local imageDiv = markImageDiv(mark, marksize, args.label or mw.title.getCurrentTitle().text, args.link or &#039;&#039;, args.alt, args[2])&lt;br /&gt;
	local label_size = args.label_size or 91&lt;br /&gt;
	local labelDiv&lt;br /&gt;
	if args.label and args.position ~= &#039;none&#039; then&lt;br /&gt;
		labelDiv = markLabelDiv(args.label, label_size, args.label_width or 6, args.position, args.background, x, marksize)&lt;br /&gt;
	end&lt;br /&gt;
	return builder:node(markOuterDiv(x, y, imageDiv, labelDiv, label_size))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function switcherSeparate(s)&lt;br /&gt;
	if s == nil then return {} end&lt;br /&gt;
	local retval = {}&lt;br /&gt;
	for i in string.gmatch(s .. &#039;#&#039;, &#039;([^#]*)#&#039;) do&lt;br /&gt;
		i = mw.text.trim(i)&lt;br /&gt;
		retval[#retval + 1] = (i ~= &#039;&#039; and i)&lt;br /&gt;
	end&lt;br /&gt;
	return retval&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.main(frame, args, map)&lt;br /&gt;
	local caption_list = {}&lt;br /&gt;
	if not args then&lt;br /&gt;
		args = getArgs(frame, {wrappers = &#039;Template:Location map&#039;, valueFunc = p.valueFunc})&lt;br /&gt;
	end&lt;br /&gt;
	if args.useWikidata == nil then&lt;br /&gt;
		args.useWikidata = true&lt;br /&gt;
	end&lt;br /&gt;
	if not map then&lt;br /&gt;
		if args[1] then&lt;br /&gt;
			map = {}&lt;br /&gt;
			for mapname in string.gmatch(args[1], &#039;[^#]+&#039;) do&lt;br /&gt;
				map[#map + 1] = p.getMapParams(mw.ustring.gsub(mapname, &#039;^%s*(.-)%s*$&#039;, &#039;%1&#039;), frame)&lt;br /&gt;
			end&lt;br /&gt;
			if args[&#039;caption&#039;] then&lt;br /&gt;
				if args[&#039;caption&#039;] == &amp;quot;&amp;quot; then&lt;br /&gt;
					while #caption_list &amp;lt; #map do&lt;br /&gt;
						caption_list[#caption_list + 1] = args[&#039;caption&#039;]&lt;br /&gt;
					end&lt;br /&gt;
				else&lt;br /&gt;
					for caption in mw.text.gsplit(args[&#039;caption&#039;], &#039;##&#039;, true) do&lt;br /&gt;
						caption_list[#caption_list + 1] = caption&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			if #map == 1 then map = map[1] end&lt;br /&gt;
		else&lt;br /&gt;
			map = p.getMapParams(&#039;World&#039;, frame)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if type(map) == &#039;table&#039; then&lt;br /&gt;
		local altmaps = switcherSeparate(args.AlternativeMap)&lt;br /&gt;
		if #altmaps &amp;gt; #map then&lt;br /&gt;
			error(string.format(&#039;%d AlternativeMaps were provided, but only %d maps were provided&#039;, #altmaps, #map))&lt;br /&gt;
		end&lt;br /&gt;
		local overlays = switcherSeparate(args.overlay_image)&lt;br /&gt;
		if #overlays &amp;gt; #map then&lt;br /&gt;
			error(string.format(&#039;%d overlay_images were provided, but only %d maps were provided&#039;, #overlays, #map))&lt;br /&gt;
		end&lt;br /&gt;
		if #caption_list &amp;gt; #map then&lt;br /&gt;
			error(string.format(&#039;%d captions were provided, but only %d maps were provided&#039;, #caption_list, #map))&lt;br /&gt;
		end&lt;br /&gt;
		local outputs = {}&lt;br /&gt;
		args.autoSwitcherLabel = true&lt;br /&gt;
		for k,v in ipairs(map) do&lt;br /&gt;
			args.AlternativeMap = altmaps[k]&lt;br /&gt;
			args.overlay_image = overlays[k]&lt;br /&gt;
			args.caption = caption_list[k]&lt;br /&gt;
			outputs[k] = p.main(frame, args, v)&lt;br /&gt;
		end&lt;br /&gt;
		return &#039;&amp;lt;div class=&amp;quot;switcher-container&amp;quot;&amp;gt;&#039; .. table.concat(outputs) .. &#039;&amp;lt;/div&amp;gt;&#039;&lt;br /&gt;
	else&lt;br /&gt;
		return p.top(frame, args, map) .. tostring( p.mark(frame, args, map) ) .. p.bottom(frame, args, map)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Coordinates&amp;diff=65748</id>
		<title>Module:Coordinates</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Coordinates&amp;diff=65748"/>
		<updated>2024-08-16T20:32:56Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;--[[&lt;br /&gt;
This module is intended to replace the functionality of {{Coord}} and related&lt;br /&gt;
templates.  It provides several methods, including&lt;br /&gt;
&lt;br /&gt;
{{#invoke:Coordinates | coord }} : General function formatting and displaying&lt;br /&gt;
coordinate values.&lt;br /&gt;
&lt;br /&gt;
{{#invoke:Coordinates | dec2dms }} : Simple function for converting decimal&lt;br /&gt;
degree values to DMS format.&lt;br /&gt;
&lt;br /&gt;
{{#invoke:Coordinates | dms2dec }} : Simple function for converting DMS format&lt;br /&gt;
to decimal degree format.&lt;br /&gt;
&lt;br /&gt;
{{#invoke:Coordinates | link }} : Export the link used to reach the tools&lt;br /&gt;
&lt;br /&gt;
]]&lt;br /&gt;
&lt;br /&gt;
require(&#039;strict&#039;)&lt;br /&gt;
&lt;br /&gt;
local math_mod = require(&amp;quot;Module:Math&amp;quot;)&lt;br /&gt;
local coordinates = {};&lt;br /&gt;
local isSandbox = mw.getCurrentFrame():getTitle():find(&#039;sandbox&#039;, 1, true);&lt;br /&gt;
&lt;br /&gt;
local current_page = mw.title.getCurrentTitle()&lt;br /&gt;
local page_name = mw.uri.encode( current_page.prefixedText, &#039;WIKI&#039; );&lt;br /&gt;
local coord_link = &#039;https://geohack.toolforge.org/geohack.php?pagename=&#039; .. page_name .. &#039;&amp;amp;params=&#039;&lt;br /&gt;
&lt;br /&gt;
--[[ Helper function, replacement for {{coord/display/title}} ]]&lt;br /&gt;
local function displaytitle(coords)&lt;br /&gt;
	return mw.getCurrentFrame():extensionTag{&lt;br /&gt;
		name = &#039;indicator&#039;,&lt;br /&gt;
		args = { name = &#039;coordinates&#039; },&lt;br /&gt;
		content = &#039;&amp;lt;span id=&amp;quot;coordinates&amp;quot;&amp;gt;[[Geographic coordinate system|Coordinates]]: &#039; .. coords .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
	}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[ Helper function, used in detecting DMS formatting ]]&lt;br /&gt;
local function dmsTest(first, second)&lt;br /&gt;
	if type(first) ~= &#039;string&#039; or type(second) ~= &#039;string&#039; then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	local s = (first .. second):upper()&lt;br /&gt;
	return s:find(&#039;^[NS][EW]$&#039;) or s:find(&#039;^[EW][NS]$&#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[ Wrapper function to grab args, see Module:Arguments for this function&#039;s documentation. ]]&lt;br /&gt;
local function makeInvokeFunc(funcName)&lt;br /&gt;
	return function (frame)&lt;br /&gt;
		local args = require(&#039;Module:Arguments&#039;).getArgs(frame, {&lt;br /&gt;
			wrappers = &#039;Template:Coord&#039;&lt;br /&gt;
		})&lt;br /&gt;
		return coordinates[funcName](args, frame)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[ Helper function, handle optional args. ]]&lt;br /&gt;
local function optionalArg(arg, supplement)&lt;br /&gt;
	return arg and arg .. supplement or &#039;&#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Formats any error messages generated for display&lt;br /&gt;
]]&lt;br /&gt;
local function errorPrinter(errors)&lt;br /&gt;
	local result = &amp;quot;&amp;quot;&lt;br /&gt;
	for i,v in ipairs(errors) do&lt;br /&gt;
		result = result .. &#039;&amp;lt;strong class=&amp;quot;error&amp;quot;&amp;gt;Coordinates: &#039; .. v[2] .. &#039;&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Determine the required CSS class to display coordinates&lt;br /&gt;
&lt;br /&gt;
Usually geo-nondefault is hidden by CSS, unless a user has overridden this for himself&lt;br /&gt;
default is the mode as specificied by the user when calling the {{coord}} template&lt;br /&gt;
mode is the display mode (dec or dms) that we will need to determine the css class for&lt;br /&gt;
]]&lt;br /&gt;
local function displayDefault(default, mode)&lt;br /&gt;
	if default == &amp;quot;&amp;quot; then&lt;br /&gt;
		default = &amp;quot;dec&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if default == mode then&lt;br /&gt;
		return &amp;quot;geo-default&amp;quot;&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;quot;geo-nondefault&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
specPrinter&lt;br /&gt;
&lt;br /&gt;
Output formatter.  Takes the structure generated by either parseDec&lt;br /&gt;
or parseDMS and formats it for inclusion on Wikipedia.&lt;br /&gt;
]]&lt;br /&gt;
local function specPrinter(args, coordinateSpec)&lt;br /&gt;
	local uriComponents = coordinateSpec[&amp;quot;param&amp;quot;]&lt;br /&gt;
	if uriComponents == &amp;quot;&amp;quot; then&lt;br /&gt;
		-- RETURN error, should never be empty or nil&lt;br /&gt;
		return &amp;quot;ERROR param was empty&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	if args[&amp;quot;name&amp;quot;] then&lt;br /&gt;
		uriComponents = uriComponents .. &amp;quot;&amp;amp;title=&amp;quot; .. mw.uri.encode(coordinateSpec[&amp;quot;name&amp;quot;])&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local geodmshtml = &#039;&amp;lt;span class=&amp;quot;geo-dms&amp;quot; title=&amp;quot;Maps, aerial photos, and other data for this location&amp;quot;&amp;gt;&#039;&lt;br /&gt;
			.. &#039;&amp;lt;span class=&amp;quot;latitude&amp;quot;&amp;gt;&#039; .. coordinateSpec[&amp;quot;dms-lat&amp;quot;] .. &#039;&amp;lt;/span&amp;gt; &#039;&lt;br /&gt;
			.. &#039;&amp;lt;span class=&amp;quot;longitude&amp;quot;&amp;gt;&#039; ..coordinateSpec[&amp;quot;dms-long&amp;quot;] .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
			.. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
	local lat = tonumber( coordinateSpec[&amp;quot;dec-lat&amp;quot;] ) or 0&lt;br /&gt;
	local geodeclat&lt;br /&gt;
	if lat &amp;lt; 0 then&lt;br /&gt;
		-- FIXME this breaks the pre-existing precision&lt;br /&gt;
		geodeclat = tostring(coordinateSpec[&amp;quot;dec-lat&amp;quot;]):sub(2) .. &amp;quot;°S&amp;quot;&lt;br /&gt;
	else&lt;br /&gt;
		geodeclat = (coordinateSpec[&amp;quot;dec-lat&amp;quot;] or 0) .. &amp;quot;°N&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local long = tonumber( coordinateSpec[&amp;quot;dec-long&amp;quot;] ) or 0&lt;br /&gt;
	local geodeclong&lt;br /&gt;
	if long &amp;lt; 0 then&lt;br /&gt;
		-- FIXME does not handle unicode minus&lt;br /&gt;
		geodeclong = tostring(coordinateSpec[&amp;quot;dec-long&amp;quot;]):sub(2) .. &amp;quot;°W&amp;quot;&lt;br /&gt;
	else&lt;br /&gt;
		geodeclong = (coordinateSpec[&amp;quot;dec-long&amp;quot;] or 0) .. &amp;quot;°E&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local geodechtml = &#039;&amp;lt;span class=&amp;quot;geo-dec&amp;quot; title=&amp;quot;Maps, aerial photos, and other data for this location&amp;quot;&amp;gt;&#039;&lt;br /&gt;
			.. geodeclat .. &#039; &#039;&lt;br /&gt;
			.. geodeclong&lt;br /&gt;
			.. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
	local geonumhtml = &#039;&amp;lt;span class=&amp;quot;geo&amp;quot;&amp;gt;&#039;&lt;br /&gt;
			.. coordinateSpec[&amp;quot;dec-lat&amp;quot;] .. &#039;; &#039;&lt;br /&gt;
			.. coordinateSpec[&amp;quot;dec-long&amp;quot;]&lt;br /&gt;
			.. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
	local inner = &#039;&amp;lt;span class=&amp;quot;&#039; .. displayDefault(coordinateSpec[&amp;quot;default&amp;quot;], &amp;quot;dms&amp;quot; ) .. &#039;&amp;quot;&amp;gt;&#039; .. geodmshtml .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
				.. &#039;&amp;lt;span class=&amp;quot;geo-multi-punct&amp;quot;&amp;gt;&amp;amp;#xfeff; / &amp;amp;#xfeff;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
				.. &#039;&amp;lt;span class=&amp;quot;&#039; .. displayDefault(coordinateSpec[&amp;quot;default&amp;quot;], &amp;quot;dec&amp;quot; ) .. &#039;&amp;quot;&amp;gt;&#039;;&lt;br /&gt;
&lt;br /&gt;
	if not args[&amp;quot;name&amp;quot;] then&lt;br /&gt;
		inner = inner .. geodechtml&lt;br /&gt;
				.. &#039;&amp;lt;span style=&amp;quot;display:none&amp;quot;&amp;gt;&amp;amp;#xfeff; / &#039; .. geonumhtml .. &#039;&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
	else&lt;br /&gt;
		inner = inner .. &#039;&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&#039; .. geodechtml&lt;br /&gt;
				.. &#039;&amp;lt;span style=&amp;quot;display:none&amp;quot;&amp;gt;&amp;amp;#xfeff; / &#039; .. geonumhtml .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
				.. &#039;&amp;lt;span style=&amp;quot;display:none&amp;quot;&amp;gt;&amp;amp;#xfeff; (&amp;lt;span class=&amp;quot;fn org&amp;quot;&amp;gt;&#039;&lt;br /&gt;
				.. args[&amp;quot;name&amp;quot;] .. &#039;&amp;lt;/span&amp;gt;)&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
    local stylesheetLink = &#039;Module:Coordinates&#039; .. ( isSandbox and &#039;/sandbox&#039; or &#039;&#039; ) .. &#039;/styles.css&#039;&lt;br /&gt;
	return mw.getCurrentFrame():extensionTag{&lt;br /&gt;
		name = &#039;templatestyles&#039;, args = { src = stylesheetLink }&lt;br /&gt;
	} .. &#039;&amp;lt;span class=&amp;quot;plainlinks nourlexpansion&amp;quot;&amp;gt;[&#039; .. coord_link .. uriComponents ..&lt;br /&gt;
	&#039; &#039; .. inner .. &#039;]&amp;lt;/span&amp;gt;&#039; .. &#039;[[Category:Pages using gadget WikiMiniAtlas]]&#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[ Helper function, convert decimal to degrees ]]&lt;br /&gt;
local function convert_dec2dms_d(coordinate)&lt;br /&gt;
	local d = math_mod._round( coordinate, 0 ) .. &amp;quot;°&amp;quot;&lt;br /&gt;
	return d .. &amp;quot;&amp;quot;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[ Helper function, convert decimal to degrees and minutes ]]&lt;br /&gt;
local function convert_dec2dms_dm(coordinate)&lt;br /&gt;
	coordinate = math_mod._round( coordinate * 60, 0 );&lt;br /&gt;
	local m = coordinate % 60;&lt;br /&gt;
	coordinate = math.floor( (coordinate - m) / 60 );&lt;br /&gt;
	local d = coordinate % 360 ..&amp;quot;°&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	return d .. string.format( &amp;quot;%02d′&amp;quot;, m )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[ Helper function, convert decimal to degrees, minutes, and seconds ]]&lt;br /&gt;
local function convert_dec2dms_dms(coordinate)&lt;br /&gt;
	coordinate = math_mod._round( coordinate * 60 * 60, 0 );&lt;br /&gt;
	local s = coordinate % 60&lt;br /&gt;
	coordinate = math.floor( (coordinate - s) / 60 );&lt;br /&gt;
	local m = coordinate % 60&lt;br /&gt;
	coordinate = math.floor( (coordinate - m) / 60 );&lt;br /&gt;
	local d = coordinate % 360 ..&amp;quot;°&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	return d .. string.format( &amp;quot;%02d′&amp;quot;, m ) .. string.format( &amp;quot;%02d″&amp;quot;, s )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Helper function, convert decimal latitude or longitude to&lt;br /&gt;
degrees, minutes, and seconds format based on the specified precision.&lt;br /&gt;
]]&lt;br /&gt;
local function convert_dec2dms(coordinate, firstPostfix, secondPostfix, precision)&lt;br /&gt;
	local coord = tonumber(coordinate)&lt;br /&gt;
	local postfix&lt;br /&gt;
	if coord &amp;gt;= 0 then&lt;br /&gt;
		postfix = firstPostfix&lt;br /&gt;
	else&lt;br /&gt;
		postfix = secondPostfix&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	precision = precision:lower();&lt;br /&gt;
	if precision == &amp;quot;dms&amp;quot; then&lt;br /&gt;
		return convert_dec2dms_dms( math.abs( coord ) ) .. postfix;&lt;br /&gt;
	elseif precision == &amp;quot;dm&amp;quot; then&lt;br /&gt;
		return convert_dec2dms_dm( math.abs( coord ) ) .. postfix;&lt;br /&gt;
	elseif precision == &amp;quot;d&amp;quot; then&lt;br /&gt;
		return convert_dec2dms_d( math.abs( coord ) ) .. postfix;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Convert DMS format into a N or E decimal coordinate&lt;br /&gt;
]]&lt;br /&gt;
local function convert_dms2dec(direction, degrees_str, minutes_str, seconds_str)&lt;br /&gt;
	local degrees = tonumber(degrees_str)&lt;br /&gt;
	local minutes = tonumber(minutes_str) or 0&lt;br /&gt;
	local seconds = tonumber(seconds_str) or 0&lt;br /&gt;
&lt;br /&gt;
	local factor = 1&lt;br /&gt;
	if direction == &amp;quot;S&amp;quot; or direction == &amp;quot;W&amp;quot; then&lt;br /&gt;
		factor = -1&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local precision = 0&lt;br /&gt;
	if seconds_str then&lt;br /&gt;
		precision = 5 + math.max( math_mod._precision(seconds_str), 0 );&lt;br /&gt;
	elseif minutes_str and minutes_str ~= &#039;&#039; then&lt;br /&gt;
		precision = 3 + math.max( math_mod._precision(minutes_str), 0 );&lt;br /&gt;
	else&lt;br /&gt;
		precision = math.max( math_mod._precision(degrees_str), 0 );&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local decimal = factor * (degrees+(minutes+seconds/60)/60)&lt;br /&gt;
	return string.format( &amp;quot;%.&amp;quot; .. precision .. &amp;quot;f&amp;quot;, decimal ) -- not tonumber since this whole thing is string based.&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Checks input values to for out of range errors.&lt;br /&gt;
]]&lt;br /&gt;
local function validate( lat_d, lat_m, lat_s, long_d, long_m, long_s, source, strong )&lt;br /&gt;
	local errors = {};&lt;br /&gt;
	lat_d = tonumber( lat_d ) or 0;&lt;br /&gt;
	lat_m = tonumber( lat_m ) or 0;&lt;br /&gt;
	lat_s = tonumber( lat_s ) or 0;&lt;br /&gt;
	long_d = tonumber( long_d ) or 0;&lt;br /&gt;
	long_m = tonumber( long_m ) or 0;&lt;br /&gt;
	long_s = tonumber( long_s ) or 0;&lt;br /&gt;
&lt;br /&gt;
	if strong then&lt;br /&gt;
		if lat_d &amp;lt; 0 then&lt;br /&gt;
			table.insert(errors, {source, &amp;quot;latitude degrees &amp;lt; 0 with hemisphere flag&amp;quot;})&lt;br /&gt;
		end&lt;br /&gt;
		if long_d &amp;lt; 0 then&lt;br /&gt;
			table.insert(errors, {source, &amp;quot;longitude degrees &amp;lt; 0 with hemisphere flag&amp;quot;})&lt;br /&gt;
		end&lt;br /&gt;
		--[[&lt;br /&gt;
		#coordinates is inconsistent about whether this is an error.  If globe: is&lt;br /&gt;
		specified, it won&#039;t error on this condition, but otherwise it will.&lt;br /&gt;
&lt;br /&gt;
		For not simply disable this check.&lt;br /&gt;
&lt;br /&gt;
		if long_d &amp;gt; 180 then&lt;br /&gt;
			table.insert(errors, {source, &amp;quot;longitude degrees &amp;gt; 180 with hemisphere flag&amp;quot;})&lt;br /&gt;
		end&lt;br /&gt;
		]]&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if lat_d &amp;gt; 90 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;latitude degrees &amp;gt; 90&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if lat_d &amp;lt; -90 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;latitude degrees &amp;lt; -90&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if lat_m &amp;gt;= 60 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;latitude minutes &amp;gt;= 60&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if lat_m &amp;lt; 0 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;latitude minutes &amp;lt; 0&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if lat_s &amp;gt;= 60 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;latitude seconds &amp;gt;= 60&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if lat_s &amp;lt; 0 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;latitude seconds &amp;lt; 0&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if long_d &amp;gt;= 360 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;longitude degrees &amp;gt;= 360&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if long_d &amp;lt;= -360 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;longitude degrees &amp;lt;= -360&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if long_m &amp;gt;= 60 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;longitude minutes &amp;gt;= 60&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if long_m &amp;lt; 0 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;longitude minutes &amp;lt; 0&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if long_s &amp;gt;= 60 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;longitude seconds &amp;gt;= 60&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
	if long_s &amp;lt; 0 then&lt;br /&gt;
		table.insert(errors, {source, &amp;quot;longitude seconds &amp;lt; 0&amp;quot;})&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return errors;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
parseDec&lt;br /&gt;
&lt;br /&gt;
Transforms decimal format latitude and longitude into the&lt;br /&gt;
structure to be used in displaying coordinates&lt;br /&gt;
]]&lt;br /&gt;
local function parseDec( lat, long, format )&lt;br /&gt;
	local coordinateSpec = {}&lt;br /&gt;
	local errors = {}&lt;br /&gt;
&lt;br /&gt;
	if not long then&lt;br /&gt;
		return nil, {{&amp;quot;parseDec&amp;quot;, &amp;quot;Missing longitude&amp;quot;}}&lt;br /&gt;
	elseif not tonumber(long) then&lt;br /&gt;
		return nil, {{&amp;quot;parseDec&amp;quot;, &amp;quot;Longitude could not be parsed as a number: &amp;quot; .. long}}&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	errors = validate( lat, nil, nil, long, nil, nil, &#039;parseDec&#039;, false );&lt;br /&gt;
	coordinateSpec[&amp;quot;dec-lat&amp;quot;]  = lat;&lt;br /&gt;
	coordinateSpec[&amp;quot;dec-long&amp;quot;] = long;&lt;br /&gt;
&lt;br /&gt;
	local mode = coordinates.determineMode( lat, long );&lt;br /&gt;
	coordinateSpec[&amp;quot;dms-lat&amp;quot;]  = convert_dec2dms( lat, &amp;quot;N&amp;quot;, &amp;quot;S&amp;quot;, mode)  -- {{coord/dec2dms|{{{1}}}|N|S|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}&lt;br /&gt;
	coordinateSpec[&amp;quot;dms-long&amp;quot;] = convert_dec2dms( long, &amp;quot;E&amp;quot;, &amp;quot;W&amp;quot;, mode)  -- {{coord/dec2dms|{{{2}}}|E|W|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}&lt;br /&gt;
&lt;br /&gt;
	if format then&lt;br /&gt;
		coordinateSpec.default = format&lt;br /&gt;
	else&lt;br /&gt;
		coordinateSpec.default = &amp;quot;dec&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return coordinateSpec, errors&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
parseDMS&lt;br /&gt;
&lt;br /&gt;
Transforms degrees, minutes, seconds format latitude and longitude&lt;br /&gt;
into the a structure to be used in displaying coordinates&lt;br /&gt;
]]&lt;br /&gt;
local function parseDMS( lat_d, lat_m, lat_s, lat_f, long_d, long_m, long_s, long_f, format )&lt;br /&gt;
	local coordinateSpec, errors, backward = {}, {}&lt;br /&gt;
&lt;br /&gt;
	lat_f = lat_f:upper();&lt;br /&gt;
	long_f = long_f:upper();&lt;br /&gt;
&lt;br /&gt;
	-- Check if specified backward&lt;br /&gt;
	if lat_f == &#039;E&#039; or lat_f == &#039;W&#039; then&lt;br /&gt;
		lat_d, long_d, lat_m, long_m, lat_s, long_s, lat_f, long_f, backward = long_d, lat_d, long_m, lat_m, long_s, lat_s, long_f, lat_f, true;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	errors = validate( lat_d, lat_m, lat_s, long_d, long_m, long_s, &#039;parseDMS&#039;, true );&lt;br /&gt;
	if not long_d then&lt;br /&gt;
		return nil, {{&amp;quot;parseDMS&amp;quot;, &amp;quot;Missing longitude&amp;quot; }}&lt;br /&gt;
	elseif not tonumber(long_d) then&lt;br /&gt;
		return nil, {{&amp;quot;parseDMS&amp;quot;, &amp;quot;Longitude could not be parsed as a number:&amp;quot; .. long_d }}&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if not lat_m and not lat_s and not long_m and not long_s and #errors == 0 then&lt;br /&gt;
		if math_mod._precision( lat_d ) &amp;gt; 0 or math_mod._precision( long_d ) &amp;gt; 0 then&lt;br /&gt;
			if lat_f:upper() == &#039;S&#039; then&lt;br /&gt;
				lat_d = &#039;-&#039; .. lat_d;&lt;br /&gt;
			end&lt;br /&gt;
			if long_f:upper() == &#039;W&#039; then&lt;br /&gt;
				long_d = &#039;-&#039; .. long_d;&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			return parseDec( lat_d, long_d, format );&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	coordinateSpec[&amp;quot;dms-lat&amp;quot;]  = lat_d..&amp;quot;°&amp;quot;..optionalArg(lat_m,&amp;quot;′&amp;quot;) .. optionalArg(lat_s,&amp;quot;″&amp;quot;) .. lat_f&lt;br /&gt;
	coordinateSpec[&amp;quot;dms-long&amp;quot;] = long_d..&amp;quot;°&amp;quot;..optionalArg(long_m,&amp;quot;′&amp;quot;) .. optionalArg(long_s,&amp;quot;″&amp;quot;) .. long_f&lt;br /&gt;
	coordinateSpec[&amp;quot;dec-lat&amp;quot;]  = convert_dms2dec(lat_f, lat_d, lat_m, lat_s) -- {{coord/dms2dec|{{{4}}}|{{{1}}}|0{{{2}}}|0{{{3}}}}}&lt;br /&gt;
	coordinateSpec[&amp;quot;dec-long&amp;quot;] = convert_dms2dec(long_f, long_d, long_m, long_s) -- {{coord/dms2dec|{{{8}}}|{{{5}}}|0{{{6}}}|0{{{7}}}}}&lt;br /&gt;
&lt;br /&gt;
	if format then&lt;br /&gt;
		coordinateSpec.default = format&lt;br /&gt;
	else&lt;br /&gt;
		coordinateSpec.default = &amp;quot;dms&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return coordinateSpec, errors, backward&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Check the input arguments for coord to determine the kind of data being provided&lt;br /&gt;
and then make the necessary processing.&lt;br /&gt;
]]&lt;br /&gt;
local function formatTest(args)&lt;br /&gt;
	local result, errors&lt;br /&gt;
	local backward, primary = false, false&lt;br /&gt;
&lt;br /&gt;
	local function getParam(args, lim)&lt;br /&gt;
		local ret = {}&lt;br /&gt;
		for i = 1, lim do&lt;br /&gt;
			ret[i] = args[i] or &#039;&#039;&lt;br /&gt;
		end&lt;br /&gt;
		return table.concat(ret, &#039;_&#039;)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if not args[1] then&lt;br /&gt;
		-- no lat logic&lt;br /&gt;
		return errorPrinter( {{&amp;quot;formatTest&amp;quot;, &amp;quot;Missing latitude&amp;quot;}} )&lt;br /&gt;
	elseif not tonumber(args[1]) then&lt;br /&gt;
		-- bad lat logic&lt;br /&gt;
		return errorPrinter( {{&amp;quot;formatTest&amp;quot;, &amp;quot;Unable to parse latitude as a number:&amp;quot; .. args[1]}} )&lt;br /&gt;
	elseif not args[4] and not args[5] and not args[6] then&lt;br /&gt;
		-- dec logic&lt;br /&gt;
		result, errors = parseDec(args[1], args[2], args.format)&lt;br /&gt;
		if not result then&lt;br /&gt;
			return errorPrinter(errors);&lt;br /&gt;
		end&lt;br /&gt;
		-- formatting for geohack: geohack expects D_N_D_E notation or D;D notation&lt;br /&gt;
		-- wikiminiatlas doesn&#039;t support D;D notation&lt;br /&gt;
		-- #coordinates parserfunction doesn&#039;t support negative decimals with NSWE&lt;br /&gt;
		result.param = table.concat({&lt;br /&gt;
			math.abs(tonumber(args[1])),&lt;br /&gt;
			((tonumber(args[1]) or 0) &amp;lt; 0) and &#039;S&#039; or &#039;N&#039;,&lt;br /&gt;
			math.abs(tonumber(args[2])),&lt;br /&gt;
			((tonumber(args[2]) or 0) &amp;lt; 0) and &#039;W&#039; or &#039;E&#039;,&lt;br /&gt;
			args[3] or &#039;&#039;}, &#039;_&#039;)&lt;br /&gt;
	elseif dmsTest(args[4], args[8]) then&lt;br /&gt;
		-- dms logic&lt;br /&gt;
		result, errors, backward = parseDMS(args[1], args[2], args[3], args[4],&lt;br /&gt;
			args[5], args[6], args[7], args[8], args.format)&lt;br /&gt;
		if args[10] then&lt;br /&gt;
			table.insert(errors, {&#039;formatTest&#039;, &#039;Extra unexpected parameters&#039;})&lt;br /&gt;
		end&lt;br /&gt;
		if not result then&lt;br /&gt;
			return errorPrinter(errors)&lt;br /&gt;
		end&lt;br /&gt;
		result.param = getParam(args, 9)&lt;br /&gt;
	elseif dmsTest(args[3], args[6]) then&lt;br /&gt;
		-- dm logic&lt;br /&gt;
		result, errors, backward = parseDMS(args[1], args[2], nil, args[3],&lt;br /&gt;
			args[4], args[5], nil, args[6], args[&#039;format&#039;])&lt;br /&gt;
		if args[8] then&lt;br /&gt;
			table.insert(errors, {&#039;formatTest&#039;, &#039;Extra unexpected parameters&#039;})&lt;br /&gt;
		end&lt;br /&gt;
		if not result then&lt;br /&gt;
			return errorPrinter(errors)&lt;br /&gt;
		end&lt;br /&gt;
		result.param = getParam(args, 7)&lt;br /&gt;
	elseif dmsTest(args[2], args[4]) then&lt;br /&gt;
		-- d logic&lt;br /&gt;
		result, errors, backward = parseDMS(args[1], nil, nil, args[2],&lt;br /&gt;
			args[3], nil, nil, args[4], args.format)&lt;br /&gt;
		if args[6] then&lt;br /&gt;
			table.insert(errors, {&#039;formatTest&#039;, &#039;Extra unexpected parameters&#039;})&lt;br /&gt;
		end&lt;br /&gt;
		if not result then&lt;br /&gt;
			return errorPrinter(errors)&lt;br /&gt;
		end&lt;br /&gt;
		result.param = getParam(args, 5)&lt;br /&gt;
	else&lt;br /&gt;
		-- Error&lt;br /&gt;
		return errorPrinter({{&amp;quot;formatTest&amp;quot;, &amp;quot;Unknown argument format&amp;quot;}}) .. &#039;[[Category:Pages with malformed coordinate tags]]&#039;&lt;br /&gt;
	end&lt;br /&gt;
	result.name = args.name&lt;br /&gt;
&lt;br /&gt;
	local extra_param = {&#039;dim&#039;, &#039;globe&#039;, &#039;scale&#039;, &#039;region&#039;, &#039;source&#039;, &#039;type&#039;}&lt;br /&gt;
	for _, v in ipairs(extra_param) do&lt;br /&gt;
		if args[v] then&lt;br /&gt;
			table.insert(errors, {&#039;formatTest&#039;, &#039;Parameter: &amp;quot;&#039; .. v .. &#039;=&amp;quot; should be &amp;quot;&#039; .. v .. &#039;:&amp;quot;&#039; })&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local ret = specPrinter(args, result)&lt;br /&gt;
	if #errors &amp;gt; 0 then&lt;br /&gt;
		ret = ret .. &#039; &#039; .. errorPrinter(errors) .. &#039;[[Category:Pages with malformed coordinate tags]]&#039;&lt;br /&gt;
	end&lt;br /&gt;
	return ret, backward&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Generate Wikidata tracking categories.&lt;br /&gt;
]]&lt;br /&gt;
local function makeWikidataCategories(qid)&lt;br /&gt;
	local ret&lt;br /&gt;
	local qid = qid or mw.wikibase.getEntityIdForCurrentPage()&lt;br /&gt;
	if mw.wikibase and current_page.namespace == 0 then&lt;br /&gt;
		if qid and mw.wikibase.entityExists(qid) and mw.wikibase.getBestStatements(qid, &amp;quot;P625&amp;quot;) and mw.wikibase.getBestStatements(qid, &amp;quot;P625&amp;quot;)[1] then&lt;br /&gt;
			local snaktype = mw.wikibase.getBestStatements(qid, &amp;quot;P625&amp;quot;)[1].mainsnak.snaktype&lt;br /&gt;
			if snaktype == &#039;value&#039; then&lt;br /&gt;
				-- coordinates exist both here and on Wikidata, and can be compared.&lt;br /&gt;
				ret = &#039;Coordinates on Wikidata&#039;&lt;br /&gt;
			elseif snaktype == &#039;somevalue&#039; then&lt;br /&gt;
				ret = &#039;Coordinates on Wikidata set to unknown value&#039;&lt;br /&gt;
			elseif snaktype == &#039;novalue&#039; then&lt;br /&gt;
				ret = &#039;Coordinates on Wikidata set to no value&#039;&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- We have to either import the coordinates to Wikidata or remove them here.&lt;br /&gt;
			ret = &#039;Coordinates not on Wikidata&#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if ret then&lt;br /&gt;
		return string.format(&#039;[[Category:%s]]&#039;, ret)&lt;br /&gt;
	else&lt;br /&gt;
		return &#039;&#039;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
link&lt;br /&gt;
&lt;br /&gt;
Simple function to export the coordinates link for other uses.&lt;br /&gt;
&lt;br /&gt;
Usage:&lt;br /&gt;
	{{#invoke:Coordinates | link }}&lt;br /&gt;
&lt;br /&gt;
]]&lt;br /&gt;
function coordinates.link(frame)&lt;br /&gt;
	return coord_link;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
dec2dms&lt;br /&gt;
&lt;br /&gt;
Wrapper to allow templates to call dec2dms directly.&lt;br /&gt;
&lt;br /&gt;
Usage:&lt;br /&gt;
	{{#invoke:Coordinates | dec2dms | decimal_coordinate | positive_suffix |&lt;br /&gt;
		negative_suffix | precision }}&lt;br /&gt;
&lt;br /&gt;
decimal_coordinate is converted to DMS format.  If positive, the positive_suffix&lt;br /&gt;
is appended (typical N or E), if negative, the negative suffix is appended.  The&lt;br /&gt;
specified precision is one of &#039;D&#039;, &#039;DM&#039;, or &#039;DMS&#039; to specify the level of detail&lt;br /&gt;
to use.&lt;br /&gt;
]]&lt;br /&gt;
coordinates.dec2dms = makeInvokeFunc(&#039;_dec2dms&#039;)&lt;br /&gt;
function coordinates._dec2dms(args)&lt;br /&gt;
	local coordinate = args[1]&lt;br /&gt;
	local firstPostfix = args[2] or &#039;&#039;&lt;br /&gt;
	local secondPostfix = args[3] or &#039;&#039;&lt;br /&gt;
	local precision = args[4] or &#039;&#039;&lt;br /&gt;
&lt;br /&gt;
	return convert_dec2dms(coordinate, firstPostfix, secondPostfix, precision)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Helper function to determine whether to use D, DM, or DMS&lt;br /&gt;
format depending on the precision of the decimal input.&lt;br /&gt;
]]&lt;br /&gt;
function coordinates.determineMode( value1, value2 )&lt;br /&gt;
	local precision = math.max( math_mod._precision( value1 ), math_mod._precision( value2 ) );&lt;br /&gt;
	if precision &amp;lt;= 0 then&lt;br /&gt;
		return &#039;d&#039;&lt;br /&gt;
	elseif precision &amp;lt;= 2 then&lt;br /&gt;
		return &#039;dm&#039;;&lt;br /&gt;
	else&lt;br /&gt;
		return &#039;dms&#039;;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
dms2dec&lt;br /&gt;
&lt;br /&gt;
Wrapper to allow templates to call dms2dec directly.&lt;br /&gt;
&lt;br /&gt;
Usage:&lt;br /&gt;
	{{#invoke:Coordinates | dms2dec | direction_flag | degrees |&lt;br /&gt;
		minutes | seconds }}&lt;br /&gt;
&lt;br /&gt;
Converts DMS values specified as degrees, minutes, seconds too decimal format.&lt;br /&gt;
direction_flag is one of N, S, E, W, and determines whether the output is&lt;br /&gt;
positive (i.e. N and E) or negative (i.e. S and W).&lt;br /&gt;
]]&lt;br /&gt;
coordinates.dms2dec = makeInvokeFunc(&#039;_dms2dec&#039;)&lt;br /&gt;
function coordinates._dms2dec(args)&lt;br /&gt;
	local direction = args[1]&lt;br /&gt;
	local degrees = args[2]&lt;br /&gt;
	local minutes = args[3]&lt;br /&gt;
	local seconds = args[4]&lt;br /&gt;
&lt;br /&gt;
	return convert_dms2dec(direction, degrees, minutes, seconds)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
coord&lt;br /&gt;
&lt;br /&gt;
Main entry point for Lua function to replace {{coord}}&lt;br /&gt;
&lt;br /&gt;
Usage:&lt;br /&gt;
	{{#invoke:Coordinates | coord }}&lt;br /&gt;
	{{#invoke:Coordinates | coord | lat | long }}&lt;br /&gt;
	{{#invoke:Coordinates | coord | lat | lat_flag | long | long_flag }}&lt;br /&gt;
	...&lt;br /&gt;
&lt;br /&gt;
	Refer to {{coord}} documentation page for many additional parameters and&lt;br /&gt;
	configuration options.&lt;br /&gt;
&lt;br /&gt;
Note: This function provides the visual display elements of {{coord}}.  In&lt;br /&gt;
order to load coordinates into the database, the {{#coordinates:}} parser&lt;br /&gt;
function must also be called, this is done automatically in the Lua&lt;br /&gt;
version of {{coord}}.&lt;br /&gt;
]]&lt;br /&gt;
coordinates.coord = makeInvokeFunc(&#039;_coord&#039;)&lt;br /&gt;
function coordinates._coord(args)&lt;br /&gt;
	if not tonumber(args[1]) and not args[2] then&lt;br /&gt;
		args[3] = args[1]; args[1] = nil&lt;br /&gt;
		local entity = mw.wikibase.getEntityObject(args.qid)&lt;br /&gt;
		if entity&lt;br /&gt;
			and entity.claims&lt;br /&gt;
			and entity.claims.P625&lt;br /&gt;
			and entity.claims.P625[1].mainsnak.snaktype == &#039;value&#039;&lt;br /&gt;
		then&lt;br /&gt;
			local precision = entity.claims.P625[1].mainsnak.datavalue.value.precision&lt;br /&gt;
			args[1] = entity.claims.P625[1].mainsnak.datavalue.value.latitude&lt;br /&gt;
			args[2] = entity.claims.P625[1].mainsnak.datavalue.value.longitude&lt;br /&gt;
			if precision then&lt;br /&gt;
				precision = -math_mod._round(math.log(precision)/math.log(10),0)&lt;br /&gt;
				args[1] = math_mod._round(args[1],precision)&lt;br /&gt;
				args[2] = math_mod._round(args[2],precision)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local contents, backward = formatTest(args)&lt;br /&gt;
	local Notes = args.notes or &#039;&#039;&lt;br /&gt;
	local Display = args.display and args.display:lower() or &#039;inline&#039;&lt;br /&gt;
&lt;br /&gt;
	-- it and ti are short for inline,title and title,inline&lt;br /&gt;
	local function isInline(s)&lt;br /&gt;
		-- Finds whether coordinates are displayed inline.&lt;br /&gt;
		return s:find(&#039;inline&#039;) ~= nil or s == &#039;i&#039; or s == &#039;it&#039; or s == &#039;ti&#039;&lt;br /&gt;
	end&lt;br /&gt;
	local function isInTitle(s)&lt;br /&gt;
		-- Finds whether coordinates are displayed in the title.&lt;br /&gt;
		return s:find(&#039;title&#039;) ~= nil or s == &#039;t&#039; or s == &#039;it&#039; or s == &#039;ti&#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local function coord_wrapper(in_args)&lt;br /&gt;
		-- Calls the parser function {{#coordinates:}}.&lt;br /&gt;
		return mw.getCurrentFrame():callParserFunction(&#039;#coordinates&#039;, in_args) or &#039;&#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local text = &#039;&#039;&lt;br /&gt;
	if isInline(Display) then&lt;br /&gt;
		text = text .. &#039;&amp;lt;span class=&amp;quot;geo-inline&amp;quot;&amp;gt;&#039; .. contents .. Notes .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
	end&lt;br /&gt;
	if isInTitle(Display) then&lt;br /&gt;
		-- Add to output since indicator content is invisible to Lua later on&lt;br /&gt;
		if not isInline(Display) then&lt;br /&gt;
			text = text .. &#039;&amp;lt;span class=&amp;quot;geo-inline-hidden noexcerpt&amp;quot;&amp;gt;&#039; .. contents .. Notes .. &#039;&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
		end&lt;br /&gt;
		text = text .. displaytitle(contents .. Notes) .. makeWikidataCategories(args.qid)&lt;br /&gt;
	end&lt;br /&gt;
	if not args.nosave then&lt;br /&gt;
		local page_title, count = mw.title.getCurrentTitle(), 1&lt;br /&gt;
		if backward then&lt;br /&gt;
			local tmp = {}&lt;br /&gt;
			while not string.find((args[count-1] or &#039;&#039;), &#039;[EW]&#039;) do tmp[count] = (args[count] or &#039;&#039;); count = count+1 end&lt;br /&gt;
			tmp.count = count; count = 2*(count-1)&lt;br /&gt;
			while count &amp;gt;= tmp.count do table.insert(tmp, 1, (args[count] or &#039;&#039;)); count = count-1 end&lt;br /&gt;
			for i, v in ipairs(tmp) do args[i] = v end&lt;br /&gt;
		else&lt;br /&gt;
			while count &amp;lt;= 9 do args[count] = (args[count] or &#039;&#039;); count = count+1 end&lt;br /&gt;
		end&lt;br /&gt;
		if isInTitle(Display) and not page_title.isTalkPage and page_title.subpageText ~= &#039;doc&#039; and page_title.subpageText ~= &#039;testcases&#039; then args[10] = &#039;primary&#039; end&lt;br /&gt;
		args.notes, args.format, args.display = nil&lt;br /&gt;
		text = text .. coord_wrapper(args)&lt;br /&gt;
	end&lt;br /&gt;
	return text&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
coord2text&lt;br /&gt;
&lt;br /&gt;
Extracts a single value from a transclusion of {{Coord}}.&lt;br /&gt;
IF THE GEOHACK LINK SYNTAX CHANGES THIS FUNCTION MUST BE MODIFIED.&lt;br /&gt;
&lt;br /&gt;
Usage:&lt;br /&gt;
&lt;br /&gt;
    {{#invoke:Coordinates | coord2text | {{Coord}} | parameter }}&lt;br /&gt;
&lt;br /&gt;
Valid values for the second parameter are: lat (signed integer), long (signed integer), type, scale, dim, region, globe, source&lt;br /&gt;
&lt;br /&gt;
]]&lt;br /&gt;
function coordinates._coord2text(coord,type)&lt;br /&gt;
	if coord == &#039;&#039; or type == &#039;&#039; or not type then return nil end&lt;br /&gt;
	type = mw.text.trim(type)&lt;br /&gt;
	if type == &#039;lat&#039; or type == &#039;long&#039; then&lt;br /&gt;
		local result, negative = mw.text.split((mw.ustring.match(coord,&#039;[%.%d]+°[NS] [%.%d]+°[EW]&#039;) or &#039;&#039;), &#039; &#039;)&lt;br /&gt;
		if type == &#039;lat&#039; then&lt;br /&gt;
			result, negative = result[1], &#039;S&#039;&lt;br /&gt;
		else&lt;br /&gt;
			result, negative = result[2], &#039;W&#039;&lt;br /&gt;
		end&lt;br /&gt;
		result = mw.text.split(result, &#039;°&#039;)&lt;br /&gt;
		if result[2] == negative then result[1] = &#039;-&#039;..result[1] end&lt;br /&gt;
		return result[1]&lt;br /&gt;
	else&lt;br /&gt;
		return mw.ustring.match(coord, &#039;params=.-_&#039; .. type .. &#039;:(.-)[ _]&#039;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function coordinates.coord2text(frame)&lt;br /&gt;
	return coordinates._coord2text(frame.args[1],frame.args[2])&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
coordinsert&lt;br /&gt;
&lt;br /&gt;
Injects some text into the Geohack link of a transclusion of {{Coord}} (if that text isn&#039;t already in the transclusion). Outputs the modified transclusion of {{Coord}}.&lt;br /&gt;
IF THE GEOHACK LINK SYNTAX CHANGES THIS FUNCTION MUST BE MODIFIED.&lt;br /&gt;
&lt;br /&gt;
Usage:&lt;br /&gt;
&lt;br /&gt;
    {{#invoke:Coordinates | coordinsert | {{Coord}} | parameter:value | parameter:value | … }}&lt;br /&gt;
&lt;br /&gt;
Do not make Geohack unhappy by inserting something which isn&#039;t mentioned in the {{Coord}} documentation.&lt;br /&gt;
&lt;br /&gt;
]]&lt;br /&gt;
function coordinates.coordinsert(frame)&lt;br /&gt;
	-- for the 2nd or later integer parameter (the first is the coord template, as above)&lt;br /&gt;
	for i, v in ipairs(frame.args) do&lt;br /&gt;
		if i ~= 1 then&lt;br /&gt;
			-- if we cannot find in the coord_template the i_th coordinsert parameter e.g. region&lt;br /&gt;
			if not mw.ustring.find(frame.args[1], (mw.ustring.match(frame.args[i], &#039;^(.-:)&#039;) or &#039;&#039;)) then&lt;br /&gt;
				-- find from the params= up to the first possibly-present underscore&lt;br /&gt;
				-- and append the i_th coordinsert parameter and a space&lt;br /&gt;
				-- IDK why we&#039;re adding a space but it does seem somewhat convenient&lt;br /&gt;
				frame.args[1] = mw.ustring.gsub(frame.args[1], &#039;(params=.-)_? &#039;, &#039;%1_&#039;..frame.args[i]..&#039; &#039;)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if frame.args.name then&lt;br /&gt;
		-- if we can&#039;t find the vcard class&lt;br /&gt;
		if not mw.ustring.find(frame.args[1], &#039;&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;&#039;) then&lt;br /&gt;
			-- take something that looks like a coord template and add the vcard span with class and fn org class&lt;br /&gt;
			local namestr = frame.args.name&lt;br /&gt;
			frame.args[1] = mw.ustring.gsub(&lt;br /&gt;
				frame.args[1],&lt;br /&gt;
				&#039;(&amp;lt;span class=&amp;quot;geo%-default&amp;quot;&amp;gt;)(&amp;lt;span[^&amp;lt;&amp;gt;]*&amp;gt;[^&amp;lt;&amp;gt;]*&amp;lt;/span&amp;gt;&amp;lt;span[^&amp;lt;&amp;gt;]*&amp;gt;[^&amp;lt;&amp;gt;]*&amp;lt;span[^&amp;lt;&amp;gt;]*&amp;gt;[^&amp;lt;&amp;gt;]*&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;)(&amp;lt;/span&amp;gt;)&#039;,&lt;br /&gt;
				&#039;%1&amp;lt;span class=&amp;quot;vcard&amp;quot;&amp;gt;%2&amp;lt;span style=&amp;quot;display:none&amp;quot;&amp;gt;&amp;amp;#xfeff; (&amp;lt;span class=&amp;quot;fn org&amp;quot;&amp;gt;&#039; .. namestr .. &#039;&amp;lt;/span&amp;gt;)&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;%3&#039;&lt;br /&gt;
			)&lt;br /&gt;
			-- then find anything from coordinates parameters to the &#039;end&#039; and attach the title parameter&lt;br /&gt;
			frame.args[1] = mw.ustring.gsub(&lt;br /&gt;
				frame.args[1],&lt;br /&gt;
				&#039;(&amp;amp;params=[^&amp;amp;&amp;quot;&amp;lt;&amp;gt;%[%] ]*) &#039;,&lt;br /&gt;
				&#039;%1&amp;amp;title=&#039; .. mw.uri.encode(namestr) .. &#039; &#039;&lt;br /&gt;
			)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- replace the existing indicator with a new indicator using the modified content&lt;br /&gt;
	frame.args[1] = mw.ustring.gsub(&lt;br /&gt;
		frame.args[1],&lt;br /&gt;
		&#039;(&amp;lt;span class=&amp;quot;geo%-inline[^&amp;quot;]*&amp;quot;&amp;gt;(.+)&amp;lt;/span&amp;gt;)\127[^\127]*UNIQ%-%-indicator%-%x+%-%-?QINU[^\127]*\127&#039;,&lt;br /&gt;
		function (inline, coord) return inline .. displaytitle(coord) end&lt;br /&gt;
	)&lt;br /&gt;
&lt;br /&gt;
	return frame.args[1]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return coordinates&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Flagicon_image&amp;diff=65746</id>
		<title>Template:Flagicon image</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Flagicon_image&amp;diff=65746"/>
		<updated>2024-08-16T20:32:56Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span class=&amp;quot;flagicon&amp;quot;&amp;gt;[[File:{{safesubst&amp;lt;noinclude /&amp;gt;:#if:{{{1|}}}|{{{1}}}|Flag placeholder.svg}}|{{{size|23x15px}}}|{{{border|{{safesubst&amp;lt;noinclude /&amp;gt;:#if:{{{1|}}}|border}}}}} |alt=|link={{{link|}}}]]&amp;lt;/span&amp;gt;&amp;lt;noinclude&amp;gt;{{documentation}}&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Flagicon&amp;diff=65744</id>
		<title>Template:Flagicon</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Flagicon&amp;diff=65744"/>
		<updated>2024-08-16T20:32:51Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Template:Flag icon]]&lt;br /&gt;
&lt;br /&gt;
{{Redirect category shell|&lt;br /&gt;
{{R from move}}&lt;br /&gt;
{{R from modification}}&lt;br /&gt;
{{R from template shortcut}}&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Flag/core&amp;diff=65742</id>
		<title>Template:Flag/core</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Flag/core&amp;diff=65742"/>
		<updated>2024-08-16T20:32:51Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span class=&amp;quot;flagicon&amp;quot;&amp;gt;[[File:{{{flag alias-{{{variant}}}|{{#if:{{{flag alias|}}}|{{{flag alias}}}|Flag placeholder.svg}}}}}|{{#if:{{{size|}}}|{{{size}}}|{{{size flag alias-{{{variant}}}|{{#if:{{{variant|}}}|23x15px|{{{size flag alias|23x15px}}}}}}}}}}|{{{border-{{{variant}}}|{{{border|border}}}}}} |alt=|link=]]&amp;amp;nbsp;{{#switch:{{{flag alias}}}|Flag of Switzerland.svg|Flag of the Vatican City.svg|Flag of Switzerland (Pantone).svg|Flag of Vatican City State - 2023 version.svg=&amp;amp;nbsp;}}{{#ifeq:{{{alias}}}|Nepal|&amp;amp;nbsp;&amp;amp;nbsp;}}&amp;lt;/span&amp;gt;[[{{{alias}}}|{{{name}}}]]&amp;lt;noinclude&amp;gt;{{documentation}}&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Navbox/configuration&amp;diff=65740</id>
		<title>Module:Navbox/configuration</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Navbox/configuration&amp;diff=65740"/>
		<updated>2024-08-16T20:32:49Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;return {&lt;br /&gt;
	aria_label = &#039;Navbox&#039;,&lt;br /&gt;
	nowrap_item = &#039;%s&amp;lt;span class=&amp;quot;nowrap&amp;quot;&amp;gt;%s&amp;lt;/span&amp;gt;&#039;,&lt;br /&gt;
	templatestyles = mw.getCurrentFrame():extensionTag{&lt;br /&gt;
		name = &#039;templatestyles&#039;, args = { src = &#039;Module:Navbox/styles.css&#039; }&lt;br /&gt;
	},&lt;br /&gt;
	hlist_templatestyles = &#039;Hlist/styles.css&#039;,&lt;br /&gt;
	plainlist_templatestyles = &#039;Plainlist/styles.css&#039;,&lt;br /&gt;
	-- do not localize marker table&lt;br /&gt;
	marker = {&lt;br /&gt;
		oddeven = &#039;\127_ODDEVEN_\127&#039;,&lt;br /&gt;
		restart = &#039;\127_ODDEVEN0_\127&#039;,&lt;br /&gt;
		regex = &#039;\127_ODDEVEN(%d?)_\127&#039;&lt;br /&gt;
	},&lt;br /&gt;
	category = {&lt;br /&gt;
		orphan = &#039;[[Category:Navbox orphans]]&#039;,&lt;br /&gt;
		horizontal_lists = &#039;Navigational boxes without horizontal lists&#039;,&lt;br /&gt;
		background_colors = &#039;Navboxes using background colours&#039;,&lt;br /&gt;
		illegible = &#039;Potentially illegible navboxes&#039;,&lt;br /&gt;
		borders = &#039;Navboxes using borders&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	keyword = {&lt;br /&gt;
		border_subgroup = &#039;subgroup&#039;,&lt;br /&gt;
		border_child = &#039;child&#039;,&lt;br /&gt;
		border_none = &#039;none&#039;,&lt;br /&gt;
		evenodd_swap = &#039;swap&#039;,&lt;br /&gt;
		navbar_off = &#039;off&#039;,&lt;br /&gt;
		navbar_plain = &#039;plain&#039;,&lt;br /&gt;
		nocat_false = &#039;false&#039;,&lt;br /&gt;
		nowrapitems_yes = &#039;yes&#039;,&lt;br /&gt;
		orphan_yes = &#039;yes&#039;,&lt;br /&gt;
		state_collapsed = &#039;collapsed&#039;,&lt;br /&gt;
		state_off = &#039;off&#039;,&lt;br /&gt;
		state_plain = &#039;plain&#039;,&lt;br /&gt;
		subgroups = {&#039;subgroup&#039;, &#039;child&#039;, &#039;&#039;},&lt;br /&gt;
		subpage_doc = &#039;doc&#039;,&lt;br /&gt;
		subpage_sandbox = &#039;sandbox&#039;,&lt;br /&gt;
		subpage_testcases = &#039;testcases&#039;,&lt;br /&gt;
		tracking_no = &#039;no&#039;&lt;br /&gt;
	},&lt;br /&gt;
	class = {&lt;br /&gt;
		autocollapse = &#039;autocollapse&#039;,&lt;br /&gt;
		collapsible = &#039;mw-collapsible&#039;,&lt;br /&gt;
		collapsed = &#039;mw-collapsed&#039;,&lt;br /&gt;
		-- Warning&lt;br /&gt;
		navbox = &#039;navbox&#039;, -- WMF currently hides &#039;navbox&#039; from mobile,&lt;br /&gt;
		-- so you probably shouldn&#039;t change the navbox class.&lt;br /&gt;
		navbox_abovebelow = &#039;navbox-abovebelow&#039;,&lt;br /&gt;
		navbox_group = &#039;navbox-group&#039;,&lt;br /&gt;
		navbox_image = &#039;navbox-image&#039;,&lt;br /&gt;
		navbox_inner = &#039;navbox-inner&#039;,&lt;br /&gt;
		navbox_list = &#039;navbox-list&#039;,&lt;br /&gt;
		navbox_list_with_group = &#039;navbox-list-with-group&#039;,&lt;br /&gt;
		navbox_part = &#039;navbox-&#039;, -- do not l10n&lt;br /&gt;
		navbox_styles = &#039;navbox-styles&#039;,&lt;br /&gt;
		navbox_subgroup = &#039;navbox-subgroup&#039;,&lt;br /&gt;
		navbox_title = &#039;navbox-title&#039;, -- l10n only if you change pattern.navbox_title below&lt;br /&gt;
		navbox_odd_part = &#039;odd&#039;, -- do not l10n&lt;br /&gt;
		navbox_even_part = &#039;even&#039;, -- do not l10n&lt;br /&gt;
		nomobile = &#039;nomobile&#039;,&lt;br /&gt;
		nowraplinks = &#039;nowraplinks&#039;,&lt;br /&gt;
		noviewer = &#039;noviewer&#039; -- used to remove images from MediaViewer&lt;br /&gt;
	},&lt;br /&gt;
	pattern = {&lt;br /&gt;
		listnum = &#039;^list(%d+)$&#039;,&lt;br /&gt;
		class = &#039;class&#039;,&lt;br /&gt;
		sandbox = &#039;/sandbox$&#039;,&lt;br /&gt;
		navbox = &#039;Template:Navbox&#039;,&lt;br /&gt;
		nowrap = &#039;^&amp;lt;span class=&amp;quot;nowrap&amp;quot;&amp;gt;&#039;,&lt;br /&gt;
		style = &#039;style$&#039;,&lt;br /&gt;
		navbox_title = &#039;&amp;lt;th[^&amp;gt;]*&amp;quot;navbox%-title&amp;quot;&#039;,&lt;br /&gt;
		hlist = &#039;hlist&#039;,&lt;br /&gt;
		plainlist = &#039;plainlist&#039;,&lt;br /&gt;
	},&lt;br /&gt;
	arg = {&lt;br /&gt;
		above = &#039;above&#039;,&lt;br /&gt;
		aboveclass = &#039;aboveclass&#039;,&lt;br /&gt;
		abovestyle = &#039;abovestyle&#039;,&lt;br /&gt;
		basestyle = &#039;basestyle&#039;,&lt;br /&gt;
		bodyclass = &#039;bodyclass&#039;,&lt;br /&gt;
		bodystyle = &#039;bodystyle&#039;,&lt;br /&gt;
		border = &#039;border&#039;,&lt;br /&gt;
		below = &#039;below&#039;,&lt;br /&gt;
		belowclass = &#039;belowclass&#039;,&lt;br /&gt;
		belowstyle = &#039;belowstyle&#039;,&lt;br /&gt;
		evenodd = &#039;evenodd&#039;,&lt;br /&gt;
		evenstyle = &#039;evenstyle&#039;,&lt;br /&gt;
		group1 = &#039;group1&#039;,&lt;br /&gt;
		group2 = &#039;group2&#039;,&lt;br /&gt;
		group_and_num = &#039;group%d&#039;,&lt;br /&gt;
		groupstyle_and_num = &#039;group%dstyle&#039;,&lt;br /&gt;
		groupclass = &#039;groupclass&#039;,&lt;br /&gt;
		groupstyle = &#039;groupstyle&#039;,&lt;br /&gt;
		groupwidth = &#039;groupwidth&#039;,&lt;br /&gt;
		innerstyle = &#039;innerstyle&#039;,&lt;br /&gt;
		image = &#039;image&#039;,&lt;br /&gt;
		imageclass = &#039;imageclass&#039;,&lt;br /&gt;
		imageleft = &#039;imageleft&#039;,&lt;br /&gt;
		imageleftstyle = &#039;imageleftstyle&#039;,&lt;br /&gt;
		imagesetyle = &#039;imagestyle&#039;,&lt;br /&gt;
		list_and_num = &#039;list%d&#039;,&lt;br /&gt;
		listclass_and_num = &#039;list%dclass&#039;,&lt;br /&gt;
		liststyle_and_num = &#039;list%dstyle&#039;,&lt;br /&gt;
		list1padding = &#039;list1padding&#039;,&lt;br /&gt;
		listclass = &#039;listclass&#039;,&lt;br /&gt;
		listpadding = &#039;listpadding&#039;,&lt;br /&gt;
		liststyle = &#039;liststyle&#039;,&lt;br /&gt;
		name = &#039;name&#039;,&lt;br /&gt;
		navbar = &#039;navbar&#039;,&lt;br /&gt;
		navboxclass = &#039;navboxclass&#039;,&lt;br /&gt;
		nocat = &#039;nocat&#039;,&lt;br /&gt;
		nowrapitems = &#039;nowrapitems&#039;,&lt;br /&gt;
		oddstyle = &#039;oddstyle&#039;,&lt;br /&gt;
		orphan = &#039;orphan&#039;,&lt;br /&gt;
		state = &#039;state&#039;,&lt;br /&gt;
		style = &#039;style&#039;,&lt;br /&gt;
		templatestyles = &#039;templatestyles&#039;,&lt;br /&gt;
		child_templatestyles = &#039;child templatestyles&#039;,&lt;br /&gt;
		title = &#039;title&#039;,&lt;br /&gt;
		titleclass = &#039;titleclass&#039;,&lt;br /&gt;
		titlestyle = &#039;titlestyle&#039;,&lt;br /&gt;
		tracking = &#039;tracking&#039;&lt;br /&gt;
	},&lt;br /&gt;
	-- names of navbar arguments&lt;br /&gt;
	navbar = {&lt;br /&gt;
		name = 1,&lt;br /&gt;
		fontstyle = &#039;fontstyle&#039;,&lt;br /&gt;
		mini = &#039;mini&#039;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Navbox&amp;diff=65738</id>
		<title>Module:Navbox</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Navbox&amp;diff=65738"/>
		<updated>2024-08-16T20:32:49Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;require(&#039;strict&#039;)&lt;br /&gt;
local p = {}&lt;br /&gt;
local cfg = mw.loadData(&#039;Module:Navbox/configuration&#039;)&lt;br /&gt;
local inArray = require(&amp;quot;Module:TableTools&amp;quot;).inArray&lt;br /&gt;
local getArgs -- lazily initialized&lt;br /&gt;
local format = string.format&lt;br /&gt;
&lt;br /&gt;
function p._navbox(args)&lt;br /&gt;
	local function striped(wikitext, border)&lt;br /&gt;
		-- Return wikitext with markers replaced for odd/even striping.&lt;br /&gt;
		-- Child (subgroup) navboxes are flagged with a category that is removed&lt;br /&gt;
		-- by parent navboxes. The result is that the category shows all pages&lt;br /&gt;
		-- where a child navbox is not contained in a parent navbox.&lt;br /&gt;
		local orphanCat = cfg.category.orphan&lt;br /&gt;
		if border == cfg.keyword.border_subgroup and args[cfg.arg.orphan] ~= cfg.keyword.orphan_yes then&lt;br /&gt;
			-- No change; striping occurs in outermost navbox.&lt;br /&gt;
			return wikitext .. orphanCat&lt;br /&gt;
		end&lt;br /&gt;
		local first, second = cfg.class.navbox_odd_part, cfg.class.navbox_even_part&lt;br /&gt;
		if args[cfg.arg.evenodd] then&lt;br /&gt;
			if args[cfg.arg.evenodd] == cfg.keyword.evenodd_swap then&lt;br /&gt;
				first, second = second, first&lt;br /&gt;
			else&lt;br /&gt;
				first = args[cfg.arg.evenodd]&lt;br /&gt;
				second = first&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		local changer&lt;br /&gt;
		if first == second then&lt;br /&gt;
			changer = first&lt;br /&gt;
		else&lt;br /&gt;
			local index = 0&lt;br /&gt;
			changer = function (code)&lt;br /&gt;
				if code == &#039;0&#039; then&lt;br /&gt;
					-- Current occurrence is for a group before a nested table.&lt;br /&gt;
					-- Set it to first as a valid although pointless class.&lt;br /&gt;
					-- The next occurrence will be the first row after a title&lt;br /&gt;
					-- in a subgroup and will also be first.&lt;br /&gt;
					index = 0&lt;br /&gt;
					return first&lt;br /&gt;
				end&lt;br /&gt;
				index = index + 1&lt;br /&gt;
				return index % 2 == 1 and first or second&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		local regex = orphanCat:gsub(&#039;([%[%]])&#039;, &#039;%%%1&#039;)&lt;br /&gt;
		return (wikitext:gsub(regex, &#039;&#039;):gsub(cfg.marker.regex, changer)) -- () omits gsub count&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function processItem(item, nowrapitems)&lt;br /&gt;
		if item:sub(1, 2) == &#039;{|&#039; then&lt;br /&gt;
			-- Applying nowrap to lines in a table does not make sense.&lt;br /&gt;
			-- Add newlines to compensate for trim of x in |parm=x in a template.&lt;br /&gt;
			return &#039;\n&#039; .. item ..&#039;\n&#039;&lt;br /&gt;
		end&lt;br /&gt;
		if nowrapitems == cfg.keyword.nowrapitems_yes then&lt;br /&gt;
			local lines = {}&lt;br /&gt;
			for line in (item .. &#039;\n&#039;):gmatch(&#039;([^\n]*)\n&#039;) do&lt;br /&gt;
				local prefix, content = line:match(&#039;^([*:;#]+)%s*(.*)&#039;)&lt;br /&gt;
				if prefix and not content:match(cfg.pattern.nowrap) then&lt;br /&gt;
					line = format(cfg.nowrap_item, prefix, content)&lt;br /&gt;
				end&lt;br /&gt;
				table.insert(lines, line)&lt;br /&gt;
			end&lt;br /&gt;
			item = table.concat(lines, &#039;\n&#039;)&lt;br /&gt;
		end&lt;br /&gt;
		if item:match(&#039;^[*:;#]&#039;) then&lt;br /&gt;
			return &#039;\n&#039; .. item ..&#039;\n&#039;&lt;br /&gt;
		end&lt;br /&gt;
		return item&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function has_navbar()&lt;br /&gt;
		return args[cfg.arg.navbar] ~= cfg.keyword.navbar_off&lt;br /&gt;
			and args[cfg.arg.navbar] ~= cfg.keyword.navbar_plain&lt;br /&gt;
			and (&lt;br /&gt;
				args[cfg.arg.name]&lt;br /&gt;
				or mw.getCurrentFrame():getParent():getTitle():gsub(cfg.pattern.sandbox, &#039;&#039;)&lt;br /&gt;
					~= cfg.pattern.navbox&lt;br /&gt;
			)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- extract text color from css, which is the only permitted inline CSS for the navbar&lt;br /&gt;
	local function extract_color(css_str)&lt;br /&gt;
		-- return nil because navbar takes its argument into mw.html which handles&lt;br /&gt;
		-- nil gracefully, removing the associated style attribute&lt;br /&gt;
		return mw.ustring.match(&#039;;&#039; .. css_str .. &#039;;&#039;, &#039;.*;%s*([Cc][Oo][Ll][Oo][Rr]%s*:%s*.-)%s*;&#039;) or nil&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function renderNavBar(titleCell)&lt;br /&gt;
		if has_navbar() then&lt;br /&gt;
			local navbar = require(&#039;Module:Navbar&#039;)._navbar&lt;br /&gt;
			titleCell:wikitext(navbar{&lt;br /&gt;
				[cfg.navbar.name] = args[cfg.arg.name],&lt;br /&gt;
				[cfg.navbar.mini] = 1,&lt;br /&gt;
				[cfg.navbar.fontstyle] = extract_color(&lt;br /&gt;
					(args[cfg.arg.basestyle] or &#039;&#039;) .. &#039;;&#039; .. (args[cfg.arg.titlestyle] or &#039;&#039;)&lt;br /&gt;
				)&lt;br /&gt;
			})&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function renderTitleRow(tbl)&lt;br /&gt;
		if not args[cfg.arg.title] then return end&lt;br /&gt;
	&lt;br /&gt;
		local titleRow = tbl:tag(&#039;tr&#039;)&lt;br /&gt;
	&lt;br /&gt;
		local titleCell = titleRow:tag(&#039;th&#039;):attr(&#039;scope&#039;, &#039;col&#039;)&lt;br /&gt;
	&lt;br /&gt;
		local titleColspan = 2&lt;br /&gt;
		if args[cfg.arg.imageleft] then titleColspan = titleColspan + 1 end&lt;br /&gt;
		if args[cfg.arg.image] then titleColspan = titleColspan + 1 end&lt;br /&gt;
	&lt;br /&gt;
		titleCell&lt;br /&gt;
			:cssText(args[cfg.arg.basestyle])&lt;br /&gt;
			:cssText(args[cfg.arg.titlestyle])&lt;br /&gt;
			:addClass(cfg.class.navbox_title)&lt;br /&gt;
			:attr(&#039;colspan&#039;, titleColspan)&lt;br /&gt;
	&lt;br /&gt;
		renderNavBar(titleCell)&lt;br /&gt;
	&lt;br /&gt;
		titleCell&lt;br /&gt;
			:tag(&#039;div&#039;)&lt;br /&gt;
				-- id for aria-labelledby attribute&lt;br /&gt;
				:attr(&#039;id&#039;, mw.uri.anchorEncode(args[cfg.arg.title]))&lt;br /&gt;
				:addClass(args[cfg.arg.titleclass])&lt;br /&gt;
				:css(&#039;font-size&#039;, &#039;114%&#039;)&lt;br /&gt;
				:css(&#039;margin&#039;, &#039;0 4em&#039;)&lt;br /&gt;
				:wikitext(processItem(args[cfg.arg.title]))&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function getAboveBelowColspan()&lt;br /&gt;
		local ret = 2&lt;br /&gt;
		if args[cfg.arg.imageleft] then ret = ret + 1 end&lt;br /&gt;
		if args[cfg.arg.image] then ret = ret + 1 end&lt;br /&gt;
		return ret&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function renderAboveRow(tbl)&lt;br /&gt;
		if not args[cfg.arg.above] then return end&lt;br /&gt;
	&lt;br /&gt;
		tbl:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:addClass(cfg.class.navbox_abovebelow)&lt;br /&gt;
				:addClass(args[cfg.arg.aboveclass])&lt;br /&gt;
				:cssText(args[cfg.arg.basestyle])&lt;br /&gt;
				:cssText(args[cfg.arg.abovestyle])&lt;br /&gt;
				:attr(&#039;colspan&#039;, getAboveBelowColspan())&lt;br /&gt;
				:tag(&#039;div&#039;)&lt;br /&gt;
					-- id for aria-labelledby attribute, if no title&lt;br /&gt;
					:attr(&#039;id&#039;, (not args[cfg.arg.title]) and mw.uri.anchorEncode(args[cfg.arg.above]) or nil)&lt;br /&gt;
					:wikitext(processItem(args[cfg.arg.above], args[cfg.arg.nowrapitems]))&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function renderBelowRow(tbl)&lt;br /&gt;
		if not args[cfg.arg.below] then return end&lt;br /&gt;
	&lt;br /&gt;
		tbl:tag(&#039;tr&#039;)&lt;br /&gt;
			:tag(&#039;td&#039;)&lt;br /&gt;
				:addClass(cfg.class.navbox_abovebelow)&lt;br /&gt;
				:addClass(args[cfg.arg.belowclass])&lt;br /&gt;
				:cssText(args[cfg.arg.basestyle])&lt;br /&gt;
				:cssText(args[cfg.arg.belowstyle])&lt;br /&gt;
				:attr(&#039;colspan&#039;, getAboveBelowColspan())&lt;br /&gt;
				:tag(&#039;div&#039;)&lt;br /&gt;
					:wikitext(processItem(args[cfg.arg.below], args[cfg.arg.nowrapitems]))&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function renderListRow(tbl, index, listnum, listnums_size)&lt;br /&gt;
		local row = tbl:tag(&#039;tr&#039;)&lt;br /&gt;
	&lt;br /&gt;
		if index == 1 and args[cfg.arg.imageleft] then&lt;br /&gt;
			row&lt;br /&gt;
				:tag(&#039;td&#039;)&lt;br /&gt;
					:addClass(cfg.class.noviewer)&lt;br /&gt;
					:addClass(cfg.class.navbox_image)&lt;br /&gt;
					:addClass(args[cfg.arg.imageclass])&lt;br /&gt;
					:css(&#039;width&#039;, &#039;1px&#039;)               -- Minimize width&lt;br /&gt;
					:css(&#039;padding&#039;, &#039;0 2px 0 0&#039;)&lt;br /&gt;
					:cssText(args[cfg.arg.imageleftstyle])&lt;br /&gt;
					:attr(&#039;rowspan&#039;, listnums_size)&lt;br /&gt;
					:tag(&#039;div&#039;)&lt;br /&gt;
						:wikitext(processItem(args[cfg.arg.imageleft]))&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		local group_and_num = format(cfg.arg.group_and_num, listnum)&lt;br /&gt;
		local groupstyle_and_num = format(cfg.arg.groupstyle_and_num, listnum)&lt;br /&gt;
		if args[group_and_num] then&lt;br /&gt;
			local groupCell = row:tag(&#039;th&#039;)&lt;br /&gt;
	&lt;br /&gt;
			-- id for aria-labelledby attribute, if lone group with no title or above&lt;br /&gt;
			if listnum == 1 and not (args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group2]) then&lt;br /&gt;
				groupCell&lt;br /&gt;
					:attr(&#039;id&#039;, mw.uri.anchorEncode(args[cfg.arg.group1]))&lt;br /&gt;
			end&lt;br /&gt;
	&lt;br /&gt;
			groupCell&lt;br /&gt;
				:attr(&#039;scope&#039;, &#039;row&#039;)&lt;br /&gt;
				:addClass(cfg.class.navbox_group)&lt;br /&gt;
				:addClass(args[cfg.arg.groupclass])&lt;br /&gt;
				:cssText(args[cfg.arg.basestyle])&lt;br /&gt;
				-- If groupwidth not specified, minimize width&lt;br /&gt;
				:css(&#039;width&#039;, args[cfg.arg.groupwidth] or &#039;1%&#039;)&lt;br /&gt;
	&lt;br /&gt;
			groupCell&lt;br /&gt;
				:cssText(args[cfg.arg.groupstyle])&lt;br /&gt;
				:cssText(args[groupstyle_and_num])&lt;br /&gt;
				:wikitext(args[group_and_num])&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		local listCell = row:tag(&#039;td&#039;)&lt;br /&gt;
	&lt;br /&gt;
		if args[group_and_num] then&lt;br /&gt;
			listCell&lt;br /&gt;
				:addClass(cfg.class.navbox_list_with_group)&lt;br /&gt;
		else&lt;br /&gt;
			listCell:attr(&#039;colspan&#039;, 2)&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		if not args[cfg.arg.groupwidth] then&lt;br /&gt;
			listCell:css(&#039;width&#039;, &#039;100%&#039;)&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		local rowstyle  -- usually nil so cssText(rowstyle) usually adds nothing&lt;br /&gt;
		if index % 2 == 1 then&lt;br /&gt;
			rowstyle = args[cfg.arg.oddstyle]&lt;br /&gt;
		else&lt;br /&gt;
			rowstyle = args[cfg.arg.evenstyle]&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		local list_and_num = format(cfg.arg.list_and_num, listnum)&lt;br /&gt;
		local listText = args[list_and_num]&lt;br /&gt;
		local oddEven = cfg.marker.oddeven&lt;br /&gt;
		if listText:sub(1, 12) == &#039;&amp;lt;/div&amp;gt;&amp;lt;table&#039; then&lt;br /&gt;
			-- Assume list text is for a subgroup navbox so no automatic striping for this row.&lt;br /&gt;
			oddEven = listText:find(cfg.pattern.navbox_title) and cfg.marker.restart or cfg.class.navbox_odd_part&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if inArray(cfg.keyword.subgroups, listText) then&lt;br /&gt;
			local childArgs = {&lt;br /&gt;
				[cfg.arg.border] = cfg.keyword.border_subgroup,&lt;br /&gt;
				[cfg.arg.navbar] = cfg.keyword.navbar_plain&lt;br /&gt;
			}&lt;br /&gt;
			local hasChildArgs = false&lt;br /&gt;
			for k, v in pairs(args) do&lt;br /&gt;
				k = tostring(k)&lt;br /&gt;
				for _, w in ipairs(cfg.keyword.subgroups) do&lt;br /&gt;
					w = w .. listnum .. &amp;quot;_&amp;quot;&lt;br /&gt;
					if (#k &amp;gt; #w) and (k:sub(1, #w) == w) then&lt;br /&gt;
						childArgs[k:sub(#w + 1)] = v&lt;br /&gt;
						hasChildArgs = true&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			listText = hasChildArgs and p._navbox(childArgs) or listText&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		local liststyle_and_num = format(cfg.arg.liststyle_and_num, listnum)&lt;br /&gt;
		local listclass_and_num = format(cfg.arg.listclass_and_num, listnum)&lt;br /&gt;
		listCell&lt;br /&gt;
			:css(&#039;padding&#039;, &#039;0&#039;)&lt;br /&gt;
			:cssText(args[cfg.arg.liststyle])&lt;br /&gt;
			:cssText(rowstyle)&lt;br /&gt;
			:cssText(args[liststyle_and_num])&lt;br /&gt;
			:addClass(cfg.class.navbox_list)&lt;br /&gt;
			:addClass(cfg.class.navbox_part .. oddEven)&lt;br /&gt;
			:addClass(args[cfg.arg.listclass])&lt;br /&gt;
			:addClass(args[listclass_and_num])&lt;br /&gt;
			:tag(&#039;div&#039;)&lt;br /&gt;
				:css(&#039;padding&#039;,&lt;br /&gt;
					(index == 1 and args[cfg.arg.list1padding]) or args[cfg.arg.listpadding] or &#039;0 0.25em&#039;&lt;br /&gt;
				)&lt;br /&gt;
				:wikitext(processItem(listText, args[cfg.arg.nowrapitems]))&lt;br /&gt;
	&lt;br /&gt;
		if index == 1 and args[cfg.arg.image] then&lt;br /&gt;
			row&lt;br /&gt;
				:tag(&#039;td&#039;)&lt;br /&gt;
					:addClass(cfg.class.noviewer)&lt;br /&gt;
					:addClass(cfg.class.navbox_image)&lt;br /&gt;
					:addClass(args[cfg.arg.imageclass])&lt;br /&gt;
					:css(&#039;width&#039;, &#039;1px&#039;)               -- Minimize width&lt;br /&gt;
					:css(&#039;padding&#039;, &#039;0 0 0 2px&#039;)&lt;br /&gt;
					:cssText(args[cfg.arg.imagestyle])&lt;br /&gt;
					:attr(&#039;rowspan&#039;, listnums_size)&lt;br /&gt;
					:tag(&#039;div&#039;)&lt;br /&gt;
						:wikitext(processItem(args[cfg.arg.image]))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function has_list_class(htmlclass)&lt;br /&gt;
		local patterns = {&lt;br /&gt;
			&#039;^&#039; .. htmlclass .. &#039;$&#039;,&lt;br /&gt;
			&#039;%s&#039; .. htmlclass .. &#039;$&#039;,&lt;br /&gt;
			&#039;^&#039; .. htmlclass .. &#039;%s&#039;,&lt;br /&gt;
			&#039;%s&#039; .. htmlclass .. &#039;%s&#039;&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		for arg, _ in pairs(args) do&lt;br /&gt;
			if type(arg) == &#039;string&#039; and mw.ustring.find(arg, cfg.pattern.class) then&lt;br /&gt;
				for _, pattern in ipairs(patterns) do&lt;br /&gt;
					if mw.ustring.find(args[arg] or &#039;&#039;, pattern) then&lt;br /&gt;
						return true&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- there are a lot of list classes in the wild, so we add their TemplateStyles&lt;br /&gt;
	local function add_list_styles()&lt;br /&gt;
		local frame = mw.getCurrentFrame()&lt;br /&gt;
		local function add_list_templatestyles(htmlclass, templatestyles)&lt;br /&gt;
			if has_list_class(htmlclass) then&lt;br /&gt;
				return frame:extensionTag{&lt;br /&gt;
					name = &#039;templatestyles&#039;, args = { src = templatestyles }&lt;br /&gt;
				}&lt;br /&gt;
			else&lt;br /&gt;
				return &#039;&#039;&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local hlist_styles = add_list_templatestyles(&#039;hlist&#039;, cfg.hlist_templatestyles)&lt;br /&gt;
		local plainlist_styles = add_list_templatestyles(&#039;plainlist&#039;, cfg.plainlist_templatestyles)&lt;br /&gt;
		&lt;br /&gt;
		-- a second workaround for [[phab:T303378]]&lt;br /&gt;
		-- when that issue is fixed, we can actually use has_navbar not to emit the&lt;br /&gt;
		-- tag here if we want&lt;br /&gt;
		if has_navbar() and hlist_styles == &#039;&#039; then&lt;br /&gt;
			hlist_styles = frame:extensionTag{&lt;br /&gt;
				name = &#039;templatestyles&#039;, args = { src = cfg.hlist_templatestyles }&lt;br /&gt;
			}&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- hlist -&amp;gt; plainlist is best-effort to preserve old Common.css ordering.&lt;br /&gt;
		-- this ordering is not a guarantee because most navboxes will emit only&lt;br /&gt;
		-- one of these classes [hlist_note]&lt;br /&gt;
		return hlist_styles .. plainlist_styles&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function needsHorizontalLists(border)&lt;br /&gt;
		if border == cfg.keyword.border_subgroup or args[cfg.arg.tracking] == cfg.keyword.tracking_no then&lt;br /&gt;
			return false&lt;br /&gt;
		end&lt;br /&gt;
		return not has_list_class(cfg.pattern.hlist) and not has_list_class(cfg.pattern.plainlist)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function hasBackgroundColors()&lt;br /&gt;
		for _, key in ipairs({cfg.arg.titlestyle, cfg.arg.groupstyle,&lt;br /&gt;
			cfg.arg.basestyle, cfg.arg.abovestyle, cfg.arg.belowstyle}) do&lt;br /&gt;
			if tostring(args[key]):find(&#039;background&#039;, 1, true) then&lt;br /&gt;
				return true&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function hasBorders()&lt;br /&gt;
		for _, key in ipairs({cfg.arg.groupstyle, cfg.arg.basestyle,&lt;br /&gt;
			cfg.arg.abovestyle, cfg.arg.belowstyle}) do&lt;br /&gt;
			if tostring(args[key]):find(&#039;border&#039;, 1, true) then&lt;br /&gt;
				return true&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function isIllegible()&lt;br /&gt;
		local styleratio = require(&#039;Module:Color contrast&#039;)._styleratio&lt;br /&gt;
		for key, style in pairs(args) do&lt;br /&gt;
			if tostring(key):match(cfg.pattern.style) then&lt;br /&gt;
				if styleratio{mw.text.unstripNoWiki(style)} &amp;lt; 4.5 then&lt;br /&gt;
					return true&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		return false&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function getTrackingCategories(border)&lt;br /&gt;
		local cats = {}&lt;br /&gt;
		if needsHorizontalLists(border) then table.insert(cats, cfg.category.horizontal_lists) end&lt;br /&gt;
		if hasBackgroundColors() then table.insert(cats, cfg.category.background_colors) end&lt;br /&gt;
		if isIllegible() then table.insert(cats, cfg.category.illegible) end&lt;br /&gt;
		if hasBorders() then table.insert(cats, cfg.category.borders) end&lt;br /&gt;
		return cats&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function renderTrackingCategories(builder, border)&lt;br /&gt;
		local title = mw.title.getCurrentTitle()&lt;br /&gt;
		if title.namespace ~= 10 then return end -- not in template space&lt;br /&gt;
		local subpage = title.subpageText&lt;br /&gt;
		if subpage == cfg.keyword.subpage_doc or subpage == cfg.keyword.subpage_sandbox&lt;br /&gt;
			or subpage == cfg.keyword.subpage_testcases then return end&lt;br /&gt;
	&lt;br /&gt;
		for _, cat in ipairs(getTrackingCategories(border)) do&lt;br /&gt;
			builder:wikitext(&#039;[[Category:&#039; .. cat .. &#039;]]&#039;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function renderMainTable(border, listnums)&lt;br /&gt;
		local tbl = mw.html.create(&#039;table&#039;)&lt;br /&gt;
			:addClass(cfg.class.nowraplinks)&lt;br /&gt;
			:addClass(args[cfg.arg.bodyclass])&lt;br /&gt;
	&lt;br /&gt;
		local state = args[cfg.arg.state]&lt;br /&gt;
		if args[cfg.arg.title] and state ~= cfg.keyword.state_plain and state ~= cfg.keyword.state_off then&lt;br /&gt;
			if state == cfg.keyword.state_collapsed then&lt;br /&gt;
				state = cfg.class.collapsed&lt;br /&gt;
			end&lt;br /&gt;
			tbl&lt;br /&gt;
				:addClass(cfg.class.collapsible)&lt;br /&gt;
				:addClass(state or cfg.class.autocollapse)&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		tbl:css(&#039;border-spacing&#039;, 0)&lt;br /&gt;
		if border == cfg.keyword.border_subgroup or border == cfg.keyword.border_none then&lt;br /&gt;
			tbl&lt;br /&gt;
				:addClass(cfg.class.navbox_subgroup)&lt;br /&gt;
				:cssText(args[cfg.arg.bodystyle])&lt;br /&gt;
				:cssText(args[cfg.arg.style])&lt;br /&gt;
		else  -- regular navbox - bodystyle and style will be applied to the wrapper table&lt;br /&gt;
			tbl&lt;br /&gt;
				:addClass(cfg.class.navbox_inner)&lt;br /&gt;
				:css(&#039;background&#039;, &#039;transparent&#039;)&lt;br /&gt;
				:css(&#039;color&#039;, &#039;inherit&#039;)&lt;br /&gt;
		end&lt;br /&gt;
		tbl:cssText(args[cfg.arg.innerstyle])&lt;br /&gt;
	&lt;br /&gt;
		renderTitleRow(tbl)&lt;br /&gt;
		renderAboveRow(tbl)&lt;br /&gt;
		local listnums_size = #listnums&lt;br /&gt;
		for i, listnum in ipairs(listnums) do&lt;br /&gt;
			renderListRow(tbl, i, listnum, listnums_size)&lt;br /&gt;
		end&lt;br /&gt;
		renderBelowRow(tbl)&lt;br /&gt;
	&lt;br /&gt;
		return tbl&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local function add_navbox_styles(hiding_templatestyles)&lt;br /&gt;
		local frame = mw.getCurrentFrame()&lt;br /&gt;
		-- This is a lambda so that it doesn&#039;t need the frame as a parameter&lt;br /&gt;
		local function add_user_styles(templatestyles)&lt;br /&gt;
			if templatestyles and templatestyles ~= &#039;&#039; then&lt;br /&gt;
				return frame:extensionTag{&lt;br /&gt;
					name = &#039;templatestyles&#039;, args = { src = templatestyles }&lt;br /&gt;
				}&lt;br /&gt;
			end&lt;br /&gt;
			return &#039;&#039;&lt;br /&gt;
		end&lt;br /&gt;
	&lt;br /&gt;
		-- get templatestyles. load base from config so that Lua only needs to do&lt;br /&gt;
		-- the work once of parser tag expansion&lt;br /&gt;
		local base_templatestyles = cfg.templatestyles&lt;br /&gt;
		local templatestyles = add_user_styles(args[cfg.arg.templatestyles])&lt;br /&gt;
		local child_templatestyles = add_user_styles(args[cfg.arg.child_templatestyles])&lt;br /&gt;
	&lt;br /&gt;
		-- The &#039;navbox-styles&#039; div exists to wrap the styles to work around T200206&lt;br /&gt;
		-- more elegantly. Instead of combinatorial rules, this ends up being linear&lt;br /&gt;
		-- number of CSS rules.&lt;br /&gt;
		return mw.html.create(&#039;div&#039;)&lt;br /&gt;
			:addClass(cfg.class.navbox_styles)&lt;br /&gt;
			:wikitext(&lt;br /&gt;
				add_list_styles() .. -- see [hlist_note] applied to &#039;before base_templatestyles&#039;&lt;br /&gt;
				base_templatestyles ..&lt;br /&gt;
				templatestyles ..&lt;br /&gt;
				child_templatestyles ..&lt;br /&gt;
				table.concat(hiding_templatestyles)&lt;br /&gt;
			)&lt;br /&gt;
			:done()&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- work around [[phab:T303378]]&lt;br /&gt;
	-- for each arg: find all the templatestyles strip markers, insert them into a&lt;br /&gt;
	-- table. then remove all templatestyles markers from the arg&lt;br /&gt;
	local function move_hiding_templatestyles(args)&lt;br /&gt;
		local gfind = string.gfind&lt;br /&gt;
		local gsub = string.gsub&lt;br /&gt;
		local templatestyles_markers = {}&lt;br /&gt;
		local strip_marker_pattern = &#039;(\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127)&#039;&lt;br /&gt;
		for k, arg in pairs(args) do&lt;br /&gt;
			for marker in gfind(arg, strip_marker_pattern) do&lt;br /&gt;
				table.insert(templatestyles_markers, marker)&lt;br /&gt;
			end&lt;br /&gt;
			args[k] = gsub(arg, strip_marker_pattern, &#039;&#039;)&lt;br /&gt;
		end&lt;br /&gt;
		return templatestyles_markers&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local hiding_templatestyles = move_hiding_templatestyles(args)&lt;br /&gt;
	local listnums = {}&lt;br /&gt;
	&lt;br /&gt;
	for k, _ in pairs(args) do&lt;br /&gt;
		if type(k) == &#039;string&#039; then&lt;br /&gt;
			local listnum = k:match(cfg.pattern.listnum)&lt;br /&gt;
			if listnum then table.insert(listnums, tonumber(listnum)) end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	table.sort(listnums)&lt;br /&gt;
&lt;br /&gt;
	local border = mw.text.trim(args[cfg.arg.border] or args[1] or &#039;&#039;)&lt;br /&gt;
	if border == cfg.keyword.border_child then&lt;br /&gt;
		border = cfg.keyword.border_subgroup&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- render the main body of the navbox&lt;br /&gt;
	local tbl = renderMainTable(border, listnums)&lt;br /&gt;
&lt;br /&gt;
	local res = mw.html.create()&lt;br /&gt;
	-- render the appropriate wrapper for the navbox, based on the border param&lt;br /&gt;
&lt;br /&gt;
	if border == cfg.keyword.border_none then&lt;br /&gt;
		res:node(add_navbox_styles(hiding_templatestyles))&lt;br /&gt;
		local nav = res:tag(&#039;div&#039;)&lt;br /&gt;
			:attr(&#039;role&#039;, &#039;navigation&#039;)&lt;br /&gt;
			:node(tbl)&lt;br /&gt;
		-- aria-labelledby title, otherwise above, otherwise lone group&lt;br /&gt;
		if args[cfg.arg.title] or args[cfg.arg.above] or (args[cfg.arg.group1]&lt;br /&gt;
			and not args[cfg.arg.group2]) then&lt;br /&gt;
			nav:attr(&lt;br /&gt;
				&#039;aria-labelledby&#039;,&lt;br /&gt;
				mw.uri.anchorEncode(&lt;br /&gt;
					args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1]&lt;br /&gt;
				)&lt;br /&gt;
			)&lt;br /&gt;
		else&lt;br /&gt;
			nav:attr(&#039;aria-label&#039;, cfg.aria_label)&lt;br /&gt;
		end&lt;br /&gt;
	elseif border == cfg.keyword.border_subgroup then&lt;br /&gt;
		-- We assume that this navbox is being rendered in a list cell of a&lt;br /&gt;
		-- parent navbox, and is therefore inside a div with padding:0em 0.25em.&lt;br /&gt;
		-- We start with a &amp;lt;/div&amp;gt; to avoid the padding being applied, and at the&lt;br /&gt;
		-- end add a &amp;lt;div&amp;gt; to balance out the parent&#039;s &amp;lt;/div&amp;gt;&lt;br /&gt;
		res&lt;br /&gt;
			:wikitext(&#039;&amp;lt;/div&amp;gt;&#039;)&lt;br /&gt;
			:node(tbl)&lt;br /&gt;
			:wikitext(&#039;&amp;lt;div&amp;gt;&#039;)&lt;br /&gt;
	else&lt;br /&gt;
		res:node(add_navbox_styles(hiding_templatestyles))&lt;br /&gt;
		local nav = res:tag(&#039;div&#039;)&lt;br /&gt;
			:attr(&#039;role&#039;, &#039;navigation&#039;)&lt;br /&gt;
			:addClass(cfg.class.navbox)&lt;br /&gt;
			:addClass(args[cfg.arg.navboxclass])&lt;br /&gt;
			:cssText(args[cfg.arg.bodystyle])&lt;br /&gt;
			:cssText(args[cfg.arg.style])&lt;br /&gt;
			:css(&#039;padding&#039;, &#039;3px&#039;)&lt;br /&gt;
			:node(tbl)&lt;br /&gt;
		-- aria-labelledby title, otherwise above, otherwise lone group&lt;br /&gt;
		if args[cfg.arg.title] or args[cfg.arg.above]&lt;br /&gt;
			or (args[cfg.arg.group1] and not args[cfg.arg.group2]) then&lt;br /&gt;
			nav:attr(&lt;br /&gt;
				&#039;aria-labelledby&#039;,&lt;br /&gt;
				mw.uri.anchorEncode(args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1])&lt;br /&gt;
			)&lt;br /&gt;
		else&lt;br /&gt;
			nav:attr(&#039;aria-label&#039;, cfg.aria_label)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if (args[cfg.arg.nocat] or cfg.keyword.nocat_false):lower() == cfg.keyword.nocat_false then&lt;br /&gt;
		renderTrackingCategories(res, border)&lt;br /&gt;
	end&lt;br /&gt;
	return striped(tostring(res), border)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.navbox(frame)&lt;br /&gt;
	local function readArgs(args, prefix)&lt;br /&gt;
		-- Read the arguments in the order they&#039;ll be output in, to make references&lt;br /&gt;
		-- number in the right order.&lt;br /&gt;
		local _&lt;br /&gt;
		_ = args[cfg.arg.title]&lt;br /&gt;
		_ = args[cfg.arg.above]&lt;br /&gt;
		-- Limit this to 20 as covering &#039;most&#039; cases (that&#039;s a SWAG) and because&lt;br /&gt;
		-- iterator approach won&#039;t work here&lt;br /&gt;
		for i = 1, 20 do&lt;br /&gt;
			_ = args[prefix .. format(cfg.arg.group_and_num, i)]&lt;br /&gt;
			if inArray(cfg.keyword.subgroups, args[prefix .. format(cfg.arg.list_and_num, i)]) then&lt;br /&gt;
				for _, v in ipairs(cfg.keyword.subgroups) do&lt;br /&gt;
					readArgs(args, prefix .. v .. i .. &amp;quot;_&amp;quot;)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		_ = args[cfg.arg.below]&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if not getArgs then&lt;br /&gt;
		getArgs = require(&#039;Module:Arguments&#039;).getArgs&lt;br /&gt;
	end&lt;br /&gt;
	local args = getArgs(frame, {wrappers = {cfg.pattern.navbox}})&lt;br /&gt;
	readArgs(args, &amp;quot;&amp;quot;)&lt;br /&gt;
	return p._navbox(args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Infobox/styles.css&amp;diff=65736</id>
		<title>Module:Infobox/styles.css</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Infobox/styles.css&amp;diff=65736"/>
		<updated>2024-08-16T20:32:48Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* {{pp|small=y}} */&lt;br /&gt;
/*&lt;br /&gt;
 * This TemplateStyles sheet deliberately does NOT include the full set of&lt;br /&gt;
 * infobox styles. We are still working to migrate all of the manual&lt;br /&gt;
 * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]&lt;br /&gt;
 * DO NOT ADD THEM HERE&lt;br /&gt;
 */&lt;br /&gt;
/*&lt;br /&gt;
 * not strictly certain these styles are necessary since the modules now&lt;br /&gt;
 * exclusively output infobox-subbox or infobox, not both&lt;br /&gt;
 * just replicating the module faithfully&lt;br /&gt;
 */&lt;br /&gt;
.infobox-subbox {&lt;br /&gt;
	padding: 0;&lt;br /&gt;
	border: none;&lt;br /&gt;
	margin: -3px;&lt;br /&gt;
	width: auto;&lt;br /&gt;
	min-width: 100%;&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
	clear: none;&lt;br /&gt;
	float: none;&lt;br /&gt;
	background-color: transparent;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox-3cols-child {&lt;br /&gt;
	margin: auto;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.infobox .navbar {&lt;br /&gt;
	font-size: 100%;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* T281642 */&lt;br /&gt;
body.skin-minerva .infobox-header,&lt;br /&gt;
body.skin-minerva .infobox-subheader,&lt;br /&gt;
body.skin-minerva  .infobox-above,&lt;br /&gt;
body.skin-minerva .infobox-title,&lt;br /&gt;
body.skin-minerva  .infobox-image,&lt;br /&gt;
body.skin-minerva  .infobox-full-data,&lt;br /&gt;
body.skin-minerva .infobox-below {&lt;br /&gt;
	text-align: center;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Dark theme: [[William_Wragg]], [[Coral_Castle]] */&lt;br /&gt;
&lt;br /&gt;
@media screen {&lt;br /&gt;
    html.skin-theme-clientpref-night .infobox-full-data:not(.notheme) &amp;gt; div:not(.notheme)[style] {&lt;br /&gt;
	    background: #1f1f23 !important;&lt;br /&gt;
	      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
	      color: #f8f9fa;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
@media screen and ( prefers-color-scheme: dark) {&lt;br /&gt;
    html.skin-theme-clientpref-os .infobox-full-data:not(.notheme) div:not(.notheme) {&lt;br /&gt;
      background: #1f1f23 !important;&lt;br /&gt;
      /* switch with var( --color-base ) when supported. */&lt;br /&gt;
      color: #f8f9fa;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/* Since infobox is a table, many infobox templates take advantage of this to add columns and rows to the infobox itself rather than as part of a new table inside them. This class should be discouraged and removed on the long term, but allows us to at least identify these tables going forward&lt;br /&gt;
Currently in use on: [[Module:Infobox3cols]]&lt;br /&gt;
Fixes issue described in https://phabricator.wikimedia.org/F55300125 on Vector 2022.&lt;br /&gt;
*/&lt;br /&gt;
@media (min-width: 640px) {&lt;br /&gt;
  body.skin--responsive .infobox-table {&lt;br /&gt;
    display: table !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; caption {&lt;br /&gt;
    display: table-caption !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table &amp;gt; tbody {&lt;br /&gt;
    display: table-row-group;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table tr {&lt;br /&gt;
    display: table-row !important;&lt;br /&gt;
  }&lt;br /&gt;
  body.skin--responsive .infobox-table th,&lt;br /&gt;
  body.skin--responsive .infobox-table td {&lt;br /&gt;
    padding-left: inherit;&lt;br /&gt;
    padding-right: inherit;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:InfoboxImage&amp;diff=65734</id>
		<title>Module:InfoboxImage</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:InfoboxImage&amp;diff=65734"/>
		<updated>2024-08-16T20:32:48Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;-- Inputs:&lt;br /&gt;
--    image - Can either be a bare filename (with or without the File:/Image: prefix) or a fully formatted image link&lt;br /&gt;
--    page - page to display for multipage images (DjVu)&lt;br /&gt;
--    size - size to display the image&lt;br /&gt;
--    maxsize - maximum size for image&lt;br /&gt;
--    sizedefault - default size to display the image if size param is blank&lt;br /&gt;
--    alt - alt text for image&lt;br /&gt;
--    title - title text for image&lt;br /&gt;
--    border - set to yes if border&lt;br /&gt;
--    center - set to yes, if the image has to be centered&lt;br /&gt;
--    upright - upright image param&lt;br /&gt;
--    suppressplaceholder - if yes then checks to see if image is a placeholder and suppresses it&lt;br /&gt;
--    link - page to visit when clicking on image&lt;br /&gt;
--    class - HTML classes to add to the image&lt;br /&gt;
-- Outputs:&lt;br /&gt;
--    Formatted image.&lt;br /&gt;
-- More details available at the &amp;quot;Module:InfoboxImage/doc&amp;quot; page&lt;br /&gt;
&lt;br /&gt;
local i = {};&lt;br /&gt;
&lt;br /&gt;
local placeholder_image = {&lt;br /&gt;
    &amp;quot;Blue - Replace this image female.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Blue - Replace this image male.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Flag of None (square).svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Flag of None.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Flag of.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Green - Replace this image female.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Green - Replace this image male.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Image is needed female.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Image is needed male.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Location map of None.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Male no free image yet.png&amp;quot;,&lt;br /&gt;
    &amp;quot;Missing flag.png&amp;quot;,&lt;br /&gt;
    &amp;quot;No flag.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;No free portrait.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;No portrait (female).svg&amp;quot;,&lt;br /&gt;
    &amp;quot;No portrait (male).svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Red - Replace this image female.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Red - Replace this image male.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Replace this image female.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Replace this image male (blue).svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Replace this image male.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Silver - Replace this image female.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Silver - Replace this image male.svg&amp;quot;,&lt;br /&gt;
    &amp;quot;Replace this image.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Cricket no pic.png&amp;quot;,&lt;br /&gt;
	&amp;quot;CarersLogo.gif&amp;quot;,&lt;br /&gt;
	&amp;quot;Diagram Needed.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Example.jpg&amp;quot;,&lt;br /&gt;
	&amp;quot;Image placeholder.png&amp;quot;,&lt;br /&gt;
	&amp;quot;No male portrait.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Nocover-upload.png&amp;quot;,&lt;br /&gt;
	&amp;quot;NoDVDcover copy.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Noribbon.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;No portrait-BFD-test.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Placeholder barnstar ribbon.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Project Trains no image.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Image-request.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Sin bandera.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Sin escudo.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Replace this image - temple.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Replace this image butterfly.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Replace this image.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Replace this image1.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Resolution angle.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Image-No portrait-text-BFD-test.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;Insert image here.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;No image available.png&amp;quot;,&lt;br /&gt;
	&amp;quot;NO IMAGE YET square.png&amp;quot;,&lt;br /&gt;
	&amp;quot;NO IMAGE YET.png&amp;quot;,&lt;br /&gt;
	&amp;quot;No Photo Available.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;No Screenshot.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;No-image-available.jpg&amp;quot;,&lt;br /&gt;
	&amp;quot;Null.png&amp;quot;,&lt;br /&gt;
	&amp;quot;PictureNeeded.gif&amp;quot;,&lt;br /&gt;
	&amp;quot;Place holder.jpg&amp;quot;,&lt;br /&gt;
	&amp;quot;Unbenannt.JPG&amp;quot;,&lt;br /&gt;
	&amp;quot;UploadACopyrightFreeImage.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;UploadAnImage.gif&amp;quot;,&lt;br /&gt;
	&amp;quot;UploadAnImage.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;UploadAnImageShort.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;CarersLogo.gif&amp;quot;,&lt;br /&gt;
	&amp;quot;Diagram Needed.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;No male portrait.svg&amp;quot;,&lt;br /&gt;
	&amp;quot;NoDVDcover copy.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Placeholder barnstar ribbon.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Project Trains no image.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Image-request.png&amp;quot;,&lt;br /&gt;
	&amp;quot;Noimage.gif&amp;quot;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local categories = {&lt;br /&gt;
	url_image_links = &amp;quot;[[Category:Pages using infoboxes with URL in image parameter]]&amp;quot;,&lt;br /&gt;
	thumbnail_images = &amp;quot;[[Category:Pages using infoboxes with thumbnail images]]&amp;quot;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function trackable()&lt;br /&gt;
	local ns = mw.title.getCurrentTitle().nsText:lower()&lt;br /&gt;
	return not (ns == &#039;user&#039; or ns == &#039;user talk&#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function i.IsPlaceholder(image)&lt;br /&gt;
    -- change underscores to spaces&lt;br /&gt;
    image = mw.ustring.gsub(image, &amp;quot;_&amp;quot;, &amp;quot; &amp;quot;);&lt;br /&gt;
    assert(image ~= nil, &#039;mw.ustring.gsub(image, &amp;quot;_&amp;quot;, &amp;quot; &amp;quot;) must not return nil&#039;)&lt;br /&gt;
    -- if image starts with [[ then remove that and anything after |&lt;br /&gt;
    if mw.ustring.sub(image,1,2) == &amp;quot;[[&amp;quot; then&lt;br /&gt;
        image = mw.ustring.sub(image,3);&lt;br /&gt;
        image = mw.ustring.gsub(image, &amp;quot;([^|]*)|.*&amp;quot;, &amp;quot;%1&amp;quot;);&lt;br /&gt;
        assert(image ~= nil, &#039;mw.ustring.gsub(image, &amp;quot;([^|]*)|.*&amp;quot;, &amp;quot;%1&amp;quot;) must not return nil&#039;)&lt;br /&gt;
    end&lt;br /&gt;
    -- Trim spaces&lt;br /&gt;
    image = mw.ustring.gsub(image, &#039;^[ ]*(.-)[ ]*$&#039;, &#039;%1&#039;);&lt;br /&gt;
    assert(image ~= nil, &amp;quot;mw.ustring.gsub(image, &#039;^[ ]*(.-)[ ]*$&#039;, &#039;%1&#039;) must not return nil&amp;quot;)&lt;br /&gt;
    -- remove prefix if exists&lt;br /&gt;
    local allNames = mw.site.namespaces[6].aliases&lt;br /&gt;
    allNames[#allNames + 1] = mw.site.namespaces[6].name&lt;br /&gt;
    allNames[#allNames + 1] = mw.site.namespaces[6].canonicalName&lt;br /&gt;
    for i, name in ipairs(allNames) do&lt;br /&gt;
        if mw.ustring.lower(mw.ustring.sub(image, 1, mw.ustring.len(name) + 1)) == mw.ustring.lower(name .. &amp;quot;:&amp;quot;) then&lt;br /&gt;
            image = mw.ustring.sub(image, mw.ustring.len(name) + 2);&lt;br /&gt;
            break&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
    -- Trim spaces&lt;br /&gt;
    image = mw.ustring.gsub(image, &#039;^[ ]*(.-)[ ]*$&#039;, &#039;%1&#039;);&lt;br /&gt;
    -- capitalise first letter&lt;br /&gt;
    image = mw.ustring.upper(mw.ustring.sub(image,1,1)) .. mw.ustring.sub(image,2);&lt;br /&gt;
&lt;br /&gt;
    for i,j in pairs(placeholder_image) do&lt;br /&gt;
        if image == j then&lt;br /&gt;
            return true&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
    return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function i.InfoboxImage(frame)&lt;br /&gt;
    local image = frame.args[&amp;quot;image&amp;quot;];&lt;br /&gt;
    &lt;br /&gt;
    if image == &amp;quot;&amp;quot; or image == nil then&lt;br /&gt;
        return &amp;quot;&amp;quot;;&lt;br /&gt;
    end&lt;br /&gt;
    if image == &amp;quot;&amp;amp;nbsp;&amp;quot; then&lt;br /&gt;
        return image;&lt;br /&gt;
    end&lt;br /&gt;
    if frame.args[&amp;quot;suppressplaceholder&amp;quot;] ~= &amp;quot;no&amp;quot; then&lt;br /&gt;
        if i.IsPlaceholder(image) == true then&lt;br /&gt;
            return &amp;quot;&amp;quot;;&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
    &lt;br /&gt;
    if string.find(image, &amp;quot;^%[*https?:&amp;quot;) then&lt;br /&gt;
		-- Error category.&lt;br /&gt;
		return trackable() and categories.url_image_links or &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
    if mw.ustring.sub(image,1,2) == &amp;quot;[[&amp;quot; then&lt;br /&gt;
        -- search for thumbnail images and add to tracking cat if found&lt;br /&gt;
        local cat = &amp;quot;&amp;quot;;&lt;br /&gt;
        if mw.title.getCurrentTitle().namespace == 0 and (mw.ustring.find(image, &amp;quot;|%s*thumb%s*[|%]]&amp;quot;) or mw.ustring.find(image, &amp;quot;|%s*thumbnail%s*[|%]]&amp;quot;)) then&lt;br /&gt;
            cat = trackable() and categories.thumbnail_images or &amp;quot;&amp;quot;&lt;br /&gt;
        end&lt;br /&gt;
        return image .. cat;&lt;br /&gt;
    elseif mw.ustring.sub(image,1,2) == &amp;quot;{{&amp;quot; and mw.ustring.sub(image,1,3) ~= &amp;quot;{{{&amp;quot; then&lt;br /&gt;
        return image;&lt;br /&gt;
    elseif mw.ustring.sub(image,1,1) == &amp;quot;&amp;lt;&amp;quot; then&lt;br /&gt;
        return image;&lt;br /&gt;
    elseif mw.ustring.sub(image,1,8) == mw.ustring.char(127)..&amp;quot;&#039;\&amp;quot;`UNIQ&amp;quot; then&lt;br /&gt;
        -- Found strip marker at begining, so pass don&#039;t process at all&lt;br /&gt;
        return image;&lt;br /&gt;
    else&lt;br /&gt;
        local result = &amp;quot;&amp;quot;;&lt;br /&gt;
        local page = frame.args[&amp;quot;page&amp;quot;];&lt;br /&gt;
        local size = frame.args[&amp;quot;size&amp;quot;];&lt;br /&gt;
        local maxsize = frame.args[&amp;quot;maxsize&amp;quot;];&lt;br /&gt;
        local sizedefault = frame.args[&amp;quot;sizedefault&amp;quot;];&lt;br /&gt;
        local alt = frame.args[&amp;quot;alt&amp;quot;];&lt;br /&gt;
        local link = frame.args[&amp;quot;link&amp;quot;];&lt;br /&gt;
        local title = frame.args[&amp;quot;title&amp;quot;];&lt;br /&gt;
        local border = frame.args[&amp;quot;border&amp;quot;];&lt;br /&gt;
        local upright = frame.args[&amp;quot;upright&amp;quot;] or &amp;quot;&amp;quot;;&lt;br /&gt;
        local thumbtime = frame.args[&amp;quot;thumbtime&amp;quot;] or &amp;quot;&amp;quot;;&lt;br /&gt;
        local center = frame.args[&amp;quot;center&amp;quot;];&lt;br /&gt;
        local class = frame.args[&amp;quot;class&amp;quot;];&lt;br /&gt;
        &lt;br /&gt;
        -- remove prefix if exists&lt;br /&gt;
        local allNames = mw.site.namespaces[6].aliases&lt;br /&gt;
        allNames[#allNames + 1] = mw.site.namespaces[6].name&lt;br /&gt;
        allNames[#allNames + 1] = mw.site.namespaces[6].canonicalName&lt;br /&gt;
        for i, name in ipairs(allNames) do&lt;br /&gt;
            if mw.ustring.lower(mw.ustring.sub(image, 1, mw.ustring.len(name) + 1)) == mw.ustring.lower(name .. &amp;quot;:&amp;quot;) then&lt;br /&gt;
                image = mw.ustring.sub(image, mw.ustring.len(name) + 2);&lt;br /&gt;
                break&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
        &lt;br /&gt;
        if maxsize ~= &amp;quot;&amp;quot; and maxsize ~= nil then&lt;br /&gt;
            -- if no sizedefault then set to maxsize&lt;br /&gt;
            if sizedefault == &amp;quot;&amp;quot; or sizedefault == nil then&lt;br /&gt;
                sizedefault = maxsize&lt;br /&gt;
            end&lt;br /&gt;
            -- check to see if size bigger than maxsize&lt;br /&gt;
            if size ~= &amp;quot;&amp;quot; and size ~= nil then&lt;br /&gt;
                local sizenumber = tonumber(mw.ustring.match(size,&amp;quot;%d*&amp;quot;)) or 0;&lt;br /&gt;
                local maxsizenumber = tonumber(mw.ustring.match(maxsize,&amp;quot;%d*&amp;quot;)) or 0;&lt;br /&gt;
                if sizenumber&amp;gt;maxsizenumber and maxsizenumber&amp;gt;0 then&lt;br /&gt;
                    size = maxsize;&lt;br /&gt;
                end&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
        -- add px to size if just a number&lt;br /&gt;
        if (tonumber(size) or 0) &amp;gt; 0 then&lt;br /&gt;
            size = size .. &amp;quot;px&amp;quot;;&lt;br /&gt;
        end&lt;br /&gt;
        -- add px to sizedefault if just a number&lt;br /&gt;
        if (tonumber(sizedefault) or 0) &amp;gt; 0 then&lt;br /&gt;
            sizedefault = sizedefault .. &amp;quot;px&amp;quot;;&lt;br /&gt;
        end&lt;br /&gt;
        &lt;br /&gt;
        result = &amp;quot;[[File:&amp;quot; .. image;&lt;br /&gt;
        if page ~= &amp;quot;&amp;quot; and page ~= nil then&lt;br /&gt;
            result = result .. &amp;quot;|page=&amp;quot; .. page;&lt;br /&gt;
        end&lt;br /&gt;
        if size ~= &amp;quot;&amp;quot; and size ~= nil then&lt;br /&gt;
            result = result .. &amp;quot;|&amp;quot; .. size;&lt;br /&gt;
        elseif sizedefault ~= &amp;quot;&amp;quot; and sizedefault ~= nil then&lt;br /&gt;
            result = result .. &amp;quot;|&amp;quot; .. sizedefault;&lt;br /&gt;
        else&lt;br /&gt;
            result = result .. &amp;quot;|frameless&amp;quot;;&lt;br /&gt;
        end&lt;br /&gt;
        if center == &amp;quot;yes&amp;quot; then&lt;br /&gt;
            result = result .. &amp;quot;|center&amp;quot;&lt;br /&gt;
        end&lt;br /&gt;
        if alt ~= &amp;quot;&amp;quot; and alt ~= nil then&lt;br /&gt;
            result = result .. &amp;quot;|alt=&amp;quot; .. alt;&lt;br /&gt;
        end&lt;br /&gt;
        if link ~= &amp;quot;&amp;quot; and link ~= nil then&lt;br /&gt;
            result = result .. &amp;quot;|link=&amp;quot; .. link;&lt;br /&gt;
        end&lt;br /&gt;
        if border == &amp;quot;yes&amp;quot; then&lt;br /&gt;
            result = result .. &amp;quot;|border&amp;quot;;&lt;br /&gt;
        end&lt;br /&gt;
        if upright == &amp;quot;yes&amp;quot; then&lt;br /&gt;
            result = result .. &amp;quot;|upright&amp;quot;;&lt;br /&gt;
        elseif upright ~= &amp;quot;&amp;quot; then&lt;br /&gt;
            result = result .. &amp;quot;|upright=&amp;quot; .. upright;&lt;br /&gt;
        end&lt;br /&gt;
        if thumbtime ~= &amp;quot;&amp;quot; then&lt;br /&gt;
            result = result .. &amp;quot;|thumbtime=&amp;quot; .. thumbtime;&lt;br /&gt;
        end&lt;br /&gt;
        if class ~= nil and class ~= &amp;quot;&amp;quot; then&lt;br /&gt;
            result = result .. &amp;quot;|class=&amp;quot; .. class;&lt;br /&gt;
        end&lt;br /&gt;
        -- if alt value is a keyword then do not use as a description&lt;br /&gt;
        if alt == &amp;quot;thumbnail&amp;quot; or alt == &amp;quot;thumb&amp;quot; or alt == &amp;quot;frameless&amp;quot; or alt == &amp;quot;left&amp;quot; or alt == &amp;quot;center&amp;quot; or alt == &amp;quot;right&amp;quot; or alt == &amp;quot;upright&amp;quot; or alt == &amp;quot;border&amp;quot; or mw.ustring.match(alt or &amp;quot;&amp;quot;, &#039;^[0-9]*px$&#039;, 1) ~= nil then&lt;br /&gt;
            alt = nil;&lt;br /&gt;
        end&lt;br /&gt;
        if title ~= &amp;quot;&amp;quot; and title ~= nil then&lt;br /&gt;
            -- does title param contain any templatestyles? If yes then set to blank.&lt;br /&gt;
            if mw.ustring.match(frame:preprocess(title), &#039;UNIQ%-%-templatestyles&#039;, 1) ~= nil then&lt;br /&gt;
                title = nil;&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
        if title ~= &amp;quot;&amp;quot; and title ~= nil then&lt;br /&gt;
            result = result .. &amp;quot;|&amp;quot; .. title;&lt;br /&gt;
        end&lt;br /&gt;
        result = result .. &amp;quot;]]&amp;quot;;&lt;br /&gt;
        &lt;br /&gt;
        return result;&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return i;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Hlist&amp;diff=65732</id>
		<title>Template:Hlist</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Hlist&amp;diff=65732"/>
		<updated>2024-08-16T20:32:47Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{&amp;lt;includeonly&amp;gt;safesubst:&amp;lt;/includeonly&amp;gt;#invoke:list|horizontal}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{documentation}}&lt;br /&gt;
&amp;lt;!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Abbr&amp;diff=65730</id>
		<title>Template:Abbr</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Abbr&amp;diff=65730"/>
		<updated>2024-08-16T20:32:47Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;abbr {{#if:{{{class|}}}|class=&amp;quot;{{{class}}}&amp;quot;}} {{#if:{{{id|}}}|id=&amp;quot;{{{id}}}&amp;quot;}} {{#if:{{{style|}}}|style=&amp;quot;{{{style}}}&amp;quot;}} title=&amp;quot;{{#tag:nowiki|{{#invoke:String|replace|{{{2|}}}|&amp;quot;|&amp;amp;quot;}}}}&amp;quot;&amp;gt;{{{1|}}}&amp;lt;/abbr&amp;gt;&amp;lt;noinclude&amp;gt;{{Documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Template:Infobox_military_conflict&amp;diff=65728</id>
		<title>Template:Infobox military conflict</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Template:Infobox_military_conflict&amp;diff=65728"/>
		<updated>2024-08-16T20:32:47Z</updated>

		<summary type="html">&lt;p&gt;Astograth: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{{#invoke:Infobox military conflict|main}}&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;{{documentation}}&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Astograth</name></author>
	</entry>
</feed>