function Util.MakeListableType(b)local S={Listable=true;Transform=b.Transform,Validate=b.Validate;Autocomplete=b.Autocomplete,Parse=function(...)return{b.Parse(...)}end}return S end local function b(b)return first(b:gsub("\092\037\036",string.char(20)))end local function S(b)return first(b:gsub(string.char(20),"\036"))end

function Util.MakeListableType(type)
	local listableType = {
		Listable = true,
		Transform = type.Transform,
		Validate = type.Validate,
		Autocomplete = type.Autocomplete,
		Parse = function(...)
			return {type.Parse(...)}
		end
	}

	return listableType
end

local function encodeCommandEscape(text)
	return first(text:gsub("\\%$", string.char(20)))
end

local function decodeCommandEscape(text)
	return first(text:gsub(string.char(20), "$"))
end
