มอดูล:Road data/strings/USA

--**
To inspect the content of this data module, use Special:ExpandTemplates
and enter the following input text:
module=Module:
To inspect the content of this data module when editing, enter the following
into the Debug console:
local util = require("Module:Road data/util")
print(util.arrayToString(p))
To inspect a particular route type, change `p` above to include the route type,
e.g., `p.I` and `p"US-Hist"`.

**
-- United States
local USA = {}
local util = require("Module:Road data/util")
local format = mw.ustring.format
-- REGION-SPECIFIC SETTINGS --
USA" common " = {
	country = "United States",
	locations = {
		indep_city = {
			linksuffix = ", %region%",
			prefix = "City of ",
			jcttoparticle = "the "
		},
		sub1 = {
			linksuffix = " County, %region%",
			jcttopnamesuffix = " County"
		},
		sub2 = {
			linksuffix = ", %region%"
		},
		sub2areas = {
			city = {
				linksuffix = " (city)",
				jcttoparticle = "the ",
				nameprefix = "City of "
			},
			town = {
				linksuffix = " (town)",
				jcttoparticle = "the ",
				nameprefix = "Town of "
			},
			township = {
				linksuffix = " Township",
				namesuffix = " Township",
			},
			village = {
				linksuffix = " (village)",
				jcttoparticle = "the ",
				nameprefix = "Village of "
			}
		}
	}
}
-- ROUTE TYPES --
-- disambiguation switch
USA" dab " = ""
-- definitions for auxiliary routes
USA" aux " = {
	Alt = {
		name = "Alternate",
		abbrsuffix = "Alt.",
		arksuffix = "A",
		banneralt = "Alt",
	},
	Aux = {
		name = "Auxiliary",
		aux = "Auxiliary route"
	},
	Bus = {
		name = "Business",
		abbrsuffix = "Bus.",
		arksuffix = "B"
	},
	Byp = {
		name = "Bypass",
		abbrsuffix = "Byp.",
		bannerprefix = "By-pass",
		aux = "Bypass"
	},
	City = {
		name = "City",
		arksuffix = "C"
	},
	Conn = {
		name = "Connector",
		abbrsuffix = "Conn.",
		arksuffix = "Y"
	},
	Detour = {
		name = "Detour",
		aux = "Detour"
	},
	Emerg = {
		name = "Emergency",
		abbrsuffix = "Emerg."
	},
	Express = {
		name = "Express",
		aux = "Express route"
	},
	Future = {
		name = "Future",
		aux = "Future routing"
	},
	Local = {
		name = "Local",
		aux = "Local route"
	},
	Loop = {name = "Loop"},
	Opt = {
		name = "Optional",
		abbrsuffix = "Opt."
	},
	Scenic = {name = "Scenic"},
	Spur = {
		name = "Spur",
		arksuffix = "S"
	},
	Temp = {
		name = "Temporary",
		abbrsuffix = "Temp."
	},
	Toll = {name = "Toll"},
Truck = {
name = "Truck",
arksuffix = "T"
},
}
-- fill out default values
for _,entry in pairs(USA" aux ") do
	entry.abbrsuffix = entry.abbrsuffix or entry.name
	entry.bannerprefix =  entry.bannerprefix or entry.name
	entry.banneralt =  entry.banneralt or entry.bannerprefix
	entry.aux = entry.aux or format("%s route", entry.name)
