Module:File license: Difference between revisions

From Warwick Wiki
No edit summary
No edit summary
Tag: Manual revert
 
(62 intermediate revisions by 3 users not shown)
Line 5: Line 5:
local args = frame:getParent().args
local args = frame:getParent().args
local image = args["image"] or ""
local imageSize = tonumber(args["image size"]) or 80
local typeOfFile = args["type of file"] or "image"
local typeOfFile = args["type of file"] or "image"
local source = args["source"] or ""
local source = args["source"] or ""
local license = args["license"] or ""
local license = args["license"] or "fair"
local copyrightHolder = args["copyright holder"] or ""
local copyrightHolder = args["copyright holder"] or ""
local copyrightYear = args["copyright year"] or ""
local intent = args["intent"] or "to illustrate articles"
local intent = args["intent"] or "to illustrate articles"
local tentative = args["tentative"] or ""
local tentative = args["tentative"] or ""
local ownWork = args["own work"] or ""
local ownWork = args["own work"] or ""
local trademarkOwner = args["trademark owner"] or ""
local trademarkUsage = args["trademark usage"] or "Its use here is believed not to be [[wikipedia:trademark infringement|trademark infringement]]. "
local attribution = args["attribution"] or ""
local attributionFormat = args["attribution format"] or ""
local subject = args["subject"] or ""
local subjectLicense = args["subject license"] or ""
local extra = args["extra"] or ""
if tentative ~= "" then
if tentative ~= "" then
Line 32: Line 38:
end
end
local imageCode = ""
local subjectText = ""
if image ~= "" then
if subject ~= "" then
imageCode = '<span style="margin-top:5px;float:left;margin-right:10px;">[[File:' .. image .. '|' .. tostring(imageSize) .. "px]]</span>"
subjectText = " of " .. subject
else
local imageData = mw.loadData("Module:File license/data/images")
if imageData[copyrightHolder] then
imageCode = '<span style="margin-top:5px;float:left;margin-right:10px;">[[File:' .. imageData[copyrightHolder] .. '|' .. tostring(imageSize) .. "px]]</span>"
end
end
end
 
