local h={}local e={}for e=65,90,1 do table.insert(h,e)end for e=97,122,1 do table.insert(h,e)end for e=48,57,1 do table.insert(h,e)end table.insert(h,43)table.insert(h,47)for h,A in ipairs(h)do e[A]=h end local A={ClassName="\066\097\115\101\054\052",__tostring=function(h)return h.ClassName end}A.__index=A local q=bit32.rshift local E=bit32.lshift local o=bit32.band function A.new()return setmetatable({},A)end


local Alphabet = {}
local Indexes = {}

for Index = 65, 90 do table.insert(Alphabet, Index) end -- A-Z
for Index = 97, 122 do table.insert(Alphabet, Index) end -- a-z
for Index = 48, 57 do table.insert(Alphabet, Index) end -- 0-9

table.insert(Alphabet, 43) -- +
table.insert(Alphabet, 47) -- /

for Index, Character in ipairs(Alphabet) do
	Indexes[Character] = Index
end

local Base64 = {
	ClassName = "Base64";
	__tostring = function(self) return self.ClassName end;
}

Base64.__index = Base64

local bit32_rshift = bit32.rshift
local bit32_lshift = bit32.lshift
local bit32_band = bit32.band

function Base64.new()
	return setmetatable({}, Base64)
end