end
USA.I = {
	base = "อินเตอร์สเตต %route%",
	shield = "I-%route%.svg",
	shieldmain= {
		arg = "state",
		"AK" = "I-A%route%.svg",
		"AL" = "I-%route% (AL).svg",
		"AR" = "I-%route% (AR).svg",
		"AZ" = "I-%route% (AZ).svg",
		"CA" = "I-%route% (CA).svg",
		"HI" = "I-H%route%.svg",
		"IA" = "I-%route% (IA).svg",
		"KS" = "I-%route% (KS).svg",
		"MT" = "I-%route% (big).svg",
		"NJ" = "I-%route% (NJ).svg",
		"NM" = "I-%route% (NM).svg",
		"NV" = "I-%route% (NV).svg",
		"NY" = "I-%route% (long).svg",
		"OK" = "I-%route% (OK).svg",
		"PR" = "I-PR%route%.svg",
		"SC" = "I-%route% (SC).svg",
		"TX" = "I-%route% (TX).svg",
		"UT" = "I-%route% (UT).svg",
		"WV" = "I-%route% (WV).svg",
		"WY" = "I-%route% (WY).svg",
		default = "I-%route%.svg"
	},
	name = "อินเตอร์สเตต %route%",
	link = "อินเตอร์สเตต %route%" .. USA" dab ",
	abbr = "I-%route%",
	width = "expand",
	bannersuffix = "blue",
	nbrowse = "ระบบทางหลวงอินเตอร์สเตต ",
	nbrowselinks = {
		1 = "Main",
		2 = "Auxiliary",
		3 = "Suffixed",
		4 = "Business",
		5 = "Future"
	},
	aux = {
		hook = "splitlen",
		split = 3,
		above = USA" aux ".Aux,
		below = ""
	}
}
for _,auxType in ipairs({"Alt", "Express", "Future", "Local", "Spur", "Temp", "Toll", "Truck"}) do
	local spec = USA" aux "auxType
	USA"I-" .. auxType = {
		shield = USA.I.shield,
		shieldmain = USA.I.shieldmain,
		name = USA.I.name .. " " .. spec.name,
		link = USA.I.base .. " " .. spec.name .. USA" dab ",
		abbr = USA.I.abbr .. " " .. spec.abbrsuffix,
		banner = spec.name .. " plate blue.svg",
		bannersuffix = USA.I.bannersuffix,
		aux = spec.aux,
		width = "expand"
	}
end
USA"I-Future".shield = "I-%route% (Future).svg"
USA"I-Future".shieldmain = "I-%route% (Future).svg"
USA"I-Future".name = "Future " .. USA.I.name
USA"I-Temp".name = "Temporary " .. USA.I.name
USA"I-Future".abbr = "Future " .. USA.I.abbr
USA"I-Temp".abbr = "Temp. " .. USA.I.name
USA"I-Express".banner = "Express plate yellow.svg"
USA"I-Future".banner = ""
USA"I-Local".banner = "Local plate yellow.svg"
USA"I-Toll".banner = "Toll plate yellow.svg"
USA.Future = USA"I-Future"
USA"I-Temporary" = USA"I-Temp"
for _,year in ipairs({"1957", "1961"}) do
	USA"I " .. year = {
		shield = {
			arg = "state",
			default = format("I-%%route%% (%s).svg", year),
			"AK" = format("I-A%%route%% (%s).svg", year),
			"HI" = format("I-H%%route%% (%s).svg", year)
		},
		shieldmain = {
			arg = "state",
			default = format("I-%%route%% (%s).svg", year),
			"AL" = format("I-%%route%% (AL %s).svg", year),
			"AK" = format("I-A%%route%% (AK %s).svg", year),
			"AZ" = format("I-%%route%% (AZ %s).svg", year),
			"AR" = format("I-%%route%% (AR %s).svg", year),
			"CA" = format("I-%%route%% (CA %s).svg", year),
			"CO" = format("I-%%route%% (CO %s).svg", year),
			"CT" = format("I-%%route%% (CT %s).svg", year),
			"DE" = format("I-%%route%% (DE %s).svg", year),
			"DC" = format("I-%%route%% (DC %s).svg", year),
			"FL" = format("I-%%route%% (FL %s).svg", year),
			"GA" = format("I-%%route%% (GA %s).svg", year),
			"HI" = format("I-H%%route%% (HI %s).svg", year),
			"ID" = format("I-%%route%% (ID %s).svg", year),
			"IL" = format("I-%%route%% (IL %s).svg", year),
			"IN" = format("I-%%route%% (IN %s).svg", year),
			"IA" = format("I-%%route%% (IA %s).svg", year),
			"KS" = format("I-%%route%% (KS %s).svg", year),
			"KY" = format("I-%%route%% (KY %s).svg", year),
			"LA" = format("I-%%route%% (LA %s).svg", year),
			"ME" = format("I-%%route%% (ME %s).svg", year),
			"MD" = format("I-%%route%% (MD %s).svg", year),
			"MA" = format("I-%%route%% (MA %s).svg", year),
			"MI" = format("I-%%route%% (MI %s).svg", year),
			"MN" = format("I-%%route%% (MN %s).svg", year),
			"MS" = format("I-%%route%% (MS %s).svg", year),
			"MO" = format("I-%%route%% (MO %s).svg", year),
			"MT" = format("I-%%route%% (MT %s).svg", year),
			"NE" = format("I-%%route%% (NE %s).svg", year),
			"NV" = format("I-%%route%% (NV %s).svg", year),
			"NH" = format("I-%%route%% (NH %s).svg", year),
			"NJ" = format("I-%%route%% (NJ %s).svg", year),
			"NM" = format("I-%%route%% (NM %s).svg", year),
			"NY" = format("I-%%route%% (NY %s).svg", year),
			"NC" = format("I-%%route%% (NC %s).svg", year),
			"ND" = format("I-%%route%% (ND %s).svg", year),
			"OH" = format("I-%%route%% (OH %s).svg", year),
			"OK" = format("I-%%route%% (OK %s).svg", year),
			"OR" = format("I-%%route%% (OR %s).svg", year),
			"PA" = format("I-%%route%% (PA %s).svg", year),
			"RI" = format("I-%%route%% (RI %s).svg", year),
			"SC" = format("I-%%route%% (SC %s).svg", year),
			"SD" = format("I-%%route%% (SD %s).svg", year),
			"TN" = format("I-%%route%% (TN %s).svg", year),
			"TX" = format("I-%%route%% (TX %s).svg", year),
			"UT" = format("I-%%route%% (UT %s).svg", year),
			"VT" = format("I-%%route%% (VT %s).svg", year),
			"VA" = format("I-%%route%% (VA %s).svg", year),
			"WA" = format("I-%%route%% (WA %s).svg", year),
			"WV" = format("I-%%route%% (WV %s).svg", year),
			"WI" = format("I-%%route%% (WI %s).svg", year),
			"WY" = format("I-%%route%% (WY %s).svg", year),
			},
		base = USA.I.base,
		name = USA.I.name,
		link = USA.I.link,
		abbr = USA.I.abbr,
	}
