<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://nssportwiki.com/index.php?action=history&amp;feed=atom&amp;title=Module%3ASports_table%2Fargcheck</id>
	<title>Module:Sports table/argcheck - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://nssportwiki.com/index.php?action=history&amp;feed=atom&amp;title=Module%3ASports_table%2Fargcheck"/>
	<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Sports_table/argcheck&amp;action=history"/>
	<updated>2026-05-16T07:06:59Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Sports_table/argcheck&amp;diff=57981&amp;oldid=prev</id>
		<title>&gt;TheKitKatProject: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Sports_table/argcheck&amp;diff=57981&amp;oldid=prev"/>
		<updated>2020-09-21T19:10:55Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:10, 21 September 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en-GB&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>&gt;TheKitKatProject</name></author>
	</entry>
	<entry>
		<id>https://nssportwiki.com/index.php?title=Module:Sports_table/argcheck&amp;diff=57980&amp;oldid=prev</id>
		<title>wiki&gt;Frietjes at 15:08, 7 September 2020</title>
		<link rel="alternate" type="text/html" href="https://nssportwiki.com/index.php?title=Module:Sports_table/argcheck&amp;diff=57980&amp;oldid=prev"/>
		<updated>2020-09-07T15:08:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local a = {}&lt;br /&gt;
&lt;br /&gt;
local good_args = {&lt;br /&gt;
	[&amp;#039;away_goals_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;bonus_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;class_rules&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;draw_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;drawpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;float&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;for_against_style&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;GB_team&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;goalpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;group_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hide_for_against_columns&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hide_played&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;highest_pos&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;legs&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;loss_before_draw&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;loss_before_tie&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;losspoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;lowest_pos&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;matches_style&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;matches_text&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;match_col_width&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;note_header_res&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;only_pld_pts&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;only_totals&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;only_fa_totals&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;pld_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;postitle&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;perc_first&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;pts_first&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;ranking_style&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;res_col_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;result_prefix&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;rwpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;rw_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;section&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;short_style&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_GB&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_away_goals&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_bonus_points&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_class_rules&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_draw&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_groups&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_limit&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_matches&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_positions&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_rw&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_status&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_totals&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;solid_cell&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;sortable_table&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;source&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;start_date&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;stack_footer&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;status_order&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;status_pos&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;style&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;table_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;table_header_source&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;team_header&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;team_order&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;teamwidth&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;template_name&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;title&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;title_source&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;transcludesection&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;update&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_goal_average&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_goal_diff&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_goal_percentage&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_goal_ratio&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_goals_scored&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_point_percentage&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_goals_per_match&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_points_per_match&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;use_tie&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;winpoints&amp;#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
local good_args_HA = {&lt;br /&gt;
	[&amp;#039;hdrawpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;adrawpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hlosspoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;alosspoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hwinpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;awinpoints&amp;#039;] = 1&lt;br /&gt;
}&lt;br /&gt;
local good_args_PKOT = {&lt;br /&gt;
	[&amp;#039;showOTloss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;showOTwin&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;showPKloss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;showPKwin&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;show_tiebr&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;PKlosspoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;OTlosspoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;PKwinpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;OTwinpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;PKloss_after_loss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;OTloss_after_loss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;tiebr_header&amp;#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
local ignored_args = {&lt;br /&gt;
	[&amp;#039;date&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;ptsfirst&amp;#039;] = 1&lt;br /&gt;
}&lt;br /&gt;
local col_names = {&lt;br /&gt;
	[&amp;#039;adjust_points&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;away_goals&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;draw&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;loss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;gf&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;ga&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;group&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;pf&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;pa&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;matches&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;pos&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;rw&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;short&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;startpoints&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;status&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;win&amp;#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
local col_names_HA = {&lt;br /&gt;
	[&amp;#039;draw&amp;#039;] = 0,&lt;br /&gt;
	[&amp;#039;loss&amp;#039;] = 0,&lt;br /&gt;
	[&amp;#039;gf&amp;#039;] = 0,&lt;br /&gt;
	[&amp;#039;ga&amp;#039;] = 0,&lt;br /&gt;
	[&amp;#039;pf&amp;#039;] = 0,&lt;br /&gt;
	[&amp;#039;pa&amp;#039;] = 0,&lt;br /&gt;
	[&amp;#039;rw&amp;#039;] = 0,&lt;br /&gt;
	[&amp;#039;hdraw&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;adraw&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hloss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;aloss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hwin&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;awin&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hga&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;aga&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hgf&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;agf&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hpa&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;apa&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;hpf&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;apf&amp;#039;] = 1,&lt;br /&gt;
}&lt;br /&gt;
local col_names_PKOT = {&lt;br /&gt;
	[&amp;#039;PKloss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;OTloss&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;PKwin&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;OTwin&amp;#039;] = 1,&lt;br /&gt;
	[&amp;#039;tiebr&amp;#039;] = 1&lt;br /&gt;
}&lt;br /&gt;
local tracked_styles = {&lt;br /&gt;
	[&amp;#039;football&amp;#039;] = &amp;#039;WDL&amp;#039;,&lt;br /&gt;
	[&amp;#039;WDL&amp;#039;] = &amp;#039;WDL&amp;#039;,&lt;br /&gt;
	[&amp;#039;WL&amp;#039;] = &amp;#039;WDL&amp;#039;,&lt;br /&gt;
	[&amp;#039;WDLHA&amp;#039;] = &amp;#039;HA&amp;#039;,&lt;br /&gt;
	[&amp;#039;WDL OT&amp;#039;] = &amp;#039;PKOT&amp;#039;,&lt;br /&gt;
	[&amp;#039;WLHA&amp;#039;] = &amp;#039;HA&amp;#039;,&lt;br /&gt;
	[&amp;#039;WL OT&amp;#039;] = &amp;#039;PKOT&amp;#039;,&lt;br /&gt;
	[&amp;#039;WL PK&amp;#039;] = &amp;#039;PKOT&amp;#039;,&lt;br /&gt;
	[&amp;#039;WL OTL tiebreak&amp;#039;] = &amp;#039;PKOT&amp;#039;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function a.check(targs, pargs)&lt;br /&gt;
	local teams = {}&lt;br /&gt;
	local missing_teams = {}&lt;br /&gt;
	local results = {}&lt;br /&gt;
	local missing_results = {}&lt;br /&gt;
	local orphaned_match_notes = {}&lt;br /&gt;
	local orphaned_results = {}&lt;br /&gt;
	local orphaned_names = {}&lt;br /&gt;
	local orphaned_notes = {}&lt;br /&gt;
	local ignored = {}&lt;br /&gt;
	local possibly_ignored = {}&lt;br /&gt;
	local unknown = {}&lt;br /&gt;
	local warn = {}&lt;br /&gt;
	local track = {}&lt;br /&gt;
	&lt;br /&gt;
	local mstyle = mw.ustring.gsub(targs[&amp;#039;style&amp;#039;] or &amp;#039;&amp;#039;, &amp;#039;[%s_][%s_]*&amp;#039;, &amp;#039; &amp;#039;)&lt;br /&gt;
	mstyle = tracked_styles[mstyle]&lt;br /&gt;
	&lt;br /&gt;
	if mstyle == nil then&lt;br /&gt;
		return warn,track&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if mstyle == &amp;#039;HA&amp;#039; then&lt;br /&gt;
		for k, v in pairs(good_args_HA) do&lt;br /&gt;
			good_args[k] = v ~= 0 and v or nil&lt;br /&gt;
		end&lt;br /&gt;
		for k, v in pairs(col_names_HA) do&lt;br /&gt;
			col_names[k] = v ~= 0 and v or nil&lt;br /&gt;
		end&lt;br /&gt;
		if targs[&amp;#039;only_fa_totals&amp;#039;] then&lt;br /&gt;
			col_names[&amp;#039;pf&amp;#039;] = 1&lt;br /&gt;
			col_names[&amp;#039;gf&amp;#039;] = 1&lt;br /&gt;
			col_names[&amp;#039;pa&amp;#039;] = 1&lt;br /&gt;
			col_names[&amp;#039;ga&amp;#039;] = 1&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if mstyle == &amp;#039;PKOT&amp;#039; then&lt;br /&gt;
		for k, v in pairs(good_args_PKOT) do&lt;br /&gt;
			good_args[k] = v ~= 0 and v or nil&lt;br /&gt;
		end&lt;br /&gt;
		for k, v in pairs(col_names_PKOT) do&lt;br /&gt;
			col_names[k] = v ~= 0 and v or nil&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Alternative syntax for team list&lt;br /&gt;
	if targs[&amp;#039;team_order&amp;#039;] and targs[&amp;#039;team_order&amp;#039;] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
		local tlist = mw.text.split(targs[&amp;#039;team_order&amp;#039;], &amp;#039;%s*[;,]%s*&amp;#039;)&lt;br /&gt;
		for k, tname in ipairs(tlist) do&lt;br /&gt;
			if tname ~= &amp;#039;&amp;#039; then&lt;br /&gt;
				targs[&amp;#039;team&amp;#039; .. k] = tname&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Limited tracking if we are only showing part of the table&lt;br /&gt;
	if targs[&amp;#039;showteam&amp;#039;] then&lt;br /&gt;
		local top_pos = tonumber(targs[&amp;#039;highest_pos&amp;#039;]) or 1&lt;br /&gt;
		local bottom_pos = tonumber(targs[&amp;#039;lowest_pos&amp;#039;]) or 0&lt;br /&gt;
		local N = top_pos - 1&lt;br /&gt;
		while targs[&amp;#039;team&amp;#039;..N+1] ~= nil and (bottom_pos &amp;lt; top_pos or N &amp;lt; bottom_pos) do&lt;br /&gt;
			N = N + 1&lt;br /&gt;
			teams[targs[&amp;#039;team&amp;#039;..N]] = 1&lt;br /&gt;
			if teams[targs[&amp;#039;showteam&amp;#039;]] then&lt;br /&gt;
				return warn,track&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Step 1: Generate a team and result list&lt;br /&gt;
	for k,v in pairs(targs) do&lt;br /&gt;
		if type(k) == &amp;#039;string&amp;#039; then&lt;br /&gt;
			if k:find(&amp;#039;^team%d%d*$&amp;#039;) then&lt;br /&gt;
				teams[v] = 1&lt;br /&gt;
				targs[k] = &amp;#039;&amp;#039;&lt;br /&gt;
				if targs[&amp;#039;name_&amp;#039; .. v] then&lt;br /&gt;
					-- Great!&lt;br /&gt;
					targs[&amp;#039;name_&amp;#039; .. v] = &amp;#039;&amp;#039;&lt;br /&gt;
				else&lt;br /&gt;
					table.insert(missing_teams, v)&lt;br /&gt;
				end&lt;br /&gt;
				if targs[&amp;#039;note_&amp;#039; .. v] then&lt;br /&gt;
					targs[&amp;#039;note_&amp;#039; .. v] = &amp;#039;&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
				if targs[&amp;#039;hth_&amp;#039; .. v] then&lt;br /&gt;
					local multiref = 1&lt;br /&gt;
					local hth_local_table = mw.text.split(targs[&amp;#039;hth_&amp;#039; .. v], &amp;#039;%s*,%s*&amp;#039;)&lt;br /&gt;
					if (#hth_local_table &amp;gt; 1) then&lt;br /&gt;
						for j, hth_loc in ipairs(hth_local_table) do&lt;br /&gt;
							multiref = multiref * (targs[&amp;#039;hth_&amp;#039; .. hth_loc] and 1 or 0)&lt;br /&gt;
						end&lt;br /&gt;
					else&lt;br /&gt;
						multiref = 0&lt;br /&gt;
					end&lt;br /&gt;
					if multiref &amp;gt; 0 then&lt;br /&gt;
						for j, hth_loc in ipairs(hth_local_table) do&lt;br /&gt;
							targs[&amp;#039;hth_&amp;#039; .. hth_loc] = &amp;#039;&amp;#039;&lt;br /&gt;
						end&lt;br /&gt;
					elseif targs[&amp;#039;hth_&amp;#039; .. targs[&amp;#039;hth_&amp;#039; .. v]] then&lt;br /&gt;
						targs[&amp;#039;hth_&amp;#039; .. targs[&amp;#039;hth_&amp;#039; .. v]] = &amp;#039;&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					targs[&amp;#039;hth_&amp;#039; .. v] = &amp;#039;&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
			elseif k:find(&amp;#039;^result%d%d*$&amp;#039;) or k:find(&amp;#039;^.*_result%d%d*$&amp;#039;) then&lt;br /&gt;
				local pre = mw.ustring.gsub(k, &amp;#039;^(.*)result%d%d*$&amp;#039;, &amp;#039;%1&amp;#039;)&lt;br /&gt;
				results[v] = 1&lt;br /&gt;
				targs[k] = &amp;#039;&amp;#039;&lt;br /&gt;
				if targs[pre .. &amp;#039;col_&amp;#039; .. v] or targs[pre .. &amp;#039;text_&amp;#039; .. v] or targs[pre .. &amp;#039;note_res_&amp;#039; .. v] then&lt;br /&gt;
					-- Great!&lt;br /&gt;
					if targs[pre .. &amp;#039;col_&amp;#039; .. v] then&lt;br /&gt;
						targs[pre .. &amp;#039;col_&amp;#039; .. v] = &amp;#039;&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					if targs[pre .. &amp;#039;text_&amp;#039; .. v] then&lt;br /&gt;
						targs[pre .. &amp;#039;text_&amp;#039; .. v] = &amp;#039;&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					if targs[pre .. &amp;#039;note_res_&amp;#039; .. v] then&lt;br /&gt;
						local multiref = 1&lt;br /&gt;
						local note_res_local_table = mw.text.split(targs[pre .. &amp;#039;note_res_&amp;#039; .. v], &amp;#039;%s*,%s*&amp;#039;)&lt;br /&gt;
						if (#note_res_local_table &amp;gt; 1) then&lt;br /&gt;
							for j, note_res_loc in ipairs(note_res_local_table) do&lt;br /&gt;
								multiref = multiref * (targs[pre .. &amp;#039;note_res_&amp;#039; .. note_res_loc] and 1 or 0)&lt;br /&gt;
							end&lt;br /&gt;
						else&lt;br /&gt;
							multiref = 0&lt;br /&gt;
						end&lt;br /&gt;
						if multiref &amp;gt; 0 then&lt;br /&gt;
							for j, note_res_loc in ipairs(note_res_local_table) do&lt;br /&gt;
								targs[pre .. &amp;#039;note_res_&amp;#039; .. note_res_loc] = &amp;#039;&amp;#039;&lt;br /&gt;
							end&lt;br /&gt;
						elseif targs[pre .. &amp;#039;note_res_&amp;#039; .. targs[pre .. &amp;#039;note_res_&amp;#039; ..  v]] then&lt;br /&gt;
							targs[pre .. &amp;#039;note_res_&amp;#039; ..  targs[pre .. &amp;#039;note_res_&amp;#039; ..  v]] = &amp;#039;&amp;#039;&lt;br /&gt;
						end&lt;br /&gt;
						targs[pre .. &amp;#039;note_res_&amp;#039; .. v] = &amp;#039;&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					if targs[pre .. &amp;#039;res_col_header&amp;#039;] then&lt;br /&gt;
						targs[pre .. &amp;#039;res_col_header&amp;#039;] = &amp;#039;&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
				else&lt;br /&gt;
					table.insert(missing_results, v)&lt;br /&gt;
				end&lt;br /&gt;
			elseif k:find(&amp;#039;^match[%d]*_.*_.*_note$&amp;#039;) then&lt;br /&gt;
				local m = mw.ustring.gsub(k, &amp;#039;^(match[%d]*_.*_.*)_note$&amp;#039;, &amp;#039;%1&amp;#039;)&lt;br /&gt;
				targs[k] = &amp;#039;&amp;#039;&lt;br /&gt;
				if targs[m] then&lt;br /&gt;
					if targs[&amp;#039;note_&amp;#039; .. v] then&lt;br /&gt;
						targs[&amp;#039;note_&amp;#039; .. v] = &amp;#039;&amp;#039;&lt;br /&gt;
					end&lt;br /&gt;
					-- Great!&lt;br /&gt;
				else&lt;br /&gt;
					table.insert(orphaned_match_notes, m)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local possible_missing_winpoints = 0&lt;br /&gt;
	for k,v in pairs(targs) do&lt;br /&gt;
		if v and v~= &amp;#039;&amp;#039; then&lt;br /&gt;
			local found_arg = 0&lt;br /&gt;
			if type(k) == &amp;#039;string&amp;#039; then&lt;br /&gt;
				if k:find(&amp;#039;^adjust_points_&amp;#039;) then&lt;br /&gt;
					local p = mw.ustring.gsub(k, &amp;#039;^adjust_points_&amp;#039;, &amp;#039;&amp;#039;)&lt;br /&gt;
					if (tonumber(v) or 0) ~= 0 then&lt;br /&gt;
						local pdiff = (tonumber(targs[&amp;#039;win_&amp;#039; .. p] or 0) or 0) + tonumber(v)&lt;br /&gt;
						if pdiff == 0 then&lt;br /&gt;
							possible_missing_winpoints = possible_missing_winpoints + 1&lt;br /&gt;
						else&lt;br /&gt;
							possible_missing_winpoints = possible_missing_winpoints - 1&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and (good_args[k] or k:find(&amp;#039;^split[%d][%d]*$&amp;#039;)) then&lt;br /&gt;
					-- Great!&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and k == &amp;#039;showteam&amp;#039; then&lt;br /&gt;
					-- Great!&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
					if teams[v] ~= 1 then&lt;br /&gt;
						table.insert(missing_teams, v)&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and (ignored_args[k] or k:find(&amp;#039;^att_&amp;#039;)) then&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
					table.insert(ignored, k)&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and k:find(&amp;#039;^[A-Za-z]*_.*$&amp;#039;) then&lt;br /&gt;
					local p = mw.ustring.gsub(k, &amp;#039;^([A-Za-z]*)_.*$&amp;#039;, &amp;#039;%1&amp;#039;)&lt;br /&gt;
					if col_names[p] then&lt;br /&gt;
						-- Great!&lt;br /&gt;
						found_arg = 1&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and k:find(&amp;#039;^[A-Za-z]*_[A-Za-z]*_.*$&amp;#039;) then&lt;br /&gt;
					local p = mw.ustring.gsub(k, &amp;#039;^([A-Za-z]*_[A-Za-z]*)_.*$&amp;#039;, &amp;#039;%1&amp;#039;)&lt;br /&gt;
					if col_names[p] then&lt;br /&gt;
						-- Great!&lt;br /&gt;
						found_arg = 1&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				if found_arg == 0 and k:find(&amp;#039;^match[%d]*_.*_.*$&amp;#039;) then&lt;br /&gt;
					local t1 = mw.ustring.gsub(k, &amp;#039;^match[%d]*_(.*)_(.*)$&amp;#039;, &amp;#039;%1&amp;#039;)&lt;br /&gt;
					local t2 = mw.ustring.gsub(k, &amp;#039;^match[%d]*_(.*)_(.*)$&amp;#039;, &amp;#039;%2&amp;#039;)&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
					if teams[t1] == nil or teams[t2] == nil then&lt;br /&gt;
						if teams[t1] == nil then&lt;br /&gt;
							table.insert(missing_teams, t1)&lt;br /&gt;
						end&lt;br /&gt;
						if teams[t2] == nil then&lt;br /&gt;
							table.insert(missing_teams, t2)&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and k:find(&amp;#039;^result_.*_.*$&amp;#039;) then&lt;br /&gt;
					local t1 = mw.ustring.gsub(k, &amp;#039;^result[%d]*_(.*)_(.*)$&amp;#039;, &amp;#039;%1&amp;#039;)&lt;br /&gt;
					local t2 = mw.ustring.gsub(k, &amp;#039;^result[%d]*_(.*)_(.*)$&amp;#039;, &amp;#039;%2&amp;#039;)&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
					if teams[t1] == nil or teams[t2] == nil then&lt;br /&gt;
						if teams[t1] == nil then&lt;br /&gt;
							table.insert(missing_teams, t1)&lt;br /&gt;
						end&lt;br /&gt;
						if teams[t2] == nil then&lt;br /&gt;
							table.insert(missing_teams, t2)&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and (k:find(&amp;#039;^name_&amp;#039;) or k:find(&amp;#039;^short_&amp;#039;)) then&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
					table.insert(orphaned_names, k)&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and (k:find(&amp;#039;^note_&amp;#039;) or k:find(&amp;#039;^hth_&amp;#039;)) then&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
					if (k == &amp;#039;hth_ABC&amp;#039; and v == &amp;#039;H2H note&amp;#039;) then&lt;br /&gt;
						table.insert(warn, &amp;#039;[[Category:Pages using sports table with ignored parameters|hth_ABC]]&amp;#039;)&lt;br /&gt;
					elseif (k == &amp;#039;note_ABC&amp;#039; and v == &amp;#039;Team note&amp;#039;) then&lt;br /&gt;
						table.insert(warn, &amp;#039;[[Category:Pages using sports table with ignored parameters|note_ABC]]&amp;#039;)&lt;br /&gt;
					elseif (k == &amp;#039;note_res_AAA&amp;#039; and v == &amp;#039;Result note&amp;#039;) then&lt;br /&gt;
						table.insert(warn, &amp;#039;[[Category:Pages using sports table with ignored parameters|note_res_AAA]]&amp;#039;)&lt;br /&gt;
					else&lt;br /&gt;
						table.insert(orphaned_notes, k)&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
				if found_arg == 0 and (k:find(&amp;#039;^col_&amp;#039;) or k:find(&amp;#039;^text_&amp;#039;)) then&lt;br /&gt;
					found_arg = 1&lt;br /&gt;
					table.insert(orphaned_results, k)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			if found_arg == 0 then&lt;br /&gt;
				if pargs[k] and pargs[k] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
					if tonumber(k) then&lt;br /&gt;
						k = k .. &amp;#039; = &amp;#039; .. v&lt;br /&gt;
					end&lt;br /&gt;
					table.insert(possibly_ignored, k)&lt;br /&gt;
				else&lt;br /&gt;
					if tonumber(k) then&lt;br /&gt;
						k = k .. &amp;#039; = &amp;#039; .. v&lt;br /&gt;
					end&lt;br /&gt;
					table.insert(unknown, k)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local badchar = &amp;#039;[^A-Za-z0-9_%(%)%- ]&amp;#039;&lt;br /&gt;
	for k,v in ipairs(unknown) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with unknown parameters|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(missing_teams) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with missing teams|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(missing_results) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with missing results|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(orphaned_results) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with orphaned results|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(orphaned_names) do&lt;br /&gt;
		v = mw.ustring.gsub(v, &amp;#039;[^A-Za-z0-9_ ]&amp;#039;, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with orphaned names|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(orphaned_notes) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with orphaned notes|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(orphaned_match_notes) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with orphaned match notes|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(ignored) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(warn, &amp;#039;[[Category:Pages using sports table with ignored parameters|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	for k,v in ipairs(possibly_ignored) do&lt;br /&gt;
		v = mw.ustring.gsub(v, badchar, &amp;#039;?&amp;#039;)&lt;br /&gt;
		if v == &amp;#039;&amp;#039; then v = &amp;#039; &amp;#039; end&lt;br /&gt;
		table.insert(track, &amp;#039;[[Category:Pages using sports table with possibly ignored parameters|&amp;#039; .. v .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if possible_missing_winpoints &amp;gt; 1 then&lt;br /&gt;
		table.insert(track, &amp;#039;[[Category:Pages using sports table with possible incorrect winpoints|&amp;#039; .. possible_missing_winpoints .. &amp;#039;]]&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return warn,track&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return a&lt;/div&gt;</summary>
		<author><name>wiki&gt;Frietjes</name></author>
	</entry>
</feed>