-- [[ SETUP ]] --
local LoadAssets = LoadAssets or require
local templates
local success, e = pcall(function()
templates = LoadAssets(13282899978):Get("Templates")
end)
if not success then
do
local function Decode(str)
local StringLength = #str
-- Base64 decoding
do
local decoder = {}
for b64code, char in pairs(('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='):split('')) do
decoder[char:byte()] = b64code-1
end
local n = StringLength
local t,k = table.create(math.floor(n/4)+1),1
local padding = str:sub(-2) == '==' and 2 or str:sub(-1) == '=' and 1 or 0
for i = 1, padding > 0 and n-4 or n, 4 do
local a, b, c, d = str:byte(i,i+3)
local v = decoder[a]*0x40000 + decoder[b]*0x1000 + decoder[c]*0x40 + decoder[d]
t[k] = string.char(bit32.extract(v,16,8),bit32.extract(v,8,8),bit32.extract(v,0,8))
k = k + 1
end
if padding == 1 then
local a, b, c = str:byte(n-3,n-1)
local v = decoder[a]*0x40000 + decoder[b]*0x1000 + decoder[c]*0x40
t[k] = string.char(bit32.extract(v,16,8),bit32.extract(v,8,8))
elseif padding == 2 then
local a, b = str:byte(n-3,n-2)
local v = decoder[a]*0x40000 + decoder[b]*0x1000
t[k] = string.char(bit32.extract(v,16,8))
end
str = table.concat(t)
end
local Position = 1
local function Parse(fmt)
local Values = {string.unpack(fmt,str,Position)}
Position = table.remove(Values)
return table.unpack(Values)
end
local Settings = Parse('B')
local Flags = Parse('B')
Flags = {
--[[ValueIndexByteLength]] bit32.extract(Flags,6,2)+1,
--[[InstanceIndexByteLength]] bit32.extract(Flags,4,2)+1,
--[[ConnectionsIndexByteLength]] bit32.extract(Flags,2,2)+1,
--[[MaxPropertiesLengthByteLength]] bit32.extract(Flags,0,2)+1,
--[[Use Double instead of Float]] bit32.band(Settings,0b1) > 0
}
local ValueFMT = ('I'..Flags[1])
local InstanceFMT = ('I'..Flags[2])
local ConnectionFMT = ('I'..Flags[3])
local PropertyLengthFMT = ('I'..Flags[4])
local ValuesLength = Parse(ValueFMT)
local Values = table.create(ValuesLength)
local CFrameIndexes = {}
local ValueDecoders = {
--!!Start
[1] = function(Modifier)
return Parse('s'..Modifier)
end,
--!!Split
[2] = function(Modifier)
return Modifier ~= 0
end,
--!!Split
[3] = function()
return Parse('d')
end,
--!!Split
[4] = function(_,Index)
table.insert(CFrameIndexes,{Index,Parse(('I'..Flags[1]):rep(3))})
end,
--!!Split
[5] = {CFrame.new,Flags[5] and 'dddddddddddd' or 'ffffffffffff'},
--!!Split
[6] = {Color3.fromRGB,'BBB'},
--!!Split
[7] = {BrickColor.new,'I2'},
--!!Split
[8] = function(Modifier)
local len = Parse('I'..Modifier)
local kpts = table.create(len)
for i = 1,len do
kpts[i] = ColorSequenceKeypoint.new(Parse('f'),Color3.fromRGB(Parse('BBB')))
end
return ColorSequence.new(kpts)
end,
--!!Split
[9] = function(Modifier)
local len = Parse('I'..Modifier)
local kpts = table.create(len)
for i = 1,len do
kpts[i] = NumberSequenceKeypoint.new(Parse(Flags[5] and 'ddd' or 'fff'))
end
return NumberSequence.new(kpts)
end,
--!!Split
[10] = {Vector3.new,Flags[5] and 'ddd' or 'fff'},
--!!Split
[11] = {Vector2.new,Flags[5] and 'dd' or 'ff'},
--!!Split
[12] = {UDim2.new,Flags[5] and 'di2di2' or 'fi2fi2'},
--!!Split
[13] = {Rect.new,Flags[5] and 'dddd' or 'ffff'},
--!!Split
[14] = function()
local flags = Parse('B')
local ids = {"Top","Bottom","Left","Right","Front","Back"}
local t = {}
for i = 0,5 do
if bit32.extract(flags,i,1)==1 then
table.insert(t,Enum.NormalId[ids[i+1]])
end
end
return Axes.new(unpack(t))
end,
--!!Split
[15] = function()
local flags = Parse('B')
local ids = {"Top","Bottom","Left","Right","Front","Back"}
local t = {}
for i = 0,5 do
if bit32.extract(flags,i,1)==1 then
table.insert(t,Enum.NormalId[ids[i+1]])
end
end
return Faces.new(unpack(t))
end,
--!!Split
[16] = {PhysicalProperties.new,Flags[5] and 'ddddd' or 'fffff'},
--!!Split
[17] = {NumberRange.new,Flags[5] and 'dd' or 'ff'},
--!!Split
[18] = {UDim.new,Flags[5] and 'di2' or 'fi2'},
--!!Split
[19] = function()
return Ray.new(Vector3.new(Parse(Flags[5] and 'ddd' or 'fff')),Vector3.new(Parse(Flags[5] and 'ddd' or 'fff')))
end
--!!End
}
for i = 1,ValuesLength do
local TypeAndModifier = Parse('B')
local Type = bit32.band(TypeAndModifier,0b11111)
local Modifier = (TypeAndModifier - Type) / 0b100000
local Decoder = ValueDecoders[Type]
if type(Decoder)=='function' then
Values[i] = Decoder(Modifier,i)
else
Values[i] = Decoder[1](Parse(Decoder[2]))
end
end
for i,t in pairs(CFrameIndexes) do
Values[t[1]] = CFrame.fromMatrix(Values[t[2]],Values[t[3]],Values[t[4]])
end
local InstancesLength = Parse(InstanceFMT)
local Instances = {}
local NoParent = {}
for i = 1,InstancesLength do
local ClassName = Values[Parse(ValueFMT)]
local obj
local MeshPartMesh,MeshPartScale
if ClassName == "UnionOperation" then
obj = DecodeUnion(Values,Flags,Parse)
obj.UsePartColor = true
elseif ClassName:find("Script") then
obj = Instance.new("Folder")
Script(obj,ClassName=='ModuleScript')
elseif ClassName == "MeshPart" then
obj = Instance.new("Part")
MeshPartMesh = Instance.new("SpecialMesh")
MeshPartMesh.MeshType = Enum.MeshType.FileMesh
MeshPartMesh.Parent = obj
else
obj = Instance.new(ClassName)
end
local Parent = Instances[Parse(InstanceFMT)]
local PropertiesLength = Parse(PropertyLengthFMT)
local AttributesLength = Parse(PropertyLengthFMT)
Instances[i] = obj
for i = 1,PropertiesLength do
local Prop,Value = Values[Parse(ValueFMT)],Values[Parse(ValueFMT)]
-- ok this looks awful
if MeshPartMesh then
if Prop == "MeshId" then
MeshPartMesh.MeshId = Value
continue
elseif Prop == "TextureID" then
MeshPartMesh.TextureId = Value
continue
elseif Prop == "Size" then
if not MeshPartScale then
MeshPartScale = Value
else
MeshPartMesh.Scale = Value / MeshPartScale
end
elseif Prop == "MeshSize" then
if not MeshPartScale then
MeshPartScale = Value
MeshPartMesh.Scale = obj.Size / Value
else
MeshPartMesh.Scale = MeshPartScale / Value
end
continue
end
end
obj[Prop] = Value
end
if MeshPartMesh then
if MeshPartMesh.MeshId=='' then
if MeshPartMesh.TextureId=='' then
MeshPartMesh.TextureId = 'rbxasset://textures/meshPartFallback.png'
end
MeshPartMesh.Scale = obj.Size
end
end
for i = 1,AttributesLength do
obj:SetAttribute(Values[Parse(ValueFMT)],Values[Parse(ValueFMT)])
end
if not Parent then
table.insert(NoParent,obj)
else
obj.Parent = Parent
end
end
local ConnectionsLength = Parse(ConnectionFMT)
for i = 1,ConnectionsLength do
local a,b,c = Parse(InstanceFMT),Parse(ValueFMT),Parse(InstanceFMT)
Instances[a][Values[b]] = Instances[c]
end
return NoParent
end
templates = Decode('AFQXBiEGRm9sZGVyIQROYW1lIQlUZW1wbGF0ZXMhC1ByaW1hcnlCb21iIQRQYXJ0IQdTdGFydHVwIQhBbmNob3JlZCIhDUJvdHRvbVN1cmZhY2UDAAAAAAAAAAAhCkJyaWNrQ29sb3IHTwEhBkNGcmFtZQQXAM8F0AUhCkNhbkNvbGxpZGUCIQVDb2xvcgbn5+whCE1hc3NsZXNzIQtPcmllbnRhdGlvbgoAALRCAAAAAAAAAAAhCFBvc2l0aW9uCnOuFMNkGa1B1kFIwyEIUm90YXRpb24hBFNpemUKMsrxP43izD/8g/4/IQpUb3BTdXJmYWNlIQxUcmFuc3BhcmVuY3kDAAAAAAAA8D8hCkF0dGFjaG1lbnQhD1BhcnRpY2xlRW1pdHRlciEETG9uZygCAAAAAP9UAAAAgD//VAAhBERyYWcDAAAAAAAAIkAhEUVtaXNzaW9uRGlyZWN0aW9uAwAAAAAAABRAIQdFbmFibGVkIQhMaWZldGltZRHNzMw+zczMPiENTGlnaHRFbWlzc2lvbiEEUmF0ZREAALRCAAC0QikDAAAAAAAA'
..'IEEAAAAATYf2PgAAIEEAAAAAAACAPwAAAAAAAAAAIQVTcGVlZBEAAIA/AACAPyEHVGV4dHVyZSEYcmJ4YXNzZXRpZDovLzEwNjU2NTk0NTY5KQUAAAAAAACAPwAAAACdUGM9AAAAAAAAAACamRk/AAAAAAAAAABtqV8/mplhPwAAAAAAAIA/AACAPwAAAAAhB1pPZmZzZXQDAAAAAAAAAEAhBVdvcmRzKAMAAAAA////jDHIPiIiIgAAgD8AAAADAAAAAAAALkADAAAAAAAACEARzcxMP83MTD8pBQAAAAAAAAAAAAAAAPZNcD0AAChAAAAAAD4DCj4AAMA/AAAAAD0Klz4AAEBAAAAAAAAAgD8AAEBAAAAAABEAAAxCAAAMQiEYcmJ4YXNzZXRpZDovLzEwODI3MDYzODM2KQQAAAAAAAAAAAAAAAA3xEA/AAAAAAAAAAAGLmM/mpn5PpqZ+T4AAIA/AACAPwAAAAAhDEV4cGxvc2lvbk9MRAQ/AM8F0AUKn9tUwxg1F8BCLTzDIQpQb2ludExpZ2h0IQpCcmlnaHRuZXNzBv9VACEH'
..'U2hhZG93cyEFUmFuZ2UDAAAAAAAANUAhDEJ1cm5pbmdBc2hlcyEMQWNjZWxlcmF0aW9uCgAAAAAAAKBAAAAAABEAAABAAAAAQCEOTGlnaHRJbmZsdWVuY2UDAAAAAABAX0AhCFJvdFNwZWVkEQAAcMEAgD9EEQAAtMMA4JxEKQQAAAAA8gydQAAAAABDkoQ9vrygQAAAAABPkpY+DoSQPwAAAAAAAIA/AAAAAAAAAAARAABwQgAAcEIhC1NwcmVhZEFuZ2xlCwDACkQAwArEIRhyYnhhc3NldGlkOi8vMTA3NTM0MDk5NzUhCVRpbWVTY2FsZQMAAAAAAADgPykDAAAAAAAAAAAAAAAA4Ey0PpqZmTyamZk8AACAPwAAAAAAAAAAIRNWZWxvY2l0eUluaGVyaXRhbmNlAwAAAGBp0gVAIQVTcGVjcygDAAAAAP9UAJtYHD8NBAAAAIA/AAAAAwAAAAAAACRAEQAAQD8AAEA/AwAAAAAA4G9AKQUAAAAAAAAAAAAAAAAmMS08AAA0QAAAAADvyYM+AAAgQAAAAACis9Q+AAAgPwAAAAAA'
..'AIA/AAAAAAAAAAARAAAWQwAAFkMLAAC0QwAAtEMhGHJieGFzc2V0aWQ6Ly8xMDgwMjQ0Mzg5MiEGU3BhcmsyKAMAAAAA/2IamdQQPygPBAAAgD8AAAARMzOzPpqZmT8DAAAAAAAAaUARAABIwgAASEIRAAC0wwAAtEMpAgAAAAAAACBBAAAAAAAAgD9SVQVBAAAAABEAAMhBAAAMQgsAALTDAAC0QyEYcmJ4YXNzZXRpZDovLzEwNzUzNzcxNjk2KQIAAAAAmpnZPgAAAAAAAIA/AACAPwAAAAAhBVNwYXJrKAMAAAAA/zgFTpnzPjILAQAAgD8AAAARAAD6QgAA+kIhGHJieGFzc2V0aWQ6Ly8xMDc1Mzc3MDczNSkFAAAAAAAAAAAAAAAAguUYPzMzGz8AAAAAe6NiPzMzYz8AAAAA/+tsP5qZaT8AAAAAAACAPwAAgD8AAAAAAwAAAAAAAAxAIQVTbW9rZSgFAAAAAP9UADkNUT5GFwCkGYM+GwkABeHCPgkDAAAAgD8AAAApAgAAAAAAACBBAAAAAAAAgD8AACBBAAAAABEAADRC'
..'AAA0QikDAAAAAGZm9j4AAAAA/DgCPwAAAAAAAAAAAACAPwAAgD8AAAAAAwAAAAAAAOC/IQVSb2NrcwoAAAAAAAA0wgAAAAAoAgAAAAD/zLEAAIA//8yxEQAAoEAAAKBAAwAAAAAAMHZAKQIAAAAAAAAQPwAAED8AAIA/AAAAAAAAAAARAACqQgAAqkILAAC0QwAAyEQhFnJieGFzc2V0aWQ6Ly82MjY1ODg5MzYpBAAAAAAAAIA/AAAAAPMrzD0AAAAAAAAAAKWeaT8AAAAAAAAAAAAAgD8AAIA/AAAAACEJUGFydGljbGU0CgAAAAAAAHDCAAAAACgDAAAAAP9WFHuIpj4AAAAAAIA/AAAAAwAAAAAAADlAAwAAAAAAWIFAEQAAtMIAALRCKQsAAAAAAAAgQQAAAABKd7w8GlHqQAAAAACc4Fs9q5XTQAAAAAAYmNU9qtTYQAAAAAAzxCE+GZDvQAAAAADToZM+AAAEQQAAAAD6mco+AAANQQAAAAAq4hA/AAASQQAAAADwpD0/AAAUQQAAAAATfFs/AAAWQQAAAAAAAIA/AAAWQQAA'
..'AAARAACvQwAAr0MLAADIQQAAyEEpCQAAAACKPkM/AAAAAGh3KD7yJnc/AAAAAOcdrz72l3U/AAAAAAPqGT8x630/AAAAAJ/KNT/K4Hw/AAAAANkHST8AAIA/AAAAAKxyXT8AAIA/AAAAAAgefz8AAIA/AAAAAAAAgD8AAIA/AAAAACEJUGFydGljbGUzCgAAAAAAAFxCAAAAACgCAAAAAAAAAAAAgD9BPz0DAAAAAACARkARAABAQAAAQEARAACgQQCA40MLAAAAAADACkQhGHJieGFzc2V0aWQ6Ly8xMDgwMjQ4NDU4NSkJAAAAAAAAAAAAAAAAdegkPnwMTj8AAAAA5x2vPvaXdT8AAAAAA+oZPzHrfT8AAAAAn8o1P8rgfD8AAAAA2QdJPwAAgD8AAAAArHJdPwAAgD8AAAAACB5/PwAAgD8AAAAAAACAPwAAgD8AAAAAAwAAAAAAgEtAIRBMYXJnZXIgUGFydGljbGVzKAIAAAAAAAAAAACAPwAAABEAAOBAAADgQAMAAAAAAECPQCkDAAAAAJZZ1D4AAAAAPunsPvzEAT8AAAAA'
..'AACAPwAAAAAAAAAAEQAAlkIAAJZCISpodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTcyOTQ0NzkyMzUpAwAAAAAAAAAAAAAAABHfST+RX0c/AAAAAAAAgD8AAIA/AAAAAAoAAAAAAABAQAAAAAARAACAPwAAQEADAAAAAAAAFMARAIDAwwDAPEQLAAC0QwAAtMMhKmh0dHA6Ly93d3cucm9ibG94LmNvbS9hc3NldC8/aWQ9NzQ4MjA1MzcwOCkEAAAAAAAAgD8AAAAAksvPPkJDHz+amZk8hUN3P+bKdD+qqI86AACAP9zXcT8AAAAACgAAAAAAAMjBAAAAAAMAAADgehQIQBEAAO5CAADuQgsAADRDAAA0QyEYcmJ4YXNzZXRpZDovLzEwNzY1NDk4Nzg3EQAAyMIAAMhCCwAAAAAAADRDISpodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTc0NTE4MjU5MzIRAAB/wwCAP0QhBkZsYXJlMhEAAIA+AACAPiEMTG9ja2VkVG9QYXJ0EQAAL8QAALRDKQMAAAAA'
..'AAAgQQAAAABfROs+b1I7QgAAAAAAAIA/YLZfQgAAAAARCtcjPArXIzwhGHJieGFzc2V0aWQ6Ly8xMDcxMjYzNzUzNykDAAAAAAAAAAAAAAAARiMPPwAAAAAAAAAAAACAPwAAgD8AAAAAKAMAAAAA/1QAxsNDPysOAAAAgD8AAAARAAAWwwAAekMpAwAAAAAAACBBAAAAAL6IVj5mJjtCAAAAAAAAgD/H6TxCAAAAACEYcmJ4YXNzZXRpZDovLzEwNzY2MjgyNDM0ETMzsz4zM7M+IRhyYnhhc3NldGlkOi8vMTA3NzY0NzQzNjQhBE1hcmspAgAAAAAAAKBBAAAAAAAAgD8AAKBBAAAAACEYcmJ4YXNzZXRpZDovLzEwNzI4NDgzNTYyEQAAgEAAAIBAIRhyYnhhc3NldGlkOi8vMTA3MDAxNzAxNDgRLbIdPi2yHT4hGHJieGFzc2V0aWQ6Ly8xMDcwMDEzNDM2MwTFAM8FKwQKAAAAAAAAAAAAAABAKAMAAAAA/1QAsDhAPxoIAAAAgD8AAAARAADAPwAAwD8pAwAAAAAAAAAAAAAA'
..'AKeVQj0AACBBAAAAAAAAgD8AACBBAAAAACEYcmJ4YXNzZXRpZDovLzEwODA1NDU2MTE1IQlFeHBsb3Npb24EzADPBdAFCp/bVMPg3Yq/Qi08wwoyyvE/zMzMPxOShEARAABIQwAASEMhGHJieGFzc2V0aWQ6Ly8xMDg3OTk0MDc1OBEAAAA/AAAAPygDAAAAAP9UAEP+wT5IGAAAAIA/AAAAEWZmpj9mZqY/IRhyYnhhc3NldGlkOi8vMTA4Nzc0OTUxNTYhGHJieGFzc2V0aWQ6Ly8xMDg3OTkzNDY0NQTWAM8FKwQKAAAAAAAAAADJxhzBKQIAAAAAAABwQQAAAAAAAIA/AABwQQAAAAAhGHJieGFzc2V0aWQ6Ly8xMDg3NTQ4ODc4NCkCAAAAAAAAAAAAAAAAAACAPwAAgD8AAAAAAwAAAAAAAChAKQIAAAAAAABAQQAAAAAAAIA/AABAQQAAAAALAACgQAAAoEAhGHJieGFzc2V0aWQ6Ly8xMDY2OTE1NDA3OSkDAAAAAAAAAAAAAAAAUvAkP2Zmfj8AAAAAAACAPwAAgD8AAAAA'
..'AwAAAAAAAPC/IQtUcmFpbERlYnJpcwTjAM8FKwQhEENvbGxpc2lvbkdyb3VwSWQKN/ZIw/AjqEGijDbDCkAh6z8ArT8/AEFVPyEBMQTnAM8FKwQK6TNrP+SRaz4APIi+IQVUcmFpbCEGQkxBQ0syIQtBdHRhY2htZW50MCELQXR0YWNobWVudDEoAwAAAAD/VADsTSg/EgYAAACAPwAAACEKRmFjZUNhbWVyYSEYcmJ4YXNzZXRpZDovLzEwNzIzNzk5MDkxIQ1UZXh0dXJlTGVuZ3RoAwAAAAAAABhAIQtUZXh0dXJlTW9kZSkEAAAAAAAAgD8AAAAAzcxMPgAAAAAAAAAAHt9GPwAAAAAAAAAAAACAPwAAgD8AAAAAIQpXaWR0aFNjYWxlKQMAAAAAAACAPwAAAACJ6gE/MzNrPwAAAAAAAIA/ZmZOPwAAAAADAAAAAAAA0D8hGHJieGFzc2V0aWQ6Ly8xMDY3MzQxMTY1MwT4AM8FKwQKfqxmv3zxFT4AAIG+IQVBc2hlcwoAAAAAAACAvwAAAAAoAwAAAAD/VADsTSg/IAoAAACA'
..'PwAAABFmZiY/ZmYmPxEAAAzCAADIQREAAPDCAADwQikEAAAAAAAAAD8AAAAA2FwaPQAAQD8AAEA/s32QPgAAwD4AAMA+AACAPwAAAAAAAAAAEc3MzD3NzMw9CwAASEMAAEhDIRhyYnhhc3NldGlkOi8vMTA2ODI4NjQ4MDIpAwAAAAAAAIA/AAAAAM3MzD0AAAAAAAAAAAAAgD8AAAAAAAAAACEJRW1pdENvdW50AwAAAAAAgEFAIQZBc2hlczIKAAAAAM3MTD8AAAAAKAIAAAAA/1QAAACAPwAAACEYcmJ4YXNzZXRpZDovLzEwNjU3OTc5NDkyIQZBc2hlczMoAwAAAAD/VADY8Q8/HAkAAACAPwAAAAMAAAAAAAAgQBEAAEjDAABIQykDAAAAAAAAAAAAAAAASx/aPQAAYD8AAAAAAACAPwAAAAAAAAAACwAADEIAAAxCIRhyYnhhc3NldGlkOi8vMTA2NzI3NjEwNDApAwAAAAAAAAAAAAAAABFxMz8AAAAAAAAAAAAAgD8AAIA/AAAAACEJRW1pdERlbGF5IQZBc2hlczQpAwAA'
..'AAAAAAAAAAAAAGlX4T0AABA/AAAAAAAAgD8AAAAAAAAAACkDAAAAAAAAgD8AAAAAumvhPgAAoD4AAKA+AACAPwAAAAAAAAAAIQdFZmZlY3RzIQhIZWF2eUhpdAQZAc8FKwQK/xgww95JqUGwjwDDCgAAgD8AAIA/AACAPygCAAAAAP9UfgAAgD8AAAApBAAAAADNzEw9AAAAAAq4jD0AAKg/AAAAAAzmLz4AAAA+AAAAAAAAgD8AAAAAAAAAABEAAMhBAADIQSEDSGl0KAIAAAAA/6r/AACAP/+q/xHNzEw+MzOzPhEAAKDAAACgQCkEAAAAAAAAAAAAAAAANUUAPgAAID8AAAAA5PemPgAAWEAAAAAAAACAPwAAgEAAAAAACwAAoEAAAKDAIRhyYnhhc3NldGlkOi8vMTA4NDM2ODIxODUpBAAAAAAAAIA/AAAAAFbS2j4K8x4+AAAAAAAAQD/NzCQ/AAAAAAAAgD8AAIA/AAAAACgCAAAAAP3/eQAAgD//VP8RAAB6wwAAesMpBAAAAAAAAAAAAAAAAHxjCD4AAOA/AAAAAKNW4D4A'
..'AKJAAAAAAAAAgD8AAKBAAAAAACEYcmJ4YXNzZXRpZDovLzEwODQzMTAyODIxKQMAAAAAAACAPwAAAABw0QU/mplBPwAAAAAAAIA/AACAPwAAAAAoAwAAAAD/qv+HpkQ/GhEaAACAPwAAABFmZuY+ZmbmPiEYcmJ4YXNzZXRpZDovLzEwODIzODY0NTc1KQMAAAAAAAAAAAAAAABbC2M/AAAAAAAAAAAAAIA/AACAPwAAAAAoAgAAAAD/qv8AAIA/AAAAEWZm5j4AAIA/EQAAyMIAAH9DKQQAAAAAAAAAAAAAAADjVBs+AABwQAAAAACjVuA+AACiQAAAAAAAAIA/AACgQAAAAAARAAAAQQAAAEEpBAAAAAAAAIA/AAAAAKRSHD4AAAAAAAAAAFsLYz8AAAAAAAAAAAAAgD8AAIA/AAAAACkDAAAAAAAAAAAAAAAAzczMPQAAIEAAAAAAAACAPwAAIEAAAAAAIRhyYnhhc3NldGlkOi8vMTA4NDM3MDA5MTYpBAAAAAAAAIA/AAAAAOYfTT5mZgY/AAAAAESnAz/NzFQ/AAAAAAAAgD8A'
..'AIA/AAAAACEFU2hvY2sDAAAAAAAAWUARAABexAAAL0QpAwAAAAAAAAAAAAAAAGecVj4AAExAAAAAAAAAgD8AAJZAAAAAABFPVP07T1T9OwMAAADAzMzkPykDAAAAAAAAAAAAAAAAB3yWPgAAUD8AAAAAAACAPwAAgD8AAAAAKAMAAAAAVAD/jznfPgwAJAAAgD8AAAARzcxMPs3MTD8RAACvwwAAr8MpAwAAAAAAAAAAAAAAAKJF9j4AAJhAAAAAAAAAgD8AAMJAAAAAACEYcmJ4YXNzZXRpZDovLzEwNzY1NjA3NDE3KQYAAAAAAACAPwAAAADZB8k9AACgPgAAAABA2oc+zcxMPAAAAABW0to+CvMePgAAAAA1CUI/X5pqPwAAAAAAAIA/AACAPwAAAAAhDHNwYXJrcyBzbWFsbCgCAAAAAP9UfgAAgD//VH4RMzOzPpqZGT8DAAAAAAAASUApBQAAAAAAAAAAAAAAAD6Ayz0AAKg/AACoP5KWej4AABA/rwnZPs3MTD8AAAA+AAAAPgAAgD8AAAAAAAAAABEAAKBBAABcQgsAAPBC'
..'AADwwiEYcmJ4YXNzZXRpZDovLzEwODAyNDE1MTY0KQMAAAAAAAAAAAAAAACCkEw/AAAAAAAAAAAAAIA/AACAPwAAAAAKAAAAAAAAwMAAAAAAKQUAAAAAAAAAAAAAAABmv849AAC4PwAAuD+qRGk+AABAPwAAQD/NzEw/AAAAPgAAAD4AAIA/AAAAAAAAAAARAACgQQAAIEIhGHJieGFzc2V0aWQ6Ly8xMDYzNDc0MTI3OCEITGlnaHRIaXQEVAHPBSsECqs1LsMK8qlBxIoAwyEIQmlnU3RhcnMDAAAAAACAKkARAACAPs3MDD8DAAAAoJmZ2T8pBgAAAAAbnoo/wCXgPkP1oD0AACBBAAAAAKc7fz4AAFRAB30pPu31/j4AABA/zAnaPa9gTz8lkQ0+qn4FPQAAgD8AAAAAAAAAACkEAAAAAAAAgD8AAAAAzAfkPgAAAAAAAAAAiZVlPwAAAAAAAAAAAACAP/G9dz8AAAAAKQMAAAAAAAAAAAAAAAD0/ZQ+9ig8QAAAAAAAAIA/AAA8QAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDg0MzEy'
..'NDc2MykDAAAAAAAAAAAAAAAAWoH5PjMzSz8zM1M+AACAPwAAgD8AAAAAETMzsz4AAAA/KQQAAAAAAAAAAAAAAAD0/dQ9AAAAPwAAAD/NzEw/AAAAPgAAAD4AAIA/AAAAAAAAAAAhC0JvbWJQbGFudGVkBGIBzwUrBArx+ivDPCWpQWiIAMME0QXPBdIFCgAAtMIAAACAAAAAACEIU3BlY3MgMjAKAAAAAAAAcMEAAAAAAwAAAAAAABBAEc3MzD5mZmY/KQMAAAAAAAAAAAAAAACDotk9AAAAPwAAAD8AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDc2NjAzMzY3OQMAAAAAAADoPxGamZk/mpmZPygDAAAAAP9Ufo853z4MACQAAIA/AAAAETMzsz4zMzM/KQUAAAAAAAAAAAAAAACfAcU9AADAPwAAwD/KF3Q+AADAPgAAwD7NzEw/AAAAPgAAAD4AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDgwMjQ5NjA4MCgDAAAAAP9UfjeK5D7/VAAAAIA/AAAAEc3MTD4AAABA'
..'KQMAAAAAAAAAAAAAAADJdj4+FK5XQAAAAAAAAIA/AABYQAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDg0NzY3ODAyOSgCAAAAAFQA/wAAgD9UAP8pAwAAAAAAAAAAAAAAADnSST4AAIxAAAAAAAAAgD8AAKZAAAAAACEYcmJ4YXNzZXRpZDovLzEwODQ3MzA1MDUwKQMAAAAAAACAPwAAAAAAAEA/zcwkPwAAAAAAAIA/AACAPwAAAAARKVwPPylcDz8hBlN3aXJscxEAAHpEAAB6RBEAADTDAAA0QykEAAAAAAAANEAAAAAAsDdBPgAAoD8AAAAASUv9PgAAQD4AAAAAAACAPwAAAAAAAAAAEcH4BTvB+AU7IRhyYnhhc3NldGlkOi8vMTA4NDM2ODE2MDUoAgAAAAD/AAAAAIA/AAAAKQIAAAAAAAAAQAAAAAAAAIA/AAAAQAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDg0MzY3OTY1OBEAAEjDAABIwyEYcmJ4YXNzZXRpZDovLzEwODAyNDc5ODQ1ETMzsz4AAIA/KQUAAAAAAAAAAAAAAAC4'
..'x6c9AAAwPwAAMD/KF3Q+AADAPgAAwD7NzEw/AAAAPgAAAD4AAIA/AAAAAAAAAAARAACgQQAAlkIhGHJieGFzc2V0aWQ6Ly8xMDg0NDMzNDE5MigGAAAAAP8AflT9oj7/VH7S4eE+/1QAyXUbP1QA/7jLWj8RADoAAIA/AAAAEWZm5j6amZk/AwAAAKCZmbm/EQAAIMAAACDAKQQAAAAAAAAYQAAAAABB8s49AACwPwAAsD/8iWo+AAAgQAAAAAAAAIA/AAAUQAAAAAARAABcQgAAlkIhK2h0dHA6Ly93d3cucm9ibG94LmNvbS9hc3NldC8/aWQ9MTA4NTIwNzk0MjUpBQAAAAAAAIA/AAAAAKSlcjwAAAAAAAAAAGYVHj8AAAAAAAAAAC2Vaz8zM4M+AAAAAAAAgD8AAIA/AAAAAAMAAAAgXI/6PyEDQXJtBJQBzwUrBApPJkLDRrCnQTyaHsMKgOFDPzDCIj8ALCg/BJcBzwUrBAo/Nd4+x0s3vgrXo7shBlRyYWlsMSgCAAAAAP8ABAAAgD//O1QEmwHPBSsECgCH6b6PSze+AACk'
..'uyEGU3RhcnMxKAIAAAAAVKr/AACAPw0E/ykEAAAAABueij/AJeA+SJScPQAAMD/p8Ws+0xXsPgAAB0EAAAAAAACAPwAAIEEAAAAAIRhyYnhhc3NldGlkOi8vMTA3MDY1MjcxNjkpAwAAAAAAAIA/AAAAAJ0u+z7CM30/AAAAAAAAgD8AAIA/AAAAACEGU3RhcnMyKAIAAAAAMWD/AACAP1Sq/xFmZiY/AAAAQBEAAMjBAADIQSkCAAAAAAAAoD8AAKA/AACAPwAAAAAAAAAAIRhyYnhhc3NldGlkOi8vMTA3MTI1OTcxNTIpAwAAAAAAAIA/AAAAAO+RzT2MDzM8AAAAAAAAgD8AAAAAAAAAACEGU3RhcnM0CgAAAAAAAKDAAAAAABFmZiY/AADAPykDAAAAABueij/AJeA+Mie+PQAA4D7p8Ws+AACAPwAAAAAAAAAAIRhyYnhhc3NldGlkOi8vMTA3MTIzNjczOTAhBVBsYW50B/kDBLIB0AUrBAb/qgAKAAAAAAAAtMIAAAAACvNsGcPQSDM/fr94wyEFR2xvdzEoAgAAAAD/dxcA'
..'AIA//3cXAwAAAEAzM8M/KQIAAAAAAACAQAAAAAAAAIA/AACAQAAAAAARAAAAAAAAAAAhK2h0dHA6Ly93d3cucm9ibG94LmNvbS9hc3NldC8/aWQ9MTA4NDMwODY0MTkpBAAAAABmZnY/AAAAAOYfTT4AAHg/AAAAAOeptj5mZpY+AAAAAAAAgD8AAIA/AAAAACEETGluZRHNzEw+zcxMPikEAAAAABzT3z8AAAAASmLRPnLepz4AAAAA8bhMPwAAAAAAAAAAAACAPwAAAAAAAAAAEW8SgzpvEoM6ISpodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTY4NjUyMjI5NTcpBAAAAAAAAAAAAAAAACpTFD8AAAAAAAAAAO4/Qj9mZmY/AAAAAAAAgD8AAIA/AAAAACEFTGluZTIpBgAAAAAAAIBAAAAAAM3MTD42yPA/AAAAAM3MzD6qK5M/AAAAAJqZGT+cxSs/AAAAAM3MTD+/0Z4+AAAAAAAAgD8AAAAAAAAAACEFTGluZTMoAgAAAAD/VP8AAIA//1T/EWZm5j7NzEw/EQAA'
..'r8MAAK9DKQQAAAAAAACgQAAAAAA3/F4+AADYPwAAAABbC+M+AAAgPwAAAAAAAIA/AAAAAAAAAAAhK2h0dHA6Ly93d3cucm9ibG94LmNvbS9hc3NldC8/aWQ9MTA4NDM0NjYwMTkRAABIRAAASEQpBAAAAAAAAPpAAAAAAJS+ID4AAIxAAAAAAD3vtj4AAMA/AAAAAAAAgD8AAAAAAAAAACEYcmJ4YXNzZXRpZDovLzEwNzYyOTYyMzM2IQdDaXJjbGUzEZqZmT4zMzM/EQAAtMMAAIJDKQIAAAAAAABAQAAAAAAAAIA/AABAQAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDc4MjQ1MjM5MykEAAAAAAAAsD4AAAAA6+ZiPjMz8z4AAAAAhCs0P83MbD8AAAAAAACAPwAAgD8AAAAAIQdDaXJjbGUyKQIAAAAAAADAPwAAAAAAAIA/AADAPwAAAAAhGHJieGFzc2V0aWQ6Ly8xMDc2NTk4NDU1MyEFV2F2ZXMRAACAPgAAAD8pAwAAAAAAAAAAAAAAADscTT4AANA/AAAAAAAAgD8AAFRAAAAA'
..'ACEraHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD0xMDQ0NTU1MzE4NCkDAAAAAAAAAAAAAAAAiUMmPs3MbD8AAAAAAACAPwAAgD8AAAAAIQRSYXlzIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTEwNzc1ODgxOTUyKQQAAAAAAACAPwAAAADdYUM+AAAAAAAAAAD+YQM/zcxEPwAAAAAAAIA/AACAPwAAAAAhB0NpcmNsZTEhGHJieGFzc2V0aWQ6Ly8xMDgwMjQ1MDQ2NCkEAAAAAAAAgD8AAAAAQ1ilPpqZYT8AAAAAhCs0P83MbD8AAAAAAACAPwAAgD8AAAAAIQtDb3NtaWNTdGFycygFAAAAAP9UADeK5D7/VACqKTE//1T/qn5RP0sYSwAAgD8AAAADAAAAAAAABEADAAAAQDMz0z8pBAAAAAAAAAA+AAAAPtxtvT0AAEA+AABAPpxPtT4AAAA+AAAAPgAAgD8AAAAAAAAAACEYcmJ4YXNzZXRpZDovLzEwNjU2NTg4NDM0IQhEZXRvbmF0ZQToAdMF'
..'KwQKAAAAAAAANEMAAAAAClcQJsNMsKdBMhM+wwoAADTDAAAAAAAANMMpAgAAAADNzEw9AAAAAAAAgD8AAAAAAAAAABEAAHBBAABwQSgCAAAAAP9U/wAAgD8AAAApAgAAAADNzMw9AAAAAAAAgD8AAAAAAAAAACEFU3RhcnMoAwAAAAD/VH6+MCk/IQsQAACAPwAAACkFAAAAABueij/AJeA+SJScPQAAMD/p8Ws+7fX+PgAAED/MCdo9r2BPPyWRDT6qfgU9AACAPwAAAAAAAAAAKQQAAAAAAACAPwAAAADMB+Q+AAAAAAAAAAA4EHI/AAAAAAAAAAAAAIA/8b13PwAAAAAE8wHPBSsECgAAAADgeiI+AAAAACkDAAAAAAAAAAAAAAAABFYOPuxRuD8AAAAAAACAPwAAuD8AAAAAKAMAAAAA/1R+yXUbPxoIDQAAgD8AAAADAAAAoJmZuT8pAgAAAAAAACBAAAAAAAAAgD8AACBAAAAAACEraHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD0xMDg0NDI0Nzc5MSkFAAAAAAAA'
..'gD8AAAAAjPb4PQAAAAAAAAAA6EzCPmZmNj8AAAAAhCs0P83MbD8AAAAAAACAPwAAgD8AAAAAKQUAAAAAAADwPwAAAACl9Jw9AABgPwAAAADufD8+16PwPwAAAADxZwA/AADIPwAAAAAAAIA/16PwPwAAAAAhGHJieGFzc2V0aWQ6Ly8xMDg0NDMxMzE2NSkDAAAAAAAAAAAAAAAAW3wqPgAAuD8AAAAAAACAPwAAwD8AAAAAIRhyYnhhc3NldGlkOi8vMTA4NDM3ODg2ODQpBAAAAAAAALA+AAAAAINSnD4AAAAAAAAAAIQrND/NzGw/AAAAAAAAgD8AAIA/AAAAACgDAAAAAP9UfouHBz//ZZcAAIA//6r/KQQAAAAAAACAPwAAAADMB+Q+AAAAAAAAAAAwumg/MzMzPwAAAAAAAIA/8b13PwAAAAAhGHJieGFzc2V0aWQ6Ly8xMDgxNjY5NzgzNCgDAAAAAP9Ufj9yHz8YCAwAAIA/AAAAEc3MDD/NzAw/IRhyYnhhc3NldGlkOi8vMTA4NDQzNDcyODYhBURvbnV0B0gBBAoC0gUr'
..'BAax5aYKAAAAAAAAtEIAAAAACh9BH8M+JalBjyz4wgqZmbk/AACAP4Cj0z8E0QXSBSsEIQVibG9vZAoAAAAAAAAgwgAAAAAoAgAAAABCAAEAAIA/QgABEc3MTD7NzMw+AwAAAAAAAG5AEQAAmEEAAJhBKQIAAAAAAADwPwAA8D8AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDg0NDM4MzI4OCkEAAAAAAAAgD8AAAAAApXWPAAAAAAAAAAAElBNPwAAAAAAAAAAAACAPwAAgD8AAAAAAwAAAGBmZvY/KAIAAAAAVAAAAACAP1QAACkFAAAAAAAAAAAAAAAAIHnnPQAACEAAAAA+F9mmPgAAED8oDMI+zcxMPwAAAD4AAAA+AACAPwAAAAAAAAAAEQAAoEEAAPpCIRdyYnhhc3NldGlkOi8vODA4NTkwMDA0MyEGYmxvb2QyKAIAAAAA/wAAAACAP/8AACEYcmJ4YXNzZXRpZDovLzEwODQ0MzgxOTI5IQVMb25nMikGAAAAAAAAAAAAAAAAe91iPqnbNT8AAAAAwXKMPgAAIEEA'
..'AAAAyO/NPgAAYEAAAAAA2SESPwAAUD8AAAAAAACAPwAAAAAAAAAAIRhyYnhhc3NldGlkOi8vMTA4NDQzNDA4MjIpBQAAAAAAAAAAAAAAAJqZGT8AAAAAAAAAAKHYKj8AAAA/AAAAAKTDTz9mZlY/AAAAAAAAgD8AAIA/AAAAACEFU2xhc2gRzcxMPpqZGT8pBAAAAAAAAAAAAAAAANUGRz4AAGA/LEkSP0DcET8AAIA+AACAPgAAgD8AAAAAAAAAABEAACBBAAAgQRHNzEw+AAAAPyEYcmJ4YXNzZXRpZDovLzEwNzI3NzEyOTU3IQhHdW4gc2hvdBHNzEw9mpmZPhEAAIdDAACHQykDAAAAAAAAAAAAAAAAFM9JP+VhlkAAAAAAAACAPwAAwD4AAAAAEQAASEIAAEhCIRhyYnhhc3NldGlkOi8vMTA4NDQzNTA3OTApBwAAAAAAAAAAAAAAAKX0nD0AAAA9AAAAAJoiwD4AAAAAAAAAAJmEAz8AAIA/AAAAAEYKNT8AAIA/AAAAAPzeZj+6a2U/AAAAAAAAgD8AAIA/AAAAABHNzMw+'
..'zcxMPykGAAAAAAAAAAAAAAAA5zpNPgAArEAAAAAAEXGzPgAArEAAAAAALJ3vPgAAZEAAAAAA2SESPwAAUD8AAAAAAACAPwAAAAAAAAAAIRhyYnhhc3NldGlkOi8vMTAxNzYxMTAwNjIhCU9ubHlEb3RzMxEzMzM/MzMzPxEAAPrCAABIQykDAAAAAAAAAD8AAAA/MQmPPrpn3T26Z909AACAPwAAAAAAAAAAEQAANMIAADTCCwAANEMAAAAAIQlPbmx5RG90czIhGHJieGFzc2V0aWQ6Ly8xMDc2NjI5NTAzOSEGU2hvY2syIRhyYnhhc3NldGlkOi8vMTA3NzY3OTAxNDQpBAAAAAAAAAAAAAAAAAd8lj4AAFA/AAAAAM7iZT8AAGA/AAAAAAAAgD8AAIA/AAAAACEEc2hvdBHsUbg97FG4PSEraHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD0xMDQ5MzU3MjMxNCkGAAAAAAAAgD8AAAAAGlDPPQAAAAAAAAAAmPYBPwAAAAAAAAAA2T5IP/ZFIj4AAAAA/N5mP7prZT8A'
..'AAAAAACAPwAAgD8AAAAAIQVzaG90MiEJT25seURvdHMxCwAAAAAAADTDIRhyYnhhc3NldGlkOi8vMTA3NTM2MDk4MTYhDXNwYXJrcyBzbWFsbDEpAgAAAADNzMw9zczMPQAAgD8AAAAAAAAAACEYcmJ4YXNzZXRpZDovLzEwNzc2NDc3NDQ2IQ1zcGFya3Mgc21hbGwyKQYAAAAAAAAAAAAAAACJ7MM9AAAcQAAAAD6HToc+AADIPygMwj7P9vg+AACgPgAAoD7NzEw/AAAAPgAAAD4AAIA/AAAAAAAAAAAhDXNwYXJrcyBzbWFsbDMhDXNwYXJrcyBzbWFsbDQhCEJsb29kSGl0BE4C0gUrBApXYUnDPCXRQQKiMMMKAACAQAAAgD8AAABAKQQAAAAAAABQPwAAUD8m/DI+AACoP+dyJz+J6sU+AADAPgAAwD4AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDkwNDc0NTM5OSkFAAAAAAAAgD8AAAAAxli8PQAAAAAAAAAADfpCPwAAAAAAAAAAS+haPzMzEz8AAAAAAACAPwAA'
..'gD8AAAAAKQUAAAAAAAAAAAAAAADKmrI9AACAPwAAgD9hjXM+AABQPwAAwD7NzEw/AAAAPgAAAD4AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDg5MTUwMzAwMxEAgLHDAMAKRCEEQml0cxEAAIA+63MtPwMAAAAAAMBSQCkEAAAAAATkCz9R3qc+PgMKPgAAEEAAABBA1v2jPgAAoD4AAKA+AACAPwAAAAAAAAAAEQAA8EEAAPBBIQ5FeHBsb3Npb25TbW9rZQoAAAAAAAA0QgAAAAAoAwAAAACVjIAjg+w+ERAPAACAPwAAAAsAAPBCAAAAACEYcmJ4YXNzZXRpZDovLzEwNzEyNjExMTk4KQQAAAAAAACAPwAAAAAxmD8+MzNLPwAAAABpj88+mplxPwAAAAAAAIA/AACAPwAAAAAhBUJsb29kKQIAAAAAAACgQAAAAAAAAIA/AACgQAAAAAApBwAAAAAAAAAAAAAAANEeHz8AAAAAAAAAALxYPD+amRk9AAAAAHstTD+amYk+AAAAAOT3Zj9mZjY/AAAAABBddD/NzGQ/AAAA'
..'AAAAgD8AAIA/AAAAACkCAAAAAAAAQD4AAEA+AACAPwAAAAAAAAAAIQ5RdWFkQm9tYkZpbmlzaAfrAwRsAtMFKwQGERERIQtMZWZ0U3VyZmFjZSEITWF0ZXJpYWwDAAAAAABAlEAKF5oow/4SGkGSvi/DIQxSaWdodFN1cmZhY2UKAAAAQAAAAEAAAIA/KQQAAAAAAAAAAAAAAACXY4g9AADYPwAA2D9TPwM/AAAAPgAAAD4AAIA/AAAAAAAAAAARAAD6wgAA+kIpBAAAAAAAAAAAAAAAAIwmYTwAALA/AAAAAKKz1D4AACA/AAAAAAAAgD8AAAAAAAAAACEYcmJ4YXNzZXRpZDovLzEwOTU0NzMwNjY1AwAAAAAAQFBAKAMAAAAA/2IaIHtVPygPBAAAgD8AAAARmpkZP5qZGT8RAADIQQAAXEIoAwAAAAD/OAWbrTw/MgsBAACAPwAAACkCAAAAAAAAAD8AAAAAAACAPwAAAAAAAAAAKAIAAAAA/1YUAACAPwAAACkEAAAAAAAAAAAAAAAAFQcrPQAAUD8AAFA/Uz8DPwAAAD4AAAA+'
..'AACAPwAAAAAAAAAAAwAAAAAAADRAKQQAAAAAAAAAAAAAAAABi5c8AADYPwAAuD+MFOo+AACAPgAAgD4AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDkyOTQ3Njg0NCgDAAAAAP9UAOPhYT8NBAAAAIA/AAAAKQQAAAAAAAAAAAAAAADzgr48AAC4PwAAuD+Eg9U+AACAPgAAgD4AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDk1NDE1ODMzOREAALTCAAC0wiEYcmJ4YXNzZXRpZDovLzEwOTU0MTYzNjk3IQZGbGFyZTEpAwAAAAAAAPA/AAAAAFA1ej4DCU9BAAAAAAAAgD+Rfk9BAAAAACEYcmJ4YXNzZXRpZDovLzEwNzc2NDcwNTIxIQZGbGFyZTQhGHJieGFzc2V0aWQ6Ly8xMDkyOTQ0ODk3MQMAAABgZmbmPykDAAAAAAAAAAAAAAAA8KJLP5qZiT4AAAAAAACAPwAAgD8AAAAAKAMAAAAA/1QAX5hUPxoIAAAAgD8AAAAhGHJieGFzc2V0aWQ6Ly8xMDc2NjI4'
..'NDc5MREAAIA+AAAAQCkEAAAAAAAAcEEAAAAAZK4MPvYoaEEAAAAAk6oNPwrXE0AAAAAAAACAPwAAAAAAAAAAEQAAXEIAAFxCAwAAAKCZmQFAIQlUaHJvd01pbmUhC0JhY2tTdXJmYWNlBJQCzwUrBCEMRnJvbnRTdXJmYWNlCknuJMNGJbFBLAg/wwqn7eA/AACAP/R0RD8ElwLPBSsECgAAAADQJhC+6htOuygCAAAAAP8A9QAAgD//APUpBAAAAAAAABBAwCXgPu31/j4AABA/zAnaPa9gTz8lkQ0+qn4FPQAAgD8AAAAAAAAAABEAACBCAAAgQiEraHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD0xMDk3NjQ3MjcwNCgDAAAAAP8A7ZKWFj82ADMAAIA/AAAAEQAAyEEAAJZCIQREb3RzKAMAAAAA/wDcjNwnPzsAOQAAgD8AAAARAAD6wgAAf0MpAwAAAAAAAOA+AAAAAHWTGD72KJRAAAAAAAAAgD8AAJRAAAAAACEYcmJ4YXNzZXRpZDovLzEwNjU3NzA1NzY2KQMA'
..'AAAAAAAAAAAAAAAyk+A+AAAAAAAAAAAAAIA/8b13PwAAAAAoAwAAAAD/AN/B4gA/PwA5AACAPwAAACEYcmJ4YXNzZXRpZDovLzEwOTcxMjMyMjQ4KAMAAAAA/wDGVP0iPykAIwAAgD8AAAApAgAAAAAAAGBAAAAAAAAAgD8AAGBAAAAAACEYcmJ4YXNzZXRpZDovLzEwNjU3ODQyNDk0KQQAAAAAAAAAAAAAAAAyk+A+AAAAAAAAAAD2t1g/AAA4PwAAAAAAAIA/8b13PwAAAAAhB1dhcm5pbmcErALPBSsECq7CkMIY1lbAAdGfwyELRXhjbGFtYXRpb24hBCEoMikoAgAAAAD/XUIAAIA//11CIQQhKDEpKAIAAAAA/1tPAACAP/9bTxEAACDBAAAgQSkCAAAAAM3MzD4AAAAAAACAP83MzD4AAAAAIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTEwODQzMTE3NTYyKQYAAAAAAACAPwAAAABbfCo+MzMzPgAAAAC3Kpk+zcw8PwAAAAB2/+g+mplZPgAAAAA3xEA/'
..'AAAAAAAAAAAAAIA/AACAPwAAAAAhCURvbnV0UHVsbAS4AtIFKwQKiYkYwz4lqUHirzrDIQlNb3JlQmxvb2QRzcxMPgAAgD8KAAAAAAAAAAAAAKBAIQVEZWF0aAS+As8FKwQKQ5cSw2I5tkFuskPDCoDx5D8ioYhAAAAAQAMAAAAAAAAcQBEAAH/DAAD6QikEAAAAAAAAAAAAAAAA2tlBPQAAID8AACA/Me2DPpX/fz2V/389AACAPwAAAAAAAAAAIRhyYnhhc3NldGlkOi8vMTA3MTgxMDMzMDMKAAAAAAAAAD8AAAAAEc3MDD8AAABAEc3MDD8zMxNAIRhyYnhhc3NldGlkOi8vMTA2ODI4NjI4NzQRzcwMPwAAIEAKAAAAAAAAIMEAAAAAKQQAAAAAAAAAAAAAAADa2UE9AAAgPwAAID8x7YM+AADAPgAAwD4AAIA/AAAAAAAAAAAhCU1pbmVUb3VjaATNAs8FKwQKLwAfw4JYpUHo+TPDCgBFLUBvEoM6OLETQCEFQml0czIoAgAAAAD/VAAAAIA//wAAEQAAgD4zM7M+KQIAAAAA'
..'BOQLP1Hepz4AAIA/AAAAAAAAAAADAAAAAAAAMEApAgAAAAAAAIA/AAAAAAAAgD8AAAAAAAAAAAsAADRCAAA0QhEAgLHDAAD6QikDAAAAAAAAAAAAAAAAwcohPgAAAEAAAAAAAACAPwAAAEAAAAAAIQVCaXRzMREzM7M+AADAQCEFTW9kZWwhBE1pbmUhC1ByaW1hcnlQYXJ0IQpXb3JsZFBpdm90BNQFzwUrBCEITWVzaFBhcnQhBEJvbWIHNwEE5QLPBSsEBp+hrAMAAAAAAACRQAoHrS/D3CtLQVi/G8MKAADAPwAAwD8AAMA/IQZNZXNoSWQhFXJieGFzc2V0aWQ6Ly8xMTk1NDc3NiEITWVzaFNpemUKAABgQAAAYEAAAGBAIQlUZXh0dXJlSUQhFXJieGFzc2V0aWQ6Ly8xMTk1NDc2NiELUGxhbnRBdHRhY2gE7wLPBSsECgAAQD8AWlO9AJinPSgDAAAAAP8AJ5610z7/LC4AAIA//0VQAwAAAGBmZtY/IQZUcmFpbDIoAwAAAAD/AAfhCDY/MAADAACAPwAAACEKVHJhaWwz'
..'bWFyaygCAAAAAP8ACwAAgD//AAshGHJieGFzc2V0aWQ6Ly8xMDcxMzY5NTk4OCkDAAAAAAAAQD8AAAAAieoBPzMzaz8AAAAAAACAP2ZmJj4AAAAABPkCzwUrBAoAAEC/AP4UvQAAgzwpAwAAAAAAAAAAAAAAAI0uuj0AAEA+AABAPgAAgD8AAAAAAAAAACEHTWluZVNIQQTVBdMFKwQhCEh1bWFub2lkIRdBdXRvbWF0aWNTY2FsaW5nRW5hYmxlZCETRGlzcGxheURpc3RhbmNlVHlwZSEJSGlwSGVpZ2h0IQlKdW1wUG93ZXIhCVdhbGtTcGVlZCEIQW5pbWF0b3IhEEh1bWFub2lkUm9vdFBhcnQEBwPTBSsEAwAAAAAAwJBAChaWHsNEOapBdJI5wwopXL8/2oCiP57vlz8hB01vdG9yNkQhBVRvcnNvIQVQYXJ0MCEFUGFydDEhBEhlYWQhAkMwBNYFzwXQBQQSA9MF0gUKAAC0QgAANEMAAAAACvuVHsNDOKpBa5I5wwoAALRCAAAAAAAANMMKAAAAPwAAAD8AAAA/IQtTcGVj'
..'aWFsTWVzaCEFU2NhbGUKmpmZPpqZmT6amZk+IQlUZXh0dXJlSWQhCE1lc2hUeXBlBBsDzwUrBAoAODA/AICyvgAgBj8hC0F0dGFjaG1lbnQyBB4DzwUrBAoAgzC/AICyvgAgBj8hF3JieGFzc2V0aWQ6Ly82OTUyMDUzMjE3IQZTdW1tb24oAgAAAAD/AMgAAIA//wDIEc3MDD/henQ/KQQAAAAAAAAwPwAAAADhQSM+AADIP5X/fz3QJ+o+AABAPlo6NT0AAIA/AAAAAAAAAAAhGHJieGFzc2V0aWQ6Ly8xMDU1ODIwNDM3MAMzMzMzMzPDPxEAAIA+AADAPykEAAAAAAAAAAAAAAAAqMZLPjMzMz8zMzM/PggNP2/T3z1v0989AACAPwAAAAAAAAAAEQAAoEEAAKBBIRhyYnhhc3NldGlkOi8vMTA3ODI0NTM1ODkDAAAAAAAAIUApBAAAAAAAAAAAAAAAAKKypj0AACBBAAAAAGB00T4AAIA+AACAPgAAgD8AAAAAAAAAACEYcmJ4YXNzZXRpZDovLzEwODI3NDg4Mjk1KQMAAAAA'
..'AAAAAAAAAAA3xEA/AAAAAAAAAAAAAIA/AACAPwAAAAAhBUZsYXJlIRhyYnhhc3NldGlkOi8vMTA4MDI0OTQ4OTIoAwAAAABUAP/vVT8/HBwcAACAPwAAACEYcmJ4YXNzZXRpZDovLzEwODA1NDYwMDgwIQZOb3RpY2UhBVdoYXQxIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTEwODQzMTU5NTQ1IQVXaGF0MiELV2hlZWwgUmlnaHQEOAPPBSsECgDU9D4ABrs+Ozi4PigDAAAAAEtLSyUG2T4QEBAAAIA/AAAAKQIAAAAA7FG4PQAAAAAAAIA/AAAAAAAAAAAEPAPPBSsECgB7Ab8ABrs+Ozi4PiEQRXhwbG9zaW9uU3RhcnR1cAQ/A88FKwQKAAAAAAAQOL4AAAAAIQVHbG93MikEAAAAAAAAAAAAAAAATVFKPv//rz8zMzM/PggNP2/T3z1v0989AACAPwAAAAAAAAAAIQRHbG93KQIAAAAAAAAAPwAAAAAAAIA/AAAAPwAAAAAoAgAAAACWAAAAAIA/lgAAAwAA'
..'AKCZmck/IQVHbG93MygCAAAAAEsAAAAAgD9LAAApAgAAAABI4Xo/AAAAAAAAgD9I4Xo/AAAAAAMAAABA4XqEPyEFU291bmQhCVBsYWNlbWVudCESUm9sbE9mZk1heERpc3RhbmNlIRJSb2xsT2ZmTWluRGlzdGFuY2UhC1JvbGxPZmZNb2RlIQdTb3VuZElkIRdyYnhhc3NldGlkOi8vNjQzMTA1Njc0NSECVkwhF3JieGFzc2V0aWQ6Ly82NDMxMDU3MzgxIQZWb2x1bWUDAAAAAAAA+D8hBk1vdmluZyEGTG9vcGVkIRdyYnhhc3NldGlkOi8vNjc0MTQ5NDE3NiEJU3RhbmRBdXJhKAIAAAAA/wDnAACAP/8A5xEAACDCAAAgQiEXcmJ4YXNzZXRpZDovLzEwNzU4NjQzMjEpBAAAAAAAAIA/AAAAAIqScD6gOFA/AAAAAD0MGT8AAHg/AAAAAAAAgD8AAIA/AAAAACEFYmVhbTEEXwPPBSsECgAQAz32TqM/AAAAACEEQmVhbSEFQmVhbTEhGHJieGFzc2V0aWQ6Ly8xMDc2NTYz'
..'MDMzOCEMVGV4dHVyZVNwZWVkKQUAAAAAAACAPwAAAAAHBys+AACAPwAAAACjPb4+MzMbPwAAAADmrWY/AAAAAAAAAAAAAIA/AACAPwAAAAAhBldpZHRoMCEGV2lkdGgxIRhyYnhhc3NldGlkOi8vMTA3NjYwNjQwMTMDAAAAAAAAAMApBAAAAAAAAIA/AAAAABwIWT4AAFg/AAAAANTV/T6amRk/AAAAAAAAgD8AAAAAAAAAACgCAAAAAP8A3AAAgD//ANwhGHJieGFzc2V0aWQ6Ly8xMDc2NjA1ODQ1NwMAAAAAAAAIwCkFAAAAAAAAgD8AAAAAEyk9Ps3MfD8AAAAAVRijPgAAoD4AAAAA0QRaPwAAAAAAAAAAAACAPwAAgD8AAAAAIRhyYnhhc3NldGlkOi8vMTA3NjYwNTU0OTUDAAAAAAAAEMApBQAAAAAAAIA/AAAAAJoiQD4AAIA/AAAAADboCz+amVE/AAAAAPhuKz8AAAAAAAAAAAAAgD8AAIA/AAAAACEFYmVhbTIEcwPPBSsECgDzxz84q4y9AAAAACEFYmVhbTMEdgPP'
..'BSsECkDMgD+KnnQ/AAAAACEFYmVhbTQEeQPPBSsECgDGmb8GCiw/AAAAACgCAAAAAP8A4QAAgD//AOEhC01haW4gSG9sZGVyBH0DzwUrBAoAl4a+iNHSvgCcoT0oAgAAAAD/gwcAAIA//4MHKQMAAAAAAADwPwAAAAA6kss9AADAQAAAAAAAAIA/AADUQAAAAAAhCkV4cGxvc2lvbjIRAAAvQwAAL0MpAwAAAAAAAAAAAAAAAAq4jD0AAMA+AAAAAAAAgD8AAAAAAAAAACEYcmJ4YXNzZXRpZDovLzEwODAyNDY3ODk3IQZEdW5EdW4hFXJieGFzc2V0aWQ6Ly8xMTk4NDI1NCELQmFycmFnZUFybXMhDlN0YW5kIExlZnQgQXJtB/QDBIwDzwUrBCEIQ2FuVG91Y2gGOFivCgZpkkMu4TnCOAz1QwoAAIA/AAAAQAAAgD8oAgAAAAAaKjQAAIA/Gio0IQFiBJEDzwUrBAoIAAC/ff9/vwsAAD8hAWEElAPPBSsECgQAAL99/3+/4///viEPVHJhaWxBdHRhY2htZW50BJcDzwUrBAoA'
..'AAAAXKpiv0CtHT8hCkJhY2tncml1bmQoAgAAAACofM0AAIA/qHzNIRdyYnhhc3NldGlkOi8vOTk5NTg4OTgzMyEYcmJ4YXNzZXRpZDovLzEwNjE5NDA3NTM1IQJCRyEJTWluTGVuZ3RoIRdyYnhhc3NldGlkOi8vMTI2MzA3OTI0OQMAAAAAAABUQCkEAAAAAAAAAAAAAAAA0GO8PgAAMD8AAAAAa7omPzMzYz8AAAAAAACAPwAAgD8AAAAAKQMAAAAAAACAPwAAAACnBw0/ZmZGPwAAAAAAAIA/AAAAAAAAAAAhF3JieGFzc2V0aWQ6Ly85NTE4NzAzNjgzIRhyYnhhc3NldGlkOi8vMTA2MTkzNDYwMjgpAwAAAAAAAIA/AAAAAPT8DT8AAIA/AAAAAAAAgD8AAAAAAAAAAASmA88FKwQKAAAAABjLY7+AT36/IQRXZWxkISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjAzMwTXBdMFKwQhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDQ4'
..'BNgF0wUrBCEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wNDkE2QXTBSsEISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjA1MATaBdMFKwQhJ01lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX1RvcnVzLjAwMwTbBdMFKwQhJ01lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX1RvcnVzLjAwNgTcBdMFKwQhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDMyBN0F0wUrBCEMTGVmdEFybU1vZGVsBN4F0wUrBAS6A9MFKwQDAAAAAAAAckAKfgySQ07pOsIaCvVDCqxsRz/R7dE/zgVWPyEYcmJ4YXNzZXRpZDovLzExNTcxNzM4MTUyIQRCYWNrIQRGYWNlIQZDb2xvcjMGS0tLIRhyYnhhc3NldGlkOi8vMTE1NzE3NTU4ODAhDVN0dWRzUGVyVGlsZVUhDVN0dWRzUGVyVGlsZVYhBUZyb250IQZib3R0b20h'
..'A3RvcCEEbGVmdCEFcmlnaHQEygPTBSsECpQ4kkMunDXCyw71QwowVao/MlWqP+RPzT8hGHJieGFzc2V0aWQ6Ly8xMTU3MTczNTM0MQTOA9MFKwQKlDiSQy+cNcLLDvVDCiZVkT8mVZE/cCSMPyEYcmJ4YXNzZXRpZDovLzExNTcxNzQyNjk3BNMD0wUrBAMAAAAAAICYQArOa5JDmgM4wp0K9UMKkPCrPwivWj+siZA/IRhyYnhhc3NldGlkOi8vMTE1NzE3NDA5OTAH7AME2QPTBSsEBv8AAAqWbpJD5o46wp0K9UMKMNR/Pzw88T8AkXk/IRhyYnhhc3NldGlkOi8vMTE1NzE3MzgyNzkGsQAjBN4D0wUrBAp8bpJDQGw7wp0K9UMKovKvPyDcGj7Gy60/IRhyYnhhc3NldGlkOi8vMTE1NzE3NDExMjQE4gPTBSsECpxukkMPRTzCnQr1QwoIWbk/3hp+P6Cmtz8hGHJieGFzc2V0aWQ6Ly8xMTU3MTc0MTMzOCEPU3RhbmQgUmlnaHQgQXJtBwgEBOkDzwUrBAb/NacKBumTQy7h'
..'OcI4DPVDBOsDzwUrBArL//8+ff9/vw8AAD8E7QPPBSsECtP//z59/3+/2f//viEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wNDQE3wXTBSsEISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjA0NgTgBdMFKwQhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDQ3BOEF0wUrBCEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wNTYE4gXTBSsEISdNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19Ub3J1cy4wMDQE4wXTBSsEISdNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19Ub3J1cy4wMDUhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDQzBOQF0wUrBCENUmlnaHRBcm1Nb2RlbATlBdMFKwQE/gPTBSsECvLok0MPRTzCnQr1QwoIWbk/3Bp+P6Cmtz8hGHJi'
..'eGFzc2V0aWQ6Ly8xMTU3MTc0MDY3MwQCBNMFKwQKFOmTQ0BsO8KdCvVDCqDyrz8g3Bo+xsutPyEYcmJ4YXNzZXRpZDovLzExNTcxNzQwMzQ4BAYE0wUrBArC65NDmgM4wp0K9UMKlPCrPwivWj+uiZA/IRhyYnhhc3NldGlkOi8vMTE1NzE3NDAxNTAECgTTBSsECvoelEMunDXCyw71QwowVao/NFWqP+RPzT8hGHJieGFzc2V0aWQ6Ly8xMTU3MTczNTUyMgQOBNMFKwQKEkuUQ07pOsIaCvVDCqhsRz/R7dE/zgVWPyEYcmJ4YXNzZXRpZDovLzExNTcxNzQyMjM2CihVkT8oVZE/cCSMPyEYcmJ4YXNzZXRpZDovLzExNTcxNzQyNDkwBBQE0wUrBAr46JND5o46wp0K9UMKONR/Pzs88T8CkXk/IRhyYnhhc3NldGlkOi8vMTE1NzE3NDA4NDYhFUNvbG9yQ29ycmVjdGlvbkVmZmVjdCEGSW52ZXJ0IQhDb250cmFzdCEKU2F0dXJhdGlvbgTmBc8FKwQpAgAAAAAnd5M/AAAA'
..'AAAAgD8Oq4c/AAAAAAsAADREAAA0RCEXcmJ4YXNzZXRpZDovLzYwNDg0NjkyNzcpBAAAAAAAAIA/AAAAABa0+D6rh1U/AAAAADkhSj/oM3Q/AAAAAAAAgD8AAIA/AAAAACkCAAAAAIanwj8AAKA+AACAPxiRDT4YkQ0+KQQAAAAAAACAPwAAAABwknA+oDhQPwAAAAA7DBk/AAB4PwAAAAAAAIA/AACAPwAAAAARmpmZPs3MTD8DAAAAAAAAQ0ApAgAAAAC4P1o/AAAAAAAAgD8ExYE/AAAAACEqaHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD02ODY2NjcxMDcwKQQAAAAAAACAPwAAAADAbPQ+27ZtPwAAAAA5IUo/6DN0PwAAAAAAAIA/AACAPwAAAAADAAAAAACARUApAgAAAABowTw+AAAAAAAAgD9y2zY/AAAAACEqaHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD03NDUxODMxNTQwKQQAAAAAAACAPwAAAABlsfs+rrVWPwAAAABAaU8/vWBePwAAAAAA'
..'AIA/AACAPwAAAAAKAAAAAAAAgD8AAAAAEQAAf8MAAH9DKQMAAAAALHcTP2j1sD58O3Y/AAAAAAAAAAAAAIA/BMWBPgAAAAApBAAAAAAAAIA/AAAAAEHFmj4AAAAAAAAAAFsMMz8AAAAAAAAAAAAAgD8AAIA/AAAAACEJRGFtYWdlR1VJBDEE5wXoBQp9Bh7F4w59xeJmdkMKbxKDOm8SgzpvEoM6IQVTaGFwZSEMQmlsbGJvYXJkR3VpIQNCQkchDlpJbmRleEJlaGF2aW9yIQZBY3RpdmUhC0Fsd2F5c09uVG9wIRBDbGlwc0Rlc2NlbmRhbnRzDAAAoEAAAAAAgD8AACEJVGV4dExhYmVsIQdUZXh0Qm94IRBCYWNrZ3JvdW5kQ29sb3IzBv///yEWQmFja2dyb3VuZFRyYW5zcGFyZW5jeQwAAIA/AAAAAIA/AAAhBEZvbnQDAAAAAAAANkAhBFRleHQhCWZvb2JhcjEyMyEKVGV4dENvbG9yMyEKVGV4dFNjYWxlZCEIVGV4dFNpemUDAAAAAAAALEAhEFRleHRTdHJva2VDb2xv'
..'cjMGIgAiIRZUZXh0U3Ryb2tlVHJhbnNwYXJlbmN5IQtUZXh0V3JhcHBlZCEKVUlHcmFkaWVudCgCAAAAAP///wAAgD//AEQDAAAAAACAVsAhCkhlYWxFZmZlY3QH6QMEVQTpBeoFBvj4+AoAAAAAAAA0wwAAAAAKQl8BRbyxwkTqFnhCCgAANEMAAAAAAAA0wyEKUGlrYUxvZ2ZpYSgCAAAAAFX/fwAAgD9V/38DAAAAAACAREARAABwwgAAcEIpCAAAAAABAJA/AQCQP+8Fxz70/78+hh5ePsEo3z4AAHA/m01QPiIiAj/0/78+4P8/PlZhJj/w//898P//PUh4MD8AAKA+zsS+PYb0Oj+g/389oP9/PQAAgD8AAAAAAAAAABEAAIBAAAC4QSEXcmJ4YXNzZXRpZDovLzEwNTM1NDY2MzQpBAAAAAAAAIA/AAAAADCPrT4AAAAAAAAAAL3ZGD8AAAAAAAAAAAAAgD8AAIA/AAAAAAMAAACgmZn5PygCAAAAAFX/AAAAgD9V/wARAADwwgAA8MIRAACqwgAAqsIpAgAAAAAzMzM/AAAA'
..'AAAAgD8zMzM/AAAAAAsAAKBAAAAgQSEpaHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD0yNDI4NTYyMjYhB0hlYWxHVUkKAACAQAAAgEAAAIBAIQI2OSgCAAAAAP///wAAgD8A/yYhE1Byb2plY3RpbGVDb2xsaXNpb24EbATPBSsECmUxI0XamXtFyn4pQgoAAKBAAACgQM3MTD0hDERhc2hQYXJ0aWNsZSgCAAAAAFuaTAAAgD9bmkwDAAAAAAAAPkApAgAAAAAAAKA/AACgPgAAgD/6/y8/AAAAABEAAMBAAADAQCEqaHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD00NTEwMjkwMjE0KQQAAAAAAACAPwAAAADkf9o91dhDPwAAAACCyP8+eKY/PwAAAAAAAIA/AACAPwAAAAAhBURlY2FsISpodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTcxNDYwNTk4MTEhCVNjcmVlbkd1aSENQ2luZW1hdGljQmFycyEOSWdub3JlR3VpSW5zZXQhBUZyYW1l'
..'IQZCb3R0b20hC0FuY2hvclBvaW50CwAAAD8AAAA/BgAAAAwAAAA/AADXo3A/AAAMAACAPwAAuB4FPgAAIQNUb3AMAAAAPwAAuB6FPQAAIQVUYXVudCELTWF4RGlzdGFuY2UDAAAA4NtYxUUMAACgQAAAAAAAQAAAIQtTdHVkc09mZnNldCE6TG9va3MgbGlrZSBkb2luZyB3aGF0IHlvdSB3YW50ZWQgd2FzIHVzZWxlc3MuLiBJbiB0aGUgZW5kLiEFU3RhbmQE6wXTBSsEIQlUb3Jzb01lc2gE7AXTBSsEISdNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19Ub3Jzby4wMTAEjwTTBSsECv7Jj0NKFDnCeQL1Qwq0J3lAeiIOQIbgzj8hGHJieGFzc2V0aWQ6Ly8xMTU3MTczNjMzNSEnTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfVG9yc28uMDA5BJQE0wUrBAr+yY9DLrQ9wvAL9UMKcM8iQKBQNT9CKMg/IRhyYnhhc3NldGlkOi8vMTE1NzE3MzYxNTEhJ01l'
..'c2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX1RvcnNvLjAwNwSZBNMFKwQK/smPQ9OiPMLsC/VDCjjr+T9iXDk/EHOWPyEYcmJ4YXNzZXRpZDovLzExNTcxNzM1NzI0ISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjAyNASeBNMFKwQK/smPQ+tsOsLykPVDCshk2T/IZNk/wF1xPiEYcmJ4YXNzZXRpZDovLzExNTcxNzM3OTQ4ISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjA0NQSjBNMFKwQK/smPQ+xsOsKagvVDCmogNUBoIDVA6G7rPiEYcmJ4YXNzZXRpZDovLzExNTcxNzQwNTM2ISdNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19Ub3Jzby4wMDgEqATTBSsECv7Jj0OUkD7CScf0QwrIsh4//ESUPqB+5T0hGHJieGFzc2V0aWQ6Ly8xMTU3MTczNTkzNSEnTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfVG9y'
..'c28uMDExBK0E0wUrBAr+yY9Dcog6wuwL9UMKVAAoQLHb8j8Qc5Y/IRhyYnhhc3NldGlkOi8vMTE1NzE3MzY1NTghJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDUxBLIE0wUrBAr+yY9DMpw5wn+k9EMKoLF/P5yxfz+IzXc+IRhyYnhhc3NldGlkOi8vMTE1NzE3NDE0NzYhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDI1BLcE0wUrBAr+yY9DKpw5wm+f9EMKIHIZPxxyGT+sziY+IRhyYnhhc3NldGlkOi8vMTE1NzE3Mzc3MzkhBkxMTWVzaATtBdMFKwQhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDMwBL4E0wUrBAr+iY9Df8ZBwrK/9EMKwBWjPswVoz44SbE9IRhyYnhhc3NldGlkOi8vMTE1NzE3MzcwNDQhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDMxBMME0wUrBAr+iY9D'
..'gMZBwmLC9EMK0OAHP8/gBz9QrwM+IRhyYnhhc3NldGlkOi8vMTE1NzE3MzY3MzAhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDQxBMgE0wUrBApcjI9DWTJEwpsK9UMKCLWTP4PU8D4MJpA/IRhyYnhhc3NldGlkOi8vMTE1NzE3Mzk3NDUhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDQwBM0E0wUrBApcjI9DPAxEwpsK9UMKCLWTP+RIKT8MJpA/IRhyYnhhc3NldGlkOi8vMTE1NzE3Mzk1OTUhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDUzBNIE0wUrBApcjI9DFAJBwpsK9UMKaDGOP77VRz9Stoo/IRhyYnhhc3NldGlkOi8vMTE1NzE3NDE4MTAhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDQyBNcE0wUrBAqCW49DYrY/wpsK9UMKgGZDP9jtrD50vpI/IRhyYnhhc3NldGlk'
..'Oi8vMTE1NzE3Mzk5NDEhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDM0BNwE0wUrBApcjI9D2bZBwpsK9UMKMNR/P3Wb6T//kHk/IRhyYnhhc3NldGlkOi8vMTE1NzE3Mzg0NDYhBlJBTWVzaATuBdMFKwQE4gTTBSsECiiHkEMPRTzCnAr1QwTkBNMFKwQKSoeQQ0BsO8KcCvVDBOYE0wUrBAr4iZBDmgM4wpwK9UME6ATTBSsECjC9kEMunDXCyg71QwTqBNMFKwQKSOmQQ07pOsIZCvVDBOwE0wUrBAouh5BD5o46wpwK9UMhCEhlYWRNZXNoBO8F0wUrBCEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wMjYE8QTTBSsECv7Jj0O+FjTCcwX1QwqouMc/sAncPxz/xT8hGHJieGFzc2V0aWQ6Ly8xMTU3MTczNzU3NSEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wNTQE9gTTBSsECv7Jj0O+FjTCKwL1Qwogor0/'
..'sAncP3Buvz8hGHJieGFzc2V0aWQ6Ly8xMTU3MTc0MTk2MyEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wNTIE+wTTBSsECv7Jj0MrqDTCfy71Qwr4F7E/SuyxP1r26T8hGHJieGFzc2V0aWQ6Ly8xMTU3MTc0MTYwNiEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wNTUEAAXTBSsECprxj0OgBzTC0dj0QwpIcx4/Lti5P/HjEEAhGHJieGFzc2V0aWQ6Ly8xMTU3MTc0MjA4MyEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wMjcEBQXTBSsECmCij0OgBzTC0dj0QyEYcmJ4YXNzZXRpZDovLzExNTcxNzM3NDQwIQZMQU1lc2gE8AXTBSsEBAoF0wUrBAq0qo5DTuk6whkK9UMEDAXTBSsECsrWjkMunDXCyg71QwQOBdMFKwQKytaOQy+cNcLKDvVDBBAF0wUrBAoECo9DmgM4wpwK9UMEEgXTBSsECswMj0PmjjrC'
..'nAr1QwQUBdMFKwQKsgyPQ0BsO8KcCvVDBBYF0wUrBArSDI9DD0U8wpwK9UMhBlJMTWVzaATxBdMFKwQhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDM1BBsF0wUrBAqeB5BDPAxEwpsK9UMKBLWTP+VIKT8MJpA/IRhyYnhhc3NldGlkOi8vMTE1NzE3Mzg2MjYhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDM2BCAF0wUrBAqeB5BDWTJEwpsK9UMKCLWTP4LU8D4MJpA/IRhyYnhhc3NldGlkOi8vMTE1NzE3Mzg3OTQhJk1lc2hlcy9udWNsZWFyIHN0YXIgbmVhIHRoaW5nX0N1YmUuMDI4BCUF0wUrBAr+CZBDgMZBwmLC9EMhGHJieGFzc2V0aWQ6Ly8xMTU3MTczNzMyNSEmTWVzaGVzL251Y2xlYXIgc3RhciBuZWEgdGhpbmdfQ3ViZS4wMjkEKQXTBSsECv4JkEOAxkHCsr/0QyEYcmJ4YXNzZXRpZDovLzExNTcxNzM3MjA3'
..'ISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjAzOAQtBdMFKwQKngeQQxQCQcKbCvVDCmwxjj++1Uc/U7aKPyEYcmJ4YXNzZXRpZDovLzExNTcxNzM5MTQyISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjAzNwQyBdMFKwQKeDiQQ2K2P8KbCvVDCoBmQz/Y7aw+c76SPyEYcmJ4YXNzZXRpZDovLzExNTcxNzM4OTI0ISZNZXNoZXMvbnVjbGVhciBzdGFyIG5lYSB0aGluZ19DdWJlLjAzOQQ3BdMFKwQKngeQQ9m2QcKbCvVDCjjUfz91m+k/ApF5PyEYcmJ4YXNzZXRpZDovLzExNTcxNzM5MzM5IQpTdGFuZCBIZWFkB/cDBD4FzwUrBAaRJq8KPMePQy7hM8I3DPVDCgAAAEAAAIA/AACAPwTyBdMFKwQE8wXTBSsEBPQF0wUrBAT1BdMFKwQE9gXTBSsEBEYFzwUrBAo8B49DLuE5wjcM9UMhDlN0YW5kIExlZnQgTGVnB+4DBEsFzwUr'
..'BAbmWP8KPIePQy7hQcI3DPVDBPcF0wUrBAT4BdMFKwQE+QXTBSsEBPoF0wUrBAT7BdMFKwQE/AXTBSsEBP0F0wUrBARUBc8FKwQKPIeQQy7hOcI3DPVDIQ9TdGFuZCBSaWdodCBMZWcEVwXPBSsECjwHkEMu4UHCNwz1QwT+BdMFKwQE/wXTBSsEBAAG0wUrBAQBBtMFKwQEAgbTBSsEBAMG0wUrBAQEBtMFKwQhC1N0YW5kIFRvcnNvBxoABGMFzwUrBAYyMjIKPMePQy7hOcI3DPVDIQROZWNrBCsE0wXQBSECQzEEBQbTBdAFIQ5SaWdodCBTaG91bGRlcgQGBtIFKwQEBwbSBSsEIQlSaWdodCBIaXAECAbSBSsEBAkG0gUrBCENTGVmdCBTaG91bGRlcgQKBtAFKwQECwbQBSsEIQhMZWZ0IEhpcAQMBtAFKwQEDQbQBSsEBA4G0wUrBAQPBtMFKwQEEAbTBSsEBBEG0wUrBAQSBtMFKwQEEwbTBSsEBBQG0wUrBAQVBtMFKwQEFgbTBSsEIQ5TdW1tb25QYXJ0aWNsZSEGQ2ly'
..'Y2xlKAIAAAAA8mL/AACAP/Ji/xEAALRDAAC0QykEAAAAAAAAAAAAAAAAexMDPk9ALkEAAAAAPggNP2/T3z1v0989AACAPwAAAAAAAAAAIRhyYnhhc3NldGlkOi8vMTA1NTIwMjE3NTcoAgAAAADhbuQAAIA/5DbWIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTExNDQ2MTMyNTA4IQhDcnlzdGFscwoAAAAAAAD6wgAAAAAoAgAAAAD/MZUAAIA//zGVIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTExNDQ1NDMwNTY1KAIAAAAA/0LmAACAP/9C5iEYcmJ4YXNzZXRpZDovLzEwMjIwNDQ2NTA1KQIAAAAAAAAoPwAAAAAAAIA/AACAPwAAAAAhCUxpZ2h0bmluZygCAAAAAH4/dwAAgD//RNYhK2h0dHA6Ly93d3cucm9ibG94LmNvbS9hc3NldC8/aWQ9MTEzNTkxODc4NzIoAgAAAAD/YuQAAIA//2LkIRhyYnhhc3NldGlkOi8vMTA1NTE5NDg5'
..'NTEhCFNwYXJrbGVzKAIAAAAA/37oAACAP/9+6BEAAAA/AACAPykDAAAAAAAAAAAAAAAAxcVRPgAAYEAAAAAAAACAPwAAYEAAAAAACwAAtEIAALRCIRhyYnhhc3NldGlkOi8vMTA1NTIwMTc1NzIoAgAAAAD/L+0AAIA//y/tKQIAAAAAXOdXP1znVz8AAIA/TtPfPk7T3z4hGHJieGFzc2V0aWQ6Ly8xMDk3MTIzMTQyMCkDAAAAAAAAAAAAAAAAC89DPwAAAAAAAAAAAACAPwAAcD8AAAAAIQlzaG9ja3dhdmUoAgAAAAD/YM0AAIA//2DNKQQAAAAAAAAAAAAAAADadcc+AAB0QAAAAABUjSI/AAC+QAAAAAAAAIA/AADYQAAAAAAhF3JieGFzc2V0aWQ6Ly8xMDg0OTU1MDEyKQsAAAAAAACAPwAAAABJEE4+AAAAAAAAAADyltM+AAAAAAAAAAAB/NM+AACAPwAAAAAJwhk/AACAPwAAAACQ9Bk/AAAAAAAAAAAtP0A/AAAAAAAAAADD1kA/AACAPwAAAAAMV1c/AACAPwAAAABj'
..'tVk/AAAAAAAAAAAAAIA/AAAAAAAAAAAoAgAAAAB+RnQAAIA/fkZ0KQMAAAAAAAAAAAAAAAC/R30+AAC+QAAAAAAAAIA/AADYQAAAAAAhK2h0dHA6Ly93d3cucm9ibG94LmNvbS9hc3NldC8/aWQ9MTE0NDYxNTMwODUpAwAAAAAAAAAAAAAAAF70KT8AAAAAAAAAAAAAgD8AAIA/AAAAACEGSW1wYWN0KAIAAAAAfjR1AACAP/8huCkEAAAAAAAAAAAAAAAAfp2lPc7foD8AAAAAhetRPgAAQEAAAAAAAACAPwAAQEAAAAAAIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTExMzU5NTg4MDU4KQMAAAAAAAAAAAAAAABOYT0/AAAAAAAAAAAAAIA/AACAPwAAAAAhB1JpcHBsZTEoAgAAAAD/V9gAAIA//1fYEQAAFsMAABZDIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTExMzU4Mzk0NDMwKQYAAAAAAAAAAAAAAADjcP4+AAAAAAAAAAAwfx0/mpkB'
..'PwAAAACfPFA/ZmZePwAAAABbC2M/ZmZuPwAAAAAAAIA/AACAPwAAAAAhBFN0YXIoAgAAAAD/Ru0AAIA//0btEQAAAAAAALRDKQcAAAAAlf9/PQAAAABqNmo9t5ywQJX/fz1TriA+flJjQN1taD2nXLE+c9fKP/boMj3X2dg+z9hDP7xiIT3X2Rg/BOSLPn2v4TwAAIA/AAAAAAAAAAARAACgQAAA+kIhK2h0dHA6Ly93d3cucm9ibG94LmNvbS9hc3NldC8/aWQ9MTE0NDU0MzIwODIpAwAAAAAAAIA/AAAAAF3dcT4AAAAAAAAAAAAAgD8AAAAAAAAAACEGU3BhcmtzKAIAAAAA/0T2AACAP/9E9ikDAAAAAAAAAAAAAAAAvLNRPT3TXz9y3qc+AACAP8UgED8AAAAAIStodHRwOi8vd3d3LnJvYmxveC5jb20vYXNzZXQvP2lkPTExMzM3NTcwNTE2KQMAAAAAAAAAAAAAAAC/DUk/AAAAAAAAAAAAAIA/AACAPwAAAAAhBVNpZ2lsKAIAAAAA/2TDAACAP/9kwyEraHR0cDovL3d3'
..'dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD0xMTQ0NjEwODk5MSEGU2lnaWwzKAIAAAAAfkF3AACAP35BdyEraHR0cDovL3d3dy5yb2Jsb3guY29tL2Fzc2V0Lz9pZD0xMTQ0NjEwOTMwMgPNzMzMzMzkPyEVU3RhbmRIdW1hbm9pZFJvb3RQYXJ0B/IDBgAA/yEMUG9zZVBhcnRpY2xlKAQAAAAA////dQIKPv///+dTMz9UAH4AAIA/BwQIEQAAcMEAAHDBKQsAAAAAAAAAAAAAAAAvcso9lf9/PQAAAAB2F0g+AABwPwAAAACZEZY+AADgPgAAAADNzMw+AACAPwAAAAA2PQg/AAAAPwAAAAByTyM/AACIPwAAAAD8NEI/AAAQPwAAAABQGVc/AACAPwAAAAAR/WY/AAAwPwAAAAAAAIA/AADAPgAAAAARmpmZPpqZmT4LAACvQwAAesMhF3JieGFzc2V0aWQ6Ly82OTI0Nzg1ODIxKQQAAAAAAADQPgAAAAAwfwU+AAAAAAAAAAA0aV8/zcxMPAAAAAAAAIA/AAAwPwAAAAAhBVdlbGRz'
..'BBcGzwUrBCEJUm9vdEpvaW50CgAAgD8AAAAAAAAAAAoAAAAAAAAAAAAAgD8KAAAAAAAAAAAAAAAACgAAAAAAAAAAAACAvwoAAIC/AAAAAAAAAAAKYJfOwrFwgEGp4iNDCn5prMIIFMVBjQ8GQwoAANi5AIAAugAAELkKABAyPWC4Lb4AgE28CgDgsTwQyu4+AIBNvAoAsC49QInFvgCATbwKANAyPVz4GL8AgE28CgDGwb7yn4g/AMCkPAoAxsG+5p+IPwDApDwKABE5v+APhL4AgIe8CvZSkkNaozjCyw71QwoAANg5QInFvgCATbwKAAAculz4GL8AgE28CgAA2LlguC2+AIBNvAoAF0Q/4A+EvgCAh7wKANLXPvKfiD8AwKQ8CgDgrjwQyu4+AIBNvAqaBJRDWqM4wssO9UMKfcwmxcE7MsVxE4BDCvT/fz8DEpCNAACQlQoDEpCN9P9/PwAAECMKAACAv6kFKDUqNKk0CqcFKDUAAIA/AH6QtAr+yY9D40M7wrP19EMK/smPQ5RcOsKFGvVDCnCAj0Oct0HCEQf1QwrQopBDWqM4'
..'wssO9UMK/smPQ74WNMKz9fRDCizxjkNaozjCyw71QwqKE5BDnLdBwhEH9UMKAG6TvgDGGb0AmM2+CgBgsDyg/Ea+ACCJPgoAYLA8AEBWvQDAoL0KAHqpPgDGGb0AmM2+CgBgsDwAQFa9AIBYvQoAYLA8gG/VPACqE78KABAkPeBVKT0AAE68CgAQJD2Kwwq/AABOvAoAECQ9ykoUvwAATrwKAOauvh+zCj8AAE68CgAQJD28GV8+AABOvAoAYLA8oHTVPAAKGb8KAGCwPKBv1TwAChm/CgAARTuNwwq/AABOvAoAAEU7zUoUvwAATrwKAPLEPh+zCj8AAE68CgAARTu0GV8+AABOvAoAAEU70FUpPQAATrwKAGCwPKBv1TwAqhO/CgAAAAAAAAC/AAAAgAoCAIA/AAAAPwAAAIAKAAAAvwAAAD8AAAAACgAAgD8AAIC/AAAAAAoAAAA/AACAPwAAAAAKAACAvwAAAD8AAACACgAAAD8AAAA/AAAAAAoAAIC/AACAvwAAAAAKAAAAvwAAgD8AAAAACgBgsDwACYo9AJBZvwoAYLA8ML4L'
..'vgDGbD8KAGCwPAD4iT0AcE+/CgBgsDw8aTC/AAAWuwoAYLA8wOyVvwDcCb8KAGCwPBDAdL8AAA67CgBgsDzA40w+AOCbvQoAYLA8IEQnvgAAFrsKAGCwPPC8C74Au4Q/CgAAwDhg5u0+ALPbP2cDAQAAAAEAAgADAAEAAQABAAIABAAFAAIADgACAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAIABQAFQAWABcAGAAVABkAGgAbAAoAHAAdAB4AAwAAAB8ABAAOAAIAIAARACEAIgAjACQAJQAmABAAJwAoACkAHQAqACUAGAArABkALAAtAC4ALwAwABwAMQAyADMAHwAEAAwAAgA0ABEANQAiADYAJAA3ACYAEAAnADgAKgAdABkAOQAtADoALwA7ABwAPAAyADMABQACAA4AAgA9AAcACAAJAAoACwAMAA0APgAPABAAEQASABMACAAUABUAFgA/ABgAFQAZABoAGwAKABwAHQBAAAcABABBAAoAEQBCAEMACABEAEUAHgAHAAAAHwAJABMAAgBGAEcASAARACEAIgAlACYA'
..'EAAnAEkAKQAdAEoAHQAqAEsATABNABgATgAZAE8ALQBQAFEAUgAvAFMAVABVABwAVgBXADMAMgBYAB8ACQANAAIAWQARAFoAIgBbACYAEAAnAFwAFAAzACoAXQAYACsAGQBeAC0AXwBRAGAALwBhADIAMwAfAAkADwACAGIAEQBjACIAJQAkADcAJgAQACcAZAAqAGUATABmABgAZwAZAGgALQBpAFEAagAvAGsAHABsADIAHQAfAAkADwACAG0AEQBuACIANgAkADcAJgAQACcALgAqAGUATABmABgAZwAZAGgALQBvAFEAagAvAHAAHABxADIAcgAfAAkADwACAHMAEQB0ACIAJQAkADcAJgAQACcASQAqAGUATABmABgAZwAZAHUALQB2AFEAagAvAHAAHAB3ADIAeAAfAAkADwACAHkARwB6ABEAewAiACUAJAAlACYAEAAnAHwAKgB9AEwAZwAYAGcAGQB+AC0AfwBRAIAALwCBABwAggAfAAkADwACAIMARwCEABEAhQAiAIYAJAAlACYAEAAnAEkAKgCHAEwAiAAYAGcAGQCJ'
..'AC0AigBRAIsALwBrABwAjAAfAAkADwACAI0ARwCOABEAjwAiAJAAJgAQACcAkQAqAIcATACIABgAZwAZAIkALQCSAFEAkwAvAJQAHACVAFcAlgAfAAkADQACAJcARwB6ABEAmAAiACUAJgAQACcAmQAqAJoAGABnABkAmwAtAJwAUQBqAC8AnQAcAJ4AHwAJABMAAgBGAEcAnwARAJgAIgA2ACQAMwAmABAAJwCgACkAoQAqAF0ATACiABgAZwAZAE8ALQBvAFEAowAvAKQAVABVABwApQBXADcAMgA3AB8ACQAOAAIAWQBHAKYAEQBaACIApwAmABAAJwCgABQAMwAqAF0AGAArABkAXgAtAKgAUQCpAC8AqgAyADMAHwAJAA4AAgBZABEAWgAiAFsAJgAQACcALgAUADMAKgBdAEwAqwAYACsAGQBeAC0AXwBRAKwALwCtADIAMwAfAAkAEwACAEYARwBIABEAIQAiACUAJgAQACcAmQApAB0ASgAdACoASwBMAK4AGABOABkATwAtAFAAUQBSAC8AUwBUAFUAHABWAFcAMwAyAFgA'
..'HgAHAAAAHwAXAA8AAgCvABEAIQAkADMAJgAQACcAsAApAB0ASgAdALEACAAUADcAKgA2ABgAsgAZALMALQC0AC8AtQAcALYAHwAXAA4AAgCvABEAtwAkADMAJgAQACcAXACxAAgAFAA3ACoANgBMALgAGACyABkAuQAtALQALwC6ABwAtgAfABcADQACAK8AEQC3ACQAMwAmABAAJwC7ALEACAAUADcAKgA2ABgAsgAZALkALQC0AC8AvAAcALYAHwAXAA4AAgC9ABEAmAAkADMAJgAQACcASQCxAAgAFAA3ACoANgAYAGcAGQC+AC0AtAAvAL8AHAC2ADIAMwAfABcADgACAL0AEQCYACQAMwAmABAAJwDAALEACAAUADcAKgA2ABgAZwAZAL4ALQC0AC8AwQAcALYAMgAzAB8AFwAOAAIArwARALcAJAAzACYAEAAnAMIAKQAdALEACAAUADcAKgA2ABgAsgAZALkALQC0AC8AwwAcALYAHgAHAAMAAgA0AA0AxAAWAMUAHwAeAAsAAgA0ABEAxgAkACUAJgAQACcAxwAqAB0AGQDI'
..'AC0ALgAvAMkAHAA8ADIAMwAFAAIADgACAMoABwAIAAkACgALAAwADQDLAA8AEAARABIAEwAIABQAFQAWAMwAGAAVABkAzQAbAAoAHAAdAEAAIAADAEEACgARAEIARABFAB4AIAAAAB8AIgATAAIARgBHAEgAEQAhACIAJQAmABAAJwBJACkAHQBKAB0AKgBLAEwATQAYAE4AGQBPAC0AUABRAFIALwBTAFQAVQAcAFYAVwAzADIAWAAfACIADQACAFkAEQBaACIAWwAmABAAJwBcABQAMwAqAF0AGAArABkAXgAtAF8AUQBgAC8AYQAyADMAHwAiAA8AAgBiABEAYwAiACUAJAA3ACYAEAAnAGQAKgBlAEwAZgAYAGcAGQBoAC0AaQBRAGoALwBrABwAbAAyAB0AHwAiAA8AAgBtABEAbgAiADYAJAA3ACYAEAAnAC4AKgBlAEwAZgAYAGcAGQBoAC0AbwBRAGoALwBwABwAcQAyAHIAHwAiAA8AAgBzABEAdAAiACUAJAA3ACYAEAAnAEkAKgBlAEwAZgAYAGcAGQB1AC0AdgBRAGoA'
..'LwBwABwAdwAyAHgAHwAiAA8AAgB5AEcAegARAHsAIgAlACQAJQAmABAAJwB8ACoAfQBMAGcAGABnABkAfgAtAH8AUQCAAC8AgQAcAIIAHwAiAA8AAgCDAEcAhAARAIUAIgCGACQAJQAmABAAJwBJACoAhwBMAIgAGABnABkAiQAtAIoAUQCLAC8AawAcAIwAHwAiAA8AAgCNAEcAjgARAI8AIgCQACYAEAAnAJEAKgCHAEwAiAAYAGcAGQCJAC0AkgBRAJMALwCUABwAlQBXAJYAHwAiAA0AAgCXAEcAegARAJgAIgAlACYAEAAnAJkAKgCaABgAZwAZAJsALQCcAFEAagAvAJ0AHACeAB8AIgATAAIARgBHAJ8AEQCYACIANgAkADMAJgAQACcAoAApAKEAKgBdAEwAogAYAGcAGQBPAC0AbwBRAKMALwCkAFQAVQAcAKUAVwA3ADIANwAfACIADgACAFkARwCmABEAWgAiAKcAJgAQACcAoAAUADMAKgBdABgAKwAZAF4ALQCoAFEAqQAvAKoAMgAzAB8AIgALAAIAWQARAFoAIgBb'
..'ACYAEAAnAC4AKgBdABkAXgAtAM4AUQCsAC8AzwAyADMAHwAiABMAAgBGAEcASAARACEAIgAlACYAEAAnAJkAKQAdAEoAHQAqAEsATACuABgATgAZAE8ALQBQAFEAUgAvAFMAVABVABwAVgBXADMAMgBYAB4AIAAAAB8AMAAPAAIArwARACEAJAAzACYAEAAnALAAKQAdAEoAHQCxAAgAFAA3ACoANgAYALIAGQCzAC0AtAAvALUAHAC2AB8AMAAOAAIArwARALcAJAAzACYAEAAnAFwAsQAIABQANwAqADYATAC4ABgAsgAZALkALQC0AC8AugAcALYAHwAwAA0AAgCvABEAtwAkADMAJgAQACcA0ACxAAgAFAA3ACoANgAYALIAGQC5AC0AtAAvALwAHAC2AB8AMAANAAIAvQARANEAJAAzACYAEAAnANIAsQAIABQANwAqADYAGABnABkAvgAtALQALwDTABwAtgAfADAADQACAL0AEQCYACQAMwAmABAAJwDAALEACAAUADcAKgA2ABgAZwAZAL4ALQC0AC8A1AAcALYAHwAwAA4A'
..'AgCvABEAtwAkADMAJgAQACcAwgApAB0AsQAIABQANwAqADYAGACyABkAuQAtALQALwDDABwAtgAeACAAAwACADQADQDVABYA1gAfADcACwACADQAEQDGACQAJQAmABAAJwDHACoAHQAZAMgALQAuAC8AyQAcADwAMgAzAB8AIAARAAIARgBHAJ8AEQAhACIANgAkADMAJgAQACcA0AApAB0AKgBdABgAZwAZANcALQBvAFEAowAvANgAHADZAFcANwAyADcAHwAgAA0AAgDKABEAIQAiANoAJAAlACYAEAAnALsAKgCGABkA2wAtAM4AUQDcAC8A3QAcAN4AMgDfAAUAAgAIAAIA4AAJAAoADQDhAOIAHQAWAOMAGQDkABsACgAcAB0AHgA7AAMAAgDlAA0A5gAWAOcA6AA8AAkAAgDpABEA7ADtAAgAJwAdAC8A7gDvAPAA8QAzABwA8gDzAPQA6AA8AAkAAgDpABEA7ADtAAgAJwD1AC8A9gDvAPAA8QAzABwA8gDzAPQAHgA7AAMAAgDlAA0A9wAWAPgAHwA7AA8BAgD5AEcA+gAR'
..'APsAJwD8ACkA3wAqAEsATAD9ABgA/gAZAP8ALQAAAVEAAQEvAAIBVABVABwAAwEyAB0ABAEFAR8AOwAOAQIABgFHAAcBEQAIAScA/AApAN8AKgBLAEwA/QAYAP4AGQD/AC0AAAFRAAEBLwAJARwAAwEyAB0ABAEFAR8AOwANAgIACgERAAsBIgAMASQAJQAnAPwAKgBLAEwADQEYAGcAGQAOAVEADwEvABABHAARATIAHQASAQoABAFbAB8AOwANAgIAEwERAJgAIgAMASQAJQAnAPwAKgBLAEwADQEYAGcAGQAUAVEADwEvAAkBHAARATIAHQASAQoABAFbAB8AOwAOAAIAcwARAHQAIgAlACQANwAnAPwAKgBLAEwAZgAYAGcAGQAVAS0ALgBRAGoALwBwABwAdwAyADMAAQABAAEAAgAWAQUARQAHAAIAFwEJAAoADQAYARYAGQEZABoBGwAKABwAHQAeAEYAAAAfAEcADgACAPkAEQAbASIANgAmABAAJwBJACkA3wAqAEsATAD9ABgA/gAZABwBLQAdAVEAAQEvAAIBHAADAR8A'
..'RwAOAAIAHgERAB8BJAAlACYAEAAnACABFAA3AEwAIQEYAP4AGQAiAS0AtABRACMBLwAkARwAJQEyAB0AHwBHAAwAAgAeAREAJgEiACUAJAAlACYAEAAnALsAFAA3AEwAJwEZACgBLQAuAC8AKQEcACoBHwBHAAsAAgAeAREAKwEkACUAJgAQACcALAEUADcATACrABkAKAEtAC4ALwAtARwALgEfAEcADQACAB4BEQAvASIAJQAkADMAJgAQACcAMAEUADcATAAxARgAZwAZADIBLQAzAS8AugAcADQBHwBHAAoAAgAeAREAHwEmABAAJwAgARgAZwAZADUBLQC0AC8ANgEcADcBMgAdAB8ARwAOAAIAOAERAC8BJgAQACcALgAUADcAKgA5AUwAOgEYAGcAGQA7AS0APAFRAGAALwC6AFQAPQEcAD4BHwBHAAwAAgA4AREAPwEmABAAJwBAASkAHQCxAAgAKgA2AEwAQQEZAEIBLQC0AC8AQwEcAEQBHwBHABAAAgBFAREARgEiAFsAJAAzACYAEAAnAEcBsQAIABQAMwAqAEgBGAAr'
..'ABkASQEtAEoBUQBLAS8ATAEcAE0BMgAdAB8ARwAPAAIARQFHAE4BEQAbASIA2gAkADMAJgAQACcALgCxAAgAKgBIARgAKwAZAE8BLQBQAVEAowAvAFEBMgAdAAUARQAHAAIAUgEJAAoADQBTARYAVAEZABoBGwAKABwAHQAeAFIAAAAfAFMADwACAFUBEQAfASIAVgEkACUAJgAQACcAVwEpAFgBKgCGAEwAqwAYAGcAGQBZAS0AOgBRAGAALwAwABwAWgEfAFMADQACAB4BEQAfASYAEAAnALsAKQAdABQANwAYAP4AGQBbAS0AtABRAGAALwBcARwAXQEyAB0AHwBTABAAAgBFAREAHwEiAFsAJAAzACYAEAAnAF4BKQAdALEACAAUADMAKgBIARgAKwAZAF8BLQBQAVEArAAvAGEAMgAdAAUARQAHAAIAYAEJAAoADQBhARYAYgEZABoBGwAKABwAHQAeAFcAAgANAGMBFABkAR8AWAASAAIAZQFHAGYBEQBGASIA2gAkAGcBJgAQACcAaAEpAB0AsQAIACoASAFMAA0BGABnABkA'
..'aQEtADoAUQCjAC8AagFUAGsBMgAdAB8AWAAPAAIARQFHAE4BEQA/ASIA2gAkADMAJgAQACcAbAGxAAgAKgBIARgAKwAZAE8BLQBQAVEAowAvAFEBMgAdAB8AWAAQAAIARQERAG0BIgBbACQAMwAmABAAJwBuAbEACAAUADMAKgBIARgAKwAZAG8BLQBQAVEASwEvAHABHABNATIAHQAfAFgACgACAB4BEQBxASYAEAAnAHIBFAA3ABkAcwEtALQALwB0ARwAJQEyAB0AHwBYAAwAAgAeAREAdQEmABAAJwC7AEwAqwAYAGcAGQB2AS0AtABRACMBLwB3ARwAeAEyAB0AHwBYAA4AAgA4AREAPwEmABAAJwB5ARQANwAqADkBTAA6ARgAZwAZADsBLQA8AVEAYAAvALoAVAA9ARwAPgEfAFgADQACAHoBJAAlACYAEAAnADgAsQAIACoANgBMAHsBGAB8ARkAfQEtAH4BUQBqAC8AfwEyADMAHwBYAAoAAgAeAREAgAEmABAAJwAuABkAgQEtALQAUQAjAS8AggEcACUBMgAzAB8AWAAQ'
..'AAIARQFHAEgAEQBtASIA2gAkADMAJgAQACcALgCxAAgAKgBIAUwAgwEYACsAGQBPAS0AUAFRAKMALwCEATIAHQAfAFgAEAACAEUBEQBtASIAWwAkADMAJgAQACcAhQGxAAgAFAAzACoASAEYACsAGQCGAS0AhwFRAEsBLwCIARwATQEyAB0AHwBYAA4AAgA0ABEAiQEiAIYAJAAKACYAEAAnAIoBKQCLASoANgAYAIwBGQCNAS0AjgEvAI8BHACQATIAkQEFAEUACAACAJIBCQAKAA0AkwEPABAAFgCUARkAlQEbAAoAHAAdAB4AZAADAAIA5QANAJYBFgCXAegAZQAIAAIAmAERAJkBJwBVAC8A7gDvAPAA8QAzABwA8gDzAPQAHgBkAAMAAgDlAA0AmgEWAJsBHwBkAA8AAgCcAREAnQEiAFYBJAAlACYAEAAnAPwAKQBYASoAhgBMAKsAGABnABkAngEtALQAUQBgAC8AnwEcAKABHwBkAA4AAgChAREAogEiAFYBJAAzACYAEAAnAKMBKgCGAEwApAEYAKQBGQClAS0ALgBRAGAA'
..'LwCmARwApwEfAGQAEAACAKgBRwCpAREAnQEiAFYBJAAlACYAEAAnAKoBKQBYASoAhgBMAKsAGABnABkAqwEtAB0BUQBgAC8ArAEcAFoBBQBFAAwAAgCtAQkACgALAK4BDQCvAQ8AEAARALABFACxARYAsgEYALEBGQAaARsACgAcAB0AHgBrAAAAHwBsABAAAgCzAREAtAEiACUAJABnASYAEAAnALsAKQAdAEoAtQGxAAgAKgA2ABgAZwAZALYBLQC3AS8AuAEcALkBMgAdAB8AbAAMAAIAugERACEAJgAQACcAuwEpAB0AFAAzABgAfAEZALwBLQC9AVEAYAAvAL4BHAC/AR8AbAAMAAIAwAERACEAJgAQACcAuwEpAB0AFAAzABgAfAEZAMEBLQC9AVEAYAAvAL4BHAC/AR8AbAAMAAIAwgERAMMBJgAQACcAxAEqAAUBTADFARgAfAEZAMYBLQC9AVEAYAAvAMcBHAC/AR8AbAAQAAIAegERAMMBJAAlACYAEAAnACwBKQAdALEACAAUADcAKgA2AEwAyAEYAHwBGQDJAS0AfgFR'
..'AGoALwDKATIAHQAfAGwADwACAMsBEQAhACQAJQAmABAAJwDMAUoAtQGxAAgAKgAlABgAzQEZAM4BLQAAAVEAYAAvAM8BHADQATIAHQAfAGwAEAACANEBEQAhACQAJQAmABAAJwC7ACkAHQBKALUBsQAIACoAJQAYAGcAGQDSAS0AAAFRAGAALwDTARwA0AEyAB0AHwBsAA0AAgDUAREAIQAkADcAJgAQACcA1QEpAB0AFAA3ABgAiAAZANYBLQC9AS8A1wEcANgBMgAdAB8AbAAQAAIA2QERACEAJAAlACYAEAAnALsAKQAdALEACAAqACUATACkARgAZwAZAM4BLQC0AC8A2gFUAFUAHADbATIAHQAfAGwADQACANwBJAAlACYAEAAnAMwBSgC1AbEACAAqACUAGQDOAS0AAAFRAGAALwDdARwA3gEyAB0AHwBrAAwAAgDfAREA4AEiAOEBJABnASYAEAAnAC4ASgDiASoASwAZAOMBLQC0AFEAowAvAOQBBQBFAAwAAgDlAQcACAAJAAoADQDmAQ8AEAATAAgAFADnARYA6AEYAOkB'
..'GQCVARsACgAcAB0AHwB4AA4AAgD5ABEALwEiAIYAJgAQACcALgApAN8AKgBLAEwA/QAYAP4AGQDqAS0A6wFRAAEBLwACARwAAwEfAHgADQACAAYBEQDsASIANgAmABAAJwAuACkA3wAqAEsATAD9ABgA/gAZAO0BUQABAS8ACQEcAAMBHwB4AA8AAgDuAREA7wEiAIYAJAAlACYAEAAnAC4AKQBYASoAhgBMAKsAGABnABkA8AEtAB0BUQAPAS8AMAAcAPEBHgB4AAIADQDyARYA8wEfAHwADQACAK8AEQAbASYAEAAnALAAKQAdAEoAHQCxAAgAKgA2ABgAsgAZAPQBLQC0AC8AtQAcALYAHwB8AA0AAgCvABEAGwEkADMAJgAQACcAXACxAAgAKgA2AEwAuAAYALIAGQD0AS0AtAAvALoAHAC2AB8AfAAMAAIArwARAC8BJgAQACcAuwCxAAgAFAA3ACoANgAYALIAGQD0AS0AtAAvALwAHAC2AB8AfAANAAIA3AERAPUBJAAlACYAEAAnALsASgD2AbEACAAqACUAGQD3AS0AtAAv'
..'APgBHAD5ATIAHQAfAHwADAACANwBJAAlACYAEAAnAMwBsQAIACoAJQAZANIBLQAAAVEAYAAvAN0BHADeATIAHQAfAHwADwACANwBEQB1ASQAJQAmABAAJwC7ACkAHQBKAB0AsQAIACoAJQAZAPoBLQAAAVEAYAAvAPsBHAD5ATIAHQAfAHwADgACANEBEQDsASQAJQAmABAAJwDQALEACAAqACUAGABnABkA/AEtALQAUQBgAC8A/QEcAP4BMgAdAB8AfAAPAAIAswERAMMBIgAlACQAZwEmABAAJwC7ACkAHQCxAAgAKgA2ABgAZwAZANIBLQC3AS8AuAEcALkBMgAzAB8AfAAPAAIA7gERAP8BIgCGACQAJQAmABAAJwC7ACkAWAEUADMAKgCGABgAKwAZAIEBLQAuAFEAYAAvADAAHAAAAh8AfAAPAAIAnAERAMMBIgBWASQAJQAmABAAJwD8ACkAWAEqAIYATACrABgAZwAZAJ4BLQC0AFEAYAAvAJ8BHACgAR8AfAANAAIANAARAEYBIgA2ACQACgAmABAAJwAuACkAoQBKAFUA'
..'KgAdAC0A6wEvAAECHAA8ADIAMwAfAHgADgACAN8BEQACAiIANgAkAGcBJgAQACcAAwIUADMAKgBLABgAKwAZAOMBLQAdAVEAowAvAAQCMgAdAAUARQAOAAIABQIHAAgACQAKAAsABgINAAcCDwAQABEACAITAAgAFAAJAhYACgIYAAkCGQALAhsACgAcAB0AHgCJAAIADQAMAhQACQIfAIoAEAACAA0CRwAOAhEADwIiACUAJABnASYAEAAnABACKgARAkwAEgIYAGcAGQATAi0AHQFRAGoALwAUAhwAFQIyABYCHwCKAA4AAgBFAREAFwIiADYAJgAQACcAuwAUADMAKgBIARgAKwAZABgCLQAZAlEAYAAvABoCHABNATIAMwAfAIoAEAACABsCRwAOAhEAHAIiACUAJABnASYAEAAnALsAKgARAkwAEgIYAGcAGQATAi0AOgBRAGoALwAdAhwAFQIyABYCHwCKAA0AAgAeAhEAFwIiACMAJAAlACYAEAAnALsAFAAzACoAJQAZAB8CLQAuAC8AIAIcACECMgAzAB8AigAOAAIAIgIR'
..'ABcCIgAlACQAJQAmABAAJwAjArEACAAUADMAKgBLABgAKwAZACQCLQAlAlEAYAAvAAQCHwCKAAsAAgAeAREAHAImABAAJwAmAhgAZwAZAHYBLQC0AFEAIwEvACcCHAAlATIAHQAfAIoADgACADgBEQAcAiYAEAAnALAAFAA3ACoAOQFMADoBGABnABkAOwEtADwBUQBgAC8AugBUAD0BHAA+AR8AigAOAAIAKAIRABwCIgAlACQACgAmABAAJwApAhQAMwAqADkBGAAqAhkAKwItACwCLwAtAhwALgIyAB0AHwCKAA0AAgAgABEAFwIiACMAJAAKACYAEAAnAC8CFAAzACoAhgAYACsAGQAwAi0AhwEvADECHAAhAh8AigAMAAIAMgIRABwCIgCGACYAEAAnADMCSgBVACoAXQBMADQCGQA1Ai0ANgJRADcCLwBTAB8AigAMAAIAOAIRABwCIgCGACQAJQAmABAAJwAoACoAXQBMAG8AGQA1Ai0AHQFRADcCLwA5Ah8AigAPAAIAOgIRABcCJgAQACcALgBKAB0AFAA3ACoAhgBMADoB'
..'GABnABkAOwEtADwBUQBgAC8AOwJUAD0BHAA8Ah8AigANAAIAPQIRABwCIgCGACQAJQAmABAAJwA+AhQAMwAqADkBGQCBAS0AbwAvAD8CHABAAjIAHQAfAIoADQACAEECEQAcAiIAhgAkADMAJgAQACcAPgIUADMAKgA5ARkAgQEtAG8ALwA/AhwAQAIyAB0AHwCKAA0AAgBCAhEAHAIiAIYAJAAzACYAEAAnACgASgBVACoAXQBMAG8AGQA1Ai0AHQFRAEMCLwBEAh8AiQAOAAIARQIRABwCIgBbACQAJQAmABAAJwAuABQAMwAqAEgBGAArABkARgItAB0BLwBHAhwATQEyAB0AHwCJAA4AAgBIAhEAHAIiAFsAJAAlACYAEAAnALsAFAAzACoASAEYACsAGQBJAi0AHQEvAGEAHABNATIAHQAfAIkADgACAEoCEQAcAiIAWwAkADMAJgAQACcAuwAUADMAKgBIARgAKwAZAEkCLQAdAS8AYQAcAE0BMgAdAB8AiQAOAAIASwIRABwCIgBbACQAMwAmABAAJwAuABQAMwAqAEgBGAAr'
..'ABkARgItAB0BLwBHAhwATQEyAB0ABQBFAAkAAgBMAgkACgANAE0CFAAJAhYATgIYAAkCGQBPAhsACgAcAB0AHgCeAAIADQBjARQAZAEfAJ8AEAACAEoCRwBOAREAFwIiANoAJAAzACYAEAAnAAMCsQAIACoASAEYAGcAGQBQAi0AUAFRAKMALwBRAhwAUgIyAB0AHwCfABAAAgBFAREAFwIiAFsAJAAzACYAEAAnALsAsQAIABQAMwAqAEgBGAArABkAUwItAFABUQBLAS8AVAIcAE0BMgAdAB8AnwAOAAIAOAERABcCJgAQACcAOAAUADcAKgA5AUwAVQIYAGcAGQA7AS0APAFRAGAALwC6AFQAPQEcAD4BHwCfABAAAgBIAkcASAARABcCIgDaACQAMwAmABAAJwAsAbEACAAqAEgBTACDARgAKwAZAE8BLQBQAVEAowAvAM8AMgAdAB8AngAOAAIAVgJHAEgAEQAXAiIANgAmABAAJwBXAhQAMwAqAFgCGAArABkAWQItAFoCUQBgAC8AFAIyAPYBHwCeAA0AAgBbAkcAXAIRAF0C'
..'IgCGACYAEAAnAC4AKgCHAEwAiAAYAGcAUQBeAi8AXwIcAGACMgAdAB8AngANAAIAYQIRABcCJABnASYAEAAnAJEAKQChABQANwAqAIcAGABnABkAYgItALQALwAUAhwAYwIfAJ4ADgACAHkARwCmACIANgAkACUAJgAQACcA0AAqAIYATACkARgAZwAZAGQCLQA6AFEAYAAvAIEAMgAdAAUARQAMAAIAZQILAGYCDQBnAhEAaAJpAjMAagJrAhQA5wEWAGwCbQIzABgA6QEZAG4CHAAdAB4AqAAAAB8AqQATAgIARgBHAEgAEQAhACIAJQAmABAAJwBJACkAHQBKAB0AKgBLAEwATQAYAE4AGQBvAi0A6wFRAFIALwBTAFQAVQAcAFYAVwAzADIANwASAQoABAElAB8AqQAOAgIAWQARACEAIgA2ACYAEAAnAC4AFAAzACoAXQBMAHACGAArABkAcQItAJwAUQBgAC8AcgIyADMAEgEKAAQBcwIfAKkADwICAGIAEQB0AiIAWwAkADcAJgAQACcAdQIqAGUATABmABgAZwAZAGICLQB2'
..'AlEAagAvAGsAHABsADIAHQASAQoABAElAB8AqQAQAgIAbQBHAKYAEQB3AiIANgAkADcAJgAQACcALgAqAGUATABmABgAZwAZAGICLQB2AFEAagAvAHAAHABxADIAcgASAQoABAE2AB8AqQAPAgIAcwARAHQAIgA2ACQANwAmABAAJwDQACoAZQBMAGYAGABnABkAgQEtADoAUQBqAC8AcAAcAHcAMgAdABIBCgAEAYYAHwCpAA8CAgB5AEcAegARAHsAIgAlACQAJQAmABAAJwB8ACoAfQBMAGcAGABnABkAeAItAB0BUQCAAC8AgQAcAIIAEgEKAAQBhgAfAKkADgICAIMARwB6ABEAeQIiAIYAJgAQACcALgAqAIcATACIABgAZwAZAPcBLQBvAFEAYAAvAGsAHACMABIBCgAEAYYAHwCpABMCAgBGAEcAnwARAJgAIgA2ACQAMwAmABAAJwCgACkAoQAqAF0ATACiABgAZwAZAHoCLQAdAVEAowAvAKQAVABVABwApQBXADcAMgA3ABIBCgAEASUAHwCpAA0CAgBZABEAWgAiAHsC'
..'JgAQACcAdQIUADMAKgBdABgAKwAZAHwCLQCoAFEAqQAvAH0CMgAzABIBCgAEAZAAHwCpAA4CAgBZABEAfgIiAFsAJAAlACYAEAAnADMCFAAzACoAXQBMAKsAGAArABkAfwItAJwAUQCsAC8AgAISAQoABAFLAB8AqQAPAgIAcwARAHQAIgAlACQANwAmABAAJwAuACoAZQBMAGYAGABnABkAgQEtAOsBUQBqAC8AcAAcAHcAMgAdABIBCgAEASUAHwCpAA0CAgBZABEACAEiAHsCJgAQACcAXgEUADMAKgBdABgAgQIZAHwCLQCoAFEAqQAvAIICMgA3ABIBCgAEAUsAHwCpAAwCAgCDAhEAtwAmABAAJwDCACkAHQCxAAgAKgA2ABgAsgAZANcALQC0AC8AwwAcALYAEgEKAAQBMwAfAKkADQICAK8AEQAIASYAEAAnANAAsQAIABQANwAqADYATAC4ABgAsgAZAIQCLQC0AC8AhQIcANkAEgEKAAQBMwAfAKkADQICAIYCEQAhACYAEAAnAPwAKQDfALEACAAUADcAKgA2ABkAhAIt'
..'ALQALwCHAlQAiAIcAIkCEgEKAAQBHQAfAKkACwICADQAEQCKAiIAJQAmABAAJwAuACoAHQBMACEBGQDOAS8AyQAcADwAMgAdABIBCgAEAR0AHwCpAA0CAgCvABEACAEmABAAJwDQALEACAAUADcAKgA2AEwAuAAYALIAGQCEAi0AtAAvAIsCHADZABIBCgAEAR0AHwCpAA8CAgBVAREAIQAiAFYBJAAlACYAEAAnAIwCKQBYASoAhgBMAKsAGABnABkAjQItAI4CUQBgAC8AMAAyAI8CEgEKAAQBNgAFAEUADgACAJACBwAIAJECNwAJADcACwBmAg0AkgIPABAAEQBoApMCNwBpAjcAFgCUAm0CNwAZAJUCHAAdAB4AvAACAA0AlgIWAJcCHwC9AA4CAgDuAUcASAARAJgCIgB7AiQAJQAmABAAJwCRACkAHQAqAIYAGQCZAi0AmgJRAGAALwCbAhwAWgESAQoABAE2AB8AvQAQAgIAVQERAJgCIgBWASQAJQAmABAAJwBXASkAWAEqAIYATACrABgAZwAZAFkBLQA6AFEAYAAvADAA'
..'VABVABwAWgESAQoABAE2AB8AvQAOAgIA7gERAJwCIgBWASQAJQAmABAAJwD8ABQAMwAqAIYAGAArABkA8AEtAJ0CUQBgAC8ABAIcAFoBEgEKAAQBNgAfAL0ADQICAJ4CEQCfAiQAJQAmABAAJwB1AhQANwAqADYATACgAhgAbwAZAKECLQC0AC8AogIcAKMCEgEKAAQBMwAfAL0ADAICAJ4CEQCkAiQAJQAmABAAJwD8ACoANgAZAM4BLQC0AFEAYAAvAKUCHACjAjIAHQASAQoABAEzAB8AvQALAgIAngIRAKYCJAAlACYAEAAnAC4AKgA2ABkApwItALQAUQBgAC8AqAIcAKkCEgEKAAQBMwAFAEUABwACAKoCCQAKAA0AqwIWAKwCGQBPAhsACgAcAB0AHgDEAAEAAgCtAh8AxQANAQIArgIRAK8CIgA2ACQANwAmABAAJwC7ACkAHQCxAAgAKgA2ABgAZwAvALgBHAC5ATIAHQAEATMAHwDFAAwBAgCwAhEAsQIiADYAJAA3ACYAEAAnADMCKgAdAEwAsgIZALMCLwC0AhwAtQIy'
..'ADMABAEdAAUARQANAAIAtgIHAAgACQAKAAsABgINALcCDwAQABEACAIUAAkCFgC4AhgACQIZAAsCGwAKABwAHQAeAMgAAQACALkCHwDJABACAgANAkcADgIRAA8CIgAlACQAZwEmABAAJwC6AioAEQJMABICGABnABkAEwItAB0BUQBqAC8AFAIcABUCMgAWAhIBCgAEAQUBHwDJABACAgA6AkcAuwIRABcCJgAQACcALgBKAB0AFAA3ACoAhgBMADoBGABnABkAOwEtADwBUQBgAC8AOwJUAD0BHAA8AhIBCgAEASUABQBFAAcAAgC8AgkACgANAL0CFgC+AhkAvwIbAAoAHAAdAB8AzAAPAQIA+QBHAKkBEQAIASIAwAImABAAJwBJACkAoQAqAEgBTADBAhkAwgItAOsBUQBqAC8AwwJXACUAMgDfAAQBcwIfAMwAEAECAPkARwDEAhEACAEmABAAJwDFAikA3wAUADMAKgBLAEwA/QAYAP4AGQD/AC0AAAFRAAEBLwACARwAAwEyAN8ABAFzAh8AzAAPAQIABgFHAAcBEQAIASYA'
..'EAAnAMYCKQDfABQAMwAqAEsATAD9ABgA/gAZAP8ALQAAAVEAAQEvAMcCHAADAQQBcwIfAMwAEAECAAYBRwAHAREACAEmABAAJwDIAikA3wAUADMAKgBLAEwA/QAYAP4AGQD/AC0AAAFRAAEBLwAJARwAAwEyAHgABAFzAh8AzAAPAQIA+QBHAMkCEQAIASIAwAImABAAJwBJACkAoQAqAEgBTADBAhkAygItAOsBUQBqAC8AwwJXACUAMgDfAAQBcwIFAEUACQACAMsCBwAIAAkACgANAMwCDwAQABYAzQIZAM4CGwAKABwAHQAeANIAAAAfANMADwECAM8CEQDQAiIAhgAkACUAJgAQACcA0QIpAB0AFAAzACoAWAIYACsAGQDSAi0AHQFRAKwALwAEAjIA9gEEATYAHwDTAA8BAgBzAEcASAARAF0CIgDTAiYAEAAnANAAKgCHAEwAiAAYAGcAGQDUAi0AHQFRANUCLwBfAhwAYAIyAB0ABAEFAR8A0wAOAQIArwARALcAJgAQACcA0ACxAAgAFAA3ACoANgBMANYCGACyABkA1wIt'
..'ALQALwB3ARwAtgAyADMABAEzAB8A0wAOAQIA2AIRANACIgCGACYAEAAnANECKQAdABQAMwAqAFgCGAArABkA0gItAB0BUQAPAS8ABAIyAPYBBAE2AB8A0wAMAQIAgwIRALcAJgAQACcA2QKxAAgAFAA3ACoANgAZAIEBLQC0AC8AdAEcALYAMgAzAAQBMwDaAgEAAgACANsC3QLeAt8C2QAKAAIA4AILAOECDQDiAhEA4wJqAuQCFgDlAhkA5gLnAugC6QLqAusC7AIeANoAAQACAO0CHgDaAAMAAgDlAA0A7gIWAO8C6ADcAAgAAgCYAREA8AInAPECLwDuAO8A8ADxADMAHADyAPMA9ADoANwACAACAPICEQDzAicAVQAvAO4A7wDwAPEAMwAcAPIA8wD0AOgA3AAJAAIA9AIRAPUC7QAIACcA8QIvAPYC7wDwAPEAMwAcAPIA8wD3Ah4A2gADAAIA5QANAPgCFgD5Ah8A2gAMAQIAqAERAAgBIgBWASQAJQAnAKoBKgCGAEwAqwAYAGcAGQD6AlEAYAAvAKwBHABaAQQBhgAfANoA'
..'DgECAO4BRwBIABEACAEiADYAJAAlACcALgApAFgBKgCGAEwAqwAYAGcAGQDwAVEAYAAvADAAHADxAQQBNgDaAgEAAgACAPsC3QL8Av0C4wAFAP4CEAD/AjMAAANVAAEDkAACA3sCAwPkAAAABQDjAAsAAgAEAwkACgANAAUDDwAQAGoCBgMUAOcBFgAHAxgA6QEZAAgDGwAKABwAHQAJA+YAAQACAAoDCQPmAAIAAgANAw4DDwMFAOMACQACAA0DCQAKAA0AEANqAgYDFAARAxYAEgMYABMDGQAUAxsACgAVA+kABAAWAxcD5wLoAhgD7AIZAyUAHgDpAAMAAgDrAA0AGgMWABsDHgDpAAMAAgAcAw0AHQMWAB4D6ADpAAUAJwBVAEoAHQAvAB8D8QAzABwAswIeAOkAAQACACADHwDuABACAgAgAxEAIQMiADYAJABnASYAEAAnACIDKQAdALEACAAUADMAKgBLAEwAgwEZACMDLQBaAlEAYAAvACQDHABNARIBJQMEAYYAHwDuAA8CAgChAUcAyQIRACEDIgCGACQAZwEmABAAJwAm'
..'AykAHQCxAAgAKgBYAhkAJwMtACgDUQBgAC8AKQMyADMAEgEKAAQBNgAfAO4ADAECADQAEQAhAyIAKgMkAGcBJgAQACcAuwAqAB0AGQArAy0AtwEvACwDHAAtAzIAMwAEAR0AHwDuAA8BAgAuAxEAmAIiACUAJABnASYAEAAnALsAKQAdALEACAAqADYAGABnABkAYgItALcBLwC4ARwAuQEyAB0ABAEzAB8A7gALAQIANAAiADYAJAAKACYAEAAnADMCKgAdAEwAsgIZALMCLwAvAxwAtQIyADMABAEdAB8A7gAMAQIANAARADADIgA2ACQANwAmABAAJwAzAioAHQBMALICLQDrAS8AMQMcALUCMgAzAAQBHQAeAOkAAQACADIDHwD1AAsBAgAzAyIANgAkAAoAJgAQACcAMwIqAB0ATACyAhkAswIvADQDHAC1AjIAMwAEAR0AHwD1AAsBAgA1AyIANgAkAAoAJgAQACcAuwApAB0AsQAIACoANgAYAGcALwC4ARwAuQEEAR0AHgDpAAMAAgA2Aw0ANwMWADgDHwD4AA0CAgD5AEcA'
..'+gARADkDJwDQACkA3wAqAEsATAD9ABgA/gAZADoDLQAuAFEAiwAvAAIBHAADARIBCgAEAQUBHgDpAAMAAgA2Aw0AOwMWADwDHwD6AA0CAgD5AEcA+gARADkDJwDQACkA3wAqAEsATAD9ABgA/gAZADoDLQAuAFEAiwAvAAIBHAADARIBCgAEAQUBHgDpAAMAAgA9Aw0APgMWAD8DHwD8AA0BAgCzAREAmAIiACUAJABnASYAEAAnALsAKQAdALEACAAqADYAGABnAC0AtwEvALgBHAC5AQQBMwAfAPwADgICAEADEQAhAyIAhgAkAGcBJgAQACcAJgMpAB0AsQAIACoAWAIYAGcAGQBBAy0AtwFRAGAALwApAxIBCgAEATYAHwD8AA4BAgCzAREAmAIiACUAJABnASYAEAAnALsAKQAdALEACAAqADYAGABnABkA0gEtALcBLwC4ARwAuQEEATMAHgDpAAEAAgCtAh8AAAENAQIArgIRAK8CIgA2ACQANwAmABAAJwC7ACkAHQCxAAgAKgA2ABgAZwAvALgBHAC5ATIAHQAEATMAHwAA'
..'AQwBAgCwAhEAsQIiADYAJAA3ACYAEAAnADMCKgAdAEwAsgIZALMCLwC0AhwAtQIyADMABAEdAB4A6QABAAIAQgMfAAMBDQECALMBEQAcAiIAJQAkAGcBJwC7ACkAHQCxAAgAKgA2ABgAZwAZAEMDLQC3AS8AcAAcALkBBAEzAB8AAwEOAQIAQAMRAEQDIgAlACQAZwEnALsAKQAdALEACAAqADYAGABnABkAQwMtALcBLwDTARwAuQEyAEUDBAEzAB8AAwEOAQIARgMRAEcDIgAlACQAZwEnALsAKQAdALEACAAUADcAKgA2ABkASAMtALQALwApAxwAuQEyAEkDBAEzAAUA4wAKAAIACgMJAAoADQAFA2oCBgMUAOcBFgAHAxgA6QEZAAgDGwAKABwAHQBKAwcBBQACAEsDTANlAE0DewJOAzcATwNQA0oDBwEGAAIAUQNMA2UATQN7Ak4DNwBPA1IDUwNUA0oDBwEHAAIAVQNWAwgATANlAE0DewJOAzcATwNXA1MDHQAfAAcBDQACAFgDEQBZAycA0AApAB0AsQAIACoASwBMAFoD'
..'GABnABkAQwMtALQAUQBqAC8AWwMcAFwDHgAHAQMAAgBdAw0AXgMWAF8DYAMMAQsAAgBhAxEAmADtAAgAKQBrAS8AYgPvADMA8QAzAGMDoQAcAGQDZQMzAGYDCgBgAwwBCgACAGEDEQAhA+0ACAApAB0ALwBnA+8ANgDxADMAYwNoAxwAaQNmA1UAYAMMAQsAAgBhAxEAagPtAAgAKQBrAS8AawPvADMA8QAzAGMDbAMcAG0DZQM3AGYDCgBgAwwBCwACAGEDEQBqA+0ACAApAGsBLwBuA+8AMwDxADMAYwNvAxwAcANlAzMAZgMKAB4ABwEDAAIAcQMNAHIDFgBzA2ADEQELAAIAYQMRAJgA7QAIACkAawEvAGID7wAzAPEAMwBjA6EAHABkA2UDMwBmAwoAYAMRAQoAAgBhAxEAIQPtAAgAKQAdAC8AZwPvADYA8QAzAGMDaAMcAGkDZgNVAGADEQELAAIAYQMRAGoD7QAIACkAawEvAGsD7wAzAPEAMwBjA2wDHABtA2UDNwBmAwoAYAMRAQsAAgBhAxEAagPtAAgAKQBrAS8AbgPv'
..'ADMA8QAzAGMDbwMcAHADZQMzAGYDCgAeAAcBAwACAHQDDQB1AxYAdgNgAxYBCwACAGEDEQCYAO0ACAApAGsBLwBiA+8AMwDxADMAYwOhABwAZANlAzMAZgMKAGADFgEKAAIAYQMRACED7QAIACkAHQAvAGcD7wA2APEAMwBjA2gDHABpA2YDVQBgAxYBCwACAGEDEQBqA+0ACAApAGsBLwBrA+8AMwDxADMAYwNsAxwAbQNlAzcAZgMKAGADFgELAAIAYQMRAGoD7QAIACkAawEvAG4D7wAzAPEAMwBjA28DHABwA2UDMwBmAwoAHgAHAQMAAgB3Aw0AeAMWAHkDYAMbAQsAAgBhAxEAmADtAAgAKQBrAS8AYgPvADMA8QAzAGMDoQAcAGQDZQMzAGYDCgBgAxsBCgACAGEDEQAhA+0ACAApAB0ALwBnA+8ANgDxADMAYwNoAxwAaQNmA1UAYAMbAQsAAgBhAxEAegPtAAgAKQBrAS8AawPvADMA8QAzAGMDbAMcAG0DZQM3AGYDCgBgAxsBCwACAGEDEQB6A+0ACAApAGsBLwBuA+8A'
..'MwDxADMAYwNvAxwAcANlAzMAZgMKAB4ABwEDAAIAewMNAHwDFgB9A2ADIAEMAAIAYQMRAJgAJgAQAO0ACAApAGsBLwBiA+8AMwDxADMAYwOhABwAZANlAzMAZgMKAGADIAELAAIAYQMRACEAJgAQAO0ACAApAB0ALwBnA+8ANgDxADMAYwNoAxwAaQNmA1UAYAMgAQwAAgBhAxEAfgMmABAA7QAIACkAawEvAGsD7wAzAPEAMwBjA2wDHABtA2UDNwBmAwoAYAMgAQwAAgBhAxEAfgMmABAA7QAIACkAawEvAG4D7wAzAPEAMwBjA28DHABwA2UDMwBmAwoAHgAHAQEAAgDKAB8AJQEOAQIArwARACEAJgAQACcAsAApAB0ASgAdALEACAAUADcAKgA2ABgAsgAZAH8DLQC0AC8AtQAcALYABAEdAB8AJQENAQIArwARALcAJgAQACcAXACxAAgAFAA3ACoANgBMALgAGACyABkAfwMtALQALwC6ABwAtgAEATMAHwAlAQwBAgCvABEAtwAmABAAJwC7ALEACAAUADcAKgA2ABgAsgAZ'
..'AH8DLQC0AC8AvAAcALYABAEzAB8AJQENAQIArwARALcAJgAQACcAwgApAB0AsQAIABQANwAqADYAGACyABkAfwMtALQALwDDABwAtgAEATMAHwAlAQoBAgA0ABEAxgAiACUAJgAQACcAxwAqAB0AGQDOAS8AyQAcADwAMgAzAAQBHQAeAAcBAQACAIADHwArARMBAgBGAEcASAARACEAIgAlACYAEAAnAC4AKQAdAEoAHQAqAEsATABNABgATgAZAHoCLQDrAVEAUgAvAFMAVABVABwAVgBXADMAMgBYAAQBNgAfACsBDQECAFkAEQBaACIAhgAmABAAJwDQABQAMwAqAF0AGAArABkAcQItAF8AUQBgAC8AYQAyADMABAFYAh8AKwEPAAIAYgARAGMAIgBbACQANwAmABAAJwB1AioAZQBMAGYAGABnABkAYgItAGkAUQBqAC8AawAcAGwAMgAdAB8AKwEOAQIAbQARAG4AIgA2ACQANwAmABAAJwAuACoAZQBMAGYAGABnAC0AdgBRAGoALwBwABwAcQAyAHIABAE2AB8AKwEPAAIA'
..'cwARAHQAIgA2ACQANwAmABAAJwAuACoAZQBMAGYAGABnABkAgQEtAOsBUQBqAC8AcAAcAHcAMgAdAB8AKwEPAQIAeQBHAHoAEQB7ACIAJQAkACUAJgAQACcAfAAqAH0ATABnABgAZwAZAHgCLQAdAVEAgAAvAIEAHACCAAQBhgAfACsBDgECAIMARwCEABEAhQAiAIYAJgAQACcALgAqAIcATACIABgAZwAZAPcBLQCBA1EAiwAvAGsAHACMAAQBhgAfACsBEAECAI0ARwCOABEAjwAiAJAAJAAlACYAEAAnAJEAKgCHAEwAiAAYAGcAGQBiAi0AbwBRAJMALwCUABwAlQBXAJYABAGWAB8AKwETAQIARgBHAJ8AEQCYACIANgAkADMAJgAQACcAoAApAKEAKgBdAEwAogAYAGcAGQB6Ai0AHQFRAKMALwCkAFQAVQAcAKUAVwA3ADIANwAEAQUBHwArAQ4AAgBZAEcApgARAFoAIgA2ACYAEAAnAC4AFAAzACoAXQAYACsAGQCCAy0AqABRAKkALwCqADIAMwAfACsBDgECAFkAEQBa'
..'ACIAWwAkACUAJgAQACcALgAUADMAKgBdAEwAqwAYACsAGQB/Ai0AdgBRAKwALwCDAwQBSwAfACsBDwACAHMAEQB0ACIAJQAkADcAJgAQACcALgAqAGUATABmABgAZwAZAIEBLQDrAVEAagAvAHAAHAB3ADIAHQBKAwcBBwACAIQDVgMIAEwDZQBNA3sCTgM3AE8DhQNTAx0AAQABAAEAAgCGAwUAOQENAAIAhwMJAAoACwCIAw0AiQMPABAAigMQABEAiwMTAAgAagLkAhYAjAMZAI0DGwAKABwAHQDoADoBBQARAI4DJgAQACcAtQFKAB0AHADZAB4AOgEDAAIAjwMNAJADFgCRAx4AOgEDAAIAkgMNAJMDFgCUAx4AOgEDAAIAlQMNAJYDFgCXA+gAPgEJAAIAmAMRAJkDJgAQAO0ACAAnALUBKQAdAC8AmgMcAPIA8wDUAugAPgEKABEAmQMmABAA7QAIACcAtQEpAB0ALwCbA+8A8ADxADMAHADyAPMA1ALoAD4BDAACAJwDEQCZAyYAEADtAAgAJwDiASkAHQCdAwoALwCeA+8A'
..'nwPxADMAHACgA/MAoQPoAD4BCAARAJkDJgAQAO0ACAAnAPUAKQAdAC8AogMcAPIA8wDUAugAPgEKAAIAnAMRAJkDJgAQAO0ACAAnAOIBKQAdAJ0DCgAvAKMDHACgA/MApAMeADoBAgANAKUDFgCmA6cDOgECAAIAqAMOA6kDpwM6AQIAAgCqAw4DqwOnAzoBAgACAKwDDgOtA6cDOgECAAIArgMOA68DpwM6AQIAAgCwAw4DsQOnAzoBAgACALIDDgOzA6cDOgECAAIAtAMOA7UD2gI6AQIAAgC2A90CtwPfAkwBDQACALQDCwBmAg0AuAMPABAAEQBoAhMACABqArkDFADnARYAugMYAOkBGQC7A+cCvAPpArsDLwBNAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwBNAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAE0BBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAE0BBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAE0BBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAv'
..'AE0BBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAkwBDQACALADCwBmAg0AyQMPABAAEQBoAhMACABqArkDFADnARYAygMYAOkBGQDLA+cCzAPpAssDLwBUAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwBUAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAFQBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAFQBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAFQBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAFQBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAkwBDQACALIDCwBmAg0AzQMPABAAEQBoAhMACABqArkDFADnARYAzgMYAOkBGQDPA+cC0APpAs8DLwBbAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwBbAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAFsBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAFsBBgACAMYDvgMdAL8DwAMvAMED'
..'wgNVAMMDVQAvAFsBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAFsBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAkwBDQACAKoDCwBmAg0A0QMPABAAEQBoAhMACABqAtIDFADnARYA0wMYAOkBGQDUA+cC1QPpAtQDLwBiAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwBiAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAGIBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAGIBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAGIBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAGIBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAkwBDQACAKgDCwDWAw0A1wMPABAAEQDYAxMACABqArkDFADnARYA2QMYAOkBGQDaA+cC2wPpAtoDLwBpAQYAAgC9A74DMwC/A9wDLwDBA8IDVQDDA1UALwBpAQUAAgDEA78D3AMvAMEDwgNVAMMDVQAvAGkBBgACAMUDvgNn'
..'Ab8D3AMvAMEDwgNVAMMDVQAvAGkBBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvAGkBBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvAGkBBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDfAkwBDQACAKwDCwBmAg0A3QMPABAAEQBoAhMACABqArkDFADnARYA3gMYAOkBGQDfA+cC4APpAt8DLwBwAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwBwAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAHABBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAHABBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAHABBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAHABBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAkwBDQACAK4DCwBmAg0A4QMPABAAEQBoAhMACABqAtIDFADnARYA4gMYAOkBGQDjA+cC5APpAuMDLwB3AQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UA'
..'LwB3AQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAHcBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAHcBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAHcBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAHcBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQAFADkBDAACAOUDCQAKAAsA5gMNAOcDDwAQABEA6AMTAAgAagLkAhYA6QMZAI0DGwAKABwAHQAeAH4BAwACAI8DDQDqAxYA6wMeAH4BAwACAJIDDQDsAxYA7QPoAH4BBQARAI4DJgAQACcAtQFKAB0AHADZAB4AfgEDAAIAlQMNAJYDFgCXA+gAggEJAAIAmAMRAJkDJgAQAO0ACAAnALUBKQAdAC8AmgMcAPIA8wDUAugAggEKABEAmQMmABAA7QAIACcAtQEpAB0ALwCbA+8A8ADxADMAHADyAPMA1ALoAIIBDAACAJwDEQCZAyYAEADtAAgAJwDiASkAHQCdAwoALwCeA+8AnwPxADMAHACgA/MAoQPoAIIBCAAR'
..'AJkDJgAQAO0ACAAnAPUAKQAdAC8AogMcAPIA8wDUAugAggEKAAIAnAMRAJkDJgAQAO0ACAAnAOIBKQAdAJ0DCgAvAKMDHACgA/MApAMeAH4BAgANAKUDFgCmA6cDfgECAAIA7gMOA+8DpwN+AQIAAgDwAw4D8QOnA34BAgACAPIDDgPzA6cDfgECAAIA9AMOA/UDpwN+AQIAAgD2Aw4D9wOnA34BAgACAPgDDgP3A6cDfgECAAIA+QMOA/oD2gJ+AQIAAgD7A90C/APfApABDQACAPADCwBmAg0A/QMPABAAEQBoAhMACABqAtIDFADnARYA/gMYAOkBGQD/A+cCAATpAv8DLwCRAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCRAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAJEBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAJEBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAJEBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAJEBBgACAMgDvgMKAL8DwAMvAMED'
..'wgNVAMMDVQDfApABDQACAO4DCwBmAg0AAQQPABAAEQBoAhMACABqArkDFADnARYAAgQYAOkBGQADBOcCBATpAgMELwCYAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCYAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAJgBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAJgBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAJgBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAJgBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfApABDQACAPkDCwBmAg0ABQQPABAAEQBoAhMACABqAtIDFADnARYABgQYAOkBGQAHBOcCCATpAgcELwCfAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCfAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAJ8BBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAJ8BBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAJ8BBgACAMcDvgM3'
..'AL8DwAMvAMEDwgNVAMMDVQAvAJ8BBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfApABDQACAPYDCwBmAg0ACQQPABAAEQBoAhMACABqArkDFADnARYACgQYAOkBGQALBOcCDATpAgsELwCmAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCmAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAKYBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAKYBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAKYBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAKYBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfApABDQACAPQDCwBmAg0ADQQPABAAEQBoAhMACABqArkDFADnARYADgQYAOkBGQAPBOcCEATpAg8ELwCtAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCtAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAK0BBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAK0B'
..'BgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAK0BBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAK0BBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfApABDQACAPgDCwBmAg0ACQQPABAAEQBoAhMACABqArkDFADnARYACgQYAOkBGQARBOcCEgTpAhEELwC0AQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwC0AQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvALQBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvALQBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvALQBBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvALQBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfApABDQACAPIDCwDWAw0AEwQPABAAEQDYAxMACABqArkDFADnARYAFAQYAOkBGQAVBOcCFgTpAhUELwC7AQYAAgC9A74DMwC/A9wDLwDBA8IDVQDDA1UALwC7AQUAAgDEA78D3AMvAMEDwgNV'
..'AMMDVQAvALsBBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvALsBBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvALsBBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvALsBBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQAXBAEABAACABgEJgAQABkEaAMaBKEA2gIBAAIAAgBYA90CGwQfAMMBDwACAFgDRwBIACIAHQAnANAAKQAdAEoAHQCxAAgAKgA2ABgAZwAZABwELQC7AVEAHQQvAB4EHAAfBDIA3wAfAMMBDAACAFgDJwBsAbEACAAqAIYATABaAxgAZwAZACAELQA4AFEAagAvAFsDHAAhBDIA3wAfAMMBDwACAFgDRwBIACIAHQAnACIEKQAdAEoAHQCxAAgAKgAjBBgAZwAZACQELQC7AVEAHQQvACUEHAAmBDIA3wAfAMMBEAACAFgDRwCfACIAJQAnADMCKQAdAEoAHQCxAAgAKgAnBEwAsgIYAGcAGQAoBC0AuwFRAB0ELwApBBwAKgQyAN8AHwDDAQ0AAgBYA0cA'
..'KwQnAC4AsQAIACoAJQBMACwEGABnABkALQQtADgAUQBqAC8ApAAcAC4EMgAdAB8AwwEPAAIAWANHAEgAIgAdACcAIgQpAB0ASgAdALEACAAqACMEGABnABkAHAQtALsBUQAdBC8AHgQcAB8EMgDfAAUAAQAMAAIALwQHAAgACQAKAA0AMAQPABAAigMQABMACAAWADEEGQAyBBsACgAcAB0AMwQKADQEygEGAAIANQQ2BB0ANwQIADgECAA5BAgAGQA6BDsEywEMAAIAPAQ9BD4EPwQdABkAQARBBEIEQwREBEUEPgRGBAgARwRIBEkESgRLBAoATAQIAE0EzAECABEATgQYAE8EBQABAA0AAgBQBAcACAAJAAoACwBRBA0AUgQRAFMEagK5AxQAVAQWAFUEGABWBBkAGgEbAAoAHABVAB8AzgEOAAIAVwQRAFgEIgDwACcAsAApAB0AKgBZBEwAWgQYAGcAGQBbBC0AXARRAGoALwBdBBwAXgQyAF8EHwDOAQkAEQBgBCcALgApAB0AKgAlAEwAYQQYAGIEGQBjBFEAZAQvAGUEBQAB'
..'AAwAAgBmBAcACAAJAAoADQAwBA8AEACKAxAAEwAIABYAMQQZAGcEGwAKABwAHQAzBAoANATRAQYAAgA1BDYEHQA3BAgAOAQIADkECAAZADoEOwTSAQwAAgA8BD0EPgQ/BB0AGQBABEEEQgRDBGgERQQ+BEYECABHBEgESQRKBEsECgBMBAgATQTTAQIAEQBpBBgATwQFAAEACgACAGoEBwAIAAkACgANAGsEDwAQABMACAAWAGwEGQBtBBsACgAcAB0AHwDVAQoAAgBuBBEAbwQiAMACJwD8ACoAcAQZAHEELQByBFEAagAvAHMEHAB0BHUE1QEBAC8AdgR3BAEAAwACAHgENgQdAHkECAB6BNgBBQACAHsEfAR9BD0EfgQWAH8EGQCABHoE2AEFAAIAgQR8BH0EPQR+BBYAggQZAIAENAQBAAgAAgCDBDYEHQA3BAgAOAQIAEoAHQCEBIUEGQCGBIcEnwA7BNsBCwACADwENwQIAD0EPgQ/BB0AGQBABEEEIwBDBIgERQQ+BEYECABHBHsCTAQIANoCAQACAAIAiQTdAooE2gLdAQIA'
..'AgCLBN0CjATfAt4BDQACAI0ECwBmAg0AjgQPABAAEQBoAhMACABqAtIDFADnARYAjwQYAOkBGQCQBOcCkQTpApAELwDfAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwDfAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAN8BBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAN8BBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAN8BBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAN8BBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAt4BDQACAJIECwBmAg0AkwQPABAAEQBoAhMACABqAtIDFADnARYAlAQYAOkBGQCVBOcClgTpApUELwDmAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwDmAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAOYBBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAOYBBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAOYBBgACAMcDvgM3'
..'AL8DwAMvAMEDwgNVAMMDVQAvAOYBBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAt4BDQACAJcECwBmAg0AmAQPABAAEQBoAhMACABqArkDFADnARYAmQQYAOkBGQCaBOcCmwTpApoELwDtAQYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwDtAQUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAO0BBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAO0BBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAO0BBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAO0BBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAt4BDQACAJwECwDWAw0AnQQPABAAEQDYAxMACABqArkDFADnARYAngQYAOkBGQCfBOcCoATpAp8ELwD0AQYAAgC9A74DMwC/A9wDLwDBA8IDVQDDA1UALwD0AQUAAgDEA78D3AMvAMEDwgNVAMMDVQAvAPQBBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvAPQB'
..'BgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvAPQBBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvAPQBBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDfAt4BDQACAKEECwDWAw0AogQPABAAEQDYAxMACABqArkDFADnARYAowQYAOkBGQCkBOcCpQTpAqQELwD7AQYAAgC9A74DMwC/A9wDLwDBA8IDVQDDA1UALwD7AQUAAgDEA78D3AMvAMEDwgNVAMMDVQAvAPsBBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvAPsBBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvAPsBBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvAPsBBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDfAt4BDQACAKYECwBmAg0ApwQPABAAEQBoAhMACABqArkDFADnARYAqAQYAOkBGQCpBOcCqgTpAqkELwACAgYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwACAgUAAgDEA78DwAMvAMEDwgNV'
..'AMMDVQAvAAICBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAAICBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAAICBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAAICBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAt4BDQACAKsECwDWAw0ArAQPABAAEQDYAxMACABqArkDFADnARYArQQYAOkBGQCuBOcCrwTpAq4ELwAJAgYAAgC9A74DMwC/A9wDLwDBA8IDVQDDA1UALwAJAgUAAgDEA78D3AMvAMEDwgNVAMMDVQAvAAkCBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvAAkCBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvAAkCBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvAAkCBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDfAt4BDQACALAECwDWAw0AsQQPABAAEQDYAxMACABqArkDFADnARYAsgQYAOkBGQCzBOcCtATpArMELwAQAgYAAgC9A74D'
..'MwC/A9wDLwDBA8IDVQDDA1UALwAQAgUAAgDEA78D3AMvAMEDwgNVAMMDVQAvABACBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvABACBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvABACBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvABACBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDfAt4BDQACALUECwDWAw0AtgQPABAAEQDYAxMACABqArkDFADnARYAtwQYAOkBGQC4BOcCuQTpArgELwAXAgYAAgC9A74DMwC/A9wDLwDBA8IDVQDDA1UALwAXAgUAAgDEA78D3AMvAMEDwgNVAMMDVQAvABcCBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvABcCBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvABcCBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvABcCBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDaAt0BAgACALoE3QK7BN8CHgINAAIAvAQLANYDDQC9'
..'BA8AEAARANgDEwAIAGoCuQMUAOcBFgC+BBgA6QEZAL8E5wLABOkCvwQvAB8CBgACAL0DvgMzAL8D3AMvAMEDwgNVAMMDVQAvAB8CBQACAMQDvwPcAy8AwQPCA1UAwwNVAC8AHwIGAAIAxQO+A2cBvwPcAy8AwQPCA1UAwwNVAC8AHwIGAAIAxgO+Ax0AvwPcAy8AwQPCA1UAwwNVAC8AHwIGAAIAxwO+AzcAvwPcAy8AwQPCA1UAwwNVAC8AHwIGAAIAyAO+AwoAvwPcAy8AwQPCA1UAwwNVAN8CHgINAAIAwQQLANYDDQDCBA8AEAARANgDEwAIAGoC0gMUAOcBFgDDBBgA6QEZAMQE5wLFBOkCxAQvACYCBgACAL0DvgMzAL8D3AMvAMEDwgNVAMMDVQAvACYCBQACAMQDvwPcAy8AwQPCA1UAwwNVAC8AJgIGAAIAxQO+A2cBvwPcAy8AwQPCA1UAwwNVAC8AJgIGAAIAxgO+Ax0AvwPcAy8AwQPCA1UAwwNVAC8AJgIGAAIAxwO+AzcAvwPcAy8AwQPCA1UAwwNVAC8AJgIGAAIA'
..'yAO+AwoAvwPcAy8AwQPCA1UAwwNVAN8CHgINAAIAxgQLAGYCDQDHBA8AEAARAGgCEwAIAGoC0gMUAOcBFgDIBBgA6QEZAMkE5wLKBOkCyQQvAC0CBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvAC0CBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8ALQIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8ALQIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8ALQIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8ALQIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CHgINAAIAywQLAGYCDQDMBA8AEAARAGgCEwAIAGoCuQMUAOcBFgDNBBgA6QEZAM4E5wLPBOkCzgQvADQCBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvADQCBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8ANAIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8ANAIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNV'
..'AC8ANAIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8ANAIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CHgINAAIA0AQLAGYCDQDRBA8AEAARAGgCEwAIAGoC0gMUAOcBFgDSBBgA6QEZANME5wLUBOkC0wQvADsCBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvADsCBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8AOwIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8AOwIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8AOwIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8AOwIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CHgINAAIA1QQLAGYCDQDWBA8AEAARAGgCEwAIAGoCuQMUAOcBFgDXBBgA6QEZANgE5wLZBOkC2AQvAEICBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvAEICBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8AQgIGAAIAxQO+A2cBvwPAAy8A'
..'wQPCA1UAwwNVAC8AQgIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8AQgIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8AQgIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CHgINAAIA2gQLANYDDQDbBA8AEAARANgDEwAIAGoCuQMUAOcBFgDcBBgA6QEZAN0E5wLeBOkC3QQvAEkCBgACAL0DvgMzAL8D3AMvAMEDwgNVAMMDVQAvAEkCBQACAMQDvwPcAy8AwQPCA1UAwwNVAC8ASQIGAAIAxQO+A2cBvwPcAy8AwQPCA1UAwwNVAC8ASQIGAAIAxgO+Ax0AvwPcAy8AwQPCA1UAwwNVAC8ASQIGAAIAxwO+AzcAvwPcAy8AwQPCA1UAwwNVAC8ASQIGAAIAyAO+AwoAvwPcAy8AwQPCA1UAwwNVANoC3QECAAIA3wTdAuAE3wJQAg0AAgDwAwsAZgINAOEEDwAQABEAaAITAAgAagLSAxQA5wEWAOIEGADpARkA/wPnAgAE6QL/Ay8AUQIGAAIAvQO+AzMAvwPAAy8AwQPC'
..'A1UAwwNVAC8AUQIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwBRAgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwBRAgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwBRAgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwBRAgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wJQAg0AAgDuAwsAZgINAOMEDwAQABEAaAITAAgAagK5AxQA5wEWAOQEGADpARkAAwTnAgQE6QIDBC8AWAIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8AWAIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwBYAgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwBYAgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwBYAgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwBYAgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wJQAg0AAgD5AwsAZgINAOUEDwAQABEAaAITAAgAagLSAxQA5wEWAOYE'
..'GADpARkABwTnAggE6QIHBC8AXwIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8AXwIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwBfAgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwBfAgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwBfAgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwBfAgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wJQAg0AAgD2AwsAZgINAOcEDwAQABEAaAITAAgAagK5AxQA5wEWAOgEGADpARkACwTnAgwE6QILBC8AZgIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8AZgIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwBmAgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwBmAgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwBmAgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwBmAgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wJQ'
..'Ag0AAgD0AwsAZgINAOkEDwAQABEAaAITAAgAagK5AxQA5wEWAOoEGADpARkADwTnAhAE6QIPBC8AbQIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8AbQIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwBtAgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwBtAgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwBtAgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwBtAgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wJQAg0AAgD4AwsAZgINAOcEDwAQABEAaAITAAgAagK5AxQA5wEWAOgEGADpARkAEQTnAhIE6QIRBC8AdAIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8AdAIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwB0AgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwB0AgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwB0AgYAAgDHA74DNwC/A8ADLwDBA8ID'
..'VQDDA1UALwB0AgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wJQAg0AAgDyAwsA1gMNAOsEDwAQABEA2AMTAAgAagK5AxQA5wEWAOwEGADpARkAFQTnAhYE6QIVBC8AewIGAAIAvQO+AzMAvwPcAy8AwQPCA1UAwwNVAC8AewIFAAIAxAO/A9wDLwDBA8IDVQDDA1UALwB7AgYAAgDFA74DZwG/A9wDLwDBA8IDVQDDA1UALwB7AgYAAgDGA74DHQC/A9wDLwDBA8IDVQDDA1UALwB7AgYAAgDHA74DNwC/A9wDLwDBA8IDVQDDA1UALwB7AgYAAgDIA74DCgC/A9wDLwDBA8IDVQDDA1UA2gLdAQIAAgDtBN0C7gTfAoICDQACAO8ECwBmAg0A8AQPABAAEQBoAhMACABqAtIDFADnARYA8QQYAOkBGQDyBOcC8wTpAvIELwCDAgYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCDAgUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAIMCBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAv'
..'AIMCBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAIMCBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAIMCBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAoICDQACAPQECwBmAg0A9QQPABAAEQBoAhMACABqAtIDFADnARYA9gQYAOkBGQD3BOcC+ATpAvcELwCKAgYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCKAgUAAgDEA78DwAMvAMEDwgNVAMMDVQAvAIoCBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAIoCBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAIoCBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAIoCBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAoICDQACAPkECwBmAg0A+gQPABAAEQBoAhMACABqAtIDFADnARYA+wQYAOkBGQD8BOcC/QTpAvwELwCRAgYAAgC9A74DMwC/A8ADLwDBA8IDVQDDA1UALwCRAgUAAgDEA78DwAMvAMED'
..'wgNVAMMDVQAvAJECBgACAMUDvgNnAb8DwAMvAMEDwgNVAMMDVQAvAJECBgACAMYDvgMdAL8DwAMvAMEDwgNVAMMDVQAvAJECBgACAMcDvgM3AL8DwAMvAMEDwgNVAMMDVQAvAJECBgACAMgDvgMKAL8DwAMvAMEDwgNVAMMDVQDfAoICDQACAP4ECwDWAw0A/wQPABAAEQDYAxMACABqArkDFADnARYAAAUYAOkBGQABBecCAgXpAgEFLwCYAgYAAgC9A74DMwC/A9wDLwDBA8IDVQDDA1UALwCYAgUAAgDEA78D3AMvAMEDwgNVAMMDVQAvAJgCBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvAJgCBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvAJgCBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvAJgCBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDfAoICDQACAAMFCwDWAw0ABAUPABAAEQDYAxMACABqArkDFADnARYABQUYAOkBGQABBecCBgXpAgEFLwCfAgYAAgC9'
..'A74DMwC/A9wDLwDBA8IDVQDDA1UALwCfAgUAAgDEA78D3AMvAMEDwgNVAMMDVQAvAJ8CBgACAMUDvgNnAb8D3AMvAMEDwgNVAMMDVQAvAJ8CBgACAMYDvgMdAL8D3AMvAMEDwgNVAMMDVQAvAJ8CBgACAMcDvgM3AL8D3AMvAMEDwgNVAMMDVQAvAJ8CBgACAMgDvgMKAL8D3AMvAMEDwgNVAMMDVQDaAt0BAgACAAcF3QIIBd8CpgINAAIAtAMLAGYCDQAJBQ8AEAARAGgCEwAIAGoCuQMUAOcBFgAKBRgA6QEZALsD5wK8A+kCuwMvAKcCBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvAKcCBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8ApwIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8ApwIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8ApwIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8ApwIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CpgINAAIAsAMLAGYC'
..'DQALBQ8AEAARAGgCEwAIAGoCuQMUAOcBFgAMBRgA6QEZAMsD5wLMA+kCywMvAK4CBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvAK4CBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8ArgIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8ArgIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8ArgIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8ArgIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CpgINAAIAsgMLAGYCDQANBQ8AEAARAGgCEwAIAGoCuQMUAOcBFgAOBRgA6QEZAM8D5wLQA+kCzwMvALUCBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvALUCBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8AtQIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8AtQIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8AtQIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8AtQIG'
..'AAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CpgINAAIAqgMLAGYCDQAPBQ8AEAARAGgCEwAIAGoC0gMUAOcBFgAQBRgA6QEZANQD5wLVA+kC1AMvALwCBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvALwCBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8AvAIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8AvAIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8AvAIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8AvAIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CpgINAAIAqAMLANYDDQARBQ8AEAARANgDEwAIAGoCuQMUAOcBFgASBRgA6QEZANoD5wLbA+kC2gMvAMMCBgACAL0DvgMzAL8D3AMvAMEDwgNVAMMDVQAvAMMCBQACAMQDvwPcAy8AwQPCA1UAwwNVAC8AwwIGAAIAxQO+A2cBvwPcAy8AwQPCA1UAwwNVAC8AwwIGAAIAxgO+Ax0AvwPcAy8AwQPCA1UA'
..'wwNVAC8AwwIGAAIAxwO+AzcAvwPcAy8AwQPCA1UAwwNVAC8AwwIGAAIAyAO+AwoAvwPcAy8AwQPCA1UAwwNVAN8CpgINAAIArAMLAGYCDQATBQ8AEAARAGgCEwAIAGoCuQMUAOcBFgAUBRgA6QEZAN8D5wLgA+kC3wMvAMoCBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvAMoCBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8AygIGAAIAxQO+A2cBvwPAAy8AwQPCA1UAwwNVAC8AygIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8AygIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8AygIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVAN8CpgINAAIArgMLAGYCDQAVBQ8AEAARAGgCEwAIAGoC0gMUAOcBFgAWBRgA6QEZAOMD5wLkA+kC4wMvANECBgACAL0DvgMzAL8DwAMvAMEDwgNVAMMDVQAvANECBQACAMQDvwPAAy8AwQPCA1UAwwNVAC8A0QIGAAIAxQO+A2cBvwPA'
..'Ay8AwQPCA1UAwwNVAC8A0QIGAAIAxgO+Ax0AvwPAAy8AwQPCA1UAwwNVAC8A0QIGAAIAxwO+AzcAvwPAAy8AwQPCA1UAwwNVAC8A0QIGAAIAyAO+AwoAvwPAAy8AwQPCA1UAwwNVANoC3QECAAIAFwXdAhgF3wLYAg0AAgAZBQsAZgINABoFDwAQABEAaAITAAgAagK5AxQA5wEWABsFGADpARkAHAXnAh0F6QIcBS8A2QIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8A2QIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwDZAgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwDZAgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwDZAgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwDZAgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wLYAg0AAgAeBQsAZgINAB8FDwAQABEAaAITAAgAagLSAxQA5wEWACAFGADpARkAIQXnAiIF6QIhBS8A4AIGAAIAvQO+AzMAvwPAAy8A'
..'wQPCA1UAwwNVAC8A4AIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwDgAgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwDgAgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwDgAgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwDgAgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wLYAg0AAgAjBQsA1gMNACQFDwAQABEA2AMTAAgAagLSAxQA5wEWACUFGADpARkAxATnAiYF6QLEBC8A5wIGAAIAvQO+AzMAvwPcAy8AwQPCA1UAwwNVAC8A5wIFAAIAxAO/A9wDLwDBA8IDVQDDA1UALwDnAgYAAgDFA74DZwG/A9wDLwDBA8IDVQDDA1UALwDnAgYAAgDGA74DHQC/A9wDLwDBA8IDVQDDA1UALwDnAgYAAgDHA74DNwC/A9wDLwDBA8IDVQDDA1UALwDnAgYAAgDIA74DCgC/A9wDLwDBA8IDVQDDA1UA3wLYAg0AAgAnBQsA1gMNACgFDwAQABEA2AMTAAgAagK5AxQA5wEW'
..'ACkFGADpARkAvwTnAioF6QK/BC8A7gIGAAIAvQO+AzMAvwPcAy8AwQPCA1UAwwNVAC8A7gIFAAIAxAO/A9wDLwDBA8IDVQDDA1UALwDuAgYAAgDFA74DZwG/A9wDLwDBA8IDVQDDA1UALwDuAgYAAgDGA74DHQC/A9wDLwDBA8IDVQDDA1UALwDuAgYAAgDHA74DNwC/A9wDLwDBA8IDVQDDA1UALwDuAgYAAgDIA74DCgC/A9wDLwDBA8IDVQDDA1UA3wLYAg0AAgArBQsAZgINACwFDwAQABEAaAITAAgAagLSAxQA5wEWAC0FGADpARkALgXnAi8F6QIuBS8A9QIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8A9QIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwD1AgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwD1AgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwD1AgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwD1AgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA'
..'3wLYAg0AAgAwBQsAZgINADEFDwAQABEAaAITAAgAagK5AxQA5wEWADIFGADpARkAMwXnAjQF6QIzBS8A/AIGAAIAvQO+AzMAvwPAAy8AwQPCA1UAwwNVAC8A/AIFAAIAxAO/A8ADLwDBA8IDVQDDA1UALwD8AgYAAgDFA74DZwG/A8ADLwDBA8IDVQDDA1UALwD8AgYAAgDGA74DHQC/A8ADLwDBA8IDVQDDA1UALwD8AgYAAgDHA74DNwC/A8ADLwDBA8IDVQDDA1UALwD8AgYAAgDIA74DCgC/A8ADLwDBA8IDVQDDA1UA3wLYAg0AAgA1BQsA1gMNADYFDwAQABEA2AMTAAgAagK5AxQA5wEWADcFGADpARkAOAXnAjkF6QI4BS8AAwMGAAIAvQO+AzMAvwPcAy8AwQPCA1UAwwNVAC8AAwMFAAIAxAO/A9wDLwDBA8IDVQDDA1UALwADAwYAAgDFA74DZwG/A9wDLwDBA8IDVQDDA1UALwADAwYAAgDGA74DHQC/A9wDLwDBA8IDVQDDA1UALwADAwYAAgDHA74DNwC/A9wDLwDB'
..'A8IDVQDDA1UALwADAwYAAgDIA74DCgC/A9wDLwDBA8IDVQDDA1UABQDdAQ0AAgA6BQkACgALADsFDQA8BQ8AEACKAxAAEQA9BRMACABqAuQCFgA+BRkAPwUbAAoAHAAdAKcDCgMCAAIAAwUOA0AFpwMKAwIAAgD5BA4DQQWnAwoDAgACAPQEDgNCBacDCgMCAAIA/gQOA0MFpwMKAwIAAgDvBA4DRAUFAN0BDQACAIcDCQAKAAsAiAMNAEUFDwAQAIoDEAARAIsDEwAIAGoC5AIWAEYFGQCNAxsACgAcAB0A6AAQAwUAEQCOAyYAEAAnALUBSgAdABwA2QAeABADAwACAI8DDQCQAxYAkQMeABADAwACAJIDDQCTAxYAlAMeABADAwACAJUDDQCWAxYAlwPoABQDCQACAJgDEQCZAyYAEADtAAgAJwC1ASkAHQAvAJoDHADyAPMA1ALoABQDCgARAJkDJgAQAO0ACAAnALUBKQAdAC8AmwPvAPAA8QAzABwA8gDzANQC6AAUAwwAAgCcAxEAmQMmABAA7QAIACcA4gEpAB0AnQMKAC8A'
..'ngPvAJ8D8QAzABwAoAPzAKED6AAUAwgAEQCZAyYAEADtAAgAJwD1ACkAHQAvAKIDHADyAPMA1ALoABQDCgACAJwDEQCZAyYAEADtAAgAJwDiASkAHQCdAwoALwCjAxwAoAPzAKQDHgAQAwIADQClAxYApgOnAxADAgACAKgDDgOpA6cDEAMCAAIAqgMOA6sDpwMQAwIAAgCsAw4DrQOnAxADAgACAK4DDgOvA6cDEAMCAAIAsAMOA7EDpwMQAwIAAgCyAw4DswOnAxADAgACALQDDgO1AwUA3QENAAIARwUJAAoACwBIBQ0ASQUPABAAigMQABEASgUTAAgAagLkAhYASwUZAI0DGwAKABwAHQCnAyIDAgACAMEEDgNMBacDIgMCAAIA2gQOA00FpwMiAwIAAgDLBA4DTgWnAyIDAgACAMYEDgNPBacDIgMCAAIA1QQOA1AFpwMiAwIAAgDQBA4DUQWnAyIDAgACALwEDgNSBQUA3QEMAAIA5QMJAAoACwDmAw0AUwUPABAAEQDoAxMACABqAuQCFgBUBRkAjQMbAAoAHAAdAB4AKgMD'
..'AAIAjwMNAOoDFgDrAx4AKgMDAAIAkgMNAOwDFgDtA+gAKgMFABEAjgMmABAAJwC1AUoAHQAcANkAHgAqAwMAAgCVAw0AlgMWAJcD6AAuAwkAAgCYAxEAmQMmABAA7QAIACcAtQEpAB0ALwCaAxwA8gDzANQC6AAuAwoAEQCZAyYAEADtAAgAJwC1ASkAHQAvAJsD7wDwAPEAMwAcAPIA8wDUAugALgMMAAIAnAMRAJkDJgAQAO0ACAAnAOIBKQAdAJ0DCgAvAJ4D7wCfA/EAMwAcAKAD8wChA+gALgMIABEAmQMmABAA7QAIACcA9QApAB0ALwCiAxwA8gDzANQC6AAuAwoAAgCcAxEAmQMmABAA7QAIACcA4gEpAB0AnQMKAC8AowMcAKAD8wCkAx4AKgMCAA0ApQMWAKYDpwMqAwIAAgDuAw4D7wOnAyoDAgACAPADDgPxA6cDKgMCAAIA8gMOA/MDpwMqAwIAAgD0Aw4D9QOnAyoDAgACAPYDDgP3A6cDKgMCAAIA+AMOA/cDpwMqAwIAAgD5Aw4D+gMFAN0BDQACAFUFCQAKAAsA'
..'SAUNAFYFDwAQAIoDEAARAEoFEwAIAGoC5AIWAFcFGQCNAxsACgAcAB0ApwM8AwIAAgAnBQ4DWAWnAzwDAgACABkFDgNZBacDPAMCAAIAHgUOA1oFpwM8AwIAAgAwBQ4DWwWnAzwDAgACACsFDgNcBacDPAMCAAIANQUOA10FpwM8AwIAAgAjBQ4DXgUFAN0BDQACAF8FCQAKAAsAYAUNAGEFDwAQAIoDEAARAGIFEwAIAGoC5AIWAGMFGQBuAhsACgAcAB0ACQNEAwMAAgBkBQ4DZQVmBWcFCQNEAwMAAgBoBQ4DaQVmBWoFCQNEAwMAAgBrBQ4DbAVmBW0FCQNEAwMAAgBuBQ4DbwVmBXAFCQNEAwMAAgBxBQ4DcgVmBXMFpwNEAwIAAgC1BA4DdAWnA0QDAgACAKEEDgN1BacDRAMCAAIAsAQOA3YFpwNEAwIAAgCXBA4DdwWnA0QDAgACAKYEDgN4BacDRAMCAAIAkgQOA3kFpwNEAwIAAgCNBA4DegWnA0QDAgACAKsEDgN7BacDRAMCAAIAnAQOA3wFHgBEAwEAAgB9BR8AUwMO'
..'AgIAfgURAH8FIgBbACYAEAAnAC8CKQAdALEACAAqACUATACABRkAgQUtALQAUQBgAC8AggUyADMAEgEKAAQBHQAfAFMDDgICAH4FEQCDBSIAWwAmABAAJwAuACkAHQCxAAgAKgAlABkAYgItALQAUQBgAC8AhAUcANkAMgAzABIBCgAEAR0AHwBTAw4CAgCFBUcAhgURAIcFIgA2ACYAEAAnAEkAKgBIAUwApAEYAGcAGQBDAy0AnABRAGAALwCIBTIA3wASAQoABAGGAB8AUwMKAgIALgMRAIkFIgAlACYAEAAnACgAKgAlABkAdQAtALcBLwCKBRwAiwUSAQoABAEdAB8AUwMMAgIAjAURAI0FIgA2ACYAEAAnAFwAKQAdACoAJQAYAGcALQB2AFEAYAAvAI4FMgAdABIBCgAEASUAHwBTAw4CAgC6AREAjwUiAFsAJgAQACcALwIpAB0AsQAIACoAHQBMAIAFGQCBBS0AtABRAGAALwCQBTIAMwASAQoABAEdAB8AUwMLAgIAkQURAJIFJgAQACcAkwUpAB0AKgA5ARkAlAUtALQA'
..'UQCVBS8AlgUcANkAEgEKAAQBHQAfAFMDDQICAJEFEQCXBSIAJQAmABAAJwC6AikAHQAqADkBGABnABkAmAUtAB0BUQCVBS8AmQUcAJoFEgEKAAQBBQEfAFMDDAICAJsFEQCcBSYAEAAnABACKQAdACoAIwAYAGcAGQCdBS0AtwFRAJUFLwCeBRwAnwUSAQoABAE3AB8AUwMNAgIAmwURAKAFJgAQACcA0AApAB0AKgAdAEwApAEYAGcAGQChBS0AtwFRAJUFLwCiBRwAowUSAQoABAEdAB8AUwMPAgIApAURAKUFIgAlACYAEAAnAFwAKQAdALEACAAqADYAGABnABkApgUtALcBUQBgAC8ApwUcAKgFMgAdABIBCgAEASUAHwBTAw8CAgCpBREAqgUmABAAJwDQACkAHQCxAAgAFAA3ACoABQEYAKsFGQBiAi0AtABRAGAALwCsBRwArQUyADMAEgEKAAQBWwAfAFMDDgICAK4FEQCvBSIAhgAmABAAJwAuACkAHQAqAFgCGACwBRkAsQUtALIFUQBgAC8AswUcALQFMgAdABIBCgAE'
..'ATYAHwBTAxACAgC1BREAtgUiADYAJABnASYAEAAnAFwAKQBoAxQAMwAqAEgBGAArABkAtwUtAI4CUQBgAC8AuAUcALkFMgDfABIBCgAEAcACHwBTAw0CAgC6BREAuwUiAFsAJgAQACcALgCxAAgAKgAlABkAYgItALQAUQBgAC8AvAUcANkAMgAzABIBCgAEASUAHwBTAw4CAgC9BREAvgUiAFsAJgAQACcALgApAB0AsQAIACoAJQAZAGICLQC0AFEAYAAvAL8FHADZADIAMwASAcAFBAE3AAUA3QENAAIAwQUJAAoACwDCBQ0AYQUPABAAigMQABEAwwUTAAgAagLkAhYAYwUZAG4CGwAKABwAHQAfAGQDEAACAMQFEQDFBSYAEAAnAC4AKQDiAUoAWAEqADcATADGBRgAWgIZAMcFLQDIBVEAyQUvAMoFVABrARwAywUyAB0ApwNkAwIAAgDMBQ4DzQUJA2QDAQACAM4F5QA9AOoAPwA9AOsAPAA+AOoAPwA+AOsAPABmAOoAZwBmAOsAZQDZANwC2gDdAOoA4ADdAOsA3ADeAOoA'
..'4ADeAOsA3ADfAOoA4ADfAOsA3ADjANwC5gDnAAsD5gDnAAwDBwHoAAsD5gDoAAwD6QDtAOoA6wDtAOsA7AANAeoADAENAesAIAEOAeoADAEOAesAIAEPAeoADAEPAesAIAEQAeoADAEQAesAIAESAeoAEQESAesAIAETAeoAEQETAesAIAEUAeoAEQEUAesAIAEVAeoAEQEVAesAIAEXAeoAFgEXAesAIAEYAeoAFgEYAesAIAEZAeoAFgEZAesAIAEaAeoAFgEaAesAIAEcAeoAGwEcAesAIAEdAeoAGwEdAesAIAEeAeoAGwEeAesAIAEfAeoAGwEfAesAIAEhAeoAIAEiAeoAIAEjAeoAIAEkAeoAIAE7AeoAPQE7AesAPAE/AeoARAE/AesAPgFAAeoARAFAAesAPgFBAeoARAFBAesAPgFCAeoARAFCAesAPgFDAeoARAFDAesAPgFFAQsDOgFFAQwDaQFGAQsDOgFGAQwDYgFHAQsDOgFHAQwDcAFIAQsDOgFIAQwDdwFJAQsDOgFJAQwDVAFKAQsDOgFKAQwDWwFLAQsDOgFL'
..'AQwDTQGBAeoAgAGBAesAfwGDAeoAiAGDAesAggGEAeoAiAGEAesAggGFAeoAiAGFAesAggGGAeoAiAGGAesAggGHAeoAiAGHAesAggGJAQsDfgGJAQwDmAGKAQsDfgGKAQwDkQGLAQsDfgGLAQwDuwGMAQsDfgGMAQwDrQGNAQsDfgGNAQwDpgGOAQsDfgGOAQwDtAGPAQsDfgGPAQwDnwELAwsDCgMLAwwDnwIMAwsDCgMMAwwDkQINAwsDCgMNAwwDigIOAwsDCgMOAwwDmAIPAwsDCgMPAwwDgwIRA+oAEwMRA+sAEgMVA+oAGgMVA+sAFAMWA+oAGgMWA+sAFAMXA+oAGgMXA+sAFAMYA+oAGgMYA+sAFAMZA+oAGgMZA+sAFAMbAwsDEAMbAwwDwwIcAwsDEAMcAwwDvAIdAwsDEAMdAwwDygIeAwsDEAMeAwwD0QIfAwsDEAMfAwwDrgIgAwsDEAMgAwwDtQIhAwsDEAMhAwwDpwIjAwsDIgMjAwwDJgIkAwsDIgMkAwwDSQIlAwsDIgMlAwwDNAImAwsDIgMmAwwDLQInAwsD'
..'IgMnAwwDQgIoAwsDIgMoAwwDOwIpAwsDIgMpAwwDHwItA+oALAMtA+sAKwMvA+oANAMvA+sALgMwA+oANAMwA+sALgMxA+oANAMxA+sALgMyA+oANAMyA+sALgMzA+oANAMzA+sALgM1AwsDKgM1AwwDWAI2AwsDKgM2AwwDUQI3AwsDKgM3AwwDewI4AwsDKgM4AwwDbQI5AwsDKgM5AwwDZgI6AwsDKgM6AwwDdAI7AwsDKgM7AwwDXwI9AwsDPAM9AwwD7gI+AwsDPAM+AwwD2QI/AwsDPAM/AwwD4AJAAwsDPANAAwwD/AJBAwsDPANBAwwD9QJCAwsDPANCAwwDAwNDAwsDPANDAwwD5wJFAwsDRANFAwwDCgNGAwsDRANGAwwDKgNHAwsDRANHAwwDPANIAwsDRANIAwwDEANJAwsDRANJAwwDIgNKAwsDRANKAwwDFwJLAwsDRANLAwwD+wFMAwsDRANMAwwDEAJNAwsDRANNAwwD7QFOAwsDRANOAwwDAgJPAwsDRANPAwwD5gFQAwsDRANQAwwD3wFRAwsDRANRAwwDCQJS'
..'AwsDRANSAwwD9AFmAwsDZANnAwsDZANnAwwDRAM=')[1]
end
end
local stand = templates.Stand
stand.Parent = script -- // owner.Character
for _, v in pairs(stand:GetDescendants()) do
if v:IsA("BasePart") then
v.Transparency = 1
v.CanTouch = false
v.CanCollide = false
v.CanQuery = false
v.Locked = true
elseif v:IsA("Texture") then
v.Transparency = 1
end
end
local sw = Instance.new("Weld", stand)
sw.Part0 = stand.StandHumanoidRootPart
sw.Part1 = owner.Character.HumanoidRootPart
sw.Enabled = true
local re = Instance.new("RemoteEvent", owner.PlayerGui)
re.Name = "SQEvent"
local rf = Instance.new("RemoteFunction", re)
rf.Name = "SQFunction"
owner.Character.Humanoid.MaxHealth = 500
owner.Character.Humanoid.Health = 500
owner.Character.Humanoid.WalkSpeed = 25
owner.Character.Humanoid:SetAttribute("OriginalWalkspeed", 25)
local lmbc = 1
local planted = {}
local http = game:GetService("HttpService")
local prefix = "https://github.com/MechaXYZ/VSBScripts/raw/main/Subspace%20Queen%20Animation%20Modules/"
local function get(url)
local result
local s, e = pcall(function()
result = http:GetAsync(prefix .. url .. ".lua")
end)
if s == false then
warn(e, prefix .. url .. ".lua")
return
end
return result
end
local function lstr(s)
local f, e = loadstring(s)
if f then
return f
else
error(e)
end
end
local anims = {
["Run"] = lstr(get("Run"))(),
["Idle"] = lstr(get("Idle"))(),
["StandIdle"] = lstr(get("StandIdle"))(),
["MineToss"] = lstr(get("MineToss"))(),
["MineSHAPlant"] = lstr(get("MineSHAPlant"))(),
["ExplosionVictim"] = lstr(get("ExplosionVictim"))(),
["Detonate"] = {
["User"] = lstr(get("DetonateUser"))(),
["Stand"] = lstr(get("DetonateStand"))()
},
["QuadBomb"] = {
["User"] = lstr(get("QuadUser"))(),
["Victim"] = lstr(get("QuadVictim"))(),
["Startup"] = lstr(get("QuadStartup"))()
},
["StandOff"] = {
["LMB"] = {
["1"] = lstr(get("SOffLMB1"))(),
["2"] = lstr(get("SOffLMB2"))(),
["3"] = lstr(get("SOffLMB3"))(),
["4"] = lstr(get("SOffLMB4"))()
},
["Foothold"] = {
["Stand"] = lstr(get("FootholdStand"))(),
["Victim"] = lstr(get("FootholdVictim"))(),
["Startup"] = lstr(get("FootholdStartup"))(),
["StandLoop"] = lstr(get("FootholdUserLoop"))(),
["VictimLoop"] = lstr(get("FootholdVictimLoop"))()
},
["FlyingUppercut"] = lstr(get("FlyingUppercut"))()
},
["StandOn"] = {
["LMB"] = {
["1"] = lstr(get("SOnLMB1"))(),
["2"] = lstr(get("SOnLMB2"))(),
["3"] = lstr(get("SOnLMB3"))(),
["4"] = lstr(get("SOnLMB4"))()
},
["BombPlant"] = {
["Kick"] = lstr(get("BombPlantKick"))(),
["Start"] = lstr(get("BombPlantStart"))()
},
["Barrage"] = {
["Loop"] = lstr(get("Barrage"))(),
["Startup"] = lstr(get("BarrageStartup"))(),
["Finisher"] = lstr(get("BarrageFinisher"))()
},
["PowerDisplay"] = {
["User"] = lstr(get("PDUser"))(),
["Victim"] = lstr(get("PDVictim"))(),
["Startup"] = lstr(get("PDStartup"))()
},
["CautiousStrike"] = lstr(get("CautiousStrike"))(),
}
}
local dbs = {
["Idle"] = false,
["EHeld"] = false,
["Summon"] = false,
["Stunned"] = false,
["Barrage"] = false,
["LMBCombo"] = false,
["Summoned"] = false,
["Detonate"] = false,
["PrimaryBomb"] = false,
["FlyingUppercut"] = false
}
local cds = {
["Summon"] = .5,
["Barrage"] = 1.5,
["LMBCombo"] = .2,
["Detonate"] = .25,
["PrimaryBomb"] = 1,
["LMBFinisher"] = .75,
["FlyingUppercut"] = 1
}
local sounds = {}
local sids = {
["LMB1"] = {"rbxassetid://6761561634", 1},
["LMB2"] = {"rbxassetid://6761562014", 1},
["LMB3"] = {"rbxassetid://", 1},
["LMB4"] = {"rbxassetid://6430931117", 1},
["SwingLMB"] = {"rbxassetid://11984254", 5},
["Explosion"] = {"rbxassetid://11984351", 1},
["Barrage"] = {"rbxassetid://7167737842", 1},
["HitSFX"] = {"rbxassetid://6706979361", .75},
["Detonate"] = {"rbxassetid://5072840932", 1},
["BombPlant"] = {"rbxassetid://2500596035", 1},
["Unsummon"] = {"rbxassetid://6846384546", .75},
["DetonateSFX"] = {"rbxassetid://7320934537", 1},
["BarrageSFX"] = {"rbxassetid://6720651784", .5},
["SummonEffects"] = {"rbxassetid://11984351", .1},
["HeavyHitSFX"] = {"rbxassetid://6164853733", .75},
["FlyingUppercut"] = {"rbxassetid://6430931117", 1},
["BarrageHitSFX1"] = {"rbxassetid://6753788004", .5},
["BarrageHitSFX2"] = {"rbxassetid://6753787336", .5},
["SummonVoiceline"] = {"rbxassetid://6417693074", .75}
}
for i, v in pairs(sids) do
local snd = Instance.new("Sound")
snd.SoundId = v[1]
snd.Volume = v[2]
snd.RollOffMinDistance = 50
snd.RollOffMaxDistance = 100
snd.RollOffMode = "InverseTapered"
sounds[i] = snd
end
local killtxts = {
"Dead. Not big surprise.",
"Retired!",
"Arigato, loser.",
"Top ten saddest attempts at anything ever",
"Consider rokaing",
"Outplayed!",
"Failure!",
"Oh come on, quit already!"
}
local overtxts = {
"less gooo",
"universal!",
"outstanding!",
"amazing!",
"incredible!",
"can you beat goku though?",
"skill issue",
"we do a little trolling",
"absolute legend",
"vec would be proud",
"mad?",
"It's skittles friday!",
"Who's Joe?",
"Style points!",
"You're suppose to dodge that.",
"FIGHT BACK!",
"FIGHT BACK COME ON!",
"Ah-Ah-Ah! It's - Your'oe.",
"Doyjaainnnn!",
"THAT'S A BIT...SUSPICIOUS",
"Ok and?",
"ONI COMBO",
"GET HIM HE RKER!@#$!#",
"YOOOOOOOOO!",
"SWAG!",
"Exaggerated Swagger of a Stand user!",
"Next time i'll hit you with the- E+R+T+V+Y+LMB+LMB+LMB+F+H+U+E+R+F+LMB+LMB+LMB+LMB combo for sure!",
"Hmmmm, nice!",
"Do better!",
"When Update?",
"Smells like stand issue",
"IS THAT A JOJO REFERENCE?",
"Di Molto!",
"Come back when you're a little richer",
"MUDA!",
"ORA!",
"HORA!",
"You appear to have been dunked on.",
"This is the results.",
"CHILL!",
"Menacingゴ",
"insert a quote",
"WOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
"Nice",
"LET'S GO",
"Get them!",
"a little more!",
"HUNT THEM DOWN",
"THEY WERE TWO STEPS LATE",
"either you or them!",
"you ticked them off.",
"DAMN",
"skilful",
"H",
"m1 m1 m1 m1",
"epic!"
}
-- // animation handler
local AnimationHandler = {}
AnimationHandler.__index = AnimationHandler
AnimationHandler._Rigs = {}
AnimationHandler._Animations = {}
do
function AnimationHandler:ToggleWelds(rig, legs, en, bl)
bl = bl or {}
rig = rig or owner.Character
if AnimationHandler._Animations[rig] == nil then
if rig:FindFirstChildOfClass("Humanoid") then
AnimationHandler:_SetupRig(rig, rig:FindFirstChildOfClass("Humanoid").RigType.Name, false)
else
AnimationHandler:_SetupRig(rig, "R15", false)
end
end
for _, v in pairs(rig:GetDescendants()) do
if (v:IsA("Motor6D") or v:IsA("Motor")) and v:FindFirstChild("AnimationWeld") then
if legs == true and not string.find(v.Name, "Hip") and not table.find(bl, v.Name) then
v.AnimationWeld.Enabled = en
elseif legs == false and not table.find(bl, v.Name) then
v.AnimationWeld.Enabled = en
end
end
end
end
function AnimationHandler:GetAnimationLength(anim)
local lkf = 0
for i, _ in pairs(anim.Keyframes) do
if i > lkf then
lkf = i
end
end
return lkf
end
function AnimationHandler:Stop(args)
local tween = args.Tweening -- // or true
local rig = args.Rig or owner.Character
local c0sap = AnimationHandler._Rigs[rig]
local atds = AnimationHandler._Animations
local parts = c0sap.Parts
local oldc0s = c0sap.OldC0s
local anim = args.Animation
local ft = args.FadeTime or .5
local dw = args.DisableWelds or false
local old = atds[rig][anim]
local function check()
local lp = 0
local which = nil
atds[rig][anim] = nil
for i, v in pairs(atds[rig]) do
if v.Priority > lp then
lp = v.Priority
which = v
end
end
atds[rig][anim] = old
return which
end
if atds[rig][anim] ~= nil then
for _, thread in pairs(atds[rig][anim]) do
if type(thread) == "thread" then
task.cancel(thread)
end
end
for _, tween in pairs(atds[rig][anim]["Tweens"]) do
tween:Cancel()
end
end
task.wait()
-- // atds[rig][anim] = nil
local getn = -1
for _, v in pairs(atds[rig]) do
getn += 1
end
local which = check()
if which ~= atds[rig][anim] and which ~= nil then
if (anim == anims.StandOn.LMB["1"] or anim == anims.StandOn.LMB["2"] or anim == anims.StandOn.LMB["3"] or anim == anims.StandOn.LMB["4"] or anim == anims.StandOff.LMB["1"] or anim == anims.StandOff.LMB["2"] or anim == anims.StandOff.LMB["3"] or anim == anims.StandOff.LMB["4"]) then
which = atds[rig][anims.Idle]
end
local args = {
["Time"] = ft,
["Rig"] = rig,
["Override"] = true,
["Tweening"] = true,
["EasingStyle"] = "Linear",
["AnimationTable"] = which,
["Poses"] = which.Animation.Keyframes[which.CurrentTime]
}
coroutine.wrap(function()
local t = args.Time
local tbl = args.Poses
local atbl = args.AnimationTable
local tween = args.Tweening -- // or true
local es = args.EasingStyle or "Linear"
local rig = args.Rig or owner.Character
local which = args.HighestPriority or atbl
local ius = atbl["InUse"]
local tweens = atbl["Tweens"]
for i, _ in pairs(AnimationHandler._Rigs[rig].Parts) do
ius[i] = false
end
local function recurse(v)
if type(v) == "table" then
for i, v in pairs(v) do
ius[i] = false
local part = AnimationHandler._Rigs[rig].Parts[i]
local oldc0 = AnimationHandler._Rigs[rig].OldC0s[i]
if part then
ius[i] = true
if tween == true then
pcall(function()
local tw = game:GetService("TweenService"):Create(part, TweenInfo.new(ft, Enum.EasingStyle.Cubic), {C0 = oldc0 * v.CFrame}):Play()
end)
else
pcall(function()
part.C0 = oldc0 * v.CFrame
end)
end
end
recurse(v)
end
end
end
recurse(tbl)
end)()
end
for i, v in pairs(parts) do
if which == atds[rig][anim] or which == nil then
if tween == true then
game:GetService("TweenService"):Create(v, TweenInfo.new(ft), {C0 = oldc0s[i]}):Play()
else
v.C0 = oldc0s[i]
end
end
coroutine.wrap(function()
if tween == true then
task.wait(ft)
end
if args.DisableWelds == true and getn == 0 then
v.Enabled = false
end
end)()
end
task.delay(ft, function()
atds[rig][anim] = nil
end)
end
function AnimationHandler:_SetupRig(rig, rt, en)
local parts = {}
local oldc0s = {}
local animated = AnimationHandler._Rigs
if animated[rig] ~= nil then
return
end
for _, v in pairs(rig:GetDescendants()) do
if (v:IsA("Motor6D") or v:IsA("Motor")) and not v:FindFirstChild("AnimationWeld") then
local w = Instance.new("Weld", v)
w.Name = "AnimationWeld"
w.Part0 = v.Part0
w.Part1 = v.Part1
w.C0 = v.C0
w.C1 = v.C1
w.Enabled = en-- // or true
end
end
--[[
if rt == nil or rt == "R6" then
local torso = rig:WaitForChild("Torso")
local neck, rh, lh, ls, rs, rj
pcall(function()
neck = torso.Neck
rh = torso["Right Hip"]
lh = torso["Left Hip"]
ls = torso["Left Shoulder"]
rs = torso["Right Shoulder"]
rj = torso.Parent.HumanoidRootPart.RootJoint
end)
local joints = {neck, rh, lh, ls, rs, rj}
for _, v in pairs(joints) do
if v ~= nil then
oldc0s[v.Part1.Name] = v.C0
parts[v.Part1.Name] = v.AnimationWeld
end
end
]]--
-- // elseif rt == "R15" then
for _, v in pairs(rig:GetDescendants()) do
if (v:IsA("Motor6D") or v:IsA("Motor")) then
oldc0s[v.Part1.Name] = v.C0
parts[v.Part1.Name] = v.AnimationWeld
end
end
-- // end
animated[rig] = {
["Parts"] = parts,
["OldC0s"] = oldc0s
}
return animated[rig]
end
function AnimationHandler:_Recurse(args)
local t = args.Time
local tbl = args.Poses
local atbl = args.AnimationTable
local tween = args.Tweening -- // or true
local es = args.EasingStyle or "Cubic"
local rig = args.Rig or owner.Character
local which = args.HighestPriority or atbl
local ius = atbl["InUse"]
local tweens = atbl["Tweens"]
for i, _ in pairs(AnimationHandler._Rigs[rig].Parts) do
ius[i] = false
end
local function recurse(v)
if type(v) == "table" then
for i, v in pairs(v) do
if typeof(v) == "string" and v ~= "CFrame" then
if args.Events[i] ~= nil then
for _, event in pairs(args.Events[i]) do
event:Fire(v)
end
end
else
ius[i] = false
local part = AnimationHandler._Rigs[rig].Parts[i]
local oldc0 = AnimationHandler._Rigs[rig].OldC0s[i]
if part then
if which == atbl and which["InUse"][i] ~= true then
ius[i] = true
if tween == true then
pcall(function()
local tw = game:GetService("TweenService"):Create(part, TweenInfo.new(t, es), {C0 = oldc0 * v.CFrame})
tw:Play()
table.insert(tweens, tw)
end)
else
pcall(function()
part.C0 = oldc0 * v.CFrame
end)
end
end
end
recurse(v)
end
end
end
end
recurse(tbl)
end
function AnimationHandler:Animate(args)
local anim
local c0sap
local lt = 0
local lkf = 0
local tbl = args.Animation
local looping = args.Looping
local speed = args.Speed or 1
local prior = args.Priority or 2
local tween = args.Tweening -- //-- // or true
local es = args.EasingStyle or "Cubic"
local rig = args.Rig or owner.Character
local animated = AnimationHandler._Rigs
local atds = AnimationHandler._Animations
if animated[rig] == nil then
if rig:FindFirstChildOfClass("Humanoid") then
c0sap = AnimationHandler:_SetupRig(rig, rig:FindFirstChildOfClass("Humanoid").RigType.Name, args.DisableOnSetup)
else
c0sap = AnimationHandler:_SetupRig(rig, "R15", args.DisableOnSetup)
end
else
c0sap = animated[rig]
end
local parts = c0sap.Parts
local oldc0s = c0sap.OldC0s
if type(es) == "string" then
es = Enum.EasingStyle[es]
end
if type(tbl) == "string" then -- // check if the argument is a string or url, then decode it and get table
anim = loadstring(game:GetService("HttpService"):GetAsync(tbl))()
elseif type(tbl) ~= "string" then -- // check if the argument is a table, then set anim to tbl
anim = tbl
end
if atds[rig] == nil then
atds[rig] = {}
end
local function reset()
atds[rig][anim] = {}
local atbl = atds[rig][anim]
atbl["InUse"] = {}
atbl["Tweens"] = {}
atbl["Speed"] = speed
atbl["Paused"] = false
atbl["CurrentTime"] = 0
atbl["Priority"] = prior
atbl["Animation"] = anim
end
reset()
for i, _ in pairs(anim.Keyframes) do
if i > lkf then
lkf = i
end
end
-- // print(lkf, "lkf")
local function check()
local lp = 0
local which = nil
for i, v in pairs(atds[rig]) do
if v.Priority > lp then
lp = v.Priority
which = v
end
end
return which
end
local be = Instance.new("BindableEvent", game:GetService("ServerScriptService"))
local AnimationTrack = {}
AnimationTrack.__index = AnimationTrack
AnimationTrack.Rig = rig
AnimationTrack.Events = {}
AnimationTrack.Animation = anim
AnimationTrack.Stopped = be.Event
AnimationTrack.AnimationTable = atds[rig][anim]
AnimationTrack.Length = AnimationHandler:GetAnimationLength(anim)
function AnimationTrack:CleanEvents()
AnimationTrack.Events = {}
return AnimationTrack.Events
end
function AnimationTrack:GetMarkerReachedSignal(n)
local event = Instance.new("BindableEvent", game:GetService("ServerScriptService"))
if AnimationTrack.Events[n] == nil then
AnimationTrack.Events[n] = {}
end
table.insert(AnimationTrack.Events[n], event)
return event.Event
end
local function animate()
for i, v in pairs(anim.Keyframes) do
local t = i / speed
if args.Reverse == true then
t = lkf - (i / speed)
end
table.insert(atds[rig][anim], task.delay(t, function()
if atds[rig][anim] == nil then
reset()
end
atds[rig][anim]["CurrentTime"] = t
local which = check()
local t = (i - lt) / speed
AnimationHandler:_Recurse({
["Time"] = t,
["Poses"] = v,
["Tweening"] = tween,
["EasingStyle"] = es,
["HighestPriority"] = which,
["Rig"] = rig or owner.Character,
["Events"] = AnimationTrack.Events,
["AnimationTable"] = atds[rig][anim]
})
lt = i
end))
end
local getn = 0
for _, v in pairs(anim.Keyframes) do
getn += 1
end
if looping == true and atds[rig][anim] ~= nil and getn > 1 then
table.insert(atds[rig][anim], task.delay(lkf / speed, animate))
end
if (looping == false or looping == nil) and getn > 1 then
task.wait(lkf / speed)
if args.StallTime then
task.wait(args.StallTime)
end
be:Fire()
AnimationHandler:Stop({
["Rig"] = rig,
["Animation"] = anim,
["Tweening"] = args.Tweening, -- // or true,
["DisableWelds"] = args.DisableWelds or false
})
end
end
if args.Wrapped == true then
coroutine.wrap(animate)()
else
animate()
end
return AnimationTrack
end
end
-- [[ FUNCTIONS AND EVENTS ]] --
local function hb(pt, cf, size, bl, type)
return rf:InvokeClient(owner, pt, cf, size, bl, type)
end
local function seth(ws, jp)
owner.Character.Humanoid.WalkSpeed = (ws == "OG" and 25 or ws)
owner.Character.Humanoid.JumpPower = (jp == "OG" and 50 or jp)
end
local function play(what, p, scf)
if sounds[what] then
local snd = sounds[what]:Clone()
snd.Name = what
snd.Parent = p or owner.Character.HumanoidRootPart
if scf ~= nil then
local pt = Instance.new("Part", script)
pt.CFrame = scf
pt.CanCollide = false
pt.CanQuery = false
pt.CanTouch = false
pt.Anchored = true
pt.Transparency = 1
pt.Size = Vector3.new(.05, .05, .05)
snd.Parent = pt
end
snd:Play()
coroutine.wrap(function()
snd.Ended:Wait()
task.wait(.1)
snd:Destroy()
end)()
return snd
end
end
local function findhum(p)
if p:FindFirstAncestorOfClass("Model") then
if p:FindFirstAncestorOfClass("Model"):FindFirstChildWhichIsA("Humanoid", true) then
return p:FindFirstAncestorOfClass("Model"):FindFirstChildWhichIsA("Humanoid", true)
else
return nil
end
else
return nil
end
end
local function dmgui(mdl, dmg, ep)
if mdl:GetAttribute("DeadNotBigSurprise") == true or dmg == 0 then
return
end
local ui = mdl:FindFirstChild("DamageGUI")
if ui then
local tb = ui.BBG.TextBox
local ogdmg = tonumber(tb.Text) or 0
ogdmg += dmg
local txt
if math.floor(ogdmg) == ogdmg then
txt = tostring(ogdmg)
else
txt = string.format("%.1f", tostring(ogdmg))
end
if ogdmg > 100 then
tb.Text = overtxts[Random.new():NextInteger(1, #(overtxts))]
ui.Name = "DisabledDamageGUI"
elseif mdl:FindFirstChildWhichIsA("Humanoid", true).Health <= 0 then
tb.Text = killtxts[Random.new():NextInteger(1, #(killtxts))]
ui.Name = "DisabledDamageGUI"
mdl:SetAttribute("DeadNotBigSurprise", true)
else
tb.Text = txt
end
ui.BBG.Size = UDim2.new(10, 0, 2, 0)
tb.TextTransparency = 0
tb.TextStrokeTransparency = 0
local hrp = ep or mdl:FindFirstChild("HumanoidRootPart")
ui.CFrame = hrp.CFrame * CFrame.new(Random.new():NextNumber(-1, 1), Random.new():NextNumber(-1, 1), Random.new():NextNumber(-1, 1))
local inf1 = TweenInfo.new(.5, Enum.EasingStyle.Cubic,Enum.EasingDirection.Out)
local inf2 = TweenInfo.new(3, Enum.EasingStyle.Quint, Enum.EasingDirection.In)
game:GetService("TweenService"):Create(ui.BBG, inf1, {Size = UDim2.new(5, 0, 1, 0)}):Play()
game:GetService("TweenService"):Create(tb, inf1, {Rotation = Random.new():NextNumber(-15, 15)}):Play()
game:GetService("TweenService"):Create(ui, inf2, {CFrame = ui.CFrame * CFrame.new(0, -4, 0)}):Play()
game:GetService("TweenService"):Create(tb, inf2, {TextTransparency = 1, TextStrokeTransparency = 1}):Play()
else
local ui = templates.DamageGUI:Clone()
ui.Parent = mdl
local txt
if math.floor(dmg) == dmg then
txt = tostring(dmg)
else
txt = string.format("%.1f", tostring(dmg))
end
local tb = ui.BBG.TextBox
tb.Text = txt
if mdl:FindFirstChildWhichIsA("Humanoid", true).Health <= 0 then
tb.Text = killtxts[Random.new():NextInteger(1, #(killtxts))]
ui.Name = "DisabledDamageGUI"
mdl:SetAttribute("DeadNotBigSurprise", true)
end
ui.BBG.Size = UDim2.new(10, 0, 2, 0)
tb.TextTransparency = 0
tb.TextStrokeTransparency = 0
local hrp = ep or mdl:FindFirstChild("HumanoidRootPart")
ui.CFrame = hrp.CFrame * CFrame.new(Random.new():NextNumber(-1, 1), Random.new():NextNumber(-1, 1), Random.new():NextNumber(-1, 1))
local inf1 = TweenInfo.new(.5, Enum.EasingStyle.Cubic,Enum.EasingDirection.Out)
local inf2 = TweenInfo.new(3, Enum.EasingStyle.Quint, Enum.EasingDirection.In)
game:GetService("TweenService"):Create(ui.BBG, inf1, {Size = UDim2.new(5, 0, 1, 0)}):Play()
game:GetService("TweenService"):Create(tb, inf1, {Rotation = Random.new():NextNumber(-15, 15)}):Play()
game:GetService("TweenService"):Create(ui, inf2, {CFrame = ui.CFrame * CFrame.new(0, -4, 0)}):Play()
game:GetService("TweenService"):Create(tb, inf2, {TextTransparency = 1, TextStrokeTransparency = 1}):Play()
coroutine.wrap(function()
repeat
task.wait()
until tb.TextTransparency >= .99
ui:Destroy()
end)()
end
end
local function stun(hum, t)
if t == 0 or nil then
return
end
coroutine.wrap(function()
local mdl = hum:FindFirstAncestorOfClass("Model")
local sc = mdl:GetAttribute("StunCounter") or 0
mdl:SetAttribute("StunCounter", sc + 1)
local ows = hum:GetAttribute("OriginalWalkspeed") or hum.WalkSpeed
hum:SetAttribute("OriginalWalkspeed", ows)
hum.WalkSpeed = .5
mdl:SetAttribute("Stunned", true)
if not mdl:FindFirstChild("StunGUI") then
local ui = templates.DamageGUI.BBG:Clone()
ui.Name = "StunGUI"
ui.Parent = mdl
ui.TextBox.Text = "STUNNED"
ui.ClipsDescendants = false
ui.Size = UDim2.fromScale(3, 1.5)
ui.Adornee = mdl.HumanoidRootPart
ui.StudsOffset = Vector3.new(0, 3, 0)
end
coroutine.wrap(function()
repeat
hum:UnequipTools()
task.wait()
until mdl:GetAttribute("StunCounter") == 0
end)()
task.wait(t)
if mdl:GetAttribute("StunCounter") ~= sc + 1 then
return
end
mdl:SetAttribute("StunCounter", 0)
if mdl:FindFirstChild("StunGUI") then
mdl.StunGUI:Destroy()
end
if hum:FindFirstAncestorOfClass("Model") ~= nil then
hum:FindFirstAncestorOfClass("Model"):SetAttribute("Stunned", false)
end
hum.WalkSpeed = ows
end)()
end
local function hfx(t, victim, ep)
local ep = ep or victim.HumanoidRootPart
if t == "Light" then
local h = templates.Effects.LightHit:Clone()
h.Parent = script
h.Anchored = true
h.CanCollide = false
h.CFrame = ep.CFrame
for _, v in ipairs(h.Attachment:GetChildren()) do
v.LockedToPart = true
v:Emit(15)
end
task.delay(1, h.Destroy, h)
elseif t == "Heavy" then
local _, y, _ = CFrame.new(owner.Character.HumanoidRootPart.Position, ep.Position):ToEulerAnglesXYZ()
local h = templates.Effects.HeavyHit:Clone()
h.Parent = script
h.Anchored = true
h.CanCollide = false
h.CFrame = CFrame.new(ep.Position) * CFrame.Angles(0, y, 0)
for _, v in ipairs(h.Attachment:GetChildren()) do
-- // v.LockedToPart = true
v:Emit(15)
end
task.delay(1, h.Destroy, h)
elseif t == "Bomb" then
local h = templates.Effects.BombPlanted:Clone()
h.Parent = script
h.Anchored = true
h.CanCollide = false
h.CFrame = ep.CFrame
-- // h.CosmicStars:Emit(15)
for _, v in ipairs(h.Attachment:GetChildren()) do
-- // v.LockedToPart = true
v:Emit(1)
end
task.delay(2, h.Destroy, h)
end
end
local function attack(tbl, stats, scf)
local victims = tbl
local dist = math.huge
if #(victims) ~= 0 then
local snd = stats.Sound or "HitSFX"
if stats.Sound then
if typeof(stats.Sound) == "table" then
snd = stats.Sound[Random.new():NextInteger(1, #(stats.Sound))]
end
end
play(snd, scf)
end
local mult = 1
for _, victim in pairs(victims) do
local hum, hrp = victim:FindFirstChildWhichIsA("Humanoid", true), victim:FindFirstChild("HumanoidRootPart", true)
hum.Health -= (stats.Damage or 0) * mult
dmgui(victim, stats.Damage * mult, stats.EffectPart)
stun(hum, stats.Stun)
if stats.Animation and hum.RigType == Enum.HumanoidRigType.R6 then
coroutine.wrap(function()
AnimationHandler:Animate({
["Rig"] = victim,
["StallTime"] = .2,
["DisableWelds"] = true,
["Animation"] = stats.Animation
})
end)()
end
if stats.Knockback then
local bv = Instance.new("BodyVelocity", hrp)
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) -- // Vector3.new(1, 1, 1) * stats.Knockback[1]
bv.Velocity = (owner.Character.HumanoidRootPart.CFrame.lookVector * stats.Knockback[1]) + (stats.Knockback[3] or Vector3.new())
task.delay(stats.Knockback[2], function()
bv:Destroy()
end)
end
coroutine.wrap(hfx)(stats.HitEffect or "Light", victim, stats.EffectPart)
end
end
local function linger(n, stats, dmgstats)
local done = false
coroutine.wrap(function()
for i = 1, n do
if done == true then
break
end
local inhb = hb(table.unpack(stats))
attack(inhb, dmgstats)
if #(inhb) ~= 0 then
done = true
break
end
end
end)()
end
local function summon()
if dbs.Summon == true then
return
end
if dbs.Stunned == true then
return
end
dbs.Stunned = true
dbs.Summon = true
if dbs.Summoned == false then
dbs.Summoned = true
for _, v in pairs(stand:GetDescendants()) do
if (v:IsA("BasePart") or v:IsA("Decal") or v:IsA("Texture")) and not v:GetAttribute("Transparency") and not string.find(v.Name, "Stand") then
game:GetService("TweenService"):Create(v, TweenInfo.new(.3), {Transparency = 0}):Play()
end
end
for _, v in pairs(stand:GetDescendants()) do
if v:IsA("BasePart") and v.Name ~= "StandHumanoidRootPart" and not v:FindFirstChild("StandAura") then
local aura = templates.StandAura:Clone()
for _, v2 in pairs(aura:GetChildren()) do
v2.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.new(1, 0, 0)),
ColorSequenceKeypoint.new(1, Color3.new(1, 0, 0))
}
v2.Enabled = true
v2.Parent = v
end
end
end
for _, v in pairs(owner.Character:GetDescendants()) do
if v:IsA("BasePart") and v.Name ~= "HumanoidRootPart" and not v:FindFirstChild("StandAura") then
local aura = templates.StandAura:Clone()
for _, v2 in pairs(aura:GetChildren()) do
v2.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.new(1, 0, 0)),
ColorSequenceKeypoint.new(1, Color3.new(1, 0, 0))
}
v2.Enabled = true
v2.Parent = v
end
end
end
AnimationHandler:Animate({
["Rig"] = stand,
["Priority"] = 1,
["Wrapped"] = true,
["Looping"] = true,
["Tweening"] = true,
["Animation"] = anims.Idle
})
play("SummonEffects")
play("SummonVoiceline")
if stand:FindFirstChild("Stand Torso") then
if stand["Stand Torso"]:FindFirstChild("SummonParticle") then
for i, v in pairs(stand["Stand Torso"].SummonParticle:GetChildren()) do
v.LockedToPart = true
v:Emit(v.Rate)
end
end
end
for _, v in pairs(stand:GetDescendants()) do
if v.Name == "StandAura" then
v.Enabled = true
end
end
for _, v in pairs(owner.Character:GetDescendants()) do
if v.Name == "StandAura" then
v.Enabled = true
end
end
elseif dbs.Summoned == true then
dbs.Summoned = false
for _, v in pairs(stand:GetDescendants()) do
if v.Name == "StandAura" then
v.Enabled = false
end
end
for _, v in pairs(owner.Character:GetDescendants()) do
if v.Name == "StandAura" then
v.Enabled = false
end
end
play("Unsummon")
AnimationHandler:Stop({
["Rig"] = stand,
["FadeTime"] = .3,
["Wrapped"] = true,
["Animation"] = anims.Idle
})
for _, v in pairs(stand:GetDescendants()) do
if v:IsA("BasePart") or v:IsA("Decal") or v:IsA("Texture") then
game:GetService("TweenService"):Create(v, TweenInfo.new(.3), {Transparency = 1}):Play()
end
end
end
task.delay(.3, function()
dbs.Stunned = false
task.wait(cds.Summon - .3)
dbs.Summon = false
end)
end
local function combo()
if dbs.LMBCombo == true then
return
end
if dbs.Stunned == true then
return
end
dbs.Stunned = true
dbs.LMBCombo = true
play("LMB" .. lmbc)
local stats = {}
if lmbc == 4 then
stats = {
["Stun"] = .4,
["Damage"] = 25,
["HitEffect"] = "Heavy",
["Sound"] = "HeavyHitSFX",
["Knockback"] = {35, .3, Vector3.new(0, 35, 0)}
}
else
stats = {
["Stun"] = .4,
["Damage"] = 8,
["Knockback"] = {5, .05}
}
end
local sub = (dbs.Summoned == true and (lmbc / 2) or 0)
linger(3, {stand.StandHumanoidRootPart, CFrame.new(0, 0, -3.75 - sub), Vector3.new(5, 5, 5)}, stats)
local add = (dbs.Summoned == true and 0 or .1)
local sm = (dbs.Summoned == true and "StandOn" or "StandOff")
local wh = (dbs.Summoned == true and stand or owner.Character)
AnimationHandler:Animate({
["Rig"] = wh,
["Wrapped"] = true,
["Tweening"] = true,
["Priority"] = 2 + (lmbc / 10),
["Animation"] = anims[sm].LMB[tostring(lmbc)]
})
if lmbc == 4 then
lmbc = 1
task.delay(cds.LMBCombo, function()
dbs.Stunned = false
end)
task.delay(cds.LMBFinisher, function()
dbs.LMBCombo = false
end)
else
play("SwingLMB")
lmbc += 1
coroutine.wrap(function()
local clmb = lmbc
task.wait(1.05)
if lmbc == clmb then
lmbc = 1
end
end)()
task.delay(cds.LMBCombo + add, function()
dbs.LMBCombo = false
dbs.Stunned = false
end)
end
end
local function bfx(length, stretch, offset)
local stretch = stretch or 1
local cf = offset or stand.StandHumanoidRootPart.CFrame
for _ = 1, 3 do
local arm
local p1, p2
local lt = (cf * CFrame.new(0, 0, -10)).Position
local function pgen(s)
local rnd1
if s == "Right" then
rnd1 = Random.new():NextNumber(.5, 3) * stretch
else
rnd1 = Random.new():NextNumber(-3, -.5) * stretch
end
local rnd2 = Random.new():NextNumber(-.5, .5) * stretch
local rnd3 = math.random()
local p1 = (cf * CFrame.new(rnd1, rnd2, -2)).Position
local p2 = (cf * CFrame.new(rnd1 * 2, rnd2 * 6, -4)).Position
return p1, p2
end
if Random.new():NextInteger(1, 10) > 5 then
local marm = templates.BarrageArms:FindFirstChild("Stand Right Arm")
arm = marm:Clone()
p1, p2 = pgen("Right")
else
local marm = templates.BarrageArms:FindFirstChild("Stand Left Arm")
arm = marm:Clone()
p1, p2 = pgen("Left")
end
local tp = Instance.new("Attachment", arm)
tp.Position = Vector3.new(-.394, .793, .477)
local bt = Instance.new("Attachment", arm)
bt.Position = Vector3.new(.329, -.847, -.348)
-- // local trl = templates["MotionBlur" .. Random.new():NextInteger(1, 2)]:Clone()
-- // trl.Parent = arm
-- // trl.Enabled = true
-- // trl.Attachment0 = tp
-- // trl.Attachment1 = bt
-- // trl.Color = ColorSequence.new(arm.Color)
-- // trl.Transparency = NumberSequence.new(0, 1)
-- // arm.Trail.Transparency = NumberSequence.new(0, 1)
local i = 0
arm.Anchored = true
arm.Parent = script
arm.Transparency = 0
local cnt
local length = length or .7
local rate = 1 / length
for _, v in pairs(arm:GetDescendants()) do
if v:IsA("Trail") then
v.Enabled = true
end
end
coroutine.wrap(function()
task.wait(.2)
for _, v in pairs(arm:GetChildren()) do
if v:IsA("BasePart") then
game:GetService("TweenService"):Create(v, TweenInfo.new(.2), {Transparency = 1}):Play()
end
end
game:GetService("TweenService"):Create(arm, TweenInfo.new(.2), {Transparency = 1}):Play()
-- // trl.Enabled = false
for _, v in pairs(arm:GetDescendants()) do
if v:IsA("Trail") then
v.Enabled = false
end
end
task.wait(.25)
arm:Destroy()
end)()
local function bezier(p1, p2, p3, t)
return (1 - t) ^ 2 * p1 + 2 * (1 - t) * t * p2 + t ^ 2 * p3
end
cnt = game:GetService("RunService").Heartbeat:Connect(function(dt)
i = i + dt * rate
if i > 1 then
cnt:Disconnect()
i = 1
end
if i + dt * rate <= .8 then
local v = game:GetService("TweenService"):GetValue(i, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out)
local nv = game:GetService("TweenService"):GetValue(i + dt * rate, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out)
local p = bezier(p1, p2, lt, v)
local np = bezier(p1, p2, lt, nv)
arm.CFrame = CFrame.new(p, np) * CFrame.Angles(math.pi / 2, 0, 0)
else
local v = game:GetService("TweenService"):GetValue(i, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out)
local p = bezier(p1, p2, lt, v)
arm.CFrame = CFrame.new(p, lt) * CFrame.Angles(math.pi / 2, 0, 0)
end
-- // print((arm.Position - owner.Character.HumanoidRootPart.Position).Magnitude)
end)
end
end
local function emoves()
if dbs.Stunned == true then
return
end
if dbs.Summoned == false then
if dbs.FlyingUppercut == true then
return
end
dbs.Stunned = true
dbs.FlyingUppercut = true
seth(12, "OG")
play("FlyingUppercut")
local track = AnimationHandler:Animate({
-- // ["Speed"] = 2,
["Priority"] = 3,
["Wrapped"] = true,
["Tweening"] = true,
["Rig"] = owner.Character,
["Animation"] = anims.StandOff.FlyingUppercut
})
track:GetMarkerReachedSignal("Hit"):Connect(function()
linger(3, {stand.StandHumanoidRootPart, CFrame.new(0, 0, -2.5), Vector3.new(5, 5, 5)}, {
["Stun"] = .5,
["Damage"] = 30,
["HitEffect"] = "Heavy",
["Sound"] = "HeavyHitSFX",
["Knockback"] = {50, .3, Vector3.new(0, -8, 0)}
})
task.wait(.2)
seth("OG", "OG")
dbs.Stunned = false
task.delay(cds.FlyingUppercut, function()
dbs.FlyingUppercut = false
end)
end)
elseif dbs.Summoned == true then
if dbs.Barrage == true then
return
end
dbs.Stunned = true
dbs.Barrage = true
dbs.EHeld = true
seth(12, "OG")
local bsnd = sounds.Barrage:Clone()
local bsfxnd = sounds.BarrageSFX:Clone()
bsfxnd.Looped = true
bsnd.Parent = stand.StandHumanoidRootPart
bsfxnd.Parent = stand.StandHumanoidRootPart
bsnd:Play()
bsfxnd:Play()
AnimationHandler:Animate({
["Rig"] = stand,
["Priority"] = 3,
["Wrapped"] = true,
["Tweening"] = true,
["Animation"] = anims.StandOn.Barrage.Startup
})
task.wait(.26)
local track = AnimationHandler:Animate({
["Rig"] = stand,
["Wrapped"] = true,
["Looping"] = true,
["Priority"] = 3.1,
["Tweening"] = true,
["Animation"] = anims.StandOn.Barrage.Loop
})
local t = tick()
repeat
coroutine.wrap(function()
local inhb = hb(stand.StandHumanoidRootPart, CFrame.new(0, 0, -4.5), Vector3.new(5, 5, 6))
attack(inhb, {
["Stun"] = .5,
["Damage"] = 1.5,
["Knockback"] = {5, .05},
["Sound"] = {"BarrageHitSFX1", "BarrageHitSFX2"}
})
bfx() -- // re:FireClient(owner, "BarrageFX")
end)()
task.wait(.07)
until tick() - t >= 2 or dbs.EHeld == false
AnimationHandler:Animate({
["Rig"] = stand,
["Wrapped"] = true,
["Priority"] = 3.2,
["Tweening"] = true,
["Animation"] = anims.StandOn.Barrage.Finisher
})
AnimationHandler:Stop({
["Rig"] = stand,
["FadeTime"] = 0,
["Animation"] = track.Animation
})
local inhb = hb(stand.StandHumanoidRootPart, CFrame.new(0, 0, -4.5), Vector3.new(5, 5, 6))
attack(inhb, {
["Stun"] = .5,
["Damage"] = 25,
["HitEffect"] = "Heavy",
["Sound"] = "HeavyHitSFX",
["Knockback"] = {50, .3, Vector3.new(0, -8, 0)}
})
task.wait(.2)
bsnd:Stop()
bsfxnd:Stop()
seth("OG", "OG")
dbs.Stunned = false
task.delay(cds.Barrage, function()
dbs.Barrage = false
end)
end
end
local function explode(pos, mdl)
local params = RaycastParams.new()
params.FilterDescendantsInstances = {mdl}
params.FilterType = Enum.RaycastFilterType.Blacklist
local cast = workspace:Raycast(pos, Vector3.new(0, -1000, 0), params)
if cast then
pos = cast.Position + Vector3.new(0, .05, 0)
end
local fx = templates.PrimaryBomb.Explosion:Clone()
fx.Parent = script
fx.Position = pos
play("Explosion", fx)
for _, v in pairs(fx:GetDescendants()) do
if v:IsA("ParticleEmitter") then
v:Emit(15)
elseif v:IsA("PointLight") then
v.Brightness = 15
task.delay(.2, function()
v.Brightness = 0
end)
end
end
attack({mdl}, {
["Stun"] = 2,
["Sound"] = "",
["Damage"] = 35
})
local bv = Instance.new("BodyVelocity", mdl.HumanoidRootPart)
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bv.Velocity = (CFrame.new(pos, mdl.HumanoidRootPart.Position).lookVector * 35) + Vector3.new(0, 8, 0)
task.delay(.2, bv.Destroy, bv)
task.delay(5, fx.Destroy, fx)
local params = OverlapParams.new()
params.FilterType = Enum.RaycastFilterType.Blacklist
params.FilterDescendantsInstances = {owner.Character}
local hums = {}
for _, hit in pairs(workspace:GetPartBoundsInRadius(pos, 13, params)) do
local hum = findhum(hit)
if hum and (hum ~= false and not table.find(hums, hum)) and hit:IsDescendantOf(mdl) == false then
table.insert(hums, hum)
attack({hit:FindFirstAncestorOfClass("Model")}, {
["Stun"] = 2,
["Sound"] = "",
["Damage"] = 15
})
local bv = Instance.new("BodyVelocity", hit:FindFirstAncestorOfClass("Model").HumanoidRootPart)
bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bv.Velocity = (CFrame.new(pos, hit:FindFirstAncestorOfClass("Model").HumanoidRootPart.Position).lookVector * 35) + Vector3.new(0, 8, 0)
task.delay(.2, bv.Destroy, bv)
end
end
end
local function rmoves()
if dbs.Stunned == true then
return
end
if dbs.Summoned == true then
if dbs.PrimaryBomb == true then
return
end
dbs.Stunned = true
dbs.PrimaryBomb = true
seth(12, "OG")
play("BombPlant")
local track = AnimationHandler:Animate({
["Speed"] = 3,
["Rig"] = stand,
["Priority"] = 3,
["Wrapped"] = true,
["Tweening"] = true,
["Animation"] = anims.StandOn.BombPlant.Start
})
track:GetMarkerReachedSignal("Hit"):Connect(function()
local done = false
for i = 1, 3 do
if done == true then
break
end
local inhb = hb(stand.StandHumanoidRootPart, CFrame.new(0, 0, -3.5), Vector3.new(5, 5, 5))
attack(inhb, {
["Stun"] = .5,
["Damage"] = 10,
["HitEffect"] = "Bomb",
["Knockback"] = {10, .3}
})
if #(inhb) ~= 0 then
done = true
local at = Instance.new("Attachment", inhb[1].HumanoidRootPart)
at.Name = "SQBomb"
table.insert(planted, at)
print("planted")
dbs.PrimaryBomb = false
break
end
end
task.wait(.2)
seth("OG", "OG")
dbs.Stunned = false
task.delay(cds.PrimaryBomb, function()
dbs.PrimaryBomb = false
end)
end)
elseif dbs.Summoned == false then
if dbs.Detonate == true then
return
end
if #(planted) ~= 0 then
dbs.Stunned = true
dbs.Detonate = true
seth(12, "OG")
play("Detonate")
AnimationHandler:Animate({
["Speed"] = 2,
["Priority"] = 3,
["Wrapped"] = true,
["Tweening"] = true,
["Animation"] = anims.Detonate.User
})
task.wait(.5)
for _, v in pairs(planted) do
local at = templates.Effects.Warning.Exclamation:Clone()
for _, v2 in pairs(at:GetChildren()) do
v2.Parent = v
v2:Emit(1)
end
end
task.wait(.4)
play("DetonateSFX")
for _, v in pairs(planted) do
explode(v.WorldPosition, v:FindFirstAncestorOfClass("Model"))
task.delay(1, v.Destroy, v)
end
planted = {}
task.wait(.2)
seth("OG", "OG")
dbs.Stunned = false
task.delay(cds.Detonate, function()
dbs.Detonate = false
end)
end
end
end
re.OnServerEvent:Connect(function(plr, args)
if owner.Character:GetAttribute("Stunned") == true then
return
end
if args.Action == "Summon" then
summon()
elseif args.Action == "Update" then
dbs.EHeld = args.EHeld
elseif args.Action == "LMBCombo" then
combo()
elseif args.Action == "EMoves" then
emoves()
elseif args.Action == "RMoves" then
rmoves()
end
end)
AnimationHandler:Animate({
["Speed"] = 1,
["Priority"] = 1,
["Wrapped"] = true,
["Looping"] = true,
["Tweening"] = true,
["Rig"] = owner.Character,
["Animation"] = anims.Idle
})
owner.Character.Humanoid.Running:Connect(function(spd)
AnimationHandler:ToggleWelds(owner.Character, false, true)
AnimationHandler:ToggleWelds(stand, false, true)
if spd > .1 then
if dbs.Idle == false and AnimationHandler._Animations[owner.Character][anims.Run] == nil then
dbs.Idle = true
AnimationHandler:Animate({
["Speed"] = 1,
["Priority"] = 2,
["Wrapped"] = true,
["Looping"] = true,
["Tweening"] = true,
["Rig"] = owner.Character,
["Animation"] = anims.Run
})
AnimationHandler:Animate({
["Speed"] = 1,
["Rig"] = stand,
["Priority"] = 2,
["Wrapped"] = true,
["Looping"] = true,
["Tweening"] = true,
["Animation"] = anims.Run
})
end
elseif spd < .1 then
dbs.Idle = false
AnimationHandler:Stop({
["FadeTime"] = .2,
["Rig"] = owner.Character,
["Animation"] = anims.Run
})
AnimationHandler:Stop({
["Rig"] = stand,
["FadeTime"] = .2,
["Animation"] = anims.Run
})
end
end)
-- [[ LOCALSCRIPT ]] --
NLS([[
local debug = true
local re = script.Parent
local m = owner:GetMouse()
local cam = workspace.CurrentCamera
local rf = re:FindFirstChild("SQFunction")
local uis = game:GetService("UserInputService")
local moveset = {
["Q"] = "Summon",
["E"] = "EMoves",
["R"] = "RMoves",
["M1"] = "LMBCombo"
}
script.Parent = workspace
local function raycast()
local mp = uis:GetMouseLocation()
local mr = cam:ViewportPointToRay(mp.X, mp.Y)
local params = RaycastParams.new()
params.FilterDescendantsInstances = {tts}
params.FilterType = Enum.RaycastFilterType.Blacklist
local r = workspace:Raycast(mr.Origin, mr.Direction * 1000, params)
if r then
return {
["Hit"] = r.Position,
["Target"] = r.Instance
}
else
return {
["Target"] = m.Target,
["Hit"] = m.Hit.Position
}
end
end
local function findhum(p)
if p:FindFirstAncestorOfClass("Model") then
if p:FindFirstAncestorOfClass("Model"):FindFirstChildWhichIsA("Humanoid", true) then
return p:FindFirstAncestorOfClass("Model"):FindFirstChildWhichIsA("Humanoid", true)
else
return nil
end
else
return nil
end
end
function rf.OnClientInvoke(pt, cf, size, bl, type)
local params = OverlapParams.new()
params.FilterDescendantsInstances = {owner.Character, script, bl}
params.FilterType = Enum.RaycastFilterType.Blacklist
if debug == true then
local p = Instance.new("Part", script)
p.Size = size
p.Anchored = true
p.CanCollide = false
p.CastShadow = false
p.Material = "ForceField"
p.Color = Color3.new(1, 0, 0)
if type == "Magnitude" then
p.Shape = "Ball"
end
if pt ~= nil then
p.CFrame = pt.CFrame * cf
else
p.CFrame = cf
end
coroutine.wrap(function()
task.wait(.5)
p:Destroy()
end)()
end
local tbl
local victims = {}
if type == "Magnitude" then
if pt ~= nil then
tbl = workspace:GetPartBoundsInRadius(pt.CFrame.Position, size.X / 2, params)
else
tbl = workspace:GetPartBoundsInRadius(cf.Position, size.X / 2, params)
end
else
if pt ~= nil then
tbl = workspace:GetPartBoundsInBox(pt.CFrame * cf, size, params)
else
tbl = workspace:GetPartBoundsInBox(cf, size, params)
end
end
for _, hit in pairs(tbl) do
local hum = findhum(hit)
if hum and not hit:FindFirstAncestorOfClass("Model"):FindFirstChild("Intangible") then -- // and hum.Health > 0 then
if not table.find(victims, hit:FindFirstAncestorOfClass("Model")) then
table.insert(victims, hit:FindFirstAncestorOfClass("Model"))
end
end
end
return victims
end
m.Button1Down:Connect(function()
re:FireServer({
["Action"] = moveset.M1
})
end)
uis.InputBegan:Connect(function(k, gpc)
if gpc then
return
end
if moveset[k.KeyCode.Name] then
re:FireServer({
["Mouse"] = raycast(),
["Action"] = moveset[k.KeyCode.Name]
})
end
end)
re.OnClientEvent:Connect(function(what, txt)
if what == "Camera" then
cam.CameraType = Enum.CameraType.Scriptable
repeat
game:GetService("RunService").RenderStepped:Wait()
cam.CFrame = re.CameraCFrame.Value
until re.StopCamera.Value == true
cam.CameraType = Enum.CameraType.Custom
elseif what == "Print" then
print(txt)
end
end)
game:GetService("RunService").RenderStepped:Connect(function()
re:FireServer({
["Mouse"] = raycast(),
["Action"] = "Update",
["EHeld"] = uis:IsKeyDown(Enum.KeyCode.E)
})
end)
]], re)