end
USA.BL = {
	shield = "Business Loop %route%.svg",
	name = USA.I.name .. " Business",
	link = USA.I.base .. " Business" .. USA" dab ",
	abbr = USA.I.abbr .. " BL",
	aux = "Business route",
	width = "expand"
}
USA.BS = {
	shield = "Business Spur %route%.svg",
	name = USA.BL.name,
	link = USA.BL.link,
	abbr = USA.I.abbr .. " BS",
	aux = USA.BL.aux,
	width = "expand"
}
USA"BL 1957" = {
	shield = "Business Loop %route% (1957).svg",
	name = USA.BL.name,
	link = USA.BL.link,
	abbr = USA.BL.abbr,
	aux = USA.BL.aux,
}
USA"BS 1957" = {
	shield = "Business Spur %route% (1957).svg",
	name = USA.BS.name,
	link = USA.BS.link,
	abbr = USA.BS.abbr,
	aux = USA.BS.aux,
}
USA.BLBS = {
	shield = {USA.BL.shield, USA.BS.shield},
	name = USA.I.name .. " Business",
	link = USA.I.base .. " Business" .. USA" dab ",
	abbr = USA.I.abbr .. " Bus.",
	aux = "Business route",
	width = "expand"
}
for k, v in pairs(USA) do if k:find ("^%a") then 
	v.nbrowse = USA.I.nbrowse
	v.nbrowselinks = USA.I.nbrowselinks
	end
end
USA.US = {
	base = "ทางหลวงสหรัฐหมายเลข %route%",
	shield = {
		arg = "state",
		"CA" = "US %route% (1961 cutout).svg",
		default = "US %route%.svg"
	},
	shieldmain = {
		arg = "state",
		"CA" = "US %route% (1961 cutout).svg",
		default = {
			"85" = {"US %route%.svg", "CanAm Highway.svg"},
			default = "US %route%.svg"
		}
	},
	name = "ทางหลวงสหรัฐหมายเลข %route%",
	link = "ทางหลวงสหรัฐหมายเลข %route%" .. USA" dab ",
	abbr = "US %route%",
	width = "expand",
	nbrowse = "ระบบทางหลวงสหรัฐ",
	nbrowselinks = {
		1 = "Main",
		2 = "Special",
		3 = "Divided"
	}
}
for _,auxType in ipairs({"Alt", "Bus", "Byp", "City", "Conn", "Detour", "Emerg", "Future", "Opt", "Scenic", "Spur", "Temp", "Toll", "Truck"}) do
	local spec = USA" aux "auxType
	USA"US-" .. auxType = {
		shield = USA.US.shield,
		name = USA.US.name .. " " .. spec.name,
		link = USA.US.base .. " " .. spec.name .. USA" dab ",
		abbr = USA.US.abbr .. " " .. spec.abbrsuffix,
		banner = spec.bannerprefix .. " plate.svg",
		aux = spec.aux,
		width = "expand"
	}
