<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.tachyony.co.uk/w/index.php?action=history&amp;feed=atom&amp;title=Module%3AJctint%2FUSA</id>
	<title>Module:Jctint/USA - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.tachyony.co.uk/w/index.php?action=history&amp;feed=atom&amp;title=Module%3AJctint%2FUSA"/>
	<link rel="alternate" type="text/html" href="https://wiki.tachyony.co.uk/w/index.php?title=Module:Jctint/USA&amp;action=history"/>
	<updated>2026-05-16T02:59:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.5</generator>
	<entry>
		<id>https://wiki.tachyony.co.uk/w/index.php?title=Module:Jctint/USA&amp;diff=6583&amp;oldid=prev</id>
		<title>Tachyony: Created page with &quot;local p = {}  local format = mw.ustring.format local concat = table.concat local insert = table.insert  local roadDataModule = require(&quot;Module:Road data&quot;)  -- TODO transition -- begin transition code local region_special = { 	GA = &quot;Georgia&quot;, 	NY = &quot;New York&quot;, 	WA = &quot;Washington&quot; }  local indep_city = { 	CA = { 		[&quot;San Francisco&quot;] = { 			prefix = &quot;City and County of &quot; 		} 	}, 	CO = { 		[&quot;Denver&quot;] = { 			p...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.tachyony.co.uk/w/index.php?title=Module:Jctint/USA&amp;diff=6583&amp;oldid=prev"/>
		<updated>2022-01-19T14:13:28Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local p = {}  local format = mw.ustring.format local concat = table.concat local insert = table.insert  local roadDataModule = require(&amp;quot;Module:Road data&amp;quot;)  -- TODO transition -- begin transition code local region_special = { 	GA = &amp;quot;&lt;a href=&quot;/w/index.php?title=Georgia_(U.S._state)&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Georgia (U.S. state) (page does not exist)&quot;&gt;Georgia&lt;/a&gt;&amp;quot;, 	NY = &amp;quot;&lt;a href=&quot;/w/index.php?title=New_York_(state)&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;New York (state) (page does not exist)&quot;&gt;New York&lt;/a&gt;&amp;quot;, 	WA = &amp;quot;&lt;a href=&quot;/w/index.php?title=Washington_(state)&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Washington (state) (page does not exist)&quot;&gt;Washington&lt;/a&gt;&amp;quot; }  local indep_city = { 	CA = { 		[&amp;quot;San Francisco&amp;quot;] = { 			prefix = &amp;quot;City and County of &amp;quot; 		} 	}, 	CO = { 		[&amp;quot;Denver&amp;quot;] = { 			p...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
local format = mw.ustring.format&lt;br /&gt;
local concat = table.concat&lt;br /&gt;
local insert = table.insert&lt;br /&gt;
&lt;br /&gt;
local roadDataModule = require(&amp;quot;Module:Road data&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
-- TODO transition&lt;br /&gt;
-- begin transition code&lt;br /&gt;
local region_special = {&lt;br /&gt;
	GA = &amp;quot;[[Georgia (U.S. state)|Georgia]]&amp;quot;,&lt;br /&gt;
	NY = &amp;quot;[[New York (state)|New York]]&amp;quot;,&lt;br /&gt;
	WA = &amp;quot;[[Washington (state)|Washington]]&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local indep_city = {&lt;br /&gt;
	CA = {&lt;br /&gt;
		[&amp;quot;San Francisco&amp;quot;] = {&lt;br /&gt;
			prefix = &amp;quot;City and County of &amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	CO = {&lt;br /&gt;
		[&amp;quot;Denver&amp;quot;] = {&lt;br /&gt;
			prefix = &amp;quot;City and County of &amp;quot;&lt;br /&gt;
		},&lt;br /&gt;
		default = {&lt;br /&gt;
			prefix = &amp;quot;City and County of &amp;quot;,&lt;br /&gt;
			linksuffix = &amp;quot;, Colorado&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	MD = {&lt;br /&gt;
		[&amp;quot;Baltimore&amp;quot;] = {&lt;br /&gt;
			namesuffix = &amp;quot; City&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	PR = {&lt;br /&gt;
		default = {&lt;br /&gt;
			linksuffix = &amp;quot;, Puerto Rico&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local sub1Config = {&lt;br /&gt;
	LA = &amp;quot;parish&amp;quot;,&lt;br /&gt;
	PR = &amp;quot;municipality&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local sub1name = {&lt;br /&gt;
	LA = &amp;quot;Parish&amp;quot;,&lt;br /&gt;
	PR = &amp;quot;&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local sub1span = {&lt;br /&gt;
	LA = {&amp;quot;cspan&amp;quot;, &amp;quot;pspan&amp;quot;},&lt;br /&gt;
	PR = {&amp;quot;cspan&amp;quot;, &amp;quot;munspan&amp;quot;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local sub2params = {&lt;br /&gt;
	NY = {&amp;quot;town&amp;quot;},&lt;br /&gt;
	WI = {&amp;quot;town&amp;quot;, &amp;quot;township&amp;quot;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local subConfig = {&lt;br /&gt;
	county = {&lt;br /&gt;
		group = &amp;quot;county&amp;quot;&lt;br /&gt;
	},&lt;br /&gt;
	parish = {&lt;br /&gt;
		group = &amp;quot;parish&amp;quot;&lt;br /&gt;
	},&lt;br /&gt;
	municipality = {&lt;br /&gt;
		group = &amp;quot;municipal&amp;quot;&lt;br /&gt;
	},&lt;br /&gt;
	indep_city = {&lt;br /&gt;
		group = &amp;quot;city&amp;quot;&lt;br /&gt;
	},&lt;br /&gt;
	town = {&lt;br /&gt;
		sub2area = &amp;quot;town&amp;quot;,&lt;br /&gt;
		group = &amp;quot;town&amp;quot;,&lt;br /&gt;
		single = true&lt;br /&gt;
	},&lt;br /&gt;
	township = {&lt;br /&gt;
		sub2area = &amp;quot;township&amp;quot;,&lt;br /&gt;
		group = &amp;quot;township&amp;quot;,&lt;br /&gt;
		single = true,&lt;br /&gt;
		firstnonum = true&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local pspan = {&lt;br /&gt;
	LA = &amp;quot;plspan&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function sub_special(args, subTypeConfig, specialPrefix, subType)&lt;br /&gt;
	-- Find parameter.&lt;br /&gt;
	local subParam&lt;br /&gt;
	for _,p in ipairs(subTypeConfig) do&lt;br /&gt;
		if args[p .. 1] or args[p] then&lt;br /&gt;
			subParam = p&lt;br /&gt;
			break&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if not subParam then&lt;br /&gt;
		return args[specialPrefix .. &amp;quot;_special&amp;quot;]&lt;br /&gt;
	end&lt;br /&gt;
	local config = subConfig[subParam] or {}&lt;br /&gt;
	local subs = {}&lt;br /&gt;
	-- Retrieve wikilinks for subdivisions.&lt;br /&gt;
	local num = 1&lt;br /&gt;
	while num == 1 or args[subParam .. num] do&lt;br /&gt;
		-- Save parameters.&lt;br /&gt;
		local saved = {}&lt;br /&gt;
		saved[subType]= args[subType]&lt;br /&gt;
		args[subType] = args[subParam .. num] or num == 1 and args[subParam]&lt;br /&gt;
		saved.sub1dab = args.sub1dab&lt;br /&gt;
		args.sub1dab = args[&amp;quot;ctdab&amp;quot; .. num] or args.ctdab or num == 1 and config.firstnonum and args.county&lt;br /&gt;
		saved.area = args.area&lt;br /&gt;
		args.area = not (config.nosub1dab and args.sub1dab)&lt;br /&gt;
			and (config.sub2area or args[&amp;quot;area&amp;quot; .. num] or num == 1 and config.firstnonum and args.area)&lt;br /&gt;
		local locns = roadDataModule.locations(args, &amp;quot;jctint&amp;quot;, true)&lt;br /&gt;
		-- Restore parameters.&lt;br /&gt;
		args[subType] = saved[subType]&lt;br /&gt;
		args.sub1dab = saved.sub1dab&lt;br /&gt;
		args.area = saved.area&lt;br /&gt;
		subs[num] = locns[subType]&lt;br /&gt;
		num = num + 1&lt;br /&gt;
	end&lt;br /&gt;
	if #subs &amp;gt; 1 then&lt;br /&gt;
		-- Construct wikitext for multiple subs.&lt;br /&gt;
		local textParts = {}&lt;br /&gt;
		insert(textParts, subs[1])&lt;br /&gt;
		for i = 2, #subs do&lt;br /&gt;
			insert(textParts, &amp;quot;–&amp;quot;)&lt;br /&gt;
			if i % 2 ~= 0 then&lt;br /&gt;
				-- Odd subs after first begin a new line.&lt;br /&gt;
				insert(textParts, &amp;quot;&amp;lt;br&amp;gt;&amp;quot;)&lt;br /&gt;
			end&lt;br /&gt;
			insert(textParts, subs[i])&lt;br /&gt;
		end&lt;br /&gt;
		local groupSuffix = args[specialPrefix .. &amp;quot;_group&amp;quot;] or config.group&lt;br /&gt;
		if groupSuffix then&lt;br /&gt;
			insert(textParts,&lt;br /&gt;
				format(&amp;quot;%s%s&amp;quot;, #subs % 2 == 0 and &amp;quot;&amp;lt;br&amp;gt;&amp;quot; or &amp;quot; &amp;quot;, groupSuffix))&lt;br /&gt;
		end&lt;br /&gt;
		if #subs == 2 then&lt;br /&gt;
			insert(textParts, &amp;quot; line&amp;quot;)&lt;br /&gt;
		elseif #subs == 3 then&lt;br /&gt;
			insert(textParts, &amp;quot; tripoint&amp;quot;)&lt;br /&gt;
		elseif #subs == 4 then&lt;br /&gt;
			insert(textParts, &amp;quot; quadripoint&amp;quot;)&lt;br /&gt;
		else&lt;br /&gt;
			insert(textParts, &amp;quot; [[Quadripoint#Multipoints of greater numerical complexity|multipoint]]&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		return concat(textParts)&lt;br /&gt;
	elseif #subs == 1 and config.single then&lt;br /&gt;
		-- TODO transition&lt;br /&gt;
		-- Save parameters.&lt;br /&gt;
		local saved = {}&lt;br /&gt;
		saved[subType]= args[subType]&lt;br /&gt;
		args[subType] = args[subParam .. 1] or args[subParam]&lt;br /&gt;
		saved.sub1dab = args.sub1dab&lt;br /&gt;
		args.sub1dab = args.ctdab1 or args.ctdab or config.firstnonum and args.county&lt;br /&gt;
		saved.area = args.area&lt;br /&gt;
		args.area = not (config.nosub1dab and args.sub1dab)&lt;br /&gt;
			and (config.sub2area or args.area1 or config.firstnonum and args.area)&lt;br /&gt;
		local locns = roadDataModule.locations(args, &amp;quot;jctint&amp;quot;)&lt;br /&gt;
		-- Restore parameters.&lt;br /&gt;
		args[subType] = saved[subType]&lt;br /&gt;
		args.sub1dab = saved.sub1dab&lt;br /&gt;
		args.area = saved.area&lt;br /&gt;
		return locns[subType]&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
-- end transition code&lt;br /&gt;
&lt;br /&gt;
local function trackedArray(arr)&lt;br /&gt;
	local origArr = arr&lt;br /&gt;
	arr = {}&lt;br /&gt;
	local mt = {&lt;br /&gt;
		__index = function(t, k)&lt;br /&gt;
			local result = origArr[k]&lt;br /&gt;
			origArr[k] = nil&lt;br /&gt;
			t[k] = result&lt;br /&gt;
			return result&lt;br /&gt;
		end&lt;br /&gt;
	}&lt;br /&gt;
	setmetatable(arr, mt)&lt;br /&gt;
	return arr&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._jctint(args)&lt;br /&gt;
	local sub1config = sub1Config[args.state] or &amp;quot;county&amp;quot;&lt;br /&gt;
	-- Tracked parameters&lt;br /&gt;
	local msgs = {}&lt;br /&gt;
	if (args.township or args.township1) and args[sub1config] and not (args.ctdab or args.ctdab1) then&lt;br /&gt;
		insert(msgs, format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot;, &amp;quot;D&amp;quot;))&lt;br /&gt;
	elseif not (args.location3 or args.township3 or args.town3) and args.ctdab and (args.ctdab1 or args.ctdab2) then&lt;br /&gt;
		insert(msgs, format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot;, &amp;quot;D&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	if args.township2 and args.township then&lt;br /&gt;
		insert(msgs, format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot;, &amp;quot;T&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	if args.type == &amp;quot;mplex&amp;quot; then&lt;br /&gt;
		insert(msgs, format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot;, &amp;quot;M&amp;quot;))&lt;br /&gt;
	end&lt;br /&gt;
	local blanks = {&amp;quot;location&amp;quot;, &amp;quot;altunit&amp;quot;, &amp;quot;exit&amp;quot;, &amp;quot;road&amp;quot;, &amp;quot;notes&amp;quot;}&lt;br /&gt;
	for _,param in ipairs(blanks) do&lt;br /&gt;
		if args[param] == &amp;quot;&amp;amp;nbsp;&amp;quot; then&lt;br /&gt;
			insert(msgs, format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot;, &amp;quot;B&amp;quot;))&lt;br /&gt;
			break&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local spans = {&amp;quot;cspan&amp;quot;, &amp;quot;lspan&amp;quot;, &amp;quot;mspan&amp;quot;, &amp;quot;auspan&amp;quot;, &amp;quot;ospan&amp;quot;, &amp;quot;espan&amp;quot;, &amp;quot;namespan&amp;quot;, &amp;quot;rspan&amp;quot;, &amp;quot;nspan&amp;quot;, &amp;quot;pspan&amp;quot;, &amp;quot;xcspan&amp;quot;, &amp;quot;munspan&amp;quot;, &amp;quot;uspan&amp;quot;, &amp;quot;kmspan&amp;quot;}&lt;br /&gt;
	for _,param in ipairs(spans) do&lt;br /&gt;
		if args[param] == &amp;quot;1&amp;quot; then&lt;br /&gt;
			insert(msgs, format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot;, &amp;quot;S&amp;quot;))&lt;br /&gt;
			break&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local trackedParams = {&lt;br /&gt;
		R = &amp;quot;length_ref&amp;quot;,&lt;br /&gt;
		X = &amp;quot;indep_city_special&amp;quot;,&lt;br /&gt;
		Y = sub1config .. &amp;quot;_special&amp;quot;,&lt;br /&gt;
		Z = &amp;quot;location_special&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	for key,param in pairs(trackedParams) do&lt;br /&gt;
		if args[param] then&lt;br /&gt;
			insert(msgs, format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot;, key))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Track used arguments&lt;br /&gt;
	local origArgs = args&lt;br /&gt;
	args = trackedArray(args)&lt;br /&gt;
&lt;br /&gt;
	local lengthUnit = args.unitdef or &amp;quot;mile&amp;quot;&lt;br /&gt;
	-- Extra parameters&lt;br /&gt;
	local moduleArgs = {}&lt;br /&gt;
	-- Parameters to be renamed&lt;br /&gt;
	local paramSubst = {&lt;br /&gt;
		region_special = &amp;quot;state_special&amp;quot;,&lt;br /&gt;
		regionspan = &amp;quot;sspan&amp;quot;,&lt;br /&gt;
		sub1 = sub1config,&lt;br /&gt;
		sub1_note = sub1config .. &amp;quot;_note&amp;quot;,&lt;br /&gt;
		sub1span = sub1span[args.state] or &amp;quot;cspan&amp;quot;,&lt;br /&gt;
		sub1dab = &amp;quot;ctdab&amp;quot;,&lt;br /&gt;
		sub2 = &amp;quot;location&amp;quot;,&lt;br /&gt;
		sub2span = &amp;quot;lspan&amp;quot;,&lt;br /&gt;
		unit = lengthUnit,&lt;br /&gt;
		unit2 = lengthUnit .. &amp;quot;2&amp;quot;,&lt;br /&gt;
		unit_ref = {lengthUnit .. &amp;quot;_ref&amp;quot;, &amp;quot;length_ref&amp;quot; --[[TODO transition]]},&lt;br /&gt;
		unit2_ref = {lengthUnit .. &amp;quot;2_ref&amp;quot;, &amp;quot;length2_ref&amp;quot; --[[TODO transition]]},&lt;br /&gt;
		uspan = {&amp;quot;mspan&amp;quot;, &amp;quot;kmspan&amp;quot;},&lt;br /&gt;
		place = {&amp;quot;place&amp;quot;, &amp;quot;bridge&amp;quot;, &amp;quot;tunnel&amp;quot;},&lt;br /&gt;
		pspan = pspan[args.state] or &amp;quot;pspan&amp;quot;&lt;br /&gt;
	}&lt;br /&gt;
	-- Redirect undefined arguments to passed arguments&lt;br /&gt;
	local mt = {&lt;br /&gt;
		__index = function(t, k)&lt;br /&gt;
			if paramSubst[k] then&lt;br /&gt;
				-- Renamed parameter&lt;br /&gt;
				local src = paramSubst[k]&lt;br /&gt;
				if type(src) == &amp;quot;table&amp;quot; then&lt;br /&gt;
					for _,param in ipairs(src) do&lt;br /&gt;
						if args[param] then return args[param] end&lt;br /&gt;
					end&lt;br /&gt;
				else&lt;br /&gt;
					if args[src] then return args[src] end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			return args[k]&lt;br /&gt;
		end&lt;br /&gt;
	}&lt;br /&gt;
	setmetatable(moduleArgs, mt)&lt;br /&gt;
&lt;br /&gt;
	moduleArgs.country = &amp;quot;USA&amp;quot;&lt;br /&gt;
	-- TODO transition&lt;br /&gt;
	-- begin transition code&lt;br /&gt;
	moduleArgs.primary_topic = &amp;quot;no&amp;quot;&lt;br /&gt;
	moduleArgs.sub1name = sub1name[args.state] or &amp;quot;County&amp;quot;&lt;br /&gt;
	moduleArgs.region_special = region_special[args.state]&lt;br /&gt;
	moduleArgs.region = mw.loadData(&amp;quot;Module:Jct/statename&amp;quot;)[args.state]&lt;br /&gt;
	-- Independent city&lt;br /&gt;
	local indepCityText = sub_special(moduleArgs, {&amp;quot;indep_city&amp;quot;}, &amp;quot;indep_city&amp;quot;, &amp;quot;sub2&amp;quot;)&lt;br /&gt;
	if not indepCityText and args.indep_city then&lt;br /&gt;
		local indepCity = args.indep_city&lt;br /&gt;
		local spec = indep_city[args.state] and&lt;br /&gt;
			(indep_city[args.state][indepCity] or indep_city[args.state].default)&lt;br /&gt;
		if spec then&lt;br /&gt;
			local link = format(&amp;quot;%s%s%s&amp;quot;,&lt;br /&gt;
				spec.linkprefix or &amp;quot;&amp;quot;, indepCity, spec.linksuffix or &amp;quot;&amp;quot;)&lt;br /&gt;
			local name = format(&amp;quot;%s%s%s&amp;quot;,&lt;br /&gt;
				spec.nameprefix or &amp;quot;&amp;quot;, indepCity, spec.namesuffix or &amp;quot;&amp;quot;)&lt;br /&gt;
			indepCityText = format(&amp;quot;%s[[%s|%s]]&amp;quot;,&lt;br /&gt;
				spec.prefix or &amp;quot;&amp;quot;, link, name)&lt;br /&gt;
		else&lt;br /&gt;
			-- Specialize independent city to the region.&lt;br /&gt;
			local cityLink = format(&amp;#039;[[%s, %s|%s]]&amp;#039;, indepCity, moduleArgs.region, indepCity)&lt;br /&gt;
			indepCityText = &amp;quot;[[Independent city (United States)|City]] of &amp;quot; .. cityLink&lt;br /&gt;
		end&lt;br /&gt;
		args.indep_city = nil&lt;br /&gt;
	end&lt;br /&gt;
	moduleArgs.indep_city_special = indepCityText&lt;br /&gt;
	moduleArgs.sub1_special = sub_special(moduleArgs, {sub1config}, sub1config, &amp;quot;sub1&amp;quot;)&lt;br /&gt;
	local sub2Config = {}&lt;br /&gt;
	if args.sub2param then&lt;br /&gt;
		insert(sub2Config, args.sub2param)&lt;br /&gt;
	end&lt;br /&gt;
	if sub2params[args.state] then&lt;br /&gt;
		for _,param in ipairs(sub2params[args.state]) do&lt;br /&gt;
			insert(sub2Config, param)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	insert(sub2Config, &amp;quot;location&amp;quot;)&lt;br /&gt;
	moduleArgs.sub2_special = sub_special(moduleArgs, sub2Config, &amp;quot;location&amp;quot;, &amp;quot;sub2&amp;quot;)&lt;br /&gt;
	-- end transition code&lt;br /&gt;
	moduleArgs.unitdef = args.unitdef or &amp;quot;mi&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	-- Crossing&lt;br /&gt;
	if args.xing then&lt;br /&gt;
		local colType&lt;br /&gt;
		local colAlignType&lt;br /&gt;
		if args.xcspan == &amp;quot;3&amp;quot; then&lt;br /&gt;
			colType = &amp;quot;unitary&amp;quot;&lt;br /&gt;
			colAlignType = &amp;quot;unitary_align&amp;quot;&lt;br /&gt;
		elseif args.xcspan == &amp;quot;2&amp;quot; then&lt;br /&gt;
			colType = &amp;quot;indep_city_special&amp;quot;&lt;br /&gt;
			colAlignType = &amp;quot;indep_city_align&amp;quot;&lt;br /&gt;
		else&lt;br /&gt;
			colType = &amp;quot;sub2_special&amp;quot;&lt;br /&gt;
			colAlignType = &amp;quot;sub2_align&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
		moduleArgs[colType] = args.xing&lt;br /&gt;
		moduleArgs[colAlignType] = &amp;quot;center&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local coreModule = require(&amp;quot;Module:Jctint/core&amp;quot;)&lt;br /&gt;
	local coreResult = coreModule._jctint(moduleArgs)&lt;br /&gt;
&lt;br /&gt;
	-- Report unused arguments&lt;br /&gt;
	local unusedArgs = {}&lt;br /&gt;
	for key,_ in pairs(origArgs) do&lt;br /&gt;
		insert(unusedArgs, key)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local msg&lt;br /&gt;
	if #msgs &amp;gt; 0 then&lt;br /&gt;
		local page = mw.title.getCurrentTitle().prefixedText -- Get transcluding page&amp;#039;s title&lt;br /&gt;
		msg = mw.ustring.gsub(concat(msgs), &amp;quot;%%page%%&amp;quot;, page)&lt;br /&gt;
	end&lt;br /&gt;
	return coreResult .. (msg or &amp;quot;&amp;quot;), unusedArgs&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.jctint(frame)&lt;br /&gt;
	-- Import module function to work with passed arguments&lt;br /&gt;
	local getArgs = require(&amp;#039;Module:Arguments&amp;#039;).getArgs&lt;br /&gt;
	local args = getArgs(frame)&lt;br /&gt;
&lt;br /&gt;
	-- Remove parameters already used in the template definition&lt;br /&gt;
	if args.used_params then&lt;br /&gt;
		for param in mw.text.gsplit(args.used_params, &amp;quot;,&amp;quot;) do&lt;br /&gt;
			args[param] = nil&lt;br /&gt;
		end&lt;br /&gt;
		args.used_params = nil&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local result, unusedArgs = p._jctint(args)&lt;br /&gt;
&lt;br /&gt;
	-- Check for overridden arguments&lt;br /&gt;
	local frameArgs = getArgs(frame, {frameOnly = true})&lt;br /&gt;
	local parentArgs = getArgs(frame, {parentOnly = true})&lt;br /&gt;
	for key,_ in pairs(frameArgs) do&lt;br /&gt;
		if parentArgs[key] then insert(unusedArgs, key) end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Report unused arguments&lt;br /&gt;
	local msg&lt;br /&gt;
	if #unusedArgs &amp;gt; 0 then&lt;br /&gt;
		msg = format(&amp;quot;[[Category:Jctint template tracking category|%s %%page%%]]&amp;quot; ..&lt;br /&gt;
				&amp;#039;&amp;lt;tr style=&amp;quot;display: none;&amp;quot;&amp;gt;&amp;lt;td&amp;gt;Module:Jctint/USA warning: Unused argument(s): %s&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;#039;,&lt;br /&gt;
				&amp;quot;U&amp;quot;, concat(unusedArgs, &amp;quot;, &amp;quot;))&lt;br /&gt;
		local page = mw.title.getCurrentTitle().prefixedText -- Get transcluding page&amp;#039;s title&lt;br /&gt;
		msg = mw.ustring.gsub(msg, &amp;quot;%%page%%&amp;quot;, page)&lt;br /&gt;
	end&lt;br /&gt;
	return result .. (msg or &amp;quot;&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Tachyony</name></author>
	</entry>
</feed>