function t.optional(c)assert(t.callback(c))return function(k)if k==nil then return true end local A,o=c(k)if A then return true else return false,string.format("\040\111\112\116\105\111\110\097\108\041 \037\115",o or"")end end end

function t.optional(check)
	assert(t.callback(check))
	return function(value)
		if value == nil then
			return true
		end

		local success, errMsg = check(value)
		if success then
			return true
		else
			return false, string.format("(optional) %s", errMsg or "")
		end
	end
end