end
USA"US-Toll".banner = "Toll plate yellow.svg"
USA"US-City".name = "City " .. USA.US.name
USA"US-City".abbr = "City " .. USA.US.name
USA"US-Temp".name = "Temporary " .. USA.US.name
USA"US-Temp".abbr = "Temp. " .. USA.I.name
USA"US-Hist" = {
	shield = "US %route% (historic).svg",
	name = "Historic " .. USA.US.name,
	link = USA.US.base .. USA" dab ",
	abbr = "Historic " .. USA.US.abbr .. USA" dab ",
	orientation = "upright",
	color = "hist"
}
for _,year in ipairs({"1926", "1948"}) do
	USA"US " .. year = {
		shield = format("US %%route%% (%s).svg", year),
		shieldmain = {
			ifexist = true,
			arg = "state",
			otherwise = format("US %%route%% (%s)", year),
			"AL" = format("US %%route%% Alabama %s.svg", year),
			"AZ" = format("US %%route%% Arizona %s.svg", year),
			"AR" = format("US %%route%% Arkansas %s.svg", year),
			"CA" = format("US %%route%% California %s.svg", year),
			"CO" = format("US %%route%% Colorado %s.svg", year),
			"CT" = format("US %%route%% Connecticut %s.svg", year),
			"DE" = format("US %%route%% Delaware %s.svg", year),
			"DC" = format("US %%route%% District of Columbia %s.svg", year),
			"FL" = format("US %%route%% Florida %s.svg", year),
			"GA" = format("US %%route%% Georgia %s.svg", year),
			"ID" = format("US %%route%% Idaho %s.svg", year),
			"IL" = format("US %%route%% Illinois %s.svg", year),
			"IN" = format("US %%route%% Indiana %s.svg", year),
			"IA" = format("US %%route%% Iowa %s.svg", year),
			"KS" = format("US %%route%% Kansas %s.svg", year),
			"KY" = format("US %%route%% Kentucky %s.svg", year),
			"LA" = format("US %%route%% Louisiana %s.svg", year),
			"ME" = format("US %%route%% Maine %s.svg", year),
			"MD" = format("US %%route%% Maryland %s.svg", year),
			"MA" = format("US %%route%% Massachusetts %s.svg", year),
			"MI" = format("US %%route%% Michigan %s.svg", year),
			"MN" = format("US %%route%% Minnesota %s.svg", year),
			"MS" = format("US %%route%% Mississippi %s.svg", year),
			"MO" = format("US %%route%% Missouri %s.svg", year),
			"MT" = format("US %%route%% Montana %s.svg", year),
			"NE" = format("US %%route%% Nebraska %s.svg", year),
			"NV" = format("US %%route%% Nevada %s.svg", year),
			"NH" = format("US %%route%% New Hampshire %s.svg", year),
			"NJ" = format("US %%route%% New Jersey %s.svg", year),
			"NM" = format("US %%route%% New Mexico %s.svg", year),
			"NY" = format("US %%route%% New York %s.svg", year),
			"NC" = format("US %%route%% North Carolina %s.svg", year),
			"ND" = format("US %%route%% North Dakota %s.svg", year),
			"OH" = format("US %%route%% Ohio %s.svg", year),
			"OK" = format("US %%route%% Oklahoma %s.svg", year),
			"OR" = format("US %%route%% Oregon %s.svg", year),
			"PA" = format("US %%route%% Pennsylvania %s.svg", year),
			"RI" = format("US %%route%% Rhode Island %s.svg", year),
			"SC" = format("US %%route%% South Carolina %s.svg", year),
			"SD" = format("US %%route%% South Dakota %s.svg", year),
			"TN" = format("US %%route%% Tennessee %s.svg", year),
			"TX" = format("US %%route%% Texas %s.svg", year),
			"UT" = format("US %%route%% Utah %s.svg", year),
			"VT" = format("US %%route%% Vermont %s.svg", year),
			"VA" = format("US %%route%% Virginia %s.svg", year),
			"WA" = format("US %%route%% Washington %s.svg", year),
			"WV" = format("US %%route%% West Virginia %s.svg", year),
			"WI" = format("US %%route%% Wisconsin %s.svg", year),
			"WY" = format("US %%route%% Wyoming %s.svg", year)
		},
		base = USA.US.base,
		name = USA.US.name,
		link = USA.US.link,
		abbr = USA.US.abbr,
		width = "square"
	}
end
USA"US 1961" = {
	shield = "US %route% (1961).svg",
	base = USA.US.base,
	name = USA.US.name,
	link = USA.US.link,
	abbr = USA.US.abbr,
	width = "square"
}
for k, v in pairs(USA) do if k:find ("^US") then 
	v.nbrowse = USA.US.nbrowse
	v.nbrowselinks = USA.US.nbrowselinks
	end
