local p = {}  local function countries(args, country)     local data = {AFRICA = "no", ARAB = "no", ASIA = "no", EUR = "no", default = "yes"}     local yesOrNo = data[country] or data.default     if yesOrNo == "no" then         return args.countries     else         return nil     end end  local function regions(args, country) 	local data = {EUR = "no", AUS = "no", AUT = "no", BIH = "no", CAN = "no", CYP = "no", CZE = "no", ESP = "no", GRC = "no", HRV = "no", 	              HUN = "no", ITA = "no", POL = "no", SGP = "no", SRB = "no", SVK = "no", SVN = "no", TUR = "no", UKR = "no", default = "yes"} 	if args.communities then 		return "Autonomouscommunities", args.communities 	end 	local yesOrNo = data[country] or data.default 	if yesOrNo == "no" then 		return "Regions", args.regions 	else 		return "Regions", nil 	end end  local function states(args, country)     local data = {AUS = "no", AUT = "no", BRA = "no", DEU = "no", IND = "no", MEX = "no", MYS = "no", USA = "no", default = "yes"}     local yesOrNo = data[country] or data.default     if yesOrNo == "no" then         return args.states     else         return nil     end end  local function provinces(args, country)     local data = {CAN = "no", CRI = "no", ESP = "no", IRN = "no", NLD = "no", PHL = "no", SAU = "no", THA = "no", TUR = "no", default = "yes"}     local yesOrNo = data[country] or data.default     if yesOrNo == "no" then         return args.provinces     else         return nil     end end  local function counties(args, country)     local counties = args.counties     local districts = args.districts     local municipalities = args.municipalities     local parishes = args.parishes     local boroughs = args.boroughs     if counties then         return "কাউন্টিসমূহ", counties     elseif districts then         return "জেলাসমূহ", districts     elseif municipalities then         return "পৌরসভাসমূহ", municipalities     elseif parishes then         return "প্যারিশ", parishes     elseif boroughs then         return "Boroughs", boroughs     else         return , nil     end end  local function ruralMunis(args, country)     local label     local province = country or      if province == "AB" then         label = "Specializedand ruralmunicipalities"     elseif province == "ON" then     	label = "Municipalities"     else         label = "Ruralmunicipalities"     end     local data = {AB = "no", BC = "no", MB = "no", NB = "no", NL = "no", ON = "no", PE = "no", QC = "no", SK = "no", default = "yes"}     local yesOrNo = data[province] or data.default     if yesOrNo == "no" then         return label, args.rural_municipalities     else         return , nil     end end  local function divisions(args, country)     local province = country or      local data = {ON = "no", default = "yes"}     local yesOrNo = data[province] or data.default     if yesOrNo == "no" then         return args.divisions     else         return nil     end end  local function cities(args, country, parameter)     local data = {USA = "yes", default = "no"}     local yesOrNo = data[country] or data.default     if yesOrNo == "no" then         return args[parameter]     else         return nil     end end  local function destinations(args, country)     local label     if country == "GBR" then         label = "প্রাথমিকগন্তব্যস্থল"     else         label = "প্রাথমিকগন্তব্যস্থল"     end     local data = {AUS = "no", GBR = "no", IMN = "no", IND = "no", IRL = "no", MYS = "no", NIR = "no", NPL = "no", NZL = "no", default = "yes"}     local yesOrNo = data[country] or data.default     if yesOrNo == "no" then         return label, args.destinations     else         return , nil     end end  local function lga(args, country)     local labels = {SA = "LGA(s)", VIC = "LGA(s)", NSW = "LGA(s)",                     QLD = "LGA(s)", NT = "LGA(s)",                     WA = "LGA(s)", TAS = "LGA(s)", ACT = "District(s)"}     local data = {AUS = "no", default = "yes"}     local yesOrNo = data[country] or data.default     if yesOrNo == "no" then         local state = args.state or          local label = labels[state] or "LGA(s)"         return label, args.lga     else         return , nil     end end  local function location(args, country)     local labels = {highway = "Major settlements", ["rural road"] = "Major settlements", freeway = "Major suburbs", ["city highway"] = "Major suburbs", road = "Major suburbs", street = "Suburb"}     local data = {AUS = "no", default = "yes"}     local yesOrNo = data[country] or data.default     if yesOrNo == "no" then         local type = args.type or          local label = labels[type] or "প্রাথমিকগন্তব্যস্থল"         return label, args.location     else         return , nil     end end  function p.location(frame)     local pframe = frame:getParent()     local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself     local args = pframe.args -- the arguments passed TO the template, in the wikitext that transcludes the template          local parameters = {label1 = "দেশ", label3 = "রাজ্য", label4 = "প্রদেশ", label7 = "বিভাগ", label8 = "নগর",                         label9 = "শহর", label10 = "গ্রাম", child = "yes", decat = "yes", labelstyle = "text-align:right", title = "অবস্থান"}     local data = {}          local function emptyParam(param)         if param ==  then             return nil         else             return param         end     end      local country = emptyParam(args.country)     local state = emptyParam(args.state)     local province = emptyParam(args.province)     if not(country) then         local stateParam = args.state or args.province         if not(stateParam) then             country =         else             local countryMask = require "Module:Infobox road/meta/mask/country"             country = countryMask._country(stateParam, country)         end     end     data[1] = countries(args, country)     parameters.label2, data[2] = regions(args, country)     data[3] = states(args, country)     data[4] = provinces(args, country)     parameters.label5, data[5] = counties(args, country)     parameters.label6, data[6] = ruralMunis(args, province)     data[7] = divisions(args, province)     data[8] = cities(args, country, 'cities')     data[9] = cities(args, country, 'towns')     data[10] = cities(args, country, 'villages')     parameters.label11, data[11] = destinations(args, country)     parameters.label12, data[12] = lga(args, country)     parameters.label13, data[13] = location(args, country)          local hasData = false     for k,v in pairs(data) do         if v ~=  then             hasData = true             break         end     end     if not(hasData) then         return ''     end          for k,v in pairs(data) do         parameters["data" .. k] = v     end          local infoboxModule = require 'Module:Infobox'     return infoboxModule.infobox(parameters) end  return p