localstring=stringlocaltable=tablelocalfind=string.findlocalformat=string.formatlocalgsub=string.gsublocalnext=nextlocalrequire=requirelocalall_scriptsdolocalscripts,n={},0forscriptinnext,require("Module:scripts/data")don=n+1scripts[n]=scriptendtable.sort(scripts)all_scripts=table.concat(scripts,",")endlocalmodules={"Module:languages/data/2","Module:languages/data/exceptional"}localdata={}fori=1,28dolocalmname=modules[i]orformat("Module:languages/data/3/%c",0x5E+i)forkey,valueinnext,require(mname)do-- Handle the special script codes "All" and "Hants".localvalue4=value[4]ifvalue4=="All"thenvalue[4]=all_scriptselseifvalue4andfind(value4,"Hants",1,true)thenvalue[4]=gsub(value4,"Hants","Hani,Hant,Hans")enddata[key]=valueendforlkey,lvalueinnext,require(mname.."/extra")dolocallkey_data=data[lkey]iflkey_datathenforkey,valueinnext,lvaluedolkey_data[key]=valueendendendendreturndata