end
USA.FFH = {
	shield = "Forest Route %route%.svg",
	name = "Federal Forest Highway %route%",
	link = "Forest Highway %route%",
	abbr = "FFH %route%",
	color = "hist",
	bannersuffix = "brown",
	nbrowse = "Forest Highway System"
}

USA.FH = {
	shield = "Forest Route %route%.svg",
	name = "Forest Highway %route%",
	link = "Forest Highway %route%",
	abbr = "FH %route%",
	color = "hist",
	bannersuffix = "brown",
	nbrowse = "Forest Highway System"
}
USA.FR = {
	shield = "Forest Route %route%.svg",
	name = "Forest Route %route%",
	link = "Forest Highway %route%",
	abbr = "FR %route%",
	color = "hist",
	bannersuffix = "brown",
	nbrowse = "Forest Highway System"
}
USA.NSB = {
	shield = "MUTCD D6-4.svg",
	name = "%route%",
	link = "%route%",
	abbr = "%route%",
	color = "hist",
	nbrowse = "Scenic Byways",
	nbrowselinks = {
		1 = "National",
		2 = "National Forest",
		3 = "BLM",
		4 = "NPS",
	}
}
USA.NFSB = USA.NSB
USA.FSB = USA.NSB
USA.ADHS = {
	shield = "",
	name = "%route%",
	link = "%route%",
	abbr = "%route%",
	nbrowse = "Appalachian Development Highway System"
}
USA.ISTEA = {
	shield = "",
	name = "%route%",
	link = "%route%",
	abbr = "%route%",
	nbrowse = "High-Priority Corridors"
}
USA.NHS = {
	shield = "",
	name = "%route%",
	link = "%route%",
	abbr = "%route%",
	nbrowse = "National Highway System",
	nbrowselinks = {
		1 = "Interstates",
		2 = "STRAHNET"
	}
}
USA.Post = {
	shield = "",
	name = "%route%",
	link = "%route%",
	abbr = "%route%",
	color = "hist",
	nbrowse = "Post Roads in the United States"
}
USA.Postal = USA.Post
USA.CR = {
	shield = "CR %route% jct.svg",
	shieldmain = "County %route%.svg",
	base = "County Road %route%",
	name = "County Road %route%",
	link = "",
	abbr = "CR %route%"
}
USA.road = {
	shield = ,
	shieldmain = ,
	name = "%route%",
	link = ,
	abbr = "%route%",
}
			  
-- https://mutcd.fhwa.dot.gov/resources/interim_approval/ialistreq.htm#ia15
USA.USBR = {
	shield = {
		arg = "state",
		"AZ" = "US Bike %route% (M1-9 IA-15).svg",
		"CA" = "US Bike %route% (M1-9 IA-15).svg",
		"GA" = "US Bike %route% (M1-9 IA-15).svg",
		"ID" = "US Bike %route% (M1-9 IA-15).svg",
		"IL" = "US Bike %route% (M1-9 IA-15).svg",
		"IN" = "US Bike %route% (M1-9 IA-15).svg",
		"KY" = "US Bike %route% (M1-9 IA-15).svg",
		"MD" = "US Bike %route% (M1-9 IA-15).svg",
		"MI" = "US Bike %route% (M1-9 IA-15).svg",
		"MO" = "US Bike %route% (M1-9 IA-15).svg",
		"OH" = "US Bike %route% (M1-9 IA-15).svg",
		"TN" = "US Bike %route% (M1-9 IA-15).svg",
		"UT" = "US Bike %route% (M1-9 IA-15).svg",
		"VA" = "US Bike %route% (M1-9 IA-15).svg",
		"WV" = "US Bike %route% (M1-9 IA-15).svg",
		default = "US Bike %route% (M1-9).svg"
	},
	name = "U.S. Bicycle Route %route%",
	link = "U.S. Bicycle Route %route%" .. USA" dab ",
	abbr = "USBR %route%",
	orientation = "upright",
	nbrowse = "United States Bicycle Route System",
	nbrowselinks = "List"
}
util.addAll(USA, require("Module:Road data/strings/USA/regional/GRR"))
util.addAll(USA, require("Module:Road data/strings/USA/regional/NER"))
util.addAll(USA, require("Module:Road data/strings/USA/regional/Tour"))
util.addAll(USA, require("Module:Road data/strings/USA/regional/Trails"))
return USA