https://gist.github.com/lyuz1n/6ef834507fbbeb57040ea5a325af6cbb
https://gist.github.com/lyuz1n/e1690914b3469ec30f3b6ca60800974b
local random = math.random
function uuid()
local template ='xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'
return string.gsub(template, '[xy]', function (c)
local v = (c == 'x') and random(0, 0xf) or random(8, 0xb)
return string.format('%x', v)
end)
end