Module:ATC code to template name

-- this module provides a lookup from ATC codes to their associated navbox templates --
local data = mw.loadData("Module:ATC code to template name/data")
p = {}

function p.translate(frame)
	local name = frame.args[1]
	for _, v in pairs(data) do
		if v.code == name then
			if v.template then
				return frame:expandTemplate{ title = v.template }
			else
				error("ATC code not specific enough - please use one further character (example: instead of M01, use M01A)")
				return
			end
		end
	end
    error("Invalid ATC code (or the ATC code does not have a template matched to it)")
	return
end

return p