local copyrightHolderText = ""
local copyrightHolderText = ""
if copyrightHolder ~= "" then
if copyrightHolder ~= "" then
local copyrightHolderData = mw.loadData("Module:File license/data/copyright holders")
copyrightHolderText = frame:preprocess(copyrightHolder)
if copyrightHolderData[copyrightHolder] then
end
copyrightHolderText = frame:preprocess(copyrightHolderData[copyrightHolder])
elseif copyrightHolderDisplay then
local attributionText = attribution
copyrightHolderText = "[[" .. copyrightHolder .. "|" .. copyrightHolderDisplay .. "]]"
if attributionText == "" then
else
attributionText = copyrightHolderText
copyrightHolderText = copyrightHolder
end
end
if attributionText == "" then
attributionText = trademarkOwner
end
end
Line 58: Line 60:
local licenseMachinedata = ""
local licenseMachinedata = ""
if licenseData[license] then
if licenseData[license] then
licenseText = frame:preprocess(licenseData[license][1])
if ownWork ~= "" then
licenseMachinedata = '<span class="licensetpl"><span class="licensetpl_short">' .. licenseData[license][2] .. '</span><span class="licensetpl_long">' .. licenseData[license][3] .. '</span><span class="licensetpl_link">' .. frame:preprocess("<nowiki>" .. licenseData[license][4] .. "</nowiki>") .. '</span><span class="licensetpl_link_req">' .. licenseData[license][5] .. '</span><span class="licensetpl_attr_req">' .. licenseData[license][6] .. '</span><span class="licensetpl_attr">' .. copyrightHolderText .. '</span><span class="licensetpl_nonfree">' .. licenseData[license][7] .. '</span></span>'
licenseText = "I, the copyright holder of this " .. typeOfFile .. ", hereby " .. frame:preprocess(licenseData[license][2]) .. " it's use on the Warwick Wiki " .. intent .. ". "
else
licenseText = tentativeText .. " of this " .. typeOfFile .. " " .. intent .. " on the Warwick Wiki " .. frame:preprocess(licenseData[license][1])
end
licenseText = frame:preprocess(licenseData[license][11]) .. licenseText  .. " " .. frame:preprocess(licenseData[license][3])
licenseMachinedata = '<span class="licensetpl"><span class="licensetpl_short">' .. licenseData[license][4] .. '</span><span class="licensetpl_long">' .. licenseData[license][5] .. '</span><span class="licensetpl_link">' .. frame:preprocess("<nowiki>" .. licenseData[license][6] .. "</nowiki>") .. '</span><span class="licensetpl_link_req">' .. tostring(licenseData[license][7]) .. '</span><span class="licensetpl_attr_req">' .. tostring(licenseData[license][8]) .. '</span><span class="licensetpl_attr">' .. attributionText .. '</span><span class="licensetpl_nonfree">' .. tostring(licenseData[license][9]) .. '</span></span>'
end
end
local extraLicenses = ""
local done = false
local i = 2
while not done do
if args["license" .. tostring(i)] and args["license" .. tostring(i)] ~= "" and licenseData[args["license" .. tostring(i)]] then
if licenseData[args["license" .. tostring(i)]][6] ~= "" then
extraLicenses = extraLicenses .. frame:preprocess("[" .. licenseData[args["license" .. tostring(i)]][6] .. " " .. licenseData[args["license" .. tostring(i)]][5] .. "]") .. ", "
else
extraLicenses = extraLicenses .. licenseData[args["license" .. tostring(i)]][5] .. ", "
end
licenseMachinedata = licenseMachinedata .. '<span class="licensetpl"><span class="licensetpl_short">' .. licenseData[args["license" .. tostring(i)]][4] .. '</span><span class="licensetpl_long">' .. licenseData[args["license" .. tostring(i)]][5] .. '</span><span class="licensetpl_link">' .. frame:preprocess("<nowiki>" .. licenseData[args["license" .. tostring(i)]][6] .. "</nowiki>") .. '</span><span class="licensetpl_link_req">' .. tostring(licenseData[args["license" .. tostring(i)]][7]) .. '</span><span class="licensetpl_attr_req">' .. tostring(licenseData[args["license" .. tostring(i)]][8]) .. '</span><span class="licensetpl_attr">' .. attributionText .. '</span><span class="licensetpl_nonfree">' .. tostring(licenseData[args["license" .. tostring(i)]][9]) .. '</span></span>'
i = i + 1
else
done = true
end
end
if extraLicenses ~= "" then
extraLicenses = extraLicenses:sub(1, -3) .. ". "
if ownWork then
extraLicensesText = "<br/><br/>I also make this file available under the following additional license"
if i > 3 then
extraLicensesText = extraLicensesText .. "s"
end
extraLicensesText = extraLicensesText .. ": " .. extraLicenses
else
extraLicensesText = "<br/><br/>This file is also available under the following additional license"
if i > 3 then
extraLicensesText = extraLicensesText .. "s"
end
extraLicensesText = extraLicensesText .. ": " .. extraLicenses
end
licenseText = licenseText .. extraLicensesText
end
local subjectLicenseText = ""
if licenseData[subjectLicense] then
subjectLicenseText = "\n<hr/>" .. frame:preprocess(licenseData[subjectLicense][11]) .. "The inclusion of " .. subject .. " in this " .. typeOfFile .. " " .. frame:preprocess(licenseData[subjectLicense][1]) .. " " .. frame:preprocess(licenseData[subjectLicense][3])
licenseMachinedata = licenseMachinedata .. '<span class="licensetpl"><span class="licensetpl_short">' .. licenseData[subjectLicense][4] .. '</span><span class="licensetpl_long">' .. licenseData[subjectLicense][5] .. '</span><span class="licensetpl_link">' .. frame:preprocess("<nowiki>" .. licenseData[subjectLicense][6] .. "</nowiki>") .. '</span><span class="licensetpl_link_req">' .. tostring(licenseData[subjectLicense][7]) .. '</span><span class="licensetpl_attr_req">' .. tostring(licenseData[subjectLicense][8]) .. '</span><span class="licensetpl_attr">' .. attributionText .. '</span><span class="licensetpl_nonfree">' .. tostring(licenseData[subjectLicense][9]) .. '</span></span>'
licenseText = licenseText .. subjectLicenseText
end
if extraLicenses ~= "" or subjectLicenseText ~= "" then
licenseMachinedata = '<span class="licensetpl_wrapper">' .. licenseMachinedata .. '</span>'
end
local infoMachinedata = '<span class="fileinfotpl"><span class="fileinfotpl_desc">' .. string.sub(typeOfFileArticle, 1, 1):upper() .. string.sub(typeOfFileArticle, 2, -1) .. ' ' .. typeOfFile .. sourceText .. '.</span><span class="fileinfotpl_src">' .. source .. '</span><span class="fileinfotpl_aut">' .. copyrightHolderText .. '</span></span>'
local infoMachinedata = '<span class="fileinfotpl"><span class="fileinfotpl_desc">' .. string.sub(typeOfFileArticle, 1, 1):upper() .. string.sub(typeOfFileArticle, 2, -1) .. ' ' .. typeOfFile .. sourceText .. '.</span><span class="fileinfotpl_src">' .. source .. '</span><span class="fileinfotpl_aut">' .. copyrightHolderText .. '</span></span>'
local i = 0
local i = 1
local extraCopyrightText = ""
local extraCopyrightText = ""
if args["extra copyright"] and args["extra copyright"] ~= "" then
args["extra copyright1"] = args["extra copyright"]
args["extra copyright owner1"] = args["extra copyright owner"]
args["extra copyright year1"] = args["extra copyright year"]
end
while args["extra copyright" .. tostring(i)] and args["extra copyright" .. tostring(i)] ~= "" do
while args["extra copyright" .. tostring(i)] and args["extra copyright" .. tostring(i)] ~= "" do
extraCopyrightText = extraCopyrightText .. args["extra copyright" .. tostring(i)]
extraCopyrightText = extraCopyrightText .. args["extra copyright" .. tostring(i)]
Line 74: Line 132:
end
end
extraCopyrightText = extraCopyrightText ..  " © " .. args["extra copyright owner" .. tostring(i)]
extraCopyrightText = extraCopyrightText ..  " © " .. args["extra copyright owner" .. tostring(i)]
if args["extra copyright year" .. tostring(i)] and args["extra copyright year" .. tostring(i)] ~= "" then
extraCopyrightText = extraCopyrightText .. " " .. args["extra copyright year" .. tostring(i)]
end
extraCopyrightText = extraCopyrightText .. ". "
i = i + 1
i = i + 1
end
end
if extraCopyrightText ~= "" then
if extraCopyrightText ~= "" then
extraCopyrightText = "<hr/>" .. extraCopyrightText
extraCopyrightText = "\n<hr/>" .. extraCopyrightText
end
local trademarkText = ""
if trademarkOwner ~= "" then
trademarkText = "\n<hr/><span class='restriction-trademarked'>Additionally, some or all of this " .. typeOfFile .. " is a trademark of " .. trademarkOwner .. ". "
if trademarkUsage ~= "" then
trademarkText = trademarkText .. trademarkUsage
end
trademarkText = trademarkText .. "</span>"
end
local copyrightOwnedByText = ""
if licenseData[license][10] then
copyrightOwnedByText = "It is not under copyright. "
else
if copyrightYear ~= "" then
copyrightOwnedByText = "Its copyright is owned by " .. copyrightHolderText .. ", " .. copyrightYear .. ". "
else
copyrightOwnedByText = "Its copyright is owned by " .. copyrightHolderText .. ". "
end
end
end
local finalLicense = '<div id="license">' .. imageCode .. "This file is " .. typeOfFileArticle .. " '''" .. typeOfFile .. "'''" .. sourceText .. ". It's copyright is owned by " .. copyrightHolderText .. ". Other parties may have intellectual property rights over this image, as well." .. extraCopyrightText .. "<hr/>" .. tentativeText .. " of this " .. typeOfFile .. " " .. intent .. " on Tardis Wiki, hosted on servers in __ by Wiki Federation, " .. licenseText .. '<span style="display:none;>" ' .. licenseMachinedata .. infoMachinedata .. "</span></div>"
local attributionNotice = ""
if attributionText ~= "" then
if licenseData[license][8] then
attributionNotice = "\n<hr/>When using this " .. typeOfFile .. ", its creator/owner, " .. attributionText .. ", must be attributed. "
else
attributionNotice = "\n<hr/>While not required by the license, this " .. typeOfFile .. " can be attributed to " .. attributionText .. ". "
end
if attributionFormat ~= "" then
attributionNotice = attributionNotice .. "This should be done in in the following way: <br/><center>" .. frame:preprocess(attributionFormat) .. "</center>"
end
end
if ownWork ~= "" then
if extra ~= "" then
finalLicense = '<div style="padding:5px;" id="license">I, the copyright holder of this work, hereby publish it under the following license:' .. finalLicense .. "</div>"
extra = "<hr/>" .. extra
end
end
local finalLicense = '<div class="file-license">' .. "This file is " .. typeOfFileArticle .. " '''" .. typeOfFile .. "'''" .. subjectText .. sourceText .. ". " .. copyrightOwnedByText .. extraCopyrightText .. "\n<hr/>" .. licenseText .. trademarkText .. attributionNotice .. extra .. "</div>"
local infoMachinedata = '<span class="fileinfotpl"><span class="fileinfotpl_desc" style="display:none;">' .. string.sub(typeOfFileArticle, 1, 1):upper() .. string.sub(typeOfFileArticle, 2, -1) .. ' ' .. typeOfFile .. subjectText .. sourceText .. '.</span><span class="fileinfotpl_src" style="display:none;">' .. source .. '</span><span class="fileinfotpl_aut" style="display:none;">' .. copyrightHolderText .. '</span><span class="fileinfotpl_perm">' .. finalLicense .. '</span></span>'
finalLicense = '<span style="display:none;"> ' .. licenseMachinedata .. "</span>" .. infoMachinedata
return finalLicense
return finalLicense
end
end


return p
return p

Latest revision as of 22:29, 3 July 2025

Powers {{file license}}.


local p = {} --p stands for package
local h = {} --h stands for helper

function p.makeLicense(frame)
	local args = frame:getParent().args
	
	local typeOfFile = args["type of file"] or "image"
	local source = args["source"] or ""
	local license = args["license"] or "fair"
	local copyrightHolder = args["copyright holder"] or ""
	local copyrightYear = args["copyright year"] or ""
	local intent = args["intent"] or "to illustrate articles"
	local tentative = args["tentative"] or ""
	local ownWork = args["own work"] or ""
	local trademarkOwner = args["trademark owner"] or ""
	local trademarkUsage = args["trademark usage"] or "Its use here is believed not to be [[wikipedia:trademark infringement|trademark infringement]]. "
	local attribution = args["attribution"] or ""
	local attributionFormat = args["attribution format"] or ""
	local subject = args["subject"] or ""
	local subjectLicense = args["subject license"] or ""
	local extra = args["extra"] or ""
	
	if tentative ~= "" then
		tentativeText = "It is believed that use"
	else
		tentativeText = "Use"
	end
	
	local typeOfFileArticle = "a"
	local vowels = {["a"] = true, ["e"] = true, ["i"] = true, ["o"] = true, ["u"] = true}
	if vowels[string.sub(typeOfFile, 1, 1)] then
		typeOfFileArticle = "an"
	end
	
	local sourceText = ""
	if source ~= "" then
		sourceText = " from " .. source
	end
	
	local subjectText = ""
	if subject ~= "" then
		subjectText = " of " .. subject
	end

	local copyrightHolderText = ""
	if copyrightHolder ~= "" then
		copyrightHolderText = frame:preprocess(copyrightHolder)
	end
	
	local attributionText = attribution
	if attributionText == "" then
		attributionText = copyrightHolderText
	end
	if attributionText == "" then
		attributionText = trademarkOwner
	end
	
	local licenseData = mw.loadData("Module:File license/data/licenses")
	local licenseText = ""
	local licenseMachinedata = ""
	if licenseData[license] then
		if ownWork ~= "" then 
			licenseText = "I, the copyright holder of this " .. typeOfFile .. ", hereby " .. frame:preprocess(licenseData[license][2]) .. " it's use on the Warwick Wiki " .. intent .. ". "
		else
			licenseText = tentativeText .. " of this " .. typeOfFile .. " " .. intent .. " on the Warwick Wiki " .. frame:preprocess(licenseData[license][1])
		end
		licenseText = frame:preprocess(licenseData[license][11]) .. licenseText  .. " " .. frame:preprocess(licenseData[license][3])
		licenseMachinedata = '<span class="licensetpl"><span class="licensetpl_short">' .. licenseData[license][4] .. '</span><span class="licensetpl_long">' .. licenseData[license][5] .. '</span><span class="licensetpl_link">' .. frame:preprocess("<nowiki>" .. licenseData[license][6] .. "</nowiki>") .. '</span><span class="licensetpl_link_req">' .. tostring(licenseData[license][7]) .. '</span><span class="licensetpl_attr_req">' .. tostring(licenseData[license][8]) .. '</span><span class="licensetpl_attr">' .. attributionText .. '</span><span class="licensetpl_nonfree">' .. tostring(licenseData[license][9]) .. '</span></span>'
	end
	
	local extraLicenses = ""
	local done = false
	local i = 2
	while not done do
		if args["license" .. tostring(i)] and args["license" .. tostring(i)] ~= "" and licenseData[args["license" .. tostring(i)]] then
			if licenseData[args["license" .. tostring(i)]][6] ~= "" then
				extraLicenses = extraLicenses .. frame:preprocess("[" .. licenseData[args["license" .. tostring(i)]][6] .. " " .. licenseData[args["license" .. tostring(i)]][5] .. "]") .. ", "
			else
				extraLicenses = extraLicenses .. licenseData[args["license" .. tostring(i)]][5] .. ", "
			end
			licenseMachinedata = licenseMachinedata .. '<span class="licensetpl"><span class="licensetpl_short">' .. licenseData[args["license" .. tostring(i)]][4] .. '</span><span class="licensetpl_long">' .. licenseData[args["license" .. tostring(i)]][5] .. '</span><span class="licensetpl_link">' .. frame:preprocess("<nowiki>" .. licenseData[args["license" .. tostring(i)]][6] .. "</nowiki>") .. '</span><span class="licensetpl_link_req">' .. tostring(licenseData[args["license" .. tostring(i)]][7]) .. '</span><span class="licensetpl_attr_req">' .. tostring(licenseData[args["license" .. tostring(i)]][8]) .. '</span><span class="licensetpl_attr">' .. attributionText .. '</span><span class="licensetpl_nonfree">' .. tostring(licenseData[args["license" .. tostring(i)]][9]) .. '</span></span>'
			i = i + 1
		else
			done = true
		end
	end
	if extraLicenses ~= "" then
		extraLicenses = extraLicenses:sub(1, -3) .. ". "
		if ownWork then
			extraLicensesText = "<br/><br/>I also make this file available under the following additional license"
			if i > 3 then
				extraLicensesText = extraLicensesText .. "s"
			end
			extraLicensesText = extraLicensesText .. ": " .. extraLicenses
		else
			extraLicensesText = "<br/><br/>This file is also available under the following additional license"
			if i > 3 then
				extraLicensesText = extraLicensesText .. "s"
			end
			extraLicensesText = extraLicensesText .. ": " .. extraLicenses
		end
		licenseText = licenseText .. extraLicensesText
	end
	
	local subjectLicenseText = ""
	if licenseData[subjectLicense] then
		subjectLicenseText = "\n<hr/>" .. frame:preprocess(licenseData[subjectLicense][11]) .. "The inclusion of " .. subject .. " in this " .. typeOfFile .. " " .. frame:preprocess(licenseData[subjectLicense][1]) .. " " .. frame:preprocess(licenseData[subjectLicense][3])
		licenseMachinedata = licenseMachinedata .. '<span class="licensetpl"><span class="licensetpl_short">' .. licenseData[subjectLicense][4] .. '</span><span class="licensetpl_long">' .. licenseData[subjectLicense][5] .. '</span><span class="licensetpl_link">' .. frame:preprocess("<nowiki>" .. licenseData[subjectLicense][6] .. "</nowiki>") .. '</span><span class="licensetpl_link_req">' .. tostring(licenseData[subjectLicense][7]) .. '</span><span class="licensetpl_attr_req">' .. tostring(licenseData[subjectLicense][8]) .. '</span><span class="licensetpl_attr">' .. attributionText .. '</span><span class="licensetpl_nonfree">' .. tostring(licenseData[subjectLicense][9]) .. '</span></span>'
		licenseText = licenseText .. subjectLicenseText
	end
		
	if extraLicenses ~= "" or subjectLicenseText ~= "" then
		licenseMachinedata = '<span class="licensetpl_wrapper">' .. licenseMachinedata .. '</span>'
	end
			
	
	local infoMachinedata = '<span class="fileinfotpl"><span class="fileinfotpl_desc">' .. string.sub(typeOfFileArticle, 1, 1):upper() .. string.sub(typeOfFileArticle, 2, -1) .. ' ' .. typeOfFile .. sourceText .. '.</span><span class="fileinfotpl_src">' .. source .. '</span><span class="fileinfotpl_aut">' .. copyrightHolderText .. '</span></span>'
	
	local i = 1
	local extraCopyrightText = ""
	if args["extra copyright"] and args["extra copyright"] ~= "" then
		args["extra copyright1"] = args["extra copyright"]
		args["extra copyright owner1"] = args["extra copyright owner"]
		args["extra copyright year1"] = args["extra copyright year"]
	end
	while args["extra copyright" .. tostring(i)] and args["extra copyright" .. tostring(i)] ~= "" do
		extraCopyrightText = extraCopyrightText .. args["extra copyright" .. tostring(i)]
		if string.find(args["extra copyright" .. tostring(i)], "and") then
			extraCopyrightText = extraCopyrightText ..  " are "
		else
			extraCopyrightText = extraCopyrightText ..  " is "
		end
		extraCopyrightText = extraCopyrightText ..  " © " .. args["extra copyright owner" .. tostring(i)]
		if args["extra copyright year" .. tostring(i)] and args["extra copyright year" .. tostring(i)] ~= "" then
			extraCopyrightText = extraCopyrightText .. " " .. args["extra copyright year" .. tostring(i)]
		end
		extraCopyrightText = extraCopyrightText .. ". "
		i = i + 1
	end
	if extraCopyrightText ~= "" then
		extraCopyrightText = "\n<hr/>" .. extraCopyrightText
	end
	
	local trademarkText = ""
	if trademarkOwner ~= "" then
		trademarkText = "\n<hr/><span class='restriction-trademarked'>Additionally, some or all of this " .. typeOfFile .. " is a trademark of " .. trademarkOwner .. ". "
		if trademarkUsage ~= "" then
			trademarkText = trademarkText .. trademarkUsage
		end
		trademarkText = trademarkText .. "</span>"
	end
	
	local copyrightOwnedByText = ""
	if licenseData[license][10] then
		copyrightOwnedByText = "It is not under copyright. "
	else
		if copyrightYear ~= "" then
			copyrightOwnedByText = "Its copyright is owned by " .. copyrightHolderText .. ", " .. copyrightYear .. ". "
		else
			copyrightOwnedByText = "Its copyright is owned by " .. copyrightHolderText .. ". "
		end
	end
	
	local attributionNotice = ""
	if attributionText ~= "" then
		if licenseData[license][8] then
				attributionNotice = "\n<hr/>When using this " .. typeOfFile .. ", its creator/owner, " .. attributionText .. ", must be attributed. "
		else
			attributionNotice = "\n<hr/>While not required by the license, this " .. typeOfFile .. " can be attributed to " .. attributionText .. ". "
		end
		if attributionFormat ~= "" then
			attributionNotice = attributionNotice .. "This should be done in in the following way: <br/><center>" .. frame:preprocess(attributionFormat) .. "</center>"
		end
	end
	
	if extra ~= "" then
		extra = "<hr/>" .. extra
	end
	
	local finalLicense = '<div class="file-license">' .. "This file is " .. typeOfFileArticle .. " '''" .. typeOfFile .. "'''" .. subjectText .. sourceText .. ". " .. copyrightOwnedByText .. extraCopyrightText .. "\n<hr/>" .. licenseText .. trademarkText .. attributionNotice .. extra .. "</div>"
	
	local infoMachinedata = '<span class="fileinfotpl"><span class="fileinfotpl_desc" style="display:none;">' .. string.sub(typeOfFileArticle, 1, 1):upper() .. string.sub(typeOfFileArticle, 2, -1) .. ' ' .. typeOfFile .. subjectText .. sourceText .. '.</span><span class="fileinfotpl_src" style="display:none;">' .. source .. '</span><span class="fileinfotpl_aut" style="display:none;">' .. copyrightHolderText .. '</span><span class="fileinfotpl_perm">' .. finalLicense .. '</span></span>'
	
	finalLicense = '<span style="display:none;"> ' .. licenseMachinedata .. "</span>" .. infoMachinedata

	return finalLicense
end

return p