Message
Message
_nnnn_
dGGGGMMb ,"""""""""""""""""".
@p~qp~~qMb | Get Doxxed Nigga |
M|@||@) M| _;..................'
@,----.JM| -'
JS^\__/ qKL
dZP qKRb
dZP qKKb
fZP SMMb
HZM MMMM
FqM MMMM
__| ". |\dS"qML
| `. | `' \Zq
_) \.___.,| .'
\____ )MMMMMM| .'
`-' `--'
[ CREDITS ]
╔═════════════════════════════════════════════════════╗
║ Main: Derek Lippe ║
║ Skid: UrMama ║
╚═════════════════════════════════════════════════════╝
https://raw.githubusercontent.com/Ethereal58/Ethereal/main/Fonts/Proggy
> https://archive.is/aWR8K
>
https://web.archive.org/web/20240922012649/https://raw.githubusercontent.com/
Ethereal58/Ethereal/main/Fonts/Proggy
https://raw.githubusercontent.com/Ethereal58/Ethereal/main/Fonts/smallest_pixel
> https://archive.ph/zF1k2
>
https://web.archive.org/web/20240922012812/https://raw.githubusercontent.com/
Ethereal58/Ethereal/main/Fonts/smallest_pixel
"The only thing I wish I had was better tint. I just want a nice truck, get
some nice tint on it too so no one can see in, and bring my girlfriend for 'rides.'
That's like the dream. You'll get it, bro, when you find a girl you like.
Trust me, you'll get it. Yeah, it is weird, but you're not thinking of it in
that moment," stated Derek Lippe.
--[[
for Index, Value in next, getgc(true) do
local RandomEntity = workspace.charColliders:GetChildren()[1]
if type(Value) == "table" and type(rawget(Value, RandomEntity.Name)) == "table"
then
local Player = rawget(Value, RandomEntity.Name)
if rawget(Player, "colliderModel") then
-- entity list
end
end
end
]]
local IsStudio = false
local GameName = "Universal";
local GameId = game.GameId;
local Games = {
["Eastern War"] = 5753515186;
["Scorched Earth"] = 4785126950;
["Frontlines"] = 2132866904;
["Games Unite"] = 992334288;
["State Of Anarchy"] = 595270616;
["Aftermath"] = 5286749994;
["Project Delta"] = 2862098693;
["Blackout"] = 3326279937;
["Criminality"] = 1494262959;
["Fallen"] = 3747388906;
["Blood and Iron"] = 16876831;
["Gunfight Arena"] = 5012222382;
--["Apocalypse Rising 2"] = 358276974;
["The Streets"] = 174268353;
["Counter Blox"] = 115797356;
["Arsenal"] = 111958650;
["Korrupt Zombies"] = 3956073837;
["Lone Survival"] = 4712109542;
["Combat Warriors"] = 1390601379;
};
LRM_IsUserPremium = false
LRM_LinkedDiscordID = "Developer"
LRM_ScriptName = "dev"
LRM_TotalExecutions = 0
LRM_SecondsLeft = 999999
LRM_UserNote = "hello";
do --// Directories
if not IsStudio then --// im only checking it because i did a lot of this work
in studio
if not isfolder("Ethereal") then
makefolder("Ethereal");
end;
end)
end
end
end
return coroutine.yield(coroutine.running())
end
return Old(...)
end))
end;
end
end
--// This variable is used to track time since execution; I use it to check load
times typically;
local Init = tick();
--// Services
local ReplicatedFirst = cloneref(game:GetService("ReplicatedFirst"));
local ReplicatedStorage = cloneref(game:GetService("ReplicatedStorage"));
local Lighting = cloneref(game:GetService("Lighting"));
local RunService = cloneref(game:GetService("RunService"));
local TweenService = cloneref(game:GetService("TweenService"));
local TextService = cloneref(game:GetService("TextService"));
local UserInputService = cloneref(game:GetService("UserInputService"));
local Players = cloneref(game:GetService("Players"));
local HttpService = cloneref(game:GetService("HttpService"));
local LogService = cloneref(game:GetService("LogService"));
local ScriptContext = cloneref(game:GetService("ScriptContext"));
local TeleportService = cloneref(game:GetService("TeleportService"));
local SoundService = cloneref(game:GetService("SoundService"));
local ProxPromptService = cloneref(game:GetService("ProximityPromptService"));
local CoreGui = cloneref(game:GetService("CoreGui"));
local Stats = cloneref(game:GetService("Stats"));
local ContentProvider = cloneref(game:GetService("ContentProvider"));
local Workspace = cloneref(game:GetService("Workspace"));
do --// Font
if not IsStudio then
do --// Deleting files
if isfile and isfile("proggy_font.font") then
delfile("proggy_font.font")
end;
end;
do --// Functions
local assetloader = getcustomasset;
Font = setreadonly(Font, false);
function Font:Register(Name, Weight, Style, Asset)
if not isfile(Asset.Id) then
writefile(Asset.Id, Asset.Font);
end;
local Data = {
name = Name,
faces = {{
name = "Regular",
weight = Weight,
style = Style,
assetId = getcustomasset(Asset.Id);
}}
};
function Font:GetRegistry(Name)
if isfile(Name .. ".font") then
return assetloader(Name .. ".font");
end;
end;
Font = setreadonly(Font, true)
end;
do --// Fonts Registration
Font:Register("pixel_font", 200, "normal", {Id = "pixel-font.ttf",
Font = crypt.base64.decode(
"AAEAAAANAIAAAwBQRFNJRwAAAAEAAQX0AAAACEdERUYDBAAkAAEF/AAAAChPUy8y1NZFSAAAANwAAABgY2
1hcNZo3swAAQp8AAAIOGdhc3AAAAADAAEF7AAAAAhnbHlmEGqBuwAAGjgAANTQaGVhZAZHGCYAAPpgAAAAN
mhoZWERQQ7WAAAZ9AAAACRobXR4Ywj7gAAA+pgAAAtUbG9jYQEl1TwAAO8IAAALWG1heHAC4wA8AAAaGAAA
ACBuYW1lomnC7QABBiQAAARWcG9zdN5ON9IAAAE8AAAYuAADBGEBkAAFAAQDAAMAAAABgAMAAwAAAAMAAEw
BMgAAAAAEAAAAAAAAAKAAAL9AAGB7AAAAAAAAAABGU1RSAEAAIPsCCQADAAAACoD9wAAAAf8AAAAAB4AJAA
AAACAAAQACAAAAAAAAAJgATAAAAAAAAAAAAAAAAAAAAAAAAAAAAtUAAAABAAIAAwAEAAUABgAHAAgACQAKA
AsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkA
KgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBDAEQARQBGAEcASAB
JAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQBeAF8AYABhAKMAhACFAL0AlgDoAI
YAjgCLAJ0AqQCkAIoA2gCDAJMA8gDzAI0AlwCIAMMA3gDxAJ4AqgD1APQA9gCiAK0AyQDHAK4AYgBjAJAAZ
ADLAGUAyADKAM8AzADNAM4A6QBmANMA0ADRAK8AZwDwAJEA1gDUANUAaADrAO0AiQBqAGkAawBtAGwAbgCg
AG8AcQBwAHIAcwB1AHQAdgB3AOoAeAB6AHkAewB9AHwAuAChAH8AfgCAAIEA7ADuALoBAgEDAQQBBQEGAQc
A/QD+AQgBCQEKAQsA/
wEAAQwBDQEOAQEBDwEQAREBEgETARQBFQEWARcBGAEZARoA+AD5ARsBHAEdAR4BHwEgASEBIgEjASQBJQEm
AScBKAEpASoA+gDXASsBLAEtAS4BLwEwATEBMgEzATQBNQE2ATcBOAE5AOIA4wE6ATsBPAE9AT4BPwFAAUE
BQgFDAUQBRQFGAUcBSACwALEBSQFKAUsBTAFNAU4BTwFQAVEBUgD7APwA5ADlAVMBVAFVAVYBVwFYAVkBWg
FbAVwBXQFeAV8BYAFhAWIBYwFkAWUBZgFnAWgAuwFpAWoBawFsAOYA5wFtAW4BbwFwAKYBcQFyAXMBdAF1A
XYBdwF4AXkBegF7AXwBfQF+AX8BgAGBAYIBgwGEAYUBhgGHAYgBiQGKANgA4QGLAYwBjQDbANwA3QDgANkA
3wGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwG
sAa0BrgGvAbABsQGyAJ8BswG0AbUBtgG3AbgBuQG6AbsBvAG9Ab4BvwHAAcEBwgHDAcQBxQHGAccByACbAc
kBygHLAcwBzQHOAc8B0AHRAdIB0wHUAdUB1gHXAdgB2QHaAdsB3AHdAd4B3wHgAeEB4gHjAeQB5QHmAecB6
AHpAeoB6wHsAe0B7gHvAfAB8QHyAfMB9AH1AfYB9wH4AfkB+gH7AfwB/
QH+Af8CAAIBAgICAwIEAgUCBgIHAggCCQIKAgsCDAINAg4CDwIQAhECEgITAhQCFQIWAhcCGAIZAhoCGwIc
Ah0CHgIfAiACIQIiAiMCJAIlAiYCJwIoAikCKgIrAiwCLQIuAi8CMAIxAjICMwI0AjUCNgI3AjgCOQI6Ajs
CPAI9Aj4CPwJAAkECQgJDAkQCRQJGAkcCSAJJAkoCSwJMAk0CTgJPAlACUQJSAlMCVAJVAlYCVwJYAlkCWg
JbAlwCXQJeAl8CYAJhAmICYwJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAnECcgJzAnQCdQJ2AncCeAJ5A
noCewJ8An0CfgJ/
AoACgQKCAoMChAKFAoYChwKIAokCigC2ALcAxAKLALQAtQDFAowAggDCAIcCjQCrAMYCjgKPApACkQC+AL8
AvAKSApMClAKVApYClwKYApkCmgKbApwCnQKeAp8CoAKhAqICowKkAqUCpgKnAqgCqQKqAqsCrAKtAq4Crw
KwAIwCsQKyArMCtAK1ArYCtwK4ArkCugK7ArwCvQK+Ar8CwALBAsICwwLEAsUCxgLHAsgCyQLKAssAqAClA
JIAnALMAKcAjwCUAJUCzQLOAs8C0ALRAtIC0wLUAtUC1gLXAtgC2QLaAtsC3ALdAt4AwADBB0FtYWNyb24H
YW1hY3JvbgZBYnJldmUGYWJyZXZlB0FvZ29uZWsHYW9nb25lawtDY2lyY3VtZmxleAtjY2lyY3VtZmxleAR
DZG90BGNkb3QGRGNhcm9uBmRjYXJvbgZEY3JvYXQHRW1hY3JvbgdlbWFjcm9uBkVicmV2ZQZlYnJldmUERW
RvdARlZG90B0VvZ29uZWsHZW9nb25lawZFY2Fyb24GZWNhcm9uC0djaXJjdW1mbGV4C2djaXJjdW1mbGV4B
Edkb3QEZ2RvdAhHY2VkaWxsYQhnY2VkaWxsYQtIY2lyY3VtZmxleAtoY2lyY3VtZmxleARIYmFyBGhiYXIG
SXRpbGRlBml0aWxkZQdJbWFjcm9uB2ltYWNyb24GSWJyZXZlBmlicmV2ZQdJb2dvbmVrB2lvZ29uZWsCSUo
CaWoLSmNpcmN1bWZsZXgLamNpcmN1bWZsZXgIS2NlZGlsbGEIa2NlZGlsbGEMa2dyZWVubGFuZGljBkxhY3
V0ZQZsYWN1dGUITGNlZGlsbGEIbGNlZGlsbGEGTGNhcm9uBmxjYXJvbgRMZG90BGxkb3QGTmFjdXRlBm5hY
3V0ZQhOY2VkaWxsYQhuY2VkaWxsYQZOY2Fyb24GbmNhcm9uC25hcG9zdHJvcGhlA0VuZwNlbmcHT21hY3Jv
bgdvbWFjcm9uBk9icmV2ZQZvYnJldmUJT2RibGFjdXRlCW9kYmxhY3V0ZQZSYWN1dGUGcmFjdXRlCFJjZWR
pbGxhCHJjZWRpbGxhBlJjYXJvbgZyY2Fyb24GU2FjdXRlBnNhY3V0ZQtTY2lyY3VtZmxleAtzY2lyY3VtZm
xleAhUY2VkaWxsYQh0Y2VkaWxsYQZUY2Fyb24GdGNhcm9uBFRiYXIEdGJhcgZVdGlsZGUGdXRpbGRlB1VtY
WNyb24HdW1hY3JvbgZVYnJldmUGdWJyZXZlBVVyaW5nBXVyaW5nCVVkYmxhY3V0ZQl1ZGJsYWN1dGUHVW9n
b25lawd1b2dvbmVrC1djaXJjdW1mbGV4C3djaXJjdW1mbGV4C1ljaXJjdW1mbGV4C3ljaXJjdW1mbGV4Blp
hY3V0ZQZ6YWN1dGUEWmRvdAR6ZG90BWxvbmdzB0J0b3BiYXIHYnRvcGJhcgVTY2h3YQdac3Ryb2tlB3pzdH
Jva2UDRXpoB0dzdHJva2UHZ3N0cm9rZQZHY2Fyb24GZ2Nhcm9uBktjYXJvbgZrY2Fyb24HT29nb25lawdvb
2dvbmVrCEV6aGNhcm9uCGV6aGNhcm9uCkFyaW5nYWN1dGUKYXJpbmdhY3V0ZQdBRWFjdXRlB2FlYWN1dGUL
T3NsYXNoYWN1dGULb3NsYXNoYWN1dGUMU2NvbW1hYWNjZW50DHNjb21tYWFjY2VudAtUY29tbWFiZWxvdwt
0Y29tbWFiZWxvdwhkb3RsZXNzagVzY2h3YQNlemgQZmlyc3R0b25lY2hpbmVzZRFzZWNvbmR0b25lY2hpbm
VzZRFmb3VydGh0b25lY2hpbmVzZRBudW1lcmFsc2lnbmdyZWVrFW51bWVyYWxzaWdubG93ZXJncmVlaw1xd
WVzdGlvbmdyZWVrBXRvbm9zDmRpYWx5dGlrYXRvbm9zCkFscGhhdG9ub3MJYW5vdGVsZWlhDEVwc2lsb250
b25vcwhFdGF0b25vcwlJb3RhdG9ub3MMT21pY3JvbnRvbm9zDFVwc2lsb250b25vcwpPbWVnYXRvbm9zEWl
vdGFkaWVyZXNpc3Rvbm9zBUFscGhhBEJldGEFR2FtbWEKRGVsdGFncmVlawdFcHNpbG9uBFpldGEDRXRhBV
RoZXRhBElvdGEFS2FwcGEGTGFtYmRhAk11Ak51AlhpB09taWNyb24CUGkDUmhvBVNpZ21hA1RhdQdVcHNpb
G9uA1BoaQNDaGkDUHNpDElvdGFkaWVyZXNpcw9VcHNpbG9uZGllcmVzaXMKYWxwaGF0b25vcwxlcHNpbG9u
dG9ub3MIZXRhdG9ub3MJaW90YXRvbm9zFHVwc2lsb25kaWVyZXNpc3Rvbm9zBWFscGhhBGJldGEFZ2FtbWE
FZGVsdGEHZXBzaWxvbgR6ZXRhA2V0YQV0aGV0YQRpb3RhBWthcHBhBmxhbWJkYQdtdWdyZWVrAm51AnhpB2
9taWNyb24DcmhvBnNpZ21hMQVzaWdtYQN0YXUHdXBzaWxvbgNwaGkDY2hpA3BzaQVvbWVnYQxpb3RhZGllc
mVzaXMPdXBzaWxvbmRpZXJlc2lzDG9taWNyb250b25vcwx1cHNpbG9udG9ub3MKb21lZ2F0b25vcwd1bmkw
M0Q3B3VuaTA0MDAJYWZpaTEwMDIzCWFmaWkxMDA1MQlhZmlpMTAwNTIJYWZpaTEwMDUzCWFmaWkxMDA1NAl
hZmlpMTAwNTUJYWZpaTEwMDU2CWFmaWkxMDA1NwlhZmlpMTAwNTgJYWZpaTEwMDU5CWFmaWkxMDA2MAlhZm
lpMTAwNjEHdW5pMDQwRAlhZmlpMTAwNjIJYWZpaTEwMTQ1CUFjeXJpbGxpYwlhZmlpMTAwMTgJYWZpaTEwM
DE5CWFmaWkxMDAyMAlhZmlpMTAwMjEJYWZpaTEwMDIyCWFmaWkxMDAyNAlhZmlpMTAwMjUJYWZpaTEwMDI2
CWFmaWkxMDAyNwlhZmlpMTAwMjgJYWZpaTEwMDI5CWFmaWkxMDAzMAlhZmlpMTAwMzEJYWZpaTEwMDMyCWF
maWkxMDAzMwlhZmlpMTAwMzQJYWZpaTEwMDM1CWFmaWkxMDAzNglhZmlpMTAwMzcJYWZpaTEwMDM4CWFmaW
kxMDAzOQlhZmlpMTAwNDAJYWZpaTEwMDQxCWFmaWkxMDA0MglhZmlpMTAwNDMJYWZpaTEwMDQ0CWFmaWkxM
DA0NQlhZmlpMTAwNDYJYWZpaTEwMDQ3CWFmaWkxMDA0OAlhZmlpMTAwNDkJYWN5cmlsbGljCWFmaWkxMDA2
NglhZmlpMTAwNjcJYWZpaTEwMDY4CWFmaWkxMDA2OQlhZmlpMTAwNzAJYWZpaTEwMDcyCWFmaWkxMDA3Mwl
hZmlpMTAwNzQJYWZpaTEwMDc1CWFmaWkxMDA3NglhZmlpMTAwNzcJYWZpaTEwMDc4CWFmaWkxMDA3OQlhZm
lpMTAwODAJYWZpaTEwMDgxCWFmaWkxMDA4MglhZmlpMTAwODMJYWZpaTEwMDg0CWFmaWkxMDA4NQlhZmlpM
TAwODYJYWZpaTEwMDg3CWFmaWkxMDA4OAlhZmlpMTAwODkJYWZpaTEwMDkwCWFmaWkxMDA5MQlhZmlpMTAw
OTIJYWZpaTEwMDkzCWFmaWkxMDA5NAlhZmlpMTAwOTUJYWZpaTEwMDk2CWFmaWkxMDA5Nwd1bmkwNDUwCWF
maWkxMDA3MQlhZmlpMTAwOTkJYWZpaTEwMTAwCWFmaWkxMDEwMQlhZmlpMTAxMDIJYWZpaTEwMTAzCWFmaW
kxMDEwNAlhZmlpMTAxMDUJYWZpaTEwMTA2CWFmaWkxMDEwNwlhZmlpMTAxMDgJYWZpaTEwMTA5B3VuaTA0N
UQJYWZpaTEwMTEwCWFmaWkxMDE5MwlhZmlpMTAxNDYJYWZpaTEwMTk0CWFmaWkxMDE0NwlhZmlpMTAxOTUJ
YWZpaTEwMTQ4CWFmaWkxMDE5Ngd1bmkwNDhBB3VuaTA0OEIHdW5pMDQ4Qwd1bmkwNDhEB3VuaTA0OEUHdW5
pMDQ4RglhZmlpMTAwNTAJYWZpaTEwMDk4EUdoZXN0cm9rZWN5cmlsbGljEWdoZXN0cm9rZWN5cmlsbGljFF
poZWRlc2NlbmRlcmN5cmlsbGljFHpoZWRlc2NlbmRlcmN5cmlsbGljE1plZGVzY2VuZGVyY3lyaWxsaWMTe
mVkZXNjZW5kZXJjeXJpbGxpYxNLYWRlc2NlbmRlcmN5cmlsbGljE2thZGVzY2VuZGVyY3lyaWxsaWMYS2F2
ZXJ0aWNhbHN0cm9rZWN5cmlsbGljGGthdmVydGljYWxzdHJva2VjeXJpbGxpYxFLYWJhc2hraXJjeXJpbGx
pYxFrYWJhc2hraXJjeXJpbGxpYxNFbmRlc2NlbmRlcmN5cmlsbGljE2VuZGVzY2VuZGVyY3lyaWxsaWMTRX
NkZXNjZW5kZXJjeXJpbGxpYxNlc2Rlc2NlbmRlcmN5cmlsbGljEVVzdHJhaWdodGN5cmlsbGljEXVzdHJha
WdodGN5cmlsbGljF1VzdHJhaWdodHN0cm9rZWN5cmlsbGljF3VzdHJhaWdodHN0cm9rZWN5cmlsbGljE0hh
ZGVzY2VuZGVyY3lyaWxsaWMTaGFkZXNjZW5kZXJjeXJpbGxpYxRDaGVkZXNjZW5kZXJjeXJpbGxpYxRjaGV
kZXNjZW5kZXJjeXJpbGxpYxlDaGV2ZXJ0aWNhbHN0cm9rZWN5cmlsbGljGWNoZXZlcnRpY2Fsc3Ryb2tlY3
lyaWxsaWMMU2hoYWN5cmlsbGljDHNoaGFjeXJpbGxpYxBwYWxvY2hrYWN5cmlsbGljEFpoZWJyZXZlY3lya
WxsaWMQemhlYnJldmVjeXJpbGxpYwd1bmkwNEM1B3VuaTA0QzYORW5ob29rY3lyaWxsaWMOZW5ob29rY3ly
aWxsaWMHdW5pMDRDOQd1bmkwNENBB3VuaTA0Q0QHdW5pMDRDRQd1bmkwNENGEUFkaWVyZXNpc2N5cmlsbGl
jEWFkaWVyZXNpc2N5cmlsbGljC0FpZWN5cmlsbGljC2FpZWN5cmlsbGljDVNjaHdhY3lyaWxsaWMJYWZpaT
EwODQ2D0ltYWNyb25jeXJpbGxpYw9pbWFjcm9uY3lyaWxsaWMRSWRpZXJlc2lzY3lyaWxsaWMRaWRpZXJlc
2lzY3lyaWxsaWMRT2RpZXJlc2lzY3lyaWxsaWMRb2RpZXJlc2lzY3lyaWxsaWMPT2JhcnJlZGN5cmlsbGlj
D29iYXJyZWRjeXJpbGxpYwd1bmkwNEVDB3VuaTA0RUQPVW1hY3JvbmN5cmlsbGljD3VtYWNyb25jeXJpbGx
pYxFVZGllcmVzaXNjeXJpbGxpYxF1ZGllcmVzaXNjeXJpbGxpYwZXZ3JhdmUGd2dyYXZlBldhY3V0ZQZ3YW
N1dGUJV2RpZXJlc2lzCXdkaWVyZXNpcwd1bmkxRTlFBllncmF2ZQZ5Z3JhdmURcXVvdGVsZWZ0cmV2ZXJzZ
WQHdW5pMjAxRgd1bmkyMDIzBm1pbnV0ZQZzZWNvbmQNcHJpbWVyZXZlcnNlZAd1bmkyMDM2DHplcm9zdXBl
cmlvcgd1bmkyMDcxDGZvdXJzdXBlcmlvcgxmaXZlc3VwZXJpb3ILc2l4c3VwZXJpb3INc2V2ZW5zdXBlcml
vcg1laWdodHN1cGVyaW9yDG5pbmVzdXBlcmlvcgx6ZXJvaW5mZXJpb3ILb25laW5mZXJpb3ILdHdvaW5mZX
Jpb3INdGhyZWVpbmZlcmlvcgxmb3VyaW5mZXJpb3IMZml2ZWluZmVyaW9yC3NpeGluZmVyaW9yDXNldmVua
W5mZXJpb3INZWlnaHRpbmZlcmlvcgxuaW5laW5mZXJpb3IDd29uBEV1cm8HdW5pMjBBRQd1bmkyMEIxB3Vu
aTIwQjQHdW5pMjBCOAd1bmkyMEI5B3VuaTIwQkEJYWZpaTYxMjQ4CWFmaWk2MTI4OQlhZmlpNjEzNTIHdW5
pMjExNwd1bmkyMTIwCWVzdGltYXRlZAd1bmkyMTUwB3VuaTIxNTEHdW5pMjE1MghvbmV0aGlyZAl0d290aG
lyZHMHdW5pMjE1NQd1bmkyMTU2B3VuaTIxNTcHdW5pMjE1OAd1bmkyMTU5B3VuaTIxNUEJb25lZWlnaHRoD
HRocmVlZWlnaHRocwtmaXZlZWlnaHRocwxzZXZlbmVpZ2h0aHMJYXJyb3dsZWZ0B2Fycm93dXAKYXJyb3dy
aWdodAlhcnJvd2Rvd24JYXJyb3dib3RoCWFycm93dXBkbgthcnJvd3VwbGVmdAxhcnJvd3VwcmlnaHQOYXJ
yb3dkb3ducmlnaHQNYXJyb3dkb3dubGVmdAhlbXB0eXNldAl0aGVyZWZvcmULYmxhY2tzcXVhcmUGSDIyMD
czF2JsYWNrdXBwb2ludGluZ3RyaWFuZ2xlF3doaXRldXBwb2ludGluZ3RyaWFuZ2xlGmJsYWNrcmlnaHRwb
2ludGluZ3RyaWFuZ2xlGndoaXRlcmlnaHRwb2ludGluZ3RyaWFuZ2xlBmNpcmNsZQtibGFja2NpcmNsZQZm
ZW1hbGUEbWFsZQtxdWFydGVybm90ZQttdXNpY2Fsbm90ZRBlaWdodGhub3RlYmVhbWVkDW11c2ljZmxhdHN
pZ24HdW5pMjY2RQ5tdXNpY3NoYXJwc2lnbgd1bmkyN0U4B3VuaTI3RTkAAQAACoACQAAACQD+gADACEAAAQ
AAAAAAAAAAAAAAAAAAAtUAAQAAAtUAPAANAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAADwADACQAAAwAHA
AARNTMVAxEzEcDAwAPAwMABgAPA/EAAAAAAAgAAB4ACQAkAAAMABwAAEREzETMRMxHAwMAHgAGA/
oABgP6AAAAAAAIAAAPAA8AJAAADAB8AAAE1IxUDESM1MzUjNTMRMxEzETMRMxUjFTMVIxEjESMRAkDAwMDA
wMDAwMDAwMDAwMAGAMDA/cABgMDAwAGA/oABgP6AwMDA/
oABgP6AAAAAAAUAAAPAA8AJAAAHAAsADwATABsAAAE1ITUhFSMVEzUzFSU1IRUlNTMVNTUzNTMVIRUBgP6A
AwDAwMD9AAJA/
QDAwMABgAPAwMDAwAGAwMDAwMDAwMDAwMDAwAAABwAAA8ADwAkAAAMABwALAA8AEwAXABsAABE1MxUhETMR
JREzERE1MxU1ETMRJREzESU1MxXAAkDA/QDAwMD9AMACQMADwMDAAYD+gMABgP6AAYDAwMABgP6AwAGA/
oDAwMAAAAgAAAPAA8AJAAADAAcACwAPABsAHwAjACcAABM1IRUzNTMVJREzEQE1MxUBNSM1IzUzNTMRMxEB
NTMVMzUzFSU1MxXAAYDAwPxAwAJAwP6AwMDAwMD9wMDAwP6AwAPAwMDAwMABgP6AAYDAwP6AwMDAwP6A/
oADAMDAwMDAwMAAAQAAB4AAwAkAAAMAABERMxHAB4ABgP6AAAAAAAUAAAPAAwAJAAADAAcACwAPABMAAAE1
IRUlNTMVJREzERE1MxU1NSEVAYABgP3AwP6AwMABgAPAwMDAwMDAAkD9wAJAwMDAwMAAAAAFAAADwAMACQA
AAwAHAAsADwATAAARNSEVNTUzFTURMxEBNTMVJTUhFQGAwMD+gMD9wAGAA8DAwMDAwMACQP3AAkDAwMDAwA
AFAAAGwAMACQAAAwAHAAsADwATAAARNTMVITUzFSU1IRUlNTMVITUzFcABgMD9wAGA/
cDAAYDABsDAwMDAwMDAwMDAwMAAAAABAAADwAPAB4AACwAAAREhNSERMxEhFSERAY
D+gAGAwAGA/oADwAGAwAGA/oDA/
oAAAAAAAQAAAwAAwAVAAAMAABERMxHAAwACQP3AAAAAAAEAAAVAA8AGAAADAAARNSEVA8AFQMDAAAEAAAPA
AMAFQAADAAARETMRwAPAAYD+gAAAAAAFAAADwAPACQAAAwAHAAsADwATAAARNTMVNREzERE1MxU1ETMRETU
zFcDAwMDAA8DAwMABgP6AAYDAwMABgP6AAYDAwAAAAAAFAAADwAPACQAAAwAHAA8AFwAbAAATNSEVATUzFQ
ERMxEzFSMVIREjNTM1MxEBNSEVwAJA/oDA/
cDAwMACQMDAwP0AAkADwMDAAkDAwP6AA8D9wMDAAkDAwPxAA8DAwAABAAADwAPACQAACwAAETUhESM1MzUz
ESEVAYDAwMABgAPAwAMAwMD7gMAAAAYAAAPAA8AJAAAFAAkADQARABUAGQAAEREzFSEVATUzFTU1IRUBNTM
VBREzEQE1IRXAAwD9AMABgP0AwAJAwP0AAkADwAGAwMABgMDAwMDAAYDAwMABgP6AAYDAwAAAAAcAAAPAA8
AJAAADAAcACwAPABMAFwAbAAATNSEVJTUzFSERMxEBNSEVATUzFQURMxEBNSEVwAJA/QDAAkDA/
cABgP0AwAJAwP0AAkADwMDAwMDAAYD+gAGAwMABgMDAwAGA/
oABgMDAAAAAAAMAAAPAA8AJAAADAAcAEwAAEzUzFTU1MxUTESERMxUhESM1IRHAwMDA/
QDAAkDAAYAGwMDAwMDA/
EABgAGAwAJAwPrAAAAAAAQAAAPAA8AJAAADAAcACwATAAATNSEVJTUzFSERMxEBESEVIRUhFcACQP0AwAJA
wPxAA8D9AAJAA8DAwMDAwAJA/
cACQAJAwMDAAAAFAAADwAPACQAAAwAHAA8AEwAXAAATNSEVNREzESERMxUhFSERETUzFTU1IRXAAkDA/
EDAAkD9wMABgAPAwMDAAYD+gAMAwMD+gAMAwMDAwMAAAAADAAADwAPACQAAAwAHAA8AAAERMxERNTMVNREh
FSMRIREBgMDA/cDAA8ADwAJA/cACQMDAwAGAwAGA/
cAAAAAABwAAA8ADwAkAAAMABwALAA8AEwAXABsAABM1IRUlETMRIREzEQE1IRUlETMRIREzEQE1IRXAAkD9
AMACQMD9AAJA/QDAAkDA/QACQAPAwMDAAYD+gAGA/oABgMDAwAGA/
oABgP6AAYDAwAAABQAAA8ADwAkAAAMABwALABMAFwAAEzUhFTU1MxUBETMRATUhNSERMxEBNSEVwAGAwP0A
wAJA/
cACQMD9AAJAA8DAwMDAwAJAAYD+gP6AwMABgP0AAwDAwAAAAAACAAADwADACEAAAwAHAAARETMRAxEzEcDA
wAPAAYD+gAMAAYD+gAAAAgAAAwAAwAhAAAMABwAAEREzEQMRMxHAwMADAAJA/cADwAGA/
oAAAAcAAAPAAwAJAAADAAcACwAPABMAFwAbAAABNTMVJTUzFSU1MxUlNTMVNTUzFTU1MxU1NTMVAkDA/
oDA/oDA/
oDAwMDAA8DAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAgAABIADwAeAAAMABwAAETUhFQE1IRUDwPxAA8AEgMDA
AkDAwAAAAAcAAAPAAwAJAAADAAcACwAPABMAFwAbAAARNTMVNTUzFTU1MxU1NTMVJTUzFSU1MxUlNTMVwMD
AwP6AwP6AwP6AwAPAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAABgAAA8ADwAkAAAMABwALAA8AEwAXAAABNT
MVAzUzFTU1MxUBNTMVBREzEQE1IRUBgMDAwMD9AMACQMD9AAJAA8DAwAGAwMDAwMABgMDAwAGA/
oABgMDAAAQAAAPABIAJAAADAAcADwATAAATNSEVJREzETcRIREzETMRATUhFcADwPuAwMABgMDA/
EADAAPAwMDAA8D8QMACQP6AAkD9AAMAwMAAAAAAAgAAA8ADwAkAAAsADwAAEREzFSE1MxEjESERETUhFcAC
QMDA/
cACQAPABIDAwPuAAwD9AASAwMAAAAAAAwAAA8ADwAkAAAMABwATAAABETMRAzUzFQERIRUhFSEVIREhFQMA
wMDA/
EADAP3AAkD9wAJABIACQP3AAwDAwPxABUDAwMD9wMAAAAUAAAPAA8AJAAADAAcACwAPABMAABM1IRU1NTMV
IREzEQE1MxUlNSEVwAJAwPxAwAJAwP0AAkADwMDAwMDAA8D8QAMAwMDAwMAAAAACAAADwAPACQAAAwALAAA
BETMRBREhFSERIRUDAMD8QAMA/
cACQASAA8D8QMAFQMD8QMAAAQAAA8ADwAkAAAsAABERIRUhFSEVIREhFQPA/QABgP6AAwADwAVAwMDA/
cDAAAAAAQAAA8ADwAkAAAkAABERIRUhFSEVIREDwP0AAYD+gAPABUDAwMD9AAAAAAAEAAADwAPACQAAAwAJ
AA0AEQAAEzUhFTURITUhESERMxERNSEVwAJA/oACQPxAwAMAA8DAwMACQMD9AAPA/
EADwMDAAAEAAAPAA8AJAAALAAARETMRIREzESMRIRHAAkDAwP3AA8AFQP6AAYD6wAMA/
QAAAAEAAAPAAkAJAAALAAARNTMRIzUhFSMRMxXAwAJAwMADwMADwMDA/
EDAAAAAAwAAA8ADwAkAAAMABwALAAATNSEVJTUzFSERMxHAAkD9AMACQMADwMDAwMDABID7gAAAAAUAAAPA
A8AJAAADAAcACwATABcAAAERMxEBNTMVAzUzFQERMxEhFSERATUzFQMAwP6AwMDA/
QDAAYD+gAJAwAPAAkD9wAJAwMABgMDA/
EAFQP6AwP0ABIDAwAAAAQAAA8ADwAkAAAUAABERMxEhFcADAAPABUD7gMAAAAADAAADwAPACQAAAwALABMA
AAE1MxUBETMVMxUjESERIzUzNTMRAYDA/
cDAwMACQMDAwAbAwMD9AAVAwMD8QAPAwMD6wAAAAAADAAADwAPACQAAAwALABMAAAE1MxUBETMVMxUjESER
IzUzETMRAYDA/
cDAwMACQMDAwAbAwMD9AAVAwMD8QAJAwAJA+sAAAAAEAAADwAPACQAAAwAHAAsADwAAEzUhFSURMxEhETMR
ATUhFcACQP0AwAJAwP0AAkADwMDAwAPA/
EADwPxAA8DAwAAAAAIAAAPAA8AJAAADAA0AAAE1MxUBESEVIRUhFSERAwDA/
EADAP3AAkD9wAeAwMD8QAVAwMDA/
QAABgAAA8ADwAkAAAMABwALAA8AEwAXAAATNSEVMzUzFSU1MxUhETMRJREzEQE1IRXAAYDAwP6AwP0AwAJA
wP0AAkADwMDAwMDAwMADwPxAwAMA/
QADAMDAAAMAAAPAA8AJAAADAAcAEQAAAREzEQM1MxUBESEVIRUhFSERAwDAwMD8QAMA/
cACQP3AA8ADAP0AA8DAwPxABUDAwMD9AAAAAAYAAAPAA8AJAAADAAcACwAPABMAFwAAEzUhFSU1MxUhETMR
ATUhFSU1MxU1NSEVwAJA/QDAAkDA/QACQP0AwAMAA8DAwMDAwAJA/
cACQMDAwMDAwMDAAAABAAADwAPACQAABwAAAREhNSEVIREBgP6AA8D+gAPABIDAwPuAAAAAAwAAA8ADwAkA
AAMABwALAAATNSEVJREzESERMxHAAkD9AMACQMADwMDAwASA+4AEgPuAAAUAAAPAA8AJAAADAAcACwAPABM
AAAE1MxUlETMRMxEzEQERMxEhETMRAYDA/oDAwMD9AMACQMADwMDAwAGA/
oABgP6AAYADAP0AAwD9AAAAAwAAA8ADwAkAAAMACwATAAABNTMVAREzETMVIxUhNSM1MxEzEQGAwP3AwMDA
AkDAwMAFQMDA/
oAFQPxAwMDAwAPA+sAAAAAACQAAA8ADwAkAAAMABwALAA8AEwAXABsAHwAjAAARETMRIREzEQE1MxUzNTMV
JTUzFSU1MxUzNTMVJTUzFSE1MxXAAkDA/QDAwMD+gMD+gMDAwP0AwAJAwAPAAkD9wAJA/
cACQMDAwMDAwMDAwMDAwMDAwMDAAAAABQAAA8ADwAkAAAMABwALAA8AEwAAAREzEQE1MxUzNTMVJTUzFSE1
MxUBgMD+gMDAwP0AwAJAwAPAA8D8QAPAwMDAwMDAwMDAAAAAAAUAAAPAA8AJAAAFAAkADQARABcAABERMxU
hFQE1MxU1NTMVNTUzFTU1ITUhEcADAP0AwMDA/
QADwAPAAYDAwAGAwMDAwMDAwMDAwMD+gAAAAQAAA8ACQAkAAAcAABERIRUhESEVAkD+gAGAA8AFQMD8QMAA
BQAAA8ADwAkAAAMABwALAA8AEwAAATUzFSURMxEBNTMVJREzEQE1MxUDAMD+gMD+gMD+gMD+gMADwMDAwAG
A/oABgMDAwAGA/
oABgMDAAAABAAADwAJACQAABwAAETUhESE1IREBgP6AAkADwMADwMD6wAAFAAAGwAPACQAAAwAHAAsADwAT
AAARNTMVITUzFSU1MxUzNTMVJTUzFcACQMD9AMDAwP6AwAbAwMDAwMDAwMDAwMDAAAEAAAMAA8ADwAADAAA
RNSEVA8ADAMDAAAIAAAhAAYAJwAADAAcAABM1MxUlNTMVwMD+gMAIQMDAwMDAAAMAAAPAA8AHgAADAA0AEQ
AAETUzFRU1ITUhNSE1MxEBNSEVwAJA/cACQMD9AAJABIDAwMDAwMDA/
QADAMDAAAADAAADwAPACQAAAwAHABEAAAERMxEBNSEVAREzETMVIxEhFQMAwP3AAYD9AMDAwAJABIACQP3A
AkDAwP0ABUD9wMD+gMAAAAAFAAADwAPAB4AAAwAHAAsADwATAAATNSEVNTUzFSERMxEBNTMVJTUhFcACQMD
8QMACQMD9AAJAA8DAwMDAwAJA/
cABgMDAwMDAAAAAAwAAA8ADwAkAAAMABwARAAARETMRETUhFQE1IREjNTMRMxHAAYD+gAJAwMDABIACQP3A
AkDAwP0AwAGAwAJA+sAAAAADAAADwAPAB4AAAwANABEAABM1IRUlETMVITUzESEVETUhFcADAPxAwAJAwP0
AAkADwMDAwAJAwMD+gMACQMDAAAAAAAIAAAPAAwAJAAALAA8AABMRIzUzNTMVIRUhERE1IRXAwMDAAYD+gA
GAA8ADAMDAwMD9AASAwMAAAwAAAwADwAeAAAMABwARAAARNSEVAREzEQE1ITUhESE1IREDAP0AwAJA/
cACQP3AAwADAMDAAkABgP6A/
oDAwAGAwPxAAAAAAwAAA8ADwAkAAAMABwAPAAABETMRATUhFQERMxEzFSMRAwDA/
cABgP0AwMDAA8ADAP0AAwDAwP0ABUD9wMD9wAAAAAACAAADwADACQAAAwAHAAARETMRAzUzFcDAwAPAA8D8
QASAwMAAAAAABAAAAwADwAkAAAMABwALAA8AABM1IRUlETMRIREzEQM1MxXAAkD9AMACQMDAwAMAwMDAAYD
+gAPA/
EAEgMDAAAUAAAPAAwAJAAADAAcACwAPABcAAAE1MxUlNTMVAzUzFTU1MxUBETMRMxUjEQJAwP6AwMDAwP0A
wMDAA8DAwMDAwAGAwMDAwMD9AAVA/QDA/
oAAAAIAAAPAAYAJAAADAAcAABM1MxUlETMRwMD+gMADwMDAwASA+4AAAAAEAAADwAPAB4AAAwAHAA0AEQAA
AREzERMRMxEhESEVIxEBNTMVAYDAwMD8QAGAwAGAwAVAAYD+gP6AAwD9AAPAwP0AAwDAwAACAAADwAPAB4A
AAwAJAAABETMRIREhFSERAwDA/EADAP3AA8ADAP0AA8DA/
QAAAAAEAAADwAPAB4AAAwAHAAsADwAAEzUhFSURMxEhETMRATUhFcACQP0AwAJAwP0AAkADwMDAwAJA/
cACQP3AAkDAwAAAAAMAAAMAA8AHgAADAA8AEwAAAREzEQERMxUzFSMVIRUhERM1IRUDAMD8QMDAwAJA/
cDAAYAFQAGA/
oD9wASAwMDAwP6AA8DAwAAAAAADAAADAAPAB4AAAwAHABMAABERMxERNSEVExEhNSE1IzUzNTMRwAGAwP3A
AkDAwMAFQAGA/oABgMDA/
EABgMDAwMD7gAAAAAADAAADwAPAB4AAAwALAA8AAAE1MxUBETMVMxUjERM1IRUDAMD8QMDAwMABgAYAwMD9
wAPAwMD9wAMAwMAAAAAABQAAA8ADwAeAAAMABwALAA8AEwAAETUhFTU1MxUlNSEVJTUzFTU1IRUDAMD9AAJ
A/
QDAAwADwMDAwMDAwMDAwMDAwMDAAAAAAgAAA8ACQAkAAAMADwAAATUzFSURIzUzNTMVMxUjEQGAwP6AwMDA
wMADwMDAwAMAwMDAwP0AAAACAAADwAPAB4AAAwAJAAARETMRFTUhETMRwAJAwASAAwD9AMDAAwD8QAAAAAU
AAAPAA8AHgAADAAcACwAPABMAAAE1MxUlNTMVMzUzFSURMxEhETMRAYDA/
oDAwMD9AMACQMADwMDAwMDAwMDAAkD9wAJA/
cAAAAACAAADwAPAB4AAAwANAAARETMRFTUzETMRMxEzEcDAwMDABIADAP0AwMABgP6AAwD8QAAACQAAA8AD
wAeAAAMABwALAA8AEwAXABsAHwAjAAARNTMVITUzFSU1MxUzNTMVJTUzFSU1MxUzNTMVJTUzFSE1MxXAAkD
A/
QDAwMD+gMD+gMDAwP0AwAJAwAPAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAADAAADAAPAB4AAAwAHAA8A
ABE1IRUBETMRATUhNSERMxEDAP0AwAJA/cACQMADAMDAAkACQP3A/oDAwAJA/
EAAAwAAA8ADwAeAAAcACwATAAARNTM1MxUhFQE1MxU1NSE1IRUjFcDAAkD9wMD9wAPAwAPAwMDAwAGAwMDA
wMDAwAAAAAAFAAADwAMACQAAAwAHAAsADwATAAABNSEVJREzEQE1MxU1ETMRETUhFQGAAYD9wMD+gMDAAYA
DwMDAwAGA/oABgMDAwAGA/
oABgMDAAAAAAAEAAAMAAMAJAAADAAARETMRwAMABgD6AAAAAAAFAAADwAMACQAAAwAHAAsADwATAAARNSEV
NREzERE1MxUlETMRATUhFQGAwMD+gMD9wAGAA8DAwMABgP6AAYDAwMABgP6AAYDAwAAABAAAB4AEgAkAAAM
ABwALAA8AABE1MxUhNSEVJTUhFSE1MxXAAYABgP0AAYABgMAHgMDAwMDAwMDAwAAAAgAAA8AAwAkAAAMABw
AAEREzEQM1MxXAwMADwAPA/
EAEgMDAAAAAAAMAAAPAAwAHgAAHAAsAEwAAATUjNSEVIxUBNTMVNTUzNTMVMxUBgMACQMD9wMDAwMADwMDA
wMABgMDAwMDAwMAAAAAAAgAAA8ADwAkAAA8AEwAAETUzESM1MxEzESEVIREhFQE1IRXAwMDAAYD+gAJA/
cACQAPAwAGAwAGA/oDA/
oDABIDAwAAGAAAEgAPACEAAAwAHAAsADwATABcAABE1MxUhNTMVATUjFQcRIREBNTMVITUzFcACQMD+gMDA
AkD9AMACQMAEgMDAwMABgMDAwAJA/
cACQMDAwMAAAAAABQAAA8ADwAkAABMAFwAbAB8AIwAAATUjNTM1IzUzNTMVMxUjFTMVIxUBNTMVMzUzFSU1
MxUhNTMVAYDAwMDAwMDAwMD+gMDAwP0AwAJAwAPAwMDAwMDAwMDAwAPAwMDAwMDAwMDAAAACAAADwADACQA
AAwAHAAARETMRAxEzEcDAwAPAAkD9wAMAAkD9wAAACAAAA8ADwAkAAAMABwALAA8AEwAXABsAHwAAETUhFT
U1MxUlNSEVJTUzFSE1MxUlNSEVJTUzFTU1IRUDAMD9AAJA/QDAAkDA/
QACQP0AwAMAA8DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAgDACEADAAkAAAMABwAAEzUzFTM1MxXAwMDA
CEDAwMDAAAAABwAAA8AFQAkAAAMABwALAA8AEwAXABsAABM1IRUBNSEVJTUzFTU1IRUBETMRIREzEQE1IRX
AA8D9wAGA/cDAAYD8QMADwMD7gAPAA8DAwAGAwMDAwMDAwMD9wAPA/
EADwPxAA8DAwAADAAAEgAJACQAAAwAHABMAABE1IRUBNTMVFTUzNSM1IzUhFTMRAkD9wMDAwMABgMAEgMDA
AkDAwMDAwMDAwP3AAAAAAAYAAAPAAwAGwAADAAcACwAPABMAFwAAEzUzFTM1MxUlETMRMxEzEQE1MxUzNTM
VwMDAwP0AwMDA/oDAwMADwMDAwMDAAYD+gAGA/
oABgMDAwMAAAAEAAAVAAwAHgAAFAAABESE1IRECQP3AAwAFQAGAwP3AAAAAAAYAAAPABUAJAAADAAcADwAT
ABcAGwAAEzUhFQE1MxUhESEVIxUjFQURMxEhETMRATUhFcADwP6AwP3AAkDAwP3AwAPAwPuAA8ADwMDAAYD
AwAJAwMDAwAPA/
EADwPxAA8DAwAABAAAIQAPACQAAAwAAETUhFQPACEDAwAAEAAAGwAJACQAAAwAHAAsADwAAEzUzFSU1MxUz
NTMVJTUzFcDA/
oDAwMD+gMAGwMDAwMDAwMDAwMAAAAACAAADwAPACQAAAwAPAAARNSEVAREhNSERMxEhFSERA8D9wP6AAYDA
AYD+gAPAwMABgAGAwAGA/oDA/
oAAAAAAAwAABgACQAkAAAcACwAPAAARNTM1MxUzFQM1MxUlNSEVwMDAwMD9wAGABgDAwMDAAYDAwMDAwAAC
AAAGAAJACQAAAwANAAARNSEVNTUjNSM1IRUzEQGAwMABgMAGAMDAwMDAwMD+gAACAAAIQAGACcAAAwAHAAA
RNTMVNTUzFcDACEDAwMDAwAAAAAACAAADAAPAB4AABwAPAAARETMRIRUhFSU1IzUzETMRwAGA/
oACQMDAwAMABID9AMDAwMDAAkD8QAAAAAABAAADwAPACQAACwAAAREjESE1IxEzNSERAwDA/
oDAwAMAA8AEgP3AwAGAwPrAAAABAAAFQADABgAAAwAAETUzFcAFQMDAAAABAMACQAJAA8AABQAAEzUzNTMR
wMDAAkDAwP6AAAAAAAEAAAYAAkAJAAALAAARNTM1IzUzNTMRMxXAwMDAwAYAwMDAwP3AwAAFAAAEgAJACQA
AAwAHAAsADwATAAARNSEVATUzFSURMxEzETMRATUzFQJA/oDA/
oDAwMD+gMAEgMDAAYDAwMABgP6AAYD+gAGAwMAABgAAA8ADAAbAAAMABwALAA8AEwAXAAARNTMVMzUzFSUR
MxEzETMRATUzFTM1MxXAwMD+gMDAwP0AwMDAA8DAwMDAwAGA/
oABgP6AAYDAwMDAAAAABwAAA8AGAAkAAAMABwALABcAGwAnACsAAAE1MxU1ETMRETUzFQE1IREzFTM1IzUh
EQERMxEFNTM1IzUzNTMRMxUBNTMVAYDAwMABgP6AwMDAAYD9wMD7gMDAwMDAAkDAA8DAwMABgP6AAYDAwP3
AwAGAwMDA/QADAAGA/
oDAwMDAwP3AwAJAwMAAAAAHAAADwAYACQAAAwALAA8AEwAbACcAKwAAATUzFSE1MzUzFTMVJREzESU1MxUl
NTMRMxEzFSE1MzUjNTM1MxEzFQE1MxUBgMABgMDAwPxAwAJAwP0AwMDA+sDAwMDAwAJAwAPAwMDAwMDAwAG
A/oDAwMDAwAGA/
oDAwMDAwP3AwAJAwMAAAAAACAAAA8AGAAkAAAMABwALAA8AGwAfACkALQAAATUzFTURMxEBNSEVITUzFQE1
IREzFTM1IzUhEQERMxEhNSM1IzUhFTMRATUzFQGAwMD9AAGAAYDAAYD+gMDAwAGA/cDA/
QDAwAGAwAJAwAPAwMDAAYD+gAGAwMDAwP3AwAGAwMDA/QADAAGA/oDAwMDA/
oABgMDAAAYAAAPAA8AJAAADAAcACwAPA
BMAFwAAEzUhFTU1MxUhETMRETUzFTU1MxUDNTMVwAJAwPxAwMDAwMADwMDAwMDAAYD+gAGAwMDAwMABgMDA
AAAAAAMAAAPAA8AKgAALABMAFwAAEREzFSE1MxEjESERETUzNTMVMxUBNTMVwAJAwMD9wMDAwP3AwAPABID
AwPuAAwD9AASAwMDAwAGAwMAAAAAAAwAAA8ADwAqAAAsAEwAXAAARETMVITUzESMRIRERNTM1MxUzFQM1Mx
XAAkDAwP3AwMDAwMADwASAwMD7gAMA/
QAEgMDAwMABgMDAAAMAAAPAA8AKgAALABMAFwAAEREzFSE1MxEjESEREREzFTM1MxEBNTMVwAJAwMD9wMDA
wP6AwAPABIDAwPuAAwD9AASAAYDAwP6AAYDAwAAABAAAA8ADwAqAAAsADwAZAB0AABERMxUhNTMRIxEhEQM
1MxUVNTM1IzUhFTMRETUzFcACQMDA/
cDAwMDAAYDAwAPABIDAwPuAAwD9AAVAwMDAwMDAwP6AAYDAwAAEAAADwAPACoAACwAPABMAFwAAEREzFSE1
MxEjESERETUhFQE1MxUzNTMVwAJAwMD9wAJA/cDAwMADwASAwMD7gAMA/
QAEgMDAAYDAwMDAAAMAAAPAA8AKgAALAA8AEwAAEREzFSE1MxEjESERATUjFQcRIRHAAkDAwP3AAYDAwAJA
A8AEgMDA+4ADAP0ABUDAwMACQP3AAAEAAAPABsAJAAAVAAARETMVITUhNSEVIRUhFSERIRUhESERwAJA/
cAGAP0AAYD+gAMA/
ED9wAPABIDAwMDAwMD9wMADAP0AAAUAAAJAA8AJAAAJAA0AEQAVABkAABM1MzUjNSEVIxETNTMVIREzEQE1
MxUlNSEVwMDAAkDAwMD8QMACQMD9AAJAAkDAwMDA/
oACQMDAA8D8QAMAwMDAwMAAAAAAAgAAA8ADwAqAAA8AEwAAEREhNTMVIRUhFSEVIREhFQE1MxUBgMABgP0A
AYD+gAMA/QDAA8AFQMDAwMDA/
cDABgDAwAACAAADwAPACoAADwATAAARESE1MxUhFSEVIRUhESEVATUzFQGAwAGA/
QABgP6AAwD+gMADwAVAwMDAwMD9wMAGAMDAAAIAAAPAA8AKgAATABcAABERMzUzFTM1MxUzFSEVIRUhESEV
ATUzFcDAwMDA/
QABgP6AAwD9wMADwAVAwMDAwMDAwP3AwAYAwMAAAAADAAADwAPACoAACwAPABMAABERIRUhFSEVIREhFQE1
MxUzNTMVA8D9AAGA/
oADAP0AwMDAA8AFQMDAwP3AwAYAwMDAwAAAAAACAAADwAJACoAADwATAAARNTMRIzUzNTMVMxUjETMVATUz
FcDAwMDAwMD9wMADwMADwMDAwMD8QMAGAMDAAAAAAgAAA8ACQAqAAA8AEwAAETUzESM1MzUzFTMVIxEzFQM
1MxXAwMDAwMDAwMADwMADwMDAwMD8QMAGAMDAAAAAAAIAAAPAAkAKgAAPABMAABE1MxEjETMVMzUzESMRMx
UBNTMVwMDAwMDAwP6AwAPAwAPAAYDAwP6A/
EDABgDAwAADAAADwAJACoAACwAPABMAABE1MxEjNSEVIxEzFQE1MxUzNTMVwMACQMDA/
cDAwMADwMADwMDA/
EDABgDAwMDAAAAAAAIAAAPABIAJAAADABMAAAERMxEFESM1MxEhFSEVMxUjESEVA8DA/EDAwAMA/
cDAwAJABIADwPxAwAMAwAGAwMDA/
cDAAAAAAAUAAAPAA8AKgAADAAsAEwAbAB8AAAE1MxUTESM1MxEzESERMxEzFSMREzUjNSEVMxU1NTMVAYDA
wMDAwPxAwMDAwMABgMDABsDAwP0AAkDAAkD6wAYA/oDA/
EAFQMDAwMDAwMAAAAAABQAAA8ADwAqAAAMABwALABMAFwAAEzUhFSURMxEhETMRATUzNTMVMxUBNTMVwAJA
/QDAAkDA/QDAwMD9wMADwMDAwAPA/
EADwPxAA8DAwMDAAYDAwAAAAAUAAAPAA8AKgAADAAcACwATABcAABM1IRUlETMRIREzEQE1MzUzFTMVAzUz
FcACQP0AwAJAwP0AwMDAwMADwMDAwAPA/
EADwPxAA8DAwMDAAYDAwAAAAAAFAAADwAPACoAAAwAHAAsAEwAXAAATNSEVJREzESERMxEBETMVMzUzEQE1
MxXAAkD9AMACQMD9AMDAwP6AwAPAwMDAA8D8QAPA/
EADwAGAwMD+gAGAwMAABgAAA8ADwAqAAAMABwALAA8AGQAdAAATNSEVJREzESERMxEBNTMVFTUzNSM1IRUz
ERE1MxXAAkD9AMACQMD8QMDAwAGAwMADwMDAwAPA/EADwPxABIDAwMDAwMDA/
oABgMDAAAYAAAPAA8AKgAADAAcACwAPABMAFwAAEzUhFSURMxEhETMRATUhFQE1MxUzNTMVwAJA/
QDAAkDA/
QACQP3AwMDAA8DAwMADwPxAA8D8QAPAwMABgMDAwMAAAAAABQAAA8ADAAbAAAMABwALAA8AEwAAETUzFSE1
MxUlESERATUzFSE1MxXAAYDA/
cABgP3AwAGAwAPAwMDAwMABgP6AAYDAwMDAAAAAAAcAAAPAA8AJAAADAAcACwATABsAHwAjAAARNTMVMzUh
FQE1MxUBNSMRMxEzESERIxEzFTMRATUhFTM1MxXAwAGA/oDA/
oDAwMABgMDAwP0AAYDAwAPAwMDAwAJAwMD+gMADAP3A/
oACQAGAwP0AA8DAwMDAAAAAAAUAAAPAA8AKgAADAAcACwAPABMAABM1IRUlETMRIREzEQE1MxUlNTMVwAJA
/QDAAkDA/cDA/
oDAA8DAwMAEgPuABID7gASAwMDAwMAAAAAABQAAA8ADwAqAAAMABwALAA8AEwAAEzUhFSURMxEhETMRATUz
FTU1MxXAAkD9AMACQMD9wMDAA8DAwMAEgPuABID7gASAwMDAwMAAAAYAAAPAA8AKgAADAAcACwAPABMAFwA
AEzUhFSURMxEhETMRATUzFTM1MxUlNTMVwAJA/QDAAkDA/
QDAwMD+gMADwMDAwASA+4AEgPuABIDAwMDAwMDAAAAFAAADwAPACoAAAwAHAAsADwATAAATNSEVJREzESER
MxEBNTMVMzUzFcACQP0AwAJAwP0AwMDAA8DAwMAEgPuABID7gAVAwMDAwAAABwAAA8ADwAqAAAMABwALAA8
AEwAXABsAAAERMxEBNTMVMzUzFSU1MxUhNTMVJTUzFTU1MxUBgMD+gMDAwP0AwAJAwP3AwMADwAPA/
EADwMDAwMDAwMDAwMDAwMDAwAAAAgAAA8ADwAkAAAMADwAAATUzFQERMxUhFSEVIRUhEQMAwPxAwAJA/
cACQP3ABsDAwP0ABUDAwMDA/
cAABQAAA8ADwAkAAAMABwALABEAFQAAATUhFTURMxEFETMREzUzNTMRATUhFQGAAYDA/EDAwMDA/
cABgAPAwMDAAkD9wMAEgPuAAwDAwP6AAYDAwAAABQAAA8ADwAnAAAMADQARABUAGQAAETUzFRU1ITUhNSE1
MxEBNSEVATUzFSU1MxXAAkD9wAJAwP0AAkD+gMD+gMAEgMDAwMDAwMD9AAMAwMABgMDAwMDAAAUAAAPAA8A
JwAADAA0AEQAVABkAABE1MxUVNSE1ITUhNTMRATUhFQE1MxU1NTMVwAJA/cACQMD9AAJA/
oDAwASAwMDAwMDAwP0AAwDAwAGAwMDAwMAAAAAGAAADwAPACcAAAwANABEAFQAZAB0AABE1MxUVNSE1ITUh
NTMRATUhFQE1MxUzNTMVJTUzFcACQP3AAkDA/QACQP3AwMDA/oDABIDAwMDAwMDA/
QADAMDAAYDAwMDAwMDAAAAABgAAA8ADwAnAAAMADQARABUAHQAhAAARNTMVFTUhNSE1ITUzEQE1IRUBNTMV
MzUjNSEVMxU1NTMVwAJA/cACQMD9AAJA/QDAwMABgMDABIDAwMDAwMDA/
QADAMDAAYDAwMDAwMDAwMAAAAAABQAAA8ADwAkAAAMADQARABUAGQAAETUzFRU1ITUhNSE1MxEBNSEVATUz
FTM1MxXAAkD9wAJAwP0AAkD9wMDAwASAwMDAwMDAwP0AAwDAwAGAwMDAwAAAAAUAAAPAA8AKgAADAA0AEQA
VABkAABE1MxUVNSE1ITUhNTMRATUhFQM1IxUHESERwAJA/
cACQMD9AAJAwMDAAkAEgMDAwMDAwMD9AAMAwMACQMDAwAJA/
cAAAAAABgAAA8AGwAeAAAMABwALABkAHQAhAAATNSEVMzUhFSU1MxUhNSE1ITUzFSE1MxEhFQE1IRUzNSEV
wAJAwAJA+gDAAkD9wAJAwAJAwP0A/QACQMACQAPAwMDAwMDAwMDAwMDA/
oDAAkDAwMDAAAAAAAUAAAJAA8AHgAAJAA0AEQAVABkAABM1MzUjNSEVIxETNTMVIREzEQE1MxUlNSEVwMDA
AkDAwMD8QMACQMD9AAJAAkDAwMDA/
oACQMDAAkD9wAGAwMDAwMAAAAAABQAAA8ADwAnAAAMADQARABUAGQAAEzUhFSURMxUhNTMRIRURNSEVATUz
FSU1MxXAAwD8QMACQMD9AAJA/oDA/oDAA8DAwMACQMDA/
oDAAkDAwAGAwMDAwMAAAAAFAAADwAPACcAAAwANABEAFQAZAAATNSEVJREzFSE1MxEhFRE1IRUBNTMVNTUz
FcADAPxAwAJAwP0AAkD+gMDAA8DAwMACQMDA/
oDAAkDAwAGAwMDAwMAABgAAA8ADwAnAAAMADQARABUAGQAdAAATNSEVJREzFSE1MxEhFRE1IRUBNTMVMzUz
FSU1MxXAAwD8QMACQMD9AAJA/
cDAwMD+gMADwMDAwAJAwMD+gMACQMDAAYDAwMDAwMDAAAUAAAPAA8AJAAADAA0AEQAVABkAABM1IRUlETMV
ITUzESEVETUhFQE1MxUzNTMVwAMA/EDAAkDA/QACQP3AwMDAA8DAwMACQMDA/oDAAkDAwAGAwMDAwAAD/
0ADwADACcAAAwAHAAsAABERMxEDNTMVJTUzFcDAwP6AwAPAA8D8QASAwMDAwMAAAAAAAwAAA8ABgAnAAAMA
BwALAAARETMRAzUzFTU1MxXAwMDAA8ADwPxABIDAwMDAwAAABP9AA8ABgAnAAAMABwALAA8AABERMxEBNTM
VMzUzFSU1MxXA/oDAwMD+gMADwAPA/EAEgMDAwMDAwMAAA/
9AA8ABgAkAAAMABwALAAARETMRATUzFTM1MxXA/oDAwMADwAPA/
EAEgMDAwMAABwAAA8ADwAkAAAMABwALABMAFwAbAB8AABM1IRUlNTMVEzUzFRM1ITUhETMRATUzFSU1MxUz
NTMVwAJA/QDAwMDA/cACQMD+gMD+gMDAwAPAwMDAwMACQMDA/cDAwAGA/
QADAMDAwMDAwMAABQAAA8ADwAnAAAMACQANABUAGQAAAREzESERIRUhEQM1MxUzNSM1IRUzFTU1MxUDAMD8
QAMA/
cDAwMDAAYDAwAPAAwD9AAPAwP0ABIDAwMDAwMDAwMAAAAYAAAPAA8AJwAADAAcACwAPABMAFwAAEzUhFSUR
MxEhETMRATUhFQE1MxUlNTMVwAJA/QDAAkDA/QACQP6AwP6AwAPAwMDAAkD9wAJA/
cACQMDAAYDAwMDAwAAABgAAA8ADwAnAAAMABwALAA8AEwAXAAATNSEVJREzESERMxEBNSEVATUzFTU1MxXA
AkD9AMACQMD9AAJA/oDAwAPAwMDAAkD9wAJA/
cACQMDAAYDAwMDAwAAAAAAHAAADwAPACcAAAwAHAAsADwATABcAGwAAEzUhFSURMxEhETMRATUhFQE1MxUz
NTMVJTUzFcACQP0AwAJAwP0AAkD9wMDAwP6AwAPAwMDAAkD9wAJA/
cACQMDAAYDAwMDAwMDAAAAAAAcAAAPAA8AJwAADAAcACwAPABMAGwAfAAATNSEVJREzESERMxEBNSEVATUz
FTM1IzUhFTMVNTUzFcACQP0AwAJAwP0AAkD9AMDAwAGAwMADwMDAwAJA/
cACQP3AAkDAwAGAwMDAwMDAwMDAAAYAAAPAA8AJAAADAAcACwAPABMAFwAAEzUhFSURMxEhETMRATUhFQE1
MxUzNTMVwAJA/QDAAkDA/
QACQP3AwMDAA8DAwMACQP3AAkD9wAJAwMABgMDAwMAAAAAAAwAAA8ADwAeAAAMABwALAAABNTMVATUhFQE1
MxUBgMD9wAPA/
cDAA8DAwAGAwMABgMDAAAkAAAPAA8AHgAADAAcACwAPABMAFwAbAB8AIwAAETUzFTM1IRUlNTMVNTUzFRcR
MxElETMRJTUzFSU1IRUzNTMVwMABgP3AwMDAwPxAwAGAwP3AAYDAwAPAwMDAwMDAwMDAwMABgP6AwAGA/
oDAwMDAwMDAwAAAAAQAAAPAA8AJwAADAAkADQARAAARETMRFTUhETMRATUzFSU1MxXAAkDA/cDA/
oDABIADAP0AwMADAPxABIDAwMDAwAAABAAAA8ADwAnAAAMACQANABEAABERMxEVNSERMxEBNTMVNTUzFcAC
QMD9wMDABIADAP0AwMADAPxABIDAwMDAwAAAAAAFAAADwAPACcAAAwAJAA0AEQAVAAARETMRFTUhETMRATU
zFTM1MxUlNTMVwAJAwP0AwMDA/
oDABIADAP0AwMADAPxABIDAwMDAwMDAAAAAAAQAAAPAA8AJAAADAAkADQARAAARETMRFTUhETMRATUzFTM1
MxXAAkDA/QDAwMAEgAMA/QDAwAMA/
EAEgMDAwMAAAAAABQAAAwADwAnAAAMABwAPABMAFwAAETUhFQERMxEBNSE1IREzEQE1MxU1NTMVAwD9AMAC
QP3AAkDA/cDAwAMAwMACQAJA/
cD+gMDAAkD8QASAwMDAwMAAAAMAAAMAA8AJAAADAAcAEwAAAREzEQE1IRUBETMRMxUjFSEVIREDAMD9wAGA
/
QDAwMACQP3ABUABgP6AAYDAwPxABgD9wMDAwP6AAAADAAADAAPAB4AAAwAHAA8AABE1IRUBETMRATUhNSER
MxEDAP0AwAJA/cACQMADAMDAAkACQP3A/oDAwAJA/
EAAAwAAA8ADwAqAAAsADwATAAARETMVITUzESMRIRERNSEVATUhFcACQMDA/
cACQP3AAkADwASAwMD7gAMA/
QAEgMDAAYDAwAAABAAAA8ADwAkAAAMADQARABUAABE1MxUVNSE1ITUhNTMRATUhFQE1IRXAAkD9wAJAwP0A
AkD9wAJABIDAwMDAwMDA/
QADAMDAAYDAwAAAAAACAAADwAPACoAACwATAAARETMVITUzESMRIRERETMVMzUzEcACQMDA/
cDAwMADwASAwMD7gAMA/
QAEgAJAwMD9wAAAAAQAAAPAA8AJwAADAA0AEQAZAAARNTMVFTUhNSE1ITUzEQE1IRUBETMVMzUzEcACQP3A
AkDA/QACQP3AwMDABIDAwMDAwMDA/QADAMDAAYABgMDA/
oAAAAADAAACQAPACQAABQARABUAAAERMxUzFQERMxUhNTMRIxEhERE1IRUCQMDA/
EDAAkDAwP3AAkACQAGAwMABgASAwMD7gAMA/
QAEgMDAAAAAAAMAAAJAA8AHgAADABMAFwAAETUzFQERITUhNSE1ITUzESMVMxUBNSEVwAGA/
oACQP3AAkDAwMD9AAJABIDAwP3AAYDAwMDA/
QDAwASAwMAABgAAA8ADwAqAAAMABwALAA8AFwAbAAATNSEVNTUzFSERMxEBNTMVJTUzNTMVMxUDNTMVwAJA
wPxAwAJAwP0AwMDAwMADwMDAwMDAA8D8QAMAwMDAwMDAwAGAwMAAAAAABwAAA8ADwAnAAAMABwALAA8AEwA
XABsAABM1IRU1NTMVIREzEQE1MxUlNSEVATUzFTU1MxXAAkDA/EDAAkDA/
QACQP6AwMADwMDAwMDAAkD9wAGAwMDAwMABgMDAwMDAAAAAAAYAAAPAA8AKgAADAAcACwAPABcAGwAAEzUh
FTU1MxUhETMRATUzFSURMxUzNTMRATUzFcACQMD8QMACQMD9AMDAwP6AwAPAwMDAwMADwPxAAwDAwMABgMD
A/
oABgMDAAAgAAAPAA8AJwAADAAcACwAPABMAFwAbAB8AABM1IRU1NTMVIREzEQE1MxUlNSEVATUzFTM1MxUl
NTMVwAJAwPxAwAJAwP0AAkD9wMDAwP6AwAPAwMDAwMACQP3AAYDAwMDAwAGAwMDAwMDAwAAAAAAGAAADwAP
ACoAAAwAHAAsADwATABcAABM1IRU1NTMVIREzEQE1MxUlNSEVATUzFcACQMD8QMACQMD9AAJA/
oDAA8DAwMDAwAPA/
EADAMDAwMDAAYDAwAAABgAAA8ADwAkAAAMABwALAA8AEwAXAAATNSEVNTUzFSERMxEBNTMVJTUhFQE1MxXA
AkDA/EDAAkDA/
QACQP6AwAPAwMDAwMACQP3AAYDAwMDAwAGAwMAAAAcAAAPAA8AKgAADAAcACwAPABcAGwAfAAATNSEVNTUz
FSERMxEBNTMVJTUzNTMVMxUBNTMVMzUzFcACQMD8QMACQMD9AMDAwP3AwMDAA8DAwMDAwAPA/
EADAMDAwMDAwMABgMDAwMAACAAAA8ADwAnAAAMABwALAA8AEwAXABsAHwAAEzUhFTU1MxUhETMRATUzFSU1
IRUBNTMVJTUzFTM1MxXAAkDA/EDAAkDA/QACQP6AwP6AwMDAA8DAwMDAwAJA/
cABgMDAwMDAAYDAwMDAwMDAAAAAAAQAAAPAA8AKgAADAA8AEwAXAAABETMRBREhNTMVMxUhESEVATUzFTM1
MxUDAMD8QAGAwMD9wAJA/cDAwMAEgAPA/
EDABUDAwMD8QMAGAMDAwMAAAAQAAAPABUAJwAADAAcAEQAVAAARETMRETUhFQE1IREjNTMRMxETETMRwAGA
/oACQMDAwMDABIACQP3AAkDAwP0AwAGAwAJA+sAEgAGA/
oAAAgAAA8AEgAkAAAMAEwAAAREzEQURIzUzESEVIRUzFSMRIRUDwMD8QMDAAwD9wMDAAkAEgAPA/
EDAAwDAAYDAwMD9wMAAAAAAAwAAA8AEgAkAAAMABwAZAAARETMRETUhFQE1IREjNTM1IzUzNTMVMxUjEcAB
gP6AAkDAwMDAwMDABIACQP3AAkDAwP0AwAGAwMDAwMDA/
EAAAAAAAgAAA8ADwAqAAAsADwAAEREhFSEVIRUhESEVATUhFQPA/
QABgP6AAwD9AAJAA8AFQMDAwP3AwAYAwMAABAAAA8ADwAkAAAMADQARABUAABM1IRUlETMVITUzESEVETUh
FQE1IRXAAwD8QMACQMD9AAJA/
cACQAPAwMDAAkDAwP6AwAJAwMABgMDAAAABAAADwAPACoAAEwAAEREzETMVMzUzETMVIRUhFSERIRXAwMDA
wP0AAYD+gAMAA8AFQAGAwMD+gMDAwP3AwAAABAAAA8ADwAnAAAMADQARABkAABM1IRUlETMVITUzESEVETU
hFQERMxUzNTMRwAMA/EDAAkDA/QACQP3AwMDAA8DAwMACQMDA/
oDAAkDAwAGAAYDAwP6AAAIAAAPAA8AKgAALAA8AABERIRUhFSEVIREhFQE1MxUDwP0AAYD+gAMA/
cDAA8AFQMDAwP3AwAYAwMAAAAQAAAPAA8AJAAADAA0AEQAVAAATNSEVJREzFSE1MxEhFRE1IRUBNTMVwAMA
/EDAAkDA/
QACQP6AwAPAwMDAAkDAwP6AwAJAwMABgMDAAAAAAQAAAkADwAkAABEAAAERIREhFSEVIRUhESEVIxUzFQJA
/
cADwP0AAYD+gAMAwMACQAGABUDAwMD9wMDAwAAAAAMAAAJAA8AHgAAJABMAFwAAAREhNSEVIxUzFQERMxUh
NTMRIRURNSEVAkD+gAMAwMD8QMACQMD9AAJAAkABgMDA
wMACQAJAwMD+gMACQMDAAAAAAAMAAAPAA8AKgAAPABMAFwAAEREhNTMVIRUhFSEVIREhFQE1MxUzNTMVAYD
AAYD9AAGA/oADAP0AwMDAA8AFQMDAwMDA/
cDABgDAwMDAAAAABgAAA8ADwAnAAAMADQARABUAGQAdAAATNSEVJREzFSE1MxEhFRE1IRUBNTMVJTUzFTM1
MxXAAwD8QMACQMD9AAJA/oDA/
oDAwMADwMDAwAJAwMD+gMACQMDAAYDAwMDAwMDAAAUAAAPAA8AKgAADAAkADQAXABsAABM1IRU1ESM1IREh
ETMREREzFTM1MxUzFQE1MxXAAkDAAYD8QMDAwMDA/cDAA8DAwMACQMD9AAPA/
EADwAGAwMDAwAGAwMAABgAAAwADwAnAAAMABwARABUAGQAdAAARNSEVAREzEQE1ITUhESE1IREBNTMVMzUz
FSU1MxUDAP0AwAJA/cACQP3AAwD9AMDAwP6AwAMAwMACQAGA/oD+gMDAAYDA/
EAEgMDAwMDAwMAAAAAABAAAA8ADwAqAAAMACQANABcAABM1IRU1ESM1IREhETMREREzFTM1MxEzFcACQMAB
gPxAwMDAwMADwMDAwAJAwP0AA8D8QAPAAkDAwP6AwAAEAAADAAPACcAAAwAHABEAGQAAETUhFQERMxEBNSE
1IREhNSERAREzFTM1MxEDAP0AwAJA/cACQP3AAwD9AMDAwAMAwMACQAGA/oD+gMDAAYDA/
EAEgAGAwMD+gAAAAAAFAAADwAPACoAAAwAJAA0AEQAVAAATNSEVNREjNSERIREzERE1IRUBNTMVwAJAwAGA
/
EDAAwD9wMADwMDAwAJAwP0AA8D8QAPAwMABgMDAAAQAAAMAA8AJAAADAAcAEQAVAAARNSEVAREzEQE1ITUh
ESE1IREBNTMVAwD9AMACQP3AAkD9wAMA/
cDAAwDAwAJAAYD+gP6AwMABgMD8QASAwMAAAAQAAAJAA8AJAAAHAA0AEQAVAAABESM1IRUjERMRIzUhESER
MxERNSEVAYDAAkDAwMABgPxAwAMAAkABgMDA/
oACQAJAwP0AA8D8QAPAwMAABAAAAwADwAnAAAMABwARABUAABE1IRUBETMRATUhNSERITUhEQERMxEDAP0A
wAJA/cACQP3AAwD9wMADAMDAAkABgP6A/
oDAwAGAwPxABIABgP6AAAAAAAQAAAPAA8AKgAALAA8AEwAXAAARETMRIREzESMRIRERNTMVMzUzFSU1MxXA
AkDAwP3AwMDA/oDAA8AFQP6AAYD6wAMA/
QAFQMDAwMDAwMAABgAAA8ADwAqAAAMABwAPABMAFwAbAAABETMRATUhFQERMxEzFSMRETUzFTM1MxUlNTMV
AwDA/cABgP0AwMDAwMDA/
oDAA8ADAP0AAwDAwP0ABUD9wMD9wAVAwMDAwMDAwAAAAAIAAAPAA8AJAAADAAsAAAE1IRUDESERIxEhEQMA
/cDAA8DA/cAHgMDA/
EAFQPrAAwD9AAADAAADwASACQAAAwAHABcAAAERMxEBNSEVAREjNTM1MxUzFSMVMxUjEQPAwP3AAYD9AMDA
wMDAwMADwAMA/QADAMDA/QADwMDAwMDAwP3AAAP/
QAPAAwAKgAADABUAGQAAAzUzFRE1MxEjNTM1IzUhFTMRIxEzFRE1MxXAwMDAwMABgMDAwMAJAMDA+sDAA8D
AwMDA/
oD8QMAGAMDAAAAABP9AA8ADAAnAAAMABwAPABMAABMRMxEBNTMVMzUjNSEVMxU1NTMVwMD9wMDAwAGAwMAD
wAPA/EAEgMDAwMDAwMDAwAACAAADwAJACoAACwAPAAARNTMRIzUhFSMRMxUBNSEVwMACQMDA/
cACQAPAwAPAwMD8QMAGAMDAAAL/QAPAAYAJAAADAAcAABERMxEBNSEVwP6AAkADwAPA/
EAEgMDAAAABAAADwAJACoAADwAAETUzESMRMxUzNTMRIxEzFcDAwMDAwMADwMADwAJAwMD9wPxAwAAAAv9A
A8ABgAnAAAMACwAAEREzEQERMxUzNTMRwP6AwMDAA8ADwPxABIABgMDA/
oAAAQAAAkACQAkAABEAABMRIzUzESM1IRUjETMVIxUzFcDAwMACQMDAwMACQAGAwAPAwMD8QMDAwAACAAAC
QAGACQAABQAJAAARETMRMxUBNTMVwMD+gMACQAVA+4DABgDAwAAAAAIAAAPAAkAKgAALAA8AABE1MxEjNSE
VIxEzFQE1MxXAwAJAwMD+gMADwMADwMDA/
EDABgDAwAAAAQAAA8AAwAeAAAMAABERMxHAA8ADwPxAAAAAAAQAAAPABsAJAAADAAcAEwAXAAABNSEVJTUz
FQU1MxEjNSEVIxEzFSURMxEDwAJA/QDA/EDAwAJAwMADwMADwMDAwMDAwMADwMDA/
EDAwASA+4AAAAYAAAJABUAJAAADAAcACwAPABMAFwAAATUhFSU1MxUlETMRBREzEQE1MxUhNTMVAkACQP0A
wP3AwAPAwPrAwAPAwAJAwMDAwMDAA8D8QMAEgPuABUDAwMDAAAAABgAAA8ADwAqAAAMABwALAA8AEwAXAAA
TNSEVJTUzFSERMxEBNTMVMzUzFSU1MxXAAkD9AMACQMD9AMDAwP6AwAPAwMDAwMAEgPuABIDAwMDAwMDAAA
AAAAYAAAMABIAJwAADAAcACwAPABMAFwAAEzUhFSU1MxUhETMRATUzFTM1MxUlNTMVwAJA/QDAAkDA/
oDAwMD+gMADAMDAwMDAA8D8QASAwMDAwMDAwAAAAAAGAAACQAPACQAAAwAHAAsADwAXABsAAAERMxETETMR
ATUzFQM1MxUBETMRIRUhEQE1MxUBgMDAwP6AwMDA/QDAAYD+gAJAwAJAAYD+gAGAAkD9wAJAwMABgMDA/
EAFQP6AwP0ABIDAwAAAAAAGAAACQAMACQAAAwAHAAsADwATABsAAAERMxERNTMVJTUzFQM1MxU1NTMVAREz
ETMVIxEBgMDA/oDAwMDA/QDAwMACQAGA/
oABgMDAwMDAAYDAwMDAwP0ABUD9AMD+gAAFAAADwAMAB4AAAwAHAAsAEwAXAAABNTMVJTUzFQM1MxUBETMR
MxUjEQE1MxUCQMD+gMDAwP3AwMDAAYDAA8DAwMDAwAGAwMD9wAPA/oDA/
oADAMDAAAAAAwAAA8ADwAqAAAUACQANAAARETMRIRUBNTMVNTUzFcADAP3AwMADwAVA+4DABUDAwMDAwAAA
AAADAAADwAGACoAAAwAHAAsAABM1MxUlETMRETUzFcDA/
oDAwAPAwMDABUD6wAVAwMAAAAAAAQAAAkADwAkAAAkAAAERIREzESEVIREBgP6AwAMA/
oACQAGABUD7gMD+gAADAAACQAGACQAAAwAHAAsAABERMxERNTMVJREzEcDA/
oDAAkABgP6AAYDAwMAEgPuAAAAAAgAAA8ADwAnAAAUACQAAEREzESEVAREzEcADAP3AwAPABUD7gMAEgAGA
/
oAAAAAAAwAAA8ACQAnAAAMABwALAAATNTMVJREzERMRMxHAwP6AwMDAA8DAwMAEgPuAA8ABgP6AAAIAAAPA
A8AJAAADAAkAAAE1MxUBETMRIRUBgMD9wMADAAYAwMD9wAVA+4DAAAAAAAMAAAPAAkAJAAADAAcACwAAEzU
zFRE1MxUBETMRwMDA/
cDAA8DAwAJAwMD+gASA+4AAAAACAAADwASACQAAAwARAAABNTMVAREjNTMRMxEzFSMRIRUCQMD9wMDAwMDA
AwAGwMDA/
QABgMADAP3AwP6AwAAAAgAAA8ACQAkAAAMADwAAATUzFSU1IzUzETMRMxUjEQGAwP6AwMDAwMADwMDAwMDA
AwD+gMD9wAAFAAADwAPACoAAAwALABMAFwAbAAABNTMVAREzFTMVIxEhESM1MxEzEQE1MxU1NTMVAYDA/
cDAwMACQMDAwP3AwMAGwMDA/QAFQMDA/
EACQMACQPrABUDAwMDAwAAAAAAEAAADwAPACcAAAwAJAA0AEQAAAREzESERIRUhERM1MxU1NTMVAwDA/
EADAP3AwMDAA8ADAP0AA8DA/
QAEgMDAwMDAAAQAAAJAA8AJAAADAAcADwAXAAABETMRAzUzFQERMxUzFSMRIREjNTMRMxEBgMDAwP3AwMDA
AkDAwMACQAGA/oAEgMDA/QAFQMDA/
EACQMACQPrAAAMAAAJAA8AHgAADAAcADQAAAREzERMRMxEhESEVIREBgMDAwPxAAwD9wAJAAYD+gAGAAwD9
AAPAwP0AAAYAAAPAA8AKgAADAAsAEwAXABsAHwAAATUzFQERMxUzFSMRIREjNTMRMxEBNTMVJTUzFTM1MxU
BgMD9wMDAwAJAwMDA/cDA/oDAwMAGwMDA/QAFQMDA/
EACQMACQPrABUDAwMDAwMDAAAAAAAUAAAPAA8AJwAADAAkADQARABUAAAERMxEhESEVIRETNTMVJTUzFTM1
MxUDAMD8QAMA/cDAwP6AwMDAA8ADAP0AA8DA/
QAEgMDAwMDAwMAAAwAAA8AFQAkAAAMACQANAAABETMRIREhFSERAREzEQSAwPxAAwD9wP3AwAPAAwD9AAPA
wP0AA8ABgP6AAAAAAAQAAAMAA8AJAAADAAcADwAXAAABNSEVATUzFQERMxUzFSMRIREjNTMRMxEBgAGA/
oDA/cDAwMACQMDAwAMAwMADwMDA/QAFQMDA/
EACQMACQPrAAAMAAAMAA8AHgAADAAcADQAAATUhFTURMxEhESEVIREBgAGAwPxAAwD9wAMAwMDAAwD9AAPA
wP0AAAAAAAUAAAPAA8AKgAADAAcACwAPABMAABM1IRUlETMRIREzEQE1IRUBNSEVwAJA/QDAAkDA/
QACQP3AAkADwMDAwAPA/
EADwPxAA8DAwAGAwMAABQAAA8ADwAkAAAMABwALAA8AEwAAEzUhFSURMxEhETMRATUhFQE1IRXAAkD9AMAC
QMD9AAJA/cACQAPAwMDAAkD9wAJA/
cACQMDAAYDAwAAEAAADwAPACoAAAwAHAAsAEwAAEzUhFSURMxEhETMRAREzFTM1MxHAAkD9AMACQMD9AMDA
wAPAwMDAA8D8QAPA/
EADwAJAwMD9wAAABQAAA8ADwAnAAAMABwALAA8AFwAAEzUhFSURMxEhETMRATUhFQERMxUzNTMRwAJA/
QDAAkDA/
QACQP3AwMDAA8DAwMACQP3AAkD9wAJAwMABgAGAwMD+gAAAAAAGAAADwAPACoAAAwAHAAsAEwAXABsAABM1
IRUlETMRIREzEQERMxUzNTMRATUzFTM1MxXAAkD9AMACQMD9AMDAwP6AwMDAA8DAwMADwPxAA8D8QAPAAYD
AwP6AAYDAwMDAAAAACAAAA8ADwAnAAAMABwALAA8AEwAXABsAHwAAEzUhFSURMxEhETMRATUhFQE1MxUzNT
MVJTUzFTM1MxXAAkD9AMACQMD9AAJA/cDAwMD+gMDAwAPAwMDAAkD9wAJA/
cACQMDAAYDAwMDAwMDAwMAAAAIAAAPABsAJAAADABMAABERMxEVNSERITUhFSEVIRUhESEVwAJA/
cAGAP0AAYD+gAMABIADwPxAwMADwMDAwMD9wMAABgAAA8AGwAeAAAMABwALABUAGQAdAAATNSEVMzUhFSUR
MxEhETMVITUzESEVATUhFTM1IRXAAkDAAwD5QMACQMACQMD9AP0AAkDAAkADwMDAwMDAAkD9wAJAwMD+gMA
CQMDAwMAAAAAEAAADwAPACoAAAwAHABUAGQAAAREzEQM1MxUBESE1MxUzFSEVIRUhEQE1MxUDAMDAwPxAAY
DAwP3AAkD9wAGAwAPAAwD9AAPAwMD8QAVAwMDAwMD9AAYAwMAAAAUAAAPAA8AJwAADAAsADwATABcAAAE1M
xUBETMVMxUjERM1IRUBNTMVNTUzFQMAwPxAwMDAwAGA/
oDAwAYAwMD9wAPAwMD9wAMAwMABgMDAwMDAAAQAAAJAA8AJAAADAAcACwAVAAABETMRExEzEQM1MxUBESEV
IRUhFSERAYDAwMDAwPxAAwD9wAJA/cACQAGA/oABgAMA/QADwMDA/
EAFQMDAwP0AAAQAAAJAA8AHgAADAAcADwATAAABETMREzUzFQERMxUzFSMREzUhFQGAwMDA/
EDAwMDAAYACQAGA/oADwMDA/cADwMDA/
cADAMDAAAAFAAADwAPACoAAAwAHABUAGQAdAAABETMRAzUzFQERITUzFTMVIRUhFSERETUzFTM1MxUDAMDA
wPxAAYDAwP3AAkD9wMDAwAPAAwD9AAPAwMD8QAVAwMDAwMD9AAYAwMDAwAAABgAAA8ADwAnAAAMACwAPABM
AFwAbAAABNTMVAREzFTMVIxETNSEVATUzFSU1MxUzNTMVAwDA/
EDAwMDAAYD+gMD+gMDAwAYAwMD9wAPAwMD9wAMAwMABgMDAwMDAwMAABwAAA8ADwAqAAAMABwALAA8AEwAb
AB8AABM1IRUlNTMVIREzEQE1IRUlNTMVNTUzNTMVIRUBNTMVwAJA/QDAAkDA/
QACQP0AwMDAAYD+gMADwMDAwMDAAkD9wAJAwMDAwMDAwMDAwAGAwMAABwAAA8ADwAnAAAMABwALAA8AEwAX
ABsAABE1IRU1NTMVJTUhFSU1MxU1NSEVATUzFTU1MxUDAMD9AAJA/
QDAAwD9wMDAA8DAwMDAwMDAwMDAwMDAwAGAwMDAwMAAAAAABwAAA8ADwAqAAAMABwALAA8AEwAdACEAABM1
IRUlNTMVIREzEQE1IRUlNTMVNREzFTM1MxUzFQE1MxXAAkD9AMACQMD9AAJA/
QDAwMDAwP3AwAPAwMDAwMACQP3AAkDAwMDAwMABgMDAwMABgMDAAAgAAAPAA8AJwAADAAcACwAPABMAFwAb
AB8AABE1IRU1NTMVJTUhFSU1MxU1NSEVATUzFTM1MxUlNTMVAwDA/QACQP0AwAMA/
QDAwMD+gMADwMDAwMDAwMDAwMDAwMDAAYDAwMDAwMDAAAAAAAYAAAJAA8AJAAAJAA0AEQAVABkAHQAAEzUz
NSM1IRUjEQE1MxUhETMRATUhFSU1MxU1NSEVwMDAAkDA/cDAAkDA/QACQP0AwAMAAkDAwMDA/
oACQMDAAkD9wAJAwMDAwMDAwMAAAAAABQAAAkADwAeAAAkADQARABUAGQAAEzUzNSE1IRUjERM1MxUlNSEV
JTUzFTU1IRXAwP6AAwDAwMD9AAJA/
QDAAwACQMDAwMD+gAJAwMDAwMDAwMDAwMAAAAgAAAPAA8AKgAADAAcACwAPABMAGwAfACMAABM1IRUlNTMV
IREzEQE1IRUlNTMVNTUzNTMVIRUBNTMVMzUzFcACQP0AwAJAwP0AAkD9AMDAwAGA/
QDAwMADwMDAwMDAAkD9wAJAwMDAwMDAwMDAwAGAwMDAwAAAAAgAAAPAA8AJwAADAAcACwAPABMAFwAbAB8A
ABE1IRU1NTMVJTUhFSU1MxU1NSEVATUzFSU1MxUzNTMVAwDA/QACQP0AwAMA/cDA/
oDAwMADwMDAwMDAwMDAwMDAwMDAAYDAwMDAwMDAAAAAAAIAAAJAA8AJAAAFAA0AAAE1MzUzEQERITUhFSER
AYDAwP6A/
oADwP6AAkDAwP6AAYAEgMDA+4AAAgAAAkACQAkAAAUAEQAAEzUzETMRAREjNTM1MxUzFSMRwMDA/
oDAwMDAwAJAwAGA/
cACQAMAwMDAwP0AAAAAAAMAAAPAA8AKgAALAA8AEwAAAREhNSE1MxUhFSERATUzFTM1MxUBgP6AAYDAAYD+
gP6AwMDAA8AEgMDAwMD7gAYAwMDAwAAAAAMAAAPAA8AJwAADAA8AEwAAATUzFSURIzUzNTMVMxUjEQERMxE
BgMD+gMDAwMDAAYDAA8DAwMADAMDAwMD9AAPAAYD+gAAAAAEAAAPAA8AJAAAPAAABESM1MxEhNSEVIREzFS
MRAYDAwP6AA8D+gMDAA8ACQMABgMDA/oDA/
cAAAgAAA8ACQAkAAAMAFwAAATUzFSURIzUzNSM1MzUzFTMVIxUzFSMRAYDA/
oDAwMDAwMDAwMADwMDAwAGAwMDAwMDAwMD+gAAABQAAA8ADwAqAAAMABwALABMAFwAAEzUhFTURMxEhETMR
EzUjNSEVMxU1NTMVwAJAwPxAwMDAAYDAwAPAwMDABID7gAVA+sAEgMDAwMDAwMAAAAAABQAAA8ADwAnAAAM
ACQANABUAGQAAEREzERU1IREzEQE1MxUzNSM1IRUzFTU1MxXAAkDA/
EDAwMABgMDABIADAP0AwMADAPxABIDAwMDAwMDAwMAABAAAA8ADwAqAAAMABwALAA8AABM1IRUlETMRIREz
EQE1IRXAAkD9AMACQMD9AAJAA8DAwMAEgPuABID7gAVAwMAAAAADAAADwAPACQAAAwAJAA0AABERMxEVNSE
RMxEBNSEVwAJAwP0AAkAEgAMA/QDAwAMA/
EAEgMDAAAQAAAPAA8AKgAADAAcACwATAAATNSEVJREzESERMxEBETMVMzUzEcACQP0AwAJAwP0AwMDAA8DA
wMAEgPuABID7gASAAYDAwP6AAAADAAADwAPACcAAAwAJABEAABERMxEVNSERMxEBETMVMzUzEcACQMD9AMD
AwASAAwD9AMDAAwD8QASAAYDAwP6AAAAAAAMAAAPAA8AKgAADAAcAEwAAEzUhFQM1IxUBETMRIREzESMRIR
HAAkDAwP6AwAJAwMD9wAPAwMAFQMDA+4AEgAGA/oD7gAPA/
EAAAAAEAAADwAPACoAAAwAJAA0AEQAAEREzERU1IREzEQE1IxUHESERwAJAwP6AwMACQASAAwD9AMDAAwD8
QAVAwMDAAkD9wAAAAAAHAAADwAPACoAAAwAHAAsADwATABcAGwAAEzUhFSURMxEhETMRATUzFTM1MxUlNTM
VMzUzFcACQP0AwAJAwP0AwMDA/
oDAwMADwMDAwASA+4AEgPuABIDAwMDAwMDAwMAAAAAABgAAA8ADwAnAAAMACQANABEAFQAZAAARETMRFTUh
ETMRATUzFTM1MxUlNTMVMzUzFcACQMD9AMDAwP6AwMDABIADAP0AwMADAPxABIDAwMDAwMDAwMAAAAMAAAJ
AA8AJAAAJAA0AEQAAAREjNSEVIxUzFQERMxEhETMRAYDAAkDAwP0AwAJAwAJAAYDAwMDAAkAEgPuABID7gA
AAAgAAAkADwAeAAAMADwAAEREzEQERITUhETMRIxUzFcABgP6AAkDAwMAEgAMA/QD9wAGAwAMA/
EDAwAAABgAAA8ADwAqAAAMACwATABcAGwAfAAABNTMVAREzETMVIxUhNSM1MxEzEQE1MxUzNTMVJTUzFQGA
wP3AwMDAAkDAwMD9AMDAwP6AwAVAwMD+gAVA/
EDAwMDAA8D6wAVAwMDAwMDAwAAFAAADwAPACcAAAwANABEAFQAZAAARETMRFTUzETMRMxEzEQE1MxUzNTMV
JTUzFcDAwMDA/QDAwMD+gMAEgAMA/QDAwAGA/
oADAPxABIDAwMDAwMDAAAAACAAAA8ADwAqAAAMABwALAA8AEwAXABsAHwAAAREzEQE1MxUzNTMVJTUzFSE1
MxUlNTMVMzUzFSU1MxUBgMD+gMDAwP0AwAJAwP0AwMDA/
oDAA8ADwPxAA8DAwMDAwMDAwMDAwMDAwMDAwAAABgAAAwADwAnAAAMABwAPABMAFwAbAAARNSEVAREzEQE1
ITUhETMRATUzFTM1MxUlNTMVAwD9AMACQP3AAkDA/QDAwMD+gMADAMDAAkACQP3A/oDAwAJA/
EAEgMDAwMDAwMAAAAcAAAPAA8AKgAADAAcACwAPABMAFwAbAAABETMRATUzFTM1MxUlNTMVITUzFQE1MxUz
NTMVAYDA/oDAwMD9AMACQMD9AMDAwAPAA8D8QAPAwMDAwMDAwMDAAYDAwMDAAAYAAAP
AA8AKgAAFAAkADQARABsAHwAAEREzFSEVATUzFTU1MxU1NTMVNTUhNSE1MxUhEQE1MxXAAwD9AMDAwP0AAY
DAAYD+gMADwAGAwMABgMDAwMDAwMDAwMDAwMD+gAJAwMAAAAAABQAAA8ADwAnAAAcACwATABcAGwAAETUzN
TMVIRUBNTMVNTUhNSEVIxUBNTMVNTUzFcDAAkD9wMD9wAPAwP6AwMADwMDAwMABgMDAwMDAwMACQMDAwMDA
AAYAAAPAA8AKgAAFAAkADQARABcAGwAAEREzFSEVATUzFTU1MxU1NTMVNTUhNSERATUzFcADAP0AwMDA/
QADwP3AwAPAAYDAwAGAwMDAwMDAwMDAwMD+gAJAwMAABAAAA8ADwAkAAAcACwATABcAABE1MzUzFSEVATUz
FTU1ITUhFSMVATUzFcDAAkD9wMD9wAPAwP6AwAPAwMDAwAGAwMDAwMDAwAJAwMAAAAAHAAADwAPACoAABQA
JAA0AEQAbAB8AIwAAEREzFSEVATUzFTU1MxU1NTMVNTUhNSE1MxUhEQE1MxUzNTMVwAMA/
QDAwMD9AAGAwAGA/
QDAwMADwAGAwMABgMDAwMDAwMDAwMDAwMD+gAJAwMDAwAAABgAAA8ADwAnAAAcACwATABcAGwAfAAARNTM1
MxUhFQE1MxU1NSE1IRUjFQE1MxUlNTMVMzUzFcDAAkD9wMD9wAPAwP6AwP6AwMDAA8DAwMDAAYDAwMDAwMD
AAkDAwMDAwMDAAAIAAAPAAwAJAAAHAAsAABMRIzUzNTMRETUhFcDAwMABgAPAAwDAwPuABIDAwAAAAAEAAA
PAA8AJAAANAAARESEVIREhFSERIREzEQPA/QACQP3AAkDAA8AFQMD+gMD+gAGA/
cAAAAAAAgAAA8ADAAkAAAMADwAAAREzEQURIRUhESEVIREhFQJAwP0AAwD9wAGA/
oABgASAAYD+gMAFQMD+gMD+gMAAAAMAAAPAA8AJAAADAA0AEQAAEzUhFSURITUzESMRIRERNSEVwAJA/
QADAMDA/cACQAPAwMDAAwDA/
EACQP3AA8DAwAAAAwAAAwADwAkAAAMADwATAAARNSEVNREjNTM1MxUhFSERETUhFQGAwMDAAYD+gAGAAwDA
wMADAMDAwMD9AASAwMAAAAADAAADwAPACQAABQARABcAABERMxUhFQE1IzUhNTMVMxUhFQE1ITUhEcADAP0
AwAJAwMD9wAGA/
QADwAPAAYDAwAGAwMDAwMDAAkDAwP6AAAEAAAPAA8AHgAATAAARNTM1IzUhNSE1IRUjFTMVIRUhFcDAAkD9
wAPAwMD9wAJAA8DAwMDAwMDAwMDAAAQAAAPAA8AJAAADAAcACwAVAAATNSEVJTUzFSERMxEBNTM1ITUhFSM
RwAJA/QDAAkDA/cDA/
cADwMADwMDAwMDAAkD9wAJAwMDAwP6AAAAABAAAA8AEgAkAAAMAEQAVABkAABM1IRU1NSE1ITUjNSERMxUj
FSERMxERNSEVwAJA/oABgMABgMDA/
EDAAwADwMDAwMDAwMD+gMDAA8D8QAPAwMAAAwAAAwAEgAeAAAMABwAXAAATNSEVAREzEQE1ITUhNSE1IzUh
FTMVIxHAAkD9AMACQP3AAkD+gMADAMDAAwDAwAJAAYD+gP6AwMDAwMDAwP3AAAAABgAAA8ADwAqAAAMACQA
NABUAGQAdAAATNSEVNREjNSERIREzERE1MzUzFSEVATUzFTM1MxXAAkDAAYD8QMDAwAGA/
QDAwMADwMDAwAJAwP0AA8D8QAPAwMDAwAGAwMDAwAAAAAYAAAMAA8AJwAADAAcAEQAVABkAHQAAETUhFQER
MxEBNSE1IREhNSERATUzFSU1MxUzNTMVAwD9AMACQP3AAkD9wAMA/cDA/oDAwMADAMDAAkABgP6A/
oDAwAGAwPxABIDAwMDAwMDAAAAAAAgAAAPAA8AKgAADAAcACwATABcAGwAfACMAAAERMxEBNTMVAzUzFQER
MxEhFSERATUzFSU1MxUlNTMVMzUzFQMAwP6AwMDA/
QDAAYD+gAJAwP3AwP6AwMDAA8ACQP3AAkDAwAGAwMD8QAVA/oDA/
QAEgMDAwMDAwMDAwMAAAAAACAAAA8ADAAqAAAMABwALAA8AFwAbAB8AIwAAATUzFSU1MxUDNTMVNTUzFQER
MxEzFSMREzUzFSU1MxUzNTMVAkDA/oDAwMDA/QDAwMDAwP6AwMDAA8DAwMDAwAGAwMDAwMD9AAVA/QDA/
oAFQMDAwMDAwMAAAAAABAAAAkADwAkAAAkADQARABUAAAERIzUhFSMVMxUBETMRIREzEQE1IRUBgMACQMDA
/QDAAkDA/
QACQAJAAYDAwMDAAkADwPxAA8D8QAPAwMAAAAAABAAAAkADwAeAAAkADQARABUAAAERIzUhFSMVMxUBETMR
IREzEQE1IRUBgMACQMDA/QDAAkDA/
QACQAJAAYDAwMDAAkACQP3AAkD9wAJAwMAAAAAABgAAA8ADwAqAAAMABwALABkAHQAhAAATNSEVJTUzFSER
MxEBNTM1ITUhNTMVIRUjEQE1MxUzNTMVwAJA/QDAAkDA/cDA/
cABgMABgMD9wMDAwAPAwMDAwMACQP3AAkDAwMDAwMD+gAMAwMDAwAAAAAYAAAMAA8AJwAADAAcAEQAVABkA
HQAAETUhFTURMxEBNTM1ITUhFSMRATUzFSU1MxUzNTMVAwDA/cDA/
cADwMD+gMD+gMDAwAMAwMDAAYD+gAGAwMDAwP6AAwDAwMDAwMDAAAADAAADwAPACoAAAwATABcAAAE1IxUD
ESEVMxEhFSE1MxEjESERATUzFQGAwMACQMD9wAJAwMD9wAJAwAkAwMD6wAbAwP6AwMD7gAMA/
QAGAMDAAAAFAAADwAPACoAAAwANABEAGQAdAAARNTMVFTUhNSE1ITUzEQE1IxUHETM1MxUzEQM1MxXAAkD9
wAJAwP6AwMDAwMDAwASAwMDAwMDAwP0AA8DAwMACQMDA/
cADAMDAAAACAAADwAbACoAAGQAdAAARETMVITUhNSE1MxUhFSEVIRUhESEVIREhEQE1MxXAAkD9wAJAwAMA
/QABgP6AAwD8QP3AAwDAA8AEgMDAwMDAwMDA/
cDAAwD9AAYAwMAAAAAIAAADwAbACcAAAwAHAAsAGQAdACEAJQApAAATNSEVMzUhFSU1MxUhNSE1ITUzFSE1
MxEhFQE1IRUzNSEVATUzFTU1MxXAAkDAAwD5QMACQP3AAkDAAkDA/QD9AAJAwAJA/
QDAwAPAwMDAwMDAwMDAwMDA/
oDAAkDAwMDAAYDAwMDAwAAKAAADwAPACoAAAwAHAAsADwATABcAGwAfACUAKQAAETUzFTM1IRUlNTMVNREz
ERcRMxElETMRATUzFTU1MxUhNTM1MxERNTMVwMABgP3AwMDAwPxAwAGAwMD9AMDAwAPAwMDAwMDAwMACQP3
AwAMA/
QDAAwD9AAJAwMDAwMDAwP6AAYDAwAAACwAAA8ADwAnAAAMABwALAA8AEwAXABsAHwAjACcAKwAAETUzFTM1
IRUlNTMVNTUzFRcRMxElETMRJTUzFSU1IRUzNTMVATUzFTU1MxXAwAGA/cDAwMDA/EDAAYDA/cABgMDA/
cDAwAPAwMDAwMDAwMDAwMABgP6AwAGA/
oDAwMDAwMDAwAGAwMDAwMAAAAAABgAAAkADwAkAAAcACwAPABMAFwAbAAABESM1IRUjEQE1MxUhETMRATUh
FSU1MxU1NSEVAYDAAkDA/cDAAkDA/QACQP0AwAMAAkABgMDA/
oACQMDAAkD9wAJAwMDAwMDAwMAAAAUAAAJAA8AHgAAHAAsADwATABcAAAERITUhFSMREzUzFSU1IRUlNTMV
NTUhFQGA/
oADAMDAwP0AAkD9AMADAAJAAYDAwP6AAkDAwMDAwMDAwMDAwAAAAAACAAACQAPACQAAAwALAAABETMRAREh
NSEVIRECQMD+gP6AA8D+gAJAAYD+gAGABIDAwPuAAAAAAAMAAAJAAkAJAAADAAcAEwAAExEzERE1MxUlESM
1MzUzFTMVIxHAwMD+gMDAwMDAAkABgP6AAYDAwMADAMDAwMD9AAAAAwAAAwADwAeAAAMABwALAAATNSEVJT
UzFSERMxHAAkD9AMACQMADAMDAwMDAA8D8QAAAAAMAAAPAA8AHgAADAA0AEQAAEzUhFSURITUzESM1IRUDN
SEVwAJA/QADAMDA/
cDAAwADwMDAwAGAwP3AwMACQMDAAAAAAwAAAwADwAeAAAMABwARAAARNSEVNREzEQE1MzUhNSEVIxEDAMD9
wMD9wAPAwAMAwMDAAYD+gAGAwMDAwP6AAAMAAAhAAkAJwAADAAcACwAAETUzFTM1MxUlNTMVwMDA/
oDACEDAwMDAwMDAAAAAAAMAAAhAAkAJwAADAAcACwAAEzUzFSU1MxUzNTMVwMD+gMDAwAhAwMDAwMDAwAAA
AAEAAAhAAkAJAAADAAARNSEVAkAIQMDAAAIAAAhAAYAJwAADAAcAABE1MxU1NTMVwMAIQMDAwMDAAAAAAAI
AAAhAAYAJwAADAAcAABM1MxUlNTMVwMD+gMAIQMDAwMDAAAEAAAhAAkAJwAAHAAARETMVMzUzEcDAwAhAAY
DAwP6AAAAAAAEAwAhAAYAJAAADAAATNTMVwMAIQMDAAAIAAAhAAkAKgAADAAcAAAE1IxUHESERAYDAwAJAC
QDAwMACQP3AAAABAAACQAGAA8AABQAAEREzFTMVwMACQAGAwMAAAwAACEADwAnAAAMACwAPAAARNTMVMzUj
NSEVMxU1NTMVwMDAAYDAwAhAwMDAwMDAwMDAAAQAAAhAAwAJwAADAAcACwAPAAARNTMVMzUzFSU1MxUzNTM
VwMDA/
oDAwMAIQMDAwMDAwMDAwAAAAgAABsABgAkAAAMABwAAETUzFTURMxHAwAbAwMDAAYD+gAAAAgAAAwABgAVA
AAMABwAAETUzFTURMxHAwAMAwMDAAYD+gAAAAgAAAwAAwAeAAAMABwAAEREzEQMRMxHAwMADAAJA/
cADAAGA/
oAAAAEAAAhAAMAJwAADAAARETMRwAhAAYD+gAAAAAADAAAIQAPACcAAAwAHAAsAABE1MxUhNTMVIREzEcAC
QMD9wMAIQMDAwMABgP6AAAADAAADwAVACQAACwAPABMAAAERMxUhNTMRIxEhEQERMxElNSEVAYDAAkDAwP3
A/
cDAAYACQAPABIDAwPuAAwD9AAPAAYD+gMDAwAAAAQAABUAAwAYAAAMAABE1MxXABUDAwAAAAgAAA8AFQAkA
AAMADwAAEREzERMRIRUhFSEVIREhFcDAA8D9AAGA/
oADAAeAAYD+gPxABUDAwMD9wMAAAgAAA8AFQAkAAAMADwAAEREzERMRMxEhETMRIxEhEcDAwAJAwMD9wAeA
AYD+gPxABUD+gAGA+sADAP0AAAAAAAIAAAPAA8AJAAADAA8AABERMxETNTMRIzUhFSMRMxXAwMDAAkDAwAe
AAYD+gPxAwAPAwMD8QMAABQAAA8AFQAkAAAMABwALAA8AEwAAATUhFSURMxEhETMRAREzESU1IRUCQAJA/
QDAAkDA+sDAAYACQAPAwMDAA8D8QAPA/EADAAGA/
oDAwMAAAAAABgAAA8AFQAkAAAMABwALAA8AEwAXAAABETMRATUzFTM1MxUhETMRNzUzFSE1MxUDAMD+gMDA
wPuAwMDAAkDAA8ADwPxAA8DAwMDAAYD+gMDAwMDAAAAAAAYAAAPABUAJAAAFAAsADwATABcAGwAAATUzNTM
RMxEzFTMVAREzESERMxEBETMRJTUhFQGAwMDAwMD8QMACQMD6wMABgAJAA8DAwP6AAYDAwAGAAwD9AAMA/
QACQAGA/
oDAwMAAAAAABP9AA8ADAAnAAAMABwALAA8AABMRMxEBNTMVITUzFSERMxHAwP3AwAJAwP3AwAPAA8D8QASA
wMDAwAGA/oAAAAIAAAPAA8AJAAALAA8AABERMxUhNTMRIxEhERE1IRXAAkDAwP3AAkADwASAwMD7gAMA/
QAEgMDAAAAAAAMAAAPAA8AJAAADAAcAEwAAAREzEQM1MxUBESEVIRUhFSERIRUDAMDAwPxAAwD9wAJA/
cACQASAAkD9wAMAwMD8QAVAwMDA/
cDAAAABAAADwAPACQAABQAAEREhFSERA8D9AAPABUDA+4AAAAQAAAPAA8AJAAAHAAsADwATAAARETMRIREz
EQERMxEzETMRATUzFcACQMD9AMDAwP6AwAPAAwD9wAJA/QADAAGA/
oABgP6AAYDAwAABAAADwAPACQAACwAAEREhFSEVIRUhESEVA8D9AAGA/
oADAAPABUDAwMD9wMAAAAAFAAADwAPACQAABQAJAA0AEQAXAAARETMVIRUBNTMVNTUzFTU1MxU1NSE1IRHA
AwD9AMDAwP0AA8ADwAGAwMABgMDAwMDAwMDAwMDA/
oAAAAEAAAPAA8AJAAALAAARETMRIREzESMRIRHAAkDAwP3AA8AFQP6AAYD6wAMA/
QAAAAUAAAPAA8AJAAADAAcACwAPABMAABM1IRUBNTMVAREzESERMxEBNSEVwAJA/oDA/cDAAkDA/
QACQAPAwMACQMDA/
oADwPxAA8D8QAPAwMAAAQAAA8ACQAkAAAsAABE1MxEjNSEVIxEzFcDAAkDAwAPAwAPAwMD8QMAAAAAFAAAD
wAPACQAAAwAHAAsAEwAXAAABETMRATUzFQM1MxUBETMRIRUhEQE1MxUDAMD+gMDAwP0AwAGA/
oACQMADwAJA/
cACQMDAAYDAwPxABUD+gMD9AASAwMAAAAUAAAPAA8AJAAADAAcACwAPABMAABERMxEhETMRAREzETMRMxEB
NTMVwAJAwP0AwMDA/oDAA8ADAP0AAwD9AAMAAYD+gAGA/
oABgMDAAAAAAwAAA8ADwAkAAAMACwATAAABNTMVAREzFTMVIxEhESM1MzUzEQGAwP3AwMDAAkDAwMAGwMDA
/QAFQMDA/
EADwMDA+sAAAAAAAwAAA8ADwAkAAAMACwATAAABNTMVAREzFTMVIxEhESM1MxEzEQGAwP3AwMDAAkDAwMAG
wMDA/QAFQMDA/
EACQMACQPrAAAAAAQAAA8ADwAkAABMAABE1IREjNTM1ITUhFSEVMxUjESEVAYDAwP6AA8D+gMDAAYADwMAC
QMDAwMDAwP3AwAAAAAQAAAPAA8AJAAADAAcACwAPAAATNSEVJREzESERMxEBNSEVwAJA/QDAAkDA/
QACQAPAwMDAA8D8QAPA/EADwMDAAAAAAQAAA8ADwAkAAAcAABERIREjESERA8DA/
cADwAVA+sAEgPuAAAAAAAIAAAPAA8AJAAADAA0AAAE1MxUBESEVIRUhFSERAwDA/
EADAP3AAkD9wAeAwMD8QAVAwMDA/
QAABQAAA8ADwAkAAAUACQANABEAFwAAEREzFSEVATUzFTU1MxUlNTMVJREhFSEVwAMA/
QDAwP6AwP6AA8D9AAPAAYDAwAGAwMDAwMDAwMDAAYDAwAAAAQAAA8ADwAkAAAcAAAERITUhFSERAYD+gAPA
/oADwASAwMD7gAAAAAUAAAPAA8AJAAADAAcACwAPABMAAAERMxEBNTMVMzUzFSU1MxUhNTMVAYDA/
oDAwMD9AMACQMADwAPA/
EADwMDAwMDAwMDAwAAAAAADAAADwAPACQAAAwAHABsAABERMxEhETMRAREjNTMRIzUzNTMVMxUjETMVIxHA
AkDA/cDAwMDAwMDAwMAGAAGA/oABgP6A/
cABgMABgMDAwMD+gMD+gAAACQAAA8ADwAkAAAMABwALAA8AEwAXABsAHwAjAAARETMRIREzEQE1MxUzNTMV
JTUzFSU1MxUzNTMVJTUzFSE1MxXAAkDA/QDAwMD+gMD+gMDAwP0AwAJAwAPAAkD9wAJA/
cACQMDAwMDAwMDAwMDAwMDAwMDAAAAAAwAAA8ADwAkAAAMADwATAAARETMRExEjNTMRMxEzFSMRExEzEcDA
wMDAwMDAwAeAAYD+gPxAAwDAAYD+gMD9AAPAAYD+gAAABQAAA8ADwAkAAAUACwAPABMAFwAAETUzNTMRMxE
zFTMVAREzESERMxEBNSEVwMDAwMD8QMACQMD9AAJAA8DAwP6AAYDAwAGAAwD9AAMA/
QADAMDAAAAAAAMAAAPAAkAKgAALAA8AEwAAETUzESM1IRUjETMVATUzFTM1MxXAwAJAwMD9wMDAwAPAwAPA
wMD8QMAGAMDAwMAAAAAABwAAA8ADwAqAAAMABwALAA8AEwAXABsAAAERMxEBNTMVMzUzFSU1MxUhNTMVATU
zFTM1MxUBgMD+gMDAwP0AwAJAwP0AwMDAA8ADwPxAA8DAwMDAwMDAwMABgMDAwMAABAAAA8ADwAnAAAMABw
ARABUAABM1IRUlETMRBTUjNTMRITUhEQERMxHAAYD9wMACQMDA/
cADAP3AwAPAwMDAAkD9wMDAwAGAwPxABIABgP6AAAAABgAAA8ADwAnAAAMABwALAA8AEwAXAAATNSEVJTUz
FTU1IRUlNTMVNTUhFQERMxHAAwD8QMABgP3AwAMA/
cDAA8DAwMDAwMDAwMDAwMDAwAGAAYD+gAAAAAMAAAPAA8AJwAADAAkADQAAAREzESERIRUhERMRMxEDAMD8
QAMA/
cDAwAPAAwD9AAPAwP0ABIABgP6AAAIAAAPAAMAJwAADAAcAABERMxEDETMRwMDAA8ADwPxABIABgP6AAAAG
AAADwAPACcAAAwAHAAsADwATABcAABM1IRUlETMRIREzEQE1MxUhNTMVIREzEcACQP0AwAJAwPxAwAJAwP3
AwAPAwMDAAwD9AAMA/
QADwMDAwMABgP6AAAAAAAMAAAPAA8AHgAADAAcAEQAAEzUhFSURMxEFNSM1MxEhNSERwAGA/
cDAAkDAwP3AAwADwMDAwAJA/
cDAwMABgMD8QAAABQAAAwADwAkAAAMABwALABEAFQAAATUhFTURMxEBETMREzUzNTMRATUhFQGAAYDA/
EDAwMDA/
cABgAPAwMDAAkD9wP6ABUD6wAPAwMD+gAGAwMAABQAAAwADwAeAAAMABwALAA8AEwAAAREzEQE1MxUzNTMV
JREzESERMxEBgMD+gMDAwP0AwAJAwAMAAkD9wAJAwMDAwMABgP6AAYD+gAAAAAAEAAADwAPACQAAAwAHAAs
AFwAAEzUhFSURMxEhETMRATUzNSM1IRUhFTMVwAJA/QDAAkDA/QDAwAMA/
oDAA8DAwMACQP3AAkD9wAJAwMDAwMDAAAAFAAADwAPAB4AAAwAHAAsADwATAAATNSEVJTUzFTU1IRUlNTMV
NTUhFcADAPxAwAGA/
cDAAwADwMDAwMDAwMDAwMDAwMDAAAAFAAADAAPACQAAAwAHAAsADwAXAAABETMRATUhFSURMxERNSEVNTUh
NSEVIxUDAMD9AAJA/
QDAAYD9wAPAwAMAAYD+gAGAwMDAAYD+gAGAwMDAwMDAwAAAAgAAA8ADwAeAAAMACQAAAREzESERIRUhEQMA
wPxAAwD9wAPAAwD9AAPAwP0AAAAAAwAAA8ADAAkAAAMADwATAAATNSEVJREzESERMxEjESERETUhFcABgP3
AwAGAwMD+gAGAA8DAwMADwP6AAYD8QAGA/
oADwMDAAAAAAAEAAAPAAMAHgAADAAARETMRwAPAA8D8QAAAAAAFAAADwAMAB4AAAwAHAAsAEwAXAAABNTMV
JTUzFQM1MxUBETMRMxUjEQE1MxUCQMD+gMDAwP3AwMDAAYDAA8DAwMDAwAGAwMD9wAPA/oDA/
oADAMDAAAAAAwAAA8ADwAkAAAMACwAPAAARETMRIREhNSE1MxEBNSEVwAJA/
cACQMD8QAMAA8ADAP0AAwDAwPuABIDAwAAAAAIAAAMAA8AHgAAHAA8AAB
ERMxEhFSEVJTUjNTMRMxHAAYD+gAJAwMDAAwAEgP0AwMDAwMACQPxAAAAAAAUAAAPAA8AHgAADAAcACwAPA
BMAAAE1MxU1NTMVIREzEQERMxEFETMRAYDAwP3AwP6AwAJAwAPAwMDAwMABgP6AAYABgP6AwAJA/
cAAAAAABgAAAwADwAkAAAMABwALAA8AEwAXAAABETMRATUhFSURMxERNSEVJTUzFTU1IRUDAMD9AAJA/
QDAAkD9AMADAAMAAYD+gAGAwMDAAYD+gAGAwMDAwMDAwMAAAAAEAAADwAPAB4AAAwAHAAsADwAAEzUhFSUR
MxEhETMRATUhFcACQP0AwAJAwP0AAkADwMDAwAJA/
cACQP3AAkDAwAAAAAEAAAPAA8AHgAAHAAARESERIxEhEQPAwP3AA8ADwPxAAwD9AAAAAAADAAADAAPAB4AA
BwALAA8AABERMxEhFSERAREzEQE1IRXAAkD9wAJAwP0AAkADAAPA/oDA/oACQAGA/
oABgMDAAAAAAAQAAAMAA8AHgAADAAcACwAPAAABETMRATUhFSURMxERNSEVAwDA/
QACQP0AwAMAAwABgP6AAYDAwMABgP6AAYDAwAAAAwAAA8ADwAeAAAMABwAPAAATNSEVJREzESERITUhFSMR
wAGA/cDAAYD+gAMAwAPAwMDAAkD9wAJAwMD9wAAAAAEAAAPAA8AHgAAHAAABESE1IRUhEQGA/
oADwP6AA8ADAMDA/
QAAAAADAAADwAPAB4AAAwAHAAsAABM1IRUlETMRIREzEcACQP0AwAJAwAPAwMDAAwD9AAMA/
QAAAwAAAwADwAeAAAMABwAVAAABETMRIREzERMRIzUzESEVIxEzFSMRAwDA/EDAwMDAAYDAwMAFQAGA/
oACQP3A/
cABgMACQMD+gMD+gAAAAAAJAAADAAPAB4AAAwAHAAsADwATABcAGwAfACMAABERMxEhETMRATUzFTM1MxUl
NTMVJTUzFTM1MxUlNTMVITUzFcACQMD9AMDAwP6AwP6AwMDA/
QDAAkDAAwABgP6AAYD+gAGAwMDAwMDAwMDAwMDAwMDAwMAAAAADAAADAAPAB4AAAwAPABMAABERMxETESM1
MxEzETMVIxETETMRwMDAwMDAwMDABUACQP3A/
cABgMACQP3AwP6AAkACQP3AAAAFAAADwAPAB4AAAwAHAAsADwATAAATNTMVMzUzFSURMxEhETMRIREzEcDA
wMD+gMD9wMACQMADwMDAwMDAAYD+gAMA/
QADAP0AAAAAAwAAA8ACQAkAAAMABwALAAATETMRATUzFTM1MxXAwP6AwMDAA8ADwPxABIDAwMDAAAAAAAUA
AAPAA8AJAAADAAcACwAPABMAABM1IRUlETMRIREzEQE1MxUzNTMVwAJA/QDAAkDA/QDAwMADwMDAwAMA/
QADAP0AA8DAwMDAAAAEAAADwAPAB4AAAwAHAAsADwAAEzUhFSURMxEhETMRATUhFcACQP0AwAJAwP0AAkAD
wMDAwAJA/cACQP3AAkDAwAAAAAQAAAPAA8AJwAADAAcACwAPAAATNSEVJREzESERMxEBETMRwAJA/
QDAAkDA/
cDAA8DAwMADAP0AAwD9AAPAAYD+gAAABgAAA8ADwAnAAAMABwALAA8AEwAXAAATNTMVMzUzFSURMxEhETMR
IREzEQERMxHAwMDA/oDA/cDAAkDA/cDAA8DAwMDAwAGA/
oADAP0AAwD9AAPAAYD+gAAAAAAEAAADAAPAB4AAAwAHABMAFwAAATUhFTURMxEhETMRMzUzFTMVIREBNTMV
AYABgMD8QMDAwMD9wAGAwAMAwMDAAYD+gAPA/
oDAwMD+gAMAwMAAAAACAAADwAPACoAADwATAAARESE1MxUhFSEVIRUhESEVATUzFQGAwAGA/
QABgP6AAwD9AMADwAVAwMDAwMD9wMAGAMDAAAMAAAPAA8AKgAALAA8AEwAAEREhFSEVIRUhESEVATUzFTM1
MxUDwP0AAYD+gAMA/QDAwMADwAVAwMDA/
cDABgDAwMDAAAAAAAMAAAMABIAJAAADAAcAEwAAATUhFTURMxEhESM1IRUhFSEVIRECQAGAwPxAwAPA/
cACQP3AAwDAwMADAP0ABIDAwMDA/
QAAAAIAAAPAA8AKgAAJAA0AABERITUzFSEVIREBNTMVAYDAAYD9AAGAwAPABUDAwMD7gAYAwMAAAAAABQAA
A8ADwAkAAAMABwAPABMAFwAAEzUhFTU1MxUhETMVIRUhEQE1MxUlNSEVwAJAwPxAwAGA/
oACQMD9AAJAA8DAwMDAwAPAwMD9wAMAwMDAwMAABgAAA8ADwAkAAAMABwALAA8AEwAXAAATNSEVJTUzFSER
MxEBNSEVJTUzFTU1IRXAAkD9AMACQMD9AAJA/
QDAAwADwMDAwMDAAkD9wAJAwMDAwMDAwMAAAAEAAAPAAkAJAAALAAARNTMRIzUhFSMRMxXAwAJAwMADwMAD
wMDA/
EDAAAAAAwAAA8ACQAqAAAsADwATAAARNTMRIzUhFSMRMxUBNTMVMzUzFcDAAkDAwP3AwMDAA8DAA8DAwPxA
wAYAwMDAwAAAAAADAAADwAPACQAAAwAHAAsAABM1IRUlNTMVIREzEcACQP0AwAJAwAPAwMDAwMAEgPuAAAA
AAgAAA8AGwAkAAAMAEwAAAREzEQU1MxEhESEVIREhFSERIREGAMD5QMADAAJA/cACQP0A/oAEgAJA/
cDAwASA/oDA/
cDABID7gAAAAAIAAAPABsAJAAADABUAAAERMxEFETMRIREzESEVIREhFSERIREGAMD5QMACQMACQP3AAkD9
AP3ABIACQP3AwAVA/oABgP6AwP3AwAMA/
QAAAgAAA8AEgAkAAAMADwAAAREzESERIzUhFSEVIRUhEQPAwPxAwAPA/cACQP3AA8ADAP0ABIDAwMDA/
QAABwAAA8ADwAqAAAMABwALABMAFwAbAB8AAAERMxEBNTMVAzUzFQERMxEhFSERATUzFSU1MxU1NTMVAwDA
/oDAwMD9AMABgP6AAkDA/cDAwAPAAkD9wAJAwMABgMDA/
EAFQP6AwP0ABIDAwMDAwMDAwAAAAAAFAAADwAPACoAAAwALABMAFwAbAAABNTMVAREzETMVIxEhESM1MzUz
EQE1MxUlNTMVAYDA/cDAwMACQMDAwP3AwP6AwAbAwMD9AAVA/cDA/
cADwMDA+sAFQMDAwMDAAAAEAAADwAPACQAAAwAHAAsAEwAAETUhFTU1MxUBETMRAREhNSERMxECQMD9AMAC
QP3AAkDAA8DAwMDAwAMAAYD+gP3AAYDAAYD8QAAAAQAAAwADwAkAAAsAAAE1IREzESERMxEhFQGA/
oDAAkDA/oADAMAFQPuABID6wMAAAgAAA8ADwAkAAAsADwAAEREzFSE1MxEjESERETUhFcACQMDA/
cACQAPABIDAwPuAAwD9AASAwMAAAAAAAgAAA8ADwAkAAAMADwAAAREzEQURIRUhFSEVIREhFQMAwPxAA8D9
AAJA/
cACQASAAkD9wMAFQMDAwP3AwAAAAAMAAAPAA8AJAAADAAcAEwAAAREzEQM1MxUBESEVIRUhFSERIRUDAMDA
wPxAAwD9wAJA/cACQASAAkD9wAMAwMD8QAVAwMDA/
cDAAAABAAADwAPACQAABQAAEREhFSERA8D9AAPABUDA+4AAAAQAAAMAA8AJAAALAA8AEwAXAAARETMRIREz
ESM1IRURETMRMxEzEQE1MxXAAkDAwP3AwMDA/
oDAAwADwP3AAkD8QMDAA8ABgP6AAYD+gAGAwMAAAAEAAAPAA8AJAAALAAARESEVIRUhFSERIRUDwP0AAYD+
gAMAA8AFQMDAwP3AwAAAAAUAAAPAA8AJAAADAAcACwAXABsAABERMxEhETMRAREzERMRIzUzETMRMxUjERM
RMxHAAkDA/EDAwMDAwMDAwMADwAMA/QADAP0AA8ABgP6A/
EADAMABgP6AwP0AA8ABgP6AAAAGAAADwAPACQAAAwAHAAsADwATABcAABM1IRUlNTMVIREzEQE1IRU1NTMV
JTUhFcACQP0AwAJAwP3AAYDA/
EADAAPAwMDAwMACQP3AAkDAwMDAwMDAwAAAAwAAA8ADwAkAAAMACwATAAABNTMVAREzETMVIxEhESM1MzUz
EQGAwP3AwMDAAkDAwMAGwMDA/
QAFQP3AwP3AA8DAwPrAAAAABAAAA8ADwAqAAAMACwATABsAAAE1MxUBETMRMxUjESERIzUzNTMRAREzFTM1
MxEBgMD9wMDAwAJAwMDA/QDAwMAGwMDA/QAFQP3AwP3AA8DAwPrABUABgMDA/
oAAAAAABQAAA8ADwAkAAAMABwALABMAFwAAAREzEQE1MxUDNTMVAREzESEVIREBNTMVAwDA/
oDAwMD9AMABgP6AAkDAA8ACQP3AAkDAwAGAwMD8QAVA/oDA/
QAEgMDAAAABAAADwAPACQAACQAAETUzESERIxEhEcADAMD+gAPAwASA+sAEgPuAAAAAAAMAAAPAA8AJAAAD
AAsAEwAAATUzFQERMxUzFSMRIREjNTM1MxEBgMD9wMDAwAJAwMDABsDAwP0ABUDAwPxAA8DAwPrAAAAAAAE
AAAPAA8AJAAALAAARETMRIREzESMRIRHAAkDAwP3AA8AFQP6AAYD6wAMA/
QAAAAQAAAPAA8AJAAADAAcACwAPAAATNSEVJREzESERMxEBNSEVwAJA/QDAAkDA/
QACQAPAwMDAA8D8QAPA/EADwMDAAAAAAQAAA8ADwAkAAAcAABERIREjESERA8DA/
cADwAVA+sAEgPuAAAAAAAIAAAPAA8AJAAADAA0AAAE1MxUBESEVIRUhFSERAwDA/
EADAP3AAkD9wAeAwMD8QAVAwMDA/
QAABQAAA8ADwAkAAAMABwALAA8AEwAAEzUhFTU1MxUhETMRATUzFSU1IRXAAkDA/EDAAkDA/
QACQAPAwMDAwMADwPxAAwDAwMDAwAAAAAEAAAPAA8AJAAAHAAABESE1IRUhEQGA/
oADwP6AA8AEgMDA+4AAAAAEAAADwAPACQAAAwAHAAsAEwAAETUhFTU1MxUBETMRAREhNSERMxECQMD9AMAC
QP3AAkDAA8DAwMDAwAMAAYD+gP3AAYDAAYD8QAAAAwAAA8ADwAkAAAMABwAbAAARETMRIREzEQERIzUzESM
1MzUzFTMVIxEzFSMRwAJAwP3AwMDAwMDAwMDABgABgP6AAYD+gP3AAYDAAYDAwMDA/oDA/
oAAAAkAAAPAA8AJAAADAAcACwAPABMAFwAbAB8AIwAAEREzESERMxEBNTMVMzUzFSU1MxUlNTMVMzUzFSU1
MxUhNTMVwAJAwP0AwMDA/oDA/oDAwMD9AMACQMADwAJA/
cACQP3AAkDAwMDAwMDAwMDAwMDAwMDAwAAAAAEAAAMABIAJAAALAAABNSERMxEhETMRMxEDwPxAwAJAwMAD
AMAFQPuABID7gP6AAAIAAAPAA8AJAAADAAsAABERMxEBESE1IREzEcACQP3AAkDAB4ABgP6A/
EADAMABgPrAAAABAAADwAPACQAACwAAEREzETMRMxEzETMRwMDAwMADwAVA+4AEgPuABID6wAAAAAABAAAD
AASACQAADwAAATUhETMRMxEzETMRMxEzEQPA/
EDAwMDAwMADAMAFQPuABID7gASA+4D+gAAAAAACAAADwASACQAAAwAPAAABETMRBREjNSERIRUhESEVA8DA
/EDAAYACQP3AAkAEgAJA/cDABIDA/oDA/
cDAAAAAAwAAA8AFQAkAAAMADQARAAABETMRBREzESEVIREhFSERMxEDAMD8QMACQP3AAkABgMAEgAJA/
cDABUD+gMD9wMAFQPrAAAAAAgAAA8ADwAkAAAMADQAAAREzEQURMxEhFSERIRUDAMD8QMACQP3AAkAEgAJA
/
cDABUD+gMD9wMAAAAAABQAAA8ADwAkAAAMABwALABMAFwAAEzUhFSU1MxUDNTMVAREhNSE1MxEBNSEVwAJA
/QDAwMACQP6AAYDA/QACQAPAwMDAwMADAMDA/QACQMDA/
EADwMDAAAQAAAPAA8AJAAADAAcAEwAXAAABNTMVNREzEQURMxEzNTMRIxEjEQE1MxUCQMDA/
EDAwMDAwAGAwAPAwMDAA8D8QMAFQP6AwPxAAkD9AASAwMAAAAMAAAPAA8AJAAADAAcAEQAAEREzEQM1MxUB
ESE1ITUhNSERwMDAAkD9wAJA/
cADAAPAAwD9AAPAwMD8QAMAwMDA+sAAAwAAA8ADwAeAAAMADQARAAARNTMVFTUhNSE1ITUzEQE1IRXAAkD9
wAJAwP0AAkAEgMDAwMDAwMD9AAMAwMAAAAUAAAPAA8AJAAADAAcACwATABcAABM1IRU1ETMRATUhFQERMxE
zFSMRETUhFcACQMD9wAGA/QDAwMADAAPAwMDAAkD9wAJAwMD9wAPA/oDA/
oADwMDAAAADAAADwAPAB4AAAwAHABMAAAE1MxUDNTMVAREhFSEVIRUhFSEVAwDAwMD8QAMA/
cACQP3AAkAEgMDAAYDAwP3AA8DAwMDAwAABAAADwAPAB4AABQAAEREhFSERA8D9AAPAA8DA/
QAAAAQAAAMAA8AHgAALAA8AEwAXAAARETMVITUzESM1IRURETMRMxEzEQE1MxXAAkDAwP3AwMDA/
oDAAwACQMDA/cDAwAJAAYD+gAGA/
oABgMDAAAAAAAMAAAPAA8AHgAADAA0AEQAAEzUhFSURMxUhNTMRIRURNSEVwAMA/EDAAkDA/
QACQAPAwMDAAkDAwP6AwAJAwMAAAAAABQAAA8ADwAeAAAMABwALABcAGwAAEREzESERMxEBETMRExEjNTMR
MxEzFSMRExEzEcACQMD8QMDAwMDAwMDAwAPAAYD+gAGA/oACQAGA/oD9wAGAwAGA/oDA/oACQAGA/
oAAAAUAAAPAA8AHgAADAAcACwAPABMAABE1IRU1NTMVJTUhFTU1MxUlNSEVAwDA/
cABgMD8QAMAA8DAwMDAwMDAwMDAwMDAwAAAAAMAAAPAA8AHgAADAAsAEwAAATUzFQERMxEzFSMVIREjNTM1
MxEBgMD9wMDAwAJAwMDABUDAwP6AA8D9wMDAAkDAwPxAAAAAAAQAAAPAA8AJwAADAAsAEwAbAAABNTMVARE
zETMVIxUhESM1MzUzEQERMxUzNTMRAYDA/
cDAwMACQMDAwP0AwMDABUDAwP6AA8D9wMDAAkDAwPxABIABgMDA/
oAABQAAA8ADAAeAAAMABwALABMAFwAAATUzFSU1MxUDNTMVAREzETMVIxEBNTMVAkDA/
oDAwMD9wMDAwAGAwAPAwMDAwMABgMDA/
cADwP6AwP6AAwDAwAAAAAEAAAPAA8AHgAAJAAARNTMRIREjESERwAMAwP6AA8DAAwD8QAMA/
QAAAAAAAwAAA8ADwAeAAAMACwATAAABNTMVAREzFTMVIxEhESM1MzUzEQGAwP3AwMDAAkDAwMAFQMDA/
oADwMDA/cACQMDA/EAAAAAAAQAAA8ADwAeAAAsAABERMxEhETMRIxEhEcACQMDA/cADwAPA/
oABgPxAAYD+gAAABAAAA8ADwAeAAAMABwALAA8AABM1IRUlETMRIREzEQE1IRXAAkD9AMACQMD9AAJAA8DA
wMACQP3AAkD9wAJAwMAAAAABAAADwAPAB4AABwAAEREhESMRIREDwMD9wAPAA8D8QAMA/
QAAAAAAAwAAAwADwAeAAAMADwATAAABETMRAREzFTMVIxUhFSEREzUhFQMAwPxAwMDAAkD9wMABgAVAAYD+
gP3ABIDAwMDA/
oADwMDAAAAAAAUAAAPAA8AHgAADAAcACwAPABMAABM1IRU1NTMVIREzEQE1MxUlNSEVwAJAwPxAwAJAwP0A
AkADwMDAwMDAAkD9wAGAwMDAwMAAAAABAAADwAPAB4AABwAAAREhNSEVIREBgP6AA8D+gAPAAwDAwP0AAAA
AAwAAAwADwAeAAAMABwAPAAARNSEVAREzEQE1ITUhETMRAwD9AMACQP3AAkDAAwDAwAJAAkD9wP6AwMACQP
xAAAUAAAMABUAJAAADAAcACwAPACMAABM1MxUlETMRIREzEQE1MxUBESM1MzUhNSERMxEzFSMVIRUhEcDA/
oDAA8DA/oDA/
cDAwP6AAYDAwMABgP6ABIDAwMABgP6AAYD+gAGAwMD8QAJAwMDAAYD9wMDAwP6AAAAAAAkAAAPAA8AHgAAD
AAcACwAPABMAFwAbAB8AIwAAETUzFSE1MxUlNTMVMzUzFSU1MxUlNTMVMzUzFSU1MxUhNTMVwAJAwP0AwMD
A/oDA/
oDAwMD9AMACQMADwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAQAAAwAEgAeAAAsAAAE1IREzESERMxEz
EQPA/EDAAkDAwAMAwAPA/QADAP0A/oAAAgAAA8ADwAeAAAMACwAAEREzEQERITUhETMRwAJA/
cACQMAGAAGA/oD9wAGAwAGA/EAAAAEAAAPAA8AHgAALAAARETMRMxEzETMRMxHAwMDAwAPAA8D9AAMA/
QADAPxAAAAAAAEAAAMABIAHgAAPAAABNSERMxEzETMRMxEzETMRA8D8QMDAwMDAwAMAwAPA/
QADAP0AAwD9AP6AAAAAAAIAAAPAA8AHgAADAA8AAAE1MxUFESM1IREhFSEVIRUDAMD9AMABgAGA/
oABgASAwMDAAwDA/oDAwMAAAAMAAAPABIAHgAADAA0AEQAAATUzFQURMxEhFSEVIRUhETMRAkDA/
QDAAYD+gAGAAYDABIDAwMADwP6AwMDAA8D8QAAAAgAAA8ADAAeAAAMADQAAATUzFQURMxEhFSEVIRUCQMD9
AMABgP6AAYAEgMDAwAPA/
oDAwMAAAAAFAAADwAPAB4AAAwAHAAsAEwAXAAATNSEVJTUzFQM1MxUBNSE1ITUzEQE1IRXAAkD9AMDAwAJA
/
oABgMD9AAJAA8DAwMDAwAGAwMD+gMDAwP3AAkDAwAAABAAAA8ADwAeAAAMABwATABcAAAE1MxU1ETMRBREz
ETM1MxEjNSMRATUzFQJAwMD8QMDAwMDAAYDAA8DAwMACQP3AwAPA/oDA/cDA/
oADAMDAAAAAAwAAA8ADwAeAAAMABwARAAARETMRAzUzFQERITUhNSE1IRHAwMACQP3AAkD9wAMAA8ABgP6A
AkDAwP3AAYDAwMD8QAAFAAADwAPACcAAAwANABEAFQAZAAATNSEVJREzFSE1MxEhFRE1IRUBNTMVJTUzFcA
DAPxAwAJAwP0AAkD+gMD+gMADwMDAwAJAwMD+gMACQMDAAYDAwMDAwAAAAAUAAAPAA8AJAAADAA0AEQAVAB
kAABM1IRUlETMVITUzESEVETUhFQE1MxUzNTMVwAMA/EDAAkDA/QACQP3AwMDAA8DAwMACQMDA/
oDAAkDAwAGAwMDAwAAEAAADAASACQAAAwAHAAsAGwAAATUhFTURMxEBNSEVAREjNTM1MxUzFSMVMxUjEQJA
AYDA/cABgP0AwMDAwMDAwAMAwMDAAwD9AAMAwMD9AAPAwMDAwMDA/
cAAAAMAAAPAA8AJwAAFAAkADQAAEREhFSEREzUzFTU1MxUDwP0AwMDAA8ADwMD9AASAwMDAwMAAAAAABQAA
A8ADwAeAAAMABwAPABMAFwAAEzUhFTU1MxUhETMVIRUhFQE1MxUlNSEVwAJAwPxAwAGA/
oACQMD9AAJAA8DAwMDAwAJAwMDAAYDAwMDAwAAABQAAA8ADwAeAAAMABwALAA8AEwAAETUhFTU1MxUlNSEV
JTUzFTU1IRUDAMD9AAJA/
QDAAwADwMDAwMDAwMDAwMDAwMDAAAAAAgAAA8AAwAkAAAMABwAAEREzEQM1MxXAwMADwAPA/
EAEgMDAAAAAAAMAA
APAAkAJAAADAAcACwAAExEzEQE1MxUzNTMVwMD+gMDAwAPAA8D8QASAwMDAwAAAAAAEAAADAAPACQAAAwAH
AAsADwAAEzUhFSU1MxUhETMRAzUzFcACQP0AwAJAwMDAAwDAwMDAwAPA/
EAEgMDAAAAAAgAAA8AGAAeAAAMAEwAAATUzFQU1MxEhESEVIRUhFSERIREFQMD6AMADAAGA/oABgP3A/
oAEgMDAwMADAP6AwMDAAwD9AAAAAgAAA8AGAAeAAAMAFQAAATUzFQURMxEhETMRIRUhFSEVIREhEQVAwPoA
wAJAwAGA/oABgP3A/cAEgMDAwAPA/
oABgP6AwMDAAYD+gAAAAAADAAADwASACQAAAwAHABcAAAERMxEBNSEVAREjNTM1MxUzFSMVMxUjEQPAwP3A
AYD9AMDAwMDAwMADwAMA/QADAMDA/
QADwMDAwMDAwP3AAAUAAAPAAwAHgAADAAcACwATABcAAAE1MxUlNTMVAzUzFQERMxEzFSMRATUzFQJAwP6A
wMDA/
cDAwMABgMADwMDAwMDAAYDAwP3AA8D+gMD+gAMAwMAAAAAFAAADwAPACcAAAwALABMAFwAbAAABNTMVAREz
ETMVIxUhESM1MzUzEQE1MxUlNTMVAYDA/cDAwMACQMDAwP3AwP6AwAVAwMD+gAPA/
cDAwAJAwMD8QASAwMDAwMAAAAAEAAADAAPACcAAAwAHAA8AFwAAETUhFQERMxEBNSE1IREzEQERMxUzNTMR
AwD9AMACQP3AAkDA/QDAwMADAMDAAkACQP3A/oDAwAJA/
EAEgAGAwMD+gAAAAQAAAwADwAeAAAsAAAE1IREzESERMxEhFQGA/oDAAkDA/
oADAMADwP0AAwD8QMAAAgAAA8AEgAkAAAMAFQAAAREzEQURIzUzNTMVIRUhFSEVIREhFQPAwPxAwMDAAkD9
wAJA/
cACQASAAYD+gMADwMDAwMDAwP6AwAAAAAMAAAPABIAJAAADAAcAGQAAAREzEQE1IRUBESM1MzUzFSEVIREz
FSMVIRUDwMD9wAGA/
QDAwMACQP3AwMACQASAAYD+gAGAwMD9wAPAwMDAwP6AwMDAAAADAAADwAPACQAAAwAPABMAABM1IRUlETMR
IREzESMRIRERNSEVwAJA/QDAAkDAwP3AAkADwMDAwAPA/
oABgPxAAYD+gAPAwMAAAAAAAwAAA8ADwAeAAAMADwATAAATNSEVJREzFSE1MxEjNSEVETUhFcACQP0AwAJA
wMD9wAJAA8DAwMACQMDA/
cDAwAJAwMAAAAAABQAAA8ADwAkAAAMABwALAA8AEwAAATUzFSURMxEzETMRAREzESURMxEBgMD+gMDAwP0A
wAJAwAPAwMDAAYD+gAJA/cABgAMA/
QDAAkD9wAAFAAADwAPAB4AAAwAHAAsADwATAAABNTMVJTUzFTMRMxElETMRJREzEQGAwP6AwMDA/
QDAAkDAA8DAwMDAwAGA/
oDAAkD9wMABgP6AAAAAAAQAAAMABIAKgAADAAsAFwAfAAABNTMVAREzETMVIxEFESM1MzUzETMVIxUBETMV
MzUzEQGAwP3AwMDAAkDAwMDAwP0AwMDABsDAwP0ABUD9wMD9wMAEgMDA+4DAwAYAAYDAwP6AAAAABAAAAwA
EgAnAAAMACwAXAB8AAAE1MxUBETMRMxUjFQURIzUzNTMRMxUjFQERMxUzNTMRAYDA/cDAwMACQMDAwMDA/
QDAwMAFQMDA/
oADwP3AwMDAAwDAwP0AwMAFQAGAwMD+gAAAAAACAAADwASACQAAAwARAAABETMRBREjNSEVIxUhFSERIRUD
wMD8QMACQMACQP3AAkAEgAJA/cDABIDAwMDA/
cDAAAAAAAIAAAPAA8AJAAADABUAAAE1MxUFESM1MzUzFTMVIxEhFSEVIRUDAMD9AMDAwMDAAYD+gAGABIDA
wMADwMDAwMD+gMDAwAAAAAIAAAPAA8AJAAADABEAAAE1IxUDESEVIxUzNTMRIzUhEQGAwMADAMDAwMD9wAe
AwMD8QAVAwMDA/cDA/
QAAAAAEAAADAAPAB4AAAwAHABcAGwAAATUzFQMRMxEBETMVMxUjFTM1MxUzFSEREzUhFQMAwMDA/
EDAwMDAwMD9wMABgAPAwMABgAGA/oD9wASAwMDAwMDA/
oADwMDAAAEAAAPAA8AJwAAHAAARESE1MxEhEQMAwP0AA8AFQMD+gPuAAAEAAAPAA8AIQAAHAAARESE1MxEh
EQMAwP0AA8ADwMD+gP0AAAEAAAPABIAJAAANAAATESM1MxEhFSERIRUhEcDAwAPA/
QABgP6AA8ACQMACQMD+gMD9wAABAAADwASAB4AADQAAExEjNTMRIRUhFSEVIRHAwMADwP0AAYD+gAPAAYDA
AYDAwMD+gAAABQAAAwAEgAkAAAMACwAPABsAHwAAEREzEQU1IxEzETMRAREzERMRIzUzETMRMxUjERMRMxH
AAwDAwMD7gMDAwMDAwMDAwAPAAwD9AMDAAwD9wP6ABIABgP6A/
EADAMABgP6AwP0AA8ABgP6AAAAAAAUAAAMABIAHgAADAAsADwAbAB8AABERMxEFNSMRMxUzEQERMxETESM1
MxEzETMVIxETETMRwAMAwMDA+4DAwMDAwMDAwMADwAGA/oDAwAGAwP6AAwABgP6A/
cABgMABgP6AwP6AAkABgP6AAAYAAAMAA8AJAAAHAAsADwATABcAGwAAATUjNSEVIxUBNTMVIREzEQE1IRU1
NTMVJTUhFQGAwAJAwP3AwAJAwP3AAYDA/
EADAAMAwMDAwAGAwMACQP3AAkDAwMDAwMDAwAAAAAAFAAADAAPAB4AABwALAA8AEwAXAAABNSE1IRUjFRM1
MxUlNSEVNTUzFSU1IRUBgP6AAwDAwMD9wAGAwPxAAwADAMDAwMABgMDAwMDAwMDAwMDAAAAFAAADAASACQA
ABwALAA8AFwAbAAABNSMRMxEzEQE1MxUDNTMVAREzESEVIREBNTMVA8DAwMD9wMDAwP0AwAGA/
oACQMADAMACQP6A/
oADAMDAAYDAwPxABUD+gMD9AASAwMAABQAAA8ADAAeAAAMABwALABMAFwAAATUzFSU1MxUDNTMVAREzETMV
IxEBNTMVAkDA/oDAwMD9wMDAwAGAwAPAwMDAwMABgMDA/
cADwP6AwP6AAwDAwAAAAAMAAAPAA8AJAAADABMAFwAAAREzESERMxEzNTMVMxUjFSM1IxEBETMRAwDA/
EDAwMDAwMDAAkDAA8ADAP0ABUD+gMDAwMDA/QADwAGA/
oAAAwAAA8ADwAeAAAMAEwAXAAABETMRIREzETM1MxUzFSMVIzUjEQERMxEDAMD8QMDAwMDAwMACQMADwAGA
/
oADwP6AwMDAwMD+gAJAAYD+gAAFAAADwASACQAAAwAHAAsAFQAZAAABETMRATUzFQM1MxUBESM1IREhFSER
ATUzFQPAwP6AwMDA/
QDAAYABgP6AAkDAA8ACQP3AAkDAwAGAwMD8QASAwP6AwP0ABIDAwAAFAAADwAPAB4AAAwAHAAsAFQAZAAAB
NTMVJTUzFQM1MxUBESM1IREzFSMRATUzFQMAwP6AwMDA/cDAAYDAwAGAwAPAwMDAwMABgMDA/
cADAMD+gMD+gAMAwMAAAAEAAAMABIAJAAAPAAABNSMRIREjETMRIREzETMRA8DA/
cDAwAJAwMADAMADAP0ABUD+gAGA+4D+gAAAAAEAAAMABIAHgAAPAAABNSMRIREjETMRIREzETMRA8DA/
cDAwAJAwMADAMABgP6AA8D+gAGA/
QD+gAAAAAUAAAMAA8AJAAAHAAsADwATABcAAAE1IzUhFSMVEzUzFSERMxEBNTMVJTUhFQGAwAJAwMDA/
EDAAkDA/
QACQAMAwMDAwAGAwMADwPxAAwDAwMDAwAAAAAAFAAADAAPAB4AABwALAA8AEwAXAAABNSM1IRUjFRM1MxUh
ETMRATUzFSU1IRUBgMACQMDAwPxAwAJAwP0AAkADAMDAwMABgMDAAkD9wAGAwMDAwMAAAAAABQAAA8ADwAk
AAAMABwALAA8AEwAAAREzEQE1MxUzNTMVJTUzFSE1MxUBgMD+gMDAwP0AwAJAwAPAA8D8QAPAwMDAwMDAwM
DAAAAAAAUAAAMAA8AHgAADAAcACwAPABMAAAERMxEBNTMVMzUzFSU1MxUhNTMVAYDA/
oDAwMD9AMACQMADAAMA/
QADAMDAwMDAwMDAwAAAAAAFAAADwAPACQAACwAPABMAFwAbAAABESM1MxEzETMVIxEBNTMVMzUzFSU1MxUh
NTMVAYDAwMDAwP6AwMDA/
QDAAkDAA8ABgMABgP6AwP6AA8DAwMDAwMDAwMAAAAUAAAMAA8AHgAALAA8AEwAXABsAAAERIzUzNTMVMxUj
EQE1MxUzNTMVJTUzFSE1MxUBgMDAwMDA/
oDAwMD9AMACQMADAAGAwMDAwP6AAwDAwMDAwMDAwMAAAAAACQAAAwAEgAkAAAMACwAPABMAFwAbAB8AIwAn
AAARETMRBTUjETMRMxEBNTMVMzUzFSU1MxUlNTMVMzUzFSU1MxUhNTMVwAMAwMDA/
EDAwMD+gMD+gMDAwP0AwAJAwAPAAkD9wMDAAkD+gP6AAwDAwMDAwMDAwMDAwMDAwMDAwAAJAAADAASAB4AA
AwAJAA0AEQAVABkAHQAhACUAABE1MxUFNSM1IREBNTMVMzUzFSU1MxUlNTMVMzUzFSU1MxUhNTMVwAMAwAG
A/
EDAwMD+gMD+gMDAwP0AwAJAwAPAwMDAwMD+gAGAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAgAAAwAEgAkAAAMA
DwAAEREzEQE1IxEhNSERMxEzEcADAMD9wAJAwMAHgAGA/oD7gMADAMABgPuA/
oAAAgAAAwAEgAeAAAMADwAAEREzEQE1IxEhNSERMxEzEcADAMD9wAJAwMAGAAGA/oD9AMABgMABgP0A/
oAAAgAAA8ADwAkAAAMAEwAAEREzEQERIxUjNSM1MzUzFTMRMxHAAkDAwMDAwMDAB4ABgP6A/
EADAMDAwMDAAYD6wAAAAAACAAADwAPAB4AAAwATAAARETMRAREjFSM1IzUzNTMVMxEzEcACQMDAwMDAwMAG
AAGA/oD9wAGAwMDAwMABgPxAAAAAAAIAAAPAA8AJAAADAAsAAAERMxEhETMRIRUhEQMAwPxAwAJA/
cADwAMA/QAFQP6AwP0AAAADAAADwAPACQAAAwAHAA8AAAERMxEBNSEVAREzETMVIxEDAMD9wAGA/
QDAwMADwAMA/QADAMDA/
QAFQP3AwP3AAAAAAAEAAAPAAMAJAAADAAARETMRwAPABUD6wAAAAAAFAAADwAPACoAAAwAHAAsADwAjAAAR
ETMRIREzEQERMxEhETMRAREjNTMRIxEzFTM1MxEjETMVIxHAAkDA/EDAAkDA/cDAwMDAwMDAwMADwAMA/
QADAP0AA8ABgP6AAYD+gPxAAwDAAYABgMDA/
oD+gMD9AAAAAAAGAAADwAPACcAAAwAHAAsAFwAbACMAABERMxEhETMRAREzERMRIzUzETMRMxUjERMRMxEB
ETMVMzUzEcACQMD8QMDAwMDAwMDAwP0AwMDAA8ABgP6AAYD+gAJAAYD+gP3AAYDAAYD+gMD+gAJAAYD+gAJ
AAYDAwP6AAAAAAQAAAwAEgAkAAA0AAAERIREhNTMRIREzFSMVAwD+gP6AwAMAwMADAAVA+4DABID7gMDAAA
EAAAMABIAHgAANAAABESERITUzESERMxUjFQMA/oD+gMADAMDAAwADwP0AwAMA/
QDAwAACAAADAAPACQAAAwAPAAABNSEVJREzESERMxEjESERAYABgP0AwAJAwMD9wAMAwMDABUD+gAGA+sAD
AP0AAAAAAgAAAwADwAeAAAMADwAAATUhFSURMxEhETMRIxEhEQGAAYD9AMACQMDA/cADAMDAwAPA/
oABgPxAAYD+gAAAAAEAAAMABIAJAAAPAAABESERIxEzESERMxEzFSMVAwD9wMDAAkDAwMADAAPA/
QAFQP6AAYD7gMDAAAAAAAEAAAMABIAHgAAPAAABESERIxEzESERMxEzFSMVAwD9wMDAAkDAwMADAAJA/
oADwP6AAYD9AMDAAAAAAAMAAAMABIAJAAADAAsAFwAAATUzFQERMxUzFSMRBREjNTM1MxEzFSMVAYDA/
cDAwMACQMDAwMDABsDAwP0ABUDAwPxAwASAwMD7gMDAAAAAAwAAA8ADwAeAAAMACwATAAABNTMVAREzFTMV
IxEhESM1MzUzEQGAwP3AwMDAAkDAwMAFQMDA/oADwMDA/cACQMDA/
EAAAAAAAQAAA8AAwAeAAAMAABERMxHAA8ADwPxAAAAAAAQAAAPAA8AKgAALAA8AEwAXAAARETMVITUzESMR
IRERNSEVATUzFTM1MxXAAkDAwP3AAkD9wMDAwAPABIDAwPuAAwD9AASAwMABgMDAwMAABQAAA8ADwAkAAAM
ADQARABUAGQAAETUzFRU1ITUhNSE1MxEBNSEVATUzFTM1MxXAAkD9wAJAwP0AAkD9wMDAwASAwMDAwMDAwP
0AAwDAwAGAwMDAwAAAAAEAAAPABsAJAAAVAAARETMVITUhNSEVIRUhFSERIRUhESERwAJA/
cAGAP0AAYD+gAMA/
ED9wAPABIDAwMDAwMD9wMADAP0AAAYAAAPABsAHgAADAAcACwAZAB0AIQAAEzUhFTM1IRUlNTMVITUhNSE1
MxUhNTMRIRUBNSEVMzUhFcACQMADAPlAwAJA/
cACQMACQMD9AP0AAkDAAkADwMDAwMDAwMDAwMDAwP6AwAJAwMDAwAAAAAADAAADwAPACQAAAwANABEAABM1
IRUlESE1MxEjESERETUhFcACQP0AAwDAwP3AAkADwMDAwAMAwPxAAkD9wAPAwMAAAAMAAAPAA8AHgAADAA0
AEQAAEzUhFSURITUzESM1IRURNSEVwAJA/QADAMDA/cACQAPAwMDAAYDA/
cDAwAJAwMAAAAAABAAAA8ADwAqAAAMACwATABcAAAE1MxUBETMRMxUjESERIzUzNTMRATUhFQGAwP3AwMDA
AkDAwMD9AAJABsDAwP0ABUD9wMD9wAPAwMD6wAYAwMAABAAAA8ADwAkAAAMACwATABcAAAE1MxUBETMRMxU
jFSERIzUzNTMRATUhFQGAwP3AwMDAAkDAwMD9AAJABUDAwP6AA8D9wMDAAkDAwPxABIDAwAAABQAAA8ADwA
qAAAMACwATABcAGwAAATUzFQERMxEzFSMRIREjNTM1MxEBNTMVMzUzFQGAwP3AwMDAAkDAwMD9AMDAwAbAw
MD9AAVA/cDA/
cADwMDA+sAGAMDAwMAAAAAABQAAA8ADwAkAAAMACwATABcAGwAAATUzFQERMxEzFSMVIREjNTM1MxEBNTMV
MzUzFQGAwP3AwMDAAkDAwMD9AMDAwAVAwMD+gAPA/
cDAwAJAwMD8QASAwMDAwAAGAAADwAPACoAAAwAHAAsADwATABcAABM1IRUlETMRIREzEQE1IRUBNTMVMzUz
FcACQP0AwAJAwP0AAkD9wMDAwAPAwMDAA8D8QAPA/
EADwMDAAYDAwMDAAAAAAAYAAAPAA8AJAAADAAcACwAPABMAFwAAEzUhFSURMxEhETMRATUhFQE1MxUzNTMV
wAJA/QDAAkDA/
QACQP3AwMDAA8DAwMACQP3AAkD9wAJAwMABgMDAwMAAAAAAAwAAA8ADwAkAAAMADwATAAATNSEVJREzESER
MxEjESERETUhFcACQP0AwAJAwMD9wAJAA8DAwMADwP6AAYD8QAGA/
oADwMDAAAAAAAMAAAPAA8AHgAADAA8AEwAAEzUhFSURMxUhNTMRIzUhFRE1IRXAAkD9AMACQMDA/
cACQAPAwMDAAkDAwP3AwMACQMDAAAAAAAcAAAPAA8AKgAADAAcACwATABcAGwAfAAATNSEVJTUzFQM1MxUB
ESE1ITUzEQE1IRUBNTMVMzUzFcACQP0AwMDAAkD+gAGAwP0AAkD9wMDAwAPAwMDAwMADAMDA/QACQMDA/
EADwMDAAYDAwMDAAAAFAAADwAPAB4AAAwAHAAsAEwAXAAATNSEVJTUzFQM1MxUBNSE1ITUzEQE1IRXAAkD9
AMDAwAJA/
oABgMD9AAJAA8DAwMDAwAGAwMD+gMDAwP3AAkDAwAAABQAAA8ADwAqAAAMABwALABMAFwAAETUhFTU1MxUB
ETMRAREhNSERMxEBNSEVAkDA/QDAAkD9wAJAwP0AAkADwMDAwMDAAwABgP6A/
cABgMABgPxABIDAwAAAAAAEAAADAAPACQAAAwAHAA8AEwAAETUhFQERMxEBNSE1IREzEQE1IRUDAP0AwAJA
/
cACQMD9AAJAAwDAwAJAAkD9wP6AwMACQPxABIDAwAAAAAYAAAPAA8AKgAADAAcACwATABcAGwAAETUhFTU1
MxUBETMRAREhNSERMxEBNTMVMzUzFQJAwP0AwAJA/cACQMD9AMDAwAPAwMDAwMADAAGA/oD9wAGAwAGA/
EAEgMDAwMAAAAAFAAADAAPACQAAAwAHAA8AEwAXAAARNSEVAREzEQE1ITUhETMRATUzFTM1MxUDAP0AwAJA
/cACQMD9AMDAwAMAwMACQAJA/
cD+gMDAAkD8QASAwMDAwAAABQAAA8ADwAqAAAMACwATABcAGwAAATUzFQERMxEzFSMVITUjNTMRMxEBNTMV
JTUzFQGAwP3AwMDAAkDAwMD9wMD+gMAFQMDA/
oAFQPxAwMDAwAPA+sAFQMDAwMDAAAAABAAAA8ADwAnAAAMADQARABUAABERMxEVNTMRMxEzETMRATUzFSU1
MxXAwMDAwP3AwP6AwASAAwD9AMDAAYD+gAMA/
EAEgMDAwMDAAAUAAAPAA8AKgAADAAsAEwAXABsAAAE1MxUBETMRMxUjFSE1IzUzETMRATUzFTU1MxUBgMD9
wMDAwAJAwMDA/cDAwAVAwMD+gAVA/
EDAwMDAA8D6wAVAwMDAwMAABAAAA8ADwAnAAAMADQARABUAABERMxEVNTMRMxEzETMRATUzFTU1MxXAwMDA
wP3AwMAEgAMA/QDAwAGA/
oADAPxABIDAwMDAwAAAAAUAAAPAA8AKgAADAAsAEwAXABsAAAE1MxUBETMRMxUjFSE1IzUzETMRATUzFTM1
MxUBgMD9wMDAwAJAwMDA/QDAwMAFQMDA/
oAFQPxAwMDAwAPA+sAGAMDAwMAABAAAA8ADwAkAAAMADQARABUAABERMxEVNTMRMxEzETMRATUzFTM1MxXA
wMDAwP0AwMDABIADAP0AwMABgP6AAwD8QASAwMDAwAAAAAMAAAPAA8AJAAADAAcAEwAAATUhFTURMxEFESE
VIxEhNTM1IREBgAGAwPxAA8DA/oDA/oADwMDAwAJA/cDABUDA/
oDAwPuAAAcAAAPAA8AKgAADAAcACwAPABMAFwAbAAABETMRATUzFTM1MxUlNTMVITUzFSU1MxUlNTMVAYDA
/oDAwMD9AMACQMD9wMD+gMADwAPA/
EADwMDAwMDAwMDAwMDAwMDAwAAAAAAFAAADAAPACcAAAwAHAA8AEwAXAAARNSEVAREzEQE1ITUhETMRATUz
FSU1MxUDAP0AwAJA/cACQMD9wMD+gMADAMDAAkACQP3A/oDAwAJA/
EAEgMDAwMDAAAAAAAIAAAbAAYAJAAADAAcAABERMxERNTMVwMAGwAGA/
oABgMDAAAIAAAbAAYAJAAADAAcAABE1MxU1ETMRwMAGwMDAwAGA/
oAAAAIAAAMAAYAFQAADAAcAABE1MxU1ETMRwMADAMDAwAGA/
oAAAAIAAAbAAYAJAAADAAcAABM1MxUlETMRwMD+gMAGwMDAwAGA/
oAAAAAEAAAGwAMACQAAAwAHAAsADwAAEREz
ETMRMxEBNTMVMzUzFcDAwP6AwMDABsABgP6AAYD+gAGAwMDAwAAEAAAGwAMACQAAAwAHAAsADwAAETUzFTM
1MxUlETMRMxEzEcDAwP6AwMDABsDAwMDAwAGA/
oABgP6AAAAEAAADAAMABUAAAwAHAAsADwAAETUzFTM1MxUlETMRMxEzEcDAwP6AwMDAAwDAwMDAwAGA/
oABgP6AAAAEAAAGwAMACQAAAwAHAAsADwAAEzUzFTM1MxUlETMRMxEzEcDAwMD9AMDAwAbAwMDAwMABgP6A
AYD+gAABAAAEgAJACQAACwAAExEjNTM1MxUzFSMRwMDAwMDABIADAMDAwMD9AAAAAAEAAASAAkAJAAATAAA
TNSM1MxEjNTM1MxUzFSMRMxUjFcDAwMDAwMDAwMAEgMDAAYDAwMDA/
oDAwAAAAAEAAAVAAYAGwAADAAARESERAYAFQAGA/
oAAAAABAAADwAJAB4AACwAAEREzFTMVMxUjFSMVwMDAwMADwAPAwMDAwMAAAwAAA8ADwAVAAAMABwALAAAR
ETMRMxEzETMRMxHAwMDAwAPAAYD+gAGA/
oABgP6AAAAAAAgAAAPABUAJAAADAAcACwAPABMAFwAbAB8AABE1MxUhETMRMxEzESURMxERNTMVNREzESUR
MxElNTMVwAJAwMDA+4DAwMD9AMACQMADwMDAAYD+gAGA/
oDAAYD+gAGAwMDAAYD+gMABgP6AwMDAAAADAAAGwAJACQAAAwAHAAsAABE1MxU1NTMVNTUzFcDAwAbAwMDA
wMDAwMAAAAYAAAbAA8AJAAADAAcACwAPABMAFwAAETUzFTM1MxUlNTMVMzUzFSU1MxUzNTMVwMDA/
oDAwMD+gMDAwAbAwMDAwMDAwMDAwMDAwMAAAAAAAwAABsACQAkAAAMABwALAAABNTMVJTUzFSU1MxUBgMD+
gMD+gMAGwMDAwMDAwMDAAAAAAAYAAAbAA8AJAAADAAcACwAPABMAFwAAATUzFTM1MxUlNTMVMzUzFSU1MxU
zNTMVAYDAwMD9AMDAwP0AwMDABsDAwMDAwMDAwMDAwMDAwAAAAwAAA8ABgAbAAAMABwALAAATNTMVJREzER
E1MxXAwP6AwMADwMDAwAGA/
oABgMDAAAAAAAMAAAPAAYAGwAADAAcACwAAETUzFTURMxEBNTMVwMD+gMADwMDAwAGA/
oABgMDAAAX+gAPAAkAJAAADAAcACwAPABMAAAE1MxU1ETMRETUzFTURMxERNTMV/
oDAwMDAwAPAwMDAAYD+gAGAwMDAAYD+gAGAwMAAAAQAAAYAAkAJAAADAAcACwAPAAATNTMVJREzETMRMxEB
NTMVwMD+gMDAwP6AwAYAwMDAAYD+gAGA/
oABgMDAAAACAAAGAADACQAAAwAHAAARETMRAzUzFcDAwAYAAYD+gAJAwMAAAAAAAQAABgACQAkAAAsAAAE1
IREzFTM1IzUhEQGA/oDAwMABgAYAwAGAwMDA/
QAAAAAAAwAABgACQAkAAAMABwANAAARNSEVNTUzFSURIRUjFQGAwP3AAkDABgDAwMDAwMABgMDAAAMAAAYA
AkAJAAADAAcAEQAAEzUzFTU1MxUhETM1IRUjFSMVwMDA/
cDAAYDAwAYAwMDAwMABgMDAwMAAAAMAAAYAAkAJAAADAAcADQAAETUzFTU1MxU1NSE1IRHAwP6AAkAGAMDA
wMDAwMDA/oAAAAACAAAGAAJACQAAAwAPAAATNTMVJREzNTMVMxEjNSMVwMD+gMDAwMDABgDAwMABgMDA/
oDAwAAAAAMAAAYAAkAJAAADAA0AEQAAETUzFQM1MzUzNTMRIxUDNTMVwMDAwMDAwMAHgMDA/
oDAwMD+gMACQMDAAAQAAAPAAkAGwAADAAcACwAPAAATNTMVJREzETMRMxEBNTMVwMD+gMDAwP6AwAPAwMDA
AYD+gAGA/
oABgMDAAAABAAADwAJABsAACwAAETUzNSM1MzUzETMVwMDAwMADwMDAwMD9wMAAAwAAA8ACQAbAAAcACwAP
AAARNTM1MxUzFQM1MxUlNSEVwMDAwMD9wAGAA8DAwMDAAYDAwMDAwAACAAADwAJABsAAAwANAAARNSEVNTU
jNSM1IRUzEQGAwMABgMADwMDAwMDAwMD+gAABAAADwAJABsAACwAAATUhETMVMzUjNSERAYD+gMDAwAGAA8
DAAYDAwMD9AAAAAAADAAADwAJABsAAAwAHAA0AABE1IRU1NTMVJREhFSMVAYDA/
cACQMADwMDAwMDAwAGAwMAAAwAAA8ACQAbAAAMABwARAAATNTMVNTUzFSERMzUhFSMVIxXAwMD9wMABgMDA
A8DAwMDAwAGAwMDAwAAAAwAAA8ACQAbAAAMABwANAAARNTMVNTUzFTU1ITUhEcDA/
oACQAPAwMDAwMDAwMD+gAAAAAIAAAPAAkAGwAADAA8AABM1MxUlETM1MxUzESM1IxXAwP6AwMDAwMADwMDA
wAGAwMD+gMDAAAAAAwAAA8ACQAbAAAMADQARAAARNTMVAzUzNTM1MxEjFQM1MxXAwMDAwMDAwAVAwMD+gMD
AwP6AwAJAwMAAAgAAA8ADwAkAAAMAGwAAATUhFQMRMxUhNTMRIzUjNTM1IxUjNSMVMxUjFQMA/
cDAwAJAwMDAwMDAwMDABsDAwP0ABUDAwPrAwMDAwMDAwMAAAAAABQAAA8ADwAkAAAMABwATABcAGwAAEzUh
FTU1MxUhETMVIRUhFSEVIRUBNTMVJTUhFcACQMD8QMABgP6AAYD+gAJAwP0AAkADwMDAwMDAA8DAwMDAwAM
AwMDAwMAAAAAABAAAA8ADwAkAAAMABwALACUAABE1MxUDNTMVJTUzFQE1IzUzNSM1MxEhNSERIzUjFTMVIx
UzFSMRwMDAAkDA/cDAwMDA/oADwMDAwMDAwAPAwMABgMDAwMDA/cDAwMDAAYDA/
oDAwMDAwP6AAAAAAAEAAAPAA8AJAAARAAARESEVIRUhNTMRIzUhFSEVIRUDAP3AAkDAwP3AAkD9wAPABUDA
wMD9AMDAwMAAAAQAAAPAA8AJAAADAAsAEQAVAAATNSEVJREzFSEVIRURNSE1MxEBNSEVwAMA/
EDAAwD9AAJAwPxAAwADwMDAwAJAwMDAAkDAwP6AAYDAwAAAAgAAA8ADwAkAAAcACwAAAREhNSEVIREBNSEV
AYD+gAPA/oD9wAPAA8ADAMDA/
QAEgMDAAAQAAAPAA8AJAAADAAcADwATAAABETMRATUhFTU1ITUhNTMRATUhFQMAwPxAAwD9AAMAwPxAAwAD
wAGA/
oABgMDAwMDAwP3AAkDAwAAGAAADwAPACQAAAwAHAAsADwAdACEAAAERMxEBNTMVNTUzFSU1MxUBETMRMxUj
FTMVIxUhFQM1MxUDAMD9wMDA/oDA/cDAwMDAwAJAwMAEgAGA/oABgMDAwMDAwMDA/
EAFQP6AwMDAwMAEgMDAAAAADAAAA8AFQAkAAAMABwALAA8AEwAXABsAHwAjACcAKwAvAAATNTMVITUzFSU1
MxUzNTMVIREzESU1MxUlNTMVJTUhFSU1MxUFETMRATUhFSE1MxXAwAJAwP6AwMDA/EDAAYDA/cDA/
cABgP3AwAJAwP0AAYABgMADwMDAwMDAwMDAwAGA/
oDAwMDAwMDAwMDAwMDAAYD+gAGAwMDAwAAAAAQAAAPAAwAJAAADAA8AEwAXAAABNSEVJTUjNTMRMxEzFSMV
ExEzEQE1MxUBgAGA/cDAwMDAwMDA/oDAA8DAwMDAwAJA/
cDAwAGAAkD9wAJAwMAAAAcAAAPABgAJAAADAAcACwAPABcAHwAjAAABNSEVATUzFSURMxEzETMRAREzFTMV
IxEhESM1MxEzEQE1MxUDwAJA/oDA/oDAwMD6AMDAwAGAwMDAAYDABIDAwAGAwMDAAYD+gAGA/
oD9AAVAwMD8QAMAwAGA+sAEgMDAAAAFAAADwAVACQAAAwAJAA0AEQAVAAATNSEVAREhESEVBREzESERMxEB
NSEVwAPA/QACQP6A/cDAA8DA+4ADwAPAwMABgAJA/oDAwAPA/
EADwPxAA8DAwAAABAAABgAFQAkAAAMABwAPABsAABE1IRU1NTMVJTUzNSEVIxUBETMVMzUzESMRIxEBgMD9
wMABgMABgMDAwMDABgDAwMDAwMDAwMDA/oADAMDA/
QABgP6AAAIAAAYABUAJAAAHABMAABMRIzUhFSMRIREzFTM1MxEjESMRwMACQMABgMDAwMDABgACQMDA/
cADAMDA/
QABgP6AAAAAAwAAA8AEgAhAAAMADQARAAATNSEVJREzESERMxEhFRE1IRXAA8D7gMADAMD8QAMAA8DAwMAD
AP6AAYD9wMADAMDAAAAGAAADwAYACQAAAwAHAAsAFQAhACUAAAE1MxUhETMRJREzESU1ITUzETMRIRElNTM
1IzUzNTMRMxUBNTMVAYDAAkDA/QDAAkD9wMDAAYD6AMDAwMDAAkDAA8DAwAGA/oDAAYD+gMDAwAGA/
oD+gMDAwMDA/
cDAAkDAwAAACQAAA8AGAAkAAAMABwALABUAGQAdACEALQAxAAABNTMVNREzETc1MxUDNTM1MzUzESMVATUz
FTM1MxUlETMRBTUzNSM1MzUzETMVATUzFQGAwMDAwMDAwMDA/
cDAwMD+gMD7gMDAwMDAAkDAA8DAwMABgP6AwMDA/oDAwMD+gMACQMDAwMDAAYD+gMDAwMDA/
cDAAkDAwAALAAADwAhACQAAAwAHAAsADwATABcAIwAnACsANwA7AAABNTMVITUzFSURMxEhETMRMxEzEQE1
MxURNTM1IzUzNTMRMxUTNTMVJREzEQU1MzUjNTM1MxEzFQE1MxUBgMAEgMD6wMADAMDAwPrAwMDAwMDAwMD
8QMD7gMDAwMDAAkDAA8DAwMDAwAGA/oABgP6AAYD+gAGAwMD9wMDAwMD9wMACQMDAwAGA/
oDAwMDAwP3AwAJAwMAABgAAA8AGAAkAAAMABwALABkAJQApAAABNTMVITUhFSURMxEhNSM1ITUzETMRMxUz
EQE1MzUjNTM1MxEzFQE1MxUBgMABgAGA/QDAAkDA/
oDAwMDA+gDAwMDAwAJAwAPAwMDAwMABgP6AwMDAAYD+gMD+gAGAwMDAwP3AwAJAwMAAAAAACAAAA8AGAAkA
AAMABwALABMAFwAlACkALQAAATUzFSE1IRUlETMRATUzNTMVMxUDNTMVATUjNSE1MxEzETMVMxEBNSEVITU
zFQGAwAGAAYD9AMD9AMDAwMDAAwDA/
oDAwMDA+gABgAMAwAPAwMDAwMABgP6AAYDAwMDAAYDAwP0AwMDAAYD+gMD+gAPAwMDAwAAAAAcAAAPABgAJ
AAADAAcACwAPABsAJwArAAABNTMVITUhFTU1MxUhETMRNzUjNTMRMxEhFSMVJTUzNSM1MzUzETMVATUzFQG
AwAGAAYDA/
EDAwMDAwAGAwPrAwMDAwMACQMADwMDAwMDAwMABgP6AwMDAAYD+gMDAwMDAwMD9wMACQMDAAAkAAAPABgAJ
AAADAAcACwAPABcAGwAnACsALwAAATUzFSE1IRU1NTMVIREzEQE1MzUzFTMVAzUzFQE1IzUzETMRIRUjFQE
1IRUhNTMVAYDAAYABgMD8QMD9AMDAwMDAAYDAwMABgMD6wAGAAwDAA8DAwMDAwMDAAYD+gAGAwMDAwAGAwM
D9wMDAAYD+gMDAAwDAwMDAAAAACAAAA8AGAAkAAAMABwALAA8AEwAfACkALQAAATUzFSE1IRU1NTMVIREzE
QE1IRUFNSM1MxEzESEVIxUBNSM1IzUhFTMRATUzFQGAwAGAAYDA/EDA/QABgAJAwMDAAYDA/
EDAwAGAwAJAwAPAwMDAwMDAwAGA/oABgMDAwMDAAYD+gMDAAYDAwMDA/
oABgMDAAAAAAAcAAAPABgAJAAADAAcACwAPABsAJwArAAABNTMVITUhFTU1MxUhETMRNzUjNTMRMxEhFSMV
JTUhETMVMzUjNSERATUzFQGAwAGAAYDA/EDAwMDAwAGAwPxA/oDAwMABgAJAwAPAwMDAwMDAwAGA/
oDAwMABgP6AwMDAwAGAwMDA/
QACQMDAAAAJAAADwAYACQAAAwAHAAsADwATAB0AIQAtADEAAAE1MxUhNTMVNTUzFSERMxERNTMVEREzNSEV
IxUjFQMRMxEFNTM1IzUzNTMRMxUBNTMVAYDAAkDAwPxAwMDAAYDAwMDA+4DAwMDAwAJAwAPAwMDAwMDAwAG
A/oABgMDA/oABgMDAwMACQAGA/
oDAwMDAwP3AwAJAwMAAAAsAAAPABgAJAAADAAcACwAPABMAFwAhACUAKQAvADMAAAE1MxUhNTMVNTUzFSER
MxEBNSEVITUzFRERMzUhFSMVIxUBNTMVIREzESURIRUjFSU1MxUBgMACQMDA/EDA/QABgAGAwMABgMDA/
QDAAYDA+4ACQMADAMADwMDAwMDAwMABgP6AAYDAwMDA/
oABgMDAwMACQMDAAYD+gMABgMDAwMDAAAAAAAgAAAPABgAJAAADAAcACwAPABsAHwArAC8AAAE1MxUhNTMV
JREzERE1MxURETM1MxUzESM1IxUDETMRBTUzNSM1MzUzETMVATUzFQGAwAJAwP0AwMDAwMDAwMDA+4DAwMD
AwAJAwAPAwMDAwMABgP6AAYDAwP6AAYDAwP6AwMACQAGA/
oDAwMDAwP3AwAJAwMAAAAAJAAADwAYACQAAAwAHAAsADwATAB8AIwAtADEAAAE1MxUhNTMVJREzEQE1IRUh
NTMVEREzNTMVMxEjNSMVAxEzESE1IzUjNSEVMxEBNTMVAYDAAkDA/QDA/
QABgAGAwMDAwMDAwMD9AMDAAYDAAkDAA8DAwMDAwAGA/
oABgMDAwMD+gAGAwMD+gMDAAkABgP6AwMDAwP6AAYDAwAAKAAADwAYACQAAAwAHAAsADwATAB8AIwAnAC0A
MQAAATUzFSE1MxUlETMRATUhFSE1MxURETM1MxUzESM1IxUBNTMVIREzESURIRUjFSU1MxUBgMACQMD9AMD
9AAGAAYDAwMDAwMD9AMABgMD7gAJAwAMAwAPAwMDAwMABgP6AAYDAwMDA/oABgMDA/
oDAwAJAwMABgP6AwAGAwMDAwMAACQAAA8AGAAkAAAMABwALAA8AGwAfACMAKQAtAAABNTMVITUzFSURMxER
NTMVEREzNTMVMxEjNSMVAREzESURMxElNSE1IRElNTMVAYDAAkDA/QDAwMDAwMDA/EDAAkDA/
QD+gAJAAkDAA8DAwMDAwAGA/oABgMDA/oABgMDA/oDAwAGAAYD+gMABgP6AwMDA/
oDAwMAAAAAFAAADwAVACQAAAwAHABMAFwAbAAABNTMVJTUzFSU1IzUzNTMVIRUhFRE1MxU1NTMVAkDA/
oDA/
oDAwMADwPxAwMADwMDAwMDAwMDAwMDAwAJAwMDAwMAABQAAA8AFQAkAAAMABwALAA8AGwAAETUzFSE1MxUl
NTMVITUzFQERIzUzNTMVMxUjEcADwMD7gMACQMD9wMDAwMDABgDAwMDAwMDAwMD9AAPAwMDAwPxAAAUAAAP
ABUAJAAADAAcAEwAXABsAAAE1MxU1NTMVNTUhNSE1MxUzFSMVATUzFSU1MxUCQMDA/
EADwMDAwP6AwP6AwAPAwMDAwMDAwMDAwMDAAkDAwMDAwAAFAAADwAVACQAAAwAHAAsADwAbAAATNTMVITUz
FSU1MxUhNTMVATUjNTMRMxEzFSMVwMACQMD7gMADwMD9AMDAwMDABUDAwMDAwMDAwMD9wMDAA8D8QMDAAAA
AAAUAAASABUAIQAADAAcAGwAfACMAAAE1MxUzNTMVJTUjNTM1MxUhNTMVMxUjFSM1IRURNTMVMzUzFQGAwM
DA/
QDAwMACQMDAwMD9wMDAwASAwMDAwMDAwMDAwMDAwMDAAkDAwMDAAAAABQDAA8AEgAkAAAMABwALAA8AIwAA
EzUzFSE1MxUBNTMVITUzFQE1IzUzESM1MzUzFTMVIxEzFSMVwMACQMD8QMACQMD9wMDAwMDAwMDAwAVAwMD
AwAGAwMDAwP0AwMACQMDAwMD9wMDAAAAABgAAA8AFQAkAAAMABwALAA8AEwAbAAABNTMVJTUzFSU1MxUlNT
MVJTUzFQURIRUhFSMRBIDA/oDA/oDA/oDA/oDA/
cADAP6AwAPAwMDAwMDAwMDAwMDAwMDAAwDAwP6AAAAAAAYAAAPABUAJAAADAAcACwAPABMAGwAAETUzFTU1
MxU1NTMVNTUzFTU1MxUXESM1ITUhEcDAwMDAwMD+gAMAA8DAwMDAwMDAwMDAwMDAwMABgMDA/
QAAAAAGAAADwAVACQAAAwAHAA8AEwAXABsAAAE1MxUlNTMVAzUhNTMRMxEBNTMVJTUzFSU1MxUDAMD+gMDA
AYDAwPxAwP6AwP6AwAVAwMDAwMD9wMDAAYD9AAMAwMDAwMDAwMAAAAAABgAAA8AFQAkAAAMACwAPABMAFwA
bAAABNTMVAREzETMVIRUDNTMVNTUzFTU1MxU1NTMVAYDA/cDAwAGAwMDAwMAFQMDA/
oADAP6AwMACQMDAwMDAwMDAwMDAAAANAAADwAVACQAAAwAHAAsADwATABcAGwAfACMAJwArAC8AMwAAETUz
FTM1IRUlNTMVITUzFSU1MxU1NTMVBREzEQE1MxUTETMRATUzFSE1MxUlNSEVMzUzFcDAAkD9AMACQMD9AMD
A/
QDAAkDAwMD7gMACQMD9AAJAwMADwMDAwMDAwMDAwMDAwMDAwMACQP3AAYDAwP6AAkD9wAJAwMDAwMDAwMDA
AAAEAAADwAPACQAABwALAA8AEwAAEREzESERMxEBETMRMxEzEQE1MxXAAkDA/QDAwMD+gMADwAMA/
cACQP0AAwABgP6AAYD+gAGAwMAABgAAA8AGAAkAAAMABwALAA8AEwAXAAABETMRATUzFSU1MxUFETMREREz
ERE1IRUBgMD+gMD+gMABgMDAAkADwAGA/oABgMDAwMDAwAGA/oABgAGA/
oABgMDAAAAHAAAEgAVAB4AAAwAHAAsADwATABcAGwAAEzUhFTM1IRUlETMRIREzESERMxEBNSEVMzUhFcAB
gMABgPuAwAGAwAGAwPuAAYDAAYAEgMDAwMDAAYD+gAGA/
oABgP6AAYDAwMDAAAAAAAMAAAMAA8AJAAADAAcACwAAETUhFTURMxERNSEVAYDAAYADAMDAwASA+4AEgMDA
AAMAAAPAA8AGwAADAAcACwAAETUzFSE1MxUBNTMVwAJAwP3AwAPAwMDAwAJAwMAAAAgAAAPABIAHgAADAAc
ACwAPABMAFwAbAB8AABE1MxUhNSEVJTUhFSE1MxUBNTMVITUhFSU1IRUhNTMVwAGAAYD9AAGAAYDA+4DAAY
ABgP0AAYABgMADwMDAwMDAwMDAwAGAwMDAwMDAwMDAAAEAAAPAA8AJAAATAAATESM1ITUhNSERMxEzFSEVI
RUhEcDAAYD+gAJAwMD+gAGA/
cADwAGAwMDAAYD+gMDAwP6AAAAABgAAA8AEgAkAAAMABwALAA8AEwAXAAARNSEVATUhFSU1IRUlNSEVNTUh
FTU1IRUEgP6AAYD9AAGA/
QABgAGAAYADwMDAAYDAwMDAwMDAwMDAwMDAwAAAAAYAAAPABIAJAAADAAcACwAPABMAFwAAETUhFQE1IRU1
NSEVNTUhFSU1IRUlNSEVBID7gAGAAYABgP0AAYD9AAGAA8DAwAGAwMDAwMDAwMDAwMDAwMAAAAABAAAFQAJ
AB4AAAwAAEREhEQJABUACQP3AAAAAAgAABUACQAeAAAMABwAAATUjFQcRIREBgMDAAkAGAMDAwAJA/
cAAAAEAAAPAA8AGwAALAAARETM1MzUzFTMVMxHAwMDAwAPAAYDAwMDA/oAAAAAABAAAA8A
DwAbAAAcACwAPABMAABERMxUhNTMRATUzFTM1MxUlNTMVwAJAwP0AwMDA/oDAA8ABgMDA/
oABgMDAwMDAwMAAAAAAAQAAA8ADAAkAAA8AABERMxUzFTMVMxUjFSMVIxXAwMDAwMDAA8AFQMDAwMDAwMAA
BAAAA8ADAAkAAAMABwALABcAAAE1MxU1NTMVJTUzFQERMxUzFSMRMxUjFQGAwMD+gMD9wMDAwMDABUDAwMD
AwMDAwP0ABUDAwP3AwMAAAAAIAAADwASACEAAAwAHAAsADwATABcAGwAfAAABNSEVJTUzFSE1MxUlETMRIR
EzEQE1MxUhNTMVJTUhFQGAAYD9wMABgMD8QMADAMD8QMABgMD9wAGAA8DAwMDAwMDAwAGA/
oABgP6AAYDAwMDAwMDAAAAAAAEAAAPABIAIQAATAAABNSM1IxEzNTM1IRUzFTMRIxUjFQGAwMDAwAGAwMDA
wAPAwMABgMDAwMD+gMDAAAQAAAPAA8AJAAAPABMAFwAbAAABNSE1ITUjNSEVIxUhFSEVAREzESERMxEBNSE
VAYD+gAGAwAJAwAGA/oD9wMACQMD9AAJAA8DAwMDAwMDAwAMAAYD+gAGA/
oABgMDAAAQAAAPABIAIQAADAAcADQAVAAATNSEVJREzESERITUhERM1IzUjNSERwAGA/
cDAAYD+gAJAwMDAAkADwMDAwAGA/oABgMD9wAGAwMDA/
cAAAQAAA8ADAAkAAAsAABM1IzUzNSERMxEjFcDAwAGAwMADwMDAwAMA+4DAAAABAAADwASACQAAEwAAEzUj
NTM1IREzFTMVMxEjNSMRIxXAwMABgMDAwMDAwAPAwMDAAwDAwP6AwP3AwAACAAADwASACQAABQAVAAABNTM
RIREBNSM1MzUzESERIxUjNSEVAwDA/oD+gMDAwAMAwMD+gAVAwAGA/
cD+gMDAwAMA+4DAwMAAAAAAAwAAA8ADAAkAAAMABwARAAABETMRATUzFQERMxEzFSMVIRUCQMD+gMD9wMDA
wAGABIABgP6AAYDAwP3ABUD9AMDAwAACAAADwAMACQAACQATAAABESM1MxEjNSERJREzETMVIxEzFQJAwMD
AAYD9AMDAwMADwAGAwAGAwPuAwASA/oDA/
oDAAAIAAAPAA8AJAAADAB8AAAE1IxUDNSM1MzUjNTMRMxUzETMVMxUjFTMVIxEjNSMRAkDAwMDAwMDAwMDA
wMDAwMAGAMDA/cDAwMDAAYDAAYDAwMDA/oDA/
oAAAAAAAwAAA8ABgAkAAAMABwALAAATETMRAREzERERMxHAwP6AwMADwAGA/oABgAJA/cACQAGA/
oAAAAADAAADwAGACQAAAwAHAAsAABERMxERETMRAREzEcDA/
oDAA8ABgP6AAYACQP3AAkABgP6AAAAAAAMAAAPABIAJAAANABEAFQAAExEjNTM1MxUhESMRIRERNSEVMzUz
FcDAwMADAMD9wAGAwMADwAMAwMDA/
EADAP0ABIDAwMDAAAMAAAPABUAJAAADAA8AFQAAATUzFSERIzUzNTMVMxUjESURITUhEQSAwPuAwMDAwMAC
QP3AAwADwMDAAwDAwMDA/
QDAA8DA+4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAFAAAACwAAABDAAAAXAAAAHwAAACDAAAAlgA
AAKgAAAC6AAAAxwAAAM4AAADUAAAA2wAAAO0AAAEFAAABEAAAASgAAAFDAAABVQAAAWgAAAF9AAABjQAAAa
gAAAG/
AAAByQAAAdMAAAHqAAAB9AAAAgsAAAIhAAACNQAAAkQAAAJXAAACagAAAncAAAKDAAACjgAAAp8AAAKrAAA
CtgAAAsMAAALaAAAC4gAAAvQAAAMGAAADFwAAAyUAAAM7AAADTQAAA2MAAANtAAADegAAA44AAAOgAAADvg
AAA9EAAAPlAAAD7gAABAIAAAQLAAAEHAAABCIAAAQrAAAEOwAABE0AAARgAAAEcQAABIIAAASQAAAEogAAB
LMAAAS9AAAEzQAABOIAAATsAAAE/
gAABQoAAAUbAAAFLgAABUAAAAVQAAAFYgAABXAAAAV7AAAFjgAABZsAAAW4AAAFyAAABdkAAAXtAAAF9AAA
BgcAAAYWAAAGIAAABjEAAAZCAAAGWAAABnIAAAZ8AAAGlwAABqAAAAa6AAAGywAABuAAAAbpAAAHAgAABwg
AAAcXAAAHJwAABzUAAAdBAAAHSgAAB1kAAAdlAAAHawAAB3MAAAd9AAAHkAAAB6UAAAfIAAAH6gAACA8AAA
gkAAAIOAAACEsAAAhfAAAIdgAACIoAAAicAAAIrgAACMUAAAjWAAAI5wAACPoAAAkMAAAJHAAACSwAAAk8A
AAJTQAACV8AAAl5AAAJjwAACaUAAAm7AAAJ1AAACesAAAn+AAAKHAAACjAAAApDAAAKWQAACmwAAAqEAAAK
kwAACqgAAAq+AAAK1AAACu0AAAsIAAALHgAACzUAAAtRAAALaAAAC38AAAuVAAALrgAAC8QAAAvRAAAL3QA
AC+wAAAv4AAAMEwAADCkAAAxAAAAMVwAADHEAAAyMAAAMowAADLAAAAzOAAAM3wAADPAAAA0EAAANFQAADS
sAAA0+AAANTgAADWAAAA10AAANhQAADZsAAA2vAAANwwAADdsAAA30AAAODAAADigAAA4+AAAOVAAADm4AA
A6KAAAOnwAADrMAAA7FAAAO2gAADukAAA79AAAPDQAADyMAAA8yAAAPRgAAD1YAAA9rAAAPfwAAD5gAAA+v
AAAPygAAD94AAA/
2AAAQCgAAEB8AABAzAAAQSQAAEF0AABB2AAAQgwAAEJcAABCrAAAQvAAAEMoAABDUAAAQ4QAAEO0AABD7AA
ARBgAAERQAABEbAAARMAAAEUcAABFdAAARcwAAEY4AABGmAAARvAAAEcoAABHXAAAR4gAAEe8AABH7AAASC
AAAEhQAABIhAAASMQAAEj8AABJXAAASaAAAEn0AABKMAAASpwAAErsAABLLAAAS4AAAEu8AABMDAAATFwAA
EyoAABNBAAATWgAAE3YAABOHAAAToQAAE7gAABPNAAAT4gAAE/
UAABQOAAAUJgAAFEEAABRZAAAUdQAAFJAAABSqAAAUwAAAFN4AABT5AAAVBwAAFRcAABUpAAAVOwAAFUkAA
BVbAAAVcAAAFYUAABWWAAAVpAAAFbcAABXIAAAV2wAAFe0AABYGAAAWHAAAFi0AABY8AAAWVgAAFmwAABaH
AAAWoAAAFrgAABbSAAAW6AAAFv8AABcTAAAXLwAAF0gAABdUAAAXYgAAF3IAABeDAAAXlAAAF6gAABe3AAA
XywAAF+AAABf1AAAYDgAAGCkAABhJAAAYZwAAGHwAABiRAAAYrQAAGMYAABjbAAAY8wAAGQsAABksAAAZTg
AAGXIAABmLAAAZoQAAGa8AABnAAAAZzQAAGd4AABnuAAAZ+gAAGgYAABoMAAAaFQAAGh4AABonAAAaLQAAG
jcAABo+AAAaSwAAGlkAABpiAAAaawAAGnUAABp8AAAaiAAAGpsAABqhAAAasAAAGsAAABrOAAAa4wAAGvkA
ABsTAAAbIwAAGzIAABtFAAAbTQAAG2AAABtsAAAbgAAAG4wAABugAAAbqwAAG8IAABvWAAAb6AAAG/
oAABwKAAAcGwAAHCUAABwzAAAcSAAAHFIAABxlAAAcewAAHJkAAByrAAAcwQAAHNIAABzqAAAc/
wAAHRUAAB0kAAAdLgAAHUUAAB1WAAAdawAAHX8AAB2UAAAdpgAAHbwAAB3IAAAd2wAAHeIAAB34AAAeCAAA
HhcAAB4rAAAeQgAAHlMAAB5dAAAebgAAHn8AAB6PAAAemQAAHqYAAB66AAAe2AAAHuoAAB79AAAfCgAAHx0
AAB8uAAAfPwAAH1YAAB9rAAAffAAAH44AAB+gAAAfrgAAH8MAAB/ZAAAf5AAAH/
UAACACAAAgFQAAICkAACA4AAAgVQAAIG0AACCAAAAgjAAAIJsAACCrAAAgvgAAIMYAACDbAAAg5wAAIQAAA
CEWAAAhKAAAIUAAACFXAAAhYgAAIXQAACGAAAAhkQAAIZsAACGpAAAhvAAAIcYAACHZAAAh7wAAIg0AACIZ
AAAiJgAAIjIAACJBAAAiUQAAImMAACJyAAAiiAAAIp0AACKuAAAivgAAItQAACLmAAAi7gAAIwMAACMUAAA
jLQAAIz8AACNRAAAjaAAAI34AACOJAAAjmwAAI6cAACO4AAAjwgAAI9UAACPoAAAj8gAAJAIAACQgAAAkPQ
AAJEkAACRWAAAkYgAAJHEAACSAAAAkkQAAJJ8AACS1AAAkygAAJNsAACTyAAAlCAAAJR8AACUtAAAlQgAAJ
VQAACVeAAAlawAAJXsAACWNAAAloQAAJbUAACXLAAAl4wAAJfkAACYFAAAmGAAAJi4AACZBAAAmUwAAJmcA
ACZ7AAAmlQAAJq8AACbAAAAm0gAAJuIAACb5AAAnAgAAJwsAACcYAAAnJQAAJ0EAACdcAAAndQAAJ4oAACe
jAAAnuQAAJ80AACfhAAAn+QAAKBAAACgfAAAoLgAAKEQAAChaAAAobQAAKIAAACiXAAAorgAAKM4AACjtAA
Ao/
AAAKQsAACkcAAApLQAAKToAAClLAAApUgAAKXAAACmPAAApnAAAKakAACm5AAApyQAAKdgAACnnAAAp+wAA
Kg0AACoUAAAqKAAAKj4AACpQAAAqbAAAKn0AACqOAAAqowAAKrgAACrQAAAq5wAAKv4AACsVAAArKAAAKzo
AACtWAAArbAAAK4MAACuXAAArsAAAK8YAACveAAAr8QAALAgAACwbAAAsMgAALEUAACxXAAAscAAALIcAAC
yQAAAsmQAALKIAACysAAAsuwAALMoAACzZAAAs6AAALPMAAC0CAAAtCQAALRMAAC0gAAAtPAAALUcAAC1bA
AAtaAAALXwAAC2JAAAtlQAALacAAC23AAAtwQAALc0AAC3aAAAt6QAALfYAAC4EAAAuEwAALiMAAC4tAAAu
OwAALkcAAC5TAAAuYAAALm8AAC58AAAuigAALpkAAC6uAAAuxgAALuIAAC7xAAAvBQAALxIAAC8lAAAvQQA
AL2kAAC9+AAAvnQAAL7MAAC/JAAAv2gAAL+sAADAKAAAwMAAAMF4AADB/
AAAwpAAAMMUAADDrAAAxEAAAMTIAADFYAAAxggAAMacAADHOAAAx9gAAMhwAADIyAAAySAAAMl4AADJ1AAA
yjwAAMqoAADLDAAAy2QAAMvIAADMJAAAzMwAAM0YAADNdAAAzdwAAM4MAADOPAAAzqgAAM7sAADPRAAAz5w
AAM+4AADP4AAA0AwAANBUAADQhAAA0NQAANFIAADRhAAA0eQAANI0AADSYAAA0pwAANLoAADTLAAA03AAAN
PMAADUBAAA1DwAANSEAADU0AABAAAAAgAANpQQ/
l8PPPUACwYAAAAAANA0HEwAAAAA0DOsHP6AAkAIQAqAAAAACAACAAEAAAAAAYAAAAAAAAABgAAAAYAAAAGA
AAADAAAABIAAAASAAAAEgAAABIAAAAGAAAADwAAAA8AAAAPAAAAEgAAAAYAAAASAAAABgAAABIAAAASAAAA
EgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAABgAAAAYAAAAPAAAAEgAAAA8AAAASAAAAFQA
AABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAB
IAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAAMAAAAEgAAABIAA
AAJAAAAEgAAABIAAAASAAAAEgAAABIAAAAPAAAAEgAAABIAAAAGAAAAEgAAAA8AAAAJAAAAEgAAABIAAAAS
AAAAEgAAABIAAAASAAAAEgAAAAwAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAPAAAABgAAAA8AAAAVAAA
ABgAAAA8AAAASAAAAEgAAABIAAAAGAAAAEgAAAA8AAwAYAAAADAAAAA8AAAAPAAAAGAAAABIAAAAMAAAAEg
AAAAwAAAAMAAAACQAAABIAAAASAAAABgAAAAwAAwAMAAAADAAAAA8AAAAbAAAAGwAAABsAAAASAAAAEgAAA
BIAAAASAAAAEgAAABIAAAASAAAAHgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAAAwAAAAMAAAADAAAABUA
AAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAPAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAA
SAAAAEgAAABIAAAASAAAAEgAAABIAAAAeAAAAEgAAABIAAAASAAAAEgAAABIAAAAGA/0ACQAAAAkD/
QAJA/
0AEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAE
gAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAA
ABgAAAAVAAAAFQAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABI
AAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABUAAAAPA/0ADwP9AAwAAAAJA/0ADAAAAAkD/
QAMAAAACQAAAAwAAAAGAAAAHgAAABgAAAASAAAAFQAAABIAAAAPAAAADwAAABIAAAAJAAAAEgAAAAkAAAAS
AAAADAAAABIAAAAMAAAAFQAAAAwAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAYAAAAEgAAABIAAAASAAA
AEgAAABIAAAASAAAAEgAAABIAAAAeAAAAHgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEg
AAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAAwAAAASAAAAEgAAABIAAAAMAAAAEgAAABIAAAASAAAAEgAAA
BIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIA
AAASAAAAEgAAABIAAAAPAAAAEgAAAA8AAAASAAAAEgAAABIAAAASAAAAEgAAABUAAAAVAAAAEgAAABIAAAA
SAAAADwAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAB4AAAAeAAAAEgAAABIAAAASAAAAEgAAABIAAAAMAA
AAEgAAABIAAAASAAAADAAAAAwAAAAMAAAACQAAAAkAAAAMAAAACQADAAwAAAAJAAAAEgAAAA8AAAAJAAAAC
QAAAAYAAAAGAAAAEgAAABgAAAAGAAAAGAAAABgAAAASAAAAGAAAABgAAAAYAAAADwP9ABIAAAASAAAAEgAA
ABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABI
AAAASAAAAEgAAABIAAAASAAAAEgAAAAwAAAASAAAAEgAAABIAAAASAAAABgAAABIAAAASAAAAEgAAABIAAA
ASAAAAEgAAABIAAAASAAAADwAAAAYAAAAPAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASA
AAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAVAAAA
EgAAABIAAAASAAAADAAAAAwAAAASAAAAHgAAAB4AAAAVAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgA
AABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAB
IAAAASAAAAEgAAABIAAAAVAAAAEgAAABIAAAAVAAAAFQAAABgAAAASAAAAEgAAABIAAAASAAAAEgAAABIAA
AASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAA8AAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAS
AAAAEgAAABIAAAAYAAAAEgAAABUAAAASAAAAEgAAABUAAAASAAAAFQAAAA8AAAASAAAAEgAAABIAAAASAAA
AEgAAABUAAAASAAAAEgAAABIAAAAGAAAADAAAABIAAAAbAAAAGwAAABUAAAAPAAAAEgAAABIAAAASAAAAFQ
AAABUAAAASAAAAEgAAABIAAAASAAAAFQAAABUAAAAVAAAAEgAAABIAAAASAAAAEgAAABIAAAAVAAAAFQAAA
BUAAAAVAAAAEgAAABIAAAAVAAAADwAAABIAAAASAAAAFQAAABIAAAAVAAAAFQAAABIAAAASAAAAEgAAABIA
AAASAAAAEgAAABUAAAAVAAAAFQAAABUAAAASAAAAEgAAABIAAAASAAAABgAAABIAAAASAAAAFQAAABUAAAA
SAAAAEgAAABUAAAAVAAAAFQAAABIAAAAGAAAAEgAAABIAAAAeAAAAHgAAABIAAAASAAAAEgAAABIAAAASAA
AAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAE
gAAABIAAAASAAAAEgAAABIAAAAJAAAACQAAAAkAAAAJAAAADwAAAA8AAAAPAAAADwAAAAwAAAAMAAAACQAA
AAwAAAASAAAAGAAAAAwAAAASAAAADAAAABIAAAAJAAAACQAAAAwD+gAMAAAABgAAAAwAAAAMAAAADAAAAAw
AAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAASAAAAEgAAABIAAA
ASAAAAEgAAABIAAAASAAAAEgAAABgAAAAPAAAAGwAAABgAAAAYAAAAGAAAABUAAAAbAAAAGwAAACQAAAAbA
AAAGwAAABsAAAAbAAAAGwAAABsAAAAbAAAAGwAAABsAAAAbAAAAGwAAABsAAAAYAAAAGAAAABgAAAAYAAAA
GAAAABUAAwAYAAAAGAAAABgAAAAYAAAAGAAAABIAAAAbAAAAGAAAABIAAAASAAAAFQAAABIAAAAVAAAAFQA
AAAwAAAAMAAAAEgAAABIAAAAPAAAADwAAABUAAAAVAAAAEgAAABUAAAAPAAAAFQAAABUAAAAPAAAADwAAAB
IAAAAJAAAACQAAABUAAAAYAAAAAAQAB//
8AAgAAAAEAAAAAAAEAAAAOAAAAGAAgAAAAAgABAAEC1AABAAQAAAACAAAAAQAAAAEAAAAAABoBPgABAAAAA
AAAABsAAAABAAAAAAABAAsAGwABAAAAAAACAAcAJgABAAAAAAADAA8ALQABAAAAAAAEAA8APAABAAAAAAAF
AAsASwABAAAAAAAGABMAVgABAAAAAAAIABYAaQABAAAAAAAJAAwAfwABAAAAAAALABYAiwABAAAAAAAMABY
AoQABAAAAAAANACgAtwABAAAAAAATACkA3wADAAEECQAAADYBCAADAAEECQABABYBPgADAAEECQACAA4BVA
ADAAEECQADAB4BYgADAAEECQAEAB4BgAADAAEECQAFABYBngADAAEECQAGACYBtAADAAEECQAIACwB2gADA
AEECQAJABgCBgADAAEECQALACwCHgADAAEECQAMACwCSgADAAEECQANAFACdgADAAEECQATAFICxkNvcHly
aWdodCBBbmRyZXcgVHlsZXIgMjAxNE1pbmVjcmFmdGlhUmVndWxhck1pbmVjcm
FmdGlhIDIuME1pbmVjcmFmdGlhIDIuMFZlcnNpb24gMi4wTWluZWNyYWZ0aWEtUmVndWxhcmh0dHA6Ly9hb
mRyZXd0eWxlci5uZXRBbmRyZXcgVHlsZXJodHRwOi8vYW5kcmV3dHlsZXIubmV0aHR0cDovL2FuZHJld3R5
bGVyLm5ldENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24gU2hhcmUgQWxpa2VGaXZlIGJpZyBxdWFja2l
uZyB6ZXBoeXJzIGpvbHQgbXkgd2F4IGJlZABDAG8AcAB5AHIAaQBnAGgAdAAgAEEAbgBkAHIAZQB3ACAAVA
B5AGwAZQByACAAMgAwADEANABNAGkAbgBlAGMAcgBhAGYAdABpAGEAUgBlAGcAdQBsAGEAcgBNAGkAbgBlA
GMAcgBhAGYAdABpAGEAIAAyAC4AMABNAGkAbgBlAGMAcgBhAGYAdABpAGEAIAAyAC4AMABWAGUAcgBzAGkA
bwBuACAAMgAuADAATQBpAG4AZQBjAHIAYQBmAHQAaQBhAC0AUgBlAGcAdQBsAGEAcgBoAHQAdABwADoALwA
vAGEAbgBkAHIAZQB3AHQAeQBsAGUAcgAuAG4AZQB0AEEAbgBkAHIAZQB3ACAAVAB5AGwAZQByAGgAdAB0AH
AAOgAvAC8AYQBuAGQAcgBlAHcAdAB5AGwAZQByAC4AbgBlAHQAaAB0AHQAcAA6AC8ALwBhAG4AZAByAGUAd
wB0AHkAbABlAHIALgBuAGUAdABDAHIAZQBhAHQAaQB2AGUAIABDAG8AbQBtAG8AbgBzACAAQQB0AHQAcgBp
AGIAdQB0AGkAbwBuACAAUwBoAGEAcgBlACAAQQBsAGkAawBlAEYAaQB2AGUAIABiAGkAZwAgAHEAdQBhAGM
AawBpAG4AZwAgAHoAZQBwAGgAeQByAHMAIABqAG8AbAB0ACAAbQB5ACAAdwBhAHgAIABiAGUAZAAAAAAAAw
AAAAMAAAAeAAEAAAAAAyYAAwABAAAFMAAAAAQDCAAAAK4AgAAGAC4AfgCsAX8BgwGPAZIBtwHrAe8B/
wIbAjcCWQKSAscCywLdA3UDfgOKA4wDoQPOA9cEXwRjBHUEkwSdBKMEqwSzBLsEwgTKBM8E1QTZBOkE8R6F
Hp4e8yAjICYgMCAzIDYgOiBEIHEgeSCJIKkgrCCuILEgtCC6IQUhEyEXISAhIiEuIV4hmSIGIhoiHiIrIjQ
iSCJgImUloSWzJbclyyXPJkAmQiZrJm8n6fsC//
8AAAAgAKEArgGCAY8BkgG1AeQB7gH6AhgCNwJZApICxgLJAtgDdAN+A4QDjAOOA6MD1wQABGIEcgSKBJYEo
ASqBK4EtgTABMUEzQTSBNgE4gTsHoAenh7yIBggJiAwIDIgNSA5IEQgcCB0IIAgqSCsIK4gsSC0ILghBSET
IRYhICEiIS4hUCGQIgUiGiIeIisiNCJIImAiZCWgJbIltiXLJc8mQCZCJmkmbSfo+wH////j/8H/wP+
+AAAAAP+P/2P/Yf9X/z8AAAAAAAD+mP6X/ov99QAA/egAAP3m/eUAAP21/bP9pf2R/Y/9jf2H/YX9g/1//
X39e/15/Xf9b/
1t498AAON04lAAAAAA4kTiQ+JBAADiDeIL4gUAAAAAAAAAAAAA4dwAAAAA4YMAAAAAAADhTuEd4LIAAAAAA
AAAAAAAAADgW90h3RHdDwAAAAAAAAAA3GLcYdrpB9IAAQAAAAAAAAAAAKYApgAAAAAAAAAAAAAAnACcAJwA
AAAAAAAAAACUAAAAkgAAAAAAjgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbAAAAAAAaAB
oAAAAAAAAAGIAAAAAAAAAXABcAFwAXABcAAAAWgBaAAAAWABYAFgAAAAAAAAAUgBSAFIAUgBSAFIAAAAAAA
AAAABKAEoASgBKAAAAAAAAAAAAAAFCAUMBWwFcAV0BawFzAbQCZQJ0AnUCfAKPApACkQKSApMClwKYApsCn
AKdArkCugK7ArwCvQK+AscCyALJAsoABgIKAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAABAAIAAAAAAAAAAgAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABA
AEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALw
AwADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/
AEAAQQBCAEMARABFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4
AXwBgAGEAAACEAIUAhwCJAJEAlgCcAKEAoACiAKQAowClAKcAqQCoAKoAqwCtAKwArgCvALEAswCyALQAtg
C1ALoAuQC7ALwCcABwAGMAZABoAnIAdgCfAG4AagKcAHQAaQK+AIYAmAK6AHECvwLAAGYAdQAAAAAAAAGlA
rsAawB6AY4ApgC4AH8AYgBtArkBQwK9ArgAbAB7AnQAAACAAIMAlQESARMAAAAAAmwCbQJoAmkAtwAAAL8B
OAJ8ApACegJ7AtMC1AJxAHcCagJuAnUAggCKAIEAiwCIAI0AjgCPAIwAkwCUAAAAkgCaAJsAmQDxAV4BZwB
vAWMBZAFlAHgBaAFmAV8ABAMIAAAArgCAAAYALgB+AKwBfwGDAY8BkgG3AesB7wH/
AhsCNwJZApICxwLLAt0DdQN+A4oDjAOhA84D1wRfBGMEdQSTBJ0EowSrBLMEuwTCBMoEzwTVBNkE6QTxHoU
enh7zICMgJiAwIDMgNiA6IEQgcSB5IIkgqSCsIK4gsSC0ILohBSETIRchICEiIS4hXiGZIgYiGiIeIisiNC
JIImAiZSWhJbMltyXLJc8mQCZCJmsmbyfp+wL//
wAAACAAoQCuAYIBjwGSAbUB5AHuAfoCGAI3AlkCkgLGAskC2AN0A34DhAOMA44DowPXBAAEYgRyBIoElgSg
BKoErgS2BMAExQTNBNIE2ATiBOwegB6eHvIgGCAmIDAgMiA1IDkgRCBwIHQggCCpIKwgriCxILQguCEFIRM
hFiEgISIhLiFQIZAiBSIaIh4iKyI0IkgiYCJkJaAlsiW2JcslzyZAJkImaSZtJ+j7Af///+P/wf/A/
74AAAAA/4//Y/9h/1f/PwAAAAAAAP6Y/pf+i/31AAD96AAA/eb95QAA/bX9s/2l/ZH9j/2N/Yf9hf2D/X/
9ff17/Xn9d/1v/
W3j3wAA43TiUAAAAADiROJD4kEAAOIN4gviBQAAAAAAAAAAAADh3AAAAADhgwAAAAAAAOFO4R3gsgAAAAAA
AAAAAAAAAOBb3SHdEd0PAAAAAAAAAADcYtxh2ukH0gABAAAAAAAAAAAApgCmAAAAAAAAAAAAAACcAJwAnAA
AAAAAAAAAAJQAAACSAAAAAACOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsAAAAAABoAG
gAAAAAAAAAYgAAAAAAAABcAFwAXABcAFwAAABaAFoAAABYAFgAWAAAAAAAAABSAFIAUgBSAFIAUgAAAAAAA
AAAAEoASgBKAEoAAAAAAAAAAAAAAUIBQwFbAVwBXQFrAXMBtAJlAnQCdQJ8Ao8CkAKRApICkwKXApgCmwKc
Ap0CuQK6ArsCvAK9Ar4CxwLIAskCyg=="
)});
Font:Register("proggy_font", 400, "normal", {Id = "proggy-
font.ttf", Font = crypt.base64.decode(request({Url =
"https://raw.githubusercontent.com/Ethereal58/Ethereal/main/Fonts/
Proggy"}).Body)});
Font:Register("small_font", 400, "normal", {Id = "smallest-
pixel.ttf", Font = crypt.base64.decode(request({Url =
"https://raw.githubusercontent.com/Ethereal58/Ethereal/main/Fonts/
smallest_pixel"}).Body)});
end;
end;
end;
end;
--// Tables
local GameConnections = {};
local Connections = {};
local Loops = {};
local GameFramework = {Last = tick()};
local Hooks = {};
local Visuals = {};
local CustomObjects = {};
local UsableModules = {};
local ESPConstructor = {};
ESPConstructor.__index = ESPConstructor;
local Textures = {
["Scan"] = "rbxassetid://9305457875",
["Scanning-hexagon"] = "rbxassetid://89067318",
["Hexagon"] = "rbxassetid://2930247814",
["Alien"] = "rbxassetid://459487304",
["Triangles"] = "rbxassetid://1478668577",
["None"] = "",
["Illusion"] = "rbxassetid://5841714970",
["Ground"] = "rbxassetid://11619804506",
["Lasers"] = "rbxassetid://398330154",
["Player"] = "rbxassetid://4504366173",
["Stars"] = "rbxassetid://4952604311",
["Lidar"] = "rbxassetid://965496575",
["Pixels"] = "rbxassetid://140652787",
["Pixels2"] = "rbxassetid://11780157037",
["Lidar2"] = "rbxassetid://13173535584",
["CityScan"] = "rbxassetid://951824492",
["Clouds"] = "rbxassetid://1723973648",
["Rainbow"] = "rbxassetid://10037165803",
["Scanning"] = "rbxassetid://5843010904",
["Groove"] = "rbxassetid://10785404176",
["Waves"] = "rbxassetid://6151763633",
["Corrupted"] = "rbxassetid://1212976946",
["Tiles"] = "rbxassetid://85065287",
["Netflix"] = "rbxassetid://8313072955",
["Circle"] = "rbxassetid://13996983074",
["Scratches"] = "rbxassetid://4952604311",
["Webz"] = "rbxassetid://14410238962",
["Pixels3"] = "rbxassetid://12561493608",
["Outline"] = "rbxassetid://12361388066",
["Webz2"] = "rbxassetid://12646281757",
["Outline2"] = "rbxassetid://5125811022",
};
local Keys = {
["Unknown"] = "UNK";
["Backspace"] = "BACK";
["Tab"] = "TAB";
["Clear"] = "CLR";
["Return"] = "RTN";
["Pause"] = "PSE";
["Escape"] = "ESC";
["Space"] = "SPC";
["QuotedDouble"] = '"';
["Hash"] = "#";
["Dollar"] = "$";
["Percent"] = "%";
["Ampersand"] = "&";
["Quote"] = "'";
["LeftParenthesis"] = "(";
["RightParenthesis"] = " )";
["Asterisk"] = "*";
["Plus"] = "+";
["Comma"] = ",";
["Minus"] = "-";
["Period"] = ".";
["Slash"] = "`";
["Three"] = "THR";
["Seven"] = "SEV";
["Eight"] = "EGHT";
["Colon"] = ":";
["Semicolon"] = ";";
["LessThan"] = "<";
["GreaterThan"] = ">";
["Question"] = "?";
["Equals"] = "=";
["At"] = "@";
["LeftBracket"] = "LB";
["RightBracket"] = "RB";
["BackSlash"] = "BSL";
["Caret"] = "^";
["Underscore"] = "_";
["Backquote"] = "`";
["LeftCurly"] = "{";
["Pipe"] = "|";
["RightCurly"] = "}";
["Tilde"] = "~";
["Delete"] = "DEL";
["End"] = "END";
["KeypadZero"] = "NP0";
["KeypadOne"] = "NP1";
["KeypadTwo"] = "NP2";
["KeypadThree"] = "NP3";
["KeypadFour"] = "NP4";
["KeypadFive"] = "NP5";
["KeypadSix"] = "NP6";
["KeypadSeven"] = "NP7";
["KeypadEight"] = "NP8";
["KeypadNine"] = "NP9";
["KeypadPeriod"] = "NPP";
["KeypadDivide"] = "NPD";
["KeypadMultiply"] = "NPM";
["KeypadMinus"] = "NPM";
["KeypadPlus"] = "NPP";
["KeypadEnter"] = "NPE";
["KeypadEquals"] = "NPE";
["Insert"] = "INS";
["Home"] = "HOME";
["PageUp"] = "PGUP";
["PageDown"] = "PGD";
["RightShift"] = "RSHIFT";
["LeftShift"] = "LSHIFT";
["RightControl"] = "CTRL";
["LeftControl"] = "CTRL";
["LeftAlt"] = "ALT";
["RightAlt"] = "ALT";
};
local PreferredDistances = {
["Eastern War"] = "studs";
["Scorched Earth"] = "studs";
["Bad Business"] = "studs";
["Combat Warriors"] = "studs";
["State Of Anarchy"] = "studs";
["Frontlines"] = "studs";
["Games Unite"] = "studs";
["State Of Anarchy"] = "studs";
["Lone Survival"] = "studs";
["Aftermath"] = "studs";
["Universal"] = "studs";
["Gunfight Arena"] = "studs";
["Project Delta"] = "meters";
["Fallen"] = "studs";
["Blackout"] = "studs";
["Deadline"] = "studs";
["Apocalypse Rising 2"] = "studs";
["Criminality"] = "studs";
["Blood and Iron"] = "studs";
["Korrupt Zombies"] = "studs";
["The Streets"] = "studs";
["Counter Blox"] = "studs";
["Arsenal"] = "studs";
};
local DistanceConversions = {
["studs"] = {Conversion = 1, Suffix = "s"};
["meters"] = {Conversion = 3, Suffix = "m"};
["feet"] = {Conversion = 3.2808, Suffix = "ft"};
["yards"] = {conversion = 1.09361, Suffix = "yd"};
};
local PartSizes = {
["Head"] = Vector3.new(2, 1, 1),
["Torso"] = Vector3.new(2, 2, 1),
["Left Arm"] = Vector3.new(1, 2, 1),
["Right Arm"] = Vector3.new(1, 2, 1),
["Left Leg"] = Vector3.new(1, 2, 1),
["Right Leg"] = Vector3.new(1, 2, 1)
};
local WeaponIcons = {
["SABRE"] = "rbxassetid://18398208185";
["MUSKET"] = "rbxassetid://18398204800";
["ERADICATOR"] = "rbxassetid://18398202965";
["ERADICATOR II"] = "rbxassetid://18398202965";
["R700"] = "rbxassetid://18306916832";
["MK23"] = "rbxassetid://18306918089";
["HL-MK2"] = "rbxassetid://16600914824";
["SBL-MK2"] = "rbxassetid://16600913093";
["SBL-MK3"] = "rbxassetid://16600910826";
["SBL-MK1"] = "rbxassetid://16600907792";
["UMP-45"] = "rbxassetid://16453257299";
["METAL-BAT"] = "rbxassetid://16453237275";
["FIRE-AXE"] = "rbxassetid://16453246633";
["GOLF-CLUB"] = "rbxassetid://16453248110";
["WRENCH"] = "rbxassetid://16453258223";
["BALISONG"] = "rbxassetid://16453236126";
["SLAYERSWORD"] = "rbxassetid://16453253528";
["FALLEN-SWORD"] = "rbxassetid://16453245012";
["LONGSWORD"] = "rbxassetid://16453245012";
["_FALLENBLADE"] = "rbxassetid://16453245012";
["NUNCHUCKS"] = "rbxassetid://16453249948";
["SAVAGE"] = "rbxassetid://16453252231";
["TAIGA"] = "rbxassetid://16453254534";
["CHAINSAW"] = "rbxassetid://16453241880";
["CURSEDDAGGER"] = "rbxassetid://16453243985";
["BATON"] = "rbxassetid://16453238973";
["BBATON"] = "rbxassetid://16453238973";
["BAT"] = "rbxassetid://16453237275";
["CROWBAR"] = "rbxassetid://16453242964";
["TEC-9"] = "rbxassetid://16453255860";
["SHOVEL"] = "rbxassetid://16453793023";
["HAMMER"] = "rbxassetid://16453792211";
["UTS-15"] = "rbxassetid://16057580424";
["TOMMY"] = "rbxassetid://16057579477";
["TOMMY-GUN"] = "rbxassetid://16057579477";
["SCOUT"] = "rbxassetid://16057578067";
["SAWEDOFF"] = "rbxassetid://16057576404";
["SAWED-OFF"] = "rbxassetid://16057576404";
["SAWNOFF"] = "rbxassetid://16057576404";
["SAWN-OFF"] = "rbxassetid://16057576404";
["MP7"] = "rbxassetid://16057575232";
["MARE"] = "rbxassetid://16057574228";
["MAGNUM"] = "rbxassetid://16057573220";
["MACHETE"] = "rbxassetid://16057572342";
["M320"] = "rbxassetid://16057571337";
["M60"] = "rbxassetid://16057570317";
["ITHACA"] = "rbxassetid://16057569300";
["ITHACA-37"] = "rbxassetid://16057569300";
["HAWKEYE"] = "rbxassetid://16057568173";
["BFG50"] = "rbxassetid://16057562279";
["BFG"] = "rbxassetid://16057562279";
["BFG-50"] = "rbxassetid://16057562279";
["BFG-1"] = "rbxassetid://16057562279";
["M24"] = "rbxassetid://16057225098";
["GL06"] = "rbxassetid://16057226421";
["GL-06"] = "rbxassetid://16057226421";
["MAC10"] = "rbxassetid://16057228244";
["MAC-10"] = "rbxassetid://16057228244";
["MAC11"] = "rbxassetid://16057228244";
["MAC 11"] = "rbxassetid://16057228244";
["SPAS12"] = "rbxassetid://16057229801";
["SPAS"] = "rbxassetid://16057229801";
["UZI"] = "rbxassetid://16057231171";
["SAR"] = "rbxassetid://16057232685";
["HANDMADE AK"] = "rbxassetid://16057233966";
["ZENITCO AK"] = "rbxassetid://16057235588";
["SPAS 12"] = "rbxassetid://16057229801";
["MAC 10"] = "rbxassietd://16057228244";
["CROSSBOW"] = "rbxassetid://16057223969";
["CUTLASS"] = "rbxassetid://15145588731";
["AI4"] = "rbxassetid://15135074460";
["AI2"] = "rbxassetid://15135074460";
["BANDAGE"] = "rbxassetid://15135072205";
["AA2"] = "rbxassetid://15135070561";
["WOUNDDRESSING"] = "rbxassetid://15135072205";
["LIGHTER"] = "rbxassetid://15134129301";
["GOLDENLIGHTER"] = "rbxassetid://15134129301";
["M84"] = "rbxassetid://15133286887";
["RGD5"] = "rbxassetid://15133291099";
["F1"] = "rbxassetid://15133288479";
["RGO"] = "rbxassetid://15133289999";
["RGN"] = "rbxassetid://15133289999";
["ANARCHYTOMAHAWK"]= "rbxassetid://15132321974";
["DV2"] = "rbxassetid://15132318244";
["BAYONET"] = "rbxassetid://15132318244";
["RAMBO"] = "rbxassetid://15132318244";
["GOLDEN DV2"] = "rbxassetid://15132318244";
["PLASMA NINJATO"] = "rbxassetid://15132313399";
["ICE AXE"] = "rbxassetid://15132319892";
["ICEAXE"] = "rbxassetid://15132319892";
["ICEDAGGER"] = "rbxassetid://15132316845";
["KARAMBIT"] = "rbxassetid://15132314888";
["M4A1"] = "rbxassetid://16010744928";
["M4A1-1"] = "rbxassetid://16010744928";
["M4A1-S"] = "rbxassetid://16600641613";
["FN-FAL-S"] = "rbxassetid://16600638582";
["MAC-10-S"] = "rbxassetid://16600643762";
["G-18-X"] = "rbxassetid://16600639884";
["SCAR-H-X"] = "rbxassetid://16600647212";
["TOMMY-S"] = "rbxassetid://16600648391";
["UZI-S"] = "rbxassetid://16600651239";
["UMP-45-S"] = "rbxassetid://16600649968";
["AKS-74U-X"] = "rbxassetid://16600636969";
["MP7-S"] = "rbxassetid://16600645489";
["AR15"] = "rbxassetid://15132722044";
["M4"] = "rbxassetid://16010744928";
["AKMN"] = "rbxassetid://15134247522";
["AK47"] = "rbxassetid://15134247522";
["AK-47"] = "rbxassetid://15134247522";
["AKMI"] = "rbxassetid://16010739382";
["AKM"] = "rbxassetid://16010739382";
["AK74"] = "rbxassetid://14263834351";
["AK12"] = "rbxassetid://16029043870";
["AKS74U"] = "rbxassetid://15134245314";
["AKS-74U"] = "rbxassetid://15134245314";
["AK74U"] = "rbxassetid://14263839613";
["TFZ98S"] = "rbxassetid://16010752330";
["SAIGA12"] = "rbxassetid://15134954196";
["SVD"] = "rbxassetid://15131751887";
["ASVAL"] = "rbxassetid://16010740504";
["MOSIN"] = "rbxassetid://16010747400";
["MP5SD"] = "rbxassetid://16010750737";
["MP5"] = "rbxassetid://15571376653";
["GLOCK"] = "rbxassetid://15571376124";
["G17"] = "rbxassetid://15571376124";
["G-17"] = "rbxassetid://15571376124";
["G3"] = "rbxassetid://16010742164";
["DEAGLE"] = "rbxassetid://15571372887";
["DESERT EAGLE"] = "rbxassetid://15571372887";
["M9"] = "rbxassetid://15571371452";
["M9A3"] = "rbxassetid://15571371452";
["BERETTA"] = "rbxassetid://15571371452";
["AWP"] = "rbxassetid://15571370776";
["AWM"] = "rbxassetid://15571370776";
["G18"] = "rbxassetid://15571376124";
["G-18"] = "rbxassetid://15571376124";
["IZH81"] = "rbxassetid://16010743888";
["IZH12"] = "rbxassetid://16010743013";
["SKS"] = "rbxassetid://16010751529";
["TOMAHAWK"] = "rbxassetid://15571463242";
["TACTICALKNIFE"] = "rbxassetid://15571461776";
["TACTICAL KNIFE"] = "rbxassetid://15571461776";
["TAC-14"] = "rbxassetid://15571461009";
["TAC14"] = "rbxassetid://15571461009";
["SLEDGE"] = "rbxassetid://15571460414";
["SLEDGEHAMMER"] = "rbxassetid://15571460414";
["SERBU"] = "rbxassetid://15571459878";
["SUPER-SHORTY"] = "rbxassetid://15571459878";
["SCARH"] = "rbxassetid://15571458948";
["SCAR-H"] = "rbxassetid://15571458948";
["SCAR-H-1"] = "rbxassetid://15571458948";
["KATANA"] = "rbxassetid://15571458303";
["FNP-45"] = "rbxassetid://15571457566";
["MOSSBERG 500"] = "rbxassetid://15131758602";
["725"] = "rbxassetid://16057576404";
["MG3"] = "rbxassetid://14264302427";
["RPD"] = "rbxassetid://14264298328";
["AT4"] = "rbxassetid://14264104216";
["VZ61"] = "rbxassetid://16029077541";
["TT33"] = "rbxassetid://16029076040";
["STG44"] = "rbxassetid://14263901605";
["RPK"] = "rbxassetid://14263895964";
["RPG"] = "rbxassetid://15132676121";
["RPG7"] = "rbxassetid://15132676121";
["RPG-7"] = "rbxassetid://15132676121";
["PPSH"] = "rbxassetid://16029075001";
["PKM"] = "rbxassetid://16051300262";
["MP443"] = "rbxassetid://16029073381";
["MP40"] = "rbxassetid://14263883187";
["MAKAROV"] = "rbxassetid://16029072524";
["TFZ0"] = "rbxassetid://15146652920";
["M1911"] = "rbxassetid://14263873943";
["M249"] = "rbxassetid://14263872160";
["M240"] = "rbxassetid://14263869986";
["HK416"] = "rbxassetid://15134346644";
["M27"] = "rbxassetid://15134346644";
["M18"] = "rbxassetid://14263866439";
["M16"] = "rbxassetid://16029046069";
["M9"] = "rbxassetid://14263861394";
["L2A3"] = "rbxassetid://14263855011";
["FAL"] = "rbxassetid://16029045136";
["FN-FAL"] = "rbxassetid://16029045136";
["DPM"] = "rbxassetid://14263843261";
};
local HitmarkerSounds = {
["TF2"] = "rbxassetid://8255306220",
["Gamesense"] = "rbxassetid://4817809188",
["Rust"] = "rbxassetid://1255040462",
["Neverlose"] = "rbxassetid://8726881116",
["Bubble"] = "rbxassetid://198598793",
["Quake"] = "rbxassetid://1455817260",
["Among-Us"] = "rbxassetid://7227567562",
["Ding"] = "rbxassetid://2868331684",
["Minecraft"] = "rbxassetid://6361963422",
["Blackout"] = "rbxassetid://3748776946",
["Osu!"] = "rbxassetid://7151989073",
};
local ESPIcons = {
["Mine"] = "rbxassetid://16050468622";
["Turret"] = "rbxassetid://16050140586";
["Claymore"] = "rbxassetid://16050469983";
["Grenade"] = "rbxassetid://16042089544";
};
local Library = {
Windows = {};
Flags = {};
CurrentDropdown = nil;
CurrentColorpicker = nil;
Theme = { --// Default Library.Theme
--// Orange Colors
--Accent = Color3.fromRGB(255, 122, 0),
--GradiantContrast2 = Color3.fromRGB(200, 80, 0),
--GradiantContrast = Color3.fromRGB(200, 80, 0),
local Utility = {
Velocity = 0;
};
local Combat = {
Target = nil,
TargetPart = nil,
TargetName = nil,
Friendlies = {};
LastCurvedTarget = 0;
LastCurvePoint = 0;
IsMouse2Down = false;
};
local Skyboxes = {
--
};
local EasingStyle = {
["Linear"] = {
["In"] = function(Delta)
return Delta
end,
["Out"] = function(Delta)
return Delta
end,
["InOut"] = function(Delta)
return Delta
end
},
["Cubic"] = {
["In"] = function(Delta)
return Delta^3
end,
["Out"] = function(Delta)
return (Delta - 1)^3 + 1
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return (4 * Delta)^3
else
return (4 * (Delta - 1))^3 + 1
end
end
},
["Quad"] = {
["In"] = function(Delta)
return Delta^2
end,
["Out"] = function(Delta)
return -(Delta - 1)^2 + 1
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return (2 * Delta)^2
else
return (-2 * (Delta - 1))^2 + 1
end
end
},
["Quart"] = {
["In"] = function(Delta)
return Delta^4
end,
["Out"] = function(Delta)
return -(Delta - 1)^4 + 1
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return (8 * Delta)^4
else
return (-8 * (Delta - 1))^4 + 1
end
end
},
["Quint"] = {
["In"] = function(Delta)
return Delta^5
end,
["Out"] = function(Delta)
return (Delta - 1)^5 + 1
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return (16 * Delta)^5
else
return (16 * (Delta - 1))^5 + 1
end
end
},
["Sine"] = {
["In"] = function(Delta)
return math.sin(math.pi / 2 * Delta - math.pi / 2)
end,
["Out"] = function(Delta)
return math.sin(math.pi / 2 * Delta)
end,
["InOut"] = function(Delta)
return 0.5 * math.sin(math.pi * Delta - math.pi / 2) + 0.5
end
},
["Exponential"] = {
["In"] = function(Delta)
return 2^(10 * Delta - 10) - 0.001
end,
["Out"] = function(Delta)
return 1.001 * -2^(-10 * Delta) + 1
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return 0.5 * 2^(20 * Delta - 10) - 0.0005
else
return 0.50025 * -2^(-20 * Delta + 10) + 1
end
end
},
["Back"] = {
["In"] = function(Delta)
return Delta^2 * (Delta * (1.70158 + 1) - 1.70158)
end,
["Out"] = function(Delta)
return (Delta - 1)^2 * ((Delta - 1) * (1.70158 + 1) + 1.70158) +
1
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return (2 * Delta * Delta) * ((2 * Delta) * (2.5949095 + 1)
- 2.5949095)
else
return 0.5 * ((Delta * 2) - 2)^2 * ((Delta * 2 - 2) *
(2.5949095 + 1) + 2.5949095) + 1
end
end
},
["Bounce"] = {
["In"] = function(Delta)
if Delta <= 0.25 / 2.75 then
return -7.5625 * (1 - Delta - 2.625 / 2.75)^2 + 0.015625
elseif Delta <= 0.75 / 2.75 then
return -7.5625 * (1 - Delta - 2.25 / 2.75)^2 + 0.0625
elseif Delta <= 1.75 / 2.75 then
return -7.5625 * (1 - Delta - 1.5 / 2.75)^2 + 0.25
else
return 1 - 7.5625 * (1 - Delta)^2
end
end,
["Out"] = function(Delta)
if Delta <= 1 / 2.75 then
return 7.5625 * (Delta * Delta)
elseif Delta <= 2 / 2.75 then
return 7.5625 * (Delta - 1.5 / 2.75)^2 + 0.75
elseif Delta <= 2.5 / 2.75 then
return 7.5625 * (Delta - 2.25 / 2.75)^2 + 0.9375
else
return 7.5625 * (Delta - 2.625 / 2.75)^2 + 0.984375
end
end,
["InOut"] = function(Delta)
if Delta <= 0.125 / 2.75 then
return 0.5 * (-7.5625 * (1 - Delta * 2 - 2.625 / 2.75)^2 +
0.015625)
elseif Delta <= 0.375 / 2.75 then
return 0.5 * (-7.5625 * (1 - Delta * 2 - 2.25 / 2.75)^2 +
0.0625)
elseif Delta <= 0.875 / 2.75 then
return 0.5 * (-7.5625 * (1 - Delta * 2 - 1.5 / 2.75)^2 +
0.25)
elseif Delta <= 0.5 then
return 0.5 * (1 - 7.5625 * (1 - Delta * 2)^2)
elseif Delta <= 1.875 / 2.75 then
return 0.5 + 3.78125 * (2 * Delta - 1)^2
elseif Delta <= 2.375 / 2.75 then
return 3.78125 * (2 * Delta - 4.25 / 2.75)^2 + 0.875
elseif Delta <= 2.625 / 2.75 then
return 3.78125 * (2 * Delta - 5 / 2.75)^2 + 0.96875
else
return 3.78125 * (2 * Delta - 5.375 / 2.75)^2 + 0.9921875
end
end
},
["Elastic"] = {
["In"] = function(Delta)
return -2^(10 * (Delta - 1)) * math.sin(math.pi * 2 * (Delta - 1
- 0.3 / 4) / 0.3)
end,
["Out"] = function(Delta)
return 2^(-10 * Delta) * math.sin(math.pi * 2 * (Delta - 0.3 / 4)
/ 0.3) + 1
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return -0.5 * 2^(20 * Delta - 10) * math.sin(math.pi * 2 *
(Delta * 2 - 1.1125) / 0.45)
else
return 0.5 * 2^(-20 * Delta + 10) * math.sin(math.pi * 2 *
(Delta * 2 - 1.1125) / 0.45) + 1
end
end
},
["Circular"] = {
["In"] = function(Delta)
return -math.sqrt(1 - Delta^2) + 1
end,
["Out"] = function(Delta)
return math.sqrt(-(Delta - 1)^2 + 1)
end,
["InOut"] = function(Delta)
if Delta <= 0.5 then
return -math.sqrt(-Delta^2 + 0.25) + 0.5
else
return math.sqrt(-(Delta - 1)^2 + 0.25) + 0.5
end
end
};
};
local Properties = {
Lighting = {
};
Camera = {
FieldOfView = Camera.FieldOfView;
};
Terrain = {
};
};
local Chatbot = {
--
};
local Tarkov =
"SUQzBAAAAAABAFRYWFgAAAASAAADbWFqb3JfYnJhbmQAbXA0MgBUWFhYAAAAEQAAA21pbm9yX3ZlcnNpb2
4AMABUWFhYAAAAHAAAA2NvbXBhdGlibGVfYnJhbmRzAGlzb21tcDQyAFRTU0UAAAAPAAADTGF2ZjU4LjI5L
jEwMAAAAAAAAAAAAAAA//
uwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASW5mbwAAAA8AAACBAAE+XQAFBwkNDxEVFxkbH
yEjJykrLTEzNTk7PT9CREZKTE5QVFZYXF5gZGZoam5wcnZ4enx/
gYOHiYuNkZOVmZudn6Olp6utr7O1t7m9v8DExsjKztDS1tja3ODi5Ojq7O7y9Pb6/
P4AAAAATGF2YzU4LjU0AAAAAAAAAAAAAAAAJAZAAAAAAAABPl2xw9RhAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/+7BkAA/
wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/
7smQAD/
AAAGkAAAAIAAANIAAAAQBIAgANAAAgCABAAZAABDlHTepTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVYeFjRphBhR5AOBBM1JN4
hEGDkwshNWxMiBM+7NiHirJk4AqnOS/
IkzUIHhx2xACHUJ1nQQJYkykvMaRcTKAosOAgUWBIsZLG4eA6I67wr2V4AVZyXI0WZo8axjNPDkODBDzeKB
oDA9qGVYjQRDeCCoKNuTMIQVK/
WEMmDDiiA1g5uhdd3p23MNjYkpAwEtNHNR4SeRqoKBzBjAzIOXOiABAUy0tIhZvZddYAYGVmsGxbVcySqBx
ihIY4BF7zGFQ5ddAoYj616Haaly//////
6lqLIzwgwMvgZh0BxlQWxG0OQEQ4GnagifgHBBWgfuBhUIGzSgGgAtNCyoDRPgNsMBvIGLxbiqbM//
Z0jpQGfDcAQJgcOeANnDpA+gGVbgbUaAIKDpR3FU+wACjQTajEn1GA4XDBXiPbT4sDDI4RBTs4Ga68TWTTE
HPArQja6JlHY6WJiT+Hf/+ZY0zsmW4DXHJay+ZSeNJQeAEBAkoj/
TrCRGJMhMc8iCasMEHWuxKO248sQVBDB5jCXyjHW5JJouAHDueTVeeAFVTZtOUWAHcAL52voRNml0depWcM
QLVsqLAZrrkRbiVAqadCi7Y1S5Y9/////////////////
dyxTmVIdziYLWklTLDFDAdAl+ZUh4PJiuNGYCTdNvE6x0J7lGA4d0xEa2eQu0ZDh//7smT/
gAlHZx8DW6eTBSy0iisZTlx5lp0tapHLvbJTGapr0asrmf2mpZqWs7lTrGNEeDyEklSOywSkafGKSVvoz8q
lHNQGSKVmS2eCi8X2ltoGCEBJWpJqN/
EjPACE4dwg6KlQEBFumZmWFNUM4EpspZVh0zipmtrHW5gwMEa0PzTWb44aNwABDQaiPBZWWbVK907TPxSuC
ZJQzW1dpAuWJlIBWlZiAJzCnfwwJ4SmNUMZIJiko3hfZSYs4RGYAYhV1vCu3BmoqxAxaF2ZocEnBAsVsQ4Y
mCLCoVZy3SAPUgNYCKmxoGjgbEmTw+wHPAC0R1n//////
UsoD7GEBBwC2EhDcwHyDQyByQ5FDAUmMcBrKQLECuH6gMXwtZMhlDV///
WYFMM8A4CgdhXK4uUDANAWClZUCASqL///
7mH4ziBgz5fBqSwoCpDQ2CgS3IqEVp0XjdFniLBcMlROjfU2btZ8szw///
8cpaI2YO91qrlyy2YskeggQrilRAEOPvI/nBlSdUa/
YAgCYOHqGajo6ICPDLq+d6n7+qrX4eDAwGNbh0xdMCfAxBMHRx2IFoDXTAYAK7HBrh0YCYIIjRESFA0BwKC
iInAEuwDyg5peRS////
6zAjxtCJwPVYOnpaOjzom4bbOInBFhjNqrcgMLIwzmrfD68jQuWTWe6GFgDRw1S5b1E4VZiJVQGGHvQwk3b
ty6mfb1+8tM4rd1oySpQGglNqMqCVf7CyjZmrOAbls4Eg8L4JgfVHOdbPIchBBcDwH2AQBWHqIWLGnhJBYD
DACAYidFvFzWiUEsO8DIHIrSDkLQuRWQTQQiaG/j+npSmv/
7smQmAATvX7gNMeACnGt2xaY8AFlReUG5jIABv6wn8wywAP85973veG/
vi9/8Upq7zV4+4CsZJU4rImb79KZvfeKUpl5Ey/j4gRMvInvfeKemv/////6Upl5T/4pT0pr5ve+H7/
dKU/97/0gPKZeREY9/
Oh4gBgv80p04sJ5+cHjITgBh+OAKcTNaTjIuyDmWuA1Y42I5C4KhvV87+ROIY4Kct5ltQ9Zc4ycQxkyzx87
/+cUpv5vfdqems33ilPTHzfePi+7/5vv7/pAiU1mJSmsw396K9Xv74eKxklVjJl/
ZgQxQVQxQMmrv3+3ivZ7PHkr9/hXq/cB48iU/xSBEze8jPH3Smb3xDjx3uzEZj/
m1nY8Hg5PI5HY7HQpFgn5QXYZ0izeljL2WF3ICcVStNdBkKmvv8aoIwAFSggN/
nOL8HIMgLUPC46YBe1AEy5f4GggvJc67XkVvXU5MRR6A1hedX7iTaaZcSnjMrcmH6btNPuvEIo6kTlUFP/
E3Zr5/cr41Z+X2/in8ppFFI3EaCis47w13VJScn4YnIcw5RQ/SU1Pdg7V7f48y1luth/87////X7/
MLdmn/P+a5vV2zlnhl/M/t6/uH6w/n2N4z8qx1Ltyy5XnLLI6YAMAgEAgDAgAAwQw/
jl104MajEAIYbGnzoHw3QKCCJ9Gx3J8ZIJWgcpJp//SbDJl1MZ/++XVV9Oc7//+au2fw5l3f/2zZO+
+j5yd3NHEybs/7++z5xkrumzzDW3ax+1D67e/v///
tRo8vOh5cQiubJUohBEAAAAAABOFOUeEYiBEy2yV6satzN1mM2uu2YgbLXVZSn0yFf/
7smQTAAWuWEr3ZeAAbgsp/
+wUAFY1kSnMsNrJtK7oPYYM6AhbgIqLwnp3hJk+dJsl4O8hKvFtFlHUAbHOTwCCS4XF6cYsxdBhGk+nVR+q
d6xUeN0rKzq6rBB79ygYe4pbEs1LU2903yeO5Xnge1PnLh5aOEeqq8F5eit24MjHdwaYtoL2JdhatITGZPX
Ma6tQ2K1R16PNidlebxhyz2GDfMmKyU1aeLN9xrW8ihxaPfwkaW8xlIjEkCYyVaGTmET9p7Q6zdnFSjw73+
87gih8C0PMIsog7JVSlS6HZFeq2Mxd9PVHOqMOKijFKqmuzOddTM1brNeeYs3o7lI6itElM6OYxUeqFGsRy
sjFmZMYVl320idEipBZfKyblUVF8I2YohBUxAAAIAgfCwUHUNfDAg5NnSejClmp0Sh2bC4YegdpLKqiqzvS
SdYJFqeLOFhBDoO1SPrHWuL8hUVXIic19y37lDNGmNYnoaZlau4ieC4h3WUV+kiqJkJ4SC6LyCnTKaswr3a
ZaFmKp22ZvuNJIoxKOPXplL1Fjrt+pRhfVcftGhDQMCQRW9jb/
B07esi60t3jLP881sTMwt82sN1s158ZB+ya5VZHM1u739R7WuI8l5uVmYcHApI5eQNVI78M5l3lgHiKQcB2
NAVqAzB0AUXZ+1Kdimpr2oL3kM/O/mb7Vb8BRLSVzXK3T+/PLXyY8yXmW/
9OQsiLIj8pmUU5w6XnuKtIoZGyMGMp6mREhE7eX6kZV2Ij5+DN4DfigXUWZ4kABtVqAkTsDI0TgCJPpXQYE
u2/T6NFUCnnTay/O6SMxB93yxgOWyOw0uCGyJXqAf/7smQZAAY9WMklYwACb8yJ/
6wMAFfZiT25iAAJrqyotxKAASwYEgDgQZIjKjEIiN3pmWI9vQhCvFt1mPDQSqDVNYfYhKZXKqkvvvZGFb3Y
TFgGRQqrKaChrTsHyGekNNKZThKqHdzC/
rVWXvQ8LWasBdlM9hXsV5bjnakLlTtPSNfe2OQzL4MrS+U5xalt44XPoanN0G7tLrXNc5lWx/
uF3Opy3WtUnLuFn89U+u7xr+BXa+jKb/
mp2WZbzEshAJzKX164ltd6izSr0swwkkQgOQS3CWRtdwSAiT7l/9L//pZ9/
wwqGaFaTZmoKqR8McQqChYABVgxI+bag8/v5/7f/
5U+dIUpXJZdKeloMqN8NbGsYjVmjChaTIGENQs9ZZ012vmUu4nAsrHtpdtJmanISjGGRCYkRE4REzD6hQU+
6kzZTgDD5YrsiSTYwNSJBCqALg2LJk4N4tEqQMmAuHD5yuTJwnCfIgaMLGG8FswMS6mdPJmxUNIWfBtuHrh
ZQOYyb9AzN3JsvmpPkANxYDNeugzsZm55M+QcnCPFljIDnldJNbs1BqbrQZN4y5WIoQ4UAWiYJkg6DpuhO1
O1d9+xBSXGYG0K0GQIsOYVCbJ9E9+7U6aVNOpdPZ+RQTuUiIDvIAQRNESZXPabTY5jUbCsSCsNgUCKwZtSF
PI9YfkgZey0WEW6dQfUrfVPtj6iObEM+CocqT6FK3iVstX49NL+4tKu+oXu+0fQ+KqtKpPubr5j0S0pJf/
j/+Pv6+Lp3HO9X2n////8DFHXB0DvHSJJ1f/N9vkYSUSYAABAABrAYALqgh7Fg5Y2EkbFmiAUpYxJeP/
7smQPgAX9Wc7mawAAZao5/
MYcAFgRmVe494ABnbBqNwpwALEAuQVXKBKCFgqTK0oEnXYaOGDZyVSpa5PMpjD0tDmwICAlzW5WH1dOvb+
+xgvKRAYjJIelMav/H7E9dwuVnxU1kj7Ve0v1eYWM/v8jjwwJIoaitJljW7/9zz/
73cHZdmggFptbOo+uXcfy/VLy9+H//6+7DsM35qLTUayxs/r/xx/8v73fe/+efcPpbctuZc7S6pqtLS/
jhj9bgjE3DHDEosrAhYQBAAwICgATtEpmZHYSjJdXCWaNWt4RAE0SYPDYbfJKIxxqiMU6CK5cfGhjqdM9zh
qKtEVkWTPfcRnIueyqz0z18wRhsyqPEjv+/f5RhwuNXLMhljurJT/
4jMxQTeu+hP8//+3sl9TQKFQxGg8HkLTJWRCehI3BEHcjRfgFHUC5YirCvQt/
HP05zntBnMQ87YNM63h9oY8xnWJAwydoXalIzJ4T7VHFXxzjThpnixIQNxQsWvC9nBOGghBczrcixDoJ2Xc
9mGuf667nWPeVXx0NVTgwo9khV3iW9Naz9HIdDgc51ubGh7O8b5ITe+ZnTPqmq3+K33v+OwMh1x+r2ePE7/
VL5x/vX//vv//////zrScVBpqNnUDJTFIjxWf///+4AgGZ2PYBiUSCgYBgADz/
nU5RgwCEGYeQy1y1xoQ9ilVEgSCDLKiWcOkUOPPmMcXNcSziqM6NG5NxoJBgSExoNh0v/
YhMj5MbSZ5AmeYv/Gg0IPPIM3mW//5PMHCBg0IE/////
57jhiqYl3c0RkMzUAEIAAAFIHBEgtWSeUgtIGtLfIhsGdeIFf/
7smQQAAXbVlX2YwAAaIo7P8ecABfJg2H494AJnZ9sPxrQAAYxC0gFgHECbTPf9w2WyBlCFAVBStyhV5c7gl
2pXEWmTM1JKe3UtXYfbkhksFdiMVvQ1p2LFPleUNT2kd92ZRutGr+su59/
faziz8tkjvMSlVreOrdX9fzW8I+oLIXBgqVUU06Wf6y5lzdW7nnl+t5cd6GoGuT96MQ9T1prnMstVssuY/
3W8NXsb/55s6pYzSyrLDn8/lUt/
jR1u1e3iIiujRBgABCjcAaTkocQHtgXzBYQ4hd1bqrdt7rG+UZBfMIgFANCIAUsqBkakih//
r9ZvnK2tfdUTUqQPHTSy0N0nIY9Uts1Pp2c2ZrSxpIicODckb66e7U044UFxY85CKn/
hTdXdvLtKo6iRCIgUUwUCQ2dGFyZoKUBvLwRZJhekLQ+MTcFmb5mkKKgWwnDCSaEhkjWdDeuGeKhikVOm1r
dQ2M6ZVGcTgdCjYKKBxiMcFDYsV6TtU2UbQ/nniMSeLk5t8CrKXM/
Iyj1iPqzy9HlY7fAUU06zIwrp04w6WpnL9natxXjLFpmV8yOL51jNIDat1jyTT4rjDM9exNMdI+6QLwq7bf
FtuSDiJDhbpqkDHl3nUzzXvf6x//
ntcGWEsZXfd2mgqAJqsSGkAAZAAABIjIbQsiCM6bJmvQR7aZ0yQICxgwlycCMhelubm1AJL12rQ/
rdOzpmpuggcRTRWg2cNDdTXv9XRQQsykHsumgt+6lUnehTnjcCI2C46L0iZ1hCE3r01vs3Xn66ZqYVliWEi
AABARAAoMGGGPIQiX6wojsSjNIVhVp5KzAIidiSf/
7smQSgAYHWVf2YwACaSd7DswYABfBU0/5rAAJoyjrfx6gAEBtNSvEI2qUbDYw78PLD3GvuRjejKJiJTJ4cl
y6m2tvDbjOMCyR08HEtV4zlFLu6ellld6YGaW9t7Pb7x2/
l3Ua1jyLSq7PUsOWceRq5UnZ3f4XK1mNSu7Wuu/
KIcuTmrEplE1GqSvWq1q2u2tdxpJRhG6eVv5SVL+ElsxX5TKYlEsqTe+Zf3/5W/6V/86exU5+GOef9+/
bs/
kcC7eY7rBKiAAgAgACgAABeTP1uIEWPJVw4nZ2PU81rrR6TX2nF6RaWnzX3czl9GGypS+WvvEv3xtPONBEt
nlJKj/
v+pALuKrURt0SVv1sZ7uxk798TDfzLc0FV1lni7zhVzFtPZPAgYfqlrrMrLM9lyQgAAAACUAAC4DXCwgEGL
RgmGuAEBM2TNCLRsTgFBgoAC70gqSgKAa8RL/
mAIAgmklashiDlpzjFF2l3WlUEqb9n7T6dvWfwy8tuW6vSNpjtsltSyBm7vdf5Wks98OSRzIfdWB6Dcqj9N
3Lf4c+IduSSklMvpfq4a7GbX6x1+VHjfjc/K6sjz1Woc7NLazq///+P6+zbjEkopfjljV+t9nLKv////
+P61///7wp+/
n37fZ5vlvTlV3LrJuoh6tkYSEuABKAgAbAIWDzL+dR0NZpsS4hm4nxOkqhqryphoLYXwNQFcACKppRlJxOI
SJJY84fnOzrRWHxhZCA1lOICXsxn0O/zVPc1Jz3RJr9ldXb6pS3/tujJ////
mOWuyMqW6qHWFNSNUMQAQBABACBQoiouRBWooSzBSxnJaNm74yJm6LSpf/
7smQRgAYNWFJ2YwACZ2sKr8XMABblmWe494ABrqftdwyAAF5NOZ6oYlQhc8ebixxXcki7CgqCdvTDLC6cEM
kb4EoVrUtpY3Dk1GHgeRx4fl6gT+wa8U1DMMSGxphjEH4iDWHpf5SlHlymHTVjWNXTJGXz+Dv2rEBzTlQNk
71XL8bv48wpOUlJY1STlSq/sSt0ta3KcNU2v/8cZfnqL0/YxYsRu5LpdDV6h5rdeVU28f1//+/
+xT95nn3/////
lV40lYBkzZnkvgFQA5SRYGSAJAAMCv+DI4k9DQEACV9uLKPmhSWcAdUG5wcuzorShjcMUCFx3pmKExS9IwL
mxHG+pSTcvl/qRR/Immbm5BDRiJH1lQ1b/oM/QQpfS/60/+t/+3/zdBv/
y8v8fDxdHkUDkUhoEAAQh5R6n18y4d3ZYh8HVK/
NAyCeDAtUcb6Oj4EsFkW04sjAXUGlsxFAyaCHjwZFpwl1bRb0Lw54JWWxqQZ8V+b6zSAyUkdJQ5zyL+Qtg/
/16R3yGQ29sT5izpxOnOg2bX+//+lGdgXDreX+zHiIEI2XxrQ0TgD5/9f//9H5V7IrIjPt/
WAowYZ5H+zQRXFmPHl+v//////EY2fbyb/3p/+/aH8bDzTG/pTO4DIKBx6QQAAR2OBQGBwAB/
bXf5AgPXXggIIefi///7/9xTuLi+aekuDcqTRdVcyUT/ebT7gYWaL9/On38i5YnR0cW/tP80eHggCCH7/
IL2Jdnkwd/LmfXvaTb9uhooIhkaorF/
0A+B+kmeVk2kaVY0ZEQQAAAFVAEGDhENNlFJ51yg4rjK2qinWZJNSBlLXRkEpqS//
7smQTAwWBW1n3YYACbye7fuegABS1PUiVh4ACB6trfrBgADExJJ42+II6rXWVrpCJpie4yOIEVMeQkk9gHZ
l1byGpXHQhCUfQrlz3NGRKMidEuPr09bWWa1MT1b1l1F1tqcuLlxypaXHQlE5cdchkkQUTRKXuTJyJJZgMn
jqK2nLll1plo6MjKN3a2ZdgPnrY9aAyvy6OrL01mZxdZl1p6a5MyyKy6DTArGP4gt1kvUO6jkKBHgLjgdQa
oBBPRrQ9CRGBrIUuXzIZUIHQaCGC0RTmCepHMyyrHE1+1rVVcrXF/Nf3zxs1k0k/
wzW0CzSaUy2rdXrXzWzNdysMUPkOR6moLMJRCEgqCpUSpgE6zPB3Bos+w6t36jqVhqpilgACKo0Au8KwIAO
ukIRDVRSQWCVlZIu4BJfRQaLtTamC9kxfpiE4s7MyRlwcJVM44sqR+9Sy+vR3JJPmpmQqrRIX5uUStVqhdS
Rn2M5gPqx1cxuczTvETebx75wkmaPPTXxqJvwnCR7GlZmaszUp0a4M+0PTSrhR7RNQavM2vdsb3jxDoMC7j
9TsMa3rCzjW5aW8KMxMwkIBIK8EzgF
M8/
sDY5lWxM7KZi04kE8byg6oC8TYYC41JTKxNhVw1OQSRijWoDww0BRw9ooETdX3SWluPzZja7M6G450LSVD7
quURatQJHZ5NyaaWOJJTjPNHO+3cftXbvnea/S7z2S5fkpPYvLRzW/w1UVWzK/HfGyn1vhE/
Zr7c5hRogIeVNOQBAKGIPh+tjatdZrEhlCgaBITFpbMz9/
lEYLCjkTmXMNohYC6FjNJd1xlklryWBIliCIYPf/
7smQXAAYwZlVuYeAAbOfLHcYgABaNZWeZh4AJv6JtuxhgAAkg6kqYqSdOijAdxMldK8SVqRBGxlgQxS/
L5oseG4V0u1XgWwej4pvNbvnzIwNpYAM4N9bIOg80jvpJfverf9WEnxqAhjJJn3y9zNDr48a9bU27Vjg5Ye
JYbg/NQs2rr7pbULXzm/rndYBvnGACAVAdAEuxKAl7nGt////8RNeC4f///
dMxv+dCgiU9Jz8Qgl+6Uef///+Z/7s/Uo0H4uFoiCQlEAPaESZOut5ikw8F1zht/
DqpSg8BaBzF304LypGB8P6uvp5skZRBRZYuf6uOYcPXZBlZiIH4usMWk3XX1j/0T+beuf/
la943ezD6HiIFkOfJrEgYUCA4MgkVnf/1AN98MW2uRolpmKKgzAAfsBGSMRQ4NeL7GAqjaCzOGlO8/
iAaTrHfRhrYSpifKM5TtLqXtQLs/qYubJ/N54skktsq169jGEqjlXm9W5hMbyHu8z4up6H+fx/
PWKV7a0KFquuDrMbS8yuLG1zZiPa5xJLEpLJO/
h4ht0l4G6Y3iBW0LxdY+oubF1H6qUSmoDyaIzqzXtncLf3Wvkz/
vdab0rXVZcWbL2XLU+zi1LPtoRQK9uOo+pqaWqZk1ZzZAEjNRNtVsAEYCZWAFQDNzfUDyXtH0Jr6QLoJN38
m/z28nn02/
tv0p2XeubuGmoLTxyJAnhVtVrvdymZJd7Ko3MUjHB6NiDWa4llSVe6z5Xb+f+292R8es7aip+haHNJQeCoN
PAScYj6HnYtV9nqeiAAAEZhMmUySKCxEfQsIHBS5ZAyti6aDwQerY76+x7Hcsv/
7smQSgATqYlZnYYACaofa/
uegABPtbWcsMSqJiqftFDMPUFQPE6MgE0Jzst1gWvGS9Iw4lbg566x2M4Q17L9H4Jfetl5kzfpiczz4+fMF
ix36Pvzb6VjciX3/NX/J51Obt1/vMzfNvX9peebrSV90qu/Pvwy3jEDmUf2+2q+29HSZ+W/2l86cmemW/
c6c7v6+3vam3tPy2X/
OiczdIdlYQMVB8Y3MYl1ZO0KBlI2de5HHUAQgHB4H0GZkO9zfXzdD3ih5fol2mtLLut06O3EiMMMgdVMz6u
PRIxR2H8xw5FVL1zaX183Fb/
vI2QSE7ZbxC2GJmG0ggACDYsKOpoaoXHgQ4fxdoqVABUbUcdl7mXs5fp6mSOUXlHlEQUstDmI5JOgTKkAuC
Ex0lemQNrRay6laWsNkcy7bQMNMtzXajuxbQau7k53CQViAmZOEws0B4aMCBCRLnOQlAujZ9rMlF1U1NoSi
ZliUju2gnHbjuxSVSnd+i4UI1F4CQ3FEZN2QKjgJkEw8uWVkw9iUG8li6k0k5RSnHc3c32us4MLGiVdNJMH
q9gAEIRuW+ANT3Pc3NyxablcjzTKcLMjOnrAZocZlwefbmOtVKXBWIrdNvjttymxEOYoto8rovSA2QPAliE
gsTHydHAJsRGo4wtISP/
o+hpannEBig2JxVZDE6DW1Rk0aSN5BgkITYEAAAAALIGaQpsIk0iSQ1E0HCoZSgYrPYwLIPuBmrb9oISsVR
pRVIU/Ti04FIBj8knht9j5ZT9t+LkHA6HpGcsNaWnqwxZTsaOiq6yYk05aWrGdhMVxkhiTFrS5r5XPGJO/
mVs1Wm//
7smQ1AgT3UNbzLDRyXSfLPD0jVBRdhU1s6SjJP4asOPGkoEkbjANHcl3s5LpHMR5cz9NS2HvAlQCigUaSr4
kStWl45b3OJEtkiL49TePO2Bcjv3i7X/wbrFZIQEAAIKYfyQYVh92FvMc/
Toa+Liw2flcaJL+ka6tBiNZz07D9f/JjtFRqoIfbFc/NFKCqTan6r22/9h/
3+lfh6CnjElZC9JJbTtYaIuKlfATTxoFUoRKjToVrBQQAgAUZFhUkSwILGwt5D/
MMIFugUEAvKhbI2GvG8qpW7t3gpZ6QEskSMXZB4OiqYgDQ8lCayuEcORgoCUZd6W9VliUkl1BIhRqEBtKmz
TaFllZqsfFlDLpQRYZSimQkM2UNrPWHnlWEKZRGknPDUgS32s8GZmSeFdD9W2kXTKoXdOBYVPoiem1/
sUpe/9jGWrS8Vc7X+3VTyLLOZ6g8cxDMhuUAAADGBSo2OI5Xui8s/
Qo9X+0jgiJRSxFVDY+WhM7AykCUIno0i4iIgoJg6cHG3gFrj4dIioS7rb9TyIBfY9pbvEWoG3EdZ1M8NOtD
enBpIAACPwcKozJFoh0LPTekUxgADFwVljJ2EtEsCoconLXzZM/
buUMCxK9GjusKY+K4LA8Aha66llhKtPbvj+cDVQuj660dxe7q87Wj0LT1teTlwlTEPqSivJ0xND2mbrKdYz
2vwdTKtLGk8C4lPbAeocTm6loydNAfQSSpMkAjznGHUmt3a0SzNfSMGzRiTdrtty2qmhGfRW/
4vNk36IDKgrv2SzBQDBltlEpJ0irDRx4ZteFGgM/hzOszfhKElUv80vPJl+8/SZblSf/
7smRlAgUdWVArbDTyV4sqvRgjJlK9NT8N8SiJWSapsNMJmTBH2qQOjRAr0Ytn2M6rWIf/NjK/
69aiZ0uexnV//J78/g6+Xnv/
rSnVx5xjQJLonRkYANAxQPTNRKZolu2ERDQHnzFB8YDhgVBqjIhupawJVd+2IhpgGAkCDyABhcjjpMFSMKj
AAiSTOdN00xWH1nllSlIj1s+BgKcuYWNtFRSYIjl69DGd1U4rPuWpH6aZ8JThUag1TcxllRuC65b6nKWS2U
Etw2ndR2Vw/xZ+v11eLC7MEcrplj5puL365Mr5nll/dHfchrGagAOFQAjYOIKQexJiVDAs6/
zoPBB6Fer3WerV7ECO7N///9Fe7EKKI6qY1GVH5gqK7brZ9XUvWfXY93K0ptPaqI9HRlUFIgXresdeiV/
I5bZsnu2zPpVZgAlkCCBRgQAgAEASKhaaAOAWunIBxIGGTChibWaCoGFgM69a7Wvw8hLmGcO1c5PJyKCO8m
I9j7vs1GRReSQuyctkBkOxePhkJDrZPqv5iM8qf2KjCIpQQGayqMtrHFhNbaRL/
rQunNlA9Mw4AFpkBlvFzN6V0TLIOTpAxz1XbredloJpmSTaH/g3Wk89PXSMla1pdkH7Xj3m/N793pBDcr/
P/K4IBJz++WsAAAIyBGXwrHMoFafJUOiG9N9KK2BAIyuoQDk/
7fndSEv6VPZOhDId0ZlYUZXMyj0dymVE3Nd9yMuysdTv3RNL/vqfd/
UjDQII3pOuxvkVvSp6Bo1JqAAAAAEwsrDAUMAhQVCoYCgMiJTpRExcFAQWYmMZ1QOGDAKnExBrbYWmxuQ4y
bdVnP/
7smSYgAVMXtDjbDWwVilqbmgFNBR5aT1t8SnJXCHovRSOGLBZh0l3NOhuGIAa8/0Y5RTH8poi4NIGaDTx5f
XOVa6SjkQam9s2QWTuWNpIpKX9RTWZ+Kx3YdLSUhfdwfBpFKvjLtpVn83PolFFZUp423M9pWlA1n2Vza7UE
OTrXW5P0pXxJ8cS2//L+4VjbjZPcdoSfKkQEtQkACgIAAgIwyYnIWAWSF0y7Xu3qZBtQSRESEhJcdW/
+IPur+56nSpJ/yIuR9NlIGBjOXAomBvN6u6/cp/Sv7N7ZfL1F1m/RfOmgyWF9x4hC///
qcoZAABkogYSHYKB5EAUc3wAggEIONZEwwOGgEJzQimOZC0w6DwSEyEBKBsokFt2ew1MwdDf4ZXc5iPI7Qf
TWKqXSgTSQNkkktym4y8U7ExsMgoH6tCZoNiYuSoIZ2vB3OSmyttjXCtNBdrs6jdfYOqbLLaYHlkkv4CUTA
8j8edT8kVMz0+wjp5EZsmbUfS9155oql2MY2ouUW74mtd1Hv7oJoAAIhUtpbRdj2AdBzgbzcO/
4YAfDoeoJg4GICAYYs7Gfy/EkfKUYNTr/
lLVwyUnwiKlSaSalBahhFZxouIj2xaeWRVLRxZZWBvoc0pwQcCUMjXpVDApAACJAIwcJB4FGBwiYJEYYA1R
oTDX5pEIdMNhsxvGjgJnMDjoxSCwQBSyascudStQuvL56WSx24TPRnUeZuuVv4FjHaRpK6QK0u4nQzUKIqb
WWGTzx0+DgX5CjTFK4eTxS3e/RqdWGZ/hltYM8YRahByfLBkHGEEMSjRhcELRDhIbBqFJqFXTFvNhRA/
DHv/
7smTCggT+Uk5biTWyViSaXz1CKhTdlTeOJHbJX5XnuYMIuHWIKNcvLZgZu7AhIHXnoe5bEHEmGHE9XGFEAA
CEVAQFwdGk5dZlMLPu8//7RCZxioWpbhHulejOp0EVMAPYOhCHe7v/
+c6oTSuk5xn8DrsFirooaOpeH2jKBVkoIio9cJVZTClBwgK6xeeeBb2qkHWP1pBoiXn80cnRTmxCQjIhYIo
tjNgnHHBSsiMyYstFBACq0x95htJYwISS87E0figep+7W2q+mE4dDKabmkEIhyEERKOQx7CLYgDQq/
338e8rY4McJYNNygqMlhKBCDEQ89BDDNNIXNTKDN4DzSfTQ3zjxW9mBkUBQMMkbcMXcu8KCSZQMOSYI3qis
VoygFgoBEYfiMTzUZR9dsoGBWTjAGHJEhc2Rk7aYXNkBJkL2EExWsxojDZQUMesFEWyjHpiE4Qye+25/
P7bqTAABIEmIwCHB0HgSdzv+gmPZGGqS6K6+w951V0uU5sjN2U576k2iCwApiCH97dtGdoPCHTaL0ECDM2H
PTbPrZ/4jx6KHeAZp5fuaE/
+4t3f4jwIIrnFRzQue8RELRIXC4Vw4E1AOE0e26Rl61P08FNcJComL0cR8uRePT8j3KFmGnCbnTFc2JSxnF
lV0RIR9vX0Q/
jhPNLQVaUSfkkZ3rcrV6WRQubyOrk6yryna6RYsBsc1TpdK84R9FEh2VKpnXbUCJqsHMo4mYVx5XlosjSYP
oKnTFYmTFVhc3yZOYXSqHkI2TD8Ra3MT8iI6KltJWnWxnZcQdZKxfZSRT1SyqtWjuoUbRzA83GitAnYhXOy
yGQUPKP/7sGTvgAZOZ1h7D0x4Zgv6nBTD5BZxbVIMPZHBjarrADMP0bHamYjlNJAGEhh2/hCIXXn/
2bzLZfTOdQdKwksIDZaGdHGCazXBn3MmggI6CjkUSITQ7JBg4LbOyMpda4XOvVG7s+iLaShI9STsa0naXHz
tUdIZ/
yOJrGJUo6k2KTVXRT3WlmFDNf8yAoAAAI4MTbRgSHAAMMNH00TGhQRhQXBgCAgN9MGBU1F9AYPR7LwSKRr3
h1vJ+RqAu8701G7U67UNNOztNexf92aaMuUX9dpzmUsVfppsuc+CIEEsmGYtcJIHbWJBbTDJSaHwqLMZNpK
E8+fAikH4RrqLCSPRaPSEmqmSv6rLsXIC4zOGnCayJR9xCOdbSxHUES+KT5G5GiuTSUZZqzOdvhiVSTLpys
JX+xdl1p9bjUzb1tWZWnFpq6NgFV9Ftqmv2gdLftn5VdpNXGgADMGAgSTCgdKkqi+PsAexGzstukTRTLSi6
RJJL7KWipdl/9FFW3uLx5QMSoufnpq7JVuuf1lo41XxSRcpMtqq1J6qRNt9tVVS3tWf3U+rL6m23/
Sz6oksj/
+9ZlokFBkMI6YoNvjQEIACEsDBKF44GmGgSC65DWw0YBDIgAGVBszy00zABa8MAQcJpGJ8LlgdprcmnVmes
RjbYIKh93oBcLDF3YxMxWVuTO0cHMqeftvC27K9X+hLqwfjM6PSkZjm8dWKpqPLJgpzhKesr4mlpOHpiuVn
ROLpOslUoS46ulMV8Ikj6Kj49TDVGqXE25w8+cpz0guKo4ZaifotRpl7D6V6jiZW/
Yr0So6QI9A9ExYeC9oyK1ux2jje//uyZPMDBkJl0CNsNtJpqyqvRMPUWGmFNw2w2wmMMmm00I/
YBWR2Nynu80t9g1jttZdit2gAfhhMgowWQ7C+iNZIFZL3sv1BfQR0YU4Azika//
Wytv5kdH0oGBqkbGXOOfcumRlfetJJtETmkQgKYqIw8P2QgrwNaiiJB4iqpC4Vk/JYbiatKCFCSamT8Ud/
6cY/
8cgS1SAQCYuBTREqiAHKKltE8TJgwMCBIKAcxKqD95jO2gQqIRFRA12kwFwkyDTYAgrVV05ZEZNHaSKNIYO
zSr9igfqgldIyJ3mFAgmJNWA+OiL0PlqUpkl0TyCS3vPApHlT7yxI7Y4mrSJ+6Y/
OkRXMMuhmpeMnzrLFlaYnpNLtlK1dpyqc0suHFi6pUnz0E3XfUyPo4aKljkLs5eueqdh91ilEntPba2Nzau
Xen2+VUXT/zRcfXiavSbx7RFXP18sNSAjyOAYgQTARRXDPQk5FcEBSD2MTpBzexoDGUBLJ/
+pWHgm9mUZAtW7jA7iQsTsQUVj7EZhAdxAZyjAxgom5dDGd+ZopuiFi2Wgh366IZH61LVF9lL29GZVQ5UNC
hAtwiGBau7D9QSMSIQQFxGEgYUKJQVLYp8CwRmLorhgjpKGE6InHJKAYFxCBRhODDmMNEgZbIuprlWAY3NZ
z0zEKWzKEqiqADL5imFydhN65kSvITBNNxGoCqRGIYBYjFSBCbAtY8JyVCArayrCBBBqCi7hpqKHGkTlrMI
kB5CMOtvpACTUuALMwLALOxqaIDKPRtSSaqypNRcjrDSHknUify8OuJrV0DRu+cyX70dfybpmOr5MtFlo9t
WRVYGmV//
uyZO4EBgxlTCuZYuJmbGoOPKJGVm2RLo6k1wmXMqew8o15YFGCIwosFTohJxJKE1OWd1/2XxBxNjo39bxWm
aMHjhorC//7lYOKpmpJeT0gMEOYCDjARgQIUtX//
Iz1KqnCsYz1IlIz1VcmIm1JyObbUzXJblkpWZ8uoIF9zUqq6bVSn8VBX3E4ABAAMCnEmEKIY0BmlBgJMaBU
1wbCYVmTQoY21J/
SRH0+ABDGBLIoCgqUq2Us6fOlfjUBTEKoJiv1s+LVJRCDi5wplhcicjqlPka9SiUL4UROWxEkUA3DCMQ2HR
IsPiw4UNvrsgYaYd2M7gPFJUEA/
P7s0RYk1l9DM2hIZUHBPucNtEgilSlV5m4cZCcIBmbpF0Fj5YlVGVFy0/
wzXURbXGK4s2PYDycO6xWjg6szuS5efmHlJwgnQYnq8LIJxmAAAlgQAAEYSvDEM5GqTONf/
9QUXILiogM9ZmCMd0VDU9EoTKFwU6F0LWVHgzmxUoX9fO0JDiOz5/jw+rgpM/
RIPoE4puTTK3kKtqRFkbRiaa0qrYbLcamFIsFmrnTJIeDoO04W5kCJEFyrvKUovJdkQEKjjX5RI2YcQYeEo
emB6LDqYIgKEAQF6kkEaL9dxyAQ37FEZXVcTEzFJJkdCXWdPbQ8VVMrWcTbIwyK7Tg/wnlDSChx/
wVQu0ZHLc2s0KRrTqpQ5VNuIMjU7ZYkFeKY0UKbTJfLbdHQl83L8u9K0YRPytkUqGp6y+fhY0JfTLlApdXV
O1hjGi6P7EJvNFsQlZZt4fl52rpldHgrlsYp4sZrq8szw5oT60sSD8y51583rqlPnd73xvHt//
uyZPUHBfJbSsOZYtJoDCm9PKNOWVGFLQ116Emyo6b0wRl5jcKtUaM0UDAlABGAAAAA5jURy1SuYI9fn/
1Y7nccb0zCTn9bpuqtDs7GcuWSlCOcbQc9W8n+0JeD2auUXRoFavD88UfBNSFCSik0F/
mJCSKS2TJGzhJeF78pTLycgcxFx65LkhQFPEzwfs/
xUyXuX77wWooQAABEGHpggBliA0iBgDHDDxMzWGAAKACcwd5hivmARIHA1AkjmmK+bR2ASp/
93oJt26kev5yqWPXBDeyQCI4qgeTuOTIyEUny9Ih8qiIm1oiQqmIefGjaxssudQ8/
LWnqJMGD8JCiQqRwRuP62lG4xgwheH2YqmCVzIlYJUapYmENl1BMGydSTUV0HQI7dktQqQphKkW2H0KJf01
JKSWMxQRXYik6yHaStrGtlsHPVlSW6yxCF/PF8QmyAABFURRopOUTh4uQnTqY33zv/H36iwMDAmJ/
1py3CH/7GUCoDgOjEahiN0pgmFYvUbmvHXIGktpN3JeZlaV6c8+GS7kfr5k+sYkyKG3CM/
3ss77EZdawHPyeQjS86iNf/
lWyAAUMVjRICLtGGgJIHI7tIMSdRItMMDzCnCqNI0HUSDaAgB40AGAgAHdaMZikHoV4/
LXjp0iMRry4lACjhiHWGP3oh1ajPivXpIpMaewvkd4/
OxCRqDleUm1qYhMoj4pLNZRxQQPGbXsP8VWXG8jxnuMm2jolm7KlAXMvwzB6ep3VQuOD85MjmCGTCNCx8lL
+1tg8TOXcy7d6xPdGyjghhqjtu3ch/l3xfq6a9CyfTWFq+M19di2B9nmIQzHY//
uyZO2DBchnSqN8SmBkiwoPYOM+V6WRKQ35iImbLea484zgE8AoApiUAABQF5WE5DUKkPSZNt/
AAAiLsQhgw44b//
66hqMOExnKiXWGSq8CYNaWzuR5R8pw2pfS0dc9DOkUbRvVTmN9It2DkpyFfjEV6ZGbOVzWfVy0X1p94iQ/
KomGtUSU0C7DdSwAUAAxoEgwREwlS6RZTaXKYnL0UIQgYNuZ7+cGGwuSAZhZelxok5Fqngd4H0iEE5YUUqp
pU6YhbJncer17e797D1EwxtcOZ3Egt6vy1a3BRrGp3jJtjjv3B4p2dcMkS0S3b2mRwU5B1Uf6PUCcgsCscN
MaHx8Xah8FwVEB6c5psTYnCcIxuUCfNNyUD052Yt6PL4XCrGpFQ3nJRd2dSqtX2WY6ESgQGy269GXs3t4xr
a9vONeOYk2zFxG5namjciqbZWvEAB9TtAYLmw7IAeDY6OE4f/+PZUZkxyy6M8T5iQIgv/
yvqB1SnNv8KcnOL59I1WuWww0Korh3ynN+E/
sReiJ94aSfm+IToV8AEK5k6CN26LcUB96ayyIwk5C5lYOvWswoTjhO0g4P9YVAAEIMvOVwv4kAJajyMxAc+
EVLwxpAxQQk7AKgw6A8MAJfq7l0wPHntcNYUVjoOR2eH8bv+oA8OLl1yze9fR9BOFzyZqrw7HOOrr1hxIXG
WVJ9HGdlZ5r1h2vaNrXiavCMbsiSqL6nj89ZUnr58ytowSUw7Ok4vuIba1wwXlUunJ0XijCesiSHrViMfFh
claytrV+r61bd1ZVquZNebY2lb72PflNrWs98LOR0Zu1lYabt617oKftr2iOG//
uyZPQDBhtnS0OPNXBoyHncQMO0F02bLI11iMGiMCf9JA7QMAADVA3UQHAshQA4AY0kBZT//
QbKZFSZdzYuF7/jLypr4KhFmj5kPcUrmDAdLFOwCZvJ/oxetWcrW0iq/sKOH+ZXY0VQpMUgEFXnxv/
XMs9v4R+RMd7CTlcglO+D8F+U7D8NCDmkbBGAAAAYjVlrDIAoLjIGBygkMTADz0sDC5KNmMzTH3DPmJgUF9
y8ip34V2n3AUPztmkmLbLZfKZV9uaZ+mtFIfOkMcT89LNHSrQ9cYX+HAU8zIlFdQJ8cZKwdqHKtcfLUK50h
nDJijc1am+7auWmVWK6kmLVGk/
IuchWH1T5xNihWeVbPGEEkkAcozpZ5f6M7qsP2Gq1jUKH1Sf0IztSJ55BtAYNbGv491z/duwv/
pYrWjEUC6yZVGcUUuXrClp8obd9q66gz0AAtDAAIFeGYDQhKQYXBvRX/wfc4KPIgaBEYJ////FZ/
TvzhxqQKqjKzO+mRqMUdSKC8vEQrRJyVl07l35wHUP8z1LILYMH1phvMmi+ZZoynrzyPp
H2a0v8yJKkz6f+hoCquR4phsIBXYgASGmIwKJlclqyzkHqZgSkMGIQQWmIrIHYqYmHoKA4LVVl0LubMYkU+
GY0JE502YIn3VpHAyB7xKH4sxV2631RylgPJ8sXU7dOqJ65Yepl45vigkls9KRfH8vFhuq5xg+KizjMnlQb
JwGFMn+9RusRXfa3yubjwOhw6OZbMNtEfnpnEXBIOzN8GiocD0nq2jw1bhMzYqFglk4pOnDr+OJOO0N+Cml
tcxr9mVWVRxnd73yWI2Tv3vgd//
uyZPQDBiZmSSN9YmBqbFmcSMN6WM2bJw31iIGdLWd484056GV0HdDfryfOT00ibbCHgAAHQb5RcXeMAwAH5
/HwqK//4ZGBJHihivVzvzBwuKXP0AAzhFNSgzuzmjmGw/N2+G7n1MPHfMp4P/
d+x3yQv9E0Q4Wlda8Eefnn/
dEhV7aRdm8+34XfDuQQm4IP8xOgdfvijyiNIAABl+dhjUASwoWBlNQGhiYYC8aPRqLEOYXCIYe5NpwMlGGE
6BGYEwDgQBKbighbDgUNS9IsKvCFr9jCg7XVVm1f5gLvBctYRWmLw6sNMo5RF6WRq3tUWMX3eBBOHEOExlJ
ZiilqUaqtV8mA23mbSXkpKlAGGiQwanoig0OWrSR+X2kK0pvmAM6LXOcv1K1B0QhHCEZV4KoNJsxAUhlTP4
k+2g0WnIyRS6bbyREgZCsHPg5lxC7Zc0zRH+XSAQiRFLQYNTqZIDjkUTENRcMcplYFOHozUTHiEJTBpWDAR
oQIdhxNIWKUNLSmCE2JQ9QYLCjRBfKLL8S9XxHpA0KNNHaasNKZIzeA4TPN+8jhQC2SNyuHGeQA+UtfmQVW
bw5UonCmbLtW5FFbvYPiNI/VPDU/GnmfV3Xokd4bAABQk4PMGILG3G/foxC8fC5lRvxVf//
7+Tj81XWWmJdrUHjqk/KOSj4Sm7N//
j3qayrj0KBMmtllGgfEvCbOra2YF0KPI2hciQrbuogqUNITx9JxNcUq0hSZqaVIVnx1NmpT93sZX3+66YNd
qNk/v9MvfRXYqb/S5DAAgYOP4hBJgYCgYEmKAESDUw2XTbMKMaCoIHZgXBnuJ4aEFgCF//
uyZO0DCdBnxiu+yhB56kmkPAk2WPGHJxXHgBmcnybuoIABCbqXbE23hljEbU5nrl5SRVrCDhYkS6tZ40FaT
jyNEWVIc8z5w8S8NXUaXJzh1hxYLFpzeqSdrgv6QHPU93mpVNGguCKarbdNbhFYrVTquivoD2LZ63un7veU
6qXNwcMva5juLg4skaBiWKplc9bZ9d44xkKgwGrEBnrV7EZYUSSDXf8a80eWNnNH1H8V5EfRa5s53i4iXrb
2hxa4mjgj9YLB8AAxFgRZR8YgzwEsA5P/603BQCsIAvGMvKlv/mznEeWc5xzIPq4lT7tDl/+B5KDv/
aWfs6ZIO6cfrdY9Zqae+uPmUWr1lUdBz4bxaxnwRVVWtDMANV2zJX962nawHyDJOFkutO9iZQAACEIAIIAE
AAw3guABiQChgADpjcC4qDJn0fpkbY5sOhxlcnpsEiZmBDhk8IICAoFRWYHAmZMiEYBg+XoYaZJKZMiPoRQ
Wy1IZAMk2ZI8ZAAHKU+1GGkqysPSJScMOdNKJBQswIQYDpQM8hiVSt53LNA4AUAyAAxoVYcAuRw+YxOZlAZ
0k0tpzDnUiEDJNBBAIBvSDAhlixjSxquIt1McxMugNWof+LNaXk/
DkugZYIac2WaBwxAOBQrHiojC0wAyjHryAax4w7p1oxZgyV3dRKImPHmbLg4uAQJbNj6x0H0KzMISEYblsC
EaPQ6Ki4KGgUM/
GLsxp4X8jjh4xWUOQ7DEAcAf2FNRLdwPCYfYs3QRAwABLSoSDCG2YJVKAsg1WwrSjtfut4VKbKmvtYhGMCX
tSCvK3cfiBH4whTR0zWSxS47t2//uyZKMAC2eDSc53QAC1rMo/
yDwAG5l9Lx23gAmJICh7nlABC5yNyJSl1Jj+/////////////////9Jf/////////////////
4Z4JEABZnU3cU5l5ehgKRCIyVTUcJmKDMHveoNzOzoXCXJ6WABYElfYzr+nxV6XJHf0dfMVdtKZUiumNxgZ
Gc50Uo2BopljiR0Yfsc6GSLfLnDZYlGJwniQKPWz5xEZ3931G5Rx5IDhHxl7CiN2pVfH+PPAyqYUa8jZAba
0+svqZvJndL79NYeTTQ21x3SeVmhwYbLvdMZ1v5xnPx2emMscfx6PKY3W98z0gbthyb30PVYX/+//
+eNEAAAAEXhASYoFmFAgyKmbGhQPH+tgIBBEDGKyx4cqYcAmCCakV1rYZELTKrTiXCUeqhVuUVVKGKhp9LJ
fdLpLj9eD3RRPRcSjOEvpuklUyOX00zs5ccMCtVRBUw0ToU2qkzkLXaJZrsDUrWg+FUzNz5IEKRQdR5j9J0
yE6XaMcoCFoTChsh2hys7IOEtyRU7MZrxmcVsnKuULw/
leaKSRyRbWc4TmZz964OZJnGhrY7iJNQO29XHulX2a2ZnKHFraG8zXT3eq680a3rWbeq2u+3/
ncGLCw1UG1ECmlhZkAExAAACAyDPFyJ4hZ0C1N0av///yGnOJC///
ba6Oy5n1VlZl0d2Qx2bqrMaJKhSFNO5TGkNdkOR6lUxlZPyGVjOceUCHZb4iHSy49Ff//j/
f4m1z4ULitaNWYbENpRJVSAABg4Q4CBMSAAwRAYHA8DglBgRG+hup0q8MORzOBRwAQrpEx1uoCAVcl6Ntwd
Z9YhD8//
uyZBmDJkdjyausNeJgbHneSKNeWM11Lo4w2sFrLCew8RSxCRzKMTsPtEj1RPOLU4GhcMS6HQBQNrQwbWELA
tSH5PI4wskEZcpZElwVViJYnC46qoL5kePokUK0wPytdBNlued3jOSSSByJS5uNcQjkmgeHQ/
BJ8sti0rKFBaXutKWlRP01TFr/
JNoI1CJM6zEWLxHQCCk24KNJES9oGtMZB1olJVbVZ02Sa6ep3vraazZbt+fp+ZSAkCAAAIYBCC4GtCPQbvA
gBWKRv/8WIEDlKIf/
9uR5wMeg8cPf6vlJo2GfEoJIyz1HMmiv7GmS8Lfnxt0q+nkXulvPdiqbH9IuPn9X85T4Rn94bQbObRWKVOi
hMNtvxaxKRmICAQYUJCOYoAQUBCoDgCAUEZxcvCw3CgMHDyYeJRaGJsjVsgN+IKuQA9jnpqIbrogiX6g19n
BgJ251X79L5UaZG5FM5Ksij6jsFPsv1izFXagmAqA7UG6JoT1yFYeSEcpC2gGSGV1oMgMkokjQbuk06L6wn
mCRt9Akc8tRpeq5rm3CGXmBEEA+HQd4L4cpD+4EggePMoeQAkaB7LQFAQy6JoGAiIMROBQEARRFzC/
skLKIGw0lZv+vWQb7/X2QHXiMBip/SJgAQSACIDYwng+jHT9kagzTiwh6P/
+iRQTcVMVJQDIQ56PUhi3K6seIiQ0guKCxW6E9nY6p0e3OqHXq6Md0OrpVr3TbcjtPts/
enT3oqTxvQH+3IifPDIjnP0owQQAAMbgkaDJaYGAFBMXSKgDOwGVLktEACmJkkWBCYUlkFIwJ/
pFNLDoAEgSaWD6YA2VoiKYr//uyZBuABlpcysOMfGJiS/
nuPSMsGP2dJS49MMGAGmaw9Iy56pxSA0ljqFQ5q8Jzxydlc94jIDJJgXX1LAfGVh2Kp6aC4xGgcWxyvDE1N
btqtVxpVV4mrIW0lLVGckUvmI+eQYVpU6So5yGqlCkSWBDo6NOrDZslR6pFGnUdWVYTpfOmC/
gMTEZSqSKE9hSUJ2nmmLNRyYm2Sen3ePWsKtYWJcXrSsHEmJcV8HO5NxAsksChYQdX40HmAA3IjAEBhgKsX
ASaKHrJf/9Y2EdRaUNOZfRRh////84cL/
juayyl6mvDNrrGqmvfhstvsSkKpH0vWThlGMLOhUZlSoJY1Ls/WS0mjc/5GLlL+Ou15Gypspf/mvg2BB/
gUkCoAEAIyEiwKFbJgEDMvCwKBoOPwmRDFMkw0pDiBXMBAhqSXS8lBkPVkVo26MNHuTxVQnBX1gHstLI8Da
ulFh7zyUisAKdLgSD4hgCArIwJNtpESoZKigXo0iWKnVBlERCJDqjIpy71CIxt59CGRSWUNpLGyYtN4qIoi
pVQ6yKRUSoUhklKnuyoWZaVGh/
hBAfmAYG269l7FVIHTWIpkJ9tSSOEXzmanGUNNwqbjsOSEhG2hMoiCduiogLMIJOMMWqw9AIGqYMl2ASwsB
ACBPGILQh5Kjj3//8bSmgAoy48QMResyiTbXL/y91+rNJk6nxc3ll3b6dKWpy+cdc46lVLI/
weGTAaLiePmTqVyJP86Xvda/uQ3X+aZm7/ZUN//
dUkxgHf7s+1EIUUADCzCMCgR3h0Cl9WgQo90UwwHmDAOYFTxpEggkBO6i5EEi3LoHTZ3tMSHbzx//
uyZBgDBgNhyUOMHfJco9neNYNWGSWBKRXHgAl6JSh+plAByts1aAJFUnK0PO6yclh4rUnibNbLzqEhVdLnG
KJyBpYPFjnRwRImxDtV9eyt5yNKYsL7pCkoYLhdCcKDRktmas/
sWPiWPRltqJxSUlZ+fLi4hcRjI8sdtjsoLF0acwEgsHkQXh44U8jbqmTQlde00tNGy8jW3bKX21zUvRdXuu
Oxh4Sihgg/kVd3PIYzTEh8oLDAEErFLqFgbSeADcHsCnGp/yCox/NMGeVLjg6/
I0J9g1afn12zWkUlZTUgwKmAGOWPA7KHhNyFHAQA7+reZIH0XqaMYtGvAESDTogDA5rLx91TVmCYPny7IUW
PIAM0yoKmMhwETHGAEWA6YfCZ0E2GJAYvosEgM3YKD6mbX18pypdGDBeDeGQDoR5gkqVqvVq1Hnb1JDXS4Q
nwbv1fCy4NieQbZMrW9Dp2useEl1y7kb4p2uO3zPmaiugVvGjs6mV2ITNHPUlLxYJKhMzZAjK6X2bbvdJ5b
ZWaE5ML1uUzY1oyC19wojlc80rlpXKSMhJeTPQlWrvLY1quA+ZGxzXozG1uN5Ju+Z76jSPYusVhxYU2db3a
JbMWucY+ve2JcGMdGCjNDUwAACMkbUSMpPlcLqwGRj8Nlv/
i4CvUqANYUER5NkKXZqksiuhVUv9yWKJHZkOd6Dih690sWxF5UevtdbSlbMd9W7aJstby6FxlL9Ed+Mdp3J
gdn+s/flppkzvmEzJEgAgu3fkn+6qSRUxpEtkNci+5YCLEO8FMsEOWCMLOOQFMXPFkVlEh/
xoy8BPjKNM3Q4QPxMCMsgtw//
uyZB0ABp9jTmZp4AJoKao9xpQAF92HKJ22AAFwJmevoHAA4T9EKBrIxFjphsjG0x91NdxeGmxLhD8K+K8c2
Ql55uZxpVwi5eWPejAyxllvLuTAT0vYhKKhTXep1xgWlclI8cIL6KbgR8gxYBMK1fx1lsklgd+
+3EW4MJ44w0MNtFrzUtL7jAUrK3sV9Z92SC5LcRweRX9JnbKdh1Rift6taXddf4tnHx9//3gU3neKZ+/
n61RhhYtLdwjmZxkC6LZ3ZJStNJlIJAJBenDybhwlvr2rrASPYrkDyhIeBAmJDdG19WFhrw6g0XE3IgzQQR
3eZlqFDSgUyo2VBArsPGpOhxZATVtnL3o1lQinqi66dMjvvORhahii7zB/
+9bu+HFPYJ3JEAIRQAw7o8gplBx4QhhgYQYiJBPkTHoWCTHH04ZuKDYtky1/
Wts2EoeQqBwlCE2sFIxSKWZOXUIpgKG61tQh6KSyqTn57VmhjTnddS3sXatH6hGmTnA/KGEE7HlYmx4/
blCOl56VSqevrjE5osIA/
E4xPRJhLgggiA0AEpHUBejKrjqUxeLxKVPPF+LHHJckrtkkMFRyZvEaa+qW6xDty6Tfu90bFDq9ra3m/
V1r28Z1azubS/s1ytvg/3A7KyS/4AtAIMEIRcOMGTC4MTsk39RmXAYDoqLv/
0SvdnoaVna2ZnO3dOjtJMlTWnPOY003Zzh01FQ0001DjnTdEOsps5dt1SympqybI81zWtlDnCj21tdgY2sm
m2W6FQggUDYhEAAAM9GmTMIjFg1yCxOAQkhWIYGAGBAg/UlBo2yVKwzM2riWO54CDwk2iE8h//
uyZBkDBdZcS/NbYUJQQ1o/
PAI0FkGZLxW2AAlcICf+moAAlp88+BrWiKckqY4tYwSUy77v8PcLNIN3z8rn/
kMln9A8EhEfnDp2voTHOXqNO17TjR2JZMUXP15wYCQeWTMHFlggBIWDNHKxytzMexIPTM7P3lh4wkJBYdbJ
bZMBoDcdzosLFi9fAvefocGDs3dzGzh/
8f2sL7c0vl8pk1nNm3PtwKTinvnkIjEtUAAVDCOMghwRczgaAFyfV/
KzIY3X6EzvpR1g2qZjhzZU1OkG6nC7RO30gAEDjnhcPsNyay78HAxbD/
LoMuHThwVfP2CzWMDNA+lzwuDtDhgB4BzsJEChiT4XATFQ0mAwkPU1MCAjEn4w5ZCBtg+DNI/
TjWQxxOCALy+S0ODXdozlzk/
HFFSA6Te+VegY2UI6slOPg+jmrHSqypOSaDXpgXNunrv4u+1UiVSuBsq7BGLS5VJ8uZqhJriEBIrHymtj6y
YdhK0+XMF5XFN7wnRkZF6MpiKPqbRxEnFzKcmn2Wclpc8fVr7Eefb4stm9O7nU+82jvkzvVn9zu/
umKczca9oTIAAARZ5IAACCcDjESYzn/8DgaZY4SjE6SiAzyTf7Rce1/VT/8XGVS1rE/DX/
HtK61Ez7ccUyxNVFLXxfxc6jlquM44OvWdEo12ds2CndWdW21VvFWB0iMABACamFVVWW2txtCQNINGMkA4E
YEHFMoBwdgEN41oU0ZUzAQKcTTDkE40xk4YHpjJuAwwJzYnqm0IBt0ed3XWaYoJCoFXo9EbmGv0NApbK1Rw
FWfmHYhGoaflkljVxOOqytpbrqZujEH5i0//
uyZDaAB7tlzn5rAAB9LDpvySAAWIVfN5mngAGJI+hzIIAArdF/
XBtOxKIfYIvte7D2FTcesYxq1ZlUjlErn7c4pZDDdWLsjf5plafopXTSmljVjG3M8u2K9S3P6tvxBb9yaJx
eKSOiwoZn5G/ktjdFK+yuMvFex+7xw3nchX8olksm43OWJjCnvb+xy9qvjVxv2/3rKx3l/mPO/
lUp8pyH69qWb/fbF85////
yiLAAbGEycvDMu+2UqkDgtguM3Dtl4IYGb99OvJAKJ0nD0G5whD7oRL9Rfggn2URSuCgaPDKKgrFh4gCV7u
R0GCHKHdQjxKXoyTR9opnL1CGGOkMlDeJiJiP/d3m6TriF9fnmWi41PtHl6+scr7SQk3+u0NPx/
VX547g93x50SACRC9qCqQAAAFDnglFQEITkDtEhMyDNlSNMGMrsNGPM/
RCNyloQ4e8OavmIyMdAvkYcRPg3jnFsAmShXzkNlaaKGLieaHptxDLgT9GoRdibGCFOtR4FLocX4/
kPZpYcGdzvM91mH8tjFMaMFJOWZHJ9hiefv4d4EaEuRaUTnDAtMs0OkSLLd9u0WW0HdIsRtaD3V6Ek+UsiH
RWmld5q1Zj5+qtbBW98Ro/ze8amJdONryxf4VA8CJ6aHnT4NopEMv//
TYiFWKlbWo2AAAAgA2kDDYFCdzz9tCnWCjG94hH2SRci36k/a+SZJqDjrHjrsZjaLaGiCd5iY/
94gUKsWh4dUeP9tLKWlJVRRZ15iUuYrb+iWK2ib7iboZdxS6m9IuLLI7vQDAIVTIAmUjICFS6CT4gA0czAg
M0AeMFADAAkx53O0WiI//
uyZBCCBbRmy19tIAJWZDnt5pQAGN2ZKw49k8klmKhwwAjQHfhVVzEzE0AyIgCCQByhERjhOTo2E0eEYEjYw
KsRLlMYZPDXXmoxDTa9o4MGGlw/
JVDhh5OeUUxwgJECAjI0ZPEjanZ4kJBRBs33EZ2u0FxABAkPJP20AgJCiJ5OT6uuJ0YoJBRBAUKBgkN2ae0
0R7uxSOEAocx51BY978nZnUhe1ko5UFIZc/
d766NPahdZspN3rEFFhAB44KUQQUA7BKjUS1rf50YYmDBYJGD5hQSD5S//
MHxN0VUQjIjcliJUacPxOHgABDB8fgBgfWbBgPlHB9pkHyikptCwIWfa4UBBnT+1QIOTPoA76dRxAUgMQF8
wWB5tfxgILg4DP8YVFoWASixgQXHJhCTBFx3ZhqPSOldx9KeMyGgxRJOHI/
lXChsijTuUVClmcU9ZVuRhLUSXEaMyx9+NRdVgqBfdK4yi3HUq1bAUqN047gz2hv4LKuChPqGcpmqpXGVHb
WRDjqdzSn/RhPgcSvLahzk/
Xm5DmeLDVzO4BZ5ByByxzQxJqjTUkgkZCUWo2mG0y1lZAZlnIobW06X8zu7FsytU9PdDPztdrTP6Ji83nMZ
6dpudG1aV98Ae1lyhYDkpuHNnPkGKEAEoCUyiFb/
6urSPFWZQhxTm06tMYqs6la+bMVCm2zVQMKPPWdfljzLaz1enjI71pJdD7Cr3q2EbhtUVChskGKwJBGLFhQ
SOnV8v8YRINABERHJIwxFEYQ0lW9sOgRRKT8IARKY3PTpWucT9JVuWyUjX0SLhHq00J9KLWdPmYbUd28LcU
FbCWZn6Fll5//uwZCkABXZZSqNbYhJUhDncPKIcFZWFMWxtiIlWICdg8wwAm/
GdqjtYhPvva+3VkkD+W0nOXWExwsLLYVVxwJC80oywrOU2UT5DA1h4sfSEgwMHV6cniUvK52V197ceI09oL
Uoe9FmOrrP5rdZpNZ3c7JZ+MGdj24dB2TgGES4s18AOglKAxIVWZ5NAO8/9SwccPN0MQwt9/
GKtBnADnuFuFKf0RdgYmMhcmXFACgg2k+4EDiDiT7XtkiY8mkOijqceXS+BukoZv3wux9cgciyGCAaFw0KC
iTAJ1aTAWsXZHUtbk57KDqg6JgZYdGFo1OKwN+nCVVJhALgrEnrrlpxZDTxFwxOqNW1yFKfjuhl0n/
50vq4dLOu3DvPPZcsoHnSt1IYy/
MR0hHTVv59w+bLR8mPjL4joyJJzdAdZZDgdh5NSye0iYTNOeJxUHClsucsmyNtaY62cDUPrnMcuaeVwY/
i6OXXbXtd2k92X+te2c2/
TP3//3INzd38imD2TpoToAIoCFoM1wwi5PokEEe4wYIXwg6UAc5EkRYCeZEJmsKylDOZ7RSBPSNbJIy+fY6
X62oEyu6VKInFmV+sHs/
aGCYCGKwQbLLqZ97H1CYoPOmarr8ctKktiUDVmX76pTcKBgEcgZbu+DCKABgJxnjCyJTIkrH3XXBqY6vGLu
3F6dTeOvHcbogEMQEwEiAoBfrE3IaluNKkZIiAJEALQGdGgvIj5Os7usrQHrABxxgAGY3sD34mudQd+XvVs
ToFIbWFBKJHG6XJyxIXjve3D2hGe9J3d299rs/
fadw9utM1WbCqeU0zMg7E0kMumKwef2n3/+7JkTQAF6WZS+wk3AlADqlwkZk4T4WE7LKR6iWEQ6PCjIAAPI
EzDAA7YiebqDpblUFFGHiyiC19vRAvSsTtHHjLxnYtOo62GADBVAByZ4eB9pj0TE3fe7iAAKP2uaRT48R30
k8qh5Jj6jAQABChOsPCBFLS450uFjgPguaE+CEu/x46Q/
mPWsjiBmQS8hkBdTJfEGKn08iAIAAFiLZ0FLxGeg2hJFETOPL8OkIMQ6wtYgGbkps86DSSMmYlSwy+caoHp
cN4mnV4k8S7nGppqYldiNRZfTfv6kNI3e1L6KfgVgLIQykAyFunqtLgZUFT0METt2PVQw1ZE1KaFVaST5Sp
pFIS1GoVdKbHVJsBbpf+Rmsh0tedUlchJIbGtBiWc4CsUtZTJGAhSmhYLvIFJuoG8cBWKPAAAIgCBbAzAIX
JMIdegCx1Ra2SbGMVpvZv/
6X2vNY5rlUKmh7tPUjDDmMJh1gGWhah4SnRKAmTolOkicNbVRVrBIKJW63DSQVBnAzOCsRMClAxltBZON
fUxSNRIMoiGBguJDVO0wEDjEAQDhQDQcCAAUs1riPyKsbUNUsjT84QS6KlKgsMuS+6FLupxQ88T0xW5DsOP
xNw0pW36505XZdxuMAONZkzrl3UJQlENgAY2RVZ1hKOLkHmcLUxdNmW1vtP9a8GPNRreZplGXZqJD1guBZ2
hKcGI12XVQolBdDIbXEk0VLin8Tarr8gldybqVeKusQ6hrJVjHQrOOR2JYUAZIgAAAKHI6R7NkJMAdRrFy2
kKylOdxiJkI1WJmKYzcKddqlZwYZ29jFDBUOl2kiSAaSBdYSPU4i1120H/
+7JkcgIFLWHJg4weoldkGc09ghwT6ZklLbDPiVqRZVTzIThgmwXJZbzB4KMnX6w0RAqj2oOjB79bKCwaJEV
BSzMD1ewBAgaINzMCCjDww19RIAsgDwpcHJNIhDFV2cQHIVMXxbYwC8Dq06EtG0AYRtcTB80p5QzApVAVD2
Cq4eQ9cEYulU7UDswy9y6epukbX3/x8x4s/95A0YsvHT1r/
pMxmJbC2dvVVbeG75eXcfc9M7VmY7d4jXIlPmUYPvWOL8O6rptpFa8Z1Q5JgKizUn+EuZBuFHxhyLliQEwC
M40WlUNz7E5cWfCg5y7FstQSzlyDap2hc3rE+/
fRR4Qi2lamhIOJNjmGl2xGL3iqh5QOqRUwsIJYFQWqeWAgJTdKLSM7broApNV/
J6UGOtAv1NtUFACAADBMlB4Iy5SVey0wQCZhkdjDzBAFzDlJjrMszDEDAgCU0iUwzpKU425OxkVlwhOlbdt
ysn6+V0SVqcoSub1ArlCpGZQ9lTDETEl12t8tao+hazelwmCJTboF7BU7h1navNTkr6YkVXrs8hofPOFosf
WqMktRWHVtMzsZeskidB6DniLI6c5InXl9Kamg7Z3C9qVIlNO96bW2nrMmIfy60dKrCVYBqQRBhYCJnprLa
EfrVVc4FHhKWn8jBStglWbrYkDwLmBdh0oCRsJrCLhSk8SHrLQkJDjYbbUbhVAiSnJvat2xxZzLxUPXvede
eX7kpfWtiFVLCZxAog0wAYCieNA4LAMzdVpKAZQDJhWZ7dAYChi2gZ2Ocxh2BZchQthjUpucmY86tFK5mxK
Ydmn6nozgshxrFKntpIviwZb/+7JkoAElMmVGQ68zclViaUhhJgYT/
ZkXLqTWSVCNpGEEoBEdkiczImSJB7EopL0ty2nHVXlAwnqdFIosd25FncJjaXJSLeSQqTWOYn97OR2vrSYU
1Uk6pw0Tyte15j/DW2J+5NQQZ6trhsa/kzuWo1/rnoa1xPiKt8W3nOlosIAuIBMGLLQrcSoQxf/
kqNKJFjmM2VaWtnmu5h/WHo5taG/lObeaKCIhF/9qUOLFXnGffeyZKT3/
Xt9iV93tz+7veR3s+mherg79jNN9+2Xf/
uuW1QQCp5AAAsFvRTRmPs+MADTTK4y0AMVJDEx6zjpTDDgJS1yKqt0tjUTgyah21EaeBZiWW5VOROdYvCIH
vUkbmfor1M/
tymRUeFGzhqwPSVHIHRdx9hDXQ0d0F5ZOEtZKMPI1SoNij65Z6CClPJ5s8GptlIjtvSPUYqM14vhDeslrbI
MKQt4PiyPgpzbtAh/3LqVIIoYaZ+f7nnqzLB/1lKQpmLQWEoAHvsqkQAEQe5mX/
ragbTUjQILJDmWUTi0SPeZec9NI1L0Wi81qZN0ptSHCTCsUDoC4MshRbjwiQslGJPPKkSLCyzMGg8RsKhNf
WZqU06mR/
o3EnSk8mmKqHyW5gHqBAoaLjCkCANiYPsFCiBwI6TDHm8cce2GERPTysfSKy9sl8BMuNEtfK04M1i7z586q
po5MLqCkZRIEkZ508eRUYdatljtmpOfpY/
f2xkvLMdrOuuO1OGWzLcRM2cWu1c49WPuS2xp1t0a15upzD0K9pcwdpSYc8thffacsxUrZG6nJpZbUXLfJB
89WYspswumsUBsdJFtetGuXIVH/
+7Jkz4EFH2dEy30ycFRkiU0Iw3sWnZ0KDfmIgVmrocRTDhOlUpI5PoVml7CSz9kJPkAACLMUwRHf/
m+1VWzMyRzikeHL7VVT/btSr9PVeFuGcpY2F8yUFrrrKX8PBqvCX6VbZZrqRVgef93Y/
LcoGYMx5yHVKltfAS8mYffbp2u5uis8v8Q6ZYAyjGMEN+kAHORxM0CAkwphMAOiM1qTMDRgIQZQ5LJbI+8i
jEoiEvn5XnNzUNOxKnl6OAJEIjJj6VK256WSapL6OGCE0X18QRkw4ToLvnRq2vMGS2V3lT44J/
Ug2iQ3DKyuqmFCPPbs+8tIVU3CCOReYhaZa2Bae3jLTBYfWeX3jN+BFGcripH0RwXWraleS1qraHFBg5vSk
uhMC082HJg1AwsbRPmxLWrzI7R83AXTs5Kg4rXjhAsuOiqOrS2KA/JJ2lIzRuRWWgdDYXnLN///Od/
hZhc//seRh36T6UkX2ZEjV4JNlJ0BAc0rzCV1Wnf/+49g07ahC/
wZ571fnyjjQ4EXWMluAW9m8JlmmtSLUT0oudSRdASo0GnsTGgapemX/+xHqTCVf/
ysoBA0hgCXWcYJdhAiIhBiLgO4muTmFqO4a7IJphVgHGBMAOCgClNX6wlU3ORq7u1uKv9SzV+9dEYANmjpY
Ckfnx9HJudKlQ9Oe4Jyx8aTdC1KtffOV8XICZozOzsxMHX9KzsJo08lqQIIWj1tdCaKj1CV5Kg8bPjvqsm7
i1atoWE5bPT5xehV9haduysiWxkjJLjd0NjvbL50vZiLqSI1MHFiiNlh5aQFS7ErC8lNr3u0ktybvtPl8wg
P0jDJlLD/+7Jk9Qn2SGbBi31iYGUsd+AcBqIY7Z0GzXmJgZyx3YBQGohFdWmZ6rVwLnFxTdKEgMHhaj//
+odDr+jYBkt/9WRit8zRwUt5I49PBJKnRo4K1q31ZxLf//
5mQUJawVE5LuRglrnEqr90W5pHH7VU5Wublb2q5okSd0f3nHgFVpHPzURIBV5n9zkjiVAyRpHf2JUcAgFKT
EFNRTMuMTAwqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq03FKGMJpgYBgcDLGgNwsBYYR5NZoijVGC6BiYCABQ
hABJQf50KA591YcR5GFwhNkNVqcYkrVDVVWxUtj9qyxuEBwa3PrurOWa7XFFtkePlNHgwyqTQZHJWaDomLh
pZjDah83kDKMtJtUqTEuowSFQ6PnBZQwmw/
NVEIfYTIhlEvEMHmUYjM9U9EiPHjvHSBQJobIRWK12SqJEksTkYpaIiPTRENCNAca0VLnUjRu9iiRGVUCkE
wyTCdUwVm4aTnBZIwkToYAwJIF/kR/////+Zcv/n8URCWGRk4XQTUTSTTqfySqxUqojY3N////T9f/
W+VEUjt/VFTRU//
lNVMpgYIEDIcYUAhgoUEHIOWBZZ0Qry7tmKs6CAVMODOMAwEMEw0MUIVOZEyMLgfMBwCVtJ0k3ja1w1Fhgr
BVDYpFYnYUol3SLyXh1Jn4e2Rra77DlWpdPcs2eVnX8QH07M5Sg1dQS+TzCIEQN5CTzYpL7HVF3Ep9DTd1Y
0p+dLMdL/
+7Jkvwj2N2ZBA89LckbspUIFIuNYBZ0JLr2NwAAANIAAAATFsP73gYLsTeK+XvLlJbjjO6tiQ25w0Kz0+PK
uDs5dw+8mMubGfrGKrnkknSVs7R7VPAicrG/
NvUdayObtfGw+mevLcpz6qm8rkJtl+qi0G0xBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVAH9h594CZCOARQcGckAgQIMZhhBKG4IC6ChXBIFceAhQuZI0OS0EknYVDsD0uWe3YhHJYjTGqZuQp
ZhCuIMzweGnxweYJyGWFCcHxKOVIo1OdCKRhJXsFktvK3cbNz9heTdIglFY4ghJRqkbP152qoiCAmWUCW6h
gwMismOjpekXg1LNXMi0vngTZQpGJSK/Po2qFp8eTYPi4aGHVIxudtLit7C46M/
KhJXWKrDB4rHIpJHGlkCFyw9ZaLxaEojwlxiAnMIjk+uhnydFQR21hNPsPniPhYZ7HdSIiQQAgHB3mHaYQY
EgDZgQBrmE04oZ9yT5nFkI0kQDRKCigAuuNsEZ84a0mgQauhQxwW4vAwWPjIIYWJLpL6OYA+oCcNZEJkvJO
SfiQKwgpwFzgEJIAmwxw6xC2pz0rFOkzSNUuh1k2LaqTnKpDBJiSluOonq20mKPhoXaqWlCeRUjkJibRIDs
UCOExZUJC1C1nexFzIKLinBwDBYD+P4dhfj8EwkL4GcPI4RCniOSCrFGfOFhkVyfMglJFMh3/+7JkzA32qW
dAC55iYAAADSAAAAEiRZz2L23rQAAANIAAAATxiCLbw6NliHAT43k2+ljhGi0LEzMRL2I7WQ3x1mWW9IIYm
lOLkbEkomCBfkrXkUhKeP1tPAyTxOo5i9DdKlxQ5guXw2nOEm1WP83y+E2nVUxBTUUzLjEwMFVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVAQSIATcjmbUMJuhgWbf3mPCJlh2YXo8BrQicmEyA4YDgAY
YAUjS68OUlmgpZud5Hb1JZrTsxVIAAX3kMloV7Nci8Ji9NLm0AoD8rE4qLylAOJvrJdNzs9ULdJZmuIevny
YFVBmhj8lHisJAIySNopFwT2UfoXFomrS0PRq+hJjs7YIpSjVMIaw5UNFeKyapHLBwhUdLDrh4xGtjOTRlA
ZHwfjszYOA7QSow/
GKmlhIcgWvJCy+iWpDd9O8pSlsrHBuywbGsVlMZ4f2N4VZYpiJMoexoQiATwcEqFlcBMAYCsIYAYBJgaAOG
J4QIRABGAwCUYZqDpw8liHwqZmw4YeBlmER1SIKK7iKPrQKOBX9ctXD6sLGgl9FbjAj5E5cMZEBQ4XIB4Qx
jJwpkOOdREJORPKksleeBAxA0YSZUKZzUB3RE8+elzM8vh3l8UpgzoFBMxzBa37K1N5d0eilEu1UpEohiw/
TzagVarikGISQd6EwnSMPRHHMWFOmGb0cmyIbWM81KbhlMJzNZYTyJwhSYOVSL/
+7Jkygn2xGZAs35icgAADSAAAAEhVZz7L23rQAAANIAAAAR5GrglpdC3thezwSzKqke7O6AhyJWE4YKtLma
BoIQXeEbjQiZkMUROzveI4/
GcviFMjKxq0n8J9EOhJPHMqlWklpL7XzcY0czyqZIONkhOKkxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqldqmyf1IooEExBW8wpBAwrFwxc3k+QkA7kkxZQEAVMmQujKq9yhkH1nZuT0OZ2Z
ZKC78HQ/
mzfCbhikfiM3TEXqk65hI6VYxLIyU9GeH9VJufmCDFGrSaoMHXkhJUldekHhSWDsshagmgmmpas0wWlxZA6
9piUiSqVExBVHJ8rJPMJiSPqlcPfGFC0cHRgcl4fbkXEiah13q0kQ/FcsxsE4/
KbMZYo1Tjwuj+TFB1ETjxe2fEkspMLKyyEeRF04MUS8SFr6IupAnPxNOGbFhaU1xkvH3nakcfU6THIAFDAB
AOMXYnwwGQIjBlAoMeAEk86hQysW4iDLKAUCb5EGTI6q4dXVlt2Bs6l0igVPeu6jjlOJ95oLdiWrKYtB7PG
lQ87dR1Iq6MlWspus13ImLHa+/
yDLvaeaKLAwKnoO8uohplnAT8OMXcxS2lgECZi0Mg7RHFtOHYe6GEEUImp0BICSrQfxL2ouBuIUTknZRrgc
7cE6mUOYi9oA0BLsiuqI2b04+kKU6cRaiLvFL0WMTFTrlCi92JCf/
+7Jky4/2qmfAA7pi4AAADSAAAAEiMZz2D2HtwAAANIAAAASbMtE+RDCLMbxfEPejAVJ3sKDOo8T+NxRotXK
thLkPlWNzWym6IaebKc5pPC/
H+GPBTRRoQzOjOTx3qJQGCUY8hJCdmgxHCV57oJJDqH5BskxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqrQQAl8zPXXHZIHB0aKq2GBCYABuCMgOiHvMEhACoHpkLTYhD7lxiflcKl30dy1
JXpuyh/
TA0CE0adnBSwJFOf7esn+ftmORmZkKOp4jpSmTL00EOjs23TK7Q00lLHV6MTqONY7GdDGgwrNqzfxkUmL0f
wEIRj5mR/GRg3AcCMaJzHhOhmyoQSyREEfEklw8oho2A3PdPDg/rZYShPRFZoOlqL4YxwjRq3oE5kVy/
9yqwdK1ITVe85UcyVi1Rlo4umaRxPl2o+pFzYkH8bx9JMOlry4dVBylUIUyd9jMCJzA4AkwNQKTCQLGMBYE
MwUAiTDXS+OMMj84GZDIQhMGh4BAV+nFX00eUUcBLnZ/
AU0695YFnbJ2dmDAi+bBllFyWmJGRhqsJkj1Rdw2tOO1i2lWrB2IiKA8mklw9SrUpdXM4XA3A6niEq9wR0Y
UaybxvQVs60cQsnyjMyQ0UchurIo0y6ltBwD1EKOMu7G6OpNJQ620tVGPSqDvK1sQ850NJYPFJtJsqckROh
oLbpPo94rmNAnWrj/
+7Jkyo32vWdAE69lwAAADSAAAAEhpZz2L3Hr0AAANIAAAARSyQ1hJwtqeVCPHC8IG2i2K4dhJzvM4yGyY/
A7FlOnMvvSUnA3oqEijiMEeLA2KtnLmfZzl8Og7zcesaZTpiNZuQCDGSeJgn4hiHhysSUzFkxBTUUzLjEwM
Kqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqJwbPX2YCoBI8AoYC4sLTDAkAGMOMXs2cRMDCVAZAwIgkAkJACOO5CgX0JVbV
EYXc6PONOEW1KACeV7UeifWVSpWQ/HyRVkY3nrYq5hqLLMEkK9ebxXUioi/
L+Ftn6AihMIJJYQ1ZyQCkQDsFSoVqlFKJhgoJpqDcfg+DoNDMSn7h95bkkSVTWpsRTY8PB5KenA7lYg+QgF
NCsSywfK8gbsVSrdYiOwfUnrxGHJeJp8pjFZmcFsQV75CJJu8Vh2MCwVtHVOWWjYQiYgIJkdrDo2WvKBYIR
bNCZCJ4cwuKDoqPspEss+HkJaUyRvnJR/
MD4DEw6iVjA7ACMDEKYwSGBzB5OQMBoJMwBQNAQAilsoe7DoufchyfcFlrc2CNzYigKZu2dpJmWzUvgpM5v
okkIpg+q9iqCkU9b9pWMIdlCYkfBENEDiumdQpkTjuM2KTupAknVqUZzoRCfNoXRHhrqMuNxukhISbj8Zan
GCYZ/MBwDkICpIQYivHCykxNEWq7GxEIICsF8gKNzMgcAkR5H5UOZcKcr2Ed7JAGMZ43h6DIHiVh7Ktj/
+7Jk04n3LWc/
A89j4AAADSAAAAEiKZz0r2XtwAAANIAAAASMk0EiSBFGU0xjIOlXqVqTppmicWU+yiSQRnQ2UWyRQNDUMxC
k8pTBXZ4l8sQAvpPiSVQxwQoWRaFEHSLghzAp1IlYhoP1WxIhuPNUpEt5x0xBTUUzLjEwMFVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVSEACP2HDdBNEsAEEQEJhgEriECowTwNjDsNdOTYNYxBgPTBHAQEgMQgB
ZDVp8P14Bky5XcWBeGMPauZ8ZDAiQwhkkhCnSCINzR8ZsgymDKUq3+VuTCcaVVk9ytsBPqFbLSbOWwRPbxh
CXyN0CNLmKV4HPfhxXwcGcyliVYlOAXSVJRJEG65o5Rm4xrYtphKQnwxwP49SjL8kDBLIvwm5wlciFxBMcb
B4oaN4oVKa4uoeGZ4UYaEY3R9Hm9XZlIcYJfTavU9StPRbQZqpyZDRCS2N6QRawqCc0boTC2rKKFyVClLsP
2MuFo7UCaT1nGUaxwNMyeQ2OFUnkwXNGnKXk/
iTnKqU8djM2DuHKWh6rhPtZwrq0Bz2nHI0SfkkufinLKEwPZhsjFGCOCCMhWmFwRsabA5ZhUA9GCeByYCgC
RgBgAmAIAEpKB4xWZJKIDgqLySgi9G7L6KTM38xwYeQRGmajWnyqsyqHo8153oS1544dmhHCDjp+VDLBF6M
DpIiQTLXQlqj6fSFSAl4YQtkvSvJmah1Pg9AhrFKFpIrF7UBrMX2WGi8dYLG31fdAbAjCiYYHaMKa1KXoS6
oEhlBmlQNYjM8tEvi3kLjrjqUtOZWUFa0FQMsF//
+7Jk7AD4omc9E9h78AAADSAAAAEiaZ75T2WTwAAANIAAAAQchkZAyJdz6IqsrxxFql8AEDpSLK31hVLJOLJ
0hARH1cSV58OQ9FJGIuQLkqo+GL7qEXQWaYQyvGRC4OSCkwxOmj1SYiqg/
JC6evnihlYv5UxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVf9ACHoG0hggkZiAgWhAMyBgXTAsBPMKFLY0kSiz
CdBOMCICMwBwCEFYalb6LUmolHXDgSAX+fZYSMxAygQlGm2/
A+UYkOhPGzQYPSGYIrevNNkCkysQ4YOPjAYMMITgNFIkIhAKBCIgJ+GuM8LdIOpDL7bZPB6kM5F2VRl96NZ
D+uyy4QFTHDXCjL9uI/1O3OOV3OhDaxJu+MMTBgxTmtqGiODaZnaMSh/FezEjhJQxEQzt5/
nQ7VB3nXFS7xxZlYroqoQwZJ8s9EJPtyTytPxo0aDiOeMT921vV0carc0KOiQ2IhhmpHTx4tTKrS5oeaCWQ
hUEESZgt5dD7ZWN8qDpjqxiOZncHM0D8UzpLGhEYHNGneXVLMzFL7jKUtGGQSOBw2P7gEEwwyGIyCscXIwR
h2gLhAOAsBOWgSzn4pDbOVlrRd52WdNO4tYUFWYRJKKAPJcLKF4m4MytTR0bDXS6rJH9cIWFU3aW2NN4IXY
M45laG0C0hK8dFHqAESIgi5CaI8O7zvv6rRKYU11OkQFl6lJQ2nYizGWzESDhQ/
E12oZx9YFp15CS9r7RVVFdcujFEsKsiQruHhVitCXQ0h/
pVMRltFgH2qOW15t4cX21pm7PWuKtTSXM1+AOwU/LL43MQZJHGlT/
+7Jk8434t2c8E9p8cAAADSAAAAEj+ZzuTnsoQAAANIAAAATQoAXlHVyrhpXagqSOiLCN609oEHOo/
cERd7VUWPtYY1YcFslx8L7l0zH1ezfwDFpGz5p8UhToQG1RtlXRWDVhVoWInFaaNQFEUUEgV6uvagA+ArdT
pVjoAkOF0zBmA3MW4jcDApGA2E4YMaoZi8n0GKVIobFUrAINCFMEqWHxyLNouVxlNCIIGgNCaDBMLhoIByg
0M8bSIBdIKgS2UHHjkYMU3mBFN900QeGvcVAh3MMltz4WwN1NKGPgy6S6Fg8pjaM6YBBBnbuypDk1BO4icM
zTkcdMIKZQJRELiaG01oCPK9lY0rmc0COKDK5C+s5BKa7rwh1GKvzJ0bWkiILCQSuPMmRmTLpLzrIKJcMXL
kydEpTlH1qyCUQmW6u9KdAWxamay0ifVWYo4kBuqKtCJFwk+2wM0VapARFRyc9HtQqYT3d9KlqTuprBEUBC
ggkm
BVidX03Rfy8ZaXmQjQzV9Dz9RdoIkGQLGYulQXJWKrIyVOZwXaXOxlCQjatFMNWiFWXGdhWBTbPEKKhbRAD
YX3vydgzWElTARDIMB0AgwKwIDCGFbA0HpzQOPFxhQinEmZHnkd6CZXCsGYYsga0veTIVy8LgxgCoRGSjqV
ZnkF2SzQIHTVMEcsDCoMvh+djkNOu5JEg1F6QbsCjnsDliJVdkOp3rvEQSWsCgEOPO0gIeVQcDFJgBC5IMW
9MFxkbTWPhBbhRV63VYA+7YmxN1hEZXCytNEmAa8zJUD/
twaclZEGevawdk0kXG5KxmXtYfJSNKrdADPK1NT0L2OFT/+7Jk/
4D5zme6K9vC0gAADSAAAAEkFZzy728rQAAANIAAAASP+/LJuawcF/
lPN5EWpOSozaai7fIvFE0o5yH2VxWtZjDquGw+Mt+7jJo8tt0GXwxWlThQ687LGmyCSwlfrcoFhbvQU5DjT
b6wXDEMyp83KmnHfVvmvvN1rMWk1U9UaIbQ5l9yIADCEMjHBpRIXDAUFzA6Yj/
6iTIbBlGBiIkSEixf8GgH5QhVkQlP6LCUB6NbMjFghUWAi4QRMSKF16XDDWHj0R6wYBflbiKRdlnoiOqmy1
M1LtMsqCQzRJT7EJHHe1iAxJ7G+RsSpVWUrU0WIwEZOwKdKoHNM+rsMJumZY8G26wLMs51U41D2fwlMNV8I
LKiwlMFshBx8qdcPLHT4UrbEouvRf7+M6jyir6pyxlC1W2ma8q9OJQ5KFm1MoInGiEy5gDeodoackss/
ywLZEqmoKpFyFBVCi7rAnlWvHIccZWNLxYyETK3wWc1Bg61VPMeXgsKw1OWnZpArQHVh9bbBH0RSnbbuw9e
TOUi0ZLNS1Rxa6WBbFvG1S+SsZazScikpZaxlpLiRlMGhhwMTiIAE0yZlVqGxgAQCAxkKZhgKAJgoDJgGsw
mJxhiABdFX4cBTEoS/
M68ftkiMaht22qsKXQTA2jIJA0YyGKYPAyGBKDQSAI6grUmwjQK6FrrfWHZKmnG0SUdRGeY6BacBMGpQUlH
IEQqnWo0ZmoKgCqCmCtwdapyk4l+9DL3fVVAw7UVpqPhzUHNFAIz2W1wXA4iMl2FEPo8wcxNTSQsMxiMQnE
c2T8bE6pkM6dPBSPGMvJMxFz6QtTPBWoQHQX/
+7Jk+Yj5mGc5g7rC4AAADSAAAAEkiZ7s7uX2wAAAAAAAAATOidNw41AhBY21hSp2opDx+IUYZ+C0Jo6hH0O
I4uxiRk2Z8sIcRqH85JEcxfIhcAVYjZpG86SSnOhHRFSUivWSEK56SxBiiN0TQmhpjpPUyhOD0OA1z+V62t
MRBRbkYPQpRPX2lXAbqvF1Z1KhOcwcJTQijMGAICCIya3D+M8ARNJwkCA4smS76MkNNNag/
7WHXakw1AZcJFwYnqNjNf2Hh6AR+jTkn9kyqqcLYy3ajyOCsLG15sxGpEiwFlIYuoZ4K+fkvQVRp8FxJuOv
Y7CDzM2htlEKFHXWS9LIt8sZQUMTF2PLlTvW6+SZTEmVMpuuO0OnWChhJN1ljJSUSwFMvF6W2kLdmNuCl5C
pW5DWkvGvo4p3qaqme+wvlyEc3aRmbCvByI7eYmzJQVwoy0Euk0oHGUan0hVj1HYXKs9XTCVNneL8hx0jGX
tZGFpyF1S7BF1t1mu8KyAYSEgweKF30NWglFgMUKklwGeZCpGjQy2CeyNAK2KDTAEBU9lgS0LOG/
XctxDNBK95oOpVD67lYkuVWw7wcACtf//9ZvodzfQ7m3VmjPA7O/
aq45pTqc6fJly5RTjhw+TE5coN7qAs4+HyYnAhQYA9PszpOYChGSIYZxuwBh5i0G1EGEonaMqZJLG8Bd5B5
yXidpdTvRKLqAwyhKQlAlBvAzcwVPz1bE21JTDDmJLDK3IBmTLmb2an3dhlL1MGKJzJCpEoqoOtq6KmrPkV
liyGs7T9PCiaii/KqxZ4sklc1pDIwiLfOtXVtTBYi5L+v6+qgLjULsz/
+7Bk9Q3pjWg4i5rC4jHgBcIEIm4kbaTWDOsIQQOAGgARCTA4pk3zKWIwAu2ELmVNA0MzjhNelrpMStyl/
ZJFpTm+rDV2sNYizlL1FVdz9SpgSpmvSuQpVKCtdclcq7V2vwu5rSlKKLkJDMGaUmNCoeYE0doK5l1PWoK/
Cxk9kUljMZY6XWTCecCHV8zJBaH3ZhLDlDS0q1gocDNaAgmX+XdaYCRIOpCllS2pcEvi+kDSmVO1DzpOtKl
KkAyV1FW6Ql63zkhLvW9rUF6oZiCXcs/
DMQILjFn3hlogQXGLPvDMvvnKVDJ9xNpRKhk+4m0olQyfcTaUTfZRVOHCZMuXUAEkAAFQABCJE2Uqycy4VK
Pjp4czTzAdAbE58iicP5FK9aiCDUdT8QCGRRqLa0xZgBrKmI5WpmmBkeDnG8lOj4wIRqDQzHUrI6NqTFxdf
rVaSIjg3LpekRVcAVoSc0BsQUAQl69SubUnUNGuKwb3datlmoRWhA8YplZNZo2pKy8SR6LYNk5ZOoeZdOnD
Js9TRlMZvAGPVJLNRwTnsC2A+Zdyw8MxklYI6UPFhPOwpajhzYi2+Xz89QjJIVSkOwquEp0Tg8dB962ecul
tssLFvLIMr9wDoUGEYrSIOMWCqahIdC7QOsEGCwGYCIEBqYWYEGgOwdMECDws4AIAhAmAzgREmHFkzAAaAx
wIEEAAeAzgQaDjxYWUESA1ggQYQPJnEESZM8mUQRJrMCDAAaA1ggQDhZYDSACAOPMCCQAUAwsECCwsiA0wA
EA4DAgASBFA4WCBAGFog6ZAIPAZQAHABAHBxAANAY0HHkAgsBkiCRAgef/
7skS4AAZvaLFp+GIQuWzm6BkmDB4ppKIMzz6C/
jPZ1JSy+DOISTUTJmEJJrILMQNC6CFEyB5M4hJPf+uxhJYiDZaPCiE05RGZUTJwCY+xAyLQpeIBDdIo8M8L
Y4OhYYg5oDoUmlWF3jZ+Gvh1MWsVVNwWIGiw1MCOkRpCMYYCAQHLJZGo6CUDFeAp4ENKCVVwyG1j//
vWv//+qwgwUQN8ikmCZ4yE4EJompmFRUC2iKoP/
9FkjgbgAOSaCzFqh9gbBkKALAZc+3///1mQFFhaICTy7QKPDRQ5ZuRiC0m///
7+bdBEexSpGo2YQ5nHjJBjpA0FIEKqh3ooEeqXOPGFTnvJCCsMZFPRGaMlZz6aXEJAlUxk1h5ckY19p6tMr
dXWpsyE3IMBNilSXbLAJJUMkomBIZFIgCxQEhMSkpETDYVbQkpMKiEUkAiMIiYySohURjJ8Pkqgq0MuCzho
mOkqiJ5KaJQyQA82MkpMJUQaIxlgsiIRNESqDSMqZaZkTIxlxxEhJokrBMfIUILEKRMbcZWLMh5MHXEQdgJ
VgFSGnlRaQ9EisZZLC8R2iGhpoqO8TJhaYKxLH7EvIcGmio7Q9yLRlCoJpCVw4qRqMimo4jPKlRyTSkmXkk
1UllcZJyq4OUBWPjkoHCq6jgSEv/0KnsyCp0SyEIZguSloJs//
VUKJoiPgiQAUVYQpTFKTaFQVHDSRoApABQhHSEs//1MGwA0QYWRaBdC4BCECLILpN//
7oLRGS6amBdD8aisX////
yEekrMpVwtujmd6///0plFBvFkP5Cm1sZx6SpKQXIwThfHaWEvxnGsTkwjzMlilsX//7skRDj/
TMaKoRKn7A0CzmsCUpbgA4AgAMAAAjCrPZQJSluJVrJzMbx2SkybZ9V0dTEdTfDmPjgrEBcREJMLEgnFAjK
CEiJRcnEhGMHREhNDgoE5ANnBCiHR8VkAjLHSYlHzAoIxAVOGRMSCsVjAjIhSaEonFAoGxghFRkeEgrFYeG
yIUnx0TigUB8YIRUeHhIKxWHjqIlPkhOQFDpEhJjxOSEYyWFJMeHxQKyAaKiolNjgrFBGMlhSTGB8UCsgGi
oqJTY4KxQRiEsKTQ4PigVlBEQkxknEgrIC4hIiU0SCcUEZQREJMOk4kFZAXJSIwaDCMUFThMQmzwbQCssQm
RMYJwwIyCJiesJDeKAORKpIQbMNrgIQlk1gYH2FAHIiqyoNjja4CEJYIroBOFIJiIQiakYkC80lSJBYyGyQ
cTBAhR0NCQnN0CZEgwZE5IYmBghR6NCQnNwA2RIMVDZgZTEgZbCQ0IDY0kJw0yJDqzAyEzCNsAZxVsaCA+g
YAAH1mCoTFidsAYeKtlggLkjAAA+WcVCYsTtgHDx15wIC5IwAQPnHHQmLCeYBw8H3nAgPgIwgD4iFt0SAnN
GHhCL5gnMGEAGyJTQOEg9qgQAAJMVZYA5iAlgFyE9LAJiGcLGHKO4l4uInxYxYh8lwDmHaXAcQnpLBYRhFz
DpHcXMcIwkWSYXEnBDhykgIUK6dhJRcidkSOYkZCRXiAkmENNweYhI7CbCujuJqGqPk2gwijGoQYO88gvTO
NcMEqCLHpHcRAmxRnAGqKEpRxCylOP0mRcxcSZIWOEYRwD+HaXAXImJ0CxD5OMkojxpjFEmL+KSPonhJv/
7skRUD3AAAGkAAAAJIYz2RT3vbgAAAaQAAAAjMLPaFJKkQBHTQH8JKTwWofJdyShxF/
JKJMXcWkbxdCbBwl8JMISXQWobpRk1DiN8momxhi9G8UBTBwl0JsJqYAvhulWUoXxdylE2KsZo9RZFcF6YB
TCGlQXsekcpqi5F1LwJkWZeB6hzG2OEmRexMSqIOJiLKdA4hJS8ClEhOjSAidokDAASMRicdTFYbFfIBASG
kgwGCCYjC5OZXDYbI4CAUDhpgMAgQJjYrH2Ww2F0aggFBI0QCgKEi4rFZOy2Ky8A8IBw8wJBQUsPkZ+g2CY
X0oQBgcmGACCCIfIxOPuDYBxHIPEAkHHhgEBQhLisNk7AJhcVoigYEiBsEAogVLhsTtsAmF0axQMCRhsEAo
gVEYbE7bAJhdGsIAwJGCcEAogKiMNidskBMLtlhAGBIkTgIFGSEjBsTqkgDhdosQAwJNIwEDDKYrDZOVxKO
YcRxMZPRuk5ZTmHpHCcK4J8N4CSoJR6hxHkuyUj0lxil+HpHCjV4lQ9Rcpy+j1DiRyRJSPSXGIX4ekhKVSR
Kh6jSuW0eohSWRJBR6TpgEqHpJbHOIfxNkLPccpIj+dGSWExVAfA9RkshvEGHqUTCTkekymcvpBScqFPE6H
qOlWF+IMTpVJ0nJCUKYyejdJyyp4nRCkJYCfDeJ05IaQkhKOXZPRuk5iocQohSNXBKiDFynOUhJCUsvkpIK
aOjSIUS5ZTBKiDGlc0SEktaUiSkgpo4NIhRLlhJEqIMdUE0SEktW0SPkgqGwi5DiLEyHcN4gyHPScjhLCzn
aN0gqGsROim25KTMzKsTP/
7skSEjwAAAGkAAAAJAqz2UD2PYAAAAaQAAAAijjOcJGMZuJjzjDCEWQIISeeD3BMmnQgEBI0gQQk8HB08Jk
09MIEI5AICETwcBk+TJp6UQIRyBAhEkwGFpuDk09MIEAjTCBCLJk08PJk7YgQQ0wgQjkyaaiyZO+QIILKIE
EOTJk1FkyZPmECC2IECHPJk0HJkyewQIJsYQIZZMmg55MnsECA+gQAEIPAYWMkHAYXZgACB9AgACEDwGFhE
ngMBpwhVXVJQyAMiEQqPKEwaFVFRCKTS5KGRTEsIhUZgTBoVSKiEUmpkoZFMVhEKjMEQaFSyohCpptCGRSq
sIgsZcgRDxMoSiEs2jQjpKuiJhSQ4cIhMa5KKiLTpCJTPJhSQxOEQmNahFRFJMhFJLiIUkLKhEKiaSEVETS
5CKRLFEKSFCoWFQmaZFREiXKikSstCkQoVCwqEzTIqESJcqKRKzIUiFCwWFQmRRIhEibKikSodIRCQsHBUJ
ibEQiImzopEpKI3wTQgA1pzphaQDYm+2DJCaQ5GAT8J0cigjlBWxvOBeUerONsKOB3JyrimwLZO+8KaCVBx
OCF0S+OJgljDujceGYQy84XRRofBOFsliGvTbhIIAjA3nh1snGOBoYhIvjaiKj4K3N18sME4hvuiOAnANmU
ZcAXBuQDhoK3AkBiGmyiZ0AGFOkcw2zTOAWANhMEQ0jDHZDgjkaFZBbk3YRSAm0ON0YcHxThdEEZF8bkQ6+
NdnE8Suk4xvOBWIo8NuMqPCXBwvkLROQb74IhHwzakIHQz84IBhkbLNx4AvC4BsyjLQPAN+EQsCZhtwmA+G
jmtMP/
7skTYj7AAAGkAAAAIvmzmkCSpEAAAAaQAAAAmMDQWlZxlAYmQWGbkAUXDTzYgMVwJENWcLrAMQ24wSoEoGv
CYzYLHNKgGKnGCbEQETBaZqQGWwAxDTpBKRxCGvGYKAHQNOMzFzjDNCgAInKOakRiHnSCaERnqHIIZ9JgmH
IQacZjmHQEZsZoJnKSZVBiFnKaaERlFnSKZURqoHEUZNJjkHIcZ8ZmkHQQZMZrHnGaY1BkCnKiZkRnCj58/
nOrzwGlhgrCIMBqOMDo8kCgSxJMaFciDAajjA6POElaaeGS5EUXJxg5HkjSqNPRS0icfJxg4mED4NBgUieQ
C0LOIrTLLwpsy1iR1TbYNMvTDxfFDY6aYOB8pq5geMzOnC+KGzJqBw6pq5g0zM6cXxQ2ZagUBmbahyNllHz
CxqTFFxVqSlwMCPkwOEpFAQsyjwwVJYGIuTA4TRQoXBxMMFCLnFLUYwGQJrcAKjuAvcxONoQ6AtUFWMgwSg
caKKMMTYIFrGrA6pnEBEiPAjuAIGsoRAeqDtGYIBMIljjAqcBABzyawHic0GiIVsQ5BEjSk4AKIhmgFEwmC
yyowLpAAAU8mmD4nUhqeBbEmQpQxtNxB8hHII6AvGpIFcVKhSgBeBjlHA7wG6aRARJCwQvHLBYwCGHMIrA6
ppAYDiFBCsQnMAAx5NEIsAomEgWSSYC1DSsDcKVg9p1MbHgWhUyIamZgC+RoCXHQpvcYJjthShleCiD0xKo
KsZBglA4sdWCCAo41AWsCqmcQEOMqJFAk4GALPGqg6xmCATCJZYuAJGk4SAfcB4nNBoiFbEOALM0IB4yNoL
kdDmv/
7skTajwAAAGkAAAAIn4zmlRkm9AAAAaQAAAAlk7PXlYxhudwMqOZBFDOsFcK7g+J1IangmgywQrAgghZNQO
0BqmMQUSKNESgSUHEHpiWQVYyDBqBGwVWCCAo41Aa0DsmUQIOIGjDAacDAFpj2QdoWTYE1TEFNRTMuMTAwV
VVVVVVVVVVVVVVVVVVVVVVVVVVVCAABpAOBsVhQQDJOGSc2GBQFyMaQEwkMBsVhQgGUZKJz4YFAXIw8YIhI
eDYrChAHzZCJz4YJAuRh4wRCRwbRhRAHzZCGzAKFwPBJQIiwGDYLlA8KV0YB0YKEgyJ0QEMAEQAuTjQkQgW
2AdGChgZE6wEQAIwC5saEioFzAO2ChgZE6wEQAIwC58PDioF6Ad4KHg+PpARwCYC58PDiYF8A+goZGx9QCO
ASILmhgcXAvADyBQyNj6gETAJEFzQwLFwLgAdYFCURi5ABEwCKguTCAWRgXqTILQCTDyjAceaDZHEBA04RT
IMyU4DKYfECKgMI6QzkSXM5lJmQ5MkKoCHDBTMVDoZjqwGcxWMGJDGipjOJF8zmQ3OUSLBhoDvBaZwaSoMx
1iGkhEMCJDkiNBnAQBM5kVzo8WgZaB3gpU3JGWHKIgEazN3OhQiBlgRWEGQCgKDNh2jHEAYMxLKzGuiBIGq
BxhAMzBVSNYkfzElKMGLCChchnAm6agpEG+Q8Qw2BVgRE4JFRHdRd83TFhmK4OiBYHEwiKdkl1DjAOAY7CQ
gYcDNL7AKyVZmOleBFoGgkwGUXlAVUjDORMAAqQiBCQUkLgA1kyzMVMcALSBAqAcoLBA1UlDSJIQwqSiAiQ
goVAP/
7skTwjwAAAGkAAAAI08z2ZSUpbgAAAaQAAAAlcjSXlYwHOCrJTmgaPZgWoSAUBBgYMFVReNIEqDCpV4AWGB
BIgdYgCaApHmJKoDCoOEBBhER0ACkjIY0KxmBZfkCkCJDAQNFDmYkq4MakDgAUIiplv7KVTEFNRTMuMTAwV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVCC+AWFhZMHByZMLCCBAgQBCBBBNMmTJnkyY8ICAgEIGGEEEwsLBwcHByaYwYQBAQQQIIDx
5MmLFnk00CBKtNIkZkiRRY4kcMCyYOLFkyYWPCAgEBAQgQCECZMmeeTJk0wggQMMIECAwLJkzyZMmFhYQQB
AQgQIBAQFkwcHJkyYWFhAICAgIQCAgICwcHBwcmFhYWEAgICAhAICAgBg4ODg5MLCwsAAgICAgQEBAQAwGD
g4OFhYWFgAAAgICBAQGeJwjCEIQ5CEIQNhFCkRQaiCIIgiCDURgqEYGwhBMIQhA2EUKQpBqIIShKIINRGCo
KgbA2CYJgbAkIoUhSDUEQlCUEQRBsFQHgbAkEwTAkCQNQIiKHoMQMgdCUFQeCYRg+D4PhGEIDwNQRCUJQag
1CkKQOg2BIJgmEIGwVBUB4GoNQlCUQQaiKFIig2EIJgmEIGwjCMIwkiCIIgiCIoijqIolCEIQhCEJQjDsIw
kiCIP/7skS3jwAAAGkAAAAIv0zmtRjGbgAAAaQAAAAj/
DPZgMYxuI4iCJIijqIolCUOQ5DkJROHYdiaJI4jiOIkk0dR1JwlDkORKJROLROJokkkcSSSSaWSaTiUSisS
iUTi0Wj0xJJVKpiYlksnxkVisVjo+M/
VTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVXJsTA3XA0FhXJ5SEh0DiISzcqEwTwTeBubiALBsNlgQiBoaCGLyABwugnG
Dc3JA+F8S0wgOCQaEsfykJCUQ3xLLZIHwpiWdCA4JBolJZ0Eh4I4vK4flYQFohn4kBQdCA6IaskD4Xx3ORD
eEA8JY7lwdDoQFIhlskDoXxHMRDVDgWCWO6EIhkICAE47jgFBTA+TQTQQkHQcwrLwHCcCBoE47jgFBdA+TQ
TNwkEQlhWVgOFoECwE4jlQKCqB8fQnH8OBEK4HzoDhsOBYJZPSCIciWajmWyoTE4jrhINhwLBXEtIIi0SzU
cyeVBIQxHXG3Bs6GTJMCQVCowSjwnEYmiSVisnJJPJo+k4SiqOJUEImE4fiaYnRKTkk/
MTU+MjkkpCUeGRsemLRKTkk/
MSyuMmSqkKygrI15FWk5IPNCuiPDZcTYT4kphyPyqRFw7HpKZHE8KxRWjquJMA5H5VKC4dlpKhHFQXiiyOr
xJwrPpUBov/
7skS4DwAAAGkAAAAI7WzmlTEsgAAAAaQAAAAjSLPZ1JSwENVMtKsSY2hLNjHitGhmuFrhy8eURSIzY6yONR
6VFMisDtI5WHlSXCM2OtRxdHpUXx9cHaxKXDyelwfnx1qSVo9HxfH1wdlxKXEE9Kg/
PjblTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUXwSgHOEkEHC1Beh1CUCUBGw
jgScNYM0QoUkRsJWDcCPhaA+Qzg1IgQZAQQG+EMDHD6CpEOEZC7CvBuBDwxA2QqhDRLBcBWA5wqA2wxg4Q5
hKhKwjYOQKsPgMUL4OUUQSgIwEjGUJ6IUOkS4SgI2JOJAMkT4ekmw8A6whgfAbIZwh
ojQbgQcG4EPD7DaDhEyEqG+EEBzhABBAxQ4g5Q9BkBBwcgQMQUMYL0OoRELsGIDnCSB9BaRCg6Q7QuAjYRw
JOGyH8ISKUIgErBuA2wtAbQZoaoQEPYSgG+EMDHDFDOENEaDcCDg3Ah4YgWoKkQ4Sob4QQHOFQG2FpDiDlE
sGQDHByBVh8BJgvQ5hQhdgxAc4SQPsJKF8HSKoLgI2EcCThrBVCEh1CIBKwbgNsLQKaFSGqEBD2EoBvg2DT
veYJ8ULllacbMTXKHVreYNsKFzitOPmG1yh1aOnjbChc4rLD442uUOrR08PsKFw8VlhOQEZBIhDQlEqRGQI
8RClsBiETzgw8xAAC0jDRww9MBiETzho8xAAC0v/7skTLj/
AAAGkAAAAJPMzmID3vAAAAAaQAAAAiqTPZwJMn0INHDCaYDEEbOGjyCAAFnQaOGE0wGINs4aPIICgutBU0O
I2xWMKzWMj6CAoG1sVNDiOYrGFdWMj5JAUDZbFTQ4TzFYwV1YyPmIEA2WjZocJtTEFNRTMuMTAwVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUGMw3jZHQHMUJkBhCKmQOEkRxj9JkZY4SRHWOIkJkD+EVIQGEH
6QgOUR4l4aJIi5jhJEaY/h8nQP4kJoD+HyaA/
R9GmSUkRpj9H0X8fwcJOBAhHSCB1BUj4DpEmMEpRDijF4JMMs8g1JhFcLCZhNxbQ/jQH8SE6B/
D5OgkxITnH6SJDx+j6OskpIjkH8Pk5B/DdOQkw+S/klH0c4/
RvHOTUfRfCTBUk8DqC9JQI0HCSMUkKon4pIXxPxKhxEgFqCpJgKUEdJ4JYL0d4tIQ4mYtIR4mYoQvh2DyCG
lALUEdJgM4L0gZDQviBi9CPFGNUNUZhrDdMwxh6TMLUek2TaFuNkxRcjZKweosjbFtM41hcTOK8ekqTUHqM
02hcjNMTRO0SBgAJGIycymKw2K+QCAkNJBgMEExGFycyuGw2RwEAUMGlAwGCCYjC5tlcNhtHAQBQwiQBgMI
FxGFzaFsLl1A8QCx5wMBQ4mHyMXwVhcVtHBQGCTQQCgoZOisNk+AmFxW0UFAYJGwQCgoQlxWGydgEwuK0RQ
MCRA//
7skTMjwAAAGkAAAAJH6z2VT3vbgAAAaQAAAAjJLOaAJKkQGCAUQKlw2J22ATC6NYoGBIw2CAUQKiMNidtgE
wujWEAYEjBOCAUQFRGGxO2SAmF2ywgDAkgTggFGDojDYn0kBMLtnBAGBJhOCAUcdEYbE5dTEFNRTMuMTAwV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVBQAHMOIkyfJ6
N0nLKcw9I4ThXBPhvC5MxKR6hxHkuxXQjouLiX4ekcKNXgFABAejCUAIcSOXJKR6S4xC/
D0kJSqSJUPUaVy2j1EKWkSQUek6YBKh6SWxziH8TZCz3HKSI/
nRklhMVQHwPUZLIbxBiFKJhJyPSZTObpBScqlTE6HqOlWF+G8TpmTpOSEoUxl9G6TllTxOiFISwE+G8TpyQ
0hJCUcuyejdJzFQ4hRCkauCVEGLlOcpCSEpZfJSQU0dGkQolyymCVEGNK5okJJa0pElJBTRwaRCiXLCSJUQ
Y6oJokJJatnaPkgp0widDiLEyHcN4gyHPScjhLCznaN0gqGsROim2QgAAbDYNkRAFAQQNigMEkSMLgNOBWG
ydogCgoQTFAYJGS4XC6OArDYnaKBQKINFAYEjJcLhdHxWGxO8oFAog4oDAoQRIxWK20xWK0ckAoFAkaKBQK
IJisNidkuFwujgKAwJD5QKBRBYrDYnPFwuF0dCgEBIfKBQKEnFYJv/
7skTBDzAAAGkAAAAJBez2VT2PoAAAAaQAAAAjLjOaoJMlgBs8dC4XFfIAQDBtIKBQUYRgmGzCYXC4r0gBAM
G0hAFBRBGCYbMKiMLiuaAEAwTrEAUFDCMLhsSKkYXFbagoDAnkQBQUMLisNiSJGFxW2oSKTEFNRTMuMTAwq
qqqqqqqqqqqqqqqqqqqqoQAAAIjCoZDII2RAMCRlQVBoVUQgKCJpcUhkUxIgGBIyoTBoVSKhUETUyUMhVUs
FgSMsEwaCyxUQgiabJQyFVVhECRlxAiBoNKEoKjRsjQjpKuTCoKkOHAsGh7ikLEUjohDIlwmCohZOCINCbS
ULBZouIQyJYkwVCrJQRBoTSJQsFkRcQhkSsohSFUKhEGhM0hBIBhURiEDIEkpMCIBRSQCIDQFEyEEgDCpGM
gZAklaFIVIUBYVCYmiKgsRNlRSJSXRSFSFg4Kg0TYKgsKmzopDIZQACxmaQGtOdMRWCMnFogoUMOjAvEO8d
kDNQzRwcI6kUzq0QQEwnVZBQS6cYilBqhycI3jYjowq1FvG6Q7MSuc4jDiMpzaS0Hwm+ZJIOwcIELSlRycO
TJxGyhYiGbOMSwwnQcXisikhtqOuCOG6RAMI+FJAQZtOZJIAQHMCvNJAdgLzLZGgQBamsdHDNBsJvmMSKOH
V444jKc3ilSMRuoQxIvnSBVeUqOEBDIrgb6lSA2A5xJXE6DjELTIzmyhI8TGcpDjR95ugDYDZDbcdYHkOMx
VQ2w2zBERM5qsMNDTm6QiWJvNkgK4PQa7iNQPIb5hdAfA1zADwlZowIEgtZsoFEhszRIwsB6DPkLmA6DXUE
mCYGf/
7skTzD2AAAGkAAAAI0ozmiCUpbgAAAaQAAAAljjQXFYzgAeZiWC1mTAMKA1migEKD5mSRlQB0GXIJEdAGmo
BEC4GOpmOA1mLAECdxmahgCB5mChpMdBGHJZI7EMtQEYBwAMzUU6lAGAME7nMVAMkjfR7nTEFNRTMuMTAwq
qqqqqqqqqowg+HAKiQgsH3DQUCQZkKgVGHjIXCIasUgsNmQeFASDPFQKjBoHRWRTLySPRfUkIkDIm8IQclw
+FJLFpOjEEOi+eiokB8DcDA/
nBJCYJSaZiQO5YXlYQUachENxgtkUfkSQglx9s0H4sqymJxXcYNx9LThSE8qRtmg/
Fl8picV4mDcfS04UhPKkbZoPxZXlMTjt04Nx9PmBOE0qKjsYB8WTsTxoJa04GYelpINQ1khcdjAPiynGQcI
0JAHQZaODQ2gREYcEzJ0ZGEaEgFxK0WGhtAiIw4GgUtBtQblmtwAqO4C9zE42hCUB7TuI3NMdBTIgsYYmwQ
LWLuOwTioyTEeBHcAQNZQOQbaA5HJZnkFsjGALM0GAZyNQHic0GiIVsQ5BEjSk4AKUguR0OaYAy5UwDamZR
xGTrB8TqQ1PAtiTIUoY2m4g+QjkEdAXjUkCuKlQpQAvAxyjgd4DdNIgIkhYIXjlgZA1nCQD6gG05qNEQbQd
uFZmhAPGTpA7jok1wBFSTAWoaVgbhSsHtOpjY8C0KmRDUzMaxYNAS46FN7jBMdsKUMrzYAbWGtO4jc0xyGL
jNzFA2jEyB7jsE4qMkxHYgsYYmogecXaA3HJZngILli4AkaThIB9wHic0GiIVsQ4AszQgHjI2guR0Oa3A//
7skT3D8AAAGkAAAAI2Kz2QSWJvgAAAaQAAAAlkrSXAYwHOCo5kEUM6wVwruD4nUhqeCaCuAbUyMA3yNATI7
DNrABURZC1jG82AG1h8TuI3NMMgvgQ3MDjaMXQJyPATioxTCmRTABiaiB5xeIDkHdsYXzqTEFNRTMuMTAwq
qobAAEYwIgjiWOASCkniKTzcDgNAnCcaiYTh0NBHEsQCQQT8xHdBEQSBDJZCPDIdEARzMQCQJ5+YjujEQwE
MzEw0JQ6IhHMwkMBNNyqO5oKCuNINkgYlADhuKy4Jwkna8EzMUFgeQ/
XBQsBA8FZbHoWLQrfAmfigsEEXrgocAgsFZuQhYcgbuBN8ODQgi9MBigEHA7NxOFiUDdwJvhwgCeL0IDEgQ
iDtBIAwQwNyBN4ODUhjNIBiQIOh2bEAYJwN0AnYOCyPYzOAouBBkOy0PA2OwroBNoOCyPY3OAofAgyHZaHg
oHYM/
SZBaASYeUYDjzQbI4gIGnCKZBmSnAZTD4gRUBhHSGciS5nMpMyHJkhVAQ4YKZiodDMdWAzmKxgxIY0VMZxI
vmcyG5yiRYMNAd4LTODSVBmOsQ0kIhgRIckRoM4CAJnMiudHi0DLQO8FKm5Iyw5REAjWZu50KEQMsCKwgyA
UBQZsO0Y4gDBmJZWY10QJA1QOMIBmYKqRrEj+YkpRgxYQULkM4E3TUFIg3yHiGGwKsCInBIqI7qLvm6YsMx
XB0QLA4mERTskuocYBwDHYSEDDgZpfYBWSrMx0rwItA0EmAyi8oCqkYZyJgAFSEQISCkhcAGsmWZipjgBaQ
IFQDlBYIGqkoaRJCGFSUQESEFCoP/
7skT6DwAAAGkAAAAI5yz2RTGMbgAAAaQAAAAlcjSXlYwHOAVZKc0DR7MC1CQCgIMDBgqqLxpAlQYVKvACww
IJEDrEATQFI8xJVAYVBwgIMIiOgAUkZDGhWMwLL8gUgRIYCBooczElXBjUgcAChEVMt/
ZVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
QgEcKxHEsQxzAcEyeOg6CIJA4DgSCQWB/
HcSxLHMcyWZlssEwmCQOA4EgwLBbLZPJZLK5LMz8sFgmEgqFQqGCg3LZmSyuVzs/
Vmh4dLnzkSSTVaJJie0OiUZD4TyeSyuVzMzJ5bHQSCQVCoSCYTB8HcSyWSyWSyeTx3EQSCQOBIJBMHQdBHE
scxzJYlk8dx3EQSBAHAcBIEgdB0EcQxDHMcxLEcRx3EQQBAHAQBIEQRB0A+DcQxDEMSxHEcKwOA0EAQBABo
IgUBQB8G4ThOIYNxHCsKwOA0CQJBABoFAUBQB8EwnCcQwbhWFYVgcBAJAkBoDQKBj0AAloBwHgJAKAUAoEg
JAdAaA0CICQEkpJyQUuRLiXE6IMSolRBh6iEktISQkgpKSUkFHpIUP4hRCiDEqJUQYeohI4Rwj0kFG6Pkgo
9JChxDiHqIMN4fRBh6iEi4lxLCOkYo9I3RyjuJUXIsRJiTEKJUQogpBRujdIKQklo/
SEk6IMPolRBiFEuJcQonJBSUkpIKTklpLSEk6IMSolRKidEuJcQonJBSUkpJSTklpYSWlyLcSolRbidFyLE
S4uJbSUk9LaaJcTJLiaRbif/
7skThD0AAAGkAAAAI9iz2YTEsIAAAAaQAAAAkb7PZFMe9uFE+L8aRlGUZRoltL6X0vpomScJknUaRfi/
F+NI6jiMouJOSUj5JSW0uJYSwlyJ0SonxPi3FyL0WIyS2k9J6T0tpknCcJlGkX4uxvF+Oo69pTEFNRTMuMT
AwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVYCAAZwsuLSIWIIy36bRZSHSyC4C4aEaDBbxWUsvAxnOi2ACC
UEGy16qRZSEllFQF1xYaHAtYskChe8supMuoJASXLRrBAQDeFlEzC94kNJwtAtEChbcs+l2XsDgJTlm2BAg
DJCziQChpf9hwMAywvGgenuJDUOL+NZLntfRQBxE0gIBloJCrGXADgJlg46coFCyYEAT4Lrhw03AcRL4CAX
6CQprl1AwCqYOOoCBQsWBgEcEE4YNWQFATGAgmOg0KOaGAQRWUFDUFBI1xhQCGiGYQdbQKAnUCBLcCoS+aV
AQRZIGGnSCRqjCgC+CaYOOsEBgJrAwSkC55dtNAHEWiBhp8g0afZcwt4quCjq3FmEugYJJAvOWvWABRFylm
0zQqNHNAQWsWWCjrDFmEmgoJHBCeWvYQCiLFLTpQhcaG6EwtA0cFHYlmgTwpIojCUOIgkAJiYIw/
CKJJKEIewlJ4ij6ThCJIgjwExMEoXE0GpWCYrhKTxJFpOBsVQlKgTEwShcTQalYJiuEpPEkWk4GxyEpUCYs
B0Ry2GJiA4uAqsBdALAyMgpTk4QUwdH48jA6D49EJKHJ4PQ3OQ9PhBaDo/
HkbHQfLRChDk0HobpQ9XCDAHRuQRi0HzohXDk0If/
7sETujzAAAGkAAAAJR0z2BWMYbgAAAaQAAAAjkbPZAMYxuQyhD2wg0DpBIIxgD7hC8UoAnDJsPfEGoqNhPF
rAfYITwpNSALl4U1EFaKi0QxasCqwhLhSWSALl4UrRBWiotD2LVAVLhCOhSWR4FysNqUpMQU1FMy4xMDCqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqVVWVVkVGlBGDKMGIJWiFQAGEKGoBlAFMxEC6yqoL
JAIAxItMDvOSDTEGWIFhVBgCHOEoA6hnCADCNY6oGHAQhJodcFTMwgKcUUMLBJgMUWcGUA0DKMCIGViqgQU
FGHohFwNMyEBKRxQiSBSA5JFIHUATDKMdIFhmVAZUXGC0HE5hWIIDDwSwwDEnC2AN8zSHGDDQqYDBFpDWAd
szCAqSFoyoGHBRhqItsFUMowsAqCGBl7i+JEIaIEDLSBcJUGMgLqoDiYIscIAWzEACUQoECiCElawzACmYD
BVY40LoAAQxxNQI2AoGE4WUKsCiQEIOaRXCMGkIAMIViJYVMAgiThqgOuZgAVIooQqBhwMYaiLXBVDOMCIG
VhZYJICij0hKgGuZBAlI4oKqAhQcoiiHXA1DGUGIIVhRIFEEJKJBlAFMxECqyogGoAAwxRRAIuaAGE4WUSJ
BCTCAOaRXB1DOEAGUD198IAALGBcIBGWQ0eHxI2uIBlFbxwTsKCMPIZOHxI2uIA+RReLCdhQRh4hk4XEja4
gD5ErosJ2FBGHiFbBOFAuKGhSCQEiU4IwoR4iDLYrKMrojJOoYFBdpRCaJFzYrKMo0RkToEAoG0SBU0OI0Y
XGE//
uyROoPAAAAaQAAAAlkzRYJYxhuAAABpAAAACL6s9mUYyQALaxkfQIAoNomFTQ4jRhcYQtrGR9AgCg2iYVND
iNGFxAhbWMj5IgCgjLOVNDhOjC4gKvWMj5JAKCMs5U0OE8wuICr1jI+SQCgjLMqmhwNTRVMQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVHcGABQWDiSAFYUWGAObAZkD
MOiwTIHXA1RGoIGclgnACedUACoKgeRAy4Cgc0ATJbQBRBqC34KyF1FowFEGsLZgKQISXEB2gostIBpAxpc
ADRAqC24RkGqLZgqIJYWrBUgAkuQEaBCyzgOkBGhQAOiATI6kQTigZaLkM8B24sI2RFSEVjcMkQLbMiQLgw
AOpAJkDAO5jFUDIAcgJcAjOQwDgsmdimWgCOB4g1RdQFSBjS/
gKsAEl3AzQIWW7B0QSwveDqmFBf8MyBVBYARICNQEA6RgSXsDtARYhCGRArC+4RExoLziWQCgRCDnABoiAG
SMSS+gtYwJFRiTQCoVCHRMqBUI1UwoGCCzjAscEJSMhxgBFYxHHSjzTCohGLNM5h0ZNUxmIDETjEskINOMx
yQRWkyFKpyhJjQWCjzTSYsFJoGUhVQULMiSUxEo0FJSEUzMMgSRIMqCA5Qk0kHCjSL0kTQiqyioWkgEADiw
cLGlgMmT4ICILYgQIcHB00SwsBk4BARBIwIABCwcHTRPCwGTgEBEEkAYDCBcRhc2hbC5eBwgPHnCQgSs6jP
4AwGTSKIBCGgAAEESwsLTwmDk6KIBCGkAQhJZM//
uyROQPAAAAaQAAAAlhrPXlYxhuQAABpAAAACLZM5skZJtIenhMHJ0ICAhBMAAAhIsLC00AGAyZwgICEEwAA
CBosLC7QAYDTOEBARCYAACBosLC7QAYOmUCBARiYABECwcLH6QAYPZQIEDMJgAEwsHCx55MQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqovcaxBxlphQpiSYAtNL3GIpoCJBXwDSGNACE2xc0x
kNIEDltggpiSWReUKgMhTQFGlRIEmMZizUHgwJlIApJBKogQ5kOWhigNEZDgJqcKbwFMZTFto2CBmUwCcq5
MkAHMhS4sAAkhkOCkwOXSBUhKSFZKMLNC6EbnMLohDRpKViBAykLeskEIDGYxiTqYCYAmYpb5l4WCYkmIau
VbjCAziL4s4C4jGgxgWsnKYgmYaA5h4UGYkmALBUvjGAzgQpYAFSGNACE05E0yBMwUkl5gwpiSWRdVCUZQA
JyXK2AaQxoLNQou6ZAgJqklZwQcxJLSyAu8ZwAZyrU/
gSYxmLbU5bEzBAzVxJ2gQ5iOXJmC0xnAClLgSWAqDGYvFHSzJmCDkr/
Q4gRJiOgFfYskaQA5TJEGgCgxmQecEBBNAQhLBxQIASYCpEsqAQh6VvNQEw2TrCAAgIMNhgMCRCIwDgmjYD
YJidEIACAggmGAQEjIjAcE0cBWCYnaGAEBBBooBAMMlwHBMV4KwTDZooAgICjigMBgkiRgmGzaYXFZPIgFA
oEhoYAQEEEw2BsTmRsBwTJ4CgDAYPlAEBAUTFYGw2eLgOCYroUAYDB8oFAQFFisEwLMHQuCY//
uyROqP8AAAaQAAAAlNDQXgYxhuQAABpAAAACNgM5pAlKW4r0UAgBBs4FAQFGCsEwLHDoXBMV6QAgBA+kFAQ
FECMEwLEioXBMNtkAIAQJ1goCAIMEYJgWJFRGCYJtoAQAwJ1hACAIIFwTA2JIiMEwTRqCSEEBIAHsJRFA6B
HRyAsB4ilwDwHhCsOIFQRIycRQOkFgm8MItyVeIcXIgzEbowR6TyfoaXE0XqmJ8W5GvFEXI0mJSk9Lajj8m
gdBqclYOgSH1QSDIIgqOBFBUhG5LMRaIqcnCMCIgxCcIQVD9IigkITwniCFI+8JQNRBdLg5BULrE0GwhHxf
HEKQ9dJwNQlPS4OQVB88TQbBMfF8cQpD1aZA1CUxOB6CoPj49EIJjI7HkKQ9PT4QQlMTgegbB8fHohBMSjs
eQah6TXhBCUknhCBsFROdEIJhKPyCDUKSa8JISiSeEIGwVE7hKCYQlZTBqFIi3m+CaEAGtOdMLSAbE32wZI
TSHIwCfhOjkUEcoK2N5wLyj1ZxthRwO5OVcU2BbJ33hTQSoOJwQuiXxxMEsYd0bjwzCGXnC6KND4JwtksQ1
6bcJBAEYG88Otk4xwNDEJF8bURUfBW5uvlhgnEN90RwE4BsyjLgC4NyAcNBW4EgMQ02UTOgAwp0jmG2aZwC
wBsJgiGkYY7IcEcjQrILcm7CKQE2hxujDg+KcLogjIvjciHXxrs4niV0nGN5wKxFHhtxlR4S4OF8haJyDff
BEI+GbUhA6GfnBAMMjZZuPAF4XANmUZaB4BvwiFgTMNuEwHw0c1phEyCwzcgCi4aebEBiuBIhqzhdYBiG3G
CVAl//
uyRP+PUAAAaQAAAAjzbOZYMeyIAAABpAAAACYttBaBnGUBA14TGbBY5pUAxU4wTYiAiYLTNSAy2AGIadIJS
OIQ14zBQA6BpxmYucYZoUABE5RzUiMQ86QTQiM9Q5BDPpMEw5CDTjMcw6AjNjNBM5STKoMQs5TTQiMos6RT
KiNVA4ijJpMcg5DjPjM0g6CDJjNY84zTGoMgU5UTMiM4UfPn8546HBNEhBYPuGiAJCWiIQh54yRhEm5CIht
kaIB4l5EISjQyRjpNopERdkaIB4lwVCEo0MkY6TaKREXQjRAJg2BANoBCAYAopFYYAsSLiIKnzoPDbCQ+ER
M44Dow2uOBISvOgcNsKD4REzBwDxh644DQlbOgcXcoPgyTMHA+QPXHBMZbD4eI2VB8SmlA8HyBpccExlcPh
4jZQD4lNKB4bQNIxY
TMph8YRoUAuJWkhobQIkYsJmUxkYRqoBcStLDQ2wsjFhMMWgQ80PVTXcMaMZoBMpsWHWuBxAk05yjcZMuIQ
UhSYy3TYMOMEPOOYk31jOjCtAhnMh41zzgCFyTnGOBU0YAZOKUGLCaiRwjj5R0CnGkaT4FmHaTCiNNU3iCk
k6QDiRNV4wJypQYMZoLG+aRjgNE5TjWdMOYgpAkhmsm4cLgD6wG1NsY1lTFcJIwJEZLplhk3AO6NwU1TDEV
HWga6MTGA8aqYG8FyjmHOFQ1HwDEMzgWE1FDfBIyTnCOJM13DCjIJgREaa5uBFI5zAnGgbDpixEk4VjNBg2
xx8QDnHIebbRkRjMwgkM9s2ihMcFmnKYbjJlwCKcVlMxw2TQ0AJOOYs31jOhC8w5MZL5rH//
uyROePcAAAaQAAAAjFTPZQJSluAAABpAAAACZANJaVjOQAA8MPNOcY4FTReBk5YnMaA1UQV4LnHQKcahpPg
WQhmMWM0lAF+RmnSEcSZquACUUpMCI0VzcCKSwGicpxrNmHIIaADKZzBtij5AHSOY02WjGjClIImM1s2iBc
sHonOUbTJkxA2gKzmU4bJYeIGpHMSbqxlQgSkQUGO+axwSOJonSMDuZZhazqHEBgWTBAQSmRCx4QQByMswi
JHE6MgQHW0JO8kQEaM4wiJHE6MgQHW0JO8kQEaM4wiJHE6MgQHW1SdwwuHxUoOngw2NpHCFeYXXGGCpuQYg
FGBtssYiG5heYwwVNyDEApAbbLGFQ3MLzEDB02sGMCkBG84YTDfC+iBx02kGOFMEbzhhMN8L6IHHTaQY4Ui
I2ihhcT8LyEDJc+oJNCkRG0UPLieAXkIGS59QSTCliNooeXE5nwLqN1xeIF0eTDkzxcRGPGRpB1sNuAGzsM
ZoebDKTzgWOdLkaTDo7gEVzxUgUeMhwDvYrmZNgNohsd5FVp5wXTPFyMhn0B3BTJ2mSuPF0AB5sNjNHQekG
6O8ByJ5sXfPVxLhr4EqBGzo8VkeLhQxxYz82iwcwZKw9EFoTDOBg5pFsaNcQHHmMiVlGi4VqMfDmIETPESU
h/gCjnLZFMxfOAQLQ8uGCn6JZg66GmGXwDEALnhoqY/
uLLnTIk8zfBXTDY7qECT88EAO+AxBp8DtGLJ2SFVH9gVGdrhBzR8MyZcHcwMafliAh5sCgGvwdYzbOhQKw/
qEZzxUs2bPi0TTo5iADz8kYQeZFlDbwekatnIJhgfzEq//
uyROQP8AAAaQAAAAiyLOaAGSluAAABpAAAACWaNJbBjOOAz1EGjN3Shpt4AxGKJ8KSsPcAoQ48IlmzoHCZ5
H0Q409PC5zh0aIb+ArxomfAirj2wQIOehIZw6EZNdAHYQRPSxVZy2XQOPAyxsqA6lqt9nb1TEFNRTMuMTAw
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVFZAA2Gw2KwuFwuKycSCQMCgKCAgFBIJxOKxWIxGRisnJCQUCggICBAYJxOGwuFxGFxWTiQSBgKCAQC
AUGB8TisLiMRkZObHCQiRNkIIhWKEERSSwIgsKgYDYbC4jEYrFYbE4EAgFBAIAoGAwJA2KyMjIyMnJxOGBQ
QCAgFAoEgkDYrC4jIxWKw2JwwKAoIBAKBQGBIGwuFwuFxWGw2GwwFAoFAoKAwGAwGwTC4XC4rDYbDYIAgFA
oFAwGAwGATBMLhcLgmGw2GwQBAKBQKAgGAIDAGwTAcLhcEw2BYFgYBABAoCAIBgIwACWgHAeAkAoBQCgSAk
B0BoDQIgJASSknJBS5EuJcTogxKiVEGHqISS0hJCSCkpJSQUekhQ/
iFEKIMSolRBh6iEjhHCPSQUbo+SCj0kKHEOIeogw3h9EGHqISLiXEsI6Rij0jdHKO4lRcixEmJMQolRCiCk
FG6N0gpCSWj9ISTogw+iVEGIUS4lxCickFJSSkgpOSWktISTogxKiVEqJ0S4lxCickFJSSklJOSWlhJaXIt
xKiVFuJ0XIsRLi4ltJST0tpolxMkuJpFuJ//
uyRNmPQAAAaQAAAAjnLOaCJSluAAABpAAAACRvs9kUx724UT4vxpGUZRlGiW0vpfS+miZJwmSdRpF+L8X40
jqOIyi4k5JSPklJbS4lhLCXInRKifE+LcXIvRYjJLaT0npPS2mScJwmUaRfi7G8X46jr2lMQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUG+ogcglA/
wjY9gUjKCoLQI+I2IoEYIyCnVQKsrwvBGBFwjZRApFkHIUgX4gYugNwoQU6XBzjzC8C4GWDfLsCkSgOQeAc
YSsaANwnoF88wj4tYcASgbIKsvwFw4AbAvCYiFmkDAOgJGIGSMLsmQhCGhVnWLgDEH0CkMkE2ScLwNAd4Mc
fIF84gTBJAvwlY7ATg3gLhigmxjhwBBCBgnyCgXzWBMDEDjCDkYBOD1AXDaBhixiuBBCzBPkJAvleEMDoFf
BjlUCcHECYKQIeHOK4DEKEDGP0E2TcKgOQYYMcuwKgfwJgmgVYc5IAThPQVY6QTY6wqAwCRgnyfAqB1AwBi
BnhGyYAnC2gqx4gwxjiOBGDDBPluBUDOBgCwCfg3zABOE5BzjVCBh1ieA3DPAxly2gTwpIojCUOIgkAJiYI
w/
CKJJKEIewlJ4ij6ThCJIgjwExMEoXE0GpWCYrhKTxJFpOBsVQlKgTEwShcTQalYJiuEpPEkWk4GxyEpUCYs
B0Ry2GJiA4uAqsBdALAyMgpTk4QUwdH48jA6D49EJKHJ4PQ3OQ9PhBaDo/
HkbHQfLRChDk0HobpQ9XCDAHRuQRi0HzohXDk0//
uyROMP8AAAaQAAAAkxTPYgPe9uAAABpAAAACORs9kAxjG5IQyhD2wg0DpBIIxgD7hC8UoAnDJsPfEGoqNhP
FrAfYITwpNSALl4U1EFaKi0QxasCqwhLhSWSALl4UrRBWiotD2LVAVLhCOhSWR4FysNqUpMQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqVVWVVkVGlBGDKMG
IJWiFQAGEKGoBlAFMxEC6yqoLJAIAxItMDvOSDTEGWIFhVBgCHOEoA6hnCADCNY6oGHAQhJodcFTMwgKcUU
MLBJgMUWcGUA0DKMCIGViqgQUFGHohFwNMyEBKRxQiSBSA5JFIHUATDKMdIFhmVAZUXGC0HE5hWIIDDwSww
DEnC2AN8zSHGDDQqYDBFpDWAdszCAqSFoyoGHBRhqItsFUMowsAqCGBl7i+JEIaIEDLSBcJUGMgLqoDiYIs
cIAWzEACUQoECiCElawzACmYDBVY40LoAAQxxNQI2AoGE4WUKsCiQEIOaRXCMGkIAMIViJYVMAgiThqgOuZ
gAVIooQqBhwMYaiLXBVDOMCIGVhZYJICij0hKgGuZBAlI4oKqAhQcoiiHXA1DGUGIIVhRIFEEJKJBlAFMxE
CqyogGoAAwxRRAIuaAGE4WUSJBCTCAOaRXB1DOEAGUD198BAAPME+KFyytONmJrlBkit5g2woXOK04+YbXK
HVo6eNsKFzissPjja5Q6tHTw+woXDxWWE5ARkEiENCUSpEZAjxEKWwGIRPODDzEAALSMNHDD0wGIRPOGjzE
AALS//
uyROEPAAAAaQAAAAlkzRYJYxhuAAABpAAAACK1M9nUkyfQg0cMJpgMQRs4aPIIAAWdBo4YTTAYg2zho8ggK
C60FTQ4jbFYwrNYyPoICgbWxU0OI5isYV1YyPkkBQNlsVNDhPMVjBXVjI+YgQDZaNmhwm1MQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqHcGABQWDiSAFYUWGAObAZkD
MOiwTIHXA1RGoIGclgnACedUACoKgeRAy4Cgc0ATJbQBRBqC34KyF1FowFEGsLZgKQISXEB2gostIBpAxpc
ADRAqC24RkGqLZgqIJYWrBUgAkuQEaBCyzgOkBGhQAOiATI6kQTigZaLkM8B24sI2RFSEVjcMkQLbMiQLgw
AOpAJkDAO5jFUDIAcgJcAjOQwDgsmdimWgCOB4g1RdQFSBjS/
gKsAEl3AzQIWW7B0QSwveDqmFBf8MyBVBYARICNQEA6RgSXsDtARYhCGRArC+4RExoLziWQCgRCDnABoiAG
SMSS+gtYwJFRiTQCoVCHRMqBUI1UwoGCCzjAscEJSMhxgBFYxHHSjzTCohGLNM5h0ZNUxmIDETjEskINOMx
yQRWkyFKpyhJjQWCjzTSYsFJoGUhVQULMiSUxEo0FJSEUzMMgSRIMqCA5Qk0kHCjSL0kTQiqyioWkgEADiw
cLGlgMmT4ICILYgQIcHB00SwsBk4BARBIwIABCwcHTRPCwGTgEBEEkAYDCBcRhc2hbC5eBwgPHnCQgSs6jP
4AwGTSKIBCGgAAEESwsLTwmDk6KIBCGkAQhJZM//
uyROQPAAAAaQAAAAlhrPXlYxhuQAABpAAAACLZM5skZJtIenhMHJ0ICAhBMAAAhIsLC00AGAyZwgICEEwAA
CBosLC7QAYDTOEBARCYAACBosLC7QAYOmUCBARiYABECwcLH6QAYPZQIEDMJgAEwsHCx59MQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUFUAI9AJRfppYWCAClpXFQyAATcUOSzAKgAIj
KJmwMGAQAZSXTCwIs0NMQ29L3GAIGSmap0AVGlhjA94IKaVAYyklsgwZgGXhihbowBBRVmrKBIjCJAFGy3J
hACjLeUNBAzAFFGIA0BgGDgwOhUEKFlJrodxAkQkTSexAaGFGgq4TaMIEFWmITgCIskrppJaUxBQ2a+gJAA
yyLBWBFpgEZDVnBeYAiLNMuXKWZARUrmtlzQAMtK01TIs0AjJqtIC4ACItM6ygIGCBip9MzCgQAMtrAqQwG
EBjK9YQFQAERcqRJCgYIKKs5R8KDAAy8NEhKAwgUZiqjwNEARIBqdAKBig4LHlUQYMADQdmEAwGMDhNQUWB
ogCJFaOlyQMUICzdMkEFAA0iYaLlAYwYJpiMwJIAQJjOyW1AyQwLL0ZQQUABUFcItsPKt7UBMNk6wgAICDD
YYDAkQiMA4Jo2A2CYnRCAAgIIJhgEBIyIwHBNHAVgmJ2hgBAQQaKAQDDJcBwTFeCsEw2aKAICAo4oDAYJIk
YJhs2mFxWTyIBQKBIaGAEBBBMNgbE5kbAcEyeAoAwGD5QBAQFExWBsNni4DgmK6FAGAwfKBQEBRYrBMCzB0
LgmK//
uyROkPEAAAaQAAAAlJjQX1YxhuQAABpAAAACNgM5pAlKW49FAIAQbOBQEBRgrBMCxw6FwTFekAIAQPpBQEB
RAjBMCxIqFwTDbZACAECdYKAgCDBGCYFiRURgmCbaAEAMCdYQAgCCBcEwNiSIjBME0agkWEEBIAHsJRFA6B
HRyAsB4ilwDwHhCsOIFQRIycRQOkFgm8MItyVeIcXIgzEbowR6TyfoaXE0XqmJ8W5GvFEXI0mJSk9Lajj8m
gdBqclYOgSH1QSDIIgqOBFBUhG5LMRaIqcnCMCIgxCcIQVD9IigkITwniCFI+8JQNRBdLg5BULrE0GwhHxf
HEKQ9dJwNQlPS4OQVB88TQbBMfF8cQpD1aZA1CUxOB6CoPj49EIJjI7HkKQ9PT4QQlMTgegbB8fHohBMSjs
eQah6TXhBCUknhCBsFROdEIJhKPyCDUKSa8JISiSeEIGwVE7hKCYQlZTBqFIi3m+CaEAGtOdMLSAbE32wZI
TSHIwCfhOjkUEcoK2N5wLyj1ZxthRwO5OVcU2BbJ33hTQSoOJwQuiXxxMEsYd0bjwzCGXnC6KND4JwtksQ1
6bcJBAEYG88Otk4xwNDEJF8bURUfBW5uvlhgnEN90RwE4BsyjLgC4NyAcNBW4EgMQ02UTOgAwp0jmG2aZwC
wBsJgiGkYY7IcEcjQrILcm7CKQE2hxujDg+KcLogjIvjciHXxrs4niV0nGN5wKxFHhtxlR4S4OF8haJyDff
BEI+GbUhA6GfnBAMMjZZuPAF4XANmUZaB4BvwiFgTMNuEwHw0c1phEyCwzcgCi4aebEBiuBIhqzhdYBiG3G
CVAl//
uyRP+PUAAAaQAAAAjzbOZYMeyIAAABpAAAACYttBaBnGUBA14TGbBY5pUAxU4wTYiAiYLTNSAy2AGIadIJS
OIQ14zBQA6BpxmYucYZoUABE5RzUiMQ86QTQiM9Q5BDPpMEw5CDTjMcw6AjNjNBM5STKoMQs5TTQiMos6RT
KiNVA4ijJpMcg5DjPjM0g6CDJjNY84zTGoMgU5UTMiM4UfPn8506HBNEhBYPuGiAJCWiIQh54yRhEm5CIht
kaIB4l5EISjQyRjpNopERdkaIB4lwVCEo0MkY6TaKREXQjRAJg2BANoBCAYAopFYYAsSLiIKnzoPDbCQ+ER
M44Dow2uOBISvOgcNsKD4REzBwDxh644DQlbOgcXcoPgyTMHA+QPXHBMZbD4eI2VB8SmlA8HyBpccExlcPh
4jZQD4lNKB4bQNIxYTMph8YRoUAuJWkhobQIkYsJmUxkYRqoBcStLDQ2wsjFhMMWgQ80PVTXcMaMZoBMpsW
HWuBxAk05yjcZMuIQUhSYy3TYMOMEPOOYk31jOjCtAhnMh41zzgCFyTnGOBU0YAZOKUGLCaiRwjj5R0CnGk
aT4FmHaTCiNNU3iCkk6QDiRNV4wJypQYMZoLG+aRjgNE5TjWdMOYgpAkhmsm4cLgD6wG1NsY1lTFcJIwJEZ
Lplhk3AO6NwU1TDEVHWga6MTGA8aqYG8FyjmHOFQ1HwDEMzgWE1FDfBIyTnCOJM13DCjIJgREaa5uBFI5zA
nGgbDpixEk4VjNBg2xx8QDnHIebbRkRjMwgkM9s2ihMcFmnKYbjJlwCKcVlMxw2TQ0AJOOYs31jOhC8w5MZ
L5rH//
uyROePcAAAaQAAAAjFTPZQJSluAAABpAAAACZANJaVjOQAA8MPNOcY4FTReBk5YnMaA1UQV4LnHQKcahpPg
WQhmMWM0lAF+RmnSEcSZquACUUpMCI0VzcCKSwGicpxrNmHIIaADKZzBtij5AHSOY02WjGjClIImM1s2iBc
sHonOUbTJkxA2gKzmU4bJYeIGpHMSbqxlQgSkQUGO+axwSOJonSMDuZZhazVHEBgWTBAQSmRCx4QQByMswi
JHE6MgQHW0JO8kQEaM4wiJHE6MgQHW0JO8kQEaM4wiJHE6MgQHW1SdwwuHxUoOngw2NpHCFeYXXGGCpuQYg
FGBtssYiG5heYwwVNyDEApAbbLGFQ3MLzEDB02sGMCkBG84YTDfC+iBx02kGOFMEbzhhMN8L6IHHTaQY4Ui
I2ihhcT8LyEDJc+oJNCkRG0UPLieAXkIGS59QSTCliNooeXE5nwLqN1xeIF0eTDkzxcRGPGRpB1sNuAGzsM
ZoebDKTzgWOdLkaTDo7gEVzxUgUeMhwDvYrmZNgNohsd5FVp5wXTPFyMhn0B3BTJ2mSuPF0AB5sNjNHQekG
6O8ByJ5sXfPVxLhr4EqBGzo8VkeLhQxxYz82iwcwZKw9EFoTDOBg5pFsaNcQHHmMiVlGi4VqMfDmIETPESU
h/gCjnLZFMxfOAQLQ8uGCn6JZg66GmGXwDEALnhoqY/
uLLnTIk8zfBXTDY7qECT88EAO+AxBp8DtGLJ2SFVH9gVGdrhBzR8MyZcHcwMafliAh5sCgGvwdYzbOhQKw/
qEZzxUs2bPi0TTo5iADz8kYQeZFlDbwekatnIJhgfzEq//
uyROQP8AAAaQAAAAiyLOaAGSluAAABpAAAACWaNJbBjOOAz1EGjN3Shpt4AxGKJ8KSsPcAoQ48IlmzoHCZ5
H0Q409PC5zh0aIb+ArxomfAirj2wQIOehIZw6EZNdAHYQRPSxVZy2XQOPAyxsqA6lqt9nbyTEFNRTMuMTAw
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqFZAA2Gw2KwuFwuKycSCQMCgKCAgFBIJxOKxWIxGRisnJCQUCggICBAYJxOGwuFxGFxWTiQSBgKCAQC
AUGB8TisLiMRkZObHCQiRNkIIhWKEERSSwIgsKgYDYbC4jEYrFYbE4EAgFBAIAoGAwJA2KyMjIyMnJxOGBQ
QCAgFAoEgkDYrC4jIxWKw2JwwKAoIBAKBQGBIGwuFwuFxWGw2GwwFAoFAoKAwGAwGwTC4XC4rDYbDYIAgFA
oFAwGAwGATBMLhcLgmGw2GwQBAKBQKAgGAIDAGwTAcLhcEw2BYFgYBABAoCAIBgIwACWgHAeAkAoBQCgSAk
B0BoDQIgJASSknJBS5EuJcTogxKiVEGHqISS0hJCSCkpJSQUekhQ/
iFEKIMSolRBh6iEjhHCPSQUbo+SCj0kKHEOIeogw3h9EGHqISLiXEsI6Rij0jdHKO4lRcixEmJMQolRCiCk
FG6N0gpCSWj9ISTogw+iVEGIUS4lxCickFJSSkgpOSWktISTogxKiVEqJ0S4lxCickFJSSklJOSWlhJaXIt
xKiVFuJ0XIsRLi4ltJST0tpolxMkuJpFuJ//
uyRNmPQAAAaQAAAAjnLOaCJSluAAABpAAAACRvs9kUx724UT4vxpGUZRlGiW0vpfS+miZJwmSdRpF+L8X40
jqOIyi4k5JSPklJbS4lhLCXInRKifE+LcXIvRYjJLaT0npPS2mScJwmUaRfi7G8X46jr2lMQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgb6iByCUD/
CNj2BSMoKgtAj4jYigRgjIKdVAqyvC8EYEXCNlECkWQchSBfiBi6A3ChBTpcHOPMLwLgZYN8uwKRKA5B4Bx
hKxoA3CegXzzCPi1hwBKBsgqy/
AXDgBsC8JiIWaQMA6AkYgZIwuyZCEIaFWdYuAMQfQKQyQTZJwvA0B3gxx8gXziBMEkC/
CVjsBODeAuGKCbGOHAEEIGCfIKBfNYEwMQOMIORgE4PUBcNoGGLGK4EELME+QkC+V4QwOgV8GOVQJwcQJgp
Ah4c4rgMQoQMY/QTZNwqA5Bhgxy7AqB/
AmCaBVhzkgBOE9BVjpBNjrCoDAJGCfJ8CoHUDAGIGeEbJgCcLaCrHiDDGOI4EYMME+W4FQM4GALAJ+DfMAE
4TkHONUIGHWJ4DcM8DGXLaBPCkiiMJQ4iCQAmJgjD8IokkoQh7CUniKPpOEIkiCPATEwShcTQalYJiuEpPE
kWk4GxVCUqBMTBKFxNBqVgmK4Sk8SRaTgbHISlQJiwHRHLYYmIDi4CqwF0AsDIyClOThBTB0fjyMDoPj0Qk
ocng9Dc5D0+EFoOj8eRsdB8tEKEOTQehulD1cIMAdG5BGLQfOiFcOTQh//
uwROOP8AAAaQAAAAkxTPYgPe9uAAABpAAAACORs9kAxjG5DKEPbCDQOkEgjGAPuELxSgCcMmw98Qaio2E8W
sB9ghPCk1IAuXhTUQVoqLRDFqwKrCEuFJZIAuXhStEFaKi0PYtUBUuEI6FJZHgXKw2pTUxBTUUzLjEwMFVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVZVWRUaUEYMowYg
laIVAAYQoagGUAUzEQLrKqgskAgDEi0wO85INMQZYgWFUGAIc4SgDqGcIAMI1jqgYcBCEmh1wVMzCApxRQw
sEmAxRZwZQDQMowIgZWKqBBQUYeiEXA0zIQEpHFCJIFIDkkUgdQBMMox0gWGZUBlRcY
LQcTmFYggMPBLDAMScLYA3zNIcYMNCpgMEWkNYB2zMICpIWjKgYcFGGoi2wVQyjCwCoIYGXuL4kQhogQMtI
FwlQYyAuqgOJgixwgBbMQAJRCgQKIISVrDMAKZgMFVjjQugABDHE1AjYCgYThZQqwKJAQg5pFcIwaQgAwhW
IlhUwCCJOGqA65mABUiihCoGHAxhqItcFUM4wIgZWFlgkgKKPSEqAa5kECUjigqoCFByiKIdcDUMZQYghWF
EgUQQkokGUAUzEQKrKiAagADDFFEAi5oAYThZRIkEJMIA5pFcHUM4QAZQPX3wEAA8wT4oXLK042YmuUGSK3
mDbChc4rTj5htcodWjp42woXOKyw+ONrlDq0dPD7ChcPFZYTkBGQSIQ0JRKkRkCPEQpbAYhE84MPMQAAtIw
0cMPTAYhE84aPMQAAtL/
+7JE4Q8AAABpAAAACWTNFgljGG4AAAGkAAAAIrUz2dSTJ9CDRwwmmAxBGzho8ggABZ0GjhhNMBiDbOGjyCA
oLrQVNDiNsVjCs1jI+ggKBtbFTQ4jmKxhXVjI+SQFA2WxU0OE8xWMFdWMj5iBANlo2aHCbUxBTUUzLjEwMF
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUdwYAFBYOJIAVhRYYA5sBmQ
Mw6LBMgdcDVEaggZyWCcAJ51QAKgqB5EDLgKBzQBMltAFEGoLfgrIXUWjAUQawtmApAhJcQHaCiy0gGkDGl
wANECoLbhGQaotmCoglhasFSACS5ARoELLOA6QEaFAA6IBMjqRBOKBlouQzwHbiwjZEVIRWNwyRAtsyJAuD
AA6kAmQMA7mMVQMgByAlwCM5DAOCyZ2KZaAI4HiDVF1AVIGNL+AqwASXcDNAhZbsHRBLC94OqYUF/
wzIFUFgBEgI1AQDpGBJewO0BFiEIZECsL7hETGgvOJZAKBEIOcAGiIAZIxJL6C1jAkVGJNAKhUIdEyoFQjV
TCgYILOMCxwQlIyHGAEVjEcdKPNMKiEYs0zmHRk1TGYgMROMSyQg04zHJBFaTIUqnKEmNBYKPNNJiwUmgZS
FVBQsyJJTESjQUlIRTMwyBJEgyoIDlCTSQcKNIvSRNCKrKKhaSAQAOLBwsaWAyZPggIgtiBAhwcHTRLCwGT
gEBEEjAgAELBwdNE8LAZOAQEQSQBgMIFxGFzaFsLl4HCA8ecJCBKzqM/
gDAZNIogEIaAAAQRLCwtPCYOToogEIaQBCElkz/
+7JE5A8AAABpAAAACWGs9eVjGG5AAAGkAAAAItkzmyRkm0h6eEwcnQgICEEwAACEiwsLTQAYDJnCAgIQTAA
AIGiwsLtABgNM4QEBEJgAAIGiwsLtABg6ZQIEBGJgAEQLBwsfpABg9lAgQMwmAATCwcLHnkxBTUUzLjEwMK
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgVQAj0AlF+mlhYIAKWlcVDIABNxQ5LMAqAAi
MombAwYBABlJdMLAizQ0xDb0vcYAgZKZqnQBUaWGMD3ggppUBjKSWyDBmAZeGKFujAEFFWasoEiMIkAUbLc
mEAKMt5Q0EDMAUUYgDQGAYODA6FQQoWUmuh3ECRCRNJ7EBoYUaCrhNowgQVaYhOAIiySumklpTEFDZr6AkA
DLIsFYEWmARkNWcF5gCIs0y5cpZkBFSua2XNAAy0rTVMizQCMmq0gLgAIi0zrKAgYIGKn0zMKBAAy2sCpDA
YQGMr1hAVAARFypEkKBggoqzlHwoMADLw0SEoDCBRmKqPA0QBEgGp0AoGKDgseVRBgwANB2YQDAYwOE1BRY
GiAIkVo6XJAxQgLN0yQQUADSJhouUBjBgmmIzAkgBAmM7JbUDJDAsvRlBBQAFQVwi2w8q3tQEw2TrCAAgIM
NhgMCRCIwDgmjYDYJidEIACAggmGAQEjIjAcE0cBWCYnaGAEBBBooBAMMlwHBMV4KwTDZooAgICjigMBgki
RgmGzaYXFZPIgFAoEhoYAQEEEw2BsTmRsBwTJ4CgDAYPlAEBAUTFYGw2eLgOCYroUAYDB8oFAQFFisEwLMH
QuCYr/
+7JE6Q8QAABpAAAACUmNBfVjGG5AAAGkAAAAI2AzmkCUpbj0UAgBBs4FAQFGCsEwLHDoXBMV6QAgBA+kFAQ
FECMEwLEioXBMNtkAIAQJ1goCAIMEYJgWJFRGCYJtoAQAwJ1hACAIIFwTA2JIiMEwTRqCSoQQEgAewlEUDo
EdHICwHiKXAPAeEKw4gVBEjJxFA6QWCbwwi3JV4hxciDMRujBHpPJ+hpcTReqYnxbka8URcjSYlKT0tqOPy
aB0GpyVg6BIfVBIMgiCo4EUFSEbksxFoipycIwIiDEJwhBUP0iKCQhPCeIIUj7wlA1EF0uDkFQusTQbCEfF
8cQpD10nA1CU9Lg5BUHzxNBsEx8XxxCkPVpkDUJTE4HoKg+Pj0QgmMjseQpD09PhBCUxOB6BsHx8eiEExKO
x5BqHpNeEEJSSeEIGwVE50QgmEo/
IINQpJrwkhKJJ4QgbBUTuEoJhCVlMGoUiLeb4JoQAa050wtIBsTfbBkhNIcjAJ+E6ORQRygrY3nAvKPVnG2
FHA7k5VxTYFsnfeFNBKg4nBC6JfHEwSxh3RuPDMIZecLoo0PgnC2SxDXptwkEARgbzw62TjHA0MQkXxtRFR
8Fbm6+WGCcQ33RHATgGzKMuALg3IBw0FbgSAxDTZRM6ADCnSOYbZpnALAGwmCIaRhjshwRyNCsgtybsIpAT
aHG6MOD4pwuiCMi+NyIdfGuzieJXScY3nArEUeG3GVHhLg4XyFonIN98EQj4ZtSEDoZ+cEAwyNlm48AXhcA
2ZRloHgG/CIWBMw24TAfDRzWmETILDNyAKLhp5sQGK4EiGrOF1gGIbcYJUCX/+7JE/
49QAABpAAAACPNs5lgx7IgAAAGkAAAAJi20FoGcZQEDXhMZsFjmlQDFTjBNiICJgtM1IDLYAYhp0glI4hDX
jMFADoGnGZi5xhmhQAETlHNSIxDzpBNCIz1DkEM+kwTDkINOMxzDoCM2M0EzlJMqgxCzlNNCIyizpFMqI1U
DiKMmkxyDkOM+MzSDoIMmM1jzjNMagyBTlRMyIzhR8+fznjocE0SEFg+4aIAkJaIhCHnjJGESbkIiG2RogH
iXkQhKNDJGOk2ikRF2RogHiXBUISjQyRjpNopERdCNEAmDYEA2gEIBgCikVhgCxIuIgqfOg8NsJD4REzjgO
jDa44EhK86Bw2woPhETMHAPGHrjgNCVs6Bxdyg+DJMwcD5A9ccExlsPh4jZUHxKaUDwfIGlxwTGVw+HiNlA
PiU0oHhtA0jFhMymHxhGhQC4laSGhtAiRiwmZTGRhGqgFxK0sNDbCyMWEwxaBDzQ9VNdwxoxmgEymxYda4H
ECTTnKNxky4hBSFJjLdNgw4wQ845iTfWM6MK0CGcyHjXPOAIXJOcY4FTRgBk4pQYsJqJHCOPlHQKcaRpPgW
YdpMKI01TeIKSTpAOJE1XjAnKlBgxmgsb5pGOA0TlONZ0w5iCkCSGaybhwuAPrAbU2xjWVMVwkjAkRkumWG
TcA7o3BTVMMRUdaBroxMYDxqpgbwXKOYc4VDUfAMQzOBYTUUN8EjJOcI4kzXcMKMgmBERprm4EUjnMCcaBs
OmLESThWM0GDbHHxAOcch5ttGRGMzCCQz2zaKExwWacphuMmXAIpxWUzHDZNDQAk45izfWM6ELzDkxkvmsf
/
+7JE549wAABpAAAACMVM9lAlKW4AAAGkAAAAJkA0lpWM5AADww805xjgVNF4GTlicxoDVRBXgucdApxqGk+
BZCGYxYzSUAX5GadIRxJmq4AJRSkwIjRXNwIpLAaJynGs2YcghoAMpnMG2KPkAdI5jTZaMaMKUgiYzWzaIF
yweic5RtMmTEDaArOZThslh4gakcxJurGVCBKRBQY75rHBI4midIwO5lmFrOocQGBZMEBBKZELHhBAHIyzC
IkcToyBAdbQk7yRARozjCIkcToyBAdbQk7yRARozjCIkcToyBAdbVJ3DC4fFSg6eDDY2kcIV5hdcYYKm5Bi
AUYG2yxiIbmF5jDBU3IMQCkBtssYVDcwvMQMHTawYwKQEbzhhMN8L6IHHTaQY4UwRvOGEw3wvogcdNpBjhS
IjaKGFxPwvIQMlz6gk0KREbRQ8uJ4BeQgZLn1BJMKWI2ih5cTmfAuo3XF4gXR5MOTPFxEY8ZGkHWw24AbOw
xmh5sMpPOBY50uRpMOjuARXPFSBR4yHAO9iuZk2A2iGx3kVWnnBdM8XIyGfQHcFMnaZK48XQAHmw2M0dB6Q
bo7wHInmxd89XEuGvgSoEbOjxWR4uFDHFjPzaLBzBkrD0QWhMM4GDmkWxo1xAceYyJWUaLhWox8OYgRM8RJ
SH+AKOctkUzF84BAtDy4YKfolmDroaYZfAMQAueGipj+4sudMiTzN8FdMNjuoQJPzwQA74DEGnwO0YsnZIV
Uf2BUZ2uEHNHwzJlwdzAxp+WICHmwKAa/
B1jNs6FArD+oRnPFSzZs+LRNOjmIAPPyRhB5kWUNvB6Rq2cgmGB/MSr/+7JE5A/
wAABpAAAACLIs5oAZKW4AAAGkAAAAJZo0lsGM44DPUQaM3dKGm3gDEYonwpKw9wChDjwiWbOgcJnkfRDjT0
8LnOHRohv4CvGiZ8CKuPbBAg56EhnDoRk10AdhBE9LFVnLZdA48DLGyoDqWq32dvVMQU1FMy4xMDBVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQgA2BYb
BMlkslmZbLBMJgkEgkEgwPC2WyeSyWSyWZn5YLBMJBIKhUMDwtlszMyuVzszVlg8MDAqFQ4WKFZ+fnZ2dna
9WoPFz0ZJEkSWVo6iSe0KxKJQeFszOyudnZ+Wy2TDAkFQqHBgWCwTzMllcrmZmTy2TBIJBUKhgTCYWCeJZL
JZLMyeTyeOgkEgkEgkEwmDoI4lkslkslk8dx3EQSBwHAkCQTB0HQRxLHMcyWJZPHcdxEEAQBwJAkCIIg6CO
IYhjmIYliOI47iIIAgCAIAkCIIgiA3EMQxDEMSxHEcRwaCAIAgCAIgiEXoABLQDgPASAUAoBQJASA6A0BoE
QEgJJSTkgpciXEuJ0QYlRKiDD1EJJaQkhJBSUkpIKPSQofxCiFEGJUSogw9RCRwjhHpIKN0fJBR6SFDiHEP
UQYgw3iDD1EJHCW0cJgiGnKIaWESYkxbixEmJMQolRCiCkFG6N0gpCSWj9ISTogw+iVEGIUS4lxCickFJSS
kgpOSWktISTogxKiVEqJ0S4lxCickFJSSklJOSWlhJaXItxKiVFuJ0XIsRLi4ltJST0tpolxMkuJpFuJX/
+7JE249AAABpAAAACOrM9nElLACAAAGkAAAAJG8z2RTHvbgT4vxpGUZRlGiW0vpfS+miZJwmSdRpF+L8X40
jqOIyi4k5JSPklJbS4lhLCXInRKifE+LcXIvRYjJLaT0npPS2mScJwmUaRfi7G8X46jr2lUxBTUUzLjEwMF
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVavnQDfUQmhSB/
hGzYE0ZQVB9C3iNiKBGCMgp1UCrK8LwRgRcI2UQKRZByFIF+IGUAuB2iFtIm5jjcHQUYuZ3CELAOQeAcYSs
aAKgnoF88wj46xXA6B7hqy/
BHDgEIGIPsQ84g1BWCfixlWGrKAQhDQqzrFwBiF+EIUIk5xjcGIXcWMvohaOEkOAb4xzABODeAuGKCbGOHA
EEIGCfIKBfNYEwMQOMIORgE4PUBcPoV8sZKBYD5EzLiJOgxXCWErFjPYTAyhJEAK+P8ngsB2iZmSJOeYrg/
CfixncIYWISQvAwxxm4Jgfoh5eRJy9j4HAb4mZ/
CaF6FcLAPscZ2CYHKJuYor5Yx8C4HeJmcwmhTCuFgJGLmkBMDpE3K0V8l5IBcEyJmh20IgZETwpFoHhKHEQ
SAExMA8EQiiSShCHsJSeIo+k4QiSII8BMTBKFxNBqVgmK4Sk8uJeTqJ0fpKT8H0hBpE2OknJ/
EqP8fJxq1GqpDmE/
VIfyoP5BHyP1gHE5jdci6pVUIJXGS3qIlKmJEozdNRPFiUJbm0kKgN411aSVmOWEbzOiT6YjienNKbqwij7
bThfHLIby2kUDCOKKc1zdWEkgpThscv/
+7JE5I8AAABpAAAACSXs9kU9724AAAGkAAAAI8sz2RTGPPlDeaUigZDi0c2ztaEwgoZw7OWp3LSZPGAcWDm
jHaspA8n5k1JS9Jkjj3MVkH9CJUriYo07C9M4/
XpKVaUSFHeXlkH8xEqVxQoSdhelWWkQikxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqRQUAtYFkO8zFwliFXGA4OkLcB4D2s4UBryrAGPNsAO0N2CxmwRl
WFHEEQSwyFDLB3ANw2lMShDEZgCGmUQdkM+BvmoxhaIoCkQKozBFtA7h6Qd5mjAj6F+Ga5zML1PoTys0IAr
xyAgeY0AaJF4FgNQjWUZUFimtgPKPzAdDq0yzClhyoFkZDh2hMB1CatDkhiYJYZAiWhsgLGajGF5DMVgBFg
Jwt0XOBwGs4AcVJCKIBQBoj3g8gDGaEAV5JMQwACQVIi6GnNwDOsEOIZBZ5hMDqlcQkhvGZlA2IxMKuMRQi
xOAHnNwjKsKQFYAxplEGVHxgsBtKYmBeIgiCWGQYdobABxmwxhaIoBeAEWZwC2RMYDAazgBwrEKRAKgE0a0
HgAYzQgCvGIA1wASBpEXQ0ZuAaUghxC8EPMJgVEo8EgN4zMoGvKjgK4xHB1ibgPGbCGVYUcSPADTKQIqRfB
YDaUyMSH1995gnxQuWVpxsxNcoMkVvMG2FC5xWnHzDa5Q6tHTxthQucVlh8cbXKHVo6eH2FC4eKywnICMgk
QhoSiVIjIEeIhS2AxCJ5wYeYgABaRho4YemAxCJ5w0eYgABaUH/
+7JE4I9QAABpAAAACWWNFdVjGG4AAAGkAAAAIqqz2cCTJ9CjhhNMBiCNnDR5BAACzoNHDCaYDEG2cNHkEBQ
XWgqaHEbYrGFZrGR9BAUDa2KmhxHMVjCurGR8kgKBstipocJ5isYK6sZHzECAbLRs0OE21UxBTUUzLjEwMF
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUdwYAFBYOJIAVhRYYA5sBmQ
Mw6LBMgdcDVEaggZyWCcAJ51QAKgqB5EDLgKBzQBMltAFEGoLfgrIXUWjAUQawtmApAhJcQHaCiy0gGkDGl
wANECoLbhGQaotmCoglhasFSACS5ARoELLOA6QEaFAA6IBMjqRBOKBlouQzwHbiwjZEVIRWNwyRAtsyJAuD
AA6kAmQMA7mMVQMgByAlwCM5DAOCyZ2KZaAI4HiDVF1AVIGNL+AqwASXcDNAhZbsHRBLC94OqYUF/
wzIFUFgBEgI1AQDpGBJewO0BFiEIZECsL7hETGgvOJZAKBEIOcAGiIAZIxJL6C1jAkVGJNAKhUIdEyoFQjV
TCgYILOMCxwQlIyHGAEVjEcdKPNMKiEYs0zmHRk1TGYgMROMSyQg04zHJBFaTIUqnKEmNBYKPNNJiwUmgZS
FVBQsyJJTESjQUlIRTMwyBJEgyoIDlCTSQcKNIvSRNCKrKKhaSAQAOLBwsaWAyZPggIgtiBAhwcHTRLCwGT
gEBEEjAgAELBwdNE8LAZOAQEQSQBgMIFxGFzaFsLl4HCA8ecJCBKzqM/
gDAZNIogEIaAAAQRLCwtPCYOToogEIaQBCElkz/
+7JE5A8AAABpAAAACWGs9eVjGG5AAAGkAAAAItkzmyRkm0h6eEwcnQgICEEwAACEiwsLTQAYDJnCAgIQTAA
AIGiwsLtABgNM4QEBEJgAAIGiwsLtABg6ZQIEBGJgAEQLBwsfpABg9lAgQMwmAATCwcLHnkxBTUUzLjEwMK
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgVQAj0AlF+mlhYIAKWlcVDIABNxQ5LMAqAAi
MombAwYBABlJdMLAizQ0xDb0vcYAgZKZqnQBUaWGMD3ggppUBjKSWyDBmAZeGKFujAEFFWasoEiMIkAUbLc
mEAKMt5Q0EDMAUUYgDQGAYODA6FQQoWUmuh3ECRCRNJ7EBoYUaCrhNowgQVaYhOAIiySumklpTEFDZr6AkA
DLIsFYEWmARkNWcF5gCIs0y5cpZkBFSua2XNAAy0rTVMizQCMmq0gLgAIi0zrKAgYIGKn0zMKBAAy2sCpDA
YQGMr1hAVAARFypEkKBggoqzlHwoMADLw0SEoDCBRmKqPA0QBEgGp0AoGKDgseVRBgwANB2YQDAYwOE1BRY
GiAIkVo6XJAxQgLN0yQQUADSJhouUBjBgmmIzAkgBAmM7JbUDJDAsvRlBBQAFQVwi2w8q3tQEw2TrCAAgIM
NhgMCRCIwDgmjYDYJidEIACAggmGAQEjIjAcE0cBWCYnaGAEBBBooBAMMlwHBMV4KwTDZooFAQFHFAYFBIq
KwuCZsuKxWTyIBQKBIaGAEBBBMNgbE5kbAcEyeAoAwGD5QBAQFExWBsNni4DgmK6FAGAwfKBQEBRYrBMCzB
0LgmL/
+7JE6Q8QAABpAAAACUmNBfVjGG5AAAGkAAAAI2EzmkCUpbi9FAIAQbOBQEBRgrBMCxw6FwTFekAIAQPpBQE
BRAjBMCxIqFwTDbZACAECdYKAgCDBGCYFiRURgmCbaAEAMCdYQAgCCBcEwNiSIjBME0agkmNOlxISaOTeH0
TpKthlEKLdCN0fJOUsxnSQktsE/
h9E6RrAdRCi3QkSSEgqOYzpISTlhRRIiDI1kOohROmJEk9IKcR+JIBQImJWAsAMHp6Vg+GoAIQwalkCQVEk
xCEKS+OwHgRCWITgmAcLpEUEgmeE8JQGh7wjAiEqkgBMA4PnhFBIJj4hhKA0PXRGBEJT0uB0A4GTxNBIJjI
rhyA0GJ6TgRAqYlQOgPAaPiaCQCicVw5A6Bk9PgRASJJwKgPAaJx6DYBQlGYpA6BkmnwNQEiSYCoDwGic6D
YBQhH5BA6BkdXgagJEE8IQHgNCNwNgFCEWxPBqBkKbxVhA15lMA503zRA4CpTnjBFxMwbiQBnBYxuHCroRM
c0gNtGtzbTCywlabqIxYDxTlnEFQdwdUQVlEzjsgJWxKo1GBlsOjNlcUUHsTbTJWhq01WSBgMkNhYhTJtjY
UHGSbI0miwuDqzXXJSii00URGkTQGauWDgU4aCA4iJXmQwagISGa2RrHnS2IXwaoC9ALSYpRtJGbCGFHZEM
8G2nXIpgnQe6jlh+p5qItkbjpodyPrPVirUpseLBfRXg67Klhdh5uS0J8He4MyRzOXCSoe88YGJj+zpYE4F
4HPo7INgd8iOAvw55AFxO5w8KTB8zpoQRD/nLBhoG0N/xDAF0Ouwq4N4ccmEn/+7JE/
48QAABpAAAACPhM5kA97F4AAAGkAAAAJgU0FtWcZ9GDtzMeCx4G3NJoEGhIZnNGKkCtDNhBphtAGi2BSgWA
ZrZjIgLcyoAQWboZnNGASBwzKaMs43ADJhApBuCGa2YYwDAMlszDTdDMaAwBzdHMpoxBThBMZozyjcGMWEw
wjcIMlsxwjgCMNs0CTbJMKAxATdLMZoyASL+jznpZAAnQ4BUSEFgPPAsFAkJaIhCDh8FSMIk3IRENsjRAPE
vIhCUaGSM1PvMSsndLxwbHvGRVSPF07NV3nJWbdLxwbmZUHa4k2BHS6YDuWGysSUZ0HhthIfCImccB0YbXH
AkJXnQOG2FB8IiZg4B4w9ccBoStnQOL
uUHwZJmDgfIHrjgmMth8PEbKg+JTSgeD5A0uOCYyuHw8RsoB8SmlA8NoGkYsJmUwdBwjQkATAk0cB4HyBER
hwCjJ0HQcRkJAHQJaLA8D6AiFYcAoFLQIAB5oeqmu4Y0YzQCZTYsOtcDiBJpzlG4yZcQgpCkxlumwYcYIec
cxJvrGdGFaBDOZDxrnnAELknOMcCpowAycUoMWE1EjhHHyjoFONI0nwLMO0mFEaapvEFJJ0gHEiarxgTlSg
wYzQWN00jHAapxnGw+Ycg5WAIjNbNwwTAH1gFqbIhsJmO4QRgiIx3TLFHuAd8bgpqmGIqOtA10YmMB41UwN
4LlHMOcKhqPgGIZnAsJqKG+CRknOEcSZruGFGQTAiI01zcCKRzmBONA2HTFiJJwrGaDBtjj4gHOOQ822jIj
GZhBIZ7ZtFCY4LNOUw3GTLgEU4rKZjhsmhoASccxZvrGdCF5hyYz/
+7JE6g8gAABpAAAACMws9lUlibYAAAGkAAAAJkU0lpWM5ACXzWOB4Yeac4xwKmi8DJyxOY0BqogrwXOOgU4
1DSfAshDMYsZpKAL8jNOkI4kzVcAEopSYERorm4EUlgNE5TjWbMOQQ0AGUzmDbFHyAOkcxpstGNGFKQRMZr
ZtEC5YPROco2mTJiBtAVnMpw2Sw8QNSOYk3VjKhAlIgoMd81jgkcTROkYHcyzC1nUcQGBZMEBBKZELHhBAH
IyzCIkcToyBAdbQk7yRARozjCIkcToyBAdbQk7yRARozjCIkcToyBAdbVJ3DC4fFSg6eDDY2kcIV5hdcYYK
m5BiAUYG2yxiIbmF5jDBU3IMQCkBtssYVDcwvMQMHTawYwKQEbzhhMN8L6IHHTaQY4UwRvOGEw3wvogcdNp
BjhSIjaKGFxPwvIQMlz6gk0KREbRQ8uJ4BeQgZLn1BJMKWI2ih5cThGOwLVGcuLYgVo2RhxM2FwsgdFY0Qa
qw1cAGzWDGVDZWGSTZYFhzUXIqTBaNcARLmwqQFGwyHAGusVpmI2ArRCsa6RVNNlgumbC5FIY7QGuCjJrJk
pxsLoADZWGozIdB1INaNdAcRNlYu+bS4k4ZbgRUCGzUPFUjYXCgxomM/
NosHMGSsPRBaEwzgYOaRbGjXEBx5jIlZRouFajHw5iBEzxElIf4Ao5y2RTMXzgEC0PLhgp+iWYOuhphl8Ax
AC54aKmP7iy50yJPM3wV0w2O6hAk/PBADvgMQafA7RiydkhVR/
YFRna4Qc0fDMmXB3MDGn5YgIebAoBr8HWM2zoUCsP6hGc8VLNmz4tE06OYgA8/JGH/
+7JE4o9wAABpAAAACLIs5oAZKW4AAAGkAAAAJcu0ltWcC+AHmRZQ28HpGrZyCYYH8xKs9RBozd0oabeAMRi
ifCkrD3AKEOPCJZs6BwmeR9EONPTwuc4dGiG/
gK8aJnwIq49sECDnoSGcOhGTXQB2EET0sVWctl0DjwMsbKgOparfZ0ZMQU1FMy4xMDBVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQgDYbDYrC4XC4
rJxIJAwKAoICAUEgnE4rFYjEZGKyckJBQKCAgIEBgnJycVkZGRozZgkJCAgICBAYNk5ORkZcjRtmCRE1qEU
imLIpJWYLEREJCcVkZGRkZOTk5IKCAgICAkJBIGxWRkZGRk5OJwwKCAQEAoFAkEgbFYXEZGKxWGxOGBQFBA
IBQKAwJA2FwuFwuKw2Gw2GAoFAoFBQGAwGA2CYXC4XFYbDYbBAEAoFAoGAwGAwCYJhcLhcEw2Gw2CAIBQKB
QEAwBAYA2CYDhcLgmGwLAsDAIAIFAQBAMBGACqJcXInRKiVEqLcTouJLSWk5JSSklJOSClyJcS4nRBiVEqI
MPUQklpCSEkFJSSkgo9JCh/
EKIUQYlRKiDD1EJHCOEekgo3R8kFHpIUOIcQ9RBhvD6IMPUQkXEuJYR0jFHpG6OUdxKi5FiJMSYhRKiFEFI
KN0bpBSEktH6QknRBh9EqIMQolxLiFE5IKSklJBScktJaQknRBiVEqJUTolxLiFE5IKAkBICQIgNAyA0DwJ
AKAUCQEgPAaAcB0EQEgVBEGoHQpD/
+7JE0o9QAABpAAAACN5M5oElKW4AAAGkAAAAJFsz2RT3syA6DYEgFAWCYGwVBUFQNQRCUJQlBqFIehSIwNg
mCYJgbCMHwVCKDUJQlCUQRFHUdRGEIQg6HIQhGHYdh1EkcRxHESSaPo6k4ShyHIciUTif6UxBTUUzLjEwMF
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVBvqIHIJQP8I2PYFIygqC0
CPiNiKBGCMgp1UCrK8LwRgRcI2UQKRZByFIF+IGLoDcKEFOlwc48wvAuBlg3y7ApEoDkHgHGErGgDcJ6BfP
MI+LWHAEoGyCrL8BcOAGwLwmIhZpAwDoCRiBkjC7JkIQhoVZ1i4AxB9ApDJBNknC8DQHeDHHyBfOIEwSQL8
JWOwE4N4C4YoJsY4cAQQgYJ8goF81gTAxA4wg5GATg9QFw2gYYsYrgQQswT5CQL5XhDA6BXwY5VAnBxAmCk
CHhziuAxChAxj9BNk3CoDkGGDHLsCoH8CYJoFWHOSAE4T0FWOkE2OsKgMAkYJ8nwKgdQMAYgZ4RsmAJwtoK
seIMMY4jgRgwwT5bgVAzgYAsAn4N8wAThOQc41QgYdYngNwzwMZctoE8KSKIwlDiIJACYmCMPwiiSShCHsJ
SeIo+k4QiSII8BMTBKFxNBqVgmK4Sk8SRaTgbFUJSoExMEoXE0GpWCYrhKTxJFpOBschKVAmLAdG5bDExAc
XAVWAugFgZGQUpycIKYOj8eRgdB8eiElDk8HobnIenwgtB0fjyNjoPlohQhyaD0N0oerhBgDo3IIxaD50Qr
hyaEL/+7BE44/
wAABpAAAACTFM9iA9724AAAGkAAAAI5Ez2QDGMbkZQh7YQaB0gkEYwB9wheKUAThk2HviDUVGwni1gPsEJ4
UmpAFy8KaiCtFRaIYtWBVYQlwpLJAFy8KVogrRUWh7FqgKlwhHQpLI8C5WG1KVTEFNRTMuMTAwVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTQQAk8AsDdbMaQlZBqhjGgZ4NEOYI40TWcBKpVYBCppr
G4CDywNeaRBkogxYgXAqRkEhEQRQAqDTJMZAKrjKwATMsYMhB1ZqgmgUYqYgWES5goGYKJTAqg4jDdZMyAL
zg2QzHTZMEwTlFOE83MMMxiwUqZWG4I+oBoORjacqwBBwTAbCNWPggFc2zIGFWYJYYBiThbAG+ZpDGBTIBg
aih5heADmcFGWo7kVwYImsQukTmdgG9pioVMCC5jcbAjag2B3GbnGGpJkL2MjQF4jSEzOxDa8AWHcBSplYB
uldwfA6nNUATcUyDaGZYPETsBczog0xBlhHgCTNKAkI+8DwOaTNIK3C1wDI1HDTC7AG84KMsxBYK2METWQT
KHvOwDi0xUEdwZcxuNgxswaw7jNzDDUYsCbGJ5vAPpCXnQhteAKENQBUysA3SlQPYdTmxwFqVKGGhmWCxE6
AO85INcQRYkqYpmlAPCPrAbDms0SL/
5ffAwBDzBPihcsrTjZhsjEAyRW8wbYULnFacfMNrlDq0dPG2FC5xWWHxxtcodWjp42wkXOKrYaQGjRQ2WSY
FIrIEeIhS2KyjK6x42owKC7SipowuTgmMIUaIdE6AkBAbRIEI//
7skTpDwAAAGkAAAAJcQ0VxWc4XgAAAaQAAAAiwjPZ1JSluMJEZOCYgQzWMm0DAoLrQVNGEbYrKKzWMm0DAo
LrQVNDiNsVjCs1jI+ggKBtbFTQ4jmKxhXVjI+SQFA2WxU0OE8xWMFdWMj5iBANlo2aHCbVTEFNRTMuMTAwV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU00KsQzh3MILgqhzYDMgZh0WCZA652KF7AaZyW
CcAJ51QAKgqB5EDLgKBzQBMmQB0OYaAZ54GCbGcJ0OAcGMZ1MYqgJB5ABLmQR1IYMmAh0KZaGMIDiAbGMp0
GYcAE51AZnlmAkwAiABAbwAmFCALJjoXnBVT2YkCG4NZgT9FswdITEUjcMkQLbMiQLgwAOpAJkDAO5jFUDI
AcgJcAjOQwDgsmdimWgCOB4gGwEIcwGDIEAdxGaoAAC5GC4JOAymPAJGdAmmgFGD4mOwMQBzGLIMIA1GqoI
IEyMlQqsFlMuAqcDpNdAacNiZ6BZgSYzZECAWo2TChhORoqIWhpTTgRrB5TfIQpF2muQo4TMaLijA0xwmIl
D7jZMZiLhNdh1oeU4yGVkbTbAggPiNlyRwmI5RIGFdTdEqzJwm2hYiNhOcCw0jQcXEsib5uqQwIvHR5C4fO
cGjlR7hvkOTKOnVwxETBekNtEgYIORkZOeTJw2R8gICQ0kSBgg0jIzbK5OGycAgIMSUJAwgmRkZtlcnDaOB
AQMNIBQGEEyMjNoXitHyAgJHKCgUHLOkZ/
BWFyNo4KBISaKAoQMnRWJyfBWF0bRQUCRBMUBRAyXFYnbYFYXRrFBf/7skTpj/
AAAGkAAAAJY8z1wGMYbkAAAaQAAAAi+bOaQJMmgAJGGxQFECpcVidtgLhdGsUFAkYbCgUQKlxWJ22AuF0ax
AKBIw2CAUYVIxWJ5oATC7axAKCSCMEAowdIxOT6SAmK2zhAJCTCcEBQ46Ric2uqTEFNRTMuMTAwqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoCAAF7jWIOMtMKFMSTAFppe4xFNARIKWg
BcbZAITbFzTGQ0gQOW2CCmJJZF5QqAyFNAUaVEgSYxmLNQeDAmUgCkkEqiBDmQ5aGKA0RkOAmpwpvAUxlMW
2jYIGZTAJyrkyQAcyHLiwACRGQ4KTA5eoFSEpIVkows0LoRucwuiENGkpWIEDKQt6yQQgMZjGJOpgJgCZil
vmXhYJiSYhq5VuMIDOIvizgLiMaDGBaycpiCZhoDmHhQZiSYAsFS+MYDOBClgAVIY0AITTkTTIEzBSSXmDC
mJJZF1UJRlAAnJcrYBpDGgs1Ci7pkCAmqSVnBBzEktLIC7xnABnKtT+BJjGYttTlsTMEDNXEnaBDmI5cmYL
TGcAKUuBJYCoMZi8UdLMmYIOSv9DiBEmI6AV9iyRpADlMkQaAKDGZB5wQEE0BCEsHFAgBJgKkSyoBCHpW81
BABsNm1iAKAggbFAYJIkYXAacCsNk7RAFBQgmKAwSMlwuF0cBWGxO0UCgUQaKAwJGS4XC6PisNid5QKBRBx
QGBQgiRisVtpisVo5IBQKBI0UCgUQTFYbE7JcLhdHAUBgSHygUCiCxWGxOeLhcLo6FAICQ+UCgUJOKwTP/
7skTlDzAAAGkAAAAJT80F5WMYbkAAAaQAAAAjJjOalJMlgDZ46FwuK+QAgGDaQUCgowjBMNmEwuFxXpACAY
NpCAKCiCMEw2YVEYXFc0AIBgnWIAoKGEYXDYkVIwuK21BQGBPIgCgoYXFYbEkSMLittQkqhBASAB7CURQOg
R0cgLAeIpcA8B4QrDiBUESMnEUDpBYJvDCLclXiHFyIMxG6MEek8n6GlxNF6pifFuRrxRFyNJiUpPS2o4/
JoHQanJWDoEh9UEgyCIKjgRQVIRuSzEWiKnJwjAiIMQnCEFQ/
SIoJCE8J4ghSPvCUDUQXS4OQVC6xNBsIR8XxxCkPXScDUJT0uDkFQfPE0GwTHxfHEKQ9WmQNQlMTgegqD4+
PRCCYyOx5CkPT0+EEJTE4HoGwfHx6IQTEo7HkGoek14QQlJJ4QgbBUTnRCCYSj8gg1CkmvCSEoknhCBsFRO
4SgmEJWUwahSIt5vgmhABrTnTC0gGxN9sGSE0hyMAn4To5FBHKCtjecC8o9WcbYUcDuTlXFNgWyd94U0EqD
icELol8cTBLGHdG48Mwhl5wuijQ+CcLZLENem3CQQBGBvPDrZOMcDQxCRfG1EVHwVubr5YYJxDfdEcBOAbM
oy4AuDcgHDQVuBIDENNlEzoAMKdI5htmmcAsAbCYIhpGGOyHBHI0KyC3JuwikBNocbow4PinC6IIyL43Ih1
8a7OJ4ldJxjecCsRR4bcZUeEuDhfIWicg33wRCPhm1IQOhn5wQDDI2WbjwBeFwDZlGWgeAb8IhYEzDbhMB8
NHNaYRMgsM3IAouGnmxAYrgSIas4XWAYhtxglQJf/7skT/
j1AAAGkAAAAI82zmWDHsiAAAAaQAAAAmLbQWgZxlAQNeExmwWOaVAMVOME2IgImC0zUgMtgBiGnSCUjiENe
MwUAOgacZmLnGGaFAAROUc1IjEPOkE0IjPUOQQz6TBMOQg04zHMOgIzYzQTOUkyqDELOU00IjKLOkUyojVQ
OIoyaTHIOQ4z4zNIOggyYzWPOM0xqDIFOVEzIjOFHz5/
OeOhwTRIQWD7hogCQloiEIeeMkYRJuQiIbZGiAeJeRCEo0MkY6TaKREXZGiAeJcFQhKNDJGOk2ikRF0I0QC
YNgQDaAQgGAKKRWGALEi4iCp86Dw2wkPhETOOA6MNrjgSErzoHDbCg+ERMwcA8YeuOA0JWzoHF3KD4MkzBw
PkD1xwTGWw+HiNlQfEppQPB8gaXHBMZXD4eI2UA+JTSgeG0DSMWEzKYfGEaFALiVpIaG0CJGLCZlMZGEaqA
XErSw0NsLIxYTDFoEPND1U13DGjGaATKbFh1rgcQJNOco3GTLiEFIUmMt02DDjBDzjmJN9YzowrQIZzIeNc
84Ahck5xjgVNGAGTilBiwmokcI4+UdApxpGk+BZh2kwojTVN4gpJOkA4kTVeMCcqUGDGaCxvmkY4DROU41n
TDmIKQJIZrJuHC4A+sBtTbGNZUxXCSMCRGS6ZYZNwDujcFNUwxFR1oGujExgPGqmBvBco5hzhUNR8AxDM4F
hNRQ3wSMk5wjiTNdwwoyCYERGmubgRSOcwJxoGw6YsRJOFYzQYNscfEA5xyHm20ZEYzMIJDPbNooTHBZpym
G4yZcAinFZTMcNk0NACTjmLN9YzoQvMOTGS+ax//
7skTnj3AAAGkAAAAIxUz2UCUpbgAAAaQAAAAmQDSWlYzkAAPDDzTnGOBU0XgZOWJzGgNVEFeC5x0CnGoaT4
FkIZjFjNJQBfkZp0hHEmargAlFKTAiNFc3AiksBonKcazZhyCGgAymcwbYo+QB0jmNNloxowpSCJjNbNogX
LB6JzlG0yZMQNoCs5lOGyWHiBqRzEm6sZUIEpEFBjvmscEjiaJ0jA7mWYWs6kwcQGBZMEBBKZELHhBAHIyz
CIkcToyBAdbQk7yRARozjCIkcToyBAdbQk7yRARozjCIkcToyBAdbVJ3DC4fFSg6eFDY2kcIV5hdcYYKm5B
iAUYG2yxiIbmF5jDBU3IMQCkBtssYVDcwvMQMHTawYwKQEbzhhMN8L6IHHTaQY4UwRvOGEw3wvogcdNpBjh
SIjaKGFxPwvIQMlz6gk0KREbRQ8uJ4BeQgZLn1BJMKWI2ih5cTmfAuo3XF4gXR5MOTPFxEY8ZGkHWw24AbO
wxmh5sMpPOBY50uRpMOjuARXPFSBR4yHAO9iuZk2A2iGx3kVWnnBdM8XIyGfQHcFMnaZK48XQAHmw2M0dB6
Qbg7wHInmyAc9XFsGvgSYEbOzRmR4qFiGtwVeBOmwBrUJ6OBT2wwJND1OjuQHPM0StRx4VqMfDmIETPESUh
/gCjnLZFMxfOAQLQ8uGCn6JZg66GmGXwDEALnhoqY/
uLLnTIk8zfBXTDY7qECT88EAO+AxBp8DtGLJ2SFVH9gVGdrhBzR8MyZcHcwMafliAh5sCgGvwdYzbOhQKw/
qEZzxUs2bPi0TTo5iADz8kYQeZFlDbwekatnIJhgfzEqz//7skTjj/
AAAGkAAAAIsizmgBkpbgAAAaQAAAAlkbSWwYwLOFEGjN3Shpt4AxGKJ8KSsPcAoQ48IlmzoHCZ5H0Q409PC
5zh0aIb+ArxomfAirj2wQIOehIZw6EZNdAHYQRPSxVZy2XQOPAyxsqA6lqt9nRqTEFNRTMuMTAwqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqCYr
aABsNhsVkslkszJ46FgmGBIKhIJBYH8dxLEsrlc7Mz88PDAwHAcCQYFgtlsnksllclmZ+WCwTCQVCoVDBQb
lsSyWPZXK5mrLBYJFGUIyR6eHRLLLBWEIlAwJ5PJZXK5mZk8tjoJBIKhUJBMJhYJ5mdnZ2dn5+WyYYHBUOD
AwLBYJ5mSyudmZmTy2TDAkFQqGBgTCwTyWSyWSzMnk8nkwkEgkEgwJhMJhPEslkslmZPJ5PEgSCQSCQTCYT
CYJYlkslksSyeTyeJAkEgkEgSCYOhMEcSxzJZLEsnjuO4iCQOBIEgSCYRZEoAAzMXI6jSL8X4fRBidFxMku
JoltL6N0go9Jci5FyLkW4vxfi3C3EJHCOEekW0bo3RbRbRxEuLkTotxKiVFuJ0XElpLScltJSSktpOS5FiL
kXItxfi/
F+LcaJcSwltGKhomqGiuocSIlxxF6LEXItxOgRBEBICQRA6B0BoHQSBIBQCgSA8B4DQHgagiAkEQRA6B0KQ
Og2BIEgmBIGwVBUB4GoIhKEoIg1CkKQOg2BIJgmCYGwVBUFQig1CUJQlBqIoehSTogxKh9EqP/
7skTaDwAAAGkAAAAI6AzmhiUsAAAAAaQAAAAkbjPZWPY/
0Z0S4sRLi4k5JSSklJbS4lhJaXItxKifE+LcXIsRlEJHpFdGCPkgpCSSj9JcQYfQ+h9EGJcSYkxLScj5JCS
ElJcS8lhMonRKiRE+LcXIue8qTEFNRTMuMTAwqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqBvqIHIJQP8I2PYFIygqC0CPiNiKBGCMgp1UCrK8LwRgRcI2UQKRZByFIF+IGLoDcK
EFOlwc48wvAuBlg3y7ApEoDkHgHGErGgDcJ6BfPMI+L8OAJQRsFWX4EweANgXhMRCzSBsGIF+KWOcNMmQhC
GhVnWLgDEH0CkMkE2ScLwNAd4McfIF84gTBJAvwlY7ATg3gLhigmxjhwBBCBgnyCgXzWBMDEDjCDkYBOD1A
XDaBhixiuBBCzBPkJAvleEMDoFfBjlUCcHECYKQIeHOK4DEKEDGP0E2TcKgOQYYMcuwKgfwJgmgVYc5IATh
PQVY6QTY6wqAwCRgnyfAqB1AwBiBnhGyYAnC2gqx4gwxjiOBGDDBPluBUDOBgCwCfg3zABOE5BzjVCBh1ie
A3DPAxly2gTwpIojCUOIgkAJiYIw/
CKJJKEIewlJ4ij6ThCJIgjwExMEoXE0GpWCYrhKTxJFpOBsVQlKgTEwShcTQalYJiuEpPEkWk4GxyEpUCYs
B0Ry2GJiA4uAqsBdALAyMgpTk4QUwdH48jA6D49EJKHJ4PQ3OQ9PhBaDo/
HkbHQfLRChDk0HobpQ9XCDAHRuQRi0HzohXDk0P/7skTjD/
AAAGkAAAAJMQz2ID3vbgAAAaQAAAAjkbPZAMYxuYQyhD2wg0DpBIIxgD7hC8UoAnDJsPfEGoqNhPFrAfYIT
wpNSALl4U1EFaKi0QxasCqwhLhSWSALl4UrRBWiotD2LVAVLhCOhSWR4FysNqU1TEFNRTMuMTAwVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVlVZFRpQRgyjBiCVohUA
BhChqAZQBTMRAusqqCyQCAMSLTA7zkg0xBliBYVQYAhzhKAOoZwgAwjWOqBhwEISaHXBUzMICnFFDCwS
YDFFnBlANAyjAiBlYqoEFBRh6IRcDTMhASkcUIkgUgOSRSB1AEwyjHSBYZlQGVFxgtBxOYViCAw8EsMAxJw
tgDfM0hxgw0KmAwRaQ1gHbMwgKkhaMqBhwUYaiLbBVDKMLAKghgZe4viRCGiBAy0gXCVBjIC6qA4mCLHCAF
sxAAlEKBAoghJWsMwApmAwVWONC6AAEMcTUCNgKBhOFlCrAokBCDmkVwjBpCADCFYiWFTAIIk4aoDrmYAFS
KKEKgYcDGGoi1wVQzjAiBlYWWCSAoo9ISoBrmQQJSOKCqgIUHKIoh1wNQxlBiCFYUSBRBCSiQZQBTMRAqsq
IBqAAMMUUQCLmgBhOFlEiQQkwgDmkVwdQzhABlA9ffAQADzBPihcsrTjZia5QZIreYNsKFzitOPmG1yh1aO
njbChc4rLD442uUOrR08PsKFzhWWE5ARkEiENCUSpEZAjxEKWwGIRPODDzEAALSMNHDD0wGIRPOGjzEAALS
v/
7skThDwAAAGkAAAAJZM0WCWMYbgAAAaQAAAAitDPZ1JMn0A0cMJpgMQRs4aPIIAAWdBo4YTTAYg2zho8ggK
C60FTQ4jbFYwrNYyPoICgbWxU0OI5isYV1YyPkkBQNlsVNDhPMVjBXVjI+YgQDZaNmhwm1TEFNRTMuMTAwV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTTQqxDOHcwguCqHNgMyBmHRYJkD
rnYoXsBpnJYJwAnnVAAqCoHkQMuAoHNAEyZAHQ5hoBnngYJsZwnQ4BwYxnUxiqAkHkAEuZBHUhgyYCHQplo
YwgOIBsYynQZhwATnURkqYBAeRguYDHUBkyBEAMpnUOlB5ATYdyWtONAYMfUA4ihiKRuGSIFtmRIFwYAHUg
EyBgHcxiqBkAOQEuARnIYBwWTOxTLQBHA8QDYCEOYDBkCAO4jNUAABcjBcEnAZTHgEjOgTTQCjB8THYGIA5
jFkGEAajVUEECZGSoVWCymXAVOB0mugNOGxM9AswJMZsiBALUbJhQwnI0VELQ0ppwI1g8pvkIUi7TXIUcJm
NFxRgaY4TESh9xsmMxFwmuw60PKcZDKyNptgQQHxGy5I4TEcokDCupuiVZk4TbQsRGwnOBYaRoOLiWRN83V
IYEXjo8hcPnODRyo9w3yHJlHTq4YiJgvSQkiJWInRICQg65GTmSwsLJ8EBAhJiAQCaDg6aLkwsnAICDEoCA
gywcHTZXJw2jgQEBhqCBApNGjfFdG3JASEkEBAGDlnSM/
grC5G0cFAkJNFAUIGTorE5PiMjRySQEjGkBAgiujJ2//7skTljwAAAGkAAAAJZCz1wGMYbkAAAaQAAAAi2r
Oa4JMlOICsjRyUQEjExQQIIroyduArI25KEhJBsUEDCq5OTzYFZG2soSGINigggquTm5sAmF21iAUEkEYIB
Rg6Ricn0kBMVtnCASEmE4IChx0jE5tdTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVBoDeYMcpWCEmZ5kKwUKgNCTcUOSoYBUGdhlEzYGDNKjeQSMqmBFmhpiG3oNIaFm4osF
NoAqNLDGB7wQU0qNokIknTAs0NARYEApjQs2DQtR2MKjSoDCf8CHNKgE5USOoAOZDlxYYApDIczFiqAo7iL
PBC0wQRkuUYSPKEFBWRaKGhYEa1Aoq1AuQzsM5kNlbTIU1JBxl1hQpmaZjpWpzGUhrQEBXYFTGdhnIpcjyZ
imo4YJc4MOZmmQq1UExnIazF6VoAlBnYZRMmL+mgpqKX6WDBCTM0xDbUuEaSGsSIqigFUZ2GMEDFsTUU1DS
CT/
AizM0wBkBZY1kNYE4UpgCwzsAQpeWRNRQFVQpD0ANMzSzMcMIDaQBWVYOgMLDOws1AJgCbCgaKzxgZgaZll
tXSMYjaQFSWoKiMbjOovEykyDNhQdFXYiKYnmZaAVcxlENet5qBsNm1iAKChhsUBgkiRhcBpwKw2TtEAUFC
CYoDBIyXC4XRwFYbE7RQKBRBooDAkZLhcLo+Kw2J2igUChJxQJBQgiRisVtpisVk8kAoFAkaKBQKIJisNid
kuFwujgKAwJD5QKBRBYrDYnPFwuF0dCgEBIfKBQKEnFYJv/7skTmD/
AAAGkAAAAJUy0F0GMYbkAAAaQAAAAjITOagJMlgBs8dC4XFfIAQDBtIKBQUYRgmGzCYXC4r0gBAMG0hAFBR
BGCYbMKiMLiuaAEAwTrEAUFDCMLhsSKkYXFbagoDAnkQBQUMLisNiSJGFxW2oSKpBABXJIigdAjo5AWA8RS
4B4DwhWHECoIkZOIoHTRgoonxbkq8Q4uRBmI3Rgj0nk/
Q0uJovVMT4tyNeKIuRpMSlJ6W1HH5NA6DU5KwdAkPqgkGQRBUcCKCpCNyWYi0RU5OEYERBiE4QgqH6RFBIQ
nhPEEKR94SgaiC6XByCoXWJoNhCPi+OIUh66TgahKelwcgqD54mg2CY+L44hSHq0yBqEpicD0FQfHx6IQTG
R2PIUh6enwghKYnA9A2D4+PRCCYlHY8g1D0mvCCEpJPCEDYKic6IQTCUfkEGoUk14SQlEk8IQNgqJ3CUEwh
KymDUKRFvAEA3wTQgA1pzphaQDYm+2DJCaQ5GAT8J0cigjlBWxvOBeUerONsKOB3JyrimwLZO+8KaCVBxOC
F0S+OJgljDujceGYQy84XRRofBOFsliGvTbhIIAjA3nh1snGOBoYhIvjaiKj4K3N18sME4hvuiOAnANmUZc
AXBuQDhoK3AkBiGmyiZ0AGFOkcw2zTOAWANhMEQ0jDHZDgjkaFZBbk3YRSAm0ON0YcHxThdEEZF8bkQ6+Nd
nE8Suk4xvOBWIo8NuMqPCXBwvkLROQb74IhHwzakIHQz84IBhkbLNx4AvC4BsyjLQPAN+EQsCZhtwmA+Gjm
tMImQWGbkAUXDTzYgMVwJENWcLrAMQ24wSoEv/7skT/
jxAAAGkAAAAI8YzmVTHsiAAAAaQAAAAmNbQWlZxlAYGvCYzYLHNKgGKnGCbEQETBaZqQGWwAxDTpBKRxCGv
GYKAHQNOMzFzjDNCgAInKOakRiHnSCaERnqHIIZ9JgmHIQacZjmHQEZsZoJnKSZVBiFnKaaERlFnSKZURqo
HEUZNJjkHIcZ8ZmkHQQZMZrHnGaY1BkCnKiZkRnCj58/
nPOhwTRIQWD7hogCQloiEIeeMkYRJuQiIbZGiAeJeRCEo0MkY6TaKREXZGiAeJcFQhKNDJGOk2ikRF0I0QC
YNgQDaAQgGAKKRWGALEi4iCp86Dw2wkPhETOOA6MNrjgSErzoHDbCg+ERMwcA8YeuOA0JWzoHF3KD4MkzBw
PkD1xwTGWw+HiNlQfEppQPB8gaXHBMZXD4eI2UA+JTSgeG0DSMWEzKYfGEaFALiVpIaG0CJGLCZlMZGEaqA
XErSw0NsLIxYTDFoEPND1U13DGjGaATKbFh1rgcQJNOco3GTLiEFIUmMt02DDjBDzjmJN9YzowrQIZzIeNc
84Ahck5xjgVNGAGTilBiwmokcI4+UdApxpGk+BZh2kwojTVN4gpJOkA4kTVeMCcqUGDGaCxvmkY4DROU41n
TDmIKQJIZrJuHC4A+sBtTbGNZUxXCSMCRGS6ZYZNwDujcFNUwxFR1oGujExgPGqmBvBco5hzhUNR8AxDM4F
hNRQ3wSMk5wjiTNdwwoyCYERGmubgRSOcwJxoGw6YsRJOFYzQYNscfEA5xyHm20ZEYzMIJDPbNooTHBZpym
G4yZcAinFZTMcNk0NACTjmLN9YzoQvMOTGS+ax//
7skTnj3AAAGkAAAAIxUz2UCUpbgAAAaQAAAAmQDSWlYzkAAPDDzTnGOBU0XgZOWJzGgNVEFeC5x0CnGoaT4
FkIZjFjNJQBfkZp0hHEmargAlFKTAiNFc3AiksBonKcazZhyCGgAymcwbYo+QB0jmNNloxowpSCJjNbNogX
LB6JzlG0yZMQNoCs5lOGyWHiBqRzEm6sZUIEpEFBjvmscEjiaJ0jA7mWYWs1RxAYFkwQEEpkQseEEAcjLMI
iRxOjIEB1tCTvJEBGjOMIiRxOjIEB1tCTvJEBGjOMIiRxOjIEB1tUncMLh8VKDp4MNjaRwhXmF1xhgqbkGI
BRgbbLGIhuYXmMMFTcgxAKQG2yxhUNzC8xAwdNrBjApARvOGEw3wvogcdNpBjhTBG84YTDfC+iBx02kGOFI
iNooYXE/
C8hAyXPqCTQpERtFDy4ngF5CBkufUEkwpYjaKHlxOZ8C6jdcXiBdHkw5M8XERjxkaQdbDbgBs7DGaHmwyk8
4FjnS5Gkw6O4BFc8VIFHjIcA72K5mTYDaIbHeRVaecF0zxcjIZ9AdwUydpkrjxdAAebDYzR0HpBujvAcieb
F3z1cS4a+BKgRs6PFZHi4UMcWM/
NosHMGSsPRBaEwzgYOaRbGjXEBx5jIlZRouFajHw5iBEzxElIf4Ao5y2RTMXzgEC0PLhgp+iWYOuhphl8Ax
AC54aKmP7iy50yJPM3wV0w2O6hAk/PBADvgMQafA7RiydkhVR/
YFRna4Qc0fDMmXB3MDGn5YgIebAoBr8HWM2zoUCsP6hGc8VLNmz4tE06OYgA8/
JGEHmRZQ28HpGrZyCYYH8xKv/7skTkD/
AAAGkAAAAIsizmgBkpbgAAAaQAAAAlmjSWwYzjgM9RBozd0oabeAMRiifCkrD3AKEOPCJZs6BwmeR9EONPT
wuc4dGiG/
gK8aJnwIq49sECDnoSGcOhGTXQB2EET0sVWctl0DjwMsbKgOparfZ28kxBTUUzLjEwMKqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqCADYFhsEyWSyWZls
sEwmCQSCQSDA8LZbJ5LJZLJZmflgsEwkEgqFQwPC2WzMzK5XOzNWWDwwMCoVDhYoVn5+dnZ2dr1ag8XPRkk
SRJZWjqJJ7QrEolB4WzM7K52dn5bLZMMCQVCocGBYLBPMyWVyuZmZPLZMEgkFQqGBMJhYJ4lkslkszJ5PJ4
6CQSCQSCQTCYOgjiWSyWSyWTx3HcRBIHAcCQJBMHQdBHEscxzJYlk8dx3EQQBAHAkCQIgiDoI4hiGOYhiWI
4jjuIggCAIAgCQIgiCIDcQxDEMQxLEcRxHBoIAgCAIAiCIRegAEtAOA8BIBQCgFAkBIDoDQGgRASAklJOSC
lyJcS4nRBiVEqIMPUQklpCSEkFJSSkgo9JCh/
EKIUQYlRKiDD1EJHCOEekgo3R8kFHpIUOIcQ9RBiDDeIMPUQkcJbRwmCIacohpYRJiTFuLESYkxCiVEKIKQ
Ubo3SCkJJaP0hJOiDD6JUQYhRLiXEKJyQUlJKSCk5JaS0hJOiDEqJUSonRLiXEKJyQUlJKSUk5JaWElpci3
EqJUW4nRcixEuLiW0lJPS2miXEyS4mkW4lf/
7skTbj0AAAGkAAAAI6sz2cSUsAIAAAaQAAAAkbzPZFMe9uBPi/
GkZRlGUaJbS+l9L6aJknCZJ1GkX4vxfjSOo4jKLiTklI+SUltLiWEsJcidEqJ8T4txci9FiMktpPSek9LaZ
JwnCZRpF+LsbxfjqOvaaTEFNRTMuMTAwqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqq+dAN9RCaFIH+EbNgTRlBUH0LeI2IoEYIyCnVQKsrwvBGBFwjZRApFkHIUgX4gZQC4HaIW0ibm
ONwdBRi5ncIQsA5B4BxhKxoAqCegXzzCPjrFcDoHuGrL8EcOAQgYg+xDziDUFYJ+LGVYasoBCENCrOsXAGI
X4QhQiTnGNwYhdxYy+iFo4SQ4BvjHMAE4N4C4YoJsY4cAQQgYJ8goF81gTAxA4wg5GATg9QFw+hXyxkoFgP
kTMuIk6DFcJYSsWM9hMDKEkQAr4/
yeCwHaJmZIk55iuD8J+LGdwhhYhJC8DDHGbgmB+iHl5EnL2PgcBviZn8JoXoVwsA+xxnYJgcom5iivljHwL
gd4mZzCaFMK4WAkYuaQEwOkTcrRXyXkgFwTImaHbQiBkRPCkWgeEocRBIATEwDwRCKJJKEIewlJ4ij6ThCJ
IgjwExMEoXE0GpWCYrhKTy4l5OonR+kpPwfSEGkTY6Scn8So/x8nGrUaqkOYT9Uh/Kg/kEfI/
WAcTmN1yLqlVQglcZLeoiUqYkSjN01E8WJQlubSQqA3jXVpJWY5YRvM6JPpiOJ6c0purCKPttOF8cshvLaR
QMI4opzXN1YSSClOGxy//
7skTkjwAAAGkAAAAJJez2RT3vbgAAAaQAAAAjyzPZFMY8+UN5pSKBkOLRzbO1oTCChnDs5anctJk8YBxYOa
MdqykDyfmTUlL0mSOPcxWQf0IlSuJijTsL0zj9ekpVpRIUd5eWQfzESpXFChJ2F6VZaRCNTEFNRTMuMTAwV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUUFALWBZDvMxcJY
hVxgODpC3AeA9rOFAa8qwBjzbADtDdgsZsEZVhRxBEEsMhQywdwDcNpTEoQxGYAhplEHZDPgb5qMYWiKApE
CqMwRbQO4ekHeZowI+hfhmuczC9T6E8rNCAK8cgIHmNAGiReBYDUI1lGVBYprYDyj8wHQ6tMswpYcqBZGQ4
doTAdQmrQ5IYmCWGQIlobICxmoxheQzFYARYCcLdFzgcBrOAHFSQiiAUAaI94PIAxmhAFeSTEMAAkFSIuhp
zcAzrBDiGQWeYTA6pXEJIbxmZQNiMTCrjEUIsTgB5zcIyrCkBWAMaZRBlR8YLAbSmJgXiIIglhkGHaGwAcZ
sMYWiKAXgBFmcAtkTGAwGs4AcKxCkQCoBNGtB4AGM0IArxiANcAEgaRF0NGbgGlIIcQvBDzCYFRKPBIDeMz
KBryo4CuMRwdYm4DxmwhlWFHEjwA0ykCKkXwWA2lMjEh9ffeYJ8ULllacbMTXKDJFbzBthQucVpx8w2uUOr
R08bYULnFZYfHG1yh1aOnh9hQuHissJyAjIJEIaEolSIyBHiIUtgMQiecGHmIAAWkYaOGHpgMQiecNHmIAA
WlBo//
7sEThD1AAAGkAAAAJZY0V1WMYbgAAAaQAAAAiqrPZwJMn0IYTTAYgjZw0eQQAAs6DRwwmmAxBtnDR5BAUF1
oKmhxG2KxhWaxkfQQFA2tipocRzFYwrqxkfJICgbLYqaHCeYrGCurGR8xAgGy0bNDhNqpMQU1FMy4xMDCqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqHcGABQWDiSAFYUWGAObAZkDM
OiwTIHXA1RGoIGclgnACedUACoKgeRAy4Cgc0ATJbQBRBqC34KyF1FowFEGsLZgKQISXEB2gostIBpAxpcA
DRAqC24RkGqLZgqIJYWrBUgAkuQEaBCyzgOkBGhQAOiATI6kQTigZaLkM8B24sI2RFSEVjcMkQLbMiQLgwA
OpAJkDAO5jFUDIAcgJcAjOQwDgsmdimWgCOB4g1RdQFSBjS/
gKsAEl3AzQIWW7B0QSwveDqmFBf8MyBVBYARICNQEA6RgSXsDtARYhCGRArC+4RExoLziWQCgRCDnABoiAG
SMSS+gtYwJFRiTQCoVCHRMqBUI1UwoGCCzjAscEJSMhxgBFYxHHSjzTCohGLNM5h0ZNUxmIDETjEskINOMx
yQRWkyFKpyhJjQWCjzTSYsFJoGUhVQULMiSUxEo0FJSEUzMMgSRIMqCA5Qk0kHCjSL0kTQiqyioWkgEADiw
cLGlgMmT4ICILYgQIcHB00SwsBk4BARBIwIABCwcHTRPCwGTgEBEEkAYDCBcRhc2hbC5eBwgPHnCQgSs6jP
4AwGTSKIBCGgAAEESwsLTwmDk6KIBCGkAQhJZM//
uyROQPAAAAaQAAAAlhrPXlYxhuQAABpAAAACLZM5skZJtIenhMHJ0ICAhBMAAAhIsLC00AGAyZwgICEEwAA
CBosLC7QAYDTOEBARCYAACBosLC7QAYOmUCBARiYABECwcLH6QAYPZQIEDMJgAEwsHCx59MQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQVQAj0AlF+mlhYIAKWlcVD
IABNxQ5LMAqAAiMombAwYBABlJdMLAizQ0xDb0vcYAgZKZqnQBUaWGMD3ggppUBjKSWyDBmAZeGKFujAEFF
WasoEiMIkAUbLcmEAKMt5Q0EDMAUUYgDQGAYODA6FQQoWUmuh3ECRCRNJ7EBoYUaCrhNowgQVaYhOAIiySu
mklpTEFDZr6AkADLIsFYEWmARkNWcF5gCIs0y5cpZkBFSua2XNAAy0rTVMizQCMmq0gLgAIi0zrKAgYIGKn
0zMKBAAy2sCpDAYQGMr1hAVAARFypEkKBggoqzlHwoMADLw0SEoDCBRmKqPA0QBEgGp0AoGKDgseVRBgwAN
B2YQDAYwOE1BRYGiAIkVo6XJAxQgLN0yQQUADSJhouUBjBgmmIzAkgBAmM7JbUDJDAsvRlBBQAFQVwi2w8q
3tQhAQABsNg2REAUBBA2KAwSRIwuCaNgVhsnaIAoKEExQGCRkuFwujgKw2J2igUCiDRQGBIyXC4XR8VhsTv
KBQKIOKBIKCSJGKxWbXIxWjkgFAoEjRQKBRBMVhsTslwuF0cBQGBIfKBQKILFYbE54uFwujoUAgJD5QKBQk
4rBM//
uyROOPEAAAaQAAAAlJjQX1YxhuQAABpAAAACMzM5qglKW4NnjoXC4r5ACAYNpBQKCjCMEw2YTC4XFekAIBg
2kIAoKIIwTDZhURhcVzQAgGCdYgCgoYRhcNiRUjC4rbUFAYE8iAKChhcVhsSRIwuK21CRVjTpcSEmjk3h9E
6SrYZRCi3QjdHyTlLMZ0kJLbBP4fROkawHUQot0JEkhIKjmM6SEk5YUUSIgyNZDqIUTpiRJPSCnEfiSAUCJ
iVgLADB6elYPhqACEMGpZAkFRJMQhCkvjsB4EQliE4JgHC6RFBIJnhPCUBoe8IwIhKpIATAOD54RQSCY+IY
SgND10RgRCU9LgdAOBk8TQSCYyK4cgNBiek4EQKmJUDoDwGj4mgkAonFcOQOgZPT4EQEiScCoDwGiceg2AU
JRmKQOgZJp8DUBIkmAqA8BonOg2AUIR+QQOgZHV4GoCRBPCEB4DQjcDYBQhFsTwagZCm8VYQNeZTAOdN80Q
OAqU54wRcTMG4kAZwWMbhwq6ETHNIDbRrc20wssJWm6iMWA8U5ZxBUHcHVEFZRM47ICVsSqNRgZbDozZXFF
B7E20yVoatNVkgYDJDYWIUybY2FBxkmyNJosLg6s11yUootNFERpE0Bmrlg4FOGggOIiV5kMGoCEhmtkax5
0tiF8GqAvQC0mKUbSRmwhhR2RDPBtp1yKYJ0Huo5YfqeaiLZG46aHcj6z1Yq1KbHiwX0V4OuypYXYebktCf
B3uDMkczlwkqHvPGBiY/s6WBOBeBz6OyDYHfIjgL8OeQBcTucPCkwfM6aEEQ/
5ywYaBtDf8QwBdDrsKuDeHHJhJ//
uyRP+PEAAAaQAAAAj4TOZAPexeAAABpAAAACYFNBbVnGfRg7czHgseBtzSaBBoSGZzRipArQzYQaYbQBotg
UoFgGa2YyIC3MqAEFm6GZzRgEgcMymjLONwAyYQKQbghmtmGMAwDJbMw03QzGgMAc3RzKaMQU4QTGaM8o3B
jFhMMI3CDJbMcI4AjDbNAk2yTCgMQE3SzGaMgEi/
o851WQAJ0OAVEhBYDzwLBQJCWiIQg4fBUjCJNyERDbI0QDxLyIQlGhkjNT7zErJ3S8cGx7xkVUjxdOzVd5y
Vm3S8cG5mVB2uJN
gR0umA7lhsrElGdB4bYSHwiJnHAdGG1xwJCV50DhthQfCImYOAeMPXHAaErZ0Di7lB8GSZg4HyB644JjLYf
DxGyoPiU0oHg+QNLjgmMrh8PEbKAfEppQPDaBpGLCZlMHQcI0JAEwJNHAeB8gREYcAoydB0HEZCQB0CWiwP
A+gIhWHAKBS0CAAeaHqpruGNGM0AmU2LDrXA4gSac5RuMmXEIKQpMZbpsGHGCHnHMSb6xnRhWgQzmQ8a55w
BC5JzjHAqaMAMnFKDFhNRI4Rx8o6BTjSNJ8CzDtJhRGmqbxBSSdIBxImq8YE5UoMGM0FjdNIxwGqcZxsPmH
IOVgCIzWzcMEwB9YBamyIbCZjuEEYIiMd0yxR7gHfG4KaphiKjrQNdGJjAeNVMDeC5RzDnCoaj4BiGZwLCa
ihvgkZJzhHEma7hhRkEwIiNNc3Aikc5gTjQNh0xYiScKxmgwbY4+IBzjkPNtoyIxmYQSGe2bRQmOCzTlMNx
ky4BFOKymY4bJoaAEnHMWb6xnQheYcmM//
uyROoPIAAAaQAAAAjMLPZVJYm2AAABpAAAACZFNJaVjOQAl81jgeGHmnOMcCpovAycsTmNAaqIK8FzjoFON
Q0nwLIQzGLGaSgC/
IzTpCOJM1XABKKUmBEaK5uBFJYDROU41mzDkENABlM5g2xR8gDpHMabLRjRhSkETGa2bRAuWD0TnKNpkyYg
bQFZzKcNksPEDUjmJN1YyoQJSIKDHfNY4JHE0TpGB3MswtZqHEBgWTBAQSmRCx4QQByMswiJHE6MgQHW0JO
8kQEaM4wiJHE6MgQHW0JO8kQEaM4wiJHE6MgQHW1SdwwuHxUoOngw2NpHCFeYXXGGCpuQYgFGBtssYiG5he
YwwVNyDEApAbbLGFQ3MLzEDB02sGMCkBG84YTDfC+iBx02kGOFMEbzhhMN8L6IHHTaQY4UiI2ihhcT8LyED
Jc+oJNCkRG0UPLieAXkIGS59QSTCliNooeXE4RjsC1RnLi2IFaNkYcTNhcLIHRWNEGqsNXABs1gxlQ2Vhkk
2WBYc1FyKkwWjXAES5sKkBRsMhwBrrFaZiNgK0QrGukVTTZYLpmwuRSGO0BrgoyayZKcbC6AA2VhqMyHQdS
DWjXQHETZWLvm0uJOGW4EVAhs1DxVI2FwoMaJjPzaLBzBkrD0QWhMM4GDmkWxo1xAceYyJWUaLhWox8OYgR
M8RJSH+AKOctkUzF84BAtDy4YKfolmDroaYZfAMQAueGipj+4sudMiTzN8FdMNjuoQJPzwQA74DEGnwO0Ys
nZIVUf2BUZ2uEHNHwzJlwdzAxp+WICHmwKAa/B1jNs6FArD+oRnPFSzZs+LRNOjmIAPPyRh//
uyROKPcAAAaQAAAAiyLOaAGSluAAABpAAAACXLtJbVnAvgB5kWUNvB6Rq2cgmGB/
MSrPUQaM3dKGm3gDEYonwpKw9wChDjwiWbOgcJnkfRDjT08LnOHRohv4CvGiZ8CKuPbBAg56EhnDoRk10Ad
hBE9LFVnLZdA48DLGyoDqWq32dGTEFNRTMuMTAwqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoNhsNisLhcLisnEgkDAoCggIBQSCcTisViMRk
YrCwgIAAABAQEIDAsLCwGDg4OTHjAgIBAQEBCAweFhYODiwcmmMCCSWmkSMyRIoscSJDCcVkZGRkZOTk5IK
CAgICAkJBIGxWRkZGRk5OJwwKCAQEAoFAkEgbFYXEZGKxWGxOGBQFBAIBQKAwJA2FwuFwuKw2Gw2GAoFAoF
BQGAwGA2CYXC4XFYbDYbBAEAoFAoGAwGAwCYJhcLhcEw2Gw2CAIBQKBQEAwBAYA2CYDhcLgmGwLAsDAIAIF
AQBAMBGBVEuLkTolRKiVFuJ0XElpLSckpJSSknJBS5EuJcTogxKiVEGHqISS0hJCSCkpJSQUekhQ/
iFEKIMSolRBh6iEjhHCPSQUbo+SCj0kKHEOIeogw3h9EGHqISLiXEsI6Rij0jdHKO4lRcixEmJMQolRCiCk
FG6N0gpCSWj9ISTogw+iVEGIUS4lxCickFJSSkgpOSWktISTogxKiVEqJ0S4lxCickFASAkBIEQGgZAaB4E
gFAKBICQHgNAOA6CICQKgiDUDoUgd//
uyRNEPcAAAaQAAAAjbDOaAJMmaAAABpAAAACRYs9kU97MgBsCQCgLBMDYKgqCoGoIhKEoSg1CkPQpEYGwTB
MEwNhGD4KhFBqEoShKIIijqOojCEIQdDkIQjDsOw6iSOI4jiJJNH0dScJQ5DkORKJxP9NVMQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUG+ogcglA/
wjY9gUjKCoLQI+I2IoEYIyCnVQKsrwvBGBFwjZRApFkHIUgX4gYugNwoQU6XBzjzC8C4GWDfLsCkSgOQeAc
YSsaANwnoF88wj4tYcASgbIKsvwFw4AbAvCYiFmkDAOgJGIGSMLsmQhCGhVnWLgDEH0CkMkE2ScLwNAd4Mc
fIF84gTBJAvwlY7ATg3gLhigmxjhwBBCBgnyCgXzWBMDEDjCDkYBOD1AXDaBhixiuBBCzBPkJAvleEMDoFf
BjlUCcHECYKQIeHOK4DEKEDGP0E2TcKgOQYYMcuwKgfwJgmgVYc5IAThPQVY6QTY6wqAwCRgnyfAqB1AwBi
BnhGyYAnC2gqx4gwxjiOBGDDBPluBUDOBgCwCfg3zABOE5BzjVCBh1ieA3DPAxly2gTwpIojCUOIgkAJiYI
w/
CKJJKEIewlJ4ij6ThCJIgjwExMEoXE0GpWCYrhKTxJFpOBsVQlKgTEwShcTQalYJiuEpPEkWk4GxyEpUCYs
B0blsMTEBxcBVYC6AWBkZBSnJwgpg6Px5GB0Hx6ISUOTwehuch6fCC0HR+PI2Og+WiFCHJoPQ3Sh6uEGAOj
cgjFoPnRCuHJo//
uyROMP8AAAaQAAAAkxTPYgPe9uAAABpAAAACORM9kAxjG5QhlCHthBoHSCQRjAH3CF4pQBOGTYe+INRUbCe
LWA+wQnhSakAXLwpqIK0VFohi1YFVhCXCkskAXLwpWiCtFRaHsWqAqXCEdCksjwLlYbUpVMQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVNBACTwCwN1sxpCVkGqGMaBng0Q5gjjRNZwEq
lVgEKmmsbgIPLA15pEGSiDFiBcCpGQSERBFACoNMkxkAquMrABMyxgyEHVmqCaBRipiBYRLmCgZgolMCqDi
MN1kzIAvODZDMdNkwTBOUU4TzcwwzGLBSplYbgj6gGg5GNpyrAEHBMBsI1Y+CAVzbMgYVZglhgGJOFsAb5m
kMYFMgGBqKHmF4AOZwUZajuRXBgiaxC6ROZ2Ab2mKhUwILmNxsCNqDYHcZucYakmQvYyNAXiNITM7ENrwBY
dwFKmVgG6V3B8Dqc1QBNxTINoZlg8ROwFzOiDTEGWEeAJM0oCQj7wPA5pM0grcLXAMjUcNMLsAbzgoyzEFg
rYwRNZBMoe87AOLTFQR3BlzG42DGzBrDuM3MMNRiwJsYnm8A+kJedCG14AoQ1AFTKwDdKVA9h1ObHAWpUoY
aGZYLEToA7zkg1xBFiSpimaUA8I+sBsOazRIv/
l98DAEPME+KFyytONmGyMQDJFbzBthQucVpx8w2uUOrR08bYULnFZYfHG1yh1aOnjbCRc4qthpAaNFDZZJg
UisgR4iFLYrKMrrHjajAoLtKKmjC5OCYwhRoh0ToCQEBtEgQj//
uyROkPAAAAaQAAAAlxDRXFZzheAAABpAAAACLCM9nUlKW4wkRk4JiBDNYybQMCgutBU0YRtisorNYybQMCg
utBU0OI2xWMKzWMj6CAoG1sVNDiOYrGFdWMj5JAUDZbFTQ4TzFYwV1YyPmIEA2WjZocJtVMQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTTQqxDOHcwguCqHNgMyBmHRYJkDrnYoXsB
pnJYJwAnnVAAqCoHkQMuAoHNAEyZAHQ5hoBnngYJsZwnQ4BwYxnUxiqAkHkAEuZBHUhgyYCHQploYwgOIBs
YynQZhwATnUBmeWYCTACIAEBvACYUIAsmOhecFVPZiQIbg1mBP0WzB0hMRSNwyRAtsyJAuDAA6kAmQMA7mM
VQMgByAlwCM5DAOCyZ2KZaAI4HiAbAQhzAYMgQB3EZqgAALkYLgk4DKY8AkZ0CaaAUYPiY7AxAHMYsgwgDU
aqgggTIyVCqwWUy4CpwOk10Bpw2JnoFmBJjNkQIBajZMKGE5GiohaGlNOBGsHlN8hCkXaa5CjhMxouKMDTH
CYiUPuNkxmIuE12HWh5TjIZWRtNsCCA+I2XJHCYjlEgYV1N0SrMnCbaFiI2E5wLDSNBxcSyJvm6pDAi8dHk
Lh85waOVHuG+Q5Mo6dXDERMF6SATtEgYIORkZOZTJw2R8gIDDSRIGEGkZG2yuThsnAICIJKEgYQTIyNtlcn
FaOBAQMNICQMIJkZG2h0Vo8ICAkZUJBQcs6Rn8FYXI2jgoEhJooChAydFYnR4KwujaOCgSMaKAogiXFYnbY
FYXR//
uyROgPcAAAaQAAAAljzPXAYxhuQAABpAAAACLws5pUkyaArFBQJGGxQFECpcVidtgVhdGsUFAkYbFAUQKlx
WJ22AuF0axAKBJBsKBRhUjJyebAXC7axASEkEYUFDCZGTk+kgXFbZwgJCTCcKCjDpGJza5MQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqogFAO/
SqLTBFm5oCS0peGEp7FsTINA18AaQxiAhJsP0tMW2V9BJe0tqgBkCRxaUtqr14gKQxiAwofEAzKQygTOXiB
DmIYKDDAXEZCmIKcK0gCYxiBwoDCwzKQuM1JkJaktqj7JEBRaVHGwkUBQBknWKgQIECoV1TloS2IkWBUOxl
IXhZIXWMJgEpK5VUsqZioPMHLqmBIGKnSmkBQGciDrEC4RhQBjK6SpAgTMNIph5Z0xJBRVqoZAEBnEmCwAs
8Y0AoTJkEoACZgqbLzLKmJIOC2pe4AgM4FNVkAUBjMWub4uqYAgJK6ltgQJiOW9fItUYQAJTLVEgCAxmL5Q
OWdMAwMlpydoACYjl8YcLPGEQKU6qSxhEYzIbQ2BAmIYKTAyOpgGYjo4wAAQGMQOVJkGjCIxkSuesABMQQg
sXFAmIZiKpa2IwiL1WsYVFACAgCDGjRGQE5IOtCkiEJQuSE5pkmVLLlG0BlolWKqF0CM0yTISJcojQHnkqI
hSOoEZ9xMhIkziNAeJlVipRGSGzRKiKnC6BGOkoWKjRGQD5geJhSWGSAjMGx0lFRCIiMgJzA8TCkiEJQuSE
46ZFRCIi5QnJB40//
uyROGPEAAAaQAAAAlJzPYIYfhgQAABpAAAACMjs9kgYyQAKSIQlBskJxYyKiERFxgnJBc0GSIQnBskJxYyG
iERHRgnJB80GSIQnA+QE44eExKIioeI0A+fEpMKSwfICMweExKKioeIyAnPiUmFJYZID+VMQU1FMy4xMDBV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQBVYKlEZh7JMI
RoPEZIbc0SiIQjJATmHskwpEQ0RkhtzRKKhCMkBOYeyTCkRDRGgbc0SioQjJAjYeyiISIsRmD6k+MSUPJBK
h+oRqTIkl4pHZ4jUnxiORBE8kH6JUemQ4kITiWWEak+MRyHkTyQW0So9MhxHoTiWWFaI+MRyHkTyQfqEZ6Z
DiPQ//
uyRESP8AAAaQAAAAjYrSTCJSxuAAABpAAAACAAADSAAAAEnEs8VolRiOQ8kEkH6hGpMhxHohEs8VolRiOQ8
kEkH6hGpMhxHoLhzJhugGwihMCoWjgTywgmojBKCwXDmTC2gGw6hMCoOjgT1EeJUxfXorJMQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqq//
uyZAAP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAETEFNRTMuMTAwqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqq//
uyZAAP8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAETEFNRTMuMTAwqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpMQU1FMy4xMDCq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqq"
writefile("Ethereal/Hitmarkers/TARKOV.mp3",
crypt.base64.decode(Tarkov))
writefile("Ethereal/Hitmarkers/SIGMA.mp3", crypt.base64.decode(SIGMA))
HitmarkerSounds["SIGMA"] =
getcustomasset("Ethereal/Hitmarkers/SIGMA.mp3")
HitmarkerSounds["Tarkov"] =
getcustomasset("Ethereal/Hitmarkers/TARKOV.mp3")
end)();
end;
end;
Properties.ColorCorrection = {};
Properties.Atmosphere = {};
Properties.Clouds = {};
if Atmosphere then
for Index, Value in next, {"Haze", "Decay", "Color", "Glare"} do
Properties.Atmosphere[Value] = Atmosphere[Value];
end;
end;
if Clouds then
for Index, Value in next, {"Density", "Color"} do
Properties.Clouds[Value] = Clouds[Value];
end;
end;
if ColorCorrection then
Properties.ColorCorrection.TintColor = ColorCorrection.TintColor;
Properties.ColorCorrection.Saturation = ColorCorrection.Saturation;
else
Properties.ColorCorrection.TintColor = Color3.fromRGB(255, 255, 255);
Properties.ColorCorrection.Saturation = 1;
end;
end;
do --// Visuals
do --// Ticks
Visuals.RadarTick = tick();
end
do --// Tables
Visuals.Enemies = {};
Visuals.Items = {};
Visuals.Lines = {};
Visuals.Hitmarkers = {};
Visuals.HitDamages = {};
Visuals.ColorSets = {
{Color3.fromRGB(200, 80, 0), Color3.fromRGB(120, 119, 255)},
{Color3.fromRGB(50, 69, 205), Color3.fromRGB(120, 119, 255)},
{Color3.fromRGB(100, 101, 255), Color3.fromRGB(255, 60,1)},
};
end;
do --// Elements
Visuals.InfoContainer = Instance.new("ScreenGui"); do
Visuals.InfoContainer.Parent = gethui();
Visuals.InfoContainer.Name =
"9391203j312i3kashd9q312093ajsdokake219183213h";
end;
Visuals.ESPContainer = Instance.new("ScreenGui") do
Visuals.ESPContainer.Parent = gethui();
Visuals.ESPContainer.Name =
"9391203j312i3kashd9q312093ajsdokake219183213h";
Visuals.ESPContainer.IgnoreGuiInset = true;
end;
Visuals.RadarContainer = Instance.new("ScreenGui") do
Visuals.RadarContainer.Parent = gethui();
Visuals.RadarContainer.Name =
"9391203j312i3kashd9q312093ajsdokake219183213h";
Visuals.RadarContainer.IgnoreGuiInset = true;
end;
Visuals.Flybar = Instance.new("Frame"); do
Visuals.FlyInvert = Instance.new("Frame");
Visuals.Flybar.Parent = Visuals.InfoContainer;
Visuals.Flybar.Size = UDim2.new(0, 200, 0, 10);
Visuals.Flybar.BackgroundColor3 = Color3.fromRGB(0, 0, 0);
Visuals.Flybar.BorderColor3 = Color3.fromRGB(0, 0, 0);
Visuals.Flybar.Visible = false
Visuals.FlyInvert.Parent = Visuals.Flybar;
Visuals.FlyInvert.BackgroundColor3 = Color3.fromRGB(0, 255, 0);
Visuals.FlyInvert.AnchorPoint = Vector2.new(1, 0);
Visuals.FlyInvert.Size = UDim2.new(0, 0, 1, 0);
Visuals.FlyInvert.BorderSizePixel = 0;
end;
Visuals.ManipulationBar = Instance.new("Frame"); do
Visuals.ManipulationInvert = Instance.new("Frame")
Visuals.ManipulationBar.Parent = Visuals.InfoContainer
Visuals.ManipulationBar.Size = UDim2.new(0, 200, 0, 10)
Visuals.ManipulationBar.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
Visuals.ManipulationBar.BorderColor3 = Color3.fromRGB(0, 0, 0)
Visuals.ManipulationInvert.Parent = Visuals.ManipulationBar
Visuals.ManipulationInvert.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
Visuals.ManipulationInvert.AnchorPoint = Vector2.new(0.5, 0)
Visuals.ManipulationInvert.Position = UDim2.new(0.5, 0, 0, 0)
Visuals.ManipulationInvert.Size = UDim2.new(0, 0, 1, 0)
Visuals.ManipulationInvert.BorderSizePixel = 0
end;
Visuals.SelfHighlight = Instance.new("Highlight"); do
Visuals.SelfHighlight.Parent = gethui();
Visuals.SelfHighlight.Enabled = false;
end;
Visuals.CrossAdornee = Instance.new("BoxHandleAdornment"); do
Visuals.CrossAdornee.Parent = Visuals.CrosshairPart;
Visuals.CrossAdornee.Size = Visuals.CrosshairPart.Size;
Visuals.CrossAdornee.Adornee = Visuals.CrosshairPart;
Visuals.CrossAdornee.ZIndex = 1;
end;
end;
RadarFrame.Name = "RadarFrame";
RadarFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0);
RadarFrame.BackgroundTransparency = 0.750;
RadarFrame.BorderColor3 = Color3.fromRGB(0, 0, 0);
RadarFrame.BorderSizePixel = 0;
RadarFrame.Position = UDim2.new(0.268262744, 0, 0.181272507, 0);
RadarFrame.Size = UDim2.new(0, 254, 0, 254);
RadarFrame.Selectable = true;
RadarFrame.Active = true;
RadarFrame.Draggable = true;
RadarFrame.ClipsDescendants = true;
RadarFrame.Visible = false;
local UICorner = Instance.new("UICorner", RadarFrame);
UICorner.CornerRadius = UDim.new(1, 0);
end;
do --// Functions
do --// Skybox
function Visuals:NewSky(Data)
local Name = Data.Name;
Skyboxes[Name] = {
SkyboxBk = Data.SkyboxBk;
SkyboxDn = Data.SkyboxDn;
SkyboxFt = Data.SkyboxFt;
SkyboxLf = Data.SkyboxLf;
SkyboxRt = Data.SkyboxRt;
SkyboxUp = Data.SkyboxUp;
MoonTextureId = Data.Moon or "rbxasset://sky/moon.jpg";
SunTextureId = Data.Sun or "rbxasset://sky/sun.jpg";
};
if Library.SkyDropdown then
Library.SkyDropdown.Max = Library.SkyDropdown.Max + 1
Library.SkyDropdown:AddOption(Name);
end;
end;
function Visuals:SwitchSkybox(Name)
local OldSky = Lighting:FindFirstChildOfClass("Sky");
if OldSky then OldSky:Destroy() end;
Visuals:NewSky({
Name = "Sunset",
SkyboxBk = "rbxassetid://600830446";
SkyboxDn = "rbxassetid://600831635";
SkyboxFt = "rbxassetid://600832720";
SkyboxLf = "rbxassetid://600886090";
SkyboxRt = "rbxassetid://600833862";
SkyboxUp = "rbxassetid://600835177";
});
Visuals:NewSky({
Name = "Arctic",
SkyboxBk = "http://www.roblox.com/asset/?id=225469390";
SkyboxDn = "http://www.roblox.com/asset/?id=225469395";
SkyboxFt = "http://www.roblox.com/asset/?id=225469403";
SkyboxLf = "http://www.roblox.com/asset/?id=225469450";
SkyboxRt = "http://www.roblox.com/asset/?id=225469471";
SkyboxUp = "http://www.roblox.com/asset/?id=225469481";
});
Visuals:NewSky({
Name = "Space";
SkyboxBk = "http://www.roblox.com/asset/?id=166509999";
SkyboxDn = "http://www.roblox.com/asset/?id=166510057";
SkyboxFt = "http://www.roblox.com/asset/?id=166510116";
SkyboxLf = "http://www.roblox.com/asset/?id=166510092";
SkyboxRt = "http://www.roblox.com/asset/?id=166510131";
SkyboxUp = "http://www.roblox.com/asset/?id=166510114";
});
Visuals:NewSky({
Name = "Roblox Default",
SkyboxBk = "rbxasset://textures/sky/sky512_bk.tex";
SkyboxDn = "rbxasset://textures/sky/sky512_dn.tex";
SkyboxFt = "rbxasset://textures/sky/sky512_ft.tex";
SkyboxLf = "rbxasset://textures/sky/sky512_lf.tex";
SkyboxRt = "rbxasset://textures/sky/sky512_rt.tex";
SkyboxUp = "rbxasset://textures/sky/sky512_up.tex";
});
Visuals:NewSky({
Name = "Red Night",
SkyboxBk = "http://www.roblox.com/Asset/?ID=401664839";
SkyboxDn = "http://www.roblox.com/Asset/?ID=401664862";
SkyboxFt = "http://www.roblox.com/Asset/?ID=401664960";
SkyboxLf = "http://www.roblox.com/Asset/?ID=401664881";
SkyboxRt = "http://www.roblox.com/Asset/?ID=401664901";
SkyboxUp = "http://www.roblox.com/Asset/?ID=401664936";
});
Visuals:NewSky({
Name = "Deep Space",
SkyboxBk = "http://www.roblox.com/asset/?id=149397692";
SkyboxDn = "http://www.roblox.com/asset/?id=149397686";
SkyboxFt = "http://www.roblox.com/asset/?id=149397697";
SkyboxLf = "http://www.roblox.com/asset/?id=149397684";
SkyboxRt = "http://www.roblox.com/asset/?id=149397688";
SkyboxUp = "http://www.roblox.com/asset/?id=149397702";
});
Visuals:NewSky({
Name = "Pink Skies",
SkyboxBk = "http://www.roblox.com/asset/?id=151165214";
SkyboxDn = "http://www.roblox.com/asset/?id=151165197";
SkyboxFt = "http://www.roblox.com/asset/?id=151165224";
SkyboxLf = "http://www.roblox.com/asset/?id=151165191";
SkyboxRt = "http://www.roblox.com/asset/?id=151165206";
SkyboxUp = "http://www.roblox.com/asset/?id=151165227";
});
Visuals:NewSky({
Name = "Purple Sunset",
SkyboxBk = "rbxassetid://264908339";
SkyboxDn = "rbxassetid://264907909";
SkyboxFt = "rbxassetid://264909420";
SkyboxLf = "rbxassetid://264909758";
SkyboxRt = "rbxassetid://264908886";
SkyboxUp = "rbxassetid://264907379";
});
Visuals:NewSky({
Name = "Blue Night",
SkyboxBk = "http://www.roblox.com/Asset/?ID=12064107";
SkyboxDn = "http://www.roblox.com/Asset/?ID=12064152";
SkyboxFt = "http://www.roblox.com/Asset/?ID=12064121";
SkyboxLf = "http://www.roblox.com/Asset/?ID=12063984";
SkyboxRt = "http://www.roblox.com/Asset/?ID=12064115";
SkyboxUp = "http://www.roblox.com/Asset/?ID=12064131";
});
Visuals:NewSky({
Name = "Blossom Daylight",
SkyboxBk = "http://www.roblox.com/asset/?id=271042516";
SkyboxDn = "http://www.roblox.com/asset/?id=271077243";
SkyboxFt = "http://www.roblox.com/asset/?id=271042556";
SkyboxLf = "http://www.roblox.com/asset/?id=271042310";
SkyboxRt = "http://www.roblox.com/asset/?id=271042467";
SkyboxUp = "http://www.roblox.com/asset/?id=271077958";
});
Visuals:NewSky({
Name = "Blue Nebula",
SkyboxBk = "http://www.roblox.com/asset?id=135207744";
SkyboxDn = "http://www.roblox.com/asset?id=135207662";
SkyboxFt = "http://www.roblox.com/asset?id=135207770";
SkyboxLf = "http://www.roblox.com/asset?id=135207615";
SkyboxRt = "http://www.roblox.com/asset?id=135207695";
SkyboxUp = "http://www.roblox.com/asset?id=135207794";
});
Visuals:NewSky({
Name = "Blue Planet",
SkyboxBk = "rbxassetid://218955819";
SkyboxDn = "rbxassetid://218953419";
SkyboxFt = "rbxassetid://218954524";
SkyboxLf = "rbxassetid://218958493";
SkyboxRt = "rbxassetid://218957134";
SkyboxUp = "rbxassetid://218950090";
});
Visuals:NewSky({
Name = "Deep Space",
SkyboxBk = "http://www.roblox.com/asset/?id=159248188";
SkyboxDn = "http://www.roblox.com/asset/?id=159248183";
SkyboxFt = "http://www.roblox.com/asset/?id=159248187";
SkyboxLf = "http://www.roblox.com/asset/?id=159248173";
SkyboxRt = "http://www.roblox.com/asset/?id=159248192";
SkyboxUp = "http://www.roblox.com/asset/?id=159248176";
});
end;
end;
WeaponInfo.FontFace = Library.SmallFont;
WeaponInfo.BackgroundTransparency = 1;
WeaponInfo.Text = "Weapon | [Ammo / Max Ammo] | Caliber";
WeaponInfo.TextSize = Library.SmallSize;
WeaponInfo.TextColor3 = Color3.fromRGB(255, 255, 255);
WeaponInfo.TextStrokeTransparency = 0;
Visuals.WeaponInfo = WeaponInfo;
end;
ScreenUI = Instance.new("ScreenGui");
ScreenUI.Parent = gethui();
ScreenUI.Name = "9391203j312i3kashd9q312093ajsdokake219183213h";
FOVCircle.Parent = ScreenUI
FOVCircle.BackgroundTransparency = 1
FOVCircle.ZIndex = 9999
FOVCircle.BackgroundColor3 = Color3.new(1,1,1)
FOVCircle.Size = UDim2.new(0, 500, 0, 500)
FOVCircle.Visible = false;
Corner.Parent = FOVCircle
Corner.CornerRadius = UDim.new(1,9999999)
Stroke.Parent = FOVCircle
Stroke.Color = Color3.new(1,1,1)
Stroke.Thickness = 3
FOVGradient.Parent = Stroke;
end;
Visuals.FOVGradient = FOVGradient;
Visuals.FOVCircle = FOVCircle;
end;
function Visuals:FloorVector(Vector)
if typeof(Vector) == "Vector2" then
return Vector2.new(math.floor(Vector.X),
math.floor(Vector.Y));
else
return Vector3.new(math.floor(Vector.X),
math.floor(Vector.Y), math.floor(Vector.Z));
end;
end;
task.spawn(function()
local SpeedTween = TweenInfo.new(2,
Enum.EasingStyle.Exponential, Enum.EasingDirection.Out, 0, false, 0);
task.wait(0.2);
local CreatedTween = TweenService:Create(Beam,
SpeedTween, {TextureSpeed = 2});
CreatedTween:Play();
end);
Delay(Library.Flags.LifeTime.Value, function()
local Tween = TweenService:Create(Beam,
TweenInfo.new(1), {
Width0 = 0,
Width1 = 0,
TextureSpeed = 0,
});
Tween:Play(); Tween.Completed:Wait();
Beam:Destroy();
StartPart:Destroy(); EndPart:Destroy();
end);
end;
end);
end;
function Visuals:UpdateLines()
for Idx, Data in ipairs(Visuals.Lines) do
if not Data.Line and not Data.IsBeingDestroyed then
local Line = Instance.new("Frame")
Line.BorderColor3 = Color3.fromRGB(0, 0, 0)
Line.BorderSizePixel = 1
Line.Visible = false
Line.BackgroundColor3 = Library.Flags.TracerColor.Color
Line.Parent = Visuals.ESPContainer
Data.Line = Line
end
if Data.Line then
local OriginPos, OriginIsOnScreen =
Camera:WorldToViewportPoint(Data.Origin)
local EndPos, EndIsOnScreen =
Camera:WorldToViewportPoint(Data.End)
local Transparency = 0
if Data.IsFading then
Transparency = math.min(1, (tick() - Data.FadeTick)
/ 1)
end
Data.Line.BackgroundTransparency = Transparency
--[[function Visuals:UpdateLines()
for Idx, Data in ipairs(Visuals.Lines) do
if not Data.Line and not Data.IsBeingDestroyed then
local Line = Instance.new("Frame")
Line.BorderColor3 = Color3.fromRGB(0, 0, 0)
Line.BorderSizePixel = 1
Line.Visible = false
Line.BackgroundColor3 = Library.Flags.TracerColor.Color
Line.Parent = Visuals.ESPContainer
Data.Line = Line
end
if Data.Line then
local OriginPos, OriginIsOnScreen =
Camera:WorldToViewportPoint(Data.Origin)
local EndPos, EndIsOnScreen =
Camera:WorldToViewportPoint(Data.End)
local Transparency = 0
if Data.IsFading then
Transparency = math.min(1, (tick() - Data.FadeTick)
/ 1)
end
Data.Line.BackgroundTransparency = Transparency
if EndIsOnScreen then
Data.To = Vector2.new(EndPos.X, EndPos.Y)
if OriginIsOnScreen then
Data.From = Vector2.new(OriginPos.X,
OriginPos.Y)
Data.Line.Visible = true
Visuals:RotateLine(Data.Line, 1, Data.From,
Data.To)
else
local RayHit, HitPos =
Workspace:FindPartOnRayWithIgnoreList(
Ray.new(Data.CurrentPos, (Data.End -
Data.CurrentPos).Unit * 1),
{Camera, Client.Character},
false,
true,
""
)
if HitPos then
local NewPos, NewOnScreen =
Camera:WorldToViewportPoint(HitPos)
if NewOnScreen then
Data.CurrentPos = HitPos
Data.From = Vector2.new(NewPos.X,
NewPos.Y)
Data.Line.Visible = true
Visuals:RotateLine(Data.Line, 1,
Data.From, Data.To)
end
else
Data.Line.Visible = false
end
end
else
Data.Line.Visible = false
end
end
function Visuals:NewHitmarker(Position)
Visuals.Hitmarkers[#Visuals.Hitmarkers+1] = {
Position = Position;
StartedAt = tick();
IsFading = false;
FadeTick = 0;
Hitmarker = Hitmarker;
};
end;
Visuals.HitDamages[#Visuals.HitDamages+1] = Data;
end;
function Visuals:UpdateDamage()
for Index, Data in next, Visuals.HitDamages do
if not Data.Label then
local Label = Instance.new("TextLabel",
Visuals.ESPContainer);
Label.BackgroundTransparency = 1;
Label.FontFace = Library.SmallFont
Label.TextStrokeTransparency = 0;
Label.TextColor3 = Library.Flags.DamageColor.Color;
Label.TextSize = Library.SmallSize;
Label.Text = tostring(math.floor(Data.Amount));
Data.Label = Label
end;
Label.Visible = IsOnScreen;
if Label.Visible then
if Data.IsFading then
local TimeDifference = tick() - Data.FadeTick;
Transparency = math.min(1, TimeDifference /
Library.Flags.FadeTime.Value);
end;
Label.TextTransparency = Transparency;
if Label.TextTransparency == 1 then
Label:Destroy();
Visuals.HitDamages[Index] = nil;
end;
end;
end;
end;
function Visuals:UpdateHitmarkers()
for Index, Data in pairs(Visuals.Hitmarkers) do
task.spawn(function()
if not Data.Hitmarker then
local Hitmarker = Instance.new("ImageLabel",
Visuals.ESPContainer);
Hitmarker.Image = "http://www.roblox.com/asset/?
id=13298929624";
Hitmarker.BackgroundTransparency = 1;
Hitmarker.Size = UDim2.new(0, 50, 0, 50);
Hitmarker.Visible = false;
Hitmarker.Rotation = 45;
Hitmarker.AnchorPoint = Vector2.new(0.5, 0.5);
Data.Hitmarker = Hitmarker
end;
local Hitmarker = Data.Hitmarker;
local Position, IsOnScreen =
Camera:WorldToViewportPoint(Data.Position);
Hitmarker.Visible = IsOnScreen;
local Transparency = 0;
if Data.IsFading then
local TimeDifference = tick() - Data.FadeTick;
Transparency = math.min(1, TimeDifference /
Library.Flags.FadeTime.Value);
end;
if Hitmarker.Visible then
Hitmarker.ImageTransparency = Transparency;
Hitmarker.Position = UDim2.new(0, Position.X, 0,
Position.Y);
Hitmarker.ImageColor3 =
Library.Flags.HitmarkerColor.Color;
end;
if Hitmarker.ImageTransparency == 1 then
Visuals.Hitmarkers[Index] = nil;
Hitmarker:Destroy();
end;
end);
end;
end;
function Visuals:Lerp(a, b, t)
if t < 0.5 then
return a + (b - a) * t
else
return b - (b - a) * (1 - t)
end
end;
function Visuals:Map(x, a, b, c, d)
return Visuals:Lerp(c, d, (x - a)/(b - a))
end;
Visuals.FOVGradient.Rotation = RotationAngle
if RainbowMode then
-- Calculate rainbow colors based on rotation angle
local rainbowColors = {}
local saturation = 0.5
local value = 0.9
for i = 0, 6 do
local hue = (t + i / 10) % 1 -- Adjusted the
division factor to avoid repetitions
table.insert(rainbowColors,
ColorSequenceKeypoint.new(i / 6, Color3.fromHSV(hue, saturation, value)))
end
Visuals.FOVGradient.Color =
ColorSequence.new(rainbowColors)
else
-- Normal lerping between color sets
local ColorSet1 =
Visuals.ColorSets[CurrentColorSetIndex]
local ColorSet2 =
Visuals.ColorSets[(CurrentColorSetIndex % #Visuals.ColorSets) + 1]
Visuals.FOVGradient.Color =
ColorSequence.new({Keypoint1, Keypoint2})
end
function ESPConstructor:NewListener(Arguments)
local Name = Arguments.Name;
local Parent = Arguments.Parent;
local CustomName = Arguments.CustomName;
local Flag = "ESP"..Arguments.Flag
local Color = Arguments.Flag.."Color";
Parent.ChildAdded:Connect(function(Object)
task.spawn(function()
task.wait(0.3);
if ((Object.Name == Name or Object.ClassName ==
Arguments.Type) or type(Name) == "table" and table.find(Name, Object.Name)) and
CustomChecks2(Object) then
CustomObjects[Object] = {
Flag = Flag;
Name = Name;
Parent = Parent;
Color = Color;
CustomName = CustomName;
GetPosition = Arguments.GetPosition;
Main = ESPConstructor:Text();
CustomChecks = Arguments.CustomChecks;
LastTick = tick();
LastTextUpdate = tick();
TextUpdate = Arguments.TextUpdate;
};
end;
end);
end);
Parent.ChildRemoved:Connect(function(Object)
if CustomObjects[Object] then
CustomObjects[Object].Main:Destroy();
CustomObjects[Object] = nil;
end;
end);
end;
function ESPConstructor:NewGrenade(Data)
local Constructor = {
TimeTick = tick();
Name = Data.Name;
TimeForExplosion = Data.TimeForExplosion;
IsImpact = Data.IsImpact;
Components = {
Frame = nil;
Image = nil;
Invert = nil;
Bar = nil;
Text = nil;
};
KillDistance = 0;
Model = Data.Model;
Root = Data.Root;
Class = "Grenade"
};
do --// Elements
local ItemHolder = Instance.new("Frame")
local ItemIcon = Instance.new("ImageLabel")
local ItemBar = Instance.new("Frame")
local Invert = Instance.new("Frame")
local Name = Instance.new("TextLabel")
Constructor.Components.Frame = ItemHolder;
Constructor.Components.Image = ItemIcon;
Constructor.Components.Bar = ItemBar;
Constructor.Components.Text = Name;
Constructor.Components.Invert = Invert;
do --// Properties
ItemHolder.Parent = Visuals.ESPContainer;
ItemHolder.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
ItemHolder.BackgroundTransparency = 1.000
ItemHolder.BorderColor3 = Color3.fromRGB(0, 0, 0)
ItemHolder.BorderSizePixel = 0
ItemHolder.Position = UDim2.new(0.204767719, 0,
0.189737469, 0)
ItemHolder.Size = UDim2.new(0, 36, 0, 36)
ItemHolder.Visible = false;
ItemIcon.Parent = ItemHolder
ItemIcon.AnchorPoint = Vector2.new(0.5, 0)
ItemIcon.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
ItemIcon.BackgroundTransparency = 1.000
ItemIcon.BorderColor3 = Color3.fromRGB(0, 0, 0)
ItemIcon.BorderSizePixel = 0
ItemIcon.Position = UDim2.new(0.5, 0, 0.319999993, 0)
ItemIcon.Size = UDim2.new(0, 36, 0, 36)
ItemIcon.Image = ESPIcons["Grenade"];
ItemBar.Parent = ItemIcon
ItemBar.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
ItemBar.BorderColor3 = Color3.fromRGB(0, 0, 0)
ItemBar.Position = UDim2.new(0.5, -1, 0.5, 17)
ItemBar.Size = UDim2.new(1, 30, 0, 1)
ItemBar.AnchorPoint = Vector2.new(0.5, 0);
Invert.Parent = ItemBar
Invert.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
Invert.BorderColor3 = Color3.fromRGB(0, 0, 0)
Invert.BorderSizePixel = 0
Invert.Size = UDim2.new(0, 0, 0, 1)
Invert.AnchorPoint = Vector2.new(1, 0);
Invert.Position = UDim2.new(1, 0, 0, 0);
Name.Parent = ItemIcon
Name.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Name.BackgroundTransparency = 1.000
Name.BorderColor3 = Color3.fromRGB(0, 0, 0)
Name.BorderSizePixel = 0
Name.Position = UDim2.new(0, 0, 0, -7)
Name.Size = UDim2.new(1, 0, 0, 12)
Name.FontFace = Library.SmallFont;
Name.TextSize = Library.SmallSize
Name.Text = Data.Name
Name.TextColor3 = Color3.fromRGB(255, 255, 255)
Name.TextStrokeTransparency = 0.000;
end;
end;
Visuals.Items[Constructor.Model] = Constructor;
return Constructor;
end;
function ESPConstructor:NewMine(Data)
local Constructor = {
Name = Data.Name;
Components = {
Frame = nil;
Image = nil;
Text = nil;
};
Model = Data.Model;
Root = Data.Root;
Class = "Mine"
};
do --// Elements
local ItemHolder = Instance.new("Frame")
local ItemIcon = Instance.new("ImageLabel")
local Name = Instance.new("TextLabel")
Constructor.Components.Frame = ItemHolder;
Constructor.Components.Image = ItemIcon;
Constructor.Components.Text = Name;
do --// Properties
ItemHolder.Parent = Visuals.ESPContainer;
ItemHolder.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
ItemHolder.BackgroundTransparency = 1.000
ItemHolder.BorderColor3 = Color3.fromRGB(0, 0, 0)
ItemHolder.BorderSizePixel = 0
ItemHolder.Position = UDim2.new(0.204767719, 0,
0.189737469, 0)
ItemHolder.Size = UDim2.new(0, 36, 0, 36)
ItemHolder.Visible = false;
ItemIcon.Parent = ItemHolder
ItemIcon.AnchorPoint = Vector2.new(0.5, 0)
ItemIcon.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
ItemIcon.BackgroundTransparency = 1.000
ItemIcon.BorderColor3 = Color3.fromRGB(0, 0, 0)
ItemIcon.BorderSizePixel = 0
ItemIcon.Position = UDim2.new(0.5, 0, 0.319999993, 0)
ItemIcon.Size = UDim2.new(0, 18, 0, 18)
ItemIcon.Image = ESPIcons["Mine"];
Name.Parent = ItemIcon
Name.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Name.BackgroundTransparency = 1.000
Name.BorderColor3 = Color3.fromRGB(0, 0, 0)
Name.BorderSizePixel = 0
Name.Position = UDim2.new(0, 0, 0, -10)
Name.Size = UDim2.new(1, 0, 0, 12)
Name.FontFace = Library.SmallFont;
Name.TextSize = Library.SmallSize
Name.Text = Data.Name
Name.TextColor3 = Color3.fromRGB(255, 255, 255)
Name.TextStrokeTransparency = 0.000;
end;
end;
Visuals.Items[Constructor.Model] = Constructor;
return Constructor;
end;
function ESPConstructor:NewClaymore(Data)
local Constructor = {
Name = Data.Name;
Components = {
Frame = nil;
Image = nil;
Text = nil;
};
Model = Data.Model;
Root = Data.Root;
Class = "Claymore"
};
do --// Elements
local ItemHolder = Instance.new("Frame")
local ItemIcon = Instance.new("ImageLabel")
local Name = Instance.new("TextLabel")
Constructor.Components.Frame = ItemHolder;
Constructor.Components.Image = ItemIcon;
Constructor.Components.Text = Name;
do --// Properties
ItemHolder.Parent = Visuals.ESPContainer;
ItemHolder.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
ItemHolder.BackgroundTransparency = 1.000
ItemHolder.BorderColor3 = Color3.fromRGB(0, 0, 0)
ItemHolder.BorderSizePixel = 0
ItemHolder.Position = UDim2.new(0.204767719, 0,
0.189737469, 0)
ItemHolder.Size = UDim2.new(0, 36, 0, 36)
ItemHolder.Visible = false;
ItemIcon.Parent = ItemHolder
ItemIcon.AnchorPoint = Vector2.new(0.5, 0)
ItemIcon.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
ItemIcon.BackgroundTransparency = 1.000
ItemIcon.BorderColor3 = Color3.fromRGB(0, 0, 0)
ItemIcon.BorderSizePixel = 0
ItemIcon.Position = UDim2.new(0.5, 0, 0.319999993, 0)
ItemIcon.Size = UDim2.new(0, 18, 0, 18)
ItemIcon.Image = ESPIcons["Claymore"];
Name.Parent = ItemIcon
Name.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Name.BackgroundTransparency = 1.000
Name.BorderColor3 = Color3.fromRGB(0, 0, 0)
Name.BorderSizePixel = 0
Name.Position = UDim2.new(0, 0, 0, -10)
Name.Size = UDim2.new(1, 0, 0, 12)
Name.FontFace = Library.SmallFont;
Name.TextSize = Library.SmallSize
Name.Text = Data.Name
Name.TextColor3 = Color3.fromRGB(255, 255, 255)
Name.TextStrokeTransparency = 0.000;
end;
end;
Visuals.Items[Constructor.Model] = Constructor;
return Constructor;
end;
function ESPConstructor:UpdateItems()
for Model, Constructor in next, Visuals.Items do
task.spawn(function()
local Components = Constructor.Components;
if Components.Frame.Visible then
local LerpedColor =
Library.Flags["GrenadeLower"].Color:lerp(Library.Flags["GrenadeHigher"].Color,
(Constructor.TimeForExplosion - (tick() - Constructor.TimeTick)) /
Constructor.TimeForExplosion);
if IsStudio then
Constructor.TimeForExplosion = 3;
if tick() - Constructor.TimeTick >= 3
then
Constructor.TimeTick = tick();
end;
end;
local SF = 1 / (Position.Z *
math.tan(math.rad(Camera.FieldOfView / 2)) * 2) * 1000;
local Width = 4 * SF;
local Height = 6 * SF;
Components.Bar.BackgroundColor3 =
LerpedColor;
Components.Frame.Size = UDim2.new(0,
Size.X, 0, Size.Y);
Components.Frame.Position = UDim2.new(0,
Pos.X, 0, Pos.Y);
Components.Invert.Size = UDim2.new(0,
(Components.Bar.AbsoluteSize.X * (1 - (Constructor.TimeForExplosion - (tick() -
Constructor.TimeTick)) / Constructor.TimeForExplosion)), 1, 0);
end;
else
Components.Frame.Visible = false;
end;
end;
if Components.Frame.Visible then
local SF = 1 / (Position.Z *
math.tan(math.rad(Camera.FieldOfView / 2)) * 2) * 1000;
local Width = 4 * SF;
local Height = 6 * SF;
if Components.Frame.Visible then
local SF = 1 / (Position.Z *
math.tan(math.rad(Camera.FieldOfView / 2)) * 2) * 1000;
local Width = 4 * SF;
local Height = 6 * SF;
Components.Frame.Size = UDim2.new(0,
Size.X, 0, Size.Y);
Components.Frame.Position = UDim2.new(0,
Pos.X, 0, Pos.Y);
end;
else
Components.Frame.Visible = false;
end;
end;
end);
end;
end;
end)();
end;
ESPConstructor.Flags[Data.Name] = Data;
end;
end;
return nil;
end;
function ESPConstructor:GetTeam()
if Beta:FindFirstChild(self.Object.Name) then
return Beta
end
if Omega:FindFirstChild(self.Object.Name) then
return Omega
end
if FFA:FindFirstChild(self.Object.Name) then
return FFA
end
if Infected:FindFirstChild(self.Object.Name) then
return Infected
end
if Survivors:FindFirstChild(self.Object.Name) then
return Survivors
end
end
end;
function ESPConstructor:GetRoot()
return
self.Info.Character:FindFirstChild("HumanoidRootPart");
end;
end;
return nil;
end;
function ESPConstructor:GetHealth()
if MaxHealth then
return Health.Value, MaxHealth.Value
end
end
if Humanoid then
if self.Info.Class == "Player" or self.Info.Class
== "AI" then
return Humanoid.Health, Humanoid.MaxHealth;
end;
end;
end;
function ESPConstructor:GetWeapon()
local Weapon, WeaponName = nil, "None";
if
self.Info.Character.Worldmodel:FindFirstChild("Blade") then
if
self.Info.Character.Worldmodel:FindFirstChild("Blade").ClassName == "MeshPart" then
if
self.Info.Character.Worldmodel:FindFirstChild("Blade").MeshId ==
"rbxassetid://14886017435" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Improvised Pickaxe"
end
if
self.Info.Character.Worldmodel:FindFirstChild("Blade").MeshId ==
"rbxassetid://14775909545" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Improvised Pickaxe"
end
end
end;
if
self.Info.Character.Worldmodel:FindFirstChild("BackSight") then
Weapon = self.Info.Character.Worldmodel
WeaponName = "SHAK-12"
end;
if
self.Info.Character.Worldmodel:FindFirstChild("BowBase") then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Wooden Bow"
end;
if
self.Info.Character.Worldmodel:FindFirstChild("handle") and
self.Info.Character.Worldmodel:FindFirstChild("test.006") then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Stone Spear"
end;
if
self.Info.Character.Worldmodel:FindFirstChild("Body") and
self.Info.Character.Worldmodel:FindFirstChild("Body").ClassName == "MeshPart" then
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13813662516" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Thumper"
end
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13319461745" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Double Barrel Shotgun"
end
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13318509813" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "MP5"
end;
end;
if
self.Info.Character.Worldmodel:FindFirstChild("Base") and
self.Info.Character.Worldmodel:FindFirstChild("Base").ClassName == "MeshPart" then
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13744914668" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Stone Hatchet"
end;
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13745133273" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Iron Hatchet"
end;
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13745011274" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Iron Pickaxe"
end;
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13744395964" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "Stone Pickaxe"
end;
end;
if
self.Info.Character.Worldmodel:FindFirstChild("Hammer") and
self.Info.Character.Worldmodel:FindFirstChild("Hammer").ClassName == "MeshPart"
then
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://13674795820" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "USP"
end
if
self.Info.Character.Worldmodel:FindFirstChild("Body").MeshId ==
"rbxassetid://15249045222" then
Weapon = self.Info.Character.Worldmodel
WeaponName = "M9A4"
end;
end;
if
self.Info.Character.Worldmodel:FindFirstChild("Scope") then
Weapon = self.Info.Character.Worldmodel
WeaponName = "M700"
end;
break
end
end
end;
end;
end;
local ModelData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if not ModelData then return nil, "None" end;
local Status = ModelData.Status
if not Status then return nil, "None" end;
local GameplayVars = Status.GameplayVariables
if GameplayVars and GameplayVars.EquippedTool
then
Weapon =
GameplayVars:FindFirstChild("EquippedTool").Value;
if Weapon then
WeaponName = tostring(Weapon);
end;
end
return Weapon, WeaponName;
else
local Inventory =
self.Object:FindFirstChild("Inventory");
if Inventory then
local FoundTool =
Inventory:FindFirstChildOfClass("StringValue");
if FoundTool then
Weapon, WeaponName = FoundTool,
FoundTool.Name;
end;
end
end;
end;
end;
end;
end;
end;
end;
end;
Weapon = Slotdata
WeaponName = Slotdata.Value and
tostring(Slotdata.Value) or "None"
end;
end;
function ESPConstructor:GetDistance()
if GameName == "Project Delta" then
if self.Info.Character and self:GetRoot() then
local Distance = (Camera.CFrame.p -
self:GetRoot().CFrame.p).Magnitude;
return math.floor(Distance);
end;
end;
return 0;
end;
function ESPConstructor:GetBoxSize()
if Library.Flags.BoxSize.Value == "Static" then
if not self.Info.Character then
return nil
end
local BoxData = {}
local Root = self:GetRoot()
BoxData.Height = Height
BoxData.Width = Width
BoxData.Size = Size
BoxData.Position = Position
BoxData.Center2D = Center
BoxData.OnScreen = RootOnScreen
return BoxData
elseif Library.Flags.BoxSize.Value == "SizeDynamic" then
if not self.Info.Character then
return nil
end
local BoxData = {}
local Root = self:GetRoot()
local MaxBoxWidth = 10
local MaxBoxHeight = 20
local MaxBoxDepth = 10
local ClampedBoundingBoxSize =
Vector3.new(ClampedHalfSizeX * 2, ClampedHalfSizeY * 2, ClampedHalfSizeZ * 2)
local ClampedBoundingBoxPosition = BoundingBoxPosition
local Corners = {
ClampedBoundingBoxPosition *
CFrame.new(ClampedHalfSizeX, ClampedHalfSizeY, ClampedHalfSizeZ),
ClampedBoundingBoxPosition *
CFrame.new(ClampedHalfSizeX, ClampedHalfSizeY, -ClampedHalfSizeZ),
ClampedBoundingBoxPosition *
CFrame.new(ClampedHalfSizeX, -ClampedHalfSizeY, ClampedHalfSizeZ),
ClampedBoundingBoxPosition *
CFrame.new(ClampedHalfSizeX, -ClampedHalfSizeY, -ClampedHalfSizeZ),
ClampedBoundingBoxPosition * CFrame.new(-
ClampedHalfSizeX, ClampedHalfSizeY, ClampedHalfSizeZ),
ClampedBoundingBoxPosition * CFrame.new(-
ClampedHalfSizeX, ClampedHalfSizeY, -ClampedHalfSizeZ),
ClampedBoundingBoxPosition * CFrame.new(-
ClampedHalfSizeX, -ClampedHalfSizeY, ClampedHalfSizeZ),
ClampedBoundingBoxPosition * CFrame.new(-
ClampedHalfSizeX, -ClampedHalfSizeY, -ClampedHalfSizeZ)
}
if OnScreenCount == 0 then
return {
Height = 0,
Width= 0,
Size = 0,
Position = Vector2.new(0, 0),
OnScreen = false,
Center2D = Vector2.new(),
}
end
local MinWidth = 0
local Size =
Visuals:FloorVector(Vector2.new(math.max(Width, MinWidth), Height))
local Position = Visuals:FloorVector(Vector2.new(MinX,
MinY))
local Center = Vector2.new(Position.X + Size.X / 2,
Position.Y + Size.Y / 2)
BoxData.Height = Height
BoxData.Width = Width
BoxData.Size = Size
BoxData.Position = Position
BoxData.Center2D = Center
BoxData.OnScreen = OnScreenCount > 3
return BoxData
local BoxData = {}
local Root = self:GetRoot()
for _, Part in
ipairs(self.Info.Character:GetChildren()) do
if Part:IsA("BasePart") or Part:IsA("MeshPart")
then
if Part.Transparency < 1 then
TotalSize = TotalSize + (Part.Size / 2)
PartCount = PartCount + 1
end
end
end
local Corners = {
RootPosition3D * CFrame.new(HalfSize.X, HalfSize.Y,
HalfSize.Z),
RootPosition3D * CFrame.new(HalfSize.X, HalfSize.Y,
-HalfSize.Z),
RootPosition3D * CFrame.new(HalfSize.X, -
HalfSize.Y, HalfSize.Z),
RootPosition3D * CFrame.new(HalfSize.X, -
HalfSize.Y, -HalfSize.Z),
RootPosition3D * CFrame.new(-HalfSize.X,
HalfSize.Y, HalfSize.Z),
RootPosition3D * CFrame.new(-HalfSize.X,
HalfSize.Y, -HalfSize.Z),
RootPosition3D * CFrame.new(-HalfSize.X, -
HalfSize.Y, HalfSize.Z),
RootPosition3D * CFrame.new(-HalfSize.X, -
HalfSize.Y, -HalfSize.Z)
}
if OnScreenCount == 0 then
return {
Height = 0,
Width= 0,
Size = 0,
Position = Vector2.new(0, 0),
OnScreen = false,
Center2D = Vector2.new(),
}
end
local Size =
Visuals:FloorVector(Vector2.new(math.max(Width, MinWidth), math.max(Height,
MaxHeight)))
local Position = Visuals:FloorVector(Vector2.new(MinX,
MinY))
local Center = Vector2.new(Position.X + Size.X / 2,
Position.Y + Size.Y / 2)
BoxData.Height = Height
BoxData.Width = Width
BoxData.Size = Size
BoxData.Position = Position
BoxData.Center2D = Center
BoxData.OnScreen = RootOnScreen
return BoxData
end
end;
function ESPConstructor:GetMoney()
local Money = 0;
if GameName == "Project Delta" then
if self.Object then
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
for Index, Value in next,
PlayerData:GetDescendants() do
if not Value:FindFirstAncestor("Vault")
then
local ItemPrice =
Value:GetAttribute("Price")
local Amount =
Value:GetAttribute("Amount")
end;
return Money;
end;
function ESPConstructor:GetInventory()
local Text = nil
return Text
end;
if MaxAmmo == 0 then
MaxAmmo = 1
end;
Passed = true
end
elseif GameName == "The Streets" and Weapon and
Weapon:FindFirstChild("Ammo") then
Ammo = Weapon.Ammo.Value;
MaxAmmo = Weapon:FindFirstChild("MaxAmmo") and
Weapon.MaxAmmo.Value or 15
Passed = true
end;
Passed = true
end
function ESPConstructor:IsDead()
local IsDead = false
return IsDead
end;
function ESPConstructor:UpdateTeam()
self.Info.Team =
GameFramework.EntityData[self.Info.Character.Name].replicated_data.team;
end;
end;
local BottomBounds = 0;
local TopBounds = 0;
local LeftBounds = 0;
local RightBounds = 0;
do --// Main
if Root then --// If Root (can add
additional checks here);
local BoxData = self:GetBoxSize();
if BoxData then
local Transparency = 0;
local Height = BoxData.Height;
local Width = BoxData.Width;
local Size = BoxData.Size;
local Position = BoxData.Position;
local Center = UDim2.new(0,
BoxData.Center2D.X, 0, BoxData.Center2D.Y);
local OnScreen = BoxData.OnScreen;
local Distance =
self:GetDistance();
local OverrideColor = nil;
local TransitionColor = nil;
if Library.Flags.HighlightVisible
and Library.Flags.HighlightVisible.Value and self.Info.IsVisible then
TransitionColor =
Library.Flags.HighlightVisibleColor.Color
end;
if Library.Flags.UseRelationColors
and Library.Flags.UseRelationColors.Value then
if self.Info.IsFriendly then
TransitionColor =
Library.Flags.FriendlyColor.Color;
self.Info.LastTransitionColor = TransitionColor;
elseif Combat.Target ==
self.Object then
TransitionColor =
Library.Flags.TargetColor.Color;
self.Info.LastTransitionColor = TransitionColor;
elseif Combat.Target ~=
self.Object and not table.find(Combat.Friendlies, self.Object) and not
TransitionColor then
TransitionColor = nil;
end;
end;
self.Info.CurrentAmmo = Ammo;
self.Info.CurrentHealth =
ActualHealth;
do --// Animations
--// Death/Respawn Animations
if
Library.Flags.Animations.Value and
table.find(Library.Flags.SelectedAnimations.Value, "Death/Respawn Fade") then
if self:IsDead() then
if not
self.Info.IsDying then
self.Info.DeathStartTick = tick()
end
self.Info.IsDying =
true
local TimeDifference =
tick() - self.Info.DeathStartTick
Transparency =
math.min(1, TimeDifference / Library.Flags.FadeTime.Value)
elseif
self.Info.CurrentHealth >= 0 then
if self.Info.IsDying
then
self.Info.RespawnStartTick = tick()
end
local TimeDifference =
tick() - self.Info.RespawnStartTick
Transparency = 1 -
math.min(1, TimeDifference / Library.Flags.FadeTime.Value)
self.Info.IsDying =
false
end
if not self.Info.IsDying
then
self.Info.Tick = tick()
end
end
self.Info.TransitionStart = tick()
self.Info.TransitionNewHealth = self.Info.CurrentHealth
self.Info.TransitionOldHealth = self.Info.CurrentOldHealth
elseif
self.Info.TransitionOldHealth ~= self.Info.CurrentOldHealth then
local CurrentTime =
tick() - self.Info.TransitionStart
local
TransitionProgress = math.min(1, CurrentTime / Library.Flags.AnimChangeTime.Value)
self.Info.TransitionOldHealth = self.Info.TransitionOldHealth * (1 -
TransitionProgress) + self.Info.TransitionNewHealth * TransitionProgress
self.Info.TransitionNewHealth = self.Info.CurrentHealth
self.Info.TransitionStart = tick()
end
local CurrentTime =
tick() - self.Info.TransitionStart
local
TransitionProgress = math.min(1, CurrentTime / Library.Flags.AnimChangeTime.Value)
self.Info.ActualHealth
= self.Info.TransitionOldHealth * (1 - TransitionProgress) +
self.Info.TransitionNewHealth * TransitionProgress
if TransitionProgress
>= 1 then
self.Info.TransitionStart = 0
self.Info.TransitionNewHealth = 0
self.Info.TransitionOldHealth = self.Info.CurrentHealth
self.Info.CurrentOldHealth = self.Info.CurrentHealth
end
else
self.Info.ActualHealth
= self.Info.CurrentHealth
end
else
self.Info.ActualHealth =
ActualHealth
end
self.Info.TransitionStartAmmo = tick()
self.Info.TransitionNewAmmo = self.Info.CurrentAmmo
self.Info.TransitionOldAmmo = self.Info.CurrentOldAmmo
elseif
self.Info.TransitionOldAmmo ~= self.Info.CurrentOldAmmo then
local CurrentTime =
tick() - self.Info.TransitionStartAmmo
local
TransitionProgress = math.min(1, CurrentTime / Library.Flags.AnimChangeTime.Value)
self.Info.TransitionOldAmmo = self.Info.TransitionOldAmmo * (1 -
TransitionProgress) + self.Info.TransitionNewAmmo * TransitionProgress
self.Info.TransitionNewAmmo = self.Info.CurrentAmmo
self.Info.TransitionStartAmmo = tick()
end
local CurrentTime =
tick() - self.Info.TransitionStartAmmo
local
TransitionProgress = math.min(1, CurrentTime / Library.Flags.AnimChangeTime.Value)
self.Info.ActualAmmo =
self.Info.TransitionOldAmmo * (1 - TransitionProgress) +
self.Info.TransitionNewAmmo * TransitionProgress
if TransitionProgress
>= 1 then
self.Info.TransitionStartAmmo = 0
self.Info.TransitionNewAmmo = 0
self.Info.TransitionOldAmmo = self.Info.CurrentAmmo
self.Info.CurrentOldAmmo = self.Info.CurrentAmmo
end
else
self.Info.ActualAmmo =
self.Info.CurrentAmmo
end
else
self.Info.ActualAmmo = Ammo
end
end;
if OnScreen and
((Library.Flags.LimitDistance.Value and Distance <=
Library.Flags.RenderDistance.Value) or not Library.Flags.LimitDistance.Value) then
--// OnScreen check
Components.Arrow.Visible =
false;
do --// Highlights
if Library.Flags.Highlights
and Library.Flags.Highlights.Value and (self.Info.Class == "Player" or IsStudio)
and GameName ~= "Fallen" and Components.Highlight then
Components.Highlight.Enabled = true;
if TransitionColor ~=
nil then
Components.Highlight.FillColor =
Library.Flags.FillColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick) / 0.2));
Components.Highlight.OutlineColor =
Library.Flags.OutlineColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick)/ 0.2));
else
Components.Highlight.FillColor =
self.Info.LastTransitionColor:Lerp(Library.Flags.FillColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
Components.Highlight.OutlineColor =
self.Info.LastTransitionColor:Lerp(Library.Flags.OutlineColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
end
if not
self.Info.IsDying then
Components.Highlight.FillTransparency = Library.Flags.FillColor.Transparency;
Components.Highlight.OutlineTransparency = Library.Flags.OutlineColor.Transparency;
else
Components.Highlight.FillTransparency = Transparency
Components.Highlight.OutlineTransparency = Transparency
end;
Components.Highlight.DepthMode = "AlwaysOnTop";
Components.Highlight.Adornee = self.Info.Character;
else
if Components.Highlight
then
Components.Highlight.Enabled = false;
end;
end;
end;
do --// Adornments
if tick() -
self.Info.AdornmentTick > 10 then
if
Library.Flags.Adornments and Library.Flags.Adornments.Value then
for Index, Value in
next, self.Info.Character:GetChildren() do
if
Value:IsA("BasePart") and not self.Components.Adornments[Value] and not
table.find({"PlayerCollision", "Hitbox","Particle Area", "Gun", "FakeHead",
"HeadHB", "FaceHitBox", "humanoid_root_part", "hitbox", "HeadTopHitBox",
"LeftHand", "RightHand"}, Value.Name) then
local
AdornmentsTable = {}
for Vis =
1, 2 do
if
Value.Name == "Head" then
Adornment.Parent = Value;
Adornment.Height = 1.02;
Adornment.Radius = 0.65;
Adornment.Adornee = Value;
end;
if
Vis == 1 then
end;
Adornment.AlwaysOnTop = Vis == 1;
AdornmentsTable[Vis] = Adornment;
self.Components.Adornments[Value] = AdornmentsTable;
else
Adornment.Adornee = Value;
end;
if
Vis == 1 then
end;
Adornment.AlwaysOnTop = Vis == 1;
AdornmentsTable[Vis] = Adornment;
self.Components.Adornments[Value] = AdornmentsTable;
end;
end;
end;
if
self.Components.Adornments[Value] then
--//
Occluded
self.Components.Adornments[Value][1].Visible = Library.Flags.Adornments.Value;
self.Components.Adornments[Value][1].Color3 = Library.Flags.OccludedColor.Color;
self.Components.Adornments[Value][1].Transparency =
Library.Flags.OccludedColor.Transparency;
--/ Visible
self.Components.Adornments[Value][2].Visible = Library.Flags.Adornments.Value;
self.Components.Adornments[Value][2].AlwaysOnTop = Library.Flags.GlowChams.Value
and true or false
self.Components.Adornments[Value][2].Color3 = Library.Flags.VisibleColor.Color;
self.Components.Adornments[Value][2].Transparency =
Library.Flags.VisibleColor.Transparency;
end;
end;
end;
self.Info.AdornmentTick
= tick();
end;
end;
do --// Boxes
local Corners =
Components.Corner;
if Library.Flags.ESPBox and
Library.Flags.ESPBox.Value then
Components.RegularStroke.Color = Library.Flags.BoxColor.Color;
if TransitionColor ~=
nil then
Components.RegularStroke.Color = Library.Flags.BoxColor.Color:Lerp(TransitionColor,
math.min(1, (tick() - self.Info.ColorTick)/ 0.2));
else
Components.RegularStroke.Color =
self.Info.LastTransitionColor:Lerp(Library.Flags.BoxColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
end;
do --// Corners
if
Library.Flags.BoxStyle and Library.Flags.BoxStyle.Value == "Corner" then
--// Inline
do
Corners[1].Visible = true;
Corners[1].ZIndex = 3;
Corners[1].BackgroundTransparency = Transparency;
Corners[1].BackgroundColor3 = Components.RegularStroke.Color;
Corners[2].Visible = true;
Corners[2].ZIndex = 3;
Corners[2].BackgroundTransparency = Transparency;
Corners[2].BackgroundColor3 = Components.RegularStroke.Color;
Corners[3].Visible = true;
Corners[3].BackgroundColor3 = Components.RegularStroke.Color;
Corners[3].BackgroundTransparency = Transparency;
Corners[3].ZIndex = 3;
Corners[4].Visible = true;
Corners[4].BackgroundColor3 = Components.RegularStroke.Color;
Corners[4].ZIndex = 3;
Corners[4].BackgroundTransparency = Transparency;
Corners[5].Visible = true;
Corners[5].ZIndex = 3;
Corners[5].BackgroundColor3 = Components.RegularStroke.Color;
Corners[5].BackgroundTransparency = Transparency;
Corners[6].Visible = true;
Corners[6].BackgroundColor3 = Components.RegularStroke.Color;
Corners[6].ZIndex = 3;
Corners[6].BackgroundTransparency = Transparency;
Corners[7].Visible = true;
Corners[7].ZIndex = 3;
Corners[7].BackgroundColor3 = Components.RegularStroke.Color;
Corners[7].BackgroundTransparency = Transparency;
Corners[8].Visible = true;
Corners[8].BackgroundColor3 = Components.RegularStroke.Color;
Corners[8].BackgroundTransparency = Transparency;
Corners[8].ZIndex = 3;
end;
--// Outline
do
Corners[9].Visible = true;
Corners[9].ZIndex = 2;
Corners[9].BackgroundTransparency = Transparency;
Corners[9].BorderSizePixel = 1;
Corners[9].BackgroundColor3 = Components.RegularStroke.Color;
Corners[10].Visible = true;
Corners[10].ZIndex = 2;
Corners[10].BorderSizePixel = 1;
Corners[10].BackgroundTransparency = Transparency;
Corners[10].BackgroundColor3 = Components.RegularStroke.Color;
Corners[11].BorderSizePixel = 1;
Corners[11].Visible = true;
Corners[11].BackgroundColor3 = Components.RegularStroke.Color;
Corners[11].BackgroundTransparency = Transparency;
Corners[11].ZIndex = 2;
Corners[12].BorderSizePixel = 1;
Corners[12].Visible = true;
Corners[12].BackgroundColor3 = Components.RegularStroke.Color;
Corners[12].ZIndex = 2;
Corners[12].BackgroundTransparency = Transparency;
Corners[13].BorderSizePixel = 1;
Corners[13].Visible = true;
Corners[13].ZIndex = 2;
Corners[13].BackgroundColor3 = Components.RegularStroke.Color;
Corners[13].BackgroundTransparency = Transparency;
Corners[14].BorderSizePixel = 1;
Corners[14].Visible = true;
Corners[14].BackgroundColor3 = Components.RegularStroke.Color;
Corners[14].ZIndex = 2;
Corners[14].BackgroundTransparency = Transparency;
Corners[15].BorderSizePixel = 1;
Corners[15].Visible = true;
Corners[15].ZIndex = 2;
Corners[15].BackgroundColor3 = Components.RegularStroke.Color;
Corners[15].BackgroundTransparency = Transparency;
Corners[16].BorderSizePixel = 1;
Corners[16].Visible = true;
Corners[16].BackgroundColor3 = Color3.fromRGB();
Corners[16].BackgroundTransparency = Transparency;
Corners[16].ZIndex = 2;
end;
else
if
Corners[1].Visible then
for Index =
1, 16 do
Corners[Index].Visible = false;
end;
end;
end;
end;
if
Library.Flags.BoxStyle and Library.Flags.BoxStyle.Value == "Corner" then
Components.RegularStroke.Transparency = 1;
Components.OutlineStroke.Transparency = 1;
else
Components.RegularStroke.Transparency = Transparency;
Components.OutlineStroke.Transparency = Transparency;
end;
else
if Corners[1].Visible
then
for Index = 1, 16
do
Corners[Index].Visible = false;
end;
end;
Components.RegularStroke.Transparency = 1;
Components.OutlineStroke.Transparency = 1;
end;
end;
do --// Healthbar
if self.Info.ActualHealth <
0 then
self.Info.ActualHealth
= 0;
end;
if
Library.Flags.ESPHealthBar and Library.Flags.ESPHealthBar.Value then
local LerpedColor =
Library.Flags["HealthBarColorLower"].Color:lerp(Library.Flags["HealthBarColorHigher
"].Color, self.Info.ActualHealth / MaxHealth);
if
(self.Info.ActualHealth < MaxHealth and Library.Flags.HealthWhenDamaged.Value or
not Library.Flags.HealthWhenDamaged.Value) and Library.Flags.ESPHealth and
Library.Flags.ESPHealth.Value and Library.Flags.HealthbarPosition and
Library.Flags.HealthbarPosition.Value == "Left" and (Library.Flags.ESPAmmoBar and
(((Library.Flags.ESPAmmoBar.Value == false and Library.Flags.AmmobarPosition.Value
~= "Left") or Library.Flags.ESPAmmoBar.Value == false) or
Library.Flags.AmmobarPosition.Value ~= "Left") or not Library.Flags.ESPAmmoBar)
then
Components.HealthValue.Visible = true;
Components.HealthValue.Text = tostring(math.floor(self.Info.ActualHealth));
Components.HealthValue.TextColor3 = Library.Flags.HealthColor.Color;
Components.HealthValue.TextTransparency = Transparency;
Components.HealthValue.TextSize = Library.SmallSize;
Components.HealthValue.FontFace = Library.SmallFont;
else
Components.HealthValue.Visible = false;
end;
Components.Healthbar.Size = UDim2.new(0, 1, 1, 4)
Components.HealthbarInvert.Size = UDim2.new(1, 0, 0,
(Components.Healthbar.AbsoluteSize.Y* (1 - self.Info.ActualHealth / MaxHealth)));
end;
end;
Components.Healthbar.BackgroundColor3 = LerpedColor;
Components.Healthbar.Visible = true;
Components.Healthbar.BackgroundTransparency = Transparency;
Components.HealthbarInvert.BackgroundTransparency = Transparency;
else
Components.Healthbar.Visible = false;
end;
end;
do --// Ammobar
if Library.Flags.ESPAmmoBar
and Library.Flags.ESPAmmoBar.Value and WeaponName ~= "None" and AmmoPassed then
local LerpedColor =
Library.Flags["AmmobarColorLower"].Color:lerp(Library.Flags["AmmobarColorHigher"].C
olor, self.Info.ActualAmmo / MaxAmmo);
do --// Sizing for
custom positions
if
Library.Flags.AmmobarPosition and (Library.Flags.AmmobarPosition.Value == "Bottom"
or Library.Flags.AmmobarPosition.Value == "Top") then
if
Library.Flags.BoxStyle and Library.Flags.BoxStyle.Value ~= "Corner" then
Components.Ammobar.Size = UDim2.new(0, 1, 1, 4)
Components.AmmobarInvert.Size = UDim2.new(1, 0, 0,
(Components.Ammobar.AbsoluteSize.Y* (1 - self.Info.ActualAmmo / MaxAmmo)));
end;
end;
if
Library.Flags.BoxStyle and Library.Flags.BoxStyle.Value ~= "Corner" then
Components.Ammobar.BackgroundColor3 = LerpedColor;
Components.Ammobar.Visible = true;
Components.Ammobar.BackgroundTransparency = Transparency;
Components.AmmobarInvert.BackgroundTransparency = Transparency;
else
Components.Ammobar.Visible = false;
end;
end;
do --// Flags
local TotalFlags = 0;
if Library.Flags.ESPFlags
and Library.Flags.ESPFlags.Value then
Components.Flags.Visible = true
Components.Flags.FontFace = Library.SmallFont
Components.Flags.TextSize = Library.SmallSize
Components.Flags.TextTransparency = Transparency
Components.Flags.RichText = true
Components.Flags.TextYAlignment = Enum.TextYAlignment.Top
Components.Flags.Text =
FlagsText
RightBounds =
RightBounds + 10
else
Components.Flags.Visible = false
end
end;
do --// Username
if Library.Flags.ESPName
and Library.Flags.ESPName.Value then
Components.Username.Visible = true;
Components.Username.Text = self.Info.Username;
if TransitionColor ~=
nil then
Components.Username.TextColor3 =
Library.Flags.NameColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick)/ 0.2));
else
Components.Username.TextColor3 =
self.Info.LastTransitionColor:Lerp(Library.Flags.NameColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
end;
Components.Username.TextTransparency = Transparency;
if
Library.Flags.UsernamePosition and Library.Flags.UsernamePosition.Value == "Bottom"
then
Components.Username.TextYAlignment = Enum.TextYAlignment.Top;
Components.Username.TextYAlignment = Enum.TextYAlignment.Center;
end;
else
Components.Username.Visible = false;
end;
end;
Components.Inventory.Visible = true;
if TransitionColor
~= nil then
Components.Inventory.TextColor3 =
Library.Flags.InventoryColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick)/ 0.2));
else
Components.Inventory.TextColor3 =
self.Info.LastTransitionColor:Lerp(Library.Flags.InventoryColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
end;
local ReturnedText
= Inventory;
Components.Inventory.Text = ReturnedText;
Components.Inventory.TextTransparency = Transparency;
if
Library.Flags.InventoryPosition and Library.Flags.InventoryPosition.Value == "Top"
then
Components.Inventory.TextYAlignment = Enum.TextYAlignment.Center;
Components.Inventory.TextYAlignment = Enum.TextYAlignment.Top;
Components.Inventory.Visible = false;
end;
else
Components.Inventory.Visible = false;
end;
end;
do --// Weapon
if Library.Flags.ESPWeapon
and Library.Flags.ESPWeapon.Value and WeaponName ~= "None" then
Components.Weapon.Visible = true;
Components.Weapon.Text
= WeaponName;
if AmmoPassed then
Components.Weapon.Text = Components.Weapon.Text .. "
["..tostring(Ammo).."/"..tostring(MaxAmmo).."]";
end;
if TransitionColor ~=
nil then
Components.Weapon.TextColor3 =
Library.Flags.WeaponColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick)/ 0.2));
else
Components.Weapon.TextColor3 =
self.Info.LastTransitionColor:Lerp(Library.Flags.WeaponColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
end;
Components.Weapon.TextTransparency = Transparency;
if
Library.Flags.WeaponPosition and Library.Flags.WeaponPosition.Value == "Top" then
Components.Weapon.TextYAlignment = Enum.TextYAlignment.Center;
Components.Weapon.TextYAlignment = Enum.TextYAlignment.Top;
Components.Weapon.Visible = false;
end;
end;
Components.WeaponImage.Image = WeaponIcons[WeaponName:upper()];
Components.WeaponImage.Visible = true;
Components.WeaponImage.ImageTransparency = Transparency;
do --// Distance
if
Library.Flags.ESPDistance and Library.Flags.ESPDistance.Value then
Components.Distance.Visible = true;
if TransitionColor ~=
nil then
Components.Distance.TextColor3 =
Library.Flags.DistanceColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick)/ 0.2));
else
Components.Distance.TextColor3 =
self.Info.LastTransitionColor:Lerp(Library.Flags.DistanceColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
end;
Components.Distance.TextTransparency = Transparency;
if
Library.Flags.DistancePosition and Library.Flags.DistancePosition.Value == "Top"
then
Components.Distance.TextYAlignment = Enum.TextYAlignment.Center;
Components.Distance.TextYAlignment = Enum.TextYAlignment.Top;
Components.Distance.Visible = false;
end;
end;
do --// Tracers
if Library.Flags.ESPTracers
and Library.Flags.ESPTracers.Value then
Components.Tracer.Visible = true
Components.Tracer.BackgroundTransparency = Transparency
if TransitionColor ~=
nil then
Components.Tracer.BackgroundColor3 =
Library.Flags.NameColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick)/ 0.2));
else
Components.Tracer.BackgroundColor3 =
self.Info.LastTransitionColor:Lerp(Library.Flags.TracerColor.Color, math.min(1,
(tick() - self.Info.NeutralTick)/ 0.2));
end;
local To = Center +
BottomOffset
local ScreenSize =
Visuals.ESPContainer.AbsoluteSize
local From =
Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y)
To =
Vector2.new(To.X.Offset, To.Y.Offset)
Components.Tracer.Visible = false
end
end
else
--// Offscreen
self:Invisible();
do --// Arrows
if not OnScreen and ((not
Library.Flags.LimitDistance.Value) or (Library.Flags.LimitDistance.Value and
Distance <= Library.Flags.RenderDistance.Value)) and Library.Flags.ESPOffscreen and
Library.Flags.ESPOffscreen.Value then
Arrow.Visible = true
if TransitionColor then
Arrow.ImageColor3 =
Library.Flags.OffscreenColor.Color:Lerp(TransitionColor, math.min(1, (tick() -
self.Info.ColorTick) / 0.2))
else
Arrow.ImageColor3 =
self.Info.LastTransitionColor:Lerp(Library.Flags.OffscreenColor.Color, math.min(1,
(tick() - self.Info.NeutralTick) / 0.2))
end
if Transparency ~= 0
then
Arrow.ImageTransparency = Transparency
else
Arrow.ImageTransparency = Library.Flags.OffscreenColor.Transparency;
end;
local RootPosition =
Root.CFrame.p
local CameraPosition =
Camera.CFrame.p
local ViewAngle =
Camera.CFrame.LookVector
local Projection =
(RootPosition - ViewAngle)
local Dot =
ViewAngle:Dot(Projection)
local ScreenPos, _ =
Camera:WorldToScreenPoint(RootPosition)
local Center =
Camera.ViewportSize / 2
local Direction =
(Vector2.new(ScreenPos.X, ScreenPos.Y) - Vector2.new(Center.X, Center.Y)).Unit
local Radian =
math.atan2(Direction.X, Direction.Y)
local Angle =
(((math.pi * 2) / Library.Flags.OOVFOV.Value) * Radian)
local ClampedPosition =
(Vector2.new(Center.X, Center.Y) + (Direction * math.min(math.abs(((Center.Y -
Library.Flags.OOVFOV.Value) / math.sin(Angle)) * Library.Flags.OOVFOV.Value),
math.abs((Center.X - Library.Flags.OOVFOV.Value) / (math.cos(Angle)) / 2))))
Arrow.Position =
UDim2.new(0, (ClampedPosition.X - (Arrow.Size.X.Offset / 2)), 0,
((ClampedPosition.Y - (Arrow.Size.Y.Offset / 2))))
Arrow.Rotation = (-
math.deg(Radian) + 180)
if
Library.Flags.ArrowPoints.Value == "Three" then
Arrow.Image =
"http://www.roblox.com/asset/?id=282305485"
else
Arrow.Image =
"http://www.roblox.com/asset/?id=15000587389"
end
if
Library.Flags.DynamicArrows and Library.Flags.DynamicArrows.Value then
local Magnitude =
((1 / (Distance * 3)) * Library.Flags.RenderDistance.Value)
Magnitude =
math.clamp(Magnitude, 14, 40)
Arrow.Size =
UDim2.new(0, Magnitude, 0, Magnitude)
else
Arrow.Size =
UDim2.new(0, Library.Flags.ArrowWidth.Value, 0, Library.Flags.ArrowHeight.Value)
end
else
Arrow.Visible = false
end
end;
end;
else
Components.Arrow.Visible = false;
self:Invisible();
end;
else
Components.Arrow.Visible = false;
self:Invisible();
end;
end;
else
self:Invisible();
self.Components.Arrow.Visible = false;
end;
else
self:Invisible();
self.Components.Arrow.Visible = false;
end;
end
end;
end;
do --// Remove/Add
function ESPConstructor:Remove()
local Components = self.Components;
Components.Arrow:Destroy();
Components.BoxOutline:Destroy();
if type(Components.Highlight) ~= "boolean" then
Components.Highlight:Destroy()
end
Visuals.Enemies[self.Object] = nil;
end;
function ESPConstructor:New(Enemy)
--// Components
local Tracer = Instance.new("Frame");
end;
do --// Tracer
Tracer.Parent = Visuals.ESPContainer;
Tracer.BackgroundColor3 = Color3.new(1, 1, 1);
Tracer.BorderSizePixel = 1;
Tracer.BorderColor3 = Color3.new(0, 0, 0);
end;
do --// Box
BoxOutline.Parent = Visuals.ESPContainer;
BoxOutline.BackgroundTransparency = 1.000;
BoxOutline.ZIndex = 2;
BoxOutline.Visible = false;
OutlineStroke.Parent = BoxOutline;
OutlineStroke.LineJoinMode = "Miter";
OutlineStroke.Thickness = 3;
OutlineStroke.Color = Color3.fromRGB();
RegularStroke.Parent = Box;
RegularStroke.LineJoinMode = "Miter";
RegularStroke.Thickness = 1;
RegularStroke.Color = Color3.fromRGB(255, 255,
255);
Box.Parent = BoxOutline;
Box.BackgroundTransparency = 1.000;
Box.Position = UDim2.new(0, -1, 0, -1);
Box.Size = UDim2.new(1, 2, 1, 2);
Box.ZIndex = 3;
end;
do -- Inventory
Inventory.Parent = Box;
Inventory.Position = UDim2.new(0, 0, 1, 30);
Inventory.Size = UDim2.new(1, 0, 0, 24);
end;
do --// Healthbar
Healthbar.Parent = BoxOutline;
Healthbar.BackgroundColor3 = Color3.fromRGB(0, 255,
115);
Healthbar.BorderColor3 = Color3.fromRGB(0, 0, 0);
Healthbar.Position = UDim2.new(0, -6, 0, -2);
Healthbar.Size = UDim2.new(0, 2, 1, 4);
Healthbar.Visible = false;
HealthbarInvert.Parent = Healthbar;
HealthbarInvert.BackgroundColor3 =
Color3.fromRGB(0, 0, 0);
HealthbarInvert.BorderColor3 = Color3.fromRGB(0, 0,
0);
HealthbarInvert.BorderSizePixel = 0;
HealthbarInvert.Size = UDim2.new(1, 0, 0, 0);
end;
do --// Ammobar
Ammobar.Parent = BoxOutline;
Ammobar.BackgroundColor3 = Color3.fromRGB(0, 255,
115);
Ammobar.BorderColor3 = Color3.fromRGB(0, 0, 0);
AmmobarInvert.Parent = Ammobar;
AmmobarInvert.BackgroundColor3 = Color3.fromRGB(0,
0, 0);
AmmobarInvert.BorderColor3 = Color3.fromRGB(0, 0,
0);
AmmobarInvert.BorderSizePixel = 0;
AmmobarInvert.Size = UDim2.new(1, 0, 0, 0);
end;
do --// Flags
Flags.Parent = BoxOutline;
Flags.Position = UDim2.new(0, -30, 1, 0);
Flags.Size = UDim2.new(0, 24, 0, 16);
Flags.TextXAlignment = Enum.TextXAlignment.Left;
Flags.Text = "Flags";
end;
do --// Arrow
Arrow.Visible = false;
Arrow.BackgroundTransparency = 1;
Arrow.Size = UDim2.new(0, 16, 0, 16);
Arrow.Parent = Visuals.ESPContainer;
end;
end;
Corners[2] = Instance.new("Frame");
Corners[2].Parent = BoxOutline
Corners[2].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[2].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[2].BorderSizePixel = 0
Corners[2].Size = UDim2.new(0, 1, 0.3, 0)
Corners[2].Position = UDim2.new(0, 0, 0, -2)
Corners[3] = Instance.new("Frame");
Corners[3].Parent = BoxOutline
Corners[3].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[3].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[3].BorderSizePixel = 0
Corners[3].Position = UDim2.new(0.7, -1, 0, -2)
Corners[3].Size = UDim2.new(0.3, 0, 0, 1)
Corners[4] = Instance.new("Frame");
Corners[4].Parent = BoxOutline
Corners[4].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[4].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[4].BorderSizePixel = 0
Corners[4].Position = UDim2.new(1, -1, 0, -2)
Corners[4].Size = UDim2.new(0, 1, 0.3, 1)
Corners[5] = Instance.new("Frame");
Corners[5].Parent = BoxOutline
Corners[5].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[5].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[5].BorderSizePixel = 0
Corners[5].Position = UDim2.new(0, 0, 0.7, 1)
Corners[5].Size = UDim2.new(0, 1, 0.3, 0)
Corners[6] = Instance.new("Frame");
Corners[6].Parent = BoxOutline
Corners[6].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[6].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[6].BorderSizePixel = 0
Corners[6].Position = UDim2.new(0, 0, 1, 1)
Corners[6].Size = UDim2.new(0.3, 0, 0, 1)
Corners[7] = Instance.new("Frame");
Corners[7].Parent = BoxOutline
Corners[7].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[7].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[7].BorderSizePixel = 0
Corners[7].Position = UDim2.new(1, -1, 0.7, 1)
Corners[7].Size = UDim2.new(0, 1, 0.3, 0)
Corners[8] = Instance.new("Frame");
Corners[8].Parent = BoxOutline
Corners[8].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[8].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[8].BorderSizePixel = 0
Corners[8].Position = UDim2.new(0.7, 0, 1, 1)
Corners[8].Size = UDim2.new(0.3, 0, 0, 1);
end;
do --// Outline
Corners[9] = Instance.new("Frame");
Corners[9].Parent = BoxOutline
Corners[9].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[9].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[9].BorderSizePixel = 1
Corners[9].Size = UDim2.new(0.3, 0, 0, 1)
Corners[9].Position = UDim2.new(0, 0, 0, -2)
Corners[10] = Instance.new("Frame");
Corners[10].Parent = BoxOutline
Corners[10].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[10].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[10].BorderSizePixel = 1
Corners[10].Size = UDim2.new(0, 1, 0.3, 0)
Corners[10].Position = UDim2.new(0, 0, 0, -2);
Corners[11] = Instance.new("Frame");
Corners[11].Parent = BoxOutline
Corners[11].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[11].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[11].BorderSizePixel = 1
Corners[11].Position = UDim2.new(0.7, -1, 0, -2)
Corners[11].Size = UDim2.new(0.3, 0, 0, 1)
Corners[12] = Instance.new("Frame");
Corners[12].Parent = BoxOutline
Corners[12].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[12].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[12].BorderSizePixel = 1
Corners[12].Position = UDim2.new(1, -1, 0, -2)
Corners[12].Size = UDim2.new(0, 1, 0.3, 0)
Corners[13] = Instance.new("Frame");
Corners[13].Parent = BoxOutline
Corners[13].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[13].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[13].BorderSizePixel = 1
Corners[13].Position = UDim2.new(0, 0, 0.7, 1)
Corners[13].Size = UDim2.new(0, 1, 0.3, 0)
Corners[14] = Instance.new("Frame");
Corners[14].Parent = BoxOutline
Corners[14].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[14].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[14].BorderSizePixel = 1
Corners[14].Position = UDim2.new(0, 0, 1, 1)
Corners[14].Size = UDim2.new(0.3, 0, 0, 1)
Corners[15] = Instance.new("Frame");
Corners[15].Parent = BoxOutline
Corners[15].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[15].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[15].BorderSizePixel = 1
Corners[15].Position = UDim2.new(1, -1, 0.7, 1)
Corners[15].Size = UDim2.new(0, 1, 0.3, 0)
Corners[16] = Instance.new("Frame");
Corners[16].Parent = BoxOutline
Corners[16].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[16].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[16].BorderSizePixel = 1
Corners[16].Position = UDim2.new(0.7, 0, 1, 1)
Corners[16].Size = UDim2.new(0.3, 0, 0, 1);
end;
end;
--// Metatable
local Constructor = setmetatable({
Object = Enemy;
Components = Components;
Offsets = {
BottomOffset = UDim2.new(0, 0, 1, 3);
TopOffset = UDim2.new(0, 0, 0, -20);
LeftOffset = UDim2.new(0, -6, 0, -2);
RightOffset = UDim2.new(1, 6, 0, -2);
};
Info = {
--// Users Information
IsFriendly = false;
LastUpdate = tick();
Username = Enemy.Name;
DisplayName = Enemy:IsA("Player") and
Enemy.DisplayName or Enemy.Name;
Class = Players:FindFirstChild(Enemy.Name) and
"Player" or "AI";
LastHeldItem = nil;
LastKnownPosition = Vector3.new();
Character = nil;
Team = nil;
Visuals.Enemies[Enemy] = Constructor;
--// Return Constructor for useful cases;
return Constructor;
end;
end;
end)();
end;
InfoInner.Parent = InfoBorder;
InfoInner.BackgroundColor3 = Color3.fromRGB(17, 17, 17);
InfoInner.BorderColor3 = Color3.fromRGB(0, 0, 0);
InfoInner.Position = UDim2.new(0, 2, 0, 2);
InfoInner.Size = UDim2.new(1, -4, 1, -4);
Accent.Parent = InfoInner;
Accent.BackgroundColor3 = Color3.fromRGB(93, 131, 255);
Accent.BorderColor3 = Color3.fromRGB(0, 0, 0);
Accent.BorderSizePixel = 0;
Accent.Size = UDim2.new(1, 0, 0, 1);
Container.Parent = InfoInner;
Container.BackgroundColor3 = Color3.fromRGB(255, 255, 255);
Container.BackgroundTransparency = 1.000;
Container.BorderColor3 = Color3.fromRGB(0, 0, 0);
Container.BorderSizePixel = 0;
Container.Size = UDim2.new(0, 204, 0, 346);
UIPadding.Parent = Container;
UIPadding.PaddingLeft = UDim.new(0, 4);
UIPadding.PaddingTop = UDim.new(0, 2);
InfoText.FontFace = Library.MenuFont;
InfoText.TextSize = Library.TextSize;
InfoText.BackgroundTransparency = 1;
InfoText.TextColor3 = Color3.fromRGB(255, 255, 255);
InfoText.RichText = true;
InfoText.Size = UDim2.new(1, -4, 0, 9);
InfoText.Position = UDim2.new(0, 2, 0, 3);
InfoText.TextXAlignment = Enum.TextXAlignment.Left;
InfoText.TextYAlignment = Enum.TextYAlignment.Top;
end;
do --// Functions
function Visuals:UpdatePosition()
if Library.Flags.InfoPositionX then
InfoBorder.Position =
UDim2.new(Library.Flags.InfoPositionX.Value / 100, 0,
Library.Flags.InfoPositionY.Value / 100, 0);
end
if Library.Flags.RadarPositionX then
Visuals.RadarFrame.Position =
UDim2.new(Library.Flags.RadarPositionX.Value / 100, 0,
Library.Flags.RadarPositionY.Value / 100, 0);
end
end;
do --// Health
if Value == "Health" then
InfoText.Text = InfoText.Text.."[Health]
: "..tostring(math.floor(Health)).."hp\n"
TextBounds = TextBounds + 14
end;
end;
do --/ Distance
if Value == "Distance" then
InfoText.Text = InfoText.Text.. "[Distance]
: "..tostring(Distance)..Conversion.Suffix.."\n";
TextBounds = TextBounds + 14
end;
end;
do --// Hotbar
if Value == "Hotbar" then
InfoText.Text = InfoText.Text.."[Hotbar]
:\n";
TextBounds = TextBounds + 14
for Index, Item in next, HotbarList do
InfoText.Text = InfoText.Text..
Whitespace .. Item.Name.."\n";
TextBounds = TextBounds + 14
end;
end;
end;
do --// Inventory
if Value == "Inventory" then
InfoText.Text = InfoText.Text.."[Inventory]
:\n";
TextBounds = TextBounds + 14
for Index, Item in next, InventoryList do
if not
Library.Flags.FilterPlayers.Value then
TextBounds = TextBounds + 14
if Item:FindFirstChild("Inventory")
and #Item:FindFirstChild("Inventory"):GetChildren() ~= 0 then
InfoText.Text =
InfoText.Text..Whitespace.."["..Item.Name.."]\n";
for Index, Item in next,
Item:FindFirstChild("Inventory"):GetChildren() do
InfoText.Text =
InfoText.Text..Whitespace..Whitespace..Item.Name.."\n";
TextBounds = TextBounds +
14
end;
else
InfoText.Text =
InfoText.Text..Whitespace.."["..Item.Name.."]\n";
end;
else
if Item:FindFirstChild("Inventory")
and #Item:FindFirstChild("Inventory"):GetChildren() ~= 0 then
local WasParentAllowed = false;
if
table.find(Library.Flags.FilteredItems.Value, Item.Name) then
WasParentAllowed = true;
InfoText.Text =
InfoText.Text..Whitespace.."["..Item.Name.."]\n";
TextBounds = TextBounds +
14
end;
if
table.find(Library.Flags.FilteredItems.Value, Item.Name) then
TextBounds = TextBounds +
14
InfoText.Text =
InfoText.Text..Whitespace.."["..Item.Name.."]\n";
end;
end;
end;
end;
end;
end;
end);
end;
end;
do --// Sizing
InfoBorder.Size = UDim2.new(0, 208, 0, TextBounds + 10)
end;
Visuals:UpdatePosition()
end;
end;
Visuals.InfoFrame = InfoBorder;
Visuals.InfoContainer = Container;
Visuals.InfoAccent = Accent;
Visuals.InfoText = InfoText;
end;
Allow = function(self)
return true;
end;
});
ESPConstructor:AddFlag({
Name = "Staff",
Flag = "Staff",
Text = function(self, IsPreview)
if IsPreview then
return "STAFF | ADMIN";
end;
Allow = function(self)
if self.Info.Class == "Player" then
if Staff.Detected[self.Object.UserId] then
return true
end
end
end;
});
ESPConstructor:AddFlag({
Name = "Telemetry",
Flag = "Telemetry",
Text = function(self, IsPreview)
if IsPreview then
return "ETHEREAL";
end;
Allow = function(self)
if IsPreview then
return true
end
Allow = function(self)
return true;
end;
});
end
Allow = function(self)
return self.Object:GetAttribute("SquadName");
end;
});
end
Allow = function(self)
return true;
end;
});
end;
return false;
end;
});
ESPConstructor:AddFlag({
Name = "Stamina",
Flag = "Stamina",
Text = function(self, IsPreview)
if IsPreview then
return "S: 100";
end;
Allow = function(self)
return true
end;
});
ESPConstructor:AddFlag({
Name = "KO",
Flag = "KO",
Text = function(self, IsPreview)
if IsPreview then
return "KO: 100";
end;
ESPConstructor:AddFlag({
Name = "Displayed Clan",
Flag = "Displayed Clan",
Text = function(self, IsPreview)
if IsPreview then
return "PROJECT EDEL";
end;
if ClanName then
return "CLAN: "..ClanName
end;
end;
end;
end;
Allow = function(self)
local Character = self.Info.Character
if ClanName then
return true
end;
end;
end;
return false
end;
});
ESPConstructor:AddFlag({
Name = "Reloading",
Flag = "Reloading",
Text = function(self, IsPreview)
if IsPreview then
return "Reloading";
end;
return false
end;
});
end;
if Money then
return tostring(Money).."$"
end;
return nil;
end;
Allow = function(self)
return true
end;
});
ESPConstructor:AddFlag({
Name = "Ping",
Flag = "Ping",
Text = function(self, IsPreview)
if IsPreview then return "60ms" end;
local Ping = self.Object:FindFirstChild("Ping")
if Ping then
return Ping.Value .. "ms"
end;
return nil;
end;
Allow = function(self)
return true
end;
});
end;
if Ping then
return Ping.Value .. "ms"
end;
return nil;
end;
Allow = function(self)
return true
end;
});
ESPConstructor:AddFlag({
Name = "FPS",
Flag = "FPS",
Text = function(self, IsPreview)
if IsPreview then return "60 FPS" end;
local FPS = self.Object:FindFirstChild("FPS")
if FPS then
return FPS.Value .. " FPS"
end;
return nil;
end;
Allow = function(self)
return true
end;
});
end;
end;
Allow = function(self)
return true;
end;
});
ESPConstructor:AddFlag({
Name = "Ping",
Flag = "Ping",
Text = function(self, IsPreview)
if IsPreview then
return "100ms";
end;
if Money then
return "RUB. "..tostring(math.floor(Money))
end;
return nil;
end;
Allow = function(self)
if Combat.Target == self.Object and self.Info.Class ==
"Player" then
return true;
end;
return false;
end;
});
ESPConstructor:AddFlag({
Name = "Clan",
Flag = "Clan",
Text = function(self, IsPreview)
if IsPreview then return "CLAN"; end;
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Clan =
PlayerData:FindFirstChild("Status").Journey.Clan:GetAttribute("CurrentClan")
ESPConstructor:AddFlag({
Name = "KD",
Flag = "KD",
Text = function(self, IsPreview)
if IsPreview then
return "10.0 KD";
end;
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Kills =
PlayerData:FindFirstChild("Status").Journey.Statistics:GetAttribute("Kills");
local Deaths =
PlayerData:FindFirstChild("Status").Journey.Statistics:GetAttribute("Deaths");
if Deaths < 1 then
Deaths = 1;
end;
return nil;
end;
Allow = function(self)
if self.Info.Class == "Player" then
return true;
end;
return false;
end;
});
--[[ESPConstructor:AddFlag({
Flag = "Stance",
Name = "Stance",
Text = function(self, IsPreview)
if IsPreview then return "CROUCH" end;
local Character = self.Info.Character;
local Humanoid = Character and
self.Info.Character:FindFirstChild("Humanoid");
if Humanoid then
local CrouchId = "rbxassetid://8544373208";
for Index, Value in next,
Humanoid:GetPlayingAnimationTracks() do
if Value.Animation.AnimationId == CrouchId then
return "CROUCH"
end;
end;
end;
end;
if Humanoid then
local CrouchId = "rbxassetid://8544373208";
for Index, Value in next,
Humanoid:GetPlayingAnimationTracks() do
if Value.Animation.AnimationId == CrouchId then
return true
end;
end;
end;
return false;
end;
});]]
ESPConstructor:AddFlag({
Flag = "Aiming",
Name = "Aiming",
Text = function(self, IsPreview)
if IsPreview then return "SCOPE"; end;
local Character = self.Info.Character;
local Humanoid = Character and
self.Info.Character:FindFirstChild("Humanoid");
if Humanoid then
local Weapon = self:GetWeapon();
if Humanoid then
local Weapon = self:GetWeapon();
return false
end;
});
--[[ESPConstructor:AddFlag({
Flag = "Prime",
Name = "Prime",
Text = function(self, IsPreview)
if IsPreview then return "PRIME"; end;
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Passes = PlayerData.Status.Purchases.Passes
if Passes:GetAttribute("GivenPrimePass") then
return "PRIME"
end;
end;
end;
Allow = function(self)
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Passes = PlayerData.Status.Purchases.Passes
if Passes:GetAttribute("GivenPrimePass") then
return true
end;
end;
return false
end;
});]]
ESPConstructor:AddFlag({
Name = "Extracting",
Flag = "Extracting",
Text = function(self, IsPreview)
if IsPreview then
return "EXTRACT - 5s";
end;
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Exiting =
PlayerData.Status.GameplayVariables.Exiting
if Exiting:GetAttribute("Value") ~= -1 then
return "EXTRACT -
"..tostring(Exiting:GetAttribute("Value"))
end;
end;
end;
Allow = function(self)
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Exiting =
PlayerData.Status.GameplayVariables.Exiting
if Exiting:GetAttribute("Value") ~= -1 then
return true
end;
end;
return false
end;
})
ESPConstructor:AddFlag({
Flag = "Elite",
Name = "Elite",
Text = function(self, IsPreview)
if IsPreview then return "ELITE" end;
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Passes = PlayerData.Status.Purchases.Passes
if Passes:GetAttribute("GivenElitePass") then
return "ELITE"
end;
end;
end;
Allow = function(self)
local PlayerData =
ReplicatedStorage.Players:FindFirstChild(self.Object.Name);
if PlayerData then
local Passes = PlayerData.Status.Purchases.Passes
if Passes:GetAttribute("GivenElitePass") then
return true
end;
end;
return false
end;
});
end;
Allow = function(self)
if self.Info.Class == "Player" then
return true;
end;
return false;
end;
});
end
ESPConstructor:AddFlag({
Name = "Level",
Flag = "Level",
Text = function(self, IsPreview)
if IsPreview then return "LVL: 20"; end;
local Level = self.Object:GetAttribute("Level");
Allow = function(self)
if self.Info.Class == "Player" then
return true;
end;
return false;
end;
});
ESPConstructor:AddFlag({
Name = "Stance",
Flag = "Stance",
Text = function(self, IsPreview)
if IsPreview then return "CROUCH" end;
if self.Object and
self.Object:GetAttribute("ServerCrouching") then
return "CROUCH";
end;
end;
if self.Object and
self.Object:GetAttribute("ServerCrouching") then
return true;
end;
return false;
end;
});
ESPConstructor:AddFlag({
Name = "Aiming",
Flag = "Aiming",
Text = function(self, IsPreview)
if IsPreview then return "SCOPE" end;
return false;
end;
});
ESPConstructor:AddFlag({
Name = "Energized",
Flag = "Energized",
Text = function(self, IsPreview)
if IsPreview then return "ENERG." end;
return false;
end;
});
ESPConstructor:AddFlag({
Name = "Looting",
Flag = "Looting",
Text = function(self, IsPreview)
if IsPreview then return "LOOT." end;
return false;
end;
});
ESPConstructor:AddFlag({
Name = "Lockpicking",
Flag = "Lockpicking",
Text = function(self, IsPreview)
if IsPreview then return "LOCKPICK" end;
return false;
end;
});
end;
--[[ESPConstructor:AddFlag({
Name = "Necromancer",
Flag = "Necromancer",
Text = function(self, IsPreview)
if IsPreview then
return "NECROMANCER";
end;
--[[ESPConstructor:AddFlag({
Name = "Thermals",
Flag = "Thermals",
Text = function(self, IsPreview)
if IsPreview then return "THERM." end
local Character = self.Info.Character;
if Character then
local HasT7 = Character:FindFirstChild("T7-1");
return HasT7 and "THERM." or nil;
end;
end;
Allow = function(self)
return true;
end;
});]]
--[[ESPConstructor:AddFlag({
Name = "Bounty",
Flag = "Bounty",
Text = function(self)
local Character = self.Info.Character;
local Humanoid = Character and
Character:FindFirstChildOfClass("Humanoid");
if Humanoid then
local Display = Humanoid.DisplayName;
local RealName = self.Object.Name;
if GameFramework.CrimBounties[Display] then
return "BTY:
"..GameFramework.CrimBounties[Display];
end;
if GameFramework.CrimBounties[RealName] then
return "BTY:
"..GameFramework.CrimBounties[RealName];
end;
end;
end;
Allow = function(self)
return true;
end;
});]]
--[[ESPConstructor:AddFlag({
Name = "Relic",
Flag = "Relic",
if Character then
local Relic = Character:FindFirstChild("Relic") or
Backpack:FindFirstChild("Relic")
if Relic then
return "RELIC";
end;
end;
end;
Allow = function(self)
local Character = self.Info.Character;
local Backpack = self.Object.Backpack;
if Character then
local Relic = Character:FindFirstChild("Relic") or
Backpack:FindFirstChild("Relic")
if Relic then
return true;
end;
end;
return false
end;
})]]
ESPConstructor:AddFlag({
Name = "Fake Name",
Flag = "Fake Name",
Text = function(self, IsPreview)
if IsPreview then return "#019l" end;
local Character = self.Info.Character;
local Humanoid = Character and
Character:FindFirstChildOfClass("Humanoid");
if Humanoid then
local Display = Humanoid.DisplayName;
local RealName = self.Object.Name;
if Display:find("#") then
return Display;
end;
end;
end;
Allow = function(self)
return true;
end;
});
ESPConstructor:AddFlag({
Name = "Level",
Flag = "Level",
Text = function(self, IsPreview)
if IsPreview then return "LVL 63"; end;
local LeaderStats = self.Object.leaderstats
if LeaderStats then
local Level = LeaderStats:FindFirstChild("Level")
return Level and "LVL " .. tostring(Level.Value) or
"LVL 1";
end;
end;
Allow = function(self)
return true;
end;
});
ESPConstructor:AddFlag({
Name = "Rage",
Flag = "Rage",
Text = function(self, IsPreview)
if IsPreview then return "RAGE" end;
local Character = self.Info.Character;
local CanReturn = false;
local Text = ""
if Character and Character:FindFirstChild("Rage-potion")
then
local ProgressBar = Character["Rage-
potion"].ProgressBar;
if ProgressBar.Value ~= 0 then
Text = "RAGING";
CanReturn = true;
end;
end;
return Text;
end;
Allow = function(self)
local Character = self.Info.Character;
local CanReturn = false;
local Text = ""
if Character and Character:FindFirstChild("Rage-potion")
then
local ProgressBar = Character["Rage-
potion"].ProgressBar;
if ProgressBar.Value ~= 0 then
Text = "RAGING";
CanReturn = true;
end;
end;
return CanReturn
end;
});
ESPConstructor:AddFlag({
Name = "Slayer",
Flag = "Slayer",
Text = function(self, IsPreview)
if IsPreview then return "SLAYER" end;
local Character = self.Info.Character;
if Character then
local IsSlayer =
Character:FindFirstChild("SlayerArmour");
return IsSlayer and "SLAYER" or nil;
end;
end;
Allow = function(self)
return true;
end;
});
ESPConstructor:AddFlag({
Name = "Vest",
Flag = "Vest",
Text = function(self, IsPreview)
if IsPreview then return "VEST LVL 2" end;
local Character = self.Info.Character;
if Character then
local Vest = Character:FindFirstChild("VestB_1") or
Character:FindFirstChild("VestB_2") or Character:FindFirstChild("VestA_1") or
Character:FindFirstChild("VestA_2");
if Vest then
if Vest.Name:find("_1") then
return "Vest LVL 1";
else
return "Vest LVL 2";
end;
return "VEST";
end;
end;
end;
Allow = function(self)
return true;
end;
});
ESPConstructor:AddFlag({
Name = "Helmet",
Flag = "Helmet",
Text = function(self, IsPreview)
if IsPreview then return "HELMET LVL 2"; end;
local Character = self.Info.Character;
if Character then
local Vest = Character:FindFirstChild("HelmetB_1") or
Character:FindFirstChild("HelmetB_2") or Character:FindFirstChild("HelmetA_1") or
Character:FindFirstChild("HelmetA_2");
if Vest then
if Vest.Name:find("_1") then
return "HELMET LVL 1";
else
return "HELMET LVL 2";
end;
return "HELMET";
end;
end;
end;
Allow = function(self)
return true;
end;
});
end;
end;
do --// Crosshair
function Visuals:UpdateCrosshair(Distance, Origin, LookVector, Parent)
task.spawn(function()
if Library.Flags.Crosshair and Library.Flags.Crosshair.Value
then
local Ray = Workspace:Raycast(Origin, LookVector *
Distance, RayParams);
if Ray and Ray.Position and Ray.Normal then
Visuals.CrosshairPart.Parent = Parent;
--[[Visuals.CrosshairPart.CFrame = CFrame.fromMatrix(
Ray.Position,
-
Ray.Normal:Cross(Visuals.CrosshairPart.CFrame.RightVector),
Ray.Normal
);]]
local RightVector = -
Ray.Normal:Cross(Visuals.CrosshairPart.CFrame.RightVector);
if tostring(RightVector):find("nan") then
RightVector = Vector3.new(0, -1, 0);
end;
Visuals.CrosshairPart.CFrame = CorrectedCFrame
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
Visuals.CrossAdornee.Transparency = 0;
else
Visuals.CrossAdornee.Transparency = 1;
Visuals.CrosshairPart.Parent = nil;
end;
else
if Visuals.CrossAdornee then
Visuals.CrossAdornee.Transparency = 1;
Visuals.CrosshairPart.Parent = nil;
end;
end;
end);
end;
end;
do --// Radar
function Visuals:GetNearby(Radius)
local ClientCharacter = Client.Character;
local ClientPosition = ClientCharacter and
ClientCharacter:FindFirstChild("HumanoidRootPart").CFrame.p;
if ClientPosition then
local Region = Region3.new(ClientPosition - Vector3.new(Radius,
Radius, Radius), ClientPosition + Vector3.new(Radius, Radius, Radius));
local Parts = workspace:FindPartsInRegion3(Region, nil,
math.huge);
if
Visuals.Enemies[Players:FindFirstChild(Part.Parent.Name)] then
NearbyPlayers[Visuals.Enemies[Players:FindFirstChild(Part.Parent.Name)]] =
Part.Parent;
end
end;
end;
end;
return NearbyPlayers;
end;
end;
function Visuals:GetRelative(pos)
local char = Client.Character
if char ~= nil and char.PrimaryPart ~= nil then
local pmpart = char.PrimaryPart
local camerapos = Vector3.new(Camera.CFrame.Position.X,
pmpart.Position.Y, Camera.CFrame.Position.Z)
local newcf = CFrame.new(pmpart.Position, camerapos)
local r = newcf:PointToObjectSpace(pos)
return r.X, r.Z
else
return 0, 0
end
end
function Visuals:UpdateRadar()
local RadarFrameRadius = Visuals.RadarFrame.Size.X.Offset / 2
local Radius = Library.Flags.RadarDistance and
Library.Flags.RadarDistance.Value or 100
if NearbyPlayers then
local ClientCharacter = Client.Character
local ClientRoot = ClientCharacter and
ClientCharacter:FindFirstChild("HumanoidRootPart")
local ClientPosition = ClientRoot and ClientRoot.Position
if ClientPosition then
for Index, Player in pairs(NearbyPlayers) do
local PlayerPosition = Player.PrimaryPart.Position
end;
end;
end;
do --// Chatbot
Chatbot.LastTick = tick();
Chatbot.Emojis = {"😀", "😃", "😄", "😁", "😆", "😅", "", 😂 "🙃 ", "",
😉 "🙃 ", "😉 ",
"😊", "😇", "",
😍 "😘", "",😗 "😚", "😙", "😋", "😛", "😜", "😝", "😜 ", "🤪", "😝 ", "🤑", "🤗",
😐 "",
"", 😑 "",
😶 "",
😏 "",
😒 "☹️ ", " ", "😔", "😟", "😕", "", 🙃 "☹️", "😔 ", "😟 ", "😕 ", "🙃 ",
"😣", "😖", "😫", "😩", "", 😢 "😭", "😠 ", "",😡 "😳", "😱", "🤬", "🤯", "😳 ", "🥵", "🥶", "😱 ",
"😨", "😰", "😥", "😓", "", 😶 "",
😐 "",
😑 "",
😯 "",😦 "😶 ", "😐 ", "😑 ", "😬", "🙄", "😯 ", "😦 ",
"😧", "😮", "😲", "😴", "", 😪 "😵", "😷", "🤐", "🥴", "🤢", "🤮", "🤧", "😷 ", "🤒", "🤕", "🤑",
😈 " ", "👿", "💤", "👋", "🤚", "🖐️
"", ", "✋"};
Chatbot.Symbols = {"!", "#", "$", "?",'"',"'"};
Chatbot.Phrases = {
["British"] = {
"Fancy a tea mate?",
"Im bound to the chippy!",
"☕☕",
"Why are you looking at my teeth?",
"BLOODY HELL MATE! THAT DRIVES ME BONKERS!",
"Headed down to the pub!",
"AKSHUALLY ITS FOOTBALL NOT SOCCER",
"God save the queen and bless the British!"
};
["Ethereal"] = {
"Ethereal > All",
"Ethereal Owns me and all others",
"Number 1 Project Delta -> BUY TODAY! Ethereal",
"Ethereal on top",
"Just bought Ethereal today, I can actually hit my shots now!",
"Uno all it takes with Ethereal",
};
["Trashtalk"] = {
"STOP TRYING YOU ARE AN EMBARRASMENT",
"GET GOOD HOLY",
"WOW LOL YOURE ACTUALLY SO TRASH",
"I CANT BELIEVE THATS YOUR AIM",
"AINT A WAY YOU AIM LIKE THAT LOOOOOOL",
"MY GRANDMA CAN AIM BETTER THAN THAT LOOOOOOOOOOOOOL",
"WOW, I STARTED TO FALL ASLEEP YOURE SO BAD"
},
};
for i = 1, 3 do
Chat = Chat..Text;
local random = math.random(1, 10);
if random <= 5 then
Chat = Chat .. ""..Emojis[math.random(#Emojis)].." ";
else
Chat = Chat .. ""..Symbols[math.random(#Symbols)].. " ";
end;
return Chat;
end;
end;
do --// Combat
LPH_NO_VIRTUALIZE(function()
function Combat:CameraLookAt(Point)
local PointRay = Camera:ViewportPointToRay(Point.X, Point.Y)
Camera.CFrame = CFrame.lookAt(Camera.CFrame.Position, PointRay.Origin +
PointRay.Direction)
end;
function Combat:MouseMoveRel(X, Y)
mousemoverel(X, Y)
end;
function Combat:MouseMoveABS(X, Y)
Combat:CameraLookAt(Vector2.new(X, Y))
end;
--[[function Combat:AimAssist(DeltaTime)
if Library.Flags.AimMode and Library.Flags.AimMode.Value == "Aimbot"
and (Library.Flags.Aimbot and Library.Flags.Aimbot.Value) then
if Combat.Target and Combat.TargetPart then
if Combat.LastCurvedTarget ~= Combat.Target then
Combat.LastCurvePoint = 0;
Combat.LastCurvedTarget = Combat.Target;
end;
local TargetPosition =
Camera:WorldToViewportPoint(Combat.TargetPart.Position);
Combat:MouseMoveRel(MouseMovementX, MouseMovementY);
Combat.LastCurvePoint = math.clamp(Combat.LastCurvePoint +
DeltaTime, 0, 1);
else
Combat.LastCurvePoint = 0;
end;
else
Combat.LastCurvePoint = 0;
end;
end;]]
function Combat:AimAssist(DeltaTime)
if Library.Flags.AimMode and Library.Flags.AimMode.Value == "Aimbot"
and Library.Flags.Aimbot and Library.Flags.Aimbot.Value then
if Combat.TargetPart then
if Combat.LastCurvedTarget ~= Combat.Target then
Combat.LastCurvePoint = 0;
Combat.LastCurvedTarget = Combat.Target;
end;
local Pos3D = Combat.TargetPart.CFrame
if GameName == "Games Unite" then
local Curve =
Combat:CreateQuadraticBezier(Combat.LastCurvePoint, MousePosition,
Vector2.new(TargetPosition.X, TargetPosition.Y), CurvingPoint) - MousePosition;
local Humaniser = Library.Flags.HumanizationScale and
Library.Flags.HumanizationScale.Value or 1.5;
Combat:MouseMoveRel(Curve.X, Curve.Y)
Combat.LastCurvePoint = math.clamp(Combat.LastCurvePoint +
DeltaTime * (2.1 - Humaniser) or 1.5, 0, 1);
else
Combat.LastCurvePoint = 0;
end;
else
Combat.LastCurvePoint = 0;
end;
end;
end)();
end;
do --// Utility
Utility.FireportPosition = Vector3.new(0, 0, 0);
Utility.CurrentViewmodel = nil;
Utility.CurrentAimPart = Vector3.new(0, 0, 0);
Utility.VMConnections = {};
Utility.Team = nil;
Utility.ViewmodelHighlight = Instance.new("Highlight"); do
Utility.ViewmodelHighlight.FillTransparency = 1;
Utility.ViewmodelHighlight.OutlineTransparency = 0;
Utility.ViewmodelHighlight.DepthMode = "AlwaysOnTop";
Utility.ViewmodelHighlight.Parent = gethui();
end;
do --// Functions
function Utility:DeepCopy(Table)
local Copy = {}
for k, v in pairs(Table) do
if type(v) == "table" then
Copy[k] = Utility:DeepCopy(v)
else
Copy[k] = v
end
end
return Copy
end
function Utility:GetBulletStats(Ammo)
if GameName == "Project Delta" then
local Types = ReplicatedStorage.AmmoTypes
local Info = Types:FindFirstChild(Ammo);
if Info then
return {Damage = Info:GetAttribute("Damage"), Penetration =
Info:GetAttribute("ArmorPen")}
end;
end;
end;
return FinalDamage;
end;
function Utility:GetArmor(Part)
if Part.Name:find("Head") or Part.Name:find("Face") then
for Index, Value in next, Part.Parent:GetChildren() do
if Value:IsA("Model") and Value:GetAttribute("ItemType") then
if Value:GetAttribute("ItemType") == "Headware" then
return Value.Name;
end;
end;
end;
return nil;
end;
return Armor:GetAttribute("Projectile")
else
return 1
end;
end;
function Utility:Rotate(CF)
local X, Y, Z = CF:ToOrientation();
return CFrame.new(CF.Position) * CFrame.Angles(0, Y, 0);
end;
function Utility:UpdateViewmodel(Viewmodel)
if EquippedItem then
local WeaponName = EquippedItem.Name;
local Attachments =
EquippedItem:FindFirstChild("Attachments");
local ItemProperties =
EquippedItem:FindFirstChild("ItemProperties")
if ItemProperties:GetAttribute("MaxLoadedAmmo")
then
Track:AdjustSpeed(5);
else
Track:AdjustSpeed(25);
end;
end;
end;
do --// Main
Utility.CurrentViewmodel = Viewmodel;
end;
task.wait(0.1);
if Library.Flags.HighlightViewmodel and
Library.Flags.HighlightViewmodel.Value then
Utility.ViewmodelHighlight.Adornee = Viewmodel;
Utility.ViewmodelHighlight.OutlineColor =
Library.Flags.ViewmodelOutlineColor.Color;
end;
do --// Visuals
if Library.Flags.ViewmodelChams and
Library.Flags.ViewmodelChams.Value then
if Part.Transparency ~= 1 then
Part.Transparency = Part.Material ==
Enum.Material.Glass and 0.8 or Library.Flags.ShirtColor.Transparency;
if Part.Material == Enum.Material.Glass
then
local TransparencyConnection =
Part:GetPropertyChangedSignal("Transparency"):Connect(function()
Part.Transparency = 0.8;
end);
table.insert(Utility.VMConnections,
TransparencyConnection);
end;
end;
end;
if Part.Transparency ~= 1 then
Part.Transparency = Part.Material ==
Enum.Material.Glass and 0.8 or Library.Flags.GloveColor.Transparency;
if Part.Material == Enum.Material.Glass
then
local TransparencyConnection =
Part:GetPropertyChangedSignal("Transparency"):Connect(function()
Part.Transparency = 0.8;
end);
table.insert(Utility.VMConnections,
TransparencyConnection);
end;
end;
end;
if Part.Transparency ~= 1 then
Part.Transparency = Part.Material ==
Enum.Material.Glass and 0.8 or Library.Flags.ArmColor.Transparency;
if Part.Material == Enum.Material.Glass
then
local TransparencyConnection =
Part:GetPropertyChangedSignal("Transparency"):Connect(function()
Part.Transparency = 0.8;
end);
table.insert(Utility.VMConnections,
TransparencyConnection);
end;
end;
end;
]]
do --// Arms
if Library.Flags.ArmChams and
Library.Flags.ArmChams.Value then
if Part.Name:lower():find("arm") or
Part.Name:lower():find("hand") then
Part.Material =
Enum.Material[Library.Flags.ViewmodelMaterial.Value];
Part.Color =
Library.Flags.ArmColor.Color;
if Part.Transparency ~= 1 then
Part.Transparency =
Part.Material == Enum.Material.Glass and 0.8 or 0;
if Part.Material ==
Enum.Material.Glass then
local
TransparencyConnection =
Part:GetPropertyChangedSignal("Transparency"):Connect(function()
Part.Transparency =
0.8;
end);
table.insert(Utility.VMConnections, TransparencyConnection);
end;
end;
end;
end;
end;
do --// Shirt
if Library.Flags.ShirtChams and
Library.Flags.ShirtChams.Value and Part:IsA("MeshPart") then
if Part:FindFirstAncestor("CamoShirt")
or Part:FindFirstAncestor("CivilianShirt") or
Part:FindFirstAncestor("GhillieShirt") or Part:FindFirstAncestor("GorkaShirt") or
Part:FindFirstAncestor("WastelandShirt") or
Part:FindFirstAncestor("LiquidatorSuitUpper") then
Part.TextureID =
Textures[Library.Flags.Texture.Value];
Part.Material =
Enum.Material[Library.Flags.ViewmodelMaterial.Value];
Part.Color =
Library.Flags.ShirtColor.Color;
if Part.Transparency ~= 1 then
Part.Transparency =
Part.Material == Enum.Material.Glass and 0.8 or
Library.Flags.ShirtColor.Transparency;
if Part.Material ==
Enum.Material.Glass then
local
TransparencyConnection =
Part:GetPropertyChangedSignal("Transparency"):Connect(function()
Part.Transparency =
0.8;
end);
table.insert(Utility.VMConnections, TransparencyConnection);
end;
end;
end;
end;
if Library.Flags.RemoveClothing and
Library.Flags.RemoveClothing.Value then
if Part:FindFirstAncestor("CamoShirt")
or Part:FindFirstAncestor("CivilianShirt") or
Part:FindFirstAncestor("GhillieShirt") or Part:FindFirstAncestor("GorkaShirt") or
Part:FindFirstAncestor("WastelandShirt") or
Part:FindFirstAncestor("LiquidatorSuitUpper") then
Part:Destroy();
end;
end;
end;
do --// Gloves
if Library.Flags.GloveChams and
Library.Flags.GloveChams.Value and Part:IsA("MeshPart") then
if
Part:FindFirstAncestor("CombatGloves") or Part:FindFirstAncestor("HandWraps") then
Part.TextureID =
Textures[Library.Flags.Texture.Value];
Part.Material =
Enum.Material[Library.Flags.ViewmodelMaterial.Value];
Part.Color =
Library.Flags.GloveColor.Color;
if Part.Transparency ~= 1 then
Part.Transparency =
Part.Material == Enum.Material.Glass and 0.8 or
Library.Flags.GloveColor.Transparency;
if Part.Material ==
Enum.Material.Glass then
local
TransparencyConnection =
Part:GetPropertyChangedSignal("Transparency"):Connect(function()
Part.Transparency =
0.8;
end);
table.insert(Utility.VMConnections, TransparencyConnection);
end;
end;
end;
end;
end;
do --// Item
if Library.Flags.ItemChams and
Library.Flags.ItemChams.Value and Part:FindFirstAncestor("Item") and
Part:IsA("MeshPart") then
Part.Material =
Enum.Material[Library.Flags.ViewmodelMaterial.Value];
Part.Color =
Library.Flags.ItemColor.Color;
Part.TextureID =
Textures[Library.Flags.Texture.Value];
if Part.Transparency ~= 1 then
Part.Transparency = Part.Material
== Enum.Material.Glass and 0.8 or Library.Flags.ItemColor.Transparency;
if Part.Material ==
Enum.Material.Glass then
local TransparencyConnection =
Part:GetPropertyChangedSignal("Transparency"):Connect(function()
Part.Transparency = 0.8;
end);
table.insert(Utility.VMConnections, TransparencyConnection);
end;
end;
end;
end;
end;
if Library.Flags.GloveChams and
Library.Flags.GloveChams.Value then
if
Part:FindFirstAncestor("CombatGloves") or Part:FindFirstAncestor("HandWraps") then
Part:Destroy();
end;
end;
if Library.Flags.ShirtChams and
Library.Flags.ShirtChams.Value then
if Part:FindFirstAncestor("CamoShirt")
or Part:FindFirstAncestor("CivilianShirt") or
Part:FindFirstAncestor("GhillieShirt") or Part:FindFirstAncestor("GorkaShirt") or
Part:FindFirstAncestor("WastelandShirt") or
Part:FindFirstAncestor("LiquidatorSuitUpper") then
Part:Destroy();
end;
end;
if Library.Flags.ItemChams and
Library.Flags.ItemChams.Value and Part:FindFirstAncestor("Item") then
Part:Destroy();
end;
end;
end;
end;
end;
end;
end);
end;
task.wait(0.2);
for Index, Value in next, Viewmodel:GetDescendants() do
if Viewmodel:FindFirstChild("Tool") and
Value:IsDescendantOf(Viewmodel.Tool) then
if Library.Flags.ItemChams.Value and (Value:IsA("Part") or
Value:IsA("MeshPart")) and Value.Transparency ~= 1 then
Value.Material = Library.Flags.ViewmodelMaterial.Value;
Value.Color = Library.Flags.ItemColor.Color;
Value.Transparency = Value.Material ==
Enum.Material.Glass and 0.8 or 0;
if Value:IsA("MeshPart") then
Value.TextureID = "";
end;
end;
else
if Library.Flags.ArmChams.Value and (Value:IsA("Part") or
Value:IsA("MeshPart")) and Value.Name ~= "HumanoidRootPart" and not
Value.Name:find("ArmHolder") and Value.Transparency ~= 1 then
Value.Material = Library.Flags.ViewmodelMaterial.Value
Value.Color = Library.Flags.ArmColor.Color;
Value.Transparency = Value.Material ==
Enum.Material.Glass and 0.8 or 0;
if Value:IsA("MeshPart") then
Value.TextureID = "";
end;
end;
end;
if Value:IsA("SurfaceAppearance") then
Value:Destroy();
end;
end;
Viewmodel.HumanoidRootPart.Transparency = 1;
Viewmodel.LArmHolder.Transparency = 1;
Viewmodel.RArmHolder.Transparency = 1;
end;
end;
function Utility:IsVisible(Destination)
if not Destination then return false end;
CustomRayParams = RayParams;
for i = 1, Library.Flags.AutoWalls.Value do
if RaycastResult.Instance then
if RaycastResult.Instance:IsDescendantOf(Destination.Parent)
then
return true;
else
LastStoppingPoint = RaycastResult.Position;
table.insert(CustomRayParams.FilterDescendantsInstances,
RaycastResult.Instance)
RaycastResult = Workspace:Raycast(LastStoppingPoint,
(Destination.Position - LastStoppingPoint).Unit * 10000, CustomRayParams);
if
RaycastResult.Instance:IsDescendantOf(Destination.Parent) then
return true;
end;
end;
end;
end;
return false;
end;
return Origin
end;
end
if FoundSpot then
break
else
GameFramework.Manipulated = false;
end;
end;
return Origin
end
local PartCount = 0;
local Elapsed = tick();
while RaycastResult do
if tick() - Elapsed > 1 then
break;
end;
if RaycastResult.Instance:IsA("Part") then
PartCount = PartCount + 1;
elseif RaycastResult.Instance:IsA("BasePart") then
break;
end;
return PartCount;
end
end;
end;
function UsableModules:RemoveESP(Object)
if Visuals.Enemies[Object] then
Visuals.Enemies[Object]:Remove();
end;
end;
end;
do --// Hitmarker
if GameName ~= "Fallen" then
Library.Hitmarker = Instance.new("Sound"); do
Library.Hitmarker.Parent = gethui();
Library.Hitmarker.Volume = 5;
end;
function Library:UpdateSounds(Type)
Library.Hitmarker.Volume = Library.Flags.HitmarkerVolume.Value;
Headshot.Volume = Library.Flags.HitmarkerVolume.Value;
Bodyshot.Volume = Library.Flags.HitmarkerVolume.Value;
if Type == "Headshot" then
Headshot.SoundId =
HitmarkerSounds[Library.Flags.HeadshotSound.Value];
Library.Hitmarker.SoundId =
HitmarkerSounds[Library.Flags.HeadshotSound.Value];
else
Bodyshot.SoundId =
HitmarkerSounds[Library.Flags.BodyshotSound.Value];
Library.Hitmarker.SoundId =
HitmarkerSounds[Library.Flags.BodyshotSound.Value];
end;
Library.Hitmarker:Play();
end;
end;
end;
do --// Keybind UI
local KeybindsUI;
KeybindsUI = Instance.new("ScreenGui");
KeybindsUI.Parent = gethui()
local KeybindsOutline = Instance.new("Frame")
local KeybindsInner = Instance.new("Frame")
local KeybindsTitle = Instance.new("TextLabel")
local KeybindsAccent = Instance.new("Frame")
local KeybindsContainer = Instance.new("Frame")
local KeybindsContainerOutline = Instance.new("Frame");
do --// Properties
KeybindsUI.Name = "9391203j312i3kashd9q312093ajsdokake219183213h";
KeybindsUI.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
KeybindsOutline.Visible = false;
KeybindsOutline.Parent = KeybindsUI
KeybindsOutline.BackgroundColor3 = Library.Theme.LightContrast
KeybindsOutline.BorderColor3 = Library.Theme.Border
KeybindsOutline.Position = UDim2.new(0.161736935, 0, 0.351219505,
0)
KeybindsOutline.Size = UDim2.new(0, 130, 0, 20)
KeybindsInner.Parent = KeybindsOutline
KeybindsInner.BackgroundColor3 = Library.Theme.MedianContrast
KeybindsInner.BorderColor3 = Library.Theme.Border
KeybindsInner.Position = UDim2.new(0, 2, 0, 2)
KeybindsInner.Size = UDim2.new(1, -4, 1, -4)
KeybindsTitle.Parent = KeybindsInner
KeybindsTitle.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
KeybindsTitle.BackgroundTransparency = 1.000
KeybindsTitle.BorderColor3 = Library.Theme.Border
KeybindsTitle.BorderSizePixel = 0
KeybindsTitle.Position = UDim2.new(0, 0, 0, 2)
KeybindsTitle.Size = UDim2.new(0, 126, 1, 0)
KeybindsTitle.FontFace = Library.MenuFont
KeybindsTitle.Text = "Keybinds"
KeybindsTitle.TextColor3 = Library.Theme.ElementOn
KeybindsTitle.TextSize = Library.TextSize
KeybindsAccent.Parent = KeybindsInner
KeybindsAccent.BackgroundColor3 = Library.Theme.Accent
KeybindsAccent.BorderColor3 = Library.Theme.Border
KeybindsAccent.Size = UDim2.new(1, 0, 0, 1)
KeybindsContainerOutline.Visible = true;
KeybindsContainerOutline.Parent = KeybindsOutline
KeybindsContainerOutline.BackgroundColor3 =
Library.Theme.LightContrast
KeybindsContainerOutline.BorderColor3 = Library.Theme.Border
KeybindsContainerOutline.Position = UDim2.new(0, 0, 0, 21)
KeybindsContainerOutline.Size = UDim2.new(1, 0, 0, 0)
KeybindsContainerOutline.ClipsDescendants = true;
KeybindsContainer.Parent = KeybindsContainerOutline
KeybindsContainer.BackgroundColor3 = Library.Theme.MedianContrast
KeybindsContainer.BorderColor3 = Library.Theme.Border
KeybindsContainer.Position = UDim2.new(0, 2, 0, 2)
KeybindsContainer.Size = UDim2.new(1, -4, 1, -4)
KeybindLayout.Parent = KeybindsContainer
KeybindLayout.SortOrder = Enum.SortOrder.LayoutOrder
KeybindLayout.Padding = UDim.new(0, 2);
UIPadding.Parent = KeybindsContainer
UIPadding.PaddingTop = UDim.new(0, 1)
Library.KeybindsContainer = KeybindsContainer
Library.KeybindIndex = 0;
Library.KeybindsGUI = KeybindsOutline;
Library.KeybindsAccent = KeybindsAccent;
end;
do --// Functions
KeybindsContainer.ChildAdded:Connect(function()
Library.KeybindIndex = Library.KeybindIndex + 1;
local Size;-- = UDim2.new(1, 0, 0, 5 + (Library.KeybindIndex *
11));
if Library.KeybindIndex ~= 1 then
Size = UDim2.new(1, 0, 0, (11 * Library.KeybindIndex) + 3);
else
Size = UDim2.new(1, 0, 0, 14);
end;
Library:Tween(KeybindsContainerOutline, TweenInfo.new(0.2,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {Size = Size});
end);
KeybindsContainer.ChildRemoved:Connect(function()
Library.KeybindIndex = Library.KeybindIndex - 1;
local Size;-- = UDim2.new(1, 0, 0, 5 + (Library.KeybindIndex *
11));
if Library.KeybindIndex ~= 1 then
Size = UDim2.new(1, 0, 0, (11* Library.KeybindIndex) + 3);
else
Size = UDim2.new(1, 0, 0, 14);
end;
if Library.KeybindIndex == 0 then
Size = UDim2.new(1, 0, 0, 0);
end;
Library:Tween(KeybindsContainerOutline, TweenInfo.new(0.2,
Enum.EasingStyle.Linear, Enum.EasingDirection.In), {Size = Size});
end);
end;
end;
do --// Watermark UI
local WatermarkUI;
WatermarkUI = Instance.new("ScreenGui")
WatermarkUI.Parent = gethui();
local WatermarkOutline = Instance.new("Frame")
local WatermarkInner = Instance.new("Frame")
local WatermarkAccent = Instance.new("Frame")
local WatermarkText = Instance.new("TextLabel")
local FakeText = Instance.new("TextLabel");
do --// Properties
WatermarkUI.Name = "9391203j312i3kashd9q312093ajsdokake219183213h";
WatermarkUI.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
WatermarkOutline.Name = "WatermarkOutline"
WatermarkOutline.Visible = false;
WatermarkOutline.Parent = WatermarkUI
WatermarkOutline.BackgroundColor3 = Color3.fromRGB(37, 37, 37)
WatermarkOutline.BorderColor3 = Color3.fromRGB(0, 0, 0)
WatermarkOutline.Position = UDim2.new(0.001, 97, 0.202453986, -
224);
WatermarkOutline.Size = UDim2.new(0, 200, 0, 20)
WatermarkInner.Parent = WatermarkOutline
WatermarkInner.BackgroundColor3 = Color3.fromRGB(17, 17, 17)
WatermarkInner.BorderColor3 = Color3.fromRGB(0, 0, 0)
WatermarkInner.Position = UDim2.new(0, 2, 0, 2)
WatermarkInner.Size = UDim2.new(1, -4, 1, -4)
WatermarkAccent.Parent = WatermarkInner
WatermarkAccent.BackgroundColor3 = Library.Theme.Accent;
WatermarkAccent.BorderColor3 = Color3.fromRGB(0, 0, 0)
WatermarkAccent.Size = UDim2.new(1, 0, 0, 1)
WatermarkText.Parent = WatermarkInner
WatermarkText.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
WatermarkText.BackgroundTransparency = 1.000
WatermarkText.BorderColor3 = Color3.fromRGB(0, 0, 0)
WatermarkText.BorderSizePixel = 0
WatermarkText.Position = UDim2.new(0, 1, 0, 2)
WatermarkText.Size = UDim2.new(1, 0, 1, 0)
WatermarkText.FontFace = Library.MenuFont
WatermarkText.TextColor3 = Color3.fromRGB(255, 255, 255)
WatermarkText.TextSize = Library.TextSize
WatermarkText.TextXAlignment = Enum.TextXAlignment.Center;
end;
WatermarkText:GetPropertyChangedSignal("Text"):Connect(function()
WatermarkOutline.Size = UDim2.new(0,
(string.len(WatermarkText.Text) * 5) + 10, 0, 20);
end);
Library.WatermarkAccent = WatermarkAccent;
Library.WatermarkText = WatermarkText;
Library.WatermarkOutline = WatermarkOutline;
end;
do --// Functions
do --// Standard
function Library:Round(Number, Divider)
if typeof(Number) == "Vector2" then
return Vector2.new(Library:Round(Number.X),
Library:Round(Number.Y))
elseif typeof(Number) == "Vector3" then
return Vector3.new(Library:Round(Number.X),
Library:Round(Number.Y), Library:Round(Number.Z))
elseif typeof(Number) == "Color3" then
return Library:Round(Number.r * 255),
Library:Round(Number.g * 255), Library:Round(Number.b * 255)
else
return Number - Number % (Divider or 1);
end
end;
function Library:Tween(...)
local NewTween = TweenService:Create(...)
NewTween:Play();
return NewTween;
end;
do --// Keybinds
function Library:ToggleBind(Name, Key)
if Name ~= "Open/Close" then
if Library.KeybindsContainer:FindFirstChild(Name) then
--Library.KeybindIndex = Library.KeybindIndex - 1;
Library.KeybindsContainer:FindFirstChild(Name):Destroy();
else
local NewBind = Instance.new("TextLabel")
NewBind.Name = Name
NewBind.Parent = Library.KeybindsContainer;
--NewBind.Position = UDim2.new(0, 0, 0, 2 +
(Library.KeybindIndex*10));
NewBind.BackgroundColor3 = Color3.fromRGB(17, 17, 17)
NewBind.BackgroundTransparency = 1.000
NewBind.BorderColor3 = Color3.fromRGB(0, 0, 0)
NewBind.Size = UDim2.new(1, 0, 0, 9)
NewBind.FontFace = Library.MenuFont
NewBind.Text = Name .. (" [%s]"):format(Key);
NewBind.TextColor3 = Library.Theme.ElementOn;
NewBind.TextSize = Library.TextSize
NewBind.TextStrokeTransparency = 0.000
NewBind.TextWrapped = true
NewBind.TextXAlignment = Enum.TextXAlignment.Left;
--Library.KeybindIndex = Library.KeybindIndex+1;
end;
end;
end;
end;
do --// Configs
function Library:GetConfig()
local Config = {}
function Library:SaveConfig(ConfigName)
local _, Encoded = Library:GetConfig();
function Library:DeleteConfig(ConfigName)
if isfile("Ethereal/Configs/"..ConfigName..".txt") then
delfile("Ethereal/Configs/"..ConfigName..".txt");
end;
end;
function Library:LoadConfig(Config)
if not Config or Config == nil then
Library:Notify("Config not found, did you possibly delete
it and not reselect a new one?");
return
end;
if ToLib then
if rawget(ToLib, "Key") and type(Value) ~=
"boolean" then
if
table.find({"MouseButton1","MouseWheel","MouseButton2","MouseButton3"},
tostring(Value.Name)) then
ToLib:Set(Value, true)
else
ToLib:Set(Value);
end
elseif rawget(ToLib, "Color") then
ToLib:Set({
Color = Color3.new(Value.Color.R,
Value.Color.G, Value.Color.B),
Transparency = Value.Transparency
});
elseif rawget(ToLib, "Value") and not
rawget(ToLib, "Color") and not rawget(ToLib, "Key") then
if rawget(ToLib, "Multi") and type(Value)
~= "table" then
ToLib:Set({Value})
else
if ToLib.Min then
if Value > ToLib.Max then
ToLib:Set(ToLib.Max);
else
ToLib:Set(Value);
end;
else
ToLib:Set(Value);
end;
end
else
ToLib:Set(Value)
end;
end;
end);
if not Succ and Err then warn("[Ethereal ERROR]:
"..tostring(Err)) end;
end);
end;
end;
end;
function Library:NewWindow(Data)
local Window = {
TabAmount = 0;
Name = Data.Name;
Tabs = {};
DefaultSize = Data.Size or UDim2.new(0, 583, 0, 753);
ImportantIndex = 9999999;
CurrentTab = nil;
};
LibraryScreenGui = Instance.new("ScreenGui");
LibraryScreenGui.Parent = gethui();
LibraryScreenGui.Enabled = false;
LibraryMouseGui = Instance.new("ScreenGui");
LibraryMouseGui.Parent = gethui();
LibraryMouseGui.Enabled = false;
LibraryMouseGui.Name =
"9391203j312i3kashd9q312093ajsdokake219183213h";
LibraryMouseGui.IgnoreGuiInset = true;
LibraryMouseGui.Enabled = true;
Mouse.Move:Connect(function()
if LibraryScreenGui.Enabled then
LibraryMouseGui.Enabled = true;
MouseLocation = UserInputService:GetMouseLocation();
MouseCursor.Position = UDim2.new(0, MouseLocation.X - 18,
0, MouseLocation.Y - 18);
else
LibraryMouseGui.Enabled = false;
end;
end);
local TabSize = 545 / Window.TabAmount;
local Title = Instance.new("TextLabel")
local WindowBorder = Instance.new("TextButton");
local BorderInner = Instance.new("Frame")
local WorkspaceOutter = Instance.new("Frame");
local WorkspaceInner = Instance.new("Frame");
local Tabs = Instance.new("Frame");
local TabsLayout = Instance.new("UIListLayout");
local Resizer = Instance.new("ImageButton");
Window.MainFrame = WindowBorder;
WindowBorder.AutoButtonColor = false;
WindowBorder.Text = ""
WindowBorder.Parent = LibraryScreenGui
WindowBorder.BackgroundColor3 = Library.Theme.LightContrast
WindowBorder.BorderColor3 = Library.Theme.Border
WindowBorder.Position = UDim2.new(0.104468189, 0, 0.202439025,
0)
WindowBorder.Size = Window.DefaultSize;
UIShadow.Parent = WindowBorder;
UIShadow.Image = "rbxassetid://6015897843";
UIShadow.ScaleType = Enum.ScaleType.Slice;
UIShadow.SliceCenter = Rect.new(49, 49, 450, 450);
UIShadow.ImageColor3 = Library.Theme.Accent;
UIShadow.ImageTransparency = 0.5;
UIShadow.BackgroundTransparency = 1;
UIShadow.Size = UDim2.new(1, 47, 1, 47);
UIShadow.Position = UDim2.new(0.5, 0, 0.5, 0);
UIShadow.AnchorPoint = Vector2.new(0.5, 0.5);
VisibleBorder.Parent = WindowBorder;
VisibleBorder.Size = UDim2.new(1, 0, 1, 0);
VisibleBorder.BackgroundColor3 = Library.Theme.LightContrast;
VisibleBorder.BorderColor3 = Library.Theme.Border;
BorderInner.Parent = WindowBorder
BorderInner.BackgroundColor3 = Library.Theme.VeryDarkContrast
BorderInner.BorderColor3 = Library.Theme.Border
BorderInner.Position = UDim2.new(0, 2, 0, 2)
BorderInner.Size = UDim2.new(1, -4, 1, -4)
Resizer.Parent = BorderInner
Resizer.BackgroundColor3 = Library.Theme.Accent
Resizer.BackgroundTransparency = 1.000
Resizer.BorderColor3 = Color3.fromRGB(0, 0, 0)
Resizer.BorderSizePixel = 0
Resizer.Position = UDim2.new(1, -12, 1, -12)
Resizer.Size = UDim2.new(0, 12, 0, 12)
Resizer.Image = "rbxassetid://7368471234"
Resizer.ImageColor3 = Library.Theme.Accent;
Resizer.AutoButtonColor = false;
if not IsElectron then
Resizer.Modal = true;
end
WorkspaceOutter.Parent = BorderInner
WorkspaceOutter.BackgroundColor3 = Library.Theme.LightContrast
WorkspaceOutter.BorderColor3 = Library.Theme.Border
WorkspaceOutter.Position = UDim2.new(0, 5, 0, 20)
WorkspaceOutter.Size = UDim2.new(1, -15, 1, -32)
WorkspaceInner.Parent = WorkspaceOutter
WorkspaceInner.BackgroundColor3 =
Library.Theme.VeryDarkContrast
WorkspaceInner.BorderColor3 = Library.Theme.Border
WorkspaceInner.NextSelectionUp = WorkspaceOutter
WorkspaceInner.Position = UDim2.new(0, 2, 0, 2)
WorkspaceInner.Size = UDim2.new(1, -4, 1, -4)
Tabs.Parent = WorkspaceInner
Tabs.BackgroundColor3 = Library.Theme.ElementOn
Tabs.BackgroundTransparency = 1.000
Tabs.BorderColor3 = Library.Theme.Border
Tabs.BorderSizePixel = 0
Tabs.Position = UDim2.new(0.0136363637, 0, 0, 0)
Tabs.Size = UDim2.new(1, -15, 0, 24)
TabsLayout.Parent = Tabs
TabsLayout.FillDirection = Enum.FillDirection.Horizontal
TabsLayout.SortOrder = Enum.SortOrder.LayoutOrder
PageArea.Parent = WorkspaceInner
PageArea.BackgroundColor3 = Library.Theme.LightContrast
PageArea.BorderColor3 = Library.Theme.Border
PageAreaInner.Parent = PageArea
PageAreaInner.BackgroundColor3 = Library.Theme.DarkContrast
PageAreaInner.BorderColor3 = Library.Theme.Border
PageAreaInner.Position = UDim2.new(0, 2, 0, 2)
PageAreaInner.Size = UDim2.new(1, -4, 1, -4)
TabTransitioner.Parent = PageAreaInner;
TabTransitioner.BackgroundColor3 = Library.Theme.DarkContrast;
TabTransitioner.BorderSizePixel = 0;
TabTransitioner.Size = UDim2.new(1, -4, 1, -4);
TabTransitioner.Position = UDim2.new(0, 2, 0, 2);
TabTransitioner.ZIndex = 1000;
TabTransitioner.Name = "TabTransitioner";
TabTransitioner2.Parent = PageAreaInner;
TabTransitioner2.BackgroundColor3 = Library.Theme.DarkContrast;
TabTransitioner2.BorderSizePixel = 0;
TabTransitioner2.Size = UDim2.new(1, -4, 1, -24);
TabTransitioner2.Position = UDim2.new(0, 2, 0, 26);
TabTransitioner2.ZIndex = 1000;
TabTransitioner2.Name = "TabTransitioner2";
Title.Parent = WindowBorder
Title.BackgroundColor3 = Library.Theme.ElementOn
Title.BackgroundTransparency = 1.000
Title.BorderColor3 = Library.Theme.Border
Title.BorderSizePixel = 0
Title.Position = UDim2.new(0, 0, 0, 5);
Title.Size = UDim2.new(1, 0, 0, 15)
Title.FontFace = Library.MenuFont
Title.RichText = true;
Title.Text = ("Ethereal | <font color =\"rgb(%d, %d, %d)\">
%s</font>"):format(Library.Theme.Accent.R * 255, Library.Theme.Accent.G * 255,
Library.Theme.Accent.B * 255, GameName);
Window.TitleLabel = Title;
Title.TextColor3 = Library.Theme.ElementOn
Title.TextSize = Library.TextSize
end;
Input.Changed:Connect(function()
if Input.UserInputState ==
Enum.UserInputState.End then
Dragging = false;
VisibleBorder.BackgroundColor3 =
Library.Theme.LightContrast
WindowBorder.BackgroundColor3 =
Library.Theme.LightContrast
end;
end);
end;
end);
WindowBorder.InputChanged:Connect(function(Input)
if Input.UserInputType ==
Enum.UserInputType.MouseMovement or Input.UserInputType == Enum.UserInputType.Touch
then
DragInput = Input;
end;
end);
end;
do --// Resizer
Resizer.InputBegan:Connect(function(Input)
if Input.UserInputType ==
Enum.UserInputType.MouseButton1 or Input.UserInputType == Enum.UserInputType.Touch
then
IsResizing = true;
if not LastPosition then
StartSize = WindowBorder.AbsoluteSize;
LastPosition = Vector2.new(Mouse.X,
Mouse.Y);
end;
Input.Changed:Connect(function()
if Input.UserInputState ==
Enum.UserInputState.End then
IsResizing = false;
StartSize = WindowBorder.AbsoluteSize;
LastPosition = nil;
end;
end);
end;
end);
Resizer.InputChanged:Connect(function(Input)
if Input.UserInputType ==
Enum.UserInputType.MouseMovement or Input.UserInputType == Enum.UserInputType.Touch
then
ResizeInput = Input;
end;
end);
end;
do --// UserinputService
UserInputService.InputChanged:Connect(function(Input)
if Input == DragInput and Dragging then
Library:MakeDraggable(Input, WindowBorder,
VisibleBorder);
end;
end;
end;
ColorFrame.BackgroundColor3 =
Library.Theme.LightContrast
ColorFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
ColorFrame.BorderSizePixel = 0
--{-10, 0},{3, 0}
ColorFrame.Position = UDim2.new(-10, 20, 3, 0)
ColorFrame.Size = UDim2.new(0, 200, 0, 240);
ColorFrame.Visible = false
ColorFrame.ZIndex = 11;
Innercolor.Name = "Innercolor"
Innercolor.Parent = ColorFrame
Innercolor.BackgroundColor3 =
Library.Theme.DarkContrast
Innercolor.BorderColor3 = Color3.fromRGB(0, 0, 0)
Innercolor.BorderSizePixel = 1
Innercolor.Position = UDim2.new(0, 2, 0, 2)
Innercolor.Size = UDim2.new(1, -4, 1, -4)
HueOutline.Name = "HueOutline"
HueOutline.Parent = Innercolor
HueOutline.BackgroundColor3 =
Library.Theme.LightContrast
HueOutline.BorderColor3 = Color3.fromRGB(0, 0, 0)
HueOutline.BorderSizePixel = 1
HueOutline.Position = UDim2.new(0.899999976, -5,
0.00600000005, 0)
HueOutline.Size = UDim2.new(0, 23, 0, 162)
HuePicker.Name = "HuePicker"
HuePicker.Parent = HueOutline
HuePicker.BackgroundColor3 =
Color3.fromRGB(255,255,255)
HuePicker.BorderColor3 = Color3.fromRGB(0, 0, 0)
HuePicker.BorderSizePixel = 1
HuePicker.Position = UDim2.new(0, 2, 0, 2)
HuePicker.Size = UDim2.new(1, -4, 1, -4)
HuePicker.AutoButtonColor = false
HuePicker.FontFace = Library.MenuFont
HuePicker.Text = ""
HuePicker.TextColor3 = Color3.fromRGB(0, 0, 0)
HuePicker.TextSize = Library.TextSize
UIGradient.Color =
ColorSequence.new{ColorSequenceKeypoint.new(0.00, Color3.fromRGB(255, 0, 0)),
ColorSequenceKeypoint.new(0.17, Color3.fromRGB(255, 0, 255)),
ColorSequenceKeypoint.new(0.33, Color3.fromRGB(0, 0, 255)),
ColorSequenceKeypoint.new(0.50, Color3.fromRGB(0, 255, 255)),
ColorSequenceKeypoint.new(0.67, Color3.fromRGB(0, 255, 0)),
ColorSequenceKeypoint.new(0.83, Color3.fromRGB(255, 255, 0)),
ColorSequenceKeypoint.new(1.00, Color3.fromRGB(255, 0, 0))}
UIGradient.Rotation = 90
UIGradient.Parent = HuePicker
HuePick.Name = "HuePick"
HuePick.Parent = HuePicker
HuePick.BackgroundColor3 = Library.Theme.ElementOn
HuePick.BorderColor3 = Color3.fromRGB(0, 0, 0)
HuePick.Size = UDim2.new(1, 0, 0, 1)
PickerOutline_3.Name = "PickerOutline"
PickerOutline_3.Parent = Innercolor
PickerOutline_3.BackgroundColor3 =
Library.Theme.LightContrast
PickerOutline_3.BorderColor3 = Color3.fromRGB(0, 0, 0)
PickerOutline_3.BorderSizePixel = 1
PickerOutline_3.Position = UDim2.new(0, 2, 0, 2)
PickerOutline_3.Size = UDim2.new(0, 162, 0, 162)
ColorPicker.Name = "ColorPicker"
ColorPicker.Parent = PickerOutline_3
ColorPicker.BackgroundColor3 = Color3.fromRGB(255, 255,
255)
ColorPicker.BorderColor3 = Color3.fromRGB(0, 0, 0)
ColorPicker.BorderSizePixel = 1
ColorPicker.Position = UDim2.new(0, 2, 0, 2)
ColorPicker.Size = UDim2.new(1, -4, 1, -4)
ColorPicker.Image = "rbxassetid://4155801252"
ColorPicker.ImageColor3 = Color3.fromRGB(255, 0, 2)
ColorPicker.AutoButtonColor = false;
ColorPick.Name = "ColorPick"
ColorPick.Parent = ColorPicker
ColorPick.BackgroundColor3 = Library.Theme.ElementOn
ColorPick.BorderColor3 = Color3.fromRGB(0, 0, 0)
ColorPick.Size = UDim2.new(0, 1, 0, 1)
TOutline.Name = "TOutline"
TOutline.Parent = Innercolor
TOutline.BackgroundColor3 = Library.Theme.LightContrast
TOutline.BorderColor3 = Color3.fromRGB(0, 0, 0)
TOutline.BorderSizePixel = 1
TOutline.Position = UDim2.new(0, 2, 0, 169)
TOutline.Size = UDim2.new(1, -4, 0, 20)
TransparencyPicker.Name = "TransparencyPicker"
TransparencyPicker.Parent = TOutline
TransparencyPicker.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
TransparencyPicker.BackgroundTransparency = 0
TransparencyPicker.BorderColor3 = Color3.fromRGB(0, 0,
0)
TransparencyPicker.BorderSizePixel = 0;
TransparencyPicker.Position = UDim2.new(0, 2, 0, 2)
TransparencyPicker.Size = UDim2.new(1, -4, 1, -4)
TransparencyPicker.ScaleType = Enum.ScaleType.Tile
TransparencyPicker.TileSize = UDim2.new(0, 10, 0, 10)
TransparencyPicker.AutoButtonColor = false;
TransparencyColor.Name = "TransparencyColor"
TransparencyColor.Parent = TransparencyPicker
TransparencyColor.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
TransparencyColor.BackgroundTransparency = 0;
TransparencyColor.BorderColor3 = Color3.fromRGB(0, 0,
0)
TransparencyColor.BorderSizePixel = 1;
TransparencyColor.Size = UDim2.new(1, 0, 1, 0)
TransparencyColor.Position = UDim2.new(0, 0, 0, 0)
TransparencyColor.Image = "rbxassetid://3887017050"
TransparencyColor.ImageColor3 = Color3.fromRGB(255, 0,
0)
TransparencyPick.Name = "TransparencyPick"
TransparencyPick.Parent = TransparencyPicker
TransparencyPick.BackgroundColor3 = Color3.fromRGB(255,
255, 255)
TransparencyPick.BorderColor3 = Color3.fromRGB(0, 0, 0)
TransparencyPick.Size = UDim2.new(0, 1, 1, 0)
TitleFrame.Name = "TitleFrame"
TitleFrame.Parent = ColorFrame
TitleFrame.BackgroundColor3 =
Library.Theme.LightContrast
TitleFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
TitleFrame.BorderSizePixel = 0
TitleFrame.Position = UDim2.new(0, 0, 0, -14)
TitleFrame.Size = UDim2.new(1, 0, 0, 15)
ColorpickerTitle_2.Name = "ColorpickerTitle"
ColorpickerTitle_2.Parent = TitleFrame
ColorpickerTitle_2.BackgroundColor3 =
Library.Theme.MedianContrast
ColorpickerTitle_2.BorderColor3 = Color3.fromRGB(0, 0,
0)
ColorpickerTitle_2.BorderSizePixel = 1
ColorpickerTitle_2.Position = UDim2.new(0, 2, 0, 2)
ColorpickerTitle_2.Size = UDim2.new(1, -4, 1, -4)
ColorpickerTitle_2.FontFace = Library.MenuFont
ColorpickerTitle_2.Text = Name
ColorpickerTitle_2.TextColor3 = Library.Theme.ElementOn
ColorpickerTitle_2.TextSize = Library.TextSize
ColorpickerTitle_2.TextWrapped = true;
CopyButtonOutter.Name = "Copy"
CopyButtonOutter.Parent = Innercolor
CopyButtonOutter.BackgroundColor3 = Color3.fromRGB(37,
37, 37)
CopyButtonOutter.BorderColor3 = Color3.fromRGB(0, 0, 0)
CopyButtonOutter.Position = UDim2.new(0, 2, 0, 193)
CopyButtonOutter.Size = UDim2.new(0, 93, 0, 18)
CopyButton.Name = "CopyButton"
CopyButton.Parent = CopyButtonOutter
CopyButton.BackgroundColor3 =
Library.Theme.MedianContrast
CopyButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
CopyButton.Position = UDim2.new(0, 2, 0, 2)
CopyButton.Size = UDim2.new(1, -4, 1, -4)
CopyButton.FontFace = Library.MenuFont;
CopyButton.Text = "Copy"
CopyButton.TextColor3 = Color3.fromRGB(255, 255, 255)
CopyButton.TextSize = Library.TextSize
CopyButton.AutoButtonColor = false;
PasteButtonOutter.Name = "Paster"
PasteButtonOutter.Parent = Innercolor
PasteButtonOutter.BackgroundColor3 = Color3.fromRGB(37,
37, 37)
PasteButtonOutter.BorderColor3 = Color3.fromRGB(0, 0,
0)
PasteButtonOutter.Position = UDim2.new(0, 101, 0, 193)
PasteButtonOutter.Size = UDim2.new(0, 93, 0, 18)
PasteButton.Name = "PasteButton"
PasteButton.Parent = PasteButtonOutter
PasteButton.BackgroundColor3 =
Library.Theme.MedianContrast
PasteButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
PasteButton.Position = UDim2.new(0, 2, 0, 2)
PasteButton.Size = UDim2.new(1, -4, 1, -4)
PasteButton.FontFace = Library.MenuFont;
PasteButton.AutoButtonColor = false;
PasteButton.Text = "Paste"
PasteButton.TextColor3 = Color3.fromRGB(255, 255, 255)
PasteButton.TextSize = Library.TextSize
SetBoxOutter.Name = "Setbox"
SetBoxOutter.Parent = Innercolor
SetBoxOutter.BackgroundColor3 = Color3.fromRGB(37, 37,
37)
SetBoxOutter.BorderColor3 = Color3.fromRGB(0, 0, 0)
SetBoxOutter.Position = UDim2.new(0, 2, 0, 216)
SetBoxOutter.Size = UDim2.new(0, 192, 0, 18)
SetBox.Name = "SetBox"
SetBox.Parent = SetBoxOutter
SetBox.BackgroundColor3 = Library.Theme.MedianContrast
SetBox.BorderColor3 = Color3.fromRGB(0, 0, 0)
SetBox.Position = UDim2.new(0, 2, 0, 2)
SetBox.Size = UDim2.new(1, -4, 1, -4)
SetBox.FontFace = Library.MenuFont;
SetBox.Text = "";
SetBox.TextColor3 = Color3.fromRGB(255, 255, 255)
SetBox.TextSize = Library.TextSize
end;
end;
function Window:SetTab(Name)
Window.CurrentTab = Name;
Window:TransitionTab(false, false);
for Index, Value in next, Window.Tabs do
if not Value.Name:find("Nested") then
local TabName = Value.Name;
local TabButton = Value.Button;
--local Underline = Value.Underline;
if Name ~= TabName then
Library:Tween(TabButton, TweenInfo.new(0.3,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
--Library:Tween(Underline, TweenInfo.new(0.3,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BackgroundTransparency = 1});
Value.Page.Visible = false;
Value.IsOpen = false;
if Value.IncludeNested then
for Index2, Value2 in next,
Value.NestedTabs do
Value2.Page.Visible = false;
Value2.IsOpen = false;
if Value2.Button then
Library:Tween(Value2.Button,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
--Library:Tween(Value2.Underline,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundTransparency = 0});
end;
end;
end;
else
Library:Tween(TabButton, TweenInfo.new(0.3,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
--Library:Tween(Underline, TweenInfo.new(0.3,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BackgroundTransparency = 0});
Value.Page.Visible = true;
Value.IsOpen = true;
if Value.LastOpenedTab then
Value:SetTab(Value.LastOpenedTab, true)
end;
end;
end;
end;
end;
function Window:UpdateTabs()
local TabSize = Tabs.AbsoluteSize.X / Window.TabAmount;
for Index, Value in next, Window.Tabs do
Value.Button.Size = UDim2.new(0, TabSize, 0, 26);
end;
end;
function Window:NewTab(Data)
local Tab = {
Name = Data.Name;
Sections = {};
NestedTabs = {};
Page = nil;
IsOpen = false;
SectionZIndex = 1000;
IncludeNested = Data.IncludeNested;
Left = nil;
Right = nil;
TabAmount = 0;
LastOpenedTab = nil;
IsPlayerlist = Data.IsPlayerlist;
Playerlist = {};
SelectedPlayer = nil;
};
Window.TabAmount = Window.TabAmount + 1;
Tab.__index = Tab;
do --// Elements
local TabButton = Instance.new("TextButton");
--local TabUnderline = Instance.new("Frame");
local TabGradient = Instance.new("UIGradient");
Left = Instance.new("Frame");
local LeftPadding = Instance.new("UIPadding");
local LeftListLayout = Instance.new("UIListLayout");
Tab.Left = Left;
Right = Instance.new("Frame");
local RightListLayout = Instance.new("UIListLayout");
local RightPadding = Instance.new("UIPadding");
Tab.Right = Right;
CurrentPage.Visible = false;
Left.Name = "Left"
Left.Parent = CurrentPage
Left.BackgroundColor3 = Library.Theme.ElementOn
Left.BackgroundTransparency = 1.000
Left.BorderColor3 = Library.Theme.Border
Left.BorderSizePixel = 0
Left.Size = UDim2.new(0.5, -3, 1, 0)
LeftPadding.Name = "LeftPadding"
LeftPadding.Parent = Tab.Left
LeftPadding.PaddingTop = UDim.new(0, 9)
LeftPadding.PaddingLeft = UDim.new(0, 2);
LeftListLayout.Name = "LeftListLayout"
LeftListLayout.Parent = Tab.Left
LeftListLayout.SortOrder =
Enum.SortOrder.LayoutOrder
LeftListLayout.Padding = UDim.new(0, 8);
Right.Name = "Right"
Right.Parent = CurrentPage
Right.BackgroundColor3 = Library.Theme.ElementOn
Right.BackgroundTransparency = 1.000
Right.BorderColor3 = Library.Theme.Border
Right.BorderSizePixel = 0
Right.Position = UDim2.new(0.5, 3, 0, 0)
Right.Size = UDim2.new(0.5, -3, 1, 0)
RightListLayout.Name = "RightListLayout"
RightListLayout.Parent = Tab.Right
RightListLayout.SortOrder =
Enum.SortOrder.LayoutOrder
RightListLayout.Padding = UDim.new(0, 8);
RightPadding.Name = "RightPadding";
RightPadding.Parent = Tab.Right;
RightPadding.PaddingTop = UDim.new(0, 9);
RightPadding.PaddingRight = UDim.new(0, 2);
TabButton.Name = "TabButton"
TabButton.Parent = Tabs
TabButton.BackgroundColor3 =
Library.Theme.ElementOn
TabButton.BackgroundTransparency = 1.000
TabButton.BorderColor3 = Library.Theme.Border
TabButton.BorderSizePixel = 0
TabButton.Size = UDim2.new(0, TabSize, 0, 26)
TabButton.FontFace = Library.MenuFont
TabButton.Text = Tab.Name;
Tab.Button = TabButton;
TabButton.TextColor3 = Library.Theme.ElementOff
TabButton.TextSize = Library.TextSize
--[[TabUnderline.Name = "TabUnderline"
TabUnderline.Parent = TabButton
TabUnderline.BackgroundColor3 =
Library.Theme.ElementOn
TabUnderline.BorderColor3 = Library.Theme.Border
TabUnderline.BorderSizePixel = 0
TabUnderline.Position = UDim2.new(0, 0, 1, -5)
TabUnderline.Size = UDim2.new(1, 0, 0, 1)
TabUnderline.BackgroundTransparency = 1;
TabUnderline.Visible = true;]]
--Tab.Underline = TabUnderline;
--TabGradient.Color =
ColorSequence.new{ColorSequenceKeypoint.new(0.00, Library.Theme.DarkContrast),
ColorSequenceKeypoint.new(0.50, Library.Theme.Accent),
ColorSequenceKeypoint.new(1.00, Library.Theme.DarkContrast)}
--TabGradient.Name = "TabGradient"
--TabGradient.Parent = TabUnderline
TabButton.MouseButton1Down:Connect(function()
Window:SetTab(Tab.Name);
end);
TabButton.MouseEnter:Connect(function()
Library:Tween(TabButton, TweenInfo.new(0.1,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
end);
TabButton.MouseLeave:Connect(function()
if Tab.IsOpen == false or not Tab.IsOpen then
Library:Tween(TabButton, TweenInfo.new(0.1,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
end;
end);
end;
do --// If is nested
if Data.IncludeNested then
NestedTabsOutline = Instance.new("Frame");
NestedTabs = Instance.new("Frame");
local NestedLayout =
Instance.new("UIListLayout");
do --// Properties
NestedTabsOutline.Parent = CurrentPage;
NestedTabsOutline.BorderColor3 =
Library.Theme.Border;
NestedTabsOutline.Size = UDim2.new(1, 0, 0,
24);
NestedTabsOutline.BackgroundColor3 =
Library.Theme.LightContrast;
NestedTabs.Parent = NestedTabsOutline;
NestedTabs.Size = UDim2.new(1, -4, 1, -4);
NestedTabs.Position = UDim2.new(0, 2, 0,
2);
NestedTabs.BackgroundColor3 =
Library.Theme.DarkContrast;
NestedTabs.BorderColor3 =
Library.Theme.Border;
NestedLayout.Parent = NestedTabs
NestedLayout.FillDirection =
Enum.FillDirection.Horizontal
NestedLayout.SortOrder =
Enum.SortOrder.LayoutOrder
end;
end;
end;
Tab.Page = CurrentPage;
if Tab.IsPlayerlist then
Left:Destroy();
Right:Destroy();
Tab.PlayerTitle = PlayerlistTitle;
do --// Elements
do --// Element Properties
PlayerlistBorder.Name = "PlayerlistBorder"
PlayerlistBorder.Parent = CurrentPage
PlayerlistBorder.BackgroundColor3 =
Library.Theme.LightContrast;
PlayerlistBorder.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerlistBorder.Position = UDim2.new(0, 2,
0, 2)
PlayerlistBorder.Size = UDim2.new(1, -4, 1,
1)
PlayerlistInner.Name = "PlayerlistInner"
PlayerlistInner.Parent = PlayerlistBorder
PlayerlistInner.BackgroundColor3 =
Library.Theme.DarkContrast
PlayerlistInner.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerlistInner.Position = UDim2.new(0, 2,
0, 2)
PlayerlistInner.Size = UDim2.new(1, -4, 1,
-4)
PlayerlistTitle.Name = "PlayerlistTitle"
PlayerlistTitle.Parent = PlayerlistInner
PlayerlistTitle.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
PlayerlistTitle.BackgroundTransparency =
1.000
PlayerlistTitle.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerlistTitle.BorderSizePixel = 0
PlayerlistTitle.Position = UDim2.new(0, 6,
0, 4)
PlayerlistTitle.Size = UDim2.new(0, 50, 0,
14)
PlayerlistTitle.FontFace = Library.MenuFont
PlayerlistTitle.Text = "Player List
(Displaying ??)"
PlayerlistTitle.TextColor3 =
Color3.fromRGB(255, 255, 255)
PlayerlistTitle.TextSize = Library.TextSize
PlayerlistTitle.TextXAlignment =
Enum.TextXAlignment.Left
PlayerlistTitle.TextYAlignment =
Enum.TextYAlignment.Top
ScrollingBorder.Name = "ScrollingBorder"
ScrollingBorder.Parent = PlayerlistInner
ScrollingBorder.BackgroundColor3 =
Library.Theme.LightContrast
ScrollingBorder.BorderColor3 =
Color3.fromRGB(0, 0, 0)
ScrollingBorder.Position = UDim2.new(0, 6,
0, 18)
ScrollingBorder.Size = UDim2.new(1, -12,
0.5, 0)
PlayersList.Name = "PlayersList"
PlayersList.Parent = ScrollingBorder
PlayersList.Active = true
PlayersList.BackgroundColor3 =
Library.Theme.DarkContrast
PlayersList.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayersList.Position = UDim2.new(0, 2, 0,
2)
PlayersList.Size = UDim2.new(1, -4, 1, -4)
PlayersList.ScrollBarThickness = 0
PlayersList.AutomaticCanvasSize =
Enum.AutomaticSize.Y;
UIPadding.Parent = PlayersList
UIPadding.PaddingLeft = UDim.new(0, 4)
UIPadding.PaddingTop = UDim.new(0, 2)
UIListLayout.Parent = PlayersList
UIListLayout.SortOrder =
Enum.SortOrder.LayoutOrder
UIListLayout.Padding = UDim.new(0, 2)
PlayerInteractionBorder.Name =
"PlayerInteractionBorder"
PlayerInteractionBorder.Parent =
PlayerlistInner
PlayerInteractionBorder.BackgroundColor3 =
Color3.fromRGB(37, 37, 37)
PlayerInteractionBorder.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerInteractionBorder.BorderSizePixel = 0
PlayerInteractionBorder.Position =
UDim2.new(0, 6, 0.5, 23)
PlayerInteractionBorder.Size = UDim2.new(1,
-12, 0.5, -249)
InteractionInner.Name = "InteractionInner"
InteractionInner.Parent =
PlayerInteractionBorder
InteractionInner.BackgroundColor3 =
Color3.fromRGB(18, 18, 18)
InteractionInner.BorderColor3 =
Color3.fromRGB(0, 0, 0)
InteractionInner.Position = UDim2.new(0, 2,
0, 2)
InteractionInner.Size = UDim2.new(1, -4, 1,
-4)
PlayerBorder.Name = "PlayerBorder"
PlayerBorder.Parent = InteractionInner
PlayerBorder.BackgroundColor3 =
Color3.fromRGB(37, 37, 37)
PlayerBorder.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerBorder.Position = UDim2.new(0, 4, 0,
3)
PlayerBorder.Size = UDim2.new(0, 100, 0,
100)
Headshot.Name = "Headshot"
Headshot.Parent = PlayerBorder
Headshot.BackgroundColor3 =
Color3.fromRGB(18, 18, 18)
Headshot.BorderColor3 = Color3.fromRGB(0,
0, 0)
Headshot.Position = UDim2.new(0, 2, 0, 2)
Headshot.Size = UDim2.new(1, -4, 1, -4)
if GameName ~= 'Fallen' then
Headshot.Image = ""
end;
PlayerId.Name = "PlayerId"
PlayerId.Parent = PlayerBorder
PlayerId.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
PlayerId.BackgroundTransparency = 1.000
PlayerId.BorderColor3 = Color3.fromRGB(0,
0, 0)
PlayerId.BorderSizePixel = 0
PlayerId.Position = UDim2.new(0, 106, 0, 4)
PlayerId.Size = UDim2.new(0, 50, 0, 9)
PlayerId.FontFace = Library.MenuFont;
PlayerId.Text = ""
PlayerId.TextColor3 = Color3.fromRGB(255,
255, 255)
PlayerId.TextSize = Library.TextSize
PlayerId.TextXAlignment =
Enum.TextXAlignment.Left
PlayerId.TextYAlignment =
Enum.TextYAlignment.Top
PlayerName_2.Name = "PlayerName"
PlayerName_2.Parent = PlayerBorder
PlayerName_2.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
PlayerName_2.BackgroundTransparency = 1.000
PlayerName_2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerName_2.BorderSizePixel = 0
PlayerName_2.Position = UDim2.new(0, 106,
0, 14)
PlayerName_2.Size = UDim2.new(0, 50, 0, 9)
PlayerName_2.FontFace = Library.MenuFont;
PlayerName_2.Text = ""
PlayerName_2.TextColor3 =
Color3.fromRGB(255, 255, 255)
PlayerName_2.TextSize = Library.TextSize
PlayerName_2.TextXAlignment =
Enum.TextXAlignment.Left
PlayerName_2.TextYAlignment =
Enum.TextYAlignment.Top
PlayerDisplay.Name = "PlayerDisplay"
PlayerDisplay.Parent = PlayerBorder
PlayerDisplay.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
PlayerDisplay.BackgroundTransparency =
1.000
PlayerDisplay.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerDisplay.BorderSizePixel = 0
PlayerDisplay.Position = UDim2.new(0, 106,
0, 24)
PlayerDisplay.Size = UDim2.new(0, 50, 0, 9)
PlayerDisplay.FontFace = Library.MenuFont;
PlayerDisplay.Text = ""
PlayerDisplay.TextColor3 =
Color3.fromRGB(255, 255, 255)
PlayerDisplay.TextSize = Library.TextSize
PlayerDisplay.TextXAlignment =
Enum.TextXAlignment.Left
PlayerDisplay.TextYAlignment =
Enum.TextYAlignment.Top
FriendlyBorder.Name = "FriendlyBorder"
FriendlyBorder.Parent = InteractionInner
FriendlyBorder.BackgroundColor3 =
Color3.fromRGB(37, 37, 37)
FriendlyBorder.BorderColor3 =
Color3.fromRGB(0, 0, 0)
FriendlyBorder.Position = UDim2.new(1, -
104, 0, 4)
FriendlyBorder.Size = UDim2.new(0, 100, 0,
18)
MakeFriendly.Name = "MakeFriendly"
MakeFriendly.Parent = FriendlyBorder
MakeFriendly.BackgroundColor3 =
Library.Theme.MedianContrast
MakeFriendly.BorderColor3 =
Color3.fromRGB(0, 0, 0)
MakeFriendly.Position = UDim2.new(0, 2, 0,
2)
MakeFriendly.Size = UDim2.new(1, -4, 1, -4)
MakeFriendly.FontFace = Library.MenuFont;
MakeFriendly.Text = "Make Friendly"
MakeFriendly.TextColor3 =
Color3.fromRGB(60, 255, 0)
MakeFriendly.TextSize = Library.TextSize
MakeFriendly.AutoButtonColor = false;
MakeNeutral.Name = "MakeNeutral"
MakeNeutral.Parent = NeutralBorder
MakeNeutral.BackgroundColor3 =
Library.Theme.MedianContrast
MakeNeutral.BorderColor3 =
Color3.fromRGB(0, 0, 0)
MakeNeutral.Position = UDim2.new(0, 2, 0,
2)
MakeNeutral.Size = UDim2.new(1, -4, 1, -4)
MakeNeutral.FontFace = Library.MenuFont;
MakeNeutral.AutoButtonColor = false;
MakeNeutral.Text = "Make Neutral"
MakeNeutral.TextColor3 =
Color3.fromRGB(255, 255, 255)
MakeNeutral.TextSize = Library.TextSize
end;
end;
do --// Connections
MakeFriendly.MouseButton1Down:Connect(function()
if Tab.SelectedPlayer then
Visuals.Enemies[Tab.SelectedPlayer.Player].Info.IsFriendly = true;
Tab.SelectedPlayer.CurrentStatus =
"Friendly";
Tab.SelectedPlayer.PlayerRelation.Text
= "Friendly";
Library:Tween(Tab.SelectedPlayer.PlayerRelation, TweenInfo.new(0.1,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 = Color3.fromRGB(0,
255, 0)});
end;
Library:Tween(MakeFriendly,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Color3.fromRGB(0, 255, 0)});
task.wait(0.1)
Library:Tween(MakeFriendly,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
MakeFriendly.MouseEnter:Connect(function()
Library:Tween(MakeFriendly,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Color3.fromRGB(0, 255, 0)});
end);
MakeFriendly.MouseLeave:Connect(function()
Library:Tween(MakeFriendly,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Border});
end);
MakeNeutral.MouseButton1Down:Connect(function()
if Tab.SelectedPlayer then
Visuals.Enemies[Tab.SelectedPlayer.Player].Info.IsFriendly = false;
Tab.SelectedPlayer.CurrentStatus =
"Neutral";
Tab.SelectedPlayer.PlayerRelation.Text
= "Neutral";
Library:Tween(Tab.SelectedPlayer.PlayerRelation, TweenInfo.new(0.1,
Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 = Color3.fromRGB(255,
255, 255)});
end;
Library:Tween(MakeNeutral,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
task.wait(0.1)
Library:Tween(MakeNeutral,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
MakeNeutral.MouseEnter:Connect(function()
Library:Tween(MakeNeutral,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Accent});
end);
MakeNeutral.MouseLeave:Connect(function()
Library:Tween(MakeNeutral,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Border});
end);
end;
do --// Functions
function Tab.Playerlist:SetCurrent(Name)
local PlayerData = Tab.Playerlist[Name];
if not PlayerData then
Library:Notify("ERROR: PLAYER_DATA
<"..Name.."> NOT FOUND! FUNCTION <tab.Playerlist:SetCurrent>", 5,
Color3.fromRGB(255, 0, 0));
return;
end;
Tab.SelectedPlayer = PlayerData;
local ThumbnailType =
Enum.ThumbnailType.HeadShot
local ThumbnailSize =
Enum.ThumbnailSize.Size420x420
local Content, IsReady =
Players:GetUserThumbnailAsync(UserId, ThumbnailType, ThumbnailSize)
function Tab.Playerlist:Add(Data)
local PlayerData = {
Name = Data.Name;
DisplayName = Data.DisplayName;
Player = Data.Player;
UserId = Data.UserId;
CurrentStatus = "Neutral";
};
do --// Elements
local NewPlayer = Instance.new("Frame")
local InnerPlayer =
Instance.new("TextButton")
local PlayerName =
Instance.new("TextLabel")
local PlayerRelation =
Instance.new("TextLabel")
PlayerData.MainFrame = NewPlayer;
PlayerData.InnerFrame = InnerPlayer;
PlayerData.PlayerName = PlayerName;
PlayerData.PlayerRelation =
PlayerRelation;
do --// Properties
NewPlayer.Name = "NewPlayer"
NewPlayer.Parent = PlayersList
NewPlayer.BackgroundColor3 =
Library.Theme.LightContrast
NewPlayer.BorderColor3 =
Color3.fromRGB(0, 0, 0)
NewPlayer.Size = UDim2.new(1, -4,
0, 24)
InnerPlayer.Name = "InnerPlayer"
InnerPlayer.Parent = NewPlayer
InnerPlayer.BackgroundColor3 =
Library.Theme.MedianContrast
InnerPlayer.BorderColor3 =
Color3.fromRGB(0, 0, 0)
InnerPlayer.Position = UDim2.new(0,
2, 0, 2)
InnerPlayer.Size = UDim2.new(1, -4,
1, -4)
InnerPlayer.AutoButtonColor =
false;
InnerPlayer.Text = "";
PlayerName.Name = "PlayerName"
PlayerName.Parent = InnerPlayer
PlayerName.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
PlayerName.BackgroundTransparency =
1.000
PlayerName.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerName.BorderSizePixel = 0
PlayerName.Position = UDim2.new(0,
4, 0, 2)
PlayerName.Size = UDim2.new(0, 50,
1, -4)
PlayerName.FontFace =
Library.MenuFont;
PlayerName.Text = Data.Name;
PlayerName.TextColor3 =
Color3.fromRGB(255, 255, 255)
PlayerName.TextSize =
Library.TextSize
PlayerName.TextXAlignment =
Enum.TextXAlignment.Left
PlayerRelation.Name =
"PlayerRelation"
PlayerRelation.Parent = InnerPlayer
PlayerRelation.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
PlayerRelation.BackgroundTransparency = 1.000
PlayerRelation.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PlayerRelation.BorderSizePixel = 0
PlayerRelation.Position =
UDim2.new(1, -52, 0, 2)
PlayerRelation.Size = UDim2.new(0,
50, 1, -4)
PlayerRelation.FontFace =
Library.MenuFont;
PlayerRelation.Text = "Neutral"
PlayerRelation.TextColor3 =
Color3.fromRGB(255, 255, 255)
PlayerRelation.TextSize =
Library.TextSize
PlayerRelation.TextXAlignment =
Enum.TextXAlignment.Right;
end;
end;
do --// Functions/Connections
PlayerData.InnerFrame.MouseButton1Down:Connect(function()
Tab.Playerlist:SetCurrent(PlayerData.Name);
PlayerData.InnerFrame.MouseEnter:Connect(function()
PlayerData.InnerFrame.MouseLeave:Connect(function()
--[[Tab.Playerlist:Add({
Name = "DranghetaLurk";
DisplayName = "lurk";
Player = Client;
UserId = Client.UserId;
});]]
Players.PlayerAdded:Connect(function(Player)
if Player:IsA("Player") then
Tab.Playerlist:Add({
Name = Player.Name,
DisplayName = Player.DisplayName,
UserId = Player.UserId,
Player = Player
});
Players.PlayerRemoving:Connect(function(Player)
Tab.Playerlist[Player.Name].MainFrame:Destroy();
Tab.Playerlist[Player.Name] = nil;
Tab.PlayerTitle.Text = "Player List
(Displaying "..tostring(#Players:GetPlayers() - 1)..")"
end);
function Tab:Update()
Tab.TabAmount = Tab.TabAmount + 1;
function Tab:Add(Data)
local NewTab = {
Name = Data.Name;
Page = nil;
SectionZIndex = 1000;
Sections = {};
Parent = Tab;
IsOpen = false;
Left = nil;
Right = nil;
CurrentTab = nil;
};
do --// Elements
local NewPage = Instance.new("ImageLabel");
Left = Instance.new("Frame");
local LeftPadding = Instance.new("UIPadding");
local LeftListLayout =
Instance.new("UIListLayout");
NewTab.Left = Left;
Right = Instance.new("Frame");
local RightListLayout =
Instance.new("UIListLayout");
local RightPadding = Instance.new("UIPadding");
NewTab.Right = Right;
NewTab.Page = NewPage;
NewPage.Visible = false;
Left.Name = "Left"
Left.Parent = NewPage;
Left.BackgroundColor3 = Library.Theme.ElementOn
Left.BackgroundTransparency = 1.000
Left.BorderColor3 = Library.Theme.Border
Left.BorderSizePixel = 0
Left.Size = UDim2.new(0.5, -3, 1, 0)
Left.Position = UDim2.new(0, 0, 0, 24);
LeftPadding.Name = "LeftPadding"
LeftPadding.Parent = NewTab.Left
LeftPadding.PaddingTop = UDim.new(0, 9)
LeftListLayout.Name = "LeftListLayout"
LeftListLayout.Parent = NewTab.Left
LeftListLayout.SortOrder =
Enum.SortOrder.LayoutOrder
LeftListLayout.Padding = UDim.new(0, 8);
Right.Name = "Right"
Right.Parent = NewPage
Right.BackgroundColor3 =
Library.Theme.ElementOn
Right.BackgroundTransparency = 1.000
Right.BorderColor3 = Library.Theme.Border
Right.BorderSizePixel = 0
Right.Position = UDim2.new(0.5, 3, 0, 24)
Right.Size = UDim2.new(0.5, -3, 1, 0)
RightListLayout.Name = "RightListLayout"
RightListLayout.Parent = NewTab.Right
RightListLayout.SortOrder =
Enum.SortOrder.LayoutOrder
RightListLayout.Padding = UDim.new(0, 8);
RightPadding.Name = "RightPadding"
RightPadding.Parent = NewTab.Right
RightPadding.PaddingTop = UDim.new(0, 9)
TabButton.Name = "TabButton"
TabButton.Parent = NestedTabs
TabButton.BackgroundColor3 =
Library.Theme.ElementOn
TabButton.BackgroundTransparency = 1.000
TabButton.BorderColor3 = Library.Theme.Border
TabButton.BorderSizePixel = 0
TabButton.Size = UDim2.new(0,
NestedTabs.AbsoluteSize.X / Tab.TabAmount, 0, 24)
TabButton.FontFace = Library.MenuFont
TabButton.Text = NewTab.Name;
NewTab.Button = TabButton;
TabButton.TextColor3 = Library.Theme.ElementOff
TabButton.TextSize = Library.TextSize
--[[TabUnderline.Name = "TabUnderline"
TabUnderline.Parent = TabButton
TabUnderline.BackgroundColor3 =
Library.Theme.ElementOn
TabUnderline.BorderColor3 =
Library.Theme.Border
TabUnderline.BorderSizePixel = 0
TabUnderline.Position = UDim2.new(0, 0, 1, -5)
TabUnderline.Size = UDim2.new(1, 0, 0, 1)
TabUnderline.BackgroundTransparency = 1;
TabUnderline.Visible = false;]]
--NewTab.Underline = TabUnderline;
-- TabGradient.Color =
ColorSequence.new{ColorSequenceKeypoint.new(0.00, Library.Theme.DarkContrast),
ColorSequenceKeypoint.new(0.50, Library.Theme.Accent),
ColorSequenceKeypoint.new(1.00, Library.Theme.DarkContrast)}
--TabGradient.Name = "TabGradient"
--TabGradient.Parent = TabUnderline
TabButton.MouseButton1Down:Connect(function()
Tab:SetTab(NewTab.Name);
end);
TabButton.MouseEnter:Connect(function()
if Tab.CurrentTab == NewTab.Name then
Library:Tween(TabButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.Accent});
else
Library:Tween(TabButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
end;
end);
TabButton.MouseLeave:Connect(function()
if NewTab.IsOpen == false or not
NewTab.IsOpen then
Library:Tween(TabButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
end;
end);
end;
end;
Tab.NestedTabs[Data.Name] = NewTab;
Tab:Update()
return setmetatable(NewTab, Tab);
end;
function Tab:NewSection(Data)
local Section = {
Name = Data.Name;
Side = Data.Side;
DropdownZIndex = 10000;
Bounds = 14;
};
local SectionTitle = Instance.new("TextLabel");
local SectionBorder = Instance.new("Frame");
local SectionInner = Instance.new("Frame");
local SectionAccent = Instance.new("Frame");
local SectionGradient = Instance.new("UIGradient");
self.SectionZIndex = self.SectionZIndex - 1;
if Section.Side == "Left" then
SectionBorder.Parent = self.Left;
elseif Section.Side == "Right" then
SectionBorder.Parent = self.Right;
else
SectionBorder.Parent = self.Left;
end;
SectionInner.Name = "SectionInner"
SectionInner.Parent = SectionBorder
SectionInner.BackgroundColor3 =
Library.Theme.DarkContrast
SectionInner.BorderColor3 = Library.Theme.Border
SectionInner.Position = UDim2.new(0, 2, 0, 2)
SectionInner.Size = UDim2.new(1, -4, 1, -4)
SectionAccent.Name = "SectionAccent"
SectionAccent.Parent = SectionInner
SectionAccent.BackgroundColor3 =
Library.Theme.ElementOn
SectionAccent.BorderColor3 = Library.Theme.Border
SectionAccent.BorderSizePixel = 0
SectionAccent.Size = UDim2.new(1, 0, 0, 1)
SectionGradient.Color =
ColorSequence.new{ColorSequenceKeypoint.new(0.00, Library.Theme.GradiantContrast),
ColorSequenceKeypoint.new(0.50, Library.Theme.Accent),
ColorSequenceKeypoint.new(1.00, Library.Theme.GradiantContrast)}
SectionGradient.Name = "SectionGradient"
SectionGradient.Parent = SectionAccent;
SectionTitle.Name = "SectionTitle"
SectionTitle.Parent = SectionBorder
SectionTitle.BackgroundColor3 =
Library.Theme.DarkContrast
SectionTitle.BorderColor3 = Library.Theme.Border
SectionTitle.BorderSizePixel = 0
SectionTitle.Position = UDim2.new(0, 10, 0, -3)
SectionTitle.Size = UDim2.new(0, 68, 0, 12)
SectionTitle.FontFace = Library.MenuFont
SectionTitle.Text = Section.Name
SectionTitle.TextColor3 = Library.Theme.ElementOn
SectionTitle.TextSize = Library.TextSize
SectionTitle.TextYAlignment =
Enum.TextYAlignment.Top;
SectionTitle:GetPropertyChangedSignal("TextBounds"):Connect(function()
SectionTitle.Size = UDim2.new(0, 5 +
SectionTitle.TextBounds.X, 0, 14)
end);
end;
--// Button
function Section:Button(Data)
local Button = {
Callback = Data.Callback,
ParentSection = Section,
Name = Data.Name,
Frame = nil;
};
Button.Frame = NewButton;
do --// Button element properties
NewButton.Name = "NewButton"
NewButton.Parent = SectionInner
NewButton.BackgroundColor3 =
Library.Theme.LightContrast
NewButton.BorderColor3 =
Library.Theme.Border
NewButton.Position = UDim2.new(0, 2, 0,
Section.Bounds)
NewButton.Size = UDim2.new(1, -4, 0, 18)
ActualButton.Name = "ActualButton"
ActualButton.Parent = NewButton
ActualButton.BackgroundColor3 =
Library.Theme.MedianContrast
ActualButton.BorderColor3 =
Library.Theme.Border
ActualButton.Position = UDim2.new(0, 2, 0,
2)
ActualButton.Size = UDim2.new(1, -4, 1, -4)
ActualButton.AutoButtonColor = false
ActualButton.FontFace = Library.MenuFont
ActualButton.TextColor3 =
Library.Theme.ElementOn
ActualButton.TextSize = Library.TextSize
ActualButton.Text = Button.Name
ActualButton.TextYAlignment =
Enum.TextYAlignment.Center
end;
ActualButton.MouseButton1Down:Connect(function()
if Button.Callback then
pcall(Button.Callback) end;
Library:Tween(ActualButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
task.wait(0.1)
Library:Tween(ActualButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
ActualButton.MouseEnter:Connect(function()
Library:Tween(NewButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
end);
ActualButton.MouseLeave:Connect(function()
Library:Tween(NewButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
end);
end;
Section.Bounds = Section.Bounds + 23
SectionBorder.Size = UDim2.new(1, 0, 0,
Section.Bounds);
end;
--// Textbox
function Section:Textbox(Data)
local TextBox = {
Value = "";
Frame = nil;
};
TextBox.Frame = NewTextbox;
do --// Properties
Library.Flags[Data.Flag] = TextBox.Value;
NewTextbox.Name = "NewTextbox"
NewTextbox.Parent = SectionInner
NewTextbox.BackgroundColor3 =
Library.Theme.LightContrast
NewTextbox.BorderColor3 = Color3.fromRGB(0,
0, 0)
NewTextbox.BorderSizePixel = 1
NewTextbox.Position = UDim2.new(0, 1, 0,
Section.Bounds)
NewTextbox.Size = UDim2.new(1, -4, 0, 18);
TextboxInp.Name = "TextboxInp"
TextboxInp.Parent = NewTextbox
TextboxInp.BackgroundColor3 =
Library.Theme.MedianContrast
TextboxInp.BorderColor3 = Color3.fromRGB(0,
0, 0)
TextboxInp.BorderSizePixel = 1
TextboxInp.Position = UDim2.new(0, 2, 0, 2)
TextboxInp.Size = UDim2.new(1, -4, 1, -4)
TextboxInp.FontFace = Library.MenuFont
TextboxInp.PlaceholderColor3 =
Library.Theme.ElementOff
TextboxInp.Text = Data.Name;
TextboxInp.TextColor3 =
Library.Theme.ElementOff
TextboxInp.TextSize = Library.TextSize
TextboxInp.ClipsDescendants = true
end;
do --// Functions
function TextBox:Set(Value)
TextBox.Value = Value;
end;
TextboxInp.MouseEnter:Connect(function()
Library:Tween(NewTextbox,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
Library:Tween(TextboxInp,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
end);
TextboxInp.MouseLeave:Connect(function()
Library:Tween(NewTextbox,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
Library:Tween(TextboxInp,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
end);
TextboxInp.Focused:Connect(function()
Library:Tween(TextboxInp,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
task.wait(0.1);
Library:Tween(TextboxInp,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
TextboxInp.FocusLost:Connect(function(IsEnter, Inpt)
Library:Tween(TextboxInp,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
task.wait(0.1);
Library:Tween(TextboxInp,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
TextBox:Set(TextboxInp.Text)
end);
TextboxInp:GetPropertyChangedSignal("Text"):Connect(function()
TextBox:Set(TextboxInp.Text);
end);
end;
--// Toggle
function Section:Toggle(Data)
local Toggle = {
Flag = Data.Flag;
Name = Data.Name;
Value = false;
Callback = Data.Callback or function() end;
Risky = Data.Risky;
Default = Data.Default;
Frame = nil;
};
Toggle.Frame = NewToggle;
Window.ImportantIndex =
Window.ImportantIndex-1
ButtonOutline.Name = "ButtonOutline"
ButtonOutline.Parent = NewToggle
ButtonOutline.BackgroundColor3 =
Library.Theme.LightContrast
ButtonOutline.BorderColor3 =
Library.Theme.Border
ButtonOutline.Size = UDim2.new(0, 18, 0,
18)
ButtonInner.Name = "ButtonInner"
ButtonInner.Parent = ButtonOutline
ButtonInner.BackgroundColor3 =
Library.Theme.MedianContrast;
ButtonInner.BorderColor3 =
Library.Theme.Border
ButtonInner.Position = UDim2.new(0, 2, 0,
2)
ButtonInner.Size = UDim2.new(1, -4, 1, -4)
ToggleGradient.Color =
ColorSequence.new{ColorSequenceKeypoint.new(0.00, Library.Theme.Accent),
ColorSequenceKeypoint.new(1.00, Library.Theme.GradiantContrast2)}
ToggleGradient.Rotation = 90
ToggleGradient.Name = "ToggleGradient"
ToggleGradient.Parent = ButtonInner
ToggleGradient.Enabled = false;
ToggleTitle.Name = "ToggleTitle"
ToggleTitle.Parent = NewToggle
ToggleTitle.BackgroundColor3 =
Library.Theme.ElementOn
ToggleTitle.BackgroundTransparency = 1.000
ToggleTitle.BorderColor3 =
Library.Theme.Border
ToggleTitle.BorderSizePixel = 0
ToggleTitle.Position = UDim2.new(0, 23, 0,
2)
ToggleTitle.Size = UDim2.new(0, 176, 0, 16)
ToggleTitle.FontFace = Library.MenuFont
ToggleTitle.Text = Toggle.Name;
local ItemsLayout =
Instance.new("UIListLayout", Items);
ItemsLayout.FillDirection =
Enum.FillDirection.Horizontal;
ItemsLayout.HorizontalAlignment =
Enum.HorizontalAlignment.Right;
ItemsLayout.Padding = UDim.new(0, 3)
local ItemsPadding =
Instance.new("UIPadding", Items);
ItemsPadding.PaddingRight = UDim.new(0,
-1);
end;
end;
function Toggle:Set(Value)
Toggle.Value = Value;
if Toggle.Value then
ToggleGradient.Enabled = true;
Library:Tween(ButtonInner,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Color3.fromRGB(255, 255, 255)});
if not Toggle.Risky then
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
else
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.RiskyOn});
end;
else
task.spawn(function()
local NewTween =
Library:Tween(ButtonInner, TweenInfo.new(0.1, Enum.EasingStyle.Quad,
Enum.EasingDirection.Out), {BackgroundColor3 = Library.Theme.MedianContrast});
NewTween.Completed:Wait();
ToggleGradient.Enabled = false;
end);
if not Toggle.Risky then
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
else
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.RiskyOff});
end;
end;
if Toggle.Callback then
pcall(Toggle.Callback) end;
end;
NewToggle.MouseButton1Down:Connect(function()
Toggle:Set(not Toggle.Value);
end);
NewToggle.MouseEnter:Connect(function()
if not Toggle.Risky then
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
else
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.RiskyOn});
end;
Library:Tween(ButtonOutline,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
end);
NewToggle.MouseLeave:Connect(function()
Library:Tween(ButtonOutline,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
if not Toggle.Value then
if not Toggle.Risky then
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
else
Library:Tween(ToggleTitle,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.RiskyOff});
end;
end
end);
function Toggle:Colorpicker(Data)
local ColorPickerTab = {Color =
Color3.fromRGB(255,255,255), Transparency = 0.1};
--Library.Flags[Data.Flag] = {Set =
nil, Color = Data.Default, Transparency = DefaultTransparency};
ColorPickerTab.IsOpen = false;
local PickerOutline =
Instance.new("Frame")
local PickerButton =
Instance.new("TextButton")
PickerOutline.Name = "PickerOutline"
PickerOutline.Parent = Items
PickerOutline.BackgroundColor3 =
Library.Theme.LightContrast
PickerOutline.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PickerOutline.BorderSizePixel = 1
PickerOutline.Size = UDim2.new(0, 20,
0, 15)
PickerButton.Name = "PickerButton"
PickerButton.Parent = PickerOutline
PickerButton.BackgroundColor3 =
Color3.fromRGB(255, 0, 4)
PickerButton.BorderColor3 =
Color3.fromRGB(0, 0, 0)
PickerButton.BorderSizePixel = 1
PickerButton.Position = UDim2.new(0, 2,
0, 2)
PickerButton.Size = UDim2.new(1, -4, 1,
-4)
PickerButton.FontFace =
Library.MenuFont
PickerButton.Text = ""
PickerButton.TextColor3 =
Color3.fromRGB(0, 0, 0)
PickerButton.TextSize =
Library.TextSize
PickerButton.AutoButtonColor = false;
do --// functions
do --// Buttons
CopyButton.MouseButton1Down:Connect(function()
Library.CopiedColor =
{Color = ColorPickerTab.Color};
Library:Tween(CopyButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
task.wait(0.1)
Library:Tween(CopyButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
CopyButton.MouseEnter:Connect(function()
Library:Tween(CopyButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Accent});
end);
CopyButton.MouseLeave:Connect(function()
Library:Tween(CopyButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Border});
end);
PasteButton.MouseButton1Down:Connect(function()
if Library.CopiedColor then
PasteButton.MouseEnter:Connect(function()
Library:Tween(PasteButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Accent});
end);
PasteButton.MouseLeave:Connect(function()
Library:Tween(PasteButton,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Border});
end);
SetBox.MouseEnter:Connect(function()
Library:Tween(SetBox,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Accent});
end);
SetBox.MouseLeave:Connect(function()
Library:Tween(SetBox,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {BorderColor3
= Library.Theme.Border});
end);
SetBox.FocusLost:Connect(function()
local Text = SetBox.Text;
local Split = Text:split(",
");
ColorPickerTab:Set({Color =
Color3.fromRGB(Split[1], Split[2], Split[3]), Transparency =
ColorPickerTab.Transparency});
Library:Tween(SetBox,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Color3.fromRGB(Split[1], Split[2], Split[3])});
task.wait(0.1);
Library:Tween(SetBox,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
end;
function ColorPickerTab:ToHex(RGB)
local Hexadecimal = "#"
if(string.len(Hex) ==
0)then
Hex = "00"
elseif(string.len(Hex) ==
1)then
Hex = "0" .. Hex
end
Hexadecimal =
Hexadecimal .. Hex
end
return Hexadecimal
end;
function
ColorPickerTab:UpdateColor()
local ColorX =
(math.clamp(Mouse.X - ColorPicker.AbsolutePosition.X, 0,
ColorPicker.AbsoluteSize.X)/ColorPicker.AbsoluteSize.X)
local ColorY =
(math.clamp(Mouse.Y - ColorPicker.AbsolutePosition.Y, 0,
ColorPicker.AbsoluteSize.Y)/ColorPicker.AbsoluteSize.Y)
ColorPick.Position =
UDim2.new(ColorX, 0, ColorY, 0)
Colors.s = 1 - ColorX
Colors.v = 1 - ColorY
PickerButton.BackgroundColor3 =
Color3.fromHSV(Colors.h, Colors.s, Colors.v)
ColorPickerTab.Color =
Color3.fromHSV(Colors.h, Colors.s, Colors.v);
local R =
math.floor((ColorPickerTab.Color.R * 255) * 255);
local G =
math.floor((ColorPickerTab.Color.G * 255) * 255);
local B =
math.floor((ColorPickerTab.Color.B * 255) * 255);
local ToRGB =
Color3.fromRGB(math.ceil(R), math.ceil(G), math.ceil(B));
SetBox.Text = tostring(ToRGB);
if Data.Callback then
pcall(Data.Callback) end
end;
function
ColorPickerTab:Set(new_Value, cb)
local NColor, NTransparency =
new_Value.Color, new_Value.Transparency;
ColorPickerTab.Color = NColor;
ColorPickerTab.Transparency = NTransparency;
local duplicate =
Color3.new(new_Value.Color.R, new_Value.Color.G, new_Value.Color.B);
Colors.h, Colors.s, Colors.v =
duplicate:ToHSV()
Colors.h = math.clamp(Colors.h,
0, 1)
Colors.s = math.clamp(Colors.s,
0, 1)
Colors.v = math.clamp(Colors.v,
0, 1)
local R =
math.floor((ColorPickerTab.Color.R * 255) * 255);
local G =
math.floor((ColorPickerTab.Color.G * 255) * 255);
local B =
math.floor((ColorPickerTab.Color.B * 255) * 255);
local ToRGB =
Color3.fromRGB(math.ceil(R), math.ceil(G), math.ceil(B));
SetBox.Text = tostring(ToRGB);
ColorPick.Position =
UDim2.new(1 - Colors.s, 0, 1 - Colors.v, 0)
ColorPicker.ImageColor3 =
Color3.fromHSV(Colors.h, 1, 1)
PickerButton.BackgroundColor3 =
Color3.fromHSV(Colors.h, Colors.s, Colors.v)
HuePick.Position = UDim2.new(0,
0, 1 - Colors.h, -1)
if TransparencyColor then
TransparencyColor.ImageColor3 = Color3.fromHSV(Colors.h, 1, 1)
TransparencyPick.Position =
UDim2.new(ColorPickerTab.Transparency, -1, 0, 0)
end
if Data.Callback then
pcall(Data.Callback) end;
end
end;
function ColorPickerTab:UpdateHue()
local y = math.clamp(Mouse.Y -
HuePicker.AbsolutePosition.Y, 0, 157)
HuePick.Position = UDim2.new(0,
0, 0, y)
local hue = y/157
Colors.h = 1-hue
ColorPicker.ImageColor3 =
Color3.fromHSV(Colors.h, 1, 1)
PickerButton.BackgroundColor3 =
Color3.fromHSV(Colors.h, Colors.s, Colors.v)
if TransparencyColor then
TransparencyColor.ImageColor3 = Color3.fromHSV(Colors.h, 1, 1)
end
ColorPickerTab.Color =
Color3.fromHSV(Colors.h, Colors.s, Colors.v)
local R =
math.floor((ColorPickerTab.Color.R * 255) * 255);
local G =
math.floor((ColorPickerTab.Color.G * 255) * 255);
local B =
math.floor((ColorPickerTab.Color.B * 255) * 255);
local ToRGB =
Color3.fromRGB(math.ceil(R), math.ceil(G), math.ceil(B));
SetBox.Text = tostring(ToRGB);
end;
PickerButton.MouseEnter:Connect(function()
Library:Tween(PickerOutline,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
end);
PickerButton.MouseLeave:Connect(function()
Library:Tween(PickerOutline,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
end);
ColorFrame.MouseEnter:Connect(function()
IsInColor1 = true;
end);
ColorFrame.MouseLeave:Connect(function()
IsInColor1 = false;
end);
TransparencyPicker.MouseEnter:Connect(function()
IsInTransparency = true;
end);
TransparencyPicker.MouseLeave:Connect(function()
IsInTransparency = false;
end);
HuePicker.MouseEnter:Connect(function()
IsInColor2 = true;
end);
HuePicker.MouseLeave:Connect(function()
IsInColor2 = false;
end);
ColorPickerTab.ColorFrame =
ColorFrame
PickerButton.MouseButton1Down:Connect(function()
ColorPickerTab.IsOpen = not
ColorPickerTab.IsOpen;
ColorFrame.Visible =
ColorPickerTab.IsOpen;
if ColorPickerTab.IsOpen then
if
Library.CurrentColorpicker then
Library.CurrentColorpicker.ColorFrame.Visible = false;
Library.CurrentColorpicker.IsOpen = false;
end;
Library.CurrentColorpicker
= ColorPickerTab;
Library.CurrentColorpicker.ColorFrame.Visible = true;
else
Library.CurrentColorpicker.ColorFrame.Visible = false;
Library.CurrentColorpicker
= nil;
end;
end);
UserInputService.InputBegan:Connect(function(Input)
if Input.UserInputType ==
Enum.UserInputType.MouseButton2 then
if not IsInColor1 and not
IsInColor2 and not IsInTransparency then
ColorFrame.Visible =
false;
ColorPickerTab.IsOpen =
false;
end;
end;
end);
function
ColorPickerTab:UpdateTransparency()
local X = math.clamp(Mouse.X -
TransparencyPicker.AbsolutePosition.X, 0, TransparencyPicker.AbsoluteSize.X)
TransparencyPick.Position =
UDim2.new(0, X, 0, 0)
local NewTransparency =
X/TransparencyPicker.AbsoluteSize.X;
ColorPickerTab.Transparency =
NewTransparency;
if Data.Callback then
pcall(Data.Callback); end;
end;
TransparencyPicker.MouseButton1Down:Connect(function()
ColorPickerTab:UpdateTransparency()
local MoveConn =
Mouse.Move:Connect(function()
ColorPickerTab:UpdateTransparency()
end)
ReleaseConn =
UserInputService.InputEnded:Connect(function(Input)
if Input.UserInputType ==
Enum.UserInputType.MouseButton1 then
ColorPickerTab:UpdateTransparency()
MoveConn:Disconnect()
ReleaseConn:Disconnect()
end
end)
end);
ColorPickerTab.Color =
Color3.fromHSV(Colors.h, Colors.s, Colors.v)
ColorPicker.MouseButton1Down:Connect(function()
ColorPickerTab:UpdateColor()
local MoveConnection =
Mouse.Move:Connect(function()
ColorPickerTab:UpdateColor()
end)
ReleaseConnection =
UserInputService.InputEnded:Connect(function(Mouse)
if Mouse.UserInputType ==
Enum.UserInputType.MouseButton1 then
ColorPickerTab:UpdateColor()
MoveConnection:Disconnect()
ReleaseConnection:Disconnect()
end
end)
end);
HuePicker.MouseButton1Down:Connect(function()
ColorPickerTab:UpdateHue()
local MoveConnection =
Mouse.Move:Connect(function()
ColorPickerTab:UpdateHue()
end)
ReleaseConnection =
UserInputService.InputEnded:Connect(function(Mouse)
if Mouse.UserInputType ==
Enum.UserInputType.MouseButton1 then
ColorPickerTab:UpdateHue()
MoveConnection:Disconnect()
ReleaseConnection:Disconnect()
end
end)
end);
end;
ColorPickerTab:Set({Color =
Data.Default or Color3.fromRGB(255, 255, 255), Transparency = DefaultTransparency},
true)
Library.Flags[Flag] = ColorPickerTab
if Data.Callback then
pcall(Data.Callback) end;
return ColorPicker
end;
function Toggle:Keybind(Data)
local BindOutline_2 =
Instance.new("Frame")
local Keybind = {
Name = Data.Name;
Key = "";
Flag = Data.Flag;
Mode = Data.Mode or "Toggle",
Value = false;
Callback = Data.Callback or
function() end;
IsBeingSelected = false;
Components = BindOutline_2;
Default = Data.Default;
AbKey = "";
};
local KeybindPicker_2 =
Instance.new("TextButton")
BindOutline_2.Name = "BindOutline"
BindOutline_2.Parent = Items
BindOutline_2.BackgroundColor3 =
Library.Theme.LightContrast
BindOutline_2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
BindOutline_2.BorderSizePixel = 1
BindOutline_2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
BindOutline_2.Position = UDim2.new(1, -
23, 0, 0)
BindOutline_2.Size = UDim2.new(0, 20,
0, 15)
BindOutline_2.BackgroundTransparency =
1;
KeybindPicker_2.Name = "KeybindPicker"
KeybindPicker_2.Parent = BindOutline_2
KeybindPicker_2.BackgroundColor3 =
Library.Theme.MedianContrast
KeybindPicker_2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
KeybindPicker_2.BorderSizePixel = 1
KeybindPicker_2.Position = UDim2.new(0,
2, 0, 2)
KeybindPicker_2.Size = UDim2.new(1, -4,
1, -4)
KeybindPicker_2.FontFace =
Library.MenuFont
KeybindPicker_2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
KeybindPicker_2.Text = "[NONE]"
KeybindPicker_2.TextColor3 =
Library.Theme.ElementOff
KeybindPicker_2.TextSize =
Library.TextSize
KeybindPicker_2.AutoButtonColor =
false;
KeybindPicker_2.BackgroundTransparency
= 1;
KeybindPicker_2.TextXAlignment =
Enum.TextXAlignment.Right;
if Keys[Key.Name] then
KeybindPicker_2.Text =
"["..Keys[Key.Name].."]";
Keybind.AbKey =
Keys[Key.Name]
else
KeybindPicker_2.Text =
"["..Key.Name:sub(1, 2).."]";
Keybind.AbKey =
Key.Name:sub(1, 2)
end;
Keybind.Key =
Enum.KeyCode[Key.Name];
else
Keybind.Key = Key;
end;
Keybind.IsBeingSelected =
false;
end;
else
if type(Key) == "table" then
Key =
Enum.UserInputType[Key.Name];
end
Keybind.IsBeingSelected = true;
local Shortened = "";
if Key ==
Enum.UserInputType.MouseButton1 then
Shortened = "M1";
elseif Key ==
Enum.UserInputType.MouseButton2 then
Shortened = "M2";
elseif Key ==
Enum.UserInputType.MouseButton3 then
Shortened = "M3";
elseif Key ==
Enum.UserInputType.MouseWheel then
Shortened = "M4";
end;
Keybind.Key = Key;
Keybind.AbKey = Shortened;
KeybindPicker_2.Text =
"["..Shortened.."]";
Keybind.IsBeingSelected = false
end;
end;
KeybindPicker_2.MouseEnter:Connect(function()
Library:Tween(BindOutline_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
end);
KeybindPicker_2.MouseLeave:Connect(function()
Library:Tween(BindOutline_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
end);
KeybindPicker_2.MouseButton1Down:Connect(function()
task.spawn(function()
Library:Tween(KeybindPicker_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
task.wait(0.1)
Library:Tween(KeybindPicker_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
task.wait(0.1)
KeybindPicker_2.Text = " ..."
Keybind.IsBeingSelected = true;
UserInputService.InputBegan:Connect(function(Input)
if Input.UserInputType ==
Enum.UserInputType.Keyboard and Keybind.IsBeingSelected then
Keybind:Set(Input.KeyCode);
Keybind.IsBeingSelected =
false;
elseif Input.UserInputType ==
Enum.UserInputType.MouseButton1 and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseButton1, true)
elseif Input.UserInputType ==
Enum.UserInputType.MouseButton2 and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseButton2, true)
elseif Input.UserInputType ==
Enum.UserInputType.MouseButton3 and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseButton3, true)
elseif Input.UserInputType ==
Enum.UserInputType.MouseWheel and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseWheel, true)
else
Keybind.IsBeingSelected =
false;
end;
end);
end);
UserInputService.InputBegan:Connect(function(Input)
if Input.KeyCode == Keybind["Key"]
and not Keybind.IsBeingSelected then
if Keybind["Mode"] == "Toggle"
then
Keybind.Value = not
Keybind.Value;
if Keybind.Name ~=
"Open/Close" and Keybind.Name ~= "Open / Close" then
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
end;
pcall(Keybind.Callback)
elseif Keybind["Mode"] ==
"Hold" then
Keybind.Value = true;
if not
Library.KeybindsContainer:FindFirstChild(Keybind.Name) then
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
end;
pcall(Keybind.Callback)
elseif Keybind["Mode"] ==
"Press" then
pcall(Keybind.Callback)
end
end
end);
UserInputService.InputEnded:Connect(function(Input)
if Input.KeyCode == Keybind["Key"]
and not Keybind.IsBeingSelected then
if Keybind["Mode"] == "Hold"
then
Keybind.Value = false;
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
if Data.Callback then
pcall(Data.Callback) end;
end
end
end);
if Keybind.Default then
Keybind:Set(Keybind.Default);
end;
Library.Flags[Data.Flag] = Keybind;
return Keybind;
end;
function Toggle:MultiSettings(Data)
local Settings = {
};
local Button =
Instance.new("ImageButton");
local ContainerOutline =
Instance.new("Frame");
local Container =
Instance.new("Frame");
do --// properties
end;
do --// functions
end;
return Settings;
end;
end;
if Toggle.Default then
Toggle:Set(Toggle.Default);
end;
Library.Flags[Data.Flag] = Toggle;
return Toggle;
end;
--// Dropdown
function Section:Dropdown(Data)
local Dropdown = {
Name = Data.Name,
Flag = Data.Flag,
Value = nil,
Options = {};
Max = Data.Max or #Data.Options;
IsOpen = false;
Callback = Data.Callback or function() end;
Default = Data.Default;
Frame = nil;
};
local NewDropdown = Instance.new("Frame")
local DropdownOutline = Instance.new("Frame")
local DropdownInner =
Instance.new("TextButton")
local DropdownFlag = Instance.new("TextLabel")
local DropdownStatus =
Instance.new("TextLabel")
local ContainerOutline = Instance.new("Frame")
local Container = Instance.new("Frame")
local ContainerLayout =
Instance.new("UIListLayout")
local DropdownTitle = Instance.new("TextLabel")
Dropdown.Frame = NewDropdown;
Window.ImportantIndex =
Window.ImportantIndex - 1;
DropdownOutline.Name = "DropdownOutline";
DropdownOutline.Parent = NewDropdown;
DropdownOutline.BackgroundColor3 =
Library.Theme.LightContrast;
DropdownOutline.BorderColor3 =
Library.Theme.Border;
DropdownOutline.Position = UDim2.new(0, 0,
0, 15);
DropdownOutline.Size = UDim2.new(1, 0, 0,
16);
DropdownInner.Name = "DropdownInner";
DropdownInner.Parent = DropdownOutline;
DropdownInner.BackgroundColor3 =
Library.Theme.MedianContrast;
DropdownInner.BorderColor3 =
Library.Theme.Border;
DropdownInner.Position = UDim2.new(0, 2, 0,
2);
DropdownInner.Size = UDim2.new(1, -4, 1, -
4);
DropdownInner.Text = "";
DropdownInner.AutoButtonColor = false;
DropdownFlag.Name = "DropdownFlag";
DropdownFlag.Parent = DropdownInner;
DropdownFlag.BackgroundColor3 =
Library.Theme.ElementOn;
DropdownFlag.BackgroundTransparency =
1.000;
DropdownFlag.BorderColor3 =
Library.Theme.Border;
DropdownFlag.BorderSizePixel = 0;
DropdownFlag.Size = UDim2.new(1, 0, 1, 0);
DropdownFlag.FontFace = Library.MenuFont;
DropdownFlag.Text = "";
DropdownFlag.TextColor3 =
Library.Theme.ElementOn;
DropdownFlag.TextSize = Library.TextSize;
DropdownStatus.Name = "DropdownStatus";
DropdownStatus.Parent = DropdownInner;
DropdownStatus.BackgroundColor3 =
Library.Theme.ElementOn;
DropdownStatus.BackgroundTransparency =
1.000;
DropdownStatus.BorderColor3 =
Library.Theme.Border;
DropdownStatus.BorderSizePixel = 0;
DropdownStatus.Position =
UDim2.new(0.929292917, 0, 0, 1);
DropdownStatus.Size = UDim2.new(0, 14, 1,
0);
DropdownStatus.FontFace = Library.MenuFont;
DropdownStatus.Text = "+";
DropdownStatus.TextColor3 =
Library.Theme.ElementOn;
DropdownStatus.TextSize = Library.TextSize;
ContainerOutline.Name = "ContainerOutline"
ContainerOutline.Parent = DropdownInner
ContainerOutline.BackgroundColor3 =
Library.Theme.LightContrast
ContainerOutline.BorderColor3 =
Library.Theme.Border
ContainerOutline.Position = UDim2.new(0, -
2, 1, 4);
ContainerOutline.ClipsDescendants = true;
ContainerOutline.Size = UDim2.new(1, 4, 0,
0)
ContainerOutline.Visible = false
Dropdown.Container = ContainerOutline;
Container.Name = "Container"
Container.Parent = ContainerOutline
Container.BackgroundColor3 =
Library.Theme.MedianContrast
Container.BorderColor3 =
Library.Theme.Border
Container.Position = UDim2.new(0, 2, 0, 2)
Container.Size = UDim2.new(1, -4, 1, -4)
Container.Visible = true;
ContainerLayout.Parent = Container
ContainerLayout.SortOrder =
Enum.SortOrder.LayoutOrder
DropdownTitle.Name = "DropdownTitle"
DropdownTitle.Parent = NewDropdown
DropdownTitle.BackgroundColor3 =
Library.Theme.ElementOn
DropdownTitle.BackgroundTransparency =
1.000
DropdownTitle.BorderColor3 =
Library.Theme.Border
DropdownTitle.BorderSizePixel = 0
DropdownTitle.Position =
UDim2.new(0.00990098994, 0, 0, 0)
DropdownTitle.Size = UDim2.new(0.990099013,
0, 0, 14)
DropdownTitle.FontFace = Library.MenuFont
DropdownTitle.Text = Data.Name;
DropdownTitle.TextColor3 =
Library.Theme.ElementOn
DropdownTitle.TextSize = Library.TextSize
DropdownTitle.TextXAlignment =
Enum.TextXAlignment.Left
DropdownTitle.TextYAlignment =
Enum.TextYAlignment.Top
end;
function Dropdown:Toggle()
Dropdown.IsOpen = not Dropdown.IsOpen;
local SizeToTween;
if Dropdown.IsOpen then
Dropdown.Container.Visible = true;
end;
if Dropdown.Max ~= 1 then
SizeToTween = UDim2.new(1, 4, 0,
(14 * Dropdown.Max) + 4);
else
SizeToTween = UDim2.new(1, 4, 0,
14);
end;
if Dropdown.IsOpen then
if Library.CurrentDropdown then
Library.CurrentDropdown.Container.Visible = false;
Library.CurrentDropdown.Container.Size = UDim2.new(1, 4, 0, 0)
Library.CurrentDropdown.IsOpen
= false;
end;
Library.CurrentDropdown = Dropdown;
Library:Tween(Dropdown.Container,
TweenInfo.new(0.2, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {Size =
SizeToTween});
else
Library.CurrentDropdown = nil;
Library:Tween(Dropdown.Container,
TweenInfo.new(0.2, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {Size =
UDim2.new(1, 4, 0, 0)});
task.wait(0.2);
Dropdown.Container.Visible = false;
end;
end;
function Dropdown:Update()
--if Dropdown.Max ~= 1 then
-- ContainerOutline.Size =
UDim2.new(1, 4, 0, (14 * Dropdown.Max) + 4);
--else
-- ContainerOutline.Size =
UDim2.new(1, 4, 0, 14);
--end;
end;
DropdownInner.MouseEnter:Connect(function()
Library:Tween(DropdownOutline,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
end);
DropdownInner.MouseLeave:Connect(function()
Library:Tween(DropdownOutline,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
end);
DropdownInner.MouseButton1Down:Connect(function()
Dropdown:Toggle();
end);
function Dropdown:Set(Value)
if Dropdown.Options[Value] then
Dropdown.Value = Value;
DropdownFlag.Text =
tostring(Value);
Dropdown.Options[Value].IsSelected
= true;
Dropdown.Options[Value].Selector.Visible = true;
Library:Tween(Dropdown.Options[Value].Button, TweenInfo.new(0.1,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
end;
if Dropdown.Callback then
pcall(Dropdown.Callback); end;
end;
function Dropdown:AddOption(Name)
local NewOption =
Instance.new("TextButton")
local Frame = Instance.new("Frame")
local Option = {
Name = Name;
IsSelected = false;
Selector = Frame;
Button = NewOption;
};
NewOption.Name = "NewOption"
NewOption.Parent = Container
NewOption.BackgroundColor3 =
Library.Theme.ElementOff
NewOption.BackgroundTransparency =
1.000
NewOption.BorderColor3 =
Library.Theme.Border
NewOption.BorderSizePixel = 0
NewOption.Size = UDim2.new(1, 0, 0, 14)
NewOption.FontFace = Library.MenuFont
NewOption.Text = Name;
NewOption.TextColor3 =
Library.Theme.ElementOff;
NewOption.TextSize = Library.TextSize
Frame.Parent = NewOption
Frame.BackgroundColor3 =
Library.Theme.Accent
Frame.BorderColor3 =
Library.Theme.Border
Frame.BorderSizePixel = 0
Frame.Size = UDim2.new(0, 2, 1, 0);
Frame.Visible = false;
NewOption.MouseButton1Down:Connect(function()
Option.IsSelected = not
Option.IsSelected
return Option;
end;
function Dropdown:RemoveOption(Name)
if Dropdown.Options[Name] then
Dropdown.Options[Name].Button:Destroy();
Dropdown.Options[Name] = nil;
end;
end;
end;
if Dropdown.Default then
Dropdown:Set(Dropdown.Default);
else
Dropdown:Set(Data.Options[1])
end;
Library.Flags[Data.Flag] = Dropdown;
return Dropdown;
end;
--// Keybind
function Section:Keybind(Data)
local Keybind = {
Name = Data.Name;
Key = "";
Flag = Data.Flag;
Mode = Data.Mode or "Toggle",
IsEnabled = false;
Callback = Data.Callback or function() end;
IsBeingSelected = false;
Default = Data.Default;
Components = nil;
Frame = nil;
AbKey = "";
};
Keybind.Components = BindOutline_2;
Keybind.Frame = NewKeybind;
do --// Properties
NewKeybind.Name = "NewKeybind"
NewKeybind.Parent = SectionInner
NewKeybind.BackgroundColor3 =
Color3.fromRGB(255, 0, 4)
NewKeybind.BackgroundTransparency = 1.000
NewKeybind.BorderColor3 = Color3.fromRGB(0,
0, 0)
NewKeybind.BorderSizePixel = 0
NewKeybind.Size = UDim2.new(1, 0, 0, 15)
NewKeybind.Position = UDim2.new(0, 2, 0,
Section.Bounds);
KeybindTitle.Name = "KeybindTitle"
KeybindTitle.Parent = NewKeybind
KeybindTitle.BackgroundColor3 =
Library.Theme.ElementOn
KeybindTitle.BackgroundTransparency = 1.000
KeybindTitle.BorderColor3 =
Color3.fromRGB(0, 0, 0)
KeybindTitle.BorderSizePixel = 0
KeybindTitle.Position = UDim2.new(0, 1, 0,
0)
KeybindTitle.Size = UDim2.new(0.875706196,
0, 1, 0)
KeybindTitle.FontFace = Library.MenuFont
KeybindTitle.Text = Data.Name
KeybindTitle.TextColor3 =
Library.Theme.ElementOn
KeybindTitle.TextSize = Library.TextSize
KeybindTitle.TextXAlignment =
Enum.TextXAlignment.Left
BindOutline_2.Name = "BindOutline"
BindOutline_2.Parent = NewKeybind
BindOutline_2.BackgroundColor3 =
Library.Theme.LightContrast
BindOutline_2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
BindOutline_2.BorderSizePixel = 1
BindOutline_2.Position = UDim2.new(1, -23,
0, 0)
BindOutline_2.Size = UDim2.new(0, 20, 0,
15)
BindOutline_2.BackgroundTransparency = 1;
KeybindPicker_2.Name = "KeybindPicker"
KeybindPicker_2.Parent = BindOutline_2
KeybindPicker_2.BackgroundColor3 =
Library.Theme.MedianContrast
KeybindPicker_2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
KeybindPicker_2.BorderSizePixel = 1
KeybindPicker_2.Position = UDim2.new(0, 2,
0, 2)
KeybindPicker_2.Size = UDim2.new(1, -4, 1,
-4)
KeybindPicker_2.FontFace = Library.MenuFont
KeybindPicker_2.Text = "[NONE]"
KeybindPicker_2.TextColor3 =
Library.Theme.ElementOn
KeybindPicker_2.TextSize = Library.TextSize
KeybindPicker_2.AutoButtonColor = false;
KeybindPicker_2.BackgroundTransparency = 1;
KeybindPicker_2.TextXAlignment =
Enum.TextXAlignment.Right;
end;
do --// Functions
function Keybind:Set(Key, IsMouse)
if not IsMouse then
if Key and (type(Key) == "table" or
typeof(Key) == "EnumItem") and Key.Name then
Keybind.IsBeingSelected = true;
if Keys[Key.Name] then
KeybindPicker_2.Text =
"["..Keys[Key.Name].."]";
Keybind.AbKey =
Keys[Key.Name]
else
KeybindPicker_2.Text =
"["..Key.Name:sub(1, 2).."]";
Keybind.AbKey =
Key.Name:sub(1, 2)
end;
Keybind.Key =
Enum.KeyCode[Key.Name];
else
Keybind.Key = Key;
end;
Keybind.IsBeingSelected =
false;
end;
else
if type(Key) == "table" then
Key =
Enum.UserInputType[Key.Name];
end
Keybind.IsBeingSelected = true;
local Shortened = "";
if Key ==
Enum.UserInputType.MouseButton1 then
Shortened = "M1";
elseif Key ==
Enum.UserInputType.MouseButton2 then
Shortened = "M2";
elseif Key ==
Enum.UserInputType.MouseButton3 then
Shortened = "M3";
elseif Key ==
Enum.UserInputType.MouseWheel then
Shortened = "M4";
end;
Keybind.Key = Key;
Keybind.AbKey = Shortened;
KeybindPicker_2.Text =
"["..Shortened.."]";
Keybind.IsBeingSelected = false
end;
end;
KeybindPicker_2.MouseEnter:Connect(function()
Library:Tween(BindOutline_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
end);
KeybindPicker_2.MouseLeave:Connect(function()
Library:Tween(BindOutline_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
end);
KeybindPicker_2.MouseButton1Down:Connect(function()
task.spawn(function()
Library:Tween(KeybindPicker_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
task.wait(0.1)
Library:Tween(KeybindPicker_2,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.MedianContrast});
end);
task.wait(0.1)
KeybindPicker_2.Text = " ..."
Keybind.IsBeingSelected = true;
UserInputService.InputBegan:Connect(function(Input)
if Input.UserInputType ==
Enum.UserInputType.Keyboard and Keybind.IsBeingSelected then
Keybind:Set(Input.KeyCode);
Keybind.IsBeingSelected =
false;
elseif Input.UserInputType ==
Enum.UserInputType.MouseButton1 and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseButton1, true)
elseif Input.UserInputType ==
Enum.UserInputType.MouseButton2 and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseButton2, true)
elseif Input.UserInputType ==
Enum.UserInputType.MouseButton3 and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseButton3, true)
elseif Input.UserInputType ==
Enum.UserInputType.MouseWheel and Keybind.IsBeingSelected then
Keybind:Set(Enum.UserInputType.MouseWheel, true)
else
Keybind.IsBeingSelected =
false;
end;
end);
end);
UserInputService.InputBegan:Connect(function(Input)
if Input.KeyCode == Keybind["Key"] and
not Keybind.IsBeingSelected then
if Keybind["Mode"] == "Toggle" then
Keybind.Value = not
Keybind.Value;
if Keybind.Name ~= "Open/Close"
and Keybind.Name ~= "Open / Close" then
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
end;
pcall(Keybind.Callback)
elseif Keybind["Mode"] == "Hold"
then
Keybind.Value = true;
if not
Library.KeybindsContainer:FindFirstChild(Keybind.Name) then
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
end;
pcall(Keybind.Callback)
elseif Keybind["Mode"] == "Press"
then
pcall(Keybind.Callback)
end
end
if Input.UserInputType ==
Keybind["Key"] and not Keybind.IsBeingSelected then
if Keybind["Mode"] == "Toggle" then
Keybind.Value = not
Keybind.Value;
if Keybind.Name ~= "Open/Close"
and Keybind.Name ~= "Open / Close" then
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
end;
pcall(Keybind.Callback)
elseif Keybind["Mode"] == "Hold"
then
Keybind.Value = true;
if not
Library.KeybindsContainer:FindFirstChild(Keybind.Name) then
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
end;
pcall(Keybind.Callback)
elseif Keybind["Mode"] == "Press"
then
pcall(Keybind.Callback)
end
end
end);
UserInputService.InputEnded:Connect(function(Input)
if Input.KeyCode == Keybind["Key"] and
not Keybind.IsBeingSelected then
if Keybind["Mode"] == "Hold" then
Keybind.Value = false;
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
if Data.Callback then
pcall(Data.Callback) end;
end
end
if Input.UserInputType ==
Keybind["Key"] and not Keybind.IsBeingSelected then
if Keybind["Mode"] == "Hold" then
Keybind.Value = false;
Library:ToggleBind(Keybind.Name, Keybind.AbKey);
pcall(Keybind.Callback)
end
end
end);
end;
if Keybind.Default then
Keybind:Set(Keybind.Default);
end;
Library.Flags[Data.Flag] = Keybind;
Section.Bounds = Section.Bounds + 20;
SectionBorder.Size = UDim2.new(1, 0, 0,
Section.Bounds);
return Keybind;
end
--// Slider
function Section:Slider(Data)
local Slider = {
Min = Data.Min,
Max = Data.Max,
Default = Data.Default or Data.Max / 2,
Flag = Data.Flag,
Suffix = Data.Suffix or "",
Value = 0,
Name = Data.Name,
AllowDecimals = Data.AllowDecimals,
Callback = Data.Callback or function() end;
Frame = nil;
};
local NewSlider = Instance.new("Frame")
local SliderTitle = Instance.new("TextLabel")
local SliderOutline = Instance.new("Frame")
local SliderInner = Instance.new("ImageButton")
local SliderButton = Instance.new("ImageLabel")
local SliderGradient =
Instance.new("UIGradient")
local TextLabel = Instance.new("TextLabel");
Slider.Frame = NewSlider;
do --// Slider properties
NewSlider.Name = "NewSlider"
NewSlider.Parent = SectionInner
NewSlider.BackgroundColor3 =
Color3.fromRGB(75, 75, 75)
NewSlider.BackgroundTransparency = 1.000
NewSlider.BorderColor3 =
Library.Theme.Border
NewSlider.Position = UDim2.new(0, 2, 0,
Section.Bounds)
NewSlider.Size = UDim2.new(1, -4, 0, 30)
SliderMinus.Parent = NewSlider;
SliderMinus.Text = "-";
SliderMinus.Size = UDim2.new(0, 5, 0, 9);
SliderMinus.Position = UDim2.new(1, -7, 0,
0);
SliderMinus.BackgroundTransparency = 1;
SliderMinus.FontFace = Library.MenuFont;
SliderMinus.TextSize = Library.TextSize;
SliderMinus.TextColor3 =
Color3.fromRGB(150, 150, 150);
SliderPlus.BackgroundTransparency = 1;
SliderPlus.Text = "+";
SliderPlus.Parent = NewSlider;
SliderPlus.FontFace = Library.MenuFont;
SliderPlus.TextSize = Library.TextSize
SliderPlus.TextColor3 = Color3.fromRGB(150,
150, 150);
SliderPlus.Position = UDim2.new(1, -20, 0,
0);
SliderPlus.Size = UDim2.new(0, 5, 0, 9);
SliderTitle.Name = "SliderTitle"
SliderTitle.Parent = NewSlider
SliderTitle.BackgroundColor3 =
Library.Theme.ElementOn
SliderTitle.BackgroundTransparency = 1.000
SliderTitle.BorderColor3 =
Library.Theme.Border
SliderTitle.BorderSizePixel = 0
SliderTitle.Position =
UDim2.new(0.00990098994, 0, 0, 0)
SliderTitle.Size = UDim2.new(0, 118, 0, 12)
SliderTitle.FontFace = Library.MenuFont
SliderTitle.Text = Slider.Name;
SliderTitle.TextColor3 =
Library.Theme.ElementOn
SliderTitle.TextSize = Library.TextSize
SliderTitle.TextXAlignment =
Enum.TextXAlignment.Left
SliderOutline.Name = "SliderOutline"
SliderOutline.Parent = NewSlider
SliderOutline.BackgroundColor3 =
Library.Theme.LightContrast
SliderOutline.BorderColor3 =
Library.Theme.Border
SliderOutline.Position = UDim2.new(0, 0, 0,
15)
SliderOutline.Size = UDim2.new(1, 0, 0, 14)
SliderInner.Name = "SliderInner"
SliderInner.Parent = SliderOutline
SliderInner.BackgroundColor3 =
Library.Theme.MedianContrast
SliderInner.BorderColor3 =
Library.Theme.Border
SliderInner.Position = UDim2.new(0, 2, 0,
2)
SliderInner.Size = UDim2.new(1, -4, 1, -4)
SliderInner.AutoButtonColor = false
SliderButton.Name = "SliderButton"
SliderButton.Parent = SliderInner
SliderButton.BackgroundColor3 =
Library.Theme.ElementOn
SliderButton.BorderColor3 =
Library.Theme.Border
SliderButton.BorderSizePixel = 0
SliderButton.Size = UDim2.new(1, 0, 1, 0)
SliderGradient.Color =
ColorSequence.new{ColorSequenceKeypoint.new(0.00, Library.Theme.Accent),
ColorSequenceKeypoint.new(1.00, Library.Theme.GradiantContrast2)}
SliderGradient.Rotation = 90
SliderGradient.Name = "SliderGradient"
SliderGradient.Parent = SliderButton
TextLabel.Parent = SliderInner
TextLabel.BackgroundColor3 =
Library.Theme.ElementOn
TextLabel.BackgroundTransparency = 1.000
TextLabel.BorderColor3 =
Library.Theme.Border
TextLabel.BorderSizePixel = 0
TextLabel.Size = UDim2.new(1, 0, 1, 0)
TextLabel.FontFace = Library.MenuFont
TextLabel.Visible = false;
TextLabel.Text = tostring(Data.Default);
TextLabel.TextColor3 =
Library.Theme.ElementOff
TextLabel.TextSize = Library.TextSize
TextLabel.TextYAlignment =
Enum.TextYAlignment.Top
TextLabel.TextStrokeTransparency = 0;
end;
SliderPlus.MouseButton1Down:Connect(function()
local NewValue = Slider.Value;
if Slider.AllowDecimals then
NewValue = Slider.Value + (1 /
Slider.AllowDecimals);
if NewValue <= Slider.Max then
Slider:Set(NewValue);
end;
else
if (NewValue + 1) <= Slider.Max
then
Slider:Set(NewValue + 1);
end;
end;
end);
SliderMinus.MouseButton1Down:Connect(function()
local NewValue = Slider.Value
if Slider.AllowDecimals then
NewValue = Slider.Value - (1 /
Slider.AllowDecimals);
if NewValue >= Slider.Min then
Slider:Set(NewValue);
end;
else
if (NewValue - 1) >= Slider.Min
then
Slider:Set(NewValue - 1);
end;
end;
end);
SliderInner.MouseEnter:Connect(function()
Library:Tween(SliderOutline,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
Library:Tween(TextLabel,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
end);
SliderInner.MouseLeave:Connect(function()
Library:Tween(SliderOutline,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
Library:Tween(TextLabel,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
end);
function Slider:Set(NewValue)
if Slider.AllowDecimals then
--// This is stupid, i know, but,
it works really well especially since you would get random decimals
like .0000000000003
local Value = (1 /
Slider.AllowDecimals) * math.floor(NewValue / (1 / Slider.AllowDecimals));
local Total =
string.len(Slider.Suffix) + Slider.AllowDecimals +
string.len(tostring(Slider.Max));
Value = string.sub(tostring(Value),
1, Total);
NewValue = tonumber(Value);
else
NewValue = math.floor(NewValue);
end;
Slider.Value = NewValue;
SliderInner.MouseButton1Down:Connect(function()
SliderButton.Size = UDim2.new(0,
math.clamp(Mouse.X - SliderInner.AbsolutePosition.X, 0,
math.floor(SliderInner.AbsoluteSize.X)), 1, 0);
local Val = ((((Data.Max - Data.Min) /
math.floor(SliderInner.AbsoluteSize.X)) * math.floor(SliderButton.AbsoluteSize.X))
+ Data.Min);
if Val then
Slider:Set(Val);
if Data.Callback then
pcall(Data.Callback) end;
end
isSliding = true;
MoveConn =
Mouse.Move:Connect(function()
SliderButton.Size = UDim2.new(0,
math.clamp(Mouse.X - SliderInner.AbsolutePosition.X, 0,
math.floor(SliderInner.AbsoluteSize.X)), 1, 0);
local Val = ((((Data.Max -
Data.Min) / math.floor(SliderInner.AbsoluteSize.X)) *
math.floor(SliderButton.AbsoluteSize.X)) + Data.Min);
if Val then
Slider:Set(Val);
if Data.Callback then
pcall(Data.Callback) end;
end
end);
ReleaseConn =
UserInputService.InputEnded:Connect(function(Inp)
if Inp.UserInputType ==
Enum.UserInputType.MouseButton1 then
SliderButton.Size =
UDim2.new(0, math.clamp(Mouse.X - SliderInner.AbsolutePosition.X,
0,math.floor(SliderInner.AbsoluteSize.X)), 1, 0);
local Val = ((((Data.Max -
Data.Min) / math.floor(SliderInner.AbsoluteSize.X)) *
math.floor(SliderButton.AbsoluteSize.X)) + Data.Min);
if Val then
Slider:Set(Val);
if Data.Callback then
pcall(Data.Callback) end;
end
isSliding = false;
ReleaseConn:Disconnect();
MoveConn:Disconnect();
end
end);
end)
end;
Slider:Set(Slider.Default)
Library.Flags[Data.Flag] = Slider;
Dropdown.Frame = NewDropdown;
Window.ImportantIndex =
Window.ImportantIndex - 1;
DropdownOutline.Name = "DropdownOutline"
DropdownOutline.Parent = NewDropdown
DropdownOutline.BackgroundColor3 =
Library.Theme.LightContrast
DropdownOutline.BorderColor3 =
Library.Theme.Border
DropdownOutline.Position = UDim2.new(0, 0,
0, 15)
DropdownOutline.Size = UDim2.new(1, 0, 0,
16)
DropdownInner.Name = "DropdownInner"
DropdownInner.Parent = DropdownOutline
DropdownInner.BackgroundColor3 =
Library.Theme.MedianContrast
DropdownInner.BorderColor3 =
Library.Theme.Border
DropdownInner.Position = UDim2.new(0, 2, 0,
2)
DropdownInner.Size = UDim2.new(1, -4, 1, -
4)
DropdownInner.Text = "";
DropdownInner.AutoButtonColor = false;
DropdownFlag.Name = "DropdownFlag"
DropdownFlag.Parent = DropdownInner
DropdownFlag.BackgroundColor3 =
Library.Theme.ElementOn
DropdownFlag.BackgroundTransparency = 1.000
DropdownFlag.BorderColor3 =
Library.Theme.Border
DropdownFlag.BorderSizePixel = 0
DropdownFlag.Size = UDim2.new(1, 0, 1, 0)
DropdownFlag.FontFace = Library.MenuFont
DropdownFlag.Text = "";
DropdownFlag.TextColor3 =
Library.Theme.ElementOn
DropdownFlag.TextSize = Library.TextSize
DropdownStatus.Name = "DropdownStatus"
DropdownStatus.Parent = DropdownInner
DropdownStatus.BackgroundColor3 =
Library.Theme.ElementOn
DropdownStatus.BackgroundTransparency =
1.000
DropdownStatus.BorderColor3 =
Library.Theme.Border
DropdownStatus.BorderSizePixel = 0
DropdownStatus.Position =
UDim2.new(0.929292917, 0, -0.166666672, 0)
DropdownStatus.Size = UDim2.new(0, 14, 0,
14)
DropdownStatus.FontFace = Library.MenuFont
DropdownStatus.Text = "+"
DropdownStatus.TextColor3 =
Library.Theme.ElementOn
DropdownStatus.TextSize = Library.TextSize
ContainerOutline.Name = "ContainerOutline"
ContainerOutline.Parent = DropdownInner
ContainerOutline.BackgroundColor3 =
Library.Theme.LightContrast
ContainerOutline.BorderColor3 =
Library.Theme.Border
ContainerOutline.Position = UDim2.new(0, -
2, 1, 4);
ContainerOutline.ClipsDescendants = true;
ContainerOutline.Size = UDim2.new(1, 4, 0,
0);
ContainerOutline.Visible = false
Dropdown.Container = ContainerOutline;
Container.Name = "Container"
Container.Parent = ContainerOutline
Container.BackgroundColor3 =
Library.Theme.MedianContrast
Container.BorderColor3 =
Library.Theme.Border
Container.Position = UDim2.new(0, 2, 0, 2)
Container.Size = UDim2.new(1, -4, 1, -4)
Container.Visible = true;
ContainerLayout.Parent = Container
ContainerLayout.SortOrder =
Enum.SortOrder.LayoutOrder
DropdownTitle.Name = "DropdownTitle"
DropdownTitle.Parent = NewDropdown
DropdownTitle.BackgroundColor3 =
Library.Theme.ElementOn
DropdownTitle.BackgroundTransparency =
1.000
DropdownTitle.BorderColor3 =
Library.Theme.Border
DropdownTitle.BorderSizePixel = 0
DropdownTitle.Position =
UDim2.new(0.00990098994, 0, 0, 0)
DropdownTitle.Size = UDim2.new(0.990099013,
0, 0, 14)
DropdownTitle.FontFace = Library.MenuFont
DropdownTitle.Text = Data.Name;
DropdownTitle.TextColor3 =
Library.Theme.ElementOn
DropdownTitle.TextSize = Library.TextSize
DropdownTitle.TextXAlignment =
Enum.TextXAlignment.Left
DropdownTitle.TextYAlignment =
Enum.TextYAlignment.Top
end;
function Dropdown:Toggle()
Dropdown.IsOpen = not Dropdown.IsOpen;
local SizeToTween;
if Dropdown.IsOpen then
Dropdown.Container.Visible = true;
end;
if Dropdown.Max ~= 1 then
SizeToTween = UDim2.new(1, 4, 0,
(14 * Dropdown.Max) + 4);
else
SizeToTween = UDim2.new(1, 4, 0,
14);
end;
if Dropdown.IsOpen then
if Library.CurrentDropdown then
Library.CurrentDropdown.Container.Visible = false;
Library.CurrentDropdown.Container.Size = UDim2.new(1, 4, 0, 0)
Library.CurrentDropdown.IsOpen
= false;
end;
Library.CurrentDropdown = Dropdown;
Library:Tween(Dropdown.Container,
TweenInfo.new(0.2, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {Size =
SizeToTween});
else
Library.CurrentDropdown = nil;
Library:Tween(Dropdown.Container,
TweenInfo.new(0.2, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {Size =
UDim2.new(1, 4, 0, 0)});
task.wait(0.2);
Dropdown.Container.Visible = false;
end;
end;
function Dropdown:Update()
--if Dropdown.Max ~= 1 then
-- ContainerOutline.Size =
UDim2.new(1, 4, 0, (14 * Dropdown.Max) + 4);
--else
-- ContainerOutline.Size =
UDim2.new(1, 4, 0, 14);
--end;
end;
DropdownInner.MouseEnter:Connect(function()
Library:Tween(DropdownOutline,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.Accent});
end);
DropdownInner.MouseLeave:Connect(function()
Library:Tween(DropdownOutline,
TweenInfo.new(0.1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
{BackgroundColor3 = Library.Theme.LightContrast});
end);
DropdownInner.MouseButton1Down:Connect(function()
Dropdown:Toggle();
end);
function Dropdown:Set(Value)
Dropdown.Value = {};
DropdownFlag.Text = "";
Library:Tween(Dropdown.Options[Index].Button, TweenInfo.new(0.1,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
end;
if DropdownFlag.TextBounds.X >
(DropdownFlag.AbsoluteSize.X - 10) then
DropdownFlag.Text =
DropdownFlag.Text:sub(1, 17) .. "...";
end;
end;
Dropdown.Options[Value].Selector.Visible = true;
Library:Tween(Dropdown.Options[Value].Button, TweenInfo.new(0.1,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
Dropdown.Options[Value].IsSelected = true;
end;
end;
Dropdown.Options[I].Selector.Visible = false;
Dropdown.Options[I].Button.TextColor3 = Library.Theme.ElementOff;
end;
end;
function Dropdown:AddOption(Name)
local NewOption =
Instance.new("TextButton")
local Frame = Instance.new("Frame")
local Option = {
Name = Name;
IsSelected = false;
Selector = Frame;
Button = NewOption;
};
NewOption.Name = "NewOption"
NewOption.Parent = Container
NewOption.BackgroundColor3 =
Library.Theme.ElementOff
NewOption.BackgroundTransparency =
1.000
NewOption.BorderColor3 =
Library.Theme.Border
NewOption.BorderSizePixel = 0
NewOption.Size = UDim2.new(1, 0, 0, 14)
NewOption.FontFace = Library.MenuFont
NewOption.Text = Name;
NewOption.TextColor3 =
Library.Theme.ElementOff;
NewOption.TextSize = Library.TextSize
Frame.Parent = NewOption
Frame.BackgroundColor3 =
Library.Theme.Accent
Frame.BorderColor3 =
Library.Theme.Border
Frame.BorderSizePixel = 0
Frame.Size = UDim2.new(0, 2, 1, 0);
Frame.Visible = false;
NewOption.MouseButton1Down:Connect(function()
Option.IsSelected = not
Option.IsSelected;
if Option.IsSelected then
Library:Tween(NewOption,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
Frame.Visible = true;
task.spawn(function()
Dropdown.Value[#Dropdown.Value+1] = Option.Name
Dropdown:Set(Dropdown.Value);
end);
else
task.spawn(function()
for Index, Value in next,
Dropdown.Value do
if Value == Option.Name
then
Dropdown.Value[Index] = nil;
end;
end;
Dropdown:Set(Dropdown.Value);
end);
Frame.Visible = false;
Library:Tween(NewOption,
TweenInfo.new(0.2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
end;
end);
Dropdown.Options[Option.Name] = Option;
return Option;
end;
function Dropdown:RemoveOption(Name)
if Dropdown.Options[Name] then
Dropdown.Options[Name].Button:Destroy();
Dropdown.Options[Name] = nil;
end;
end;
end;
if Dropdown.Default then
Dropdown:Set(Dropdown.Default);
else
Dropdown:Set({Data.Options[1]});
end;
Section.Bounds = Section.Bounds + 37;
SectionBorder.Size = UDim2.new(1, 0, 0,
Section.Bounds);
Library.Flags[Data.Flag] = Dropdown;
return Dropdown;
end;
function Section:List(Data)
local List = {
Options = {};
Value = "";
Name = Data.Name;
Flag = Data.Flag;
Callback = Data.Callback or function() end;
};
local Holder = Instance.new("Frame")
local TextLabel = Instance.new("TextLabel")
local MainOutline = Instance.new("Frame")
local MainOutline2 = Instance.new("Frame")
local ScrollingFrame =
Instance.new("ScrollingFrame")
local UIListLayout =
Instance.new("UIListLayout")
do --// Properties
Holder.Name = "Holder"
Holder.Parent = SectionInner
Holder.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
Holder.BackgroundTransparency = 1.000
Holder.BorderColor3 = Color3.fromRGB(0, 0,
0)
Holder.BorderSizePixel = 0
Holder.Position = UDim2.new(0, 2, 0,
Section.Bounds)
Holder.Size = UDim2.new(1, -4, 0, 100)
TextLabel.Parent = Holder
TextLabel.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
TextLabel.BackgroundTransparency = 1.000
TextLabel.BorderColor3 = Color3.fromRGB(0,
0, 0)
TextLabel.BorderSizePixel = 0
TextLabel.Position =
UDim2.new(0.00999999978, 0, 0, 0)
TextLabel.Size = UDim2.new(0.899999976, 0,
0, 14)
TextLabel.FontFace = Library.MenuFont
TextLabel.Text = Data.Name
TextLabel.TextColor3 = Color3.fromRGB(255,
255, 255)
TextLabel.TextSize = Library.TextSize
TextLabel.TextXAlignment =
Enum.TextXAlignment.Left
MainOutline.Name = "MainOutline"
MainOutline.Parent = Holder
MainOutline.BackgroundColor3 =
Color3.fromRGB(37, 37, 37)
MainOutline.BorderColor3 =
Color3.fromRGB(0, 0, 0)
MainOutline.Position = UDim2.new(0, 0, 0,
14)
MainOutline.Size = UDim2.new(1, 0, 0, 100)
MainOutline2.Name = "MainOutline2"
MainOutline2.Parent = MainOutline
MainOutline2.BackgroundColor3 =
Library.Theme.MedianContrast;
MainOutline2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
MainOutline2.Position = UDim2.new(0, 2, 0,
2)
MainOutline2.Size = UDim2.new(1, -4, 1, -4)
ScrollingFrame.Parent = MainOutline2
ScrollingFrame.Active = true
ScrollingFrame.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
ScrollingFrame.BackgroundTransparency =
1.000
ScrollingFrame.BorderColor3 =
Color3.fromRGB(0, 0, 0)
ScrollingFrame.BorderSizePixel = 0
ScrollingFrame.Size = UDim2.new(1, 0, 1, 0)
ScrollingFrame.ScrollBarThickness = 3
ScrollingFrame.ScrollBarImageColor3 =
Color3.fromRGB(34, 34, 34);
ScrollingFrame.AutomaticCanvasSize =
Enum.AutomaticSize.Y;
UIListLayout.Parent = ScrollingFrame
UIListLayout.SortOrder =
Enum.SortOrder.LayoutOrder
end;
do --// Functions
function List:AddOption(Name)
local OptionData = {
Name = Name;
IsSelected = false;
};
local Option =
Instance.new("TextButton");
OptionData.Button = Option;
Option.Name = "Option"
Option.Parent = ScrollingFrame
Option.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
Option.BackgroundTransparency = 1.000
Option.BorderColor3 = Color3.fromRGB(0,
0, 0)
Option.BorderSizePixel = 0
Option.Size = UDim2.new(1, 0, 0, 14)
Option.AutoButtonColor = false
Option.FontFace = Library.MenuFont;
Option.TextColor3 =
Library.Theme.ElementOff
Option.TextSize = Library.TextSize
Option.Text = OptionData.Name;
Option.MouseButton1Down:Connect(function()
OptionData.IsSelected = not
OptionData.IsSelected
List.Options[OptionData.Name] =
OptionData
end;
function List:RemoveOption(Name)
if List.Options[Name] then
List.Options[Name].Button:Destroy();
List.Options[Name] = nil;
end;
end;
function List:Set(Value)
if List.Options[Value] then
List.Value = Value;
List.Options[Value].IsSelected =
true;
Library:Tween(List.Options[Value].Button, TweenInfo.new(0.1,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
end;
if List.Callback then
pcall(List.Callback); end;
end;
end;
Library.Flags[Data.Flag] = List;
Section.Bounds = Section.Bounds + 117;
SectionBorder.Size = UDim2.new(1, 0, 0,
Section.Bounds);
return List;
end;
function Section:Searchbar(Data)
local List = {
Options = {};
Value = {};
Name = Data.Name;
Flag = Data.Flag;
Callback = Data.Callback or function() end;
};
pcall(function()
local Holder = Instance.new("Frame")
local TextLabel = Instance.new("TextLabel")
local MainOutline = Instance.new("Frame")
local MainOutline2 = Instance.new("Frame")
local ScrollingFrame =
Instance.new("ScrollingFrame")
local UIListLayout =
Instance.new("UIListLayout")
local SearchBoxOutline =
Instance.new("Frame")
local Searchbox = Instance.new("TextBox");
do --// Properties
Holder.Name = "Holder"
Holder.Parent = SectionInner
Holder.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
Holder.BackgroundTransparency = 1.000
Holder.BorderColor3 = Color3.fromRGB(0,
0, 0)
Holder.BorderSizePixel = 0
Holder.Position = UDim2.new(0, 2, 0,
Section.Bounds)
Holder.Size = UDim2.new(1, -4, 0, 100)
SearchBoxOutline.Parent = Holder;
SearchBoxOutline.BackgroundColor3 =
Library.Theme.LightContrast;
SearchBoxOutline.Size = UDim2.new(1, 0,
0, 14);
SearchBoxOutline.Position =
UDim2.new(0, 0, 0, 13);
SearchBoxOutline.BorderColor3 =
Library.Theme.Border;
SearchBoxOutline.BorderSizePixel = 1;
Searchbox.Name = "SetBox"
Searchbox.Parent = SearchBoxOutline
Searchbox.BackgroundColor3 =
Library.Theme.MedianContrast
Searchbox.BorderColor3 =
Color3.fromRGB(0, 0, 0)
Searchbox.Position = UDim2.new(0, 2, 0,
2)
Searchbox.Size = UDim2.new(1, -4, 1, -
4)
Searchbox.FontFace = Library.MenuFont;
Searchbox.TextYAlignment =
Enum.TextYAlignment.Bottom
Searchbox.Text = "";
Searchbox.TextColor3 =
Color3.fromRGB(255, 255, 255)
Searchbox.TextSize = Library.TextSize
TextLabel.Parent = Holder
TextLabel.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
TextLabel.BackgroundTransparency =
1.000
TextLabel.BorderColor3 =
Color3.fromRGB(0, 0, 0)
TextLabel.BorderSizePixel = 0
TextLabel.Position =
UDim2.new(0.00999999978, 0, 0, 0)
TextLabel.Size = UDim2.new(0.899999976,
0, 0, 14)
TextLabel.FontFace = Library.MenuFont
TextLabel.Text = Data.Name
TextLabel.TextColor3 =
Color3.fromRGB(255, 255, 255)
TextLabel.TextSize = Library.TextSize
TextLabel.TextXAlignment =
Enum.TextXAlignment.Left
MainOutline.Name = "MainOutline"
MainOutline.Parent = Holder
MainOutline.BackgroundColor3 =
Color3.fromRGB(37, 37, 37)
MainOutline.BorderColor3 =
Color3.fromRGB(0, 0, 0)
MainOutline.Position = UDim2.new(0, 0,
0, 28)
MainOutline.Size = UDim2.new(1, 0, 0,
50)
MainOutline2.Name = "MainOutline2"
MainOutline2.Parent = MainOutline
MainOutline2.BackgroundColor3 =
Library.Theme.MedianContrast;
MainOutline2.BorderColor3 =
Color3.fromRGB(0, 0, 0)
MainOutline2.Position = UDim2.new(0, 2,
0, 2)
MainOutline2.Size = UDim2.new(1, -4, 1,
-4)
ScrollingFrame.Parent = MainOutline2
ScrollingFrame.Active = true
ScrollingFrame.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
ScrollingFrame.BackgroundTransparency =
1.000
ScrollingFrame.BorderColor3 =
Color3.fromRGB(0, 0, 0)
ScrollingFrame.BorderSizePixel = 0
ScrollingFrame.Size = UDim2.new(1, 0,
1, 0)
ScrollingFrame.ScrollBarThickness = 3
ScrollingFrame.ScrollBarImageColor3 =
Color3.fromRGB(34, 34, 34);
ScrollingFrame.AutomaticCanvasSize =
Enum.AutomaticSize.Y;
UIListLayout.Parent = ScrollingFrame
UIListLayout.SortOrder =
Enum.SortOrder.LayoutOrder
end;
do --// Functions
function List:BeginSearching()
for Index, Value in next,
ScrollingFrame:GetChildren() do
if Value:IsA("GuiButton") then
local Text =
string.lower(Value.Text);
local Search =
string.lower(Searchbox.Text);
if Searchbox.Text == ""
then
Value.Visible = true;
else
if string.find(Text,
Search) then
Value.Visible =
true;
else
Value.Visible =
false;
end;
end;
end;
end;
end;
function List:AddOption(Name)
local OptionData = {
Name = Name;
IsSelected = false;
};
local Option =
Instance.new("TextButton");
OptionData.Button = Option;
Option.Name = "Option"
Option.Parent = ScrollingFrame
Option.BackgroundColor3 =
Color3.fromRGB(255, 255, 255)
Option.BackgroundTransparency =
1.000
Option.BorderColor3 =
Color3.fromRGB(0, 0, 0)
Option.BorderSizePixel = 0
Option.Size = UDim2.new(1, 0, 0,
14)
Option.AutoButtonColor = false
Option.FontFace = Library.MenuFont;
Option.TextColor3 =
Library.Theme.ElementOff
Option.TextSize = Library.TextSize
Option.Text = OptionData.Name;
Option.MouseButton1Down:Connect(function()
OptionData.IsSelected = not
OptionData.IsSelected
if OptionData.IsSelected then
task.spawn(function()
List.Value[#List.Value+1] = OptionData.Name
List:Set(List.Value);
end);
else
for Index, Value in next,
List.Value do
if Value ==
OptionData.Name then
List.Value[Index] =
nil;
end;
end;
Library:Tween(Option,
TweenInfo.new(0.1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {TextColor3
= Library.Theme.ElementOff});
end;
end);
OptionData.Button = Option;
List.Options[OptionData.Name] =
OptionData
end;
function List:Set(Value)
List.Value = {};
for Index, Value in next,
List.Options do
List.Options[Index].IsSelected
= false;
Library:Tween(List.Options[Index].Button, TweenInfo.new(0.1,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOff});
end;
Library:Tween(List.Options[Value].Button, TweenInfo.new(0.1,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {TextColor3 =
Library.Theme.ElementOn});
List.Options[Value].IsSelected = true;
end;
end;
if List.Callback then
pcall(List.Callback); end;
end;
function List:RemoveOption(Name)
if List.Options[Name] then
List.Options[Name].Button:Destroy();
List.Options[Name] = nil;
end;
end;
end;
do --// Searching
Searchbox:GetPropertyChangedSignal("Text"):Connect(function()
List:BeginSearching();
end);
end;
Library.Flags[Data.Flag] = List;
Section.Bounds = Section.Bounds + 84;
SectionBorder.Size = UDim2.new(1, 0, 0,
Section.Bounds);
return List;
end;
end;
Window.Tabs[Tab.Name].Sections[Data.Name] = Section
return Section
end;
Window.Tabs[Tab.Name] = Tab;
Window:UpdateTabs();
return Tab;
end;
function Window:Tooltip(Data)
local Tooltip = {
Text = Data.Text;
Parent = Data.Parent;
PhysicalParent = nil;
Frame = nil;
IsIn = false;
};
do --// Properties
Outline_Tip.Parent = WindowBorder;
Outline_Tip.Name = "Tooltip - "..Data.Text;
Outline_Tip.BackgroundColor3 =
Library.Theme.LightContrast;
Outline_Tip.ZIndex = 1001;
Outline_Tip.BorderSizePixel = 1;
Outline_Tip.BorderColor3 = Library.Theme.Border;
Outline_Tip.Visible = true;
Outline_Tip.BackgroundTransparency = 1;
Outline_Tip.Size = UDim2.new(1, 0, 0, 12)
Outline_Tip.Position = UDim2.new(0, 0, 1, 3);
Inner_Tip.BackgroundColor3 =
Library.Theme.DarkContrast;
Inner_Tip.BorderSizePixel = 1;
Inner_Tip.Size = UDim2.new(1, -4, 1, -4);
Inner_Tip.Position = UDim2.new(0, 2, 0, 2);
Inner_Tip.BorderColor3 = Library.Theme.Border;
Inner_Tip.BackgroundTransparency = 1;
New_Text.BackgroundTransparency = 1;
New_Text.TextTransparency = 1;
New_Text.FontFace = Library.MenuFont;
New_Text.TextSize = Library.TextSize;
New_Text.TextColor3 = Color3.new(1,1,1);
New_Text.Size = UDim2.new(1, 0, 1, 0);
New_Text.Name = "New_TextTip"
end;
do --// Functions
Frame.MouseEnter:Connect(function()
Tooltip.IsIn = true;
Library:Tween(Inner_Tip, TweenInfo.new(0.3,
Enum.EasingStyle.Linear, Enum.EasingDirection.In), {BackgroundTransparency = 0});
Library:Tween(Outline_Tip, TweenInfo.new(0.3,
Enum.EasingStyle.Linear, Enum.EasingDirection.In), {BackgroundTransparency = 0});
Library:Tween(New_Text, TweenInfo.new(0.3,
Enum.EasingStyle.Linear, Enum.EasingDirection.In), {TextTransparency = 0});
end);
Frame.MouseLeave:Connect(function()
Tooltip.IsIn = false;
Library:Tween(Inner_Tip, TweenInfo.new(0.5,
Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {BackgroundTransparency = 1});
Library:Tween(Outline_Tip, TweenInfo.new(0.5,
Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {BackgroundTransparency = 1});
local TextTween = Library:Tween(New_Text,
TweenInfo.new(0.5, Enum.EasingStyle.Quart, Enum.EasingDirection.Out),
{TextTransparency = 1});
end);
end;
New_Text.Text = Tooltip.Text;
end;
end;
Window.Main = LibraryScreenGui;
Library.Windows[#Library.Windows+1] = Window;
return Window
end;
function Library:AddSettingsTab(Window)
local SettingsTab = Window:NewTab({Name = "Settings"});
local ConfigDropdown;
--ConfigDropdown:Update();
else
for Index, Value in next, ConfigDropdown.Options do
ConfigDropdown:RemoveOption(Index)
end;
ConfigDropdown:AddOption("Legit");
ConfigDropdown:AddOption("Rage");
ConfigDropdown:AddOption("Semirage");
ConfigDropdown:AddOption("Semilegit");
--ConfigDropdown:Update();
end;
end;
Library:LoadConfig(readfile("Ethereal/Configs/"..Library.Flags["SelectedConfig"].Va
lue..".txt"));
end});
Library:SaveConfig(Library.Flags["SelectedConfig"].Value);
end})
ConfigSection:Button({Name = "Delete selected Config",
Callback = function()
task.spawn(function()
Library:Notify("Deleting config | Config name: "..
Library.Flags.SelectedConfig.Value, 3);
Library:DeleteConfig(Library.Flags["SelectedConfig"].Value)
task.wait(0.2);
Library:Notify("Refreshing configs...");
RefreshConfigs()
end);
end});
ConfigSection:Button({Name = "Refresh configs", Callback =
function()
task.spawn(function()
Library:Notify("Refreshing configs...");
RefreshConfigs()
end);
end});
Library:SaveConfig(Library.Flags["NewConfigName"].Value);
task.wait(0.3);
Library.WatermarkText.Text = ("Ethereal | %s | %s |
Config - %s"):format(GameName, LRM_LinkedDiscordID, Library.Config);
RefreshConfigs()
Library:Notify("Created config! | Config name: "..
Library.Flags.NewConfigName.Value .. ", refreshing configs now!", 3);
end);
end})
end;
if listfiles then
for Index, File in
ipairs(listfiles("Ethereal/Plugins")) do
local FileName =
File:gsub("Ethereal/Plugins\\", ""):gsub(".lua", "")
List[#List + 1] = FileName;
end;
Library.Flags.SelectedPlugin.Max = #List;
Library.Flags.SelectedPlugin:Update()
end;
PluginSection:Dropdown({Name = "Selected plugin", Flag =
"SelectedPlugin", Max = 3, Options = {""}});
PluginSection:Button({Name = "Load plugin", Callback =
function()
Library:Notify("Loading plugin | Plugin name:
"..Library.Flags.SelectedPlugin.Value, 2);
loadfile("Ethereal/Plugins/"..Library.Flags.SelectedPlugin.Value..".lua")();
end})
PluginSection:Button({Name = "Refresh plugins", Callback =
function()
Library:Notify("Refreshing plugins...", 2);
RefreshPlugins()
end})
RefreshPlugins()
end;
function Library:AddStandardWorldTab(VisualsTab)
local WorldTab = VisualsTab:Add({Name = "World"});
return WorldTab;
end;
function Library:AddFOVSection(CombatTab)
local Visuals = CombatTab:NewSection({Name = "Visuals", Side =
"Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
function Library:AddPreview(ShowOn)
local Preview = {
Elements = {Corner = {}},
Components = {},
BodyParts = {},
};
Preview.MainFrame = MainFrame;
do --// Properties
do --/ Main
ESPPreviewOutter.Name = "ESPPreviewOutter"
ESPPreviewOutter.Parent = MainFrame;
ESPPreviewOutter.BackgroundColor3 =
Library.Theme.LightContrast
ESPPreviewOutter.BorderColor3 = Library.Theme.Border
PreviewTitleOutter.Name = "PreviewTitleOutter"
PreviewTitleOutter.Parent = ESPPreviewInner
PreviewTitleOutter.BackgroundColor3 =
Library.Theme.LightContrast
PreviewTitleOutter.BorderColor3 = Library.Theme.Border
PreviewTitleOutter.Position = UDim2.new(0, -2, 0, -15)
PreviewTitleOutter.Size = UDim2.new(1, 4, 0, 12)
PreviewTitleOutter.FontFace = Library.MenuFont
PreviewTitleOutter.Text = "Preview"
PreviewTitleOutter.TextColor3 = Color3.fromRGB(0, 0, 0)
PreviewTitleOutter.TextSize = Library.TextSize;
Previewtitle.Name = "Previewtitle"
Previewtitle.Parent = PreviewTitleOutter
Previewtitle.BackgroundColor3 = Library.Theme.DarkContrast
Previewtitle.BorderColor3 = Color3.fromRGB(0, 0, 0)
Previewtitle.Position = UDim2.new(0, 2, 0, 2)
Previewtitle.Size = UDim2.new(1, -4, 1, -4)
Previewtitle.FontFace = Library.MenuFont
Previewtitle.Text = "Visuals Preview"
Previewtitle.TextColor3 = Color3.fromRGB(255, 255, 255)
Previewtitle.TextSize = Library.TextSize;
Character.Name = "Character"
Character.Parent = ESPPreviewInner
Head.Name = "Head"
Head.Parent = Character
Head.AnchorPoint = Vector2.new(0.5, 0)
Head.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Head.BorderColor3 = Color3.fromRGB(0, 0, 0)
Head.BorderSizePixel = 0
Head.Position = UDim2.new(0.499702811, 0, 0.196660534, -1)
Head.Size = UDim2.new(0, 42, 0, 44)
RightLeg.Name = "RightLeg"
RightLeg.Parent = Character
RightLeg.AnchorPoint = Vector2.new(0.5, 0)
RightLeg.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
RightLeg.BorderColor3 = Color3.fromRGB(0, 0, 0)
RightLeg.BorderSizePixel = 0
RightLeg.Position = UDim2.new(0.549000025, 3, 0.556999981,
1)
RightLeg.Size = UDim2.new(0, 30, 0, 92)
LeftLeg.Name = "LeftLeg"
LeftLeg.Parent = Character
LeftLeg.AnchorPoint = Vector2.new(0.5, 0)
LeftLeg.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
LeftLeg.BorderColor3 = Color3.fromRGB(0, 0, 0)
LeftLeg.BorderSizePixel = 0
LeftLeg.Position = UDim2.new(0.43900001, 0, 0.556999981, 1)
LeftLeg.Size = UDim2.new(0, 30, 0, 92)
RightArm.Name = "RightArm"
RightArm.Parent = Character
RightArm.AnchorPoint = Vector2.new(0.5, 0)
RightArm.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
RightArm.BorderColor3 = Color3.fromRGB(0, 0, 0)
RightArm.BorderSizePixel = 0
RightArm.Position = UDim2.new(0.671864212, 0, 0.313197464,
0)
RightArm.Size = UDim2.new(0, 26, 0, 92)
Torso.Name = "Torso"
Torso.Parent = Character
Torso.AnchorPoint = Vector2.new(0.5, 0)
Torso.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Torso.BorderColor3 = Color3.fromRGB(0, 0, 0)
Torso.BorderSizePixel = 0
Torso.Position = UDim2.new(0.49935773, 0, 0.31028387, 1)
Torso.Size = UDim2.new(0, 62, 0, 92)
LeftArm.Name = "LeftArm"
LeftArm.Parent = Character
LeftArm.AnchorPoint = Vector2.new(0.5, 0)
LeftArm.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
LeftArm.BorderColor3 = Color3.fromRGB(0, 0, 0)
LeftArm.BorderSizePixel = 0
LeftArm.Position = UDim2.new(0.324000001, 0, 0.312999994,
0)
LeftArm.Size = UDim2.new(0, 26, 0, 92)
end;
BoxStroke.Parent = Box;
BoxStroke.LineJoinMode = "Miter";
BoxStroke.ApplyStrokeMode = "Border";
BoxStroke.Color = Color3.fromRGB(255, 255, 255);
BoxStroke.Transparency = 0;
NameText.Name = "NameText"
NameText.Parent = Box
NameText.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
NameText.BackgroundTransparency = 1.000
NameText.BorderColor3 = Color3.fromRGB(0, 0, 0)
NameText.BorderSizePixel = 0
NameText.Position = UDim2.new(0, 0, -0.079497911, 0)
NameText.Size = UDim2.new(0, 132, 0, 19)
NameText.FontFace = Library.MenuFont
NameText.Text = "DranghetaLurk"
NameText.TextColor3 = Color3.fromRGB(255, 255, 255)
NameText.TextSize = Library.TextSize;
NameText.Visible = false;
DistanceText.Name = "DistanceText"
DistanceText.Parent = Box
DistanceText.BackgroundColor3 = Color3.fromRGB(255, 255,
255)
DistanceText.BackgroundTransparency = 1.000
DistanceText.BorderColor3 = Color3.fromRGB(0, 0, 0)
DistanceText.BorderSizePixel = 0
DistanceText.Position = UDim2.new(-0.0075757578, 0,
1.02092052, 0)
DistanceText.Size = UDim2.new(0, 132, 0, 16)
DistanceText.FontFace = Library.MenuFont
DistanceText.Text = "100 meters"
DistanceText.TextColor3 = Color3.fromRGB(255, 255, 255)
DistanceText.TextSize = Library.TextSize;
DistanceText.Visible = false;
WeaponText.Name = "WeaponText"
WeaponText.Parent = Box
WeaponText.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
WeaponText.BackgroundTransparency = 1.000
WeaponText.BorderColor3 = Color3.fromRGB(0, 0, 0)
WeaponText.BorderSizePixel = 0
WeaponText.Position = UDim2.new(-0.0075757578, 0,
1.06276155, 0)
WeaponText.Size = UDim2.new(0, 132, 0, 16)
WeaponText.FontFace = Library.MenuFont
WeaponText.Text = "M4A1-S"
WeaponText.TextColor3 = Color3.fromRGB(255, 255, 255)
WeaponText.TextSize = Library.TextSize
WeaponText.Visible = false;
Healthtext.Name = "Healthtext"
Healthtext.Parent = Healthbar
Healthtext.Position = UDim2.new(1, -20, 0, 0);
Healthtext.Size = UDim2.new(0, 24, 0, 3);
Healthtext.TextXAlignment = Enum.TextXAlignment.Center;
Healthtext.FontFace = Library.SmallFont
Healthtext.Text = "100"
Healthtext.TextColor3 = Color3.fromRGB(255, 255, 255)
Healthtext.TextSize = Library.TextSize;
Healthtext.Visible = false;
InventoryText.Name = "InventoryText"
InventoryText.Parent = Box
InventoryText.BackgroundColor3 = Color3.fromRGB(255, 255,
255)
InventoryText.BackgroundTransparency = 1.000
InventoryText.BorderColor3 = Color3.fromRGB(0, 0, 0)
InventoryText.BorderSizePixel = 0
InventoryText.Position = UDim2.new(-0.0075757578, 0,
1.06276155, 0)
InventoryText.Size = UDim2.new(0, 132, 0, 16)
InventoryText.FontFace = Library.MenuFont
InventoryText.Text = "[Bandages, Medkit, Knife]"
InventoryText.TextColor3 = Color3.fromRGB(255, 255, 255)
InventoryText.TextSize = Library.TextSize
InventoryText.Visible = false;
WeaponImage.Name = "WeaponImage"
WeaponImage.Parent = Box
WeaponImage.BackgroundColor3 = Color3.fromRGB(255, 255,
255)
WeaponImage.BackgroundTransparency = 1.000
WeaponImage.BorderColor3 = Color3.fromRGB(0, 0, 0)
WeaponImage.BorderSizePixel = 0
WeaponImage.Size = UDim2.new(0, 40, 0, 16)
WeaponImage.Image = "rbxassetid://16600641613"
WeaponImage.ScaleType = Enum.ScaleType.Crop
WeaponImage.Position = UDim2.new(0.5, 0, 0, 0);
WeaponImage.AnchorPoint = Vector2.new(0.5, 0);
WeaponImage.Visible = false;
Flags.Name = "Flags"
Flags.Parent = Box
Flags.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Flags.BackgroundTransparency = 1.000
Flags.BorderColor3 = Color3.fromRGB(0, 0, 0)
Flags.BorderSizePixel = 0
Flags.Position = UDim2.new(1.0454545, 0, -0.00418410031, 0)
Flags.Size = UDim2.new(0, 40, 0, 16)
Flags.FontFace = Library.SmallFont
Flags.Text = "VIS\nSCOPE\nCROUCH\nRELIC"
Flags.TextColor3 = Color3.fromRGB(255, 255, 255)
Flags.TextSize = Library.SmallSize;
Flags.TextXAlignment = Enum.TextXAlignment.Left
Flags.Visible = false;
Healthbar.Name = "Healthbar"
Healthbar.Parent = Box
Healthbar.BackgroundColor3 = Color3.fromRGB(115, 255, 83)
Healthbar.BorderColor3 = Color3.fromRGB(0, 0, 0)
Healthbar.Position = UDim2.new(-0.0610000007, 0, 0, -1)
Healthbar.Size = UDim2.new(0, 1, 1, 2)
Healthbar.Visible = false;
Ammobar.Name = "Ammobar"
Ammobar.Parent = Box
Ammobar.BackgroundColor3 = Color3.fromRGB(48, 103, 255)
Ammobar.BorderColor3 = Color3.fromRGB(0, 0, 0)
Ammobar.BorderSizePixel = 0
Ammobar.Position = UDim2.new(0, -1, 1, 5)
Ammobar.Size = UDim2.new(1, 2, 0, 1)
Ammobar.Visible = false;
HealthbarInvert.Parent = Healthbar;
HealthbarInvert.BackgroundColor3 = Color3.fromRGB(0, 0, 0);
HealthbarInvert.BorderColor3 = Color3.fromRGB(0, 0, 0);
HealthbarInvert.BorderSizePixel = 0;
HealthbarInvert.Size = UDim2.new(1, 0, 0, 0);
AmmobarInvert.Parent = Ammobar;
AmmobarInvert.BackgroundColor3 = Color3.fromRGB(0, 0, 0);
AmmobarInvert.BorderColor3 = Color3.fromRGB(0, 0, 0);
AmmobarInvert.BorderSizePixel = 0;
AmmobarInvert.Size = UDim2.new(1, 0, 0, 0);
end;
do --// Corner
do --// Corners creation
local Corners = Preview.Elements.Corner
do --// Inline
Corners[1] = Instance.new("Frame");
Corners[1].Parent = Box
Corners[1].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[1].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[1].BorderSizePixel = 0
Corners[1].Size = UDim2.new(0.3, 0, 0, 1)
Corners[1].Position = UDim2.new(0, 0, 0, -2);
Corners[2] = Instance.new("Frame");
Corners[2].Parent = Box
Corners[2].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[2].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[2].BorderSizePixel = 0
Corners[2].Size = UDim2.new(0, 1, 0.3, 0)
Corners[2].Position = UDim2.new(0, 0, 0, -2)
Corners[3] = Instance.new("Frame");
Corners[3].Parent = Box
Corners[3].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[3].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[3].BorderSizePixel = 0
Corners[3].Position = UDim2.new(0.7, -1, 0, -2)
Corners[3].Size = UDim2.new(0.3, 0, 0, 1)
Corners[4] = Instance.new("Frame");
Corners[4].Parent = Box
Corners[4].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[4].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[4].BorderSizePixel = 0
Corners[4].Position = UDim2.new(1, -1, 0, -2)
Corners[4].Size = UDim2.new(0, 1, 0.3, 1)
Corners[5] = Instance.new("Frame");
Corners[5].Parent = Box
Corners[5].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[5].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[5].BorderSizePixel = 0
Corners[5].Position = UDim2.new(0, 0, 0.7, 1)
Corners[5].Size = UDim2.new(0, 1, 0.3, 0)
Corners[6] = Instance.new("Frame");
Corners[6].Parent = Box
Corners[6].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[6].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[6].BorderSizePixel = 0
Corners[6].Position = UDim2.new(0, 0, 1, 1)
Corners[6].Size = UDim2.new(0.3, 0, 0, 1)
Corners[7] = Instance.new("Frame");
Corners[7].Parent = Box
Corners[7].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[7].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[7].BorderSizePixel = 0
Corners[7].Position = UDim2.new(1, -1, 0.7, 1)
Corners[7].Size = UDim2.new(0, 1, 0.3, 0)
Corners[8] = Instance.new("Frame");
Corners[8].Parent = Box
Corners[8].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[8].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[8].BorderSizePixel = 0
Corners[8].Position = UDim2.new(0.7, 0, 1, 1)
Corners[8].Size = UDim2.new(0.3, 0, 0, 1);
end;
do --// Outline
Corners[9] = Instance.new("Frame");
Corners[9].Parent = Box
Corners[9].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[9].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[9].BorderSizePixel = 1
Corners[9].Size = UDim2.new(0.3, 0, 0, 1)
Corners[9].Position = UDim2.new(0, 0, 0, -2)
Corners[10] = Instance.new("Frame");
Corners[10].Parent = Box
Corners[10].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[10].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[10].BorderSizePixel = 1
Corners[10].Size = UDim2.new(0, 1, 0.3, 0)
Corners[10].Position = UDim2.new(0, 0, 0, -2);
Corners[11] = Instance.new("Frame");
Corners[11].Parent = Box
Corners[11].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[11].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[11].BorderSizePixel = 1
Corners[11].Position = UDim2.new(0.7, -1, 0, -2)
Corners[11].Size = UDim2.new(0.3, 0, 0, 1)
Corners[12] = Instance.new("Frame");
Corners[12].Parent = Box
Corners[12].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[12].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[12].BorderSizePixel = 1
Corners[12].Position = UDim2.new(1, -1, 0, -2)
Corners[12].Size = UDim2.new(0, 1, 0.3, 0)
Corners[13] = Instance.new("Frame");
Corners[13].Parent = Box
Corners[13].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[13].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[13].BorderSizePixel = 1
Corners[13].Position = UDim2.new(0, 0, 0.7, 1)
Corners[13].Size = UDim2.new(0, 1, 0.3, 0)
Corners[14] = Instance.new("Frame");
Corners[14].Parent = Box
Corners[14].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[14].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[14].BorderSizePixel = 1
Corners[14].Position = UDim2.new(0, 0, 1, 1)
Corners[14].Size = UDim2.new(0.3, 0, 0, 1)
Corners[15] = Instance.new("Frame");
Corners[15].Parent = Box
Corners[15].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[15].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[15].BorderSizePixel = 1
Corners[15].Position = UDim2.new(1, -1, 0.7, 1)
Corners[15].Size = UDim2.new(0, 1, 0.3, 0)
Corners[16] = Instance.new("Frame");
Corners[16].Parent = Box
Corners[16].BackgroundColor3 = Color3.fromRGB(255,
255, 255)
Corners[16].BorderColor3 = Color3.fromRGB(0, 0, 0)
Corners[16].BorderSizePixel = 1
Corners[16].Position = UDim2.new(0.7, 0, 1, 1)
Corners[16].Size = UDim2.new(0.3, 0, 0, 1);
end;
end;
end;
Preview.BodyParts.Head = Head;
Preview.BodyParts.RightLeg = RightLeg;
Preview.BodyParts.RightArm = RightArm;
Preview.BodyParts.LeftLeg = LeftLeg;
Preview.BodyParts.LeftArm = LeftArm;
Preview.BodyParts.Torso = Torso;
Preview.Elements.RegularStroke = BoxStroke
Preview.Elements.Box = Box;
Preview.Elements.Username = NameText;
Preview.Elements.Distance = DistanceText;
Preview.Elements.Flags = Flags;
Preview.Elements.WeaponImage = WeaponImage;
Preview.Elements.Weapon = WeaponText;
Preview.Elements.Healthbar = Healthbar;
Preview.Elements.HealthValue = Healthtext;
Preview.Elements.Ammobar = Ammobar;
Preview.Elements.Inventory = InventoryText;
Preview.Elements.AmmobarInvert = AmmobarInvert;
Preview.Elements.HealthbarInvert = HealthbarInvert;
end;
end;
do --// Functions
function Preview:Update()
if Library.Windows[1].CurrentTab == ShowOn then
ESPPreviewOutter.Visible = true;
local ElapsedTime = tick() - StartTime
local BottomBounds = 0;
local TopBounds = 0;
local LeftBounds = 0;
local RightBounds = 0;
do --// Boxes
local Corners = Components.Corner;
if Library.Flags.ESPBox and
Library.Flags.ESPBox.Value then
Components.RegularStroke.Color =
Library.Flags.BoxColor.Color;
Components.RegularStroke.Color =
Library.Flags.BoxColor.Color
do --// Corners
if Library.Flags.BoxStyle and
Library.Flags.BoxStyle.Value == "Corner" then
--// Inline
do
Corners[1].Visible = true;
Corners[1].ZIndex = 3;
Corners[1].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[2].Visible = true;
Corners[2].ZIndex = 3;
Corners[2].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[3].Visible = true;
Corners[3].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[3].ZIndex = 3;
Corners[4].Visible = true;
Corners[4].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[4].ZIndex = 3;
Corners[5].Visible = true;
Corners[5].ZIndex = 3;
Corners[5].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[6].Visible = true;
Corners[6].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[6].ZIndex = 3;
Corners[7].Visible = true;
Corners[7].ZIndex = 3;
Corners[7].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[8].Visible = true;
Corners[8].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[8].ZIndex = 3;
end;
--// Outline
do
Corners[9].Visible = true;
Corners[9].ZIndex = 2;
Corners[9].BorderSizePixel = 1;
Corners[9].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[10].Visible = true;
Corners[10].ZIndex = 2;
Corners[10].BorderSizePixel = 1;
Corners[10].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[11].BorderSizePixel = 1;
Corners[11].Visible = true;
Corners[11].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[11].ZIndex = 2;
Corners[12].BorderSizePixel = 1;
Corners[12].Visible = true;
Corners[12].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[12].ZIndex = 2;
Corners[13].BorderSizePixel = 1;
Corners[13].Visible = true;
Corners[13].ZIndex = 2;
Corners[13].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[14].BorderSizePixel = 1;
Corners[14].Visible = true;
Corners[14].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[14].ZIndex = 2;
Corners[15].BorderSizePixel = 1;
Corners[15].Visible = true;
Corners[15].ZIndex = 2;
Corners[15].BackgroundColor3 =
Components.RegularStroke.Color;
Corners[16].BorderSizePixel = 1;
Corners[16].Visible = true;
Corners[16].BackgroundColor3 =
Color3.fromRGB();
Corners[16].ZIndex = 2;
end;
else
if Corners[1].Visible then
for Index = 1, 16 do
Corners[Index].Visible = false;
end;
end;
end;
end;
if Library.Flags.BoxStyle and
Library.Flags.BoxStyle.Value == "Corner" then
Components.RegularStroke.Enabled = false;
else
Components.RegularStroke.Enabled = true;
end;
else
if Corners[1].Visible then
for Index = 1, 16 do
Corners[Index].Visible = false;
end;
end;
Components.RegularStroke.Enabled = false;
end;
end;
do --// Healthbar
if Library.Flags.ESPHealthBar and
Library.Flags.ESPHealthBar.Value then
local LerpedColor =
Library.Flags["HealthBarColorLower"].Color:lerp(Library.Flags["HealthBarColorHigher
"].Color, Health / MaxHealth);
Components.Healthbar.BackgroundColor3 =
LerpedColor;
Components.Healthbar.Visible = true;
else
Components.Healthbar.Visible = false;
end;
end;
do --// Ammobar
if Library.Flags.ESPAmmoBar and
Library.Flags.ESPAmmoBar.Value then
local LerpedColor =
Library.Flags["AmmobarColorLower"].Color:lerp(Library.Flags["AmmobarColorHigher"].C
olor, Ammo / MaxAmmo);
do --// Sizing for custom positions
if Library.Flags.AmmobarPosition and
(Library.Flags.AmmobarPosition.Value == "Bottom" or
Library.Flags.AmmobarPosition.Value == "Top") then
if Library.Flags.BoxStyle and
Library.Flags.BoxStyle.Value ~= "Corner" then
Components.Ammobar.Size =
UDim2.new(1, 4, 0, 1);
else
Components.Ammobar.Size =
UDim2.new(1, 0, 0, 1);
end;
Components.AmmobarInvert.Size =
UDim2.new(0, (Components.Ammobar.AbsoluteSize.X * (1 - Ammo / MaxAmmo)), 0, 1);
Components.AmmobarInvert.AnchorPoint =
Vector2.new(1, 0);
else
Components.AmmobarInvert.AnchorPoint =
Vector2.new(0, 0);
Components.Ammobar.Size = UDim2.new(0,
1, 1, 4)
Components.AmmobarInvert.Size =
UDim2.new(1, 0, 0, (Components.Ammobar.AbsoluteSize.Y* (1 - Ammo / MaxAmmo)));
end;
end;
if Library.Flags.BoxStyle and
Library.Flags.BoxStyle.Value ~= "Corner" then
Components.Ammobar.Position =
TopOffset + UDim2.new(0, -2, 0, 12 + 1 - TopBounds);
Components.AmmobarInvert.Position =
UDim2.new(1, 0, 0, 0);
else
Components.Ammobar.Position =
TopOffset + UDim2.new(0, 0, 0, 12 + 1 - TopBounds);
Components.AmmobarInvert.Position =
UDim2.new(1, 0, 0, 0);
end;
TopBounds = TopBounds + 1 + 4;
elseif Library.Flags.AmmobarPosition and
Library.Flags.AmmobarPosition.Value == "Left" then
Components.AmmobarInvert.Position =
UDim2.new(0, 0, 0, 0);
Components.Ammobar.Position =
LeftOffset + UDim2.new(0, LeftBounds, 0, 0);
LeftBounds = LeftBounds - (1 + 6);
elseif Library.Flags.AmmobarPosition and
Library.Flags.AmmobarPosition.Value == "Right" then
Components.AmmobarInvert.Position =
UDim2.new(0, 0, 0, 0);
Components.Ammobar.Position =
RightOffset + UDim2.new(0, RightBounds, 0, 0);
RightBounds = RightBounds + 1 + 6;
end;
end;
Components.Ammobar.BackgroundColor3 =
LerpedColor;
Components.Ammobar.Visible = true;
else
Components.Ammobar.Visible = false;
end;
end;
do --// Flags
local TotalFlags = 0;
if Library.Flags.ESPFlags and
Library.Flags.ESPFlags.Value then
Components.Flags.Visible = true
Components.Flags.FontFace = Library.SmallFont
Components.Flags.TextSize = Library.SmallSize
Components.Flags.Position = RightOffset +
UDim2.new(0, RightBounds, 0, -3)
Components.Flags.TextTransparency =
Transparency
Components.Flags.RichText = true
Components.Flags.TextYAlignment =
Enum.TextYAlignment.Top
Components.Flags.Text = FlagsText
RightBounds = RightBounds + 10
else
Components.Flags.Visible = false
end
end;
do --// Username
if Library.Flags.ESPName and
Library.Flags.ESPName.Value then
Components.Username.Visible = true;
Components.Username.Text = "Username";
Components.Username.TextColor3 =
Library.Flags.NameColor.Color
if Library.Flags.UsernamePosition and
Library.Flags.UsernamePosition.Value == "Bottom" then
Components.Username.TextYAlignment =
Enum.TextYAlignment.Top;
Components.Username.Position = BottomOffset
+ UDim2.new(0, 0, 0, BottomBounds);
BottomBounds = BottomBounds +
Components.Username.TextSize + 1;
else
Components.Username.TextYAlignment =
Enum.TextYAlignment.Center;
Components.Username.Position = TopOffset +
UDim2.new(0, 0, 0, -TopBounds);
TopBounds = TopBounds +
Components.Username.TextSize + 1;
end;
else
Components.Username.Visible = false;
end;
end;
Components.Inventory.TextColor3 =
Library.Flags.InventoryColor.Color
end;
do --// Weapon
if Library.Flags.ESPWeapon and
Library.Flags.ESPWeapon.Value and WeaponName ~= "None" then
Components.Weapon.Visible = true;
Components.Weapon.Text = "M4A1-S";
Components.Weapon.Text = Components.Weapon.Text
.. " ["..tostring(30).."/"..tostring(30).."]";
Components.Weapon.TextColor3 =
Library.Flags.WeaponColor.Color;
if Library.Flags.WeaponPosition and
Library.Flags.WeaponPosition.Value == "Top" then
Components.Weapon.TextYAlignment =
Enum.TextYAlignment.Center;
Components.Weapon.Position = TopOffset +
UDim2.new(0, 0, 0, -TopBounds);
TopBounds = TopBounds +
Components.Weapon.TextSize + 1;
else
Components.Weapon.TextYAlignment =
Enum.TextYAlignment.Top;
Components.Weapon.Position = BottomOffset +
UDim2.new(0, 0, 0, BottomBounds);
BottomBounds = BottomBounds +
Components.Weapon.TextSize + 1;
end;
else
Components.Weapon.Visible = false;
end;
end;
do --// Distance
if Library.Flags.ESPDistance and
Library.Flags.ESPDistance.Value then
Components.Distance.Visible = true;
Components.Distance.Text = "100" .. ""..
DistanceConversions[PreferredDistances[GameName]].Suffix;
Components.Distance.TextColor3 =
Library.Flags.DistanceColor.Color
if Library.Flags.DistancePosition and
Library.Flags.DistancePosition.Value == "Top" then
Components.Distance.TextYAlignment =
Enum.TextYAlignment.Center;
Components.Distance.Position = TopOffset +
UDim2.new(0, 0, 0, -TopBounds);
TopBounds = TopBounds +
Components.Distance.TextSize + 1;
else
Components.Distance.TextYAlignment =
Enum.TextYAlignment.Top;
Components.Distance.Position = BottomOffset
+ UDim2.new(0, 0, 0, BottomBounds);
BottomBounds = BottomBounds +
Components.Distance.TextSize + 1;
end;
else
Components.Distance.Visible = false;
end;
end;
else
ESPPreviewOutter.Visible = false;
end;
end;
end;
if Library.Windows[1] then
Library.Windows[1].CurrentPreview = Preview;
end
return Preview;
end;
end;
do --// Notifications
local NotificationContainer;
NotificationContainer = Instance.new("ScreenGui");
NotificationContainer.Parent = gethui();
function Library:UpdateNotifications()
local i = 0
for v in next, Notifications do
if v.Holder then
local tween = Library:Tween(v.Holder, TweenInfo.new(0.8,
Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {Position = UDim2.new(0, 20, 0,
75 + (i * 25))})
i = i + 1
end
end
end;
function Library:UpdateNotifications2(Item)
for i,v in pairs(Item) do
if typeof(v) == "Instance" then
task.spawn(function()
local tween = Library:Tween(v, TweenInfo.new(1,
Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {BackgroundTransparency = 1});
tween.Completed:Connect(function()
if v.Name == "Holder" then
v:Destroy();
end
end)
end);
if v.ClassName == "TextLabel" then
local tween = Library:Tween(v, TweenInfo.new(1,
Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {TextTransparency = 1})
end
end
end
end
Notification.AccentBar2 = AccentBar2
local NotifText = Instance.new("TextLabel");
NotifText.TextXAlignment = Enum.TextXAlignment.Left;
NotifText.Position = UDim2.new(0, 3, 0, 0);
NotifText.Size = UDim2.new(1, 0, 1, 0)
NotifText.Parent = Background;
NotifText.FontFace = Library.MenuFont;
NotifText.TextColor3 = Color3.new(1,1,1);
NotifText.BackgroundTransparency = 1;
NotifText.TextSize = Library.TextSize;
NotifText.Text = Text;
Notification.NotifText = NotifText;
Notification.Holder.Size = UDim2.new(0, (string.len(NotifText.Text)
* 5) + 10, 0, 19);
AccentBar2.Size = UDim2.new(0, 1, 0, 1)
Notifications[Notification] = true
local Connection
function Notification:Remove()
Notifications[Notification] = nil
Library:UpdateNotifications();
end;
task.spawn(function()
Library:UpdateNotifications()
Notification.AccentBar2:TweenSize(UDim2.new(0,
Background.AbsoluteSize.X - 1, 0, 1), Enum.EasingDirection.Out,
Enum.EasingStyle.Linear, Time, false);
task.wait(Time)
Library:UpdateNotifications2(Notification)
task.wait(1.2)
Notification:Remove()
end);
end;
end;
end)()
LPH_NO_VIRTUALIZE(function()
function Library:ToggleMenu()
if Library.Fading then
return
end;
Library.Fading = true;
local Window = Library.Windows[1];
local IsOpen = not Library.Flags["Open/Close"].Value;
MouseLocation = UserInputService:GetMouseLocation();
Library.MouseCursor.Position = UDim2.new(0, MouseLocation.X - 18, 0,
MouseLocation.Y - 18);
if IsOpen then
Window.Main.Enabled = true;
end;
if Library.Properties then
local Info = TweenInfo.new(FadeTime, Enum.EasingStyle.Linear,
Enum.EasingDirection.Out)
local TweenData = {}
if Properties["BackgroundTransparency"] then
Data.BackgroundTransparency = Goal
end
if Properties["TextTransparency"] then
Data.TextTransparency = Goal
end
if Properties["ImageTransparency"] then
Data.ImageTransparency = Goal
end
if Properties["ScrollBarImageTransparency"] then
Data.ScrollBarImageTransparency = Goal
end
if Properties["Transparency"] then
Data.Transparency = Goal
end
table.insert(TweenData, {Object = Object, Data = Data})
end
task.spawn(function()
for _, TweenInfo in ipairs(TweenData) do
local Object = TweenInfo.Object
local Data = TweenInfo.Data
Library:Tween(Object, Info, Data)
end
end)
end
end;
do --// Blur
if Library.Flags.Blurbackground and
Library.Flags.Blurbackground.Value then
task.spawn(function()
local SizeGoal = IsOpen and 15 or 0
Library:Tween(Library.Blur, TweenInfo.new(FadeTime,
Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {Size = SizeGoal})
end);
else
Library.Blur.Size = 0;
end;
end;
task.wait(FadeTime);
Library.Fading = false;
end;
end)();
end;
do --// Aftermath
if GameName == "Aftermath" then
local FakePart = Instance.new("Part", Camera)
FakePart.Transparency = 1
FakePart.CanCollide = false
FakePart.Size = Vector3.new(0.1, 0.1, 0.1)
FakePart.Anchored = true
GameFramework.FakePart = FakePart
end
end
GameFramework.CrimColors = {
["0 1 0.184314 0.184314 0 "] = "Red";
["0 0.184314 1 0.4 0 "] = "Green";
};
GameFramework.CrimBounties = {};
GameFramework.CrimMeshes = {
["rbxassetid://9029331092"] = "Grenade";
["rbxassetid://9029118683"] = "CS-Grenade";
["rbxassetid://9029118683"] = "Smoke-Grenade";
["rbxassetid://9029276496"] = "Flashbang";
["rbxassetid://9029118683"] = "Incendiary-Grenade";
["rbxassetid://9029306256"] = "Stun-Grenade";
["rbxassetid://9028964777"] = "Molotov";
};
GameFramework.CrimTextures = {
["rbxassetid://9029173190"] = "Incendiary-Grenade";
["rbxassetid://9029151773"] = "Smoke-Grenade";
["rbxassetid://9029129154"] = "CS-Grenade";
};
recoilPos = {
Speed = 5;
Force = 75;
};
cameraRecoil = {
Force = 100;
Speed = 6;
};
recoilRot = {
Speed = 3;
Force = 35;
};
jumpTilt = {
Speed = 4;
Force = 90;
};
leanAlpha = {
Speed = 4; -- 50 for instant lean
Force = 50 -- 25 for instant lean
};
wallTouchTilt = {
Speed = 4;
Force = 50;
};
}
};
end;
function GameFramework:ApplyMods()
for Index, Value in next, Module do
if Library.Flags.NoRecoil.Value then
Value.Weight = 0;
else
Value.Weight = Originals[Index].Weight
end;
if Library.Flags.FastBullet.Value then
Value.BaseVelocity = 50000;
else
Value.BaseVelocity = Originals[Index].BaseVelocity
end;
end;
end;
setreadonly(math, false);
local old = math.random;
math.random = function(...)
if debug.traceback() and debug.traceback():find("Fire", 1, true)
and not debug.traceback():find("Reload", 1, true) and not
debug.traceback():find("RunAnimation", 1, true) and Library.Flags.NoSpread and
Library.Flags.NoSpread.Value then
return 0
end;
return old(...)
end;
end;
if GameName == "Criminality" then
local ItemStats = ReplicatedStorage.Storage.ItemStats;
local Items = {};
GameFramework.CrimItems = Items;
end;
GameFramework.Originals = Originals;
end;
do --// GetGC
LPH_NO_VIRTUALIZE(function()
if GameName == "Project Delta" then
for Index, Value in next, getgc(true) do
if type(Value) == "table" then
if rawget(Value, "updateClient") then
GameFramework.FPS = Value;
elseif rawget(Value, "SetZoomTarget") then
GameFramework.SetTargets = Value;
elseif rawget(Value, "CreateBullet") then
GameFramework.Bullet = Value;
elseif rawget(Value, "RangedWeaponDefault") then
GameFramework.WeaponFunctions = Value;
end;
end;
end;
end;
GameFramework.Framework = Framework;
GameFramework.Players = PlayerClass;
GameFramework.Bullets = Bullets;
GameFramework.Network = Network;
GameFramework.Raycast = Raycasting;
GameFramework.Camera = CameraLibrary;
GameFramework.Animators = Animators;
GameFramework.Vehicle = VehicleController;
end;
do --// Modules
if GameName == "Criminality" then
GameFramework.Modules = {};
local Modules = ReplicatedStorage:FindFirstChild("NewModules");
if Modules and Modules:FindFirstChild("Shared") then
local FastCast = require(Modules.Shared.Services.FastCastRedux);
--for Index, Value in next, getgc(true) do
-- if type(Value) == "table" and rawget(Value,
"FireWithBlacklist") and type(rawget(Value, "FireWithBlacklist")) == "function"
then
-- local Src =
debug.getinfo(Value.FireWithBlacklist).short_src
-- if Src:find("FastCastRedux") then
-- FastCast = Value
-- end
-- end
--end
GameFramework.Modules.FastCast = FastCast;
end;
end;
end;
do --// Functions
LPH_NO_VIRTUALIZE(function()
function GameFramework:ApplyModifications()
for Index, Value in next, GameFramework.Main.Springs do
if Library.Flags.RemoveRecoil and
Library.Flags.RemoveRecoil.Value then
Value.Speed = 0;
Value.Force = 0;
else
Value.Speed =
GameFramework.Originals[tostring(Index)].Speed;
Value.Force =
GameFramework.Originals[tostring(Index)].Force;
end;
end;
end;
function GameFramework:CrimRandomStr(Length)
local t = ""
for i = 1, Length do
t = t .. string.char(math.random(65,122))
end
return t
end;
function GameFramework:FireBullet()
local Emoji = "🍯";
local Tool = Client.Character:FindFirstChildOfClass("Tool")
local String =
GameFramework:CrimRandomStr(30)..tostring(GameFramework.ShotNumber);
local Num = 1;
local Part = Combat.TargetPart;
local Position = Part.Position;
local Unit = (Camera.CFrame.p - Position).Unit;
local NinthArg = nil;
ShootRemote:FireServer(
tick(),
String,
Tool,
"FDS9I83",
Camera.CFrame.p,
{
[1] = Unit
}
);
HitRemote:FireServer(
Emoji,
Tool,
String,
1,
Part,
Position,
Unit,
nil,
NinthArg
);
Headshot.SoundId =
HitmarkerSounds[Library.Flags["HitSound"].Value];
Headshot.Volume = Library.Flags.HitmarkerVolume.Value;
Headshot:Play()
if Library.Flags.Tracers.Value then
task.spawn(function()
if Library.Flags.TracerMode.Value == "Line" then
Visuals:NewLine(Client.Character.Head.Position,
Position);
else
Visuals:NewTracer(Client.Character.Head.Position, Position,
Workspace.Filter.ToolSpawns)
end;
end);
end;
GameFramework.LastShotTick = tick()
end;
end;
end;
function GameFramework:CrimMods()
local PredictedPosition =
Combat.TargetPart.Position + (Velocity * TimeToHit);
if Library.Flags.InstantHit and
Library.Flags.InstantHit.Value then
PredictedPosition =
Combat.TargetPart.Position + (Velocity / math.huge) + (Velocity / math.huge)
end;
local Direction = (PredictedPosition -
Origin).Unit;
Args[5][1] = Direction;
end;
if Library.Flags.MagicBullet and
Library.Flags.MagicBullet.Value then
Args[4] =
(CFrame.new(Combat.TargetPart.Position) * CFrame.new(0, 0, -3)).p;
Args[5][1] = (Combat.TargetPart.Position -
Args[4]).Unit * 9e9
Origin = Args[4];
end;
ReplicatedStorage.Events:FindFirstChild("ZFKLF_H"):FireServer(
Emoji,
Client.Character:FindFirstChildOfClass("Tool"),
Tag,
1,
Combat.TargetPart,
Combat.TargetPart.Position,
Args[5][1]
);
end);
end;]]
end;
do --// Tracers
if Library.Flags.Tracers and
Library.Flags.Tracers.Value then
task.spawn(function()
local Origin = Args[4];
local Direction = Args[5][1] * 1000;
local RayHit, HitPos =
Workspace:FindPartOnRayWithIgnoreList(
Ray.new(Origin, Direction),
{Camera, Client.Character},
false,
true,
""
);
if HitPos then
if Library.Flags.TracerMode.Value ==
"Line" then
Visuals:NewLine(Origin, HitPos);
else
Visuals:NewTracer(Origin, HitPos,
Workspace.Filter.ToolSpawns)
end;
end;
end);
end;
end;
return OldShoot(self, unpack(Args));
end;
end;
end;
end;
function GameFramework:CheckDowned(Target)
local Name = Target.Name;
local PlayerStats = ReplicatedStorage.CharStats[Name]
ReplicatedStorage.Events:FindFirstChild("XMHH2.2"):FireServer(
"🍞",
tick(),
Client.Character:FindFirstChildOfClass("Tool"),
"2389ZFX34",
RemoteTick,
false,
Client.Character["Right Arm"],
Part,
Object,
Client.Character["Right Arm"].Position,
Part.Position
);
end;
ReplicatedStorage.Events:FindFirstChild("XMHH2.2"):FireServer(
"🍞",
tick(),
Client.Character:FindFirstChildOfClass("Tool"),
"2389ZFX34",
RemoteTick,
true,
Client.Character["Left Arm"],
Part,
Object,
Client.Character["Left Arm"].Position,
Part.Position
);
end;
task.wait(0.5);
ReplicatedStorage.Events:FindFirstChild("XMHH2.2"):FireServer(
"🍞",
tick(),
Client.Character:FindFirstChildOfClass("Tool"),
"2389ZFX34",
RemoteTick,
false,
Client.Character["Right Leg"],
Part,
Object,
Client.Character["Right Leg"].Position,
Part.Position
);
end;
end;
end;
end;
function GameFramework:RunCharacterFunctions()
--[[
local Module =
require(game:GetService("Players").LocalPlayer.Backpack["AKM 1P63"].Gun_Statistics)
Module.CameraRecoilUp = 0
Module.CameraRecoilSides = 0
Module.GunRecoilUp = 0
Module.GunRecoilSides = 0
]]
if Module then
Module = require(Module)
if Library.Flags.RemoveRecoil and
Library.Flags.RemoveRecoil.Value then
Module.CameraRecoilUp = 0
Module.CameraRecoilSides = 0
Module.GunRecoilUp = 0
Module.GunRecoilSides = 0
end
if Library.Flags.RemoveSway and
Library.Flags.RemoveSway.Value then
Module.SwaySpringSpeed1 = 0
Module.SwaySpringSpeed2 = 0
end
end
end)
end
end)
end
end
do --// Delta
if GameName == "Project Delta" then
RayParams.FilterDescendantsInstances = {Client.Character,
Camera, Workspace.NoCollision}
end;
end;
do --// Criminality
if GameName == "Criminality" then
GameFramework.HeadGlitch = false;
GameFramework.StaminaTables = {};
RayParams.FilterDescendantsInstances = {Client.Character,
Camera, Workspace.Filter}
GameFramework.StaminaTables[#GameFramework.StaminaTables + 1] = Value;
end;
end;
if Library.Flags.InstantReload and
Library.Flags.InstantReload.Value then
GameFramework.IsSettingUpReload =
Tool:FindFirstChild("IsGun");
if GameFramework.IsSettingUpReload then
local Remote =
ReplicatedStorage.Events.GNX_R;
local Tool =
Client.Character:FindFirstChildOfClass("Tool");
Remote:FireServer(tick(), "STZNRD",
Tool, math.random() / 10);
--task.wait(3);
--Remote:FireServer(tick(),
"KLWE89U0", Tool);
task.wait(0.2);
GameFramework.IsSettingUpReload =
false;
end;
end;
end;
GameFramework.GunHasBeenModified = false;
end;
end);
ClientGUI.ChildAdded:Connect(function(GUI)
task.spawn(function()
if GUI.Name == "LockpickGUI" then
if Library.Flags.InstantLockpick and
Library.Flags.InstantLockpick.Value then
task.wait(0.1);
local Bars = GUI.MF.LP_Frame.Frames
for Index = 1, 3 do
local BarFrame =
Bars:FindFirstChild("B"..tostring(Index));
local ActualBar =
BarFrame:FindFirstChild("Bar");
ActualBar.Size = UDim2.new(0, 0, 0,
500)
end;
for Index = 1, 3 do
task.wait(0.1);
mouse1click();
task.wait(0.1);
end;
task.wait(0.1);
mouse1click()
task.wait(0.1);
mouse1click()
else
task.wait(0.1);
local Bars = GUI.MF.LP_Frame.Frames
for Index = 1, 3 do
local BarFrame =
Bars:FindFirstChild("B"..tostring(Index));
local ActualBar =
BarFrame:FindFirstChild("Bar");
ActualBar.Size = UDim2.new(0, 30,
0, 30)
end;
end;
end;
GUI:GetPropertyChangedSignal("Enabled"):Connect(function()
GUI.Enabled = false;
end);
end;
GUI:GetPropertyChangedSignal("Enabled"):Connect(function()
GUI.Enabled = false;
end);
end;
GUI:GetPropertyChangedSignal("Enabled"):Connect(function()
GUI.Enabled = false;
end);
end;
end);
end);
--game:GetService("Players")
["99str4lif"].PlayerGui.CoreGUI.NotificationFrame:GetChildren()
[4].Frame.NotificationText
--#d900: $1660
--ClientCoreGui = ClientGUI:WaitForChild("CoreGUI");
--task.wait(0.1);
--local NotificationFrame =
ClientCoreGui:WaitForChild("NotificationFrame");
--
NotificationFrame.DescendantAdded:Connect(function(Frame)
-- task.wait(0.3)
-- if Frame.Name == "NotificationText" then
-- task.wait(0.3);
-- NotificaitonText = Frame
-- local Text = NotificationText.Text;
-- local Split = Text:split(": ");
-- if Split[1] and Split[2] then
-- print('hi')
-- GameFramework.CrimBounties[Split[1]] =
Split[2];
-- end;
--
-- local OtherSplit = Text:split("'s $")
-- if OtherSplit[1] and OtherSplit[2] and
GameFramework.CrimBounties[OtherSplit[1]] then
-- print("woahashs")
-- GameFramework.CrimBounties[OtherSplit[1]]
= nil;
-- end;
-- end
-- end);
Client.Character.ChildAdded:Connect(function(Object)
task.wait(0.05);
if Object.Name == "BurningScript" and
Library.Flags.AntiFire and Library.Flags.AntiFire.Value then
task.wait(0.1);
Object:ClearAllChildren();
Object:Destroy();
if Value:FindFirstChild("Flames1") then
Value.Flames1:Destroy();
end;
if Value:FindFirstChild("Flames2") then
Value.Flames2:Destroy();
end;
end;
end;
end;
end);
end;
end;
end;
Humanoid.StateChanged:Connect(function(OldState, NewState)
if Library.Flags.AntiFall and
Library.Flags.AntiFall.Value and (NewState == Enum.HumanoidStateType.FallingDown or
NewState == Enum.HumanoidStateType.Freefall) then
Humanoid:ChangeState(Enum.HumanoidStateType.Landed);
end;
end);
task.spawn(function()
repeat task.wait() until MainGui ~= nil;
MainGui.ChildAdded:Connect(function(Sound)
if Sound and Sound:IsA("Sound") and
Library.Flags.CustomHitSounds and Library.Flags.CustomHitSounds.Value then
local SoundId = Sound.SoundId
if SoundId == "rbxassetid://4585351098" or
SoundId == "rbxassetid://4585382589" then
Sound.SoundId =
HitmarkerSounds[Library.Flags["HeadshotSound"].Value];
Sound.Volume =
Library.Flags.HitmarkerVolume.Value;
end;
if SoundId == "rbxassetid://4585382046" or
SoundId == "rbxassetid://4585364605" then
Sound.SoundId =
HitmarkerSounds[Library.Flags["BodyshotSound"].Value];
Sound.Volume =
Library.Flags.HitmarkerVolume.Value;
end;
if Sound.SoundId == "rbxassetid://9120454415"
then
if Library.Flags.EliminateKillSound.Value
then
Sound.Volume = 0;
Sound.SoundId = "";
else
Sound.SoundId =
HitmarkerSounds[Library.Flags["KillSound"].Value]
end;
end;
end;
end);
end);
end;
end;
do --// Blackout
if GameName == "Blackout" then
task.wait(0.5);
if Library.Flags.RemoveBobbing and
Library.Flags.RemoveBobbing.Value then
Client.Character.ScreenShake.Disabled = true;
end;
local Module-- =
require(Client.PlayerGui.Minigames.MinigameHandler.Minigames);
for Index, Value in next, getgc(true) do
if type(Value) == "table" and rawget(Value, "Lockpick")
and type(rawget(Value, "Lockpick")) == "function" then
Module = Value
end
end
Module.Lockpick = function(...)
local Args = {...};
if Library.Flags.InstantLockpick and
Library.Flags.InstantLockpick.Value then
local Object = Args[2];
ReplicatedStorage.Events.Loot.MinigameResult:FireServer(Object, true);
task.wait(0.4);
keypress(0x45);
end;
return Lockpick(...)
end;
end;
end;
do --// la skeets
if GameName == "The Streets" then
local Humanoid = Client.Character:WaitForChild("Humanoid");
local Stamina = Client.Character:WaitForChild("Stamina")
Stamina:GetPropertyChangedSignal("Value"):Connect(function()
if Library.Flags.InfiniteStamina and
Library.Flags.InfiniteStamina.Value then
Stamina.Value = 100;
end;
end);
Part.Touched:Connect(function(Value)
if (Library.Flags.Noclip and
Library.Flags.Noclip.Value and Library.Flags.NoClip.Value and Value.Name ~=
"Baseplate") or (Library.Flags.Fly.Value and Library.Flags.CanFly.Value) then
Value.CanCollide = false;
task.wait(0.2)
Value.CanCollide = true
end;
end)
end;
end;
end;
end;
end;
function GameFramework:Bypass()
for _, Value in pairs(Workspace.Vehicles:GetDescendants()) do
if Value:IsA("VehicleSeat") then
local Body = Value.Parent.Parent.Body;
local Vehicle = Value.Parent.Parent;
Value:Sit(Client.Character.Humanoid);
ReplicatedStorage.Remotes.VehicleInteractions:FireServer({["Vehicle"] = Vehicle,
["Action"] = "Enter", ["Door"] = Body.FRdoor.FR_Door});
--Client.Character.PrimaryPart.CFrame =
(Client.Character.PrimaryPart.Position - Vector3.new(0, 5, 0), Vector3.new())
break;
end;
end;
end;
function GameFramework:New()
local NewData;
if GameName == "Project Delta" then
for Index, Value in next, getgc(true) do
if type(Value) == "table" and rawget(Value, "springs") and
rawget(Value.springs, "sway") then
NewData = Value;
end;
end;
end;
GameFramework.CurrentData = NewData;
return NewViewmodel;
end;
end)()
end;
table.sort(Locations, function(a, b)
return a < b;
end);
GameFramework.Locations = Locations;
end;
end;
GameFramework.Projectile = Projectile
GameFramework.WeaponData = WeaponData
GameFramework.EntityList = EntityList
end
end
do --// Aftermath
if GameName == "Aftermath" then
local SENV = getsenv(Client.PlayerScripts.GunController)
return Old(...)
end));
end
end
do --// CBRO
if GameName == "Counter Blox" then
do --// Client
local SENV = getsenv(Client.PlayerGui.Client)
return Old
end))
end;
Args[2] = (Combat.TargetPart.CFrame.p -
Origin).Unit * 9e9;
end;
return Old(unpack(Args))
end))
end;
end;
end;
end)();
end;
end;
do --// Hooks
LPH_NO_VIRTUALIZE(function()
do --// Metamethods
do --// aftermath
if GameName == "Aftermath" then
do --// Blah
--local Hit; Hit = hookfunction(SENV.getHitInternal,
function(...)
-- local Args = {...}
-- if Combat.TargetPart and Library.Flags.AimMode.Value
== "Silent Aim" and not checkcaller() then
-- Args[1] = Combat.TargetPart
-- end
-- return Hit(unpack(Args))
--end)
do --// Errors
local Cache = LogService:GetLogHistory()
local Old;
end;
end
end
return Namecall(self, ...)
end);
end
end
local ActualRemotes = {}
for Index, Value in next, getgc(true) do
if type(Value) == "table" and rawget(Value, "Remote") then
Remotes[Value.Remote] = Value.Remote.Name
Remotes[Value.Name] = Value.Remote
for Index, Connection in next,
getconnections(Value.Remote:GetPropertyChangedSignal("Name")) do
Connection:Disable()
end;
Value.Remote.Name = Value.Name
end
return Position
end
end
end
return Index(self, Property)
end);
end
end
return Namecall(self, ...)
end);
return Old(unpack(Args))
end;
Args[1]._stamina = 100
--Args[1]._staminaChangedSignal:Fire(100)
return
end
return Stamina(unpack(Args))
end
end;
end
do --// Anarchy
if GameName == "State Of Anarchy" then
local Index; Index = hookmetamethod(game, "__index",
function(self, Property)
if tostring(self) == "Shoot" and Property == "CFrame" and
debug.traceback() then
if Library.Flags.AimMode.Value == "Silent Aim" and
Combat.TargetPart and debug.traceback():find("shootGun", 1, true) then
if Library.Flags.MagicBullet.Value then
local Behind = (Combat.TargetPart.CFrame *
CFrame.new(0,0,1)).p;
return CFrame.new(Behind,
Combat.TargetPart.CFrame.p)
end
return CFrame.new(self.Position,
Combat.TargetPart.Position)
end
end
do --// Scorched
if GameName == "Scorched Earth" then
local Index; Index = hookmetamethod(game, "__index",
function(self, Property)
if tostring(self):lower() == "muzzle" and Property ==
"CFrame" then
if Library.Flags.AimMode.Value == "Silent Aim" and
Combat.TargetPart then
if Library.Flags.Manipulation and
Library.Flags.Manipulation.Value then
local Destination = Combat.TargetPart;
local Origin = self.Position;
if VisiblePosition then
Combat.ManipulatedPosition =
VisiblePosition;
local Player = GameFramework.EntityData
and rawget(GameFramework.EntityData, Client.Name)
local Speed =
Player.loadoutData.primary.staticData.velocity
local Drag =
Player.loadoutData.primary.staticData.drag
if Drag == 0 then
Drag = 0.0001
end
local Distance = (Origin -
Destination.Position).Magnitude;
local TimeToHit = Distance / Speed;
local Velocity =
rawget(GameFramework.EntityData,
Combat.Target.Name).colliderModel:FindFirstChildOfClass("MeshPart").Velocity
Predicted = Destination.CFrame.p +
(Velocity * TimeToHit)
return CFrame.new(VisiblePosition,
Predicted);
else
Combat.ManipulatedDirection =
(Destination.Position - Origin).Unit;
Combat.ManipulatedPosition = Origin;
end;
end;
end;
local Speed =
Player.loadoutData.primary.staticData.velocity
local Drag =
Player.loadoutData.primary.staticData.drag
if Drag == 0 then
Drag = 0.0001
end
return CFrame.new(Behind,
Combat.TargetPart.CFrame.p)
end
return CFrame.new(self.Position,
Combat.TargetPart.Position)
end
end
if Library.Flags.BulletTP and
Library.Flags.BulletTP.Value then
Args[1] = (HitPart.CFrame *
CFrame.new(0,0,1)).p;
Origin = (HitPart.CFrame *
CFrame.new(0,0,1)).p;
end;
Args[2] = (HitPart.Position - Origin).Unit
* 1000;
end;
end;
end;
end;
end;
do --// Universal
if not IsStudio and GameName == "Universal" then
do --// Main
local Index; Index = hookmetamethod(game, "__index",
function(self, Property)
if not checkcaller() then
if self == Lighting and Properties["Lighting"]
[Property] then
return Properties["Lighting"][Property];
end;
end;
return Index(self, Property)
end);
local Namecall; Namecall = hookmetamethod(game,
"__namecall", function(self, ...)
local Args = {...};
local Method = getnamecallmethod()
if Library.Flags.CheckForFireFunc and
Library.Flags.CheckForFireFunc.Value and debug.traceback() and (Method ==
"FindPartOnRay" or Method == "FindPartOnRayWithWhitelist" or Method ==
"FindPartOnRayWithIgnoreList" or Method == "Raycast" or Method ==
"ViewportPointToRay" or Method == "ScreenPointToRay") then
local Traceback =
tostring(debug.traceback()):lower();
if Traceback:find("bullet") or
Traceback:find("gun") or Traceback:find("fire") then
CanContinue = true;
else
return Namecall(self, ...);
end;
end;
if table.find(Library.Flags.Include.Value,
"Character") and not table.find(Ignored, Client.Character) then
return Namecall(self, ...);
end;
end;
if Library.Flags.BulletTP and
Library.Flags.BulletTP.Value then
Origin = (Camera.CFrame *
CFrame.new(0,0,1)).p;
end;
if Library.Flags.BulletTP and
Library.Flags.BulletTP.Value then
Origin = (Camera.CFrame *
CFrame.new(0,0,1)).p;
end;
local HitPart = Combat.TargetPart
if Library.Flags.BulletTP and
Library.Flags.BulletTP.Value then
Args[1] = (HitPart.CFrame *
CFrame.new(0,0,1)).p;
Origin = (HitPart.CFrame *
CFrame.new(0,0,1)).p;
end;
Args[2] = (HitPart.Position - Origin).Unit *
Library.Flags.MultiplyUnitBy.Value;
end;
if Library.Flags.BulletTP and
Library.Flags.BulletTP.Value then
Origin = (HitPart.CFrame *
CFrame.new(0,0,1)).p;
end;
if Library.Flags.BulletTP and
Library.Flags.BulletTP.Value then
Origin = (HitPart.CFrame *
CFrame.new(0,0,1)).p;
end;
if Library.Flags.BulletTP and
Library.Flags.BulletTP.Value then
Origin = (HitPart.CFrame *
CFrame.new(0,0,1)).p;
end;
Args[1] = Ray.new(Origin, (HitPart.Position -
Origin).Unit * Library.Flags.MultiplyUnitBy.Value);
end;
end;
do --// CBRO
if GameName == "Counter Blox" or GameName == "Arsenal" then
local Index; Index = hookmetamethod(game, '__index',
function(self, Property)
if not checkcaller() then --// Gun mods
if Property == "Value" then
--// Spread
if (self.Name == "SpreadRecovery" or self.Name ==
"Spread" or self.Name == "Fire" or self.Name == "Jump" or self.Name == "Stand" or
self.Name == "Land" or self.Name == "Move" or self.Name == "Ladder" or self.Name ==
"InitialJump" or self.Name == "Crouch") and Library.Flags.ReduceSpread and
Library.Flags.ReduceSpread.Value then
local Old = Index(self, Property)
return Old * (Library.Flags.SpreadPercent.Value
/ 100)
end;
end;
end;
end
if Library.Flags.Manipulation and
Library.Flags.Manipulation.Value and Combat.ManipulatedPosition and
Combat.TargetPart and GameFramework.IsShooting then
Args[1] = Combat.ManipulatedPosition;
Args[2] = (Combat.TargetPart.Position -
Combat.ManipulatedPosition).Unit
end;
if Library.Flags.InstantBullet and
Library.Flags.InstantBullet.Value then
Args[2] = Args[2] * 9e9
end;
end;
end;
if Args[1] == Client.Character.HumanoidRootPart
then
return coroutine.yield();
end;
if Library.Flags.InstantBullet and
Library.Flags.InstantBullet.Value then
if GameFramework.PDCodes[Args[3]] then
local Info =
GameFramework.PDCodes[Args[3]]
local Origin = Info.Origin
local Speed = Info.Speed
local Tick = Info.Tick
local Destination = Args[1].CFrame.p
local EquippedItem =
ReplicatedStorage.Players[Client.name].Status.GameplayVariables.EquippedTool.Value
if (Library.Flags.VisualizeHits and
Library.Flags.VisualizeHits.Value) or (Library.Flags.DisplayDamage and
Library.Flags.DisplayDamage.Value) then
task.spawn(function()
if Library.Flags.VisualizeHits and
Library.Flags.VisualizeHits.Value then
Visuals:NewHitmarker(Args[1].Position)
end;
if Library.Flags.DisplayDamage and
Library.Flags.DisplayDamage.Value then
task.spawn(function()
local Part = Args[1];
local IsHeadshot =
(Part.Name:find("Head") or Part.Name:find("Face")) and true or false;
local Armor =
Utility:GetArmor(Part)
local ArmorProtection = 1;
if Armor then
ArmorProtection =
Utility:GetArmorProtection(Armor, Part.Parent.Name);
end;
local BulletStats =
Utility:GetBulletStats(GameFramework.LastBulletType);
local Damage =
BulletStats.Damage
local ArmorPen =
BulletStats.Penetration
if ArmorProtection ~= 1 then
local FinalizedDamage =
Utility:CalculateDamage(Damage, ArmorPen, ArmorProtection, IsHeadshot)
Damage = FinalizedDamage
else
if IsHeadshot then
Damage = Damage * 2
end;
end;
game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("FireProj
ectile"):InvokeServer(unpack(args))
GameFramework.HitCodes = {
Args[2] = {
["Origin"] = Camera.CFrame
["Direction"] = Args[1]
["Hit"] = inflict Args[2]
}
}
local args = {
[1] =
game:GetService("Players"):WaitForChild("Mother45896").Character.FaceHitBox,
[2] = CFrame.new(-0.138916015625,
0.284637451171875, -0.28125, 0.8023183345794678, 0.025571443140506744, -
0.5963485240936279, -0.08943109959363937, 0.9929543733596802, -0.07774131000041962,
0.5901589393615723, 0.11570535600185394, 0.7989522814750671),
[3] = -48571,
[4] = 1722411459.4950824
}
game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("Projecti
leInflict"):FireServer(unpack(args))
]]
task.spawn(function()
local EquippedItem =
ReplicatedStorage.Players[Client.Name].Status.GameplayVariables.EquippedTool.Value;
local BulletCaliber = nil;
if EquippedItem then
local Attachments =
EquippedItem:FindFirstChild("Attachments");
local ItemProperties =
EquippedItem:FindFirstChild("ItemProperties")
if Attachments then
local Magazine =
Attachments:FindFirstChild("Magazine");
if Magazine then
Magazine =
Magazine:GetChildren()[1];
if Magazine then
local Caliber =
Magazine.ItemProperties["LoadedAmmo"]:GetChildren()[1]
if Caliber then
BulletCaliber =
Caliber:GetAttribute("AmmoType")
Caliber =
Caliber:GetAttribute("AmmoType");
end;
end
else
if ItemProperties["LoadedAmmo"]
then
local LoadedAmmo =
ItemProperties:GetAttribute("LoadedAmmo");
local Caliber =
ItemProperties["LoadedAmmo"]:GetChildren()
if Caliber and Caliber[1]
then
BulletCaliber =
Caliber[1]:GetAttribute("AmmoType")
Caliber =
Caliber[1]:GetAttribute("AmmoType");
end;
end;
end;
end;
end;
GameFramework.PDCodes[Args[2]] = {
Tick = Args[3],
Direction = Args[1],
Origin = Camera.CFrame.p,
Speed =
ReplicatedStorage.AmmoTypes:FindFirstChild(BulletCaliber):GetAttribute("MuzzleVeloc
ity"),
};
print(GameFramework.PDCodes[Args[2]].Speed)
print(GameFramework.PDCodes[Args[2]].Tick)
print(GameFramework.PDCodes[Args[2]].Origin)
end;
end);
end
end;
if Traceback:find("updateClient", 1, true) or
Traceback:find("updateShake", 1, true) then
Value = Camera.CFrame;
end;
end;
if Library.Flags.ThirdPerson and
Library.Flags.ThirdPerson.Value and Library.Flags.ThirdPersonToggle and
Library.Flags.ThirdPersonToggle.Value then
Value = Value + Camera.CFrame.LookVector * -
Library.Flags.ThirdPersonDistance.Value;
end;
end;
end;
return NewIndex(self, Property, Value)
end);
end;
end;
do --// Blackout
if GameName == "Blackout" then
local Namecall; Namecall = hookmetamethod(game, "__namecall",
function(self, ...)
local Args = {...};
local Method = getnamecallmethod();
local ExecutorCall = checkcaller();
Args[2] = Orientation;
end;
if (Traceback:find("HitboxCaster")) and
Library.Flags.ExtendReach and Library.Flags.ExtendReach.Value then
Args[2] = Args[2] * 1000;
end;
--[[if (Traceback:find("ActiveCast") or
Traceback:find("CanRayPierce")) and Library.Flags.SilentAim and
Library.Flags.SilentAim.Value and Library.Flags.MagicBullet and
Library.Flags.MagicBullet.Value and Combat.TargetPart then
Args[1] =
(CFrame.new(Combat.TargetPart.Position) * CFrame.new(0, 0, -3)).p;
Args[2] = (Combat.TargetPart.Position -
Args[1]).Unit * 9e9;
end;]]
end;
end;
if Traceback:find("ScreenShake") and
Library.Flags.RemoveBobbing and Library.Flags.RemoveBobbing.Value then
return NewIndex(self, Property, Camera.CFrame);
end;
if Traceback:find("RenderSteppedUpdate", 1, true)
and Library.Flags.RemoveRecoil and Library.Flags.RemoveRecoil.Value then
return NewIndex(self, Property, Camera.CFrame);
end;
end;
end;
do --// Apoc
if GameName == "Apocalypse Rising 2" then
local OldGroundCast =
GameFramework.Raycast.CharacterGroundCast;
local OldSwimCheck = GameFramework.Raycast.SwimCheckCast;
local OldFire = GameFramework.Bullets.Fire;
setupvalue(GameFramework.Bullets.Fire, 1,
function(Character, Camera, ...)
if Library.Flags.RemoveSpread and
Library.Flags.RemoveSpread.Value then
return GameFramework.Spread(
{
MoveState = "Walking",
Zooming = true,
},
{
FirstPerson = true;
}
);
end;
return GameFramework.Spread(Character, Camera, ...);
end);
if Library.Flags.SilentAim and
Library.Flags.SilentAim.Value and Library.Flags.AimMode.Value == "Silent Aim" and
Combat.TargetPart then
local Position = Combat.TargetPart.Position;
local Origin = Args[4];
do --// Networking
--[[local DirtyNames = {
["Statistic Report"] = true,
["Zombie State Resync Attempt"] = true,
["Resync Leaderboard"] = true,
["Sync Debug Info"] = true,
["Resync Character Physics"] = true,
["Update Character Position"] = true,
["Get Player Stance Speed"] = true,
["Force Charcter Save"] = true,
["Update Character State"] = true,
["Sync Near Chunk Loot"] = true,
["Character Config Resync"] = true,
["Animator State Desync Check"] = true,
["Character Humanoid Update"] = true,
["Character Root Update"] = true,
};
if DirtyNames[Name] then
return
end;
if Library.Flags.RemoveSpread and
Library.Flags.RemoveSpread.Valu then
Args[3] = true;
Args[4] = true;
end;
end;
task.spawn(function()
GameFramework.Network:Send("Character Reload
Firearm Comitted", Item, Second);
GameFramework.Network:Send("Character Reload
Firearm Clear", Item);
GameFramework.Network:Send("Character Reload
Firearm Clear", Item);
end);
end;
return OldSend(self, Name, unpack(Args));
end;]]
end;
end;
end;
do --// Criminality
if GameName == "Criminality" then
do --// Errors
local Cache = LogService:GetLogHistory()
local Old;
end;
if (Library.Flags.InstantHit and
Library.Flags.InstantHit.Value) or (Library.Flags.MagicBullet and
Library.Flags.MagicBullet.Value) then
Args[6][1] = Args[6][1] / 9e9;
end;
task.spawn(function()
GameFramework.ShotNumber += 1
delay(5, function()
GameFramework.ShotNumber -= 1
end);
end);
end;
if Library.Flags.DisplayDamage and
Library.Flags.DisplayDamage.Value then
task.spawn(function()
local Module =
require(Tool:FindFirstChild("Config"));
if Module.Damage then
local Damage = Module.Damage;
if Part.Name == "Head" then
Damage = Damage *
Module.HeadshotMultiplier
elseif Part.Name == "Left Leg" or
Part.Name == "Right Leg" then
Damage = Damage *
Module.LimbMultiplier
end
Visuals:NewHitDamage(Position, Damage,
Part)
end
end);
end
end
--[[
local HitRemote =
ReplicatedStorage.Events.ZFKLF_H;
ShootRemote:FireServer(
tick(),
String,
Tool,
"FDS9I83",
Camera.CFrame.p,
{
[1] = Unit
}
);
HitRemote:FireServer(
Emoji,
Tool,
String,
1,
Part,
Position,
Unit,
nil,
NinthArg
);
]]
end;
if Upvalues then
local GunSettings = Upvalues[2].fcf;
if RawMetaTable then
setreadonly(RawMetaTable,
false); --// incase he ever makes it readonly
if type(RawMetaTable.__index)
== "table" then --// check if its a table (majority of gunmods go here);
RawMetaTable.__index["FireModeSettings"].SemiRate = Library.Flags.FireRate.Value
RawMetaTable.__index["FireModeSettings"].BurstRate = Library.Flags.FireRate.Value
RawMetaTable.__index["FireModeSettings"].AutoRate = Library.Flags.FireRate.Value
RawMetaTable.__index["FireModeSettings"].FireRate = Library.Flags.FireRate.Value
end;
if
RawMetaTable.__index["FireSlowDown"] and Library.Flags.Walkshoot and
Library.Flags.Walkshoot.Value then
RawMetaTable.__index["FireSlowDown"].Enabled = false;
end;
if
RawMetaTable.__index["BulletSettings"] then
GameFramework.CurrentVelocity = RawMetaTable.__index["BulletSettings"].Velocity;
end;
if
RawMetaTable.__index["AimSettings"] and Library.Flags.RemoveSpread and
Library.Flags.RemoveSpread.Value then
RawMetaTable.__index["AimSettings"].Spread = 0;
end;
if
RawMetaTable.__index["SniperSettings"] and Library.Flags.RemoveSpread and
Library.Flags.RemoveSpread.Value then
RawMetaTable.__index["SniperSettings"].Spread = 0;
end;
if
RawMetaTable.__index["Spread"] and Library.Flags.RemoveSpread and
Library.Flags.RemoveSpread.Value then
RawMetaTable.__index["Spread"] = 0;
end;
if
RawMetaTable.__index["ChargeupEnabled"] and Library.Flags.InstantCharge and
Library.Flags.InstantCharge.Value then
RawMetaTable.__index["ChargeupEnabled"] = false
end;
if
RawMetaTable.__index["ShotgunSettings"] and Library.Flags.InstantCharge and
Library.Flags.InstantCharge.Value then
RawMetaTable.__index["ShotgunSettings"].FirePump = false;
end;
if
RawMetaTable.__index["AimSpeed"] and Library.Flags.InstantAim and
Library.Flags.InstantAim.Value then
RawMetaTable.__index["AimSpeed"] = 0;
end;
if
RawMetaTable.__index["SniperSettings"] and Library.Flags.InstantAim and
Library.Flags.InstantAim.Value then
RawMetaTable.__index["SniperSettings"].AimSpeed = 0;
end;
if
(RawMetaTable.__index["FirePumpWait1"] or RawMetaTable.__index["FirePumpWait2"])
and Library.Flags.InstantCharge and Library.Flags.InstantCharge.Value then
RawMetaTable.__index["FirePumpWait1"] = 0;
end;
if
RawMetaTable.__index["AimSettings"] and Library.Flags.InstantAim and
Library.Flags.InstantAim.Value then
RawMetaTable.__index["AimSettings"].AimSpeed = 0;
end;
if
RawMetaTable.__index["ChargeUpSettings"] then
if
Library.Flags.InstantCharge and Library.Flags.InstantCharge.Value then
RawMetaTable.__index["ChargeUpSettings"] = {
ChargeTime
= 0,
ChargeDB =
0,
};
end;
end;
if
RawMetaTable.__index["EquipTime"] and Library.Flags.InstantEquip and
Library.Flags.InstantEquip.Value then
RawMetaTable.__index["EquipTime"] = 0;
end;
if
RawMetaTable.__index["EquipAnimSpeed"] and Library.Flags.InstantEquip and
Library.Flags.InstantEquip.Value then
RawMetaTable.__index["EquipAnimSpeed"] = 9e9;
end;
end;
end;
end;
end;
end;
task.spawn(function()
if not GameFramework.GunHasBeenModified
then
GameFramework:CrimMods();
end;
end);
end;
end;
Val.accelerate =
function(self, Vector) --// hook
return Old(self,
Vector);
end;
end;
end;
end;
end;
end;
end;]]
});
else
end
end;
end;
end;
Args[2]["mousehit"] = ShootAt;
end;
end;
do --// Lone
if GameName == "Lone Survival" then
do --// namecall
local Namecall; Namecall = hookmetamethod(game,
"__namecall", function(self, ...)
local Method = getnamecallmethod();
local Args = {...};
if not checkcaller() then
if Method == "Raycast" and Library.Flags.AimMode
and Library.Flags.AimMode.Value == "Silent Aim" and Combat.TargetPart and
debug.traceback() then
if debug.traceback():find("Projectile") then
local HitPart = Combat.TargetPart;
local Origin = Args[1];
Args[2] = (HitPart.Position - Origin).Unit
* 9e9;
return Namecall(self, unpack(Args))
end;
end;
do --// Newindex
local NewIndex; NewIndex = hookmetamethod(game,
"__newindex", function(self, prop, val)
local Weapons =
require(ReplicatedStorage.Modules.Shared.Managers.WeaponInfo)
GameFramework.OldWeapons = Utility:DeepCopy(Weapons)
end
GameFramework.FPS.updateClient = function(...)
local Args = {...};
if Library.Flags.RapidFire and
Library.Flags.RapidFire.Value then
Args[1].FireRate = 1 / Library.Flags.FireRate.Value
end;
if Library.Flags.InstantAim and
Library.Flags.InstantAim.Value and rawget(Args[1], "AimInSpeed") and
rawget(Args[1], "AimOutSpeed") then
Args[1].AimInSpeed = 0;
Args[1].AimOutSpeed = 0;
end;
if Library.Flags.UnlockFiremodes and
Library.Flags.UnlockFiremodes.Value and rawget(Args[1], "FireModes")then
Args[1].FireModes = {
"Auto", "Semi"
};
end;
if Library.Flags.RemoveObstructions and
Library.Flags.RemoveObstructions.Value and rawget(Args[1], "TouchWallPosY") then
Args[1].TouchWallPosY = 0;
Args[1].TouchWallPosZ = 0;
Args[1].TouchWallRotX = 0;
Args[1].TouchWallRotY = 0;
end;
end;
do --// GameFramework.CurrentData
task.spawn(function()
if GameFramework.CurrentData then --// Character
Mods
Visuals.CurrentAimPart =
GameFramework.CurrentData.aimPart;
if Library.Flags.RemoveObstructions and
Library.Flags.RemoveObstructions.Value then
GameFramework.CurrentData.springs.wallTouchTilt.Force = 0;
GameFramework.CurrentData.springs.wallTouchTilt.Speed = 0;
else
GameFramework.CurrentData.springs.wallTouchTilt.Force =
GameFramework.Originals.Springs.wallTouchTilt.Force;
GameFramework.CurrentData.springs.wallTouchTilt.Speed =
GameFramework.Originals.Springs.wallTouchTilt.Speed;
end;
if Library.Flags.RemoveRecoil and
Library.Flags.RemoveRecoil.Value then
GameFramework.CurrentData.springs.cameraRecoil.Force = 0;
GameFramework.CurrentData.springs.cameraRecoil.Speed = 0;
GameFramework.CurrentData.springs.recoilPos.Force = 0;
GameFramework.CurrentData.springs.recoilPos.Speed = 0;
GameFramework.CurrentData.springs.recoilRot.Force = 0;
GameFramework.CurrentData.springs.recoilRot.Speed = 0;
else
GameFramework.CurrentData.springs.cameraRecoil.Force =
GameFramework.Originals.Springs.cameraRecoil.Force;
GameFramework.CurrentData.springs.cameraRecoil.Speed =
GameFramework.Originals.Springs.cameraRecoil.Speed;
GameFramework.CurrentData.springs.recoilPos.Force =
GameFramework.Originals.Springs.recoilPos.Force;
GameFramework.CurrentData.springs.recoilPos.Speed =
GameFramework.Originals.Springs.recoilPos.Speed;
GameFramework.CurrentData.springs.recoilRot.Force =
GameFramework.Originals.Springs.recoilRot.Force;
GameFramework.CurrentData.springs.recoilRot.Speed =
GameFramework.Originals.Springs.recoilRot.Speed;
end;
if Library.Flags.InstantLean and
Library.Flags.InstantLean.Value then
GameFramework.CurrentData.springs.leanAlpha.Force = 25;
GameFramework.CurrentData.springs.leanAlpha.Speed = 50;
else
GameFramework.CurrentData.springs.leanAlpha.Force = 50;
GameFramework.CurrentData.springs.leanAlpha.Speed = 4;
end;
if Library.Flags.RemoveSway and
Library.Flags.RemoveSway.Value then
GameFramework.CurrentData.springs.sway.Force = 0;
GameFramework.CurrentData.springs.sway.Speed = 0;
else
GameFramework.CurrentData.springs.sway.Force =
GameFramework.Originals.Springs.sway.Force;
GameFramework.CurrentData.springs.sway.Speed =
GameFramework.Originals.Springs.sway.Speed;
end;
if Library.Flags.RemoveBobbing and
Library.Flags.RemoveBobbing.Value then
GameFramework.CurrentData.springs.jumpTilt.Force = 0;
GameFramework.CurrentData.springs.jumpTilt.Speed = 0;
GameFramework.CurrentData.springs.walkCycle.Speed = 0;
GameFramework.CurrentData.springs.walkCycle.Force = 0;
GameFramework.CurrentData.springs.sprintCycle.Speed = 0;
GameFramework.CurrentData.springs.sprintCycle.Force = 0;
GameFramework.CurrentData.springs.strafeTilt.Speed = 0;
GameFramework.CurrentData.springs.strafeTilt.Force = 0;
else
GameFramework.CurrentData.springs.jumpTilt.Force =
GameFramework.Originals.Springs.jumpTilt.Force;
GameFramework.CurrentData.springs.jumpTilt.Speed =
GameFramework.Originals.Springs.jumpTilt.Speed;
GameFramework.CurrentData.springs.walkCycle.Speed =
GameFramework.Originals.Springs.walkCycle.Speed;
GameFramework.CurrentData.springs.walkCycle.Force =
GameFramework.Originals.Springs.walkCycle.Force;
GameFramework.CurrentData.springs.sprintCycle.Speed =
GameFramework.Originals.Springs.sprintCycle.Speed;
GameFramework.CurrentData.springs.sprintCycle.Force =
GameFramework.Originals.Springs.sprintCycle.Force;
GameFramework.CurrentData.springs.strafeTilt.Speed =
GameFramework.Originals.Springs.strafeTilt.Speed;
GameFramework.CurrentData.springs.strafeTilt.Force =
GameFramework.Originals.Springs.strafeTilt.Force;
end;
end
end);
end;
do --// Autoshoot
task.spawn(function()
if Library.Flags.SilentAim and
Library.Flags.SilentAim.Value and Library.Flags.AimMode.Value == "Silent Aim" and
rawget(Args[1], "weapon") and rawget(Args[1], "WeldedTool") and rawget(Args[1],
"viewModel") and rawget(Args[1], "ToolStance") and rawget(Args[1], "lastUseTime")
and rawget(Args[1], "RecoilPatternPos") and rawget(Args[1], "aimPart") and
Combat.TargetPart then
if Library.Flags.AutoShoot and
Library.Flags.AutoShoot.Value and Library.Flags.AutoShootBind and
Library.Flags.AutoShootBind.Value then
if Library.Flags.AutoShootMode.Value ==
"Standard" then
if Utility:IsVisible(Combat.TargetPart)
then
GameFramework.WeaponFunctions.RangedWeaponDefault(Args[1]);
end;
elseif Library.Flags.AutoShootMode.Value ==
"Adaptive" then
local FoundATarget = false
if Utility:IsVisible(Combat.TargetPart)
then
GameFramework.WeaponFunctions.RangedWeaponDefault(Args[1]);
FoundATarget = true;
end;
if not FoundATarget then
for Index, Part in next,
Combat.TargetPart.Parent:GetChildren() do
if Part:IsA("BasePart") and not
FoundATarget then
if
Part.Name:lower():find("head") and Utility:IsVisible(Part) then
FoundATarget = true;
Combat.TargetPart =
Part;
elseif
Part.Name:lower():find("torso") and Utility:IsVisible(Part) then
FoundATarget = true;
Combat.TargetPart =
Part;
else
if
Utility:IsVisible(Part) then
FoundATarget =
true;
Combat.TargetPart =
Part;
end;
end;
end;
end;
end;
if FoundATarget then
GameFramework.WeaponFunctions.RangedWeaponDefault(Args[1]);
end;
end;
end;
end;
end);
end;
return OldUpdateClient(unpack(Args))
end;
GameFramework.LastBulletType = tostring(Args[5]);
if Library.Flags.SilentAim and
Library.Flags.SilentAim.Value and Library.Flags.AimMode and
Library.Flags.AimMode.Value == "Silent Aim" and Combat.TargetPart then
local Origin = Camera.CFrame.p;
local Destination = Combat.TargetPart.Position;
Args[8] = {
ClassName = "Part",
CFrame = CFrame.new(Origin, Destination);
};
if Library.Flags.Manipulation and
Library.Flags.Manipulation.Value then
local Destination = Combat.TargetPart;
local Origin = Args[8].CFrame.p;
if VisiblePosition then
Combat.ManipulatedPosition =
VisiblePosition;
Combat.ManipulatedDirection =
(Destination.Position - VisiblePosition).unit
Args[8] = {
ClassName = "Part";
CFrame = CFrame.new(VisiblePosition,
Destination.CFrame.p);
Position = VisiblePosition;
};
else
Combat.ManipulatedDirection =
(Destination.Position - Origin).Unit;
Combat.ManipulatedPosition = Origin;
end;
end;
end;
end;
if Item then
Barrel = Item:FindFirstChild("Barrel");
Origin = Barrel.Position;
if Library.Flags.Manipulation and
Library.Flags.Manipulation.Value and GameFramework.Manipulated then
Origin = Combat.ManipulatedPosition;
end;
if Barrel then
local RayCast = Workspace:Raycast(Origin,
Direction * 7500, RayParams);
task.spawn(function()
GameFramework.IsShooting = true;
task.wait(0.5);
GameFramework.IsShooting = false;
end);
return OldBullet(self, unpack(Args));
end;
GameFramework.SetTargets.SetZoomTarget = function(...)
local Args = {...};
if Library.Flags.InstantAim and
Library.Flags.InstantAim.Value then
Args[4] = 0;
end;
return OldSetZoomTarget(unpack(Args));
end;
end;
end;
do --// Criminality
if FastCast then
do --// FastCast (Wallbang)
local OldBlacklist = FastCast.FireWithBlacklist;
if Args[1].fc[1] then
if Library.Flags.Wallbang and
Library.Flags.Wallbang.Value then
table.insert(Args[5], Workspace.Map);
end;
end;
return OldBlacklist(self, unpack(Args));
end;
end;
end;
end;
end;
do --// Blackout
if GameName == "Blackout" then
local OldFire = GameFramework.BulletHandler.Fire;
GameFramework.BulletHandler.Fire = function(...)
local Args = {...};
if Library.Flags.Tracers and
Library.Flags.Tracers.Value then
task.spawn(function()
local Origin = Args[2];
local Direction = Args[3];
if Direction and Origin then
local RayCast = Workspace:Raycast(Origin,
Direction, RayParams);
return OldFire(unpack(Args))
end;
end;
end;
end;
end)();
do --// Modifications
if Table["Recoil"] and Library.Flags.RemoveRecoil and
Library.Flags.RemoveRecoil.Value then
Table["Recoil"] = 0
end;
if Table["FireSlowDown"] and Library.Flags.Walkshoot and
Library.Flags.Walkshoot.Value then
Table["FireSlowDown"].Enabled = false;
end;
if Table["BulletSettings"] then
GameFramework.CurrentVelocity =
Table["BulletSettings"].Velocity;
end;
if Table["ChargeUpSettings"] then
if Library.Flags.InstantCharge and
Library.Flags.InstantCharge.Value then
Table["ChargeUpSettings"] = {
ChargeTime = 0,
ChargeDB = 0,
};
end;
end;
task.spawn(function()
task.wait(1)
GameFramework:CrimMods()
end);
end;
return Table
end));
end;
end)();
end;
do --// Loops
LPH_NO_VIRTUALIZE(function()
if GameName == "Project Delta" then
for Index, Value in next, getconnections(RunService.RenderStepped) do
GameConnections[Index] = Value;
end;
end;
local Fake = {
Real = {
CFrame = CFrame.new(),
};
Fake = {
CFrame = CFrame.new(),
},
};
Loops.RenderStepped = RunService.RenderStepped:Connect(function(DeltaTime)
task.spawn(function()
Camera = Workspace.CurrentCamera;
if GameFramework.FakePart then
do --// Enemies
--// Variables for targetting
local LastDistance, ClosestTarget, ActualPlayer = nil, nil,
nil;
local LastAimDistance, ClosestAimTarget, ActualAimPlayer = nil,
nil, nil;
Value.Info.Team = Value:GetTeam()
Value.Info.Character = Value:GetCharacter();
else
if GameName ~= "Deadline" then
Value.Info.Character =
Value:GetCharacter();
Value.Info.Team = Value:GetTeam()
end;
end;
do --// Vis
if (Library.Flags.ESPFlags and
Library.Flags.ESPFlags.Value and table.find(Library.Flags.Flags.Value, "Visible"))
or (Library.Flags.VisibleCheck and Library.Flags.VisibleCheck.Value) or
(Library.Flags.HighlightVisible and Library.Flags.HighlightVisible.Value) then
local Root = Value:GetRoot();
else
Value.Info.IsVisible = false;
end;
end;
do --// Targetting
do --// Main
if Library.Flags.SilentAim and
Library.Flags.SilentAim.Value and not Value.Info.IsFriendly and
Library.Flags.VisibleCheck and ((Library.Flags.VisibleCheck.Value and
Value.Info.IsVisible) or not Library.Flags.VisibleCheck.Value) then
if (((Library.Flags.IncludeAi and
Library.Flags.IncludeAi.Value and (Class == "Player" or Class == "AI")) or Class ==
"Player") or (Library.Flags.IncludeAi and not Library.Flags.IncludeAi.Value and
Class ~= "AI")) then
if not Library.Flags.TeamCheck or
(Library.Flags.TeamCheck and Library.Flags.TeamCheck.Value and Team ~=
Utility.Team) or (Library.Flags.TeamCheck and not Library.Flags.TeamCheck.Value)
then
do --// Main
local Character =
Value.Info.Character
local HasHumanoidPassed =
false
local Target = Character
and Value:GetRoot()
local Humanoid = Character
and Character:FindFirstChildOfClass("Humanoid")
if GameName == "Aftermath"
and Character then
if Value.Info.Class ==
"Player" then
Humanoid =
Character.Parent:FindFirstChildOfClass("Humanoid")
end
end;
if GameName ==
"Criminality" and Character then
if
(Library.Flags.IgnoreDowned.Value and GameFramework:CheckDowned(Character)) or
Character:FindFirstChildOfClass("ForceField") or
Character:FindFirstChildOfClass("Forcefield") then
HasHumanoidPassed =
false;
end;
end;
if (Humanoid and
Humanoid.Health >= Library.Flags.MinimumHealth.Value) or not Humanoid or GameName
== "Aftermath" then
HasHumanoidPassed =
true
end
if Target and
HasHumanoidPassed then
local Distance =
(Target.Position - Camera.CFrame.p).Magnitude
Distance = Distance /
DistanceConversions[PreferredDistances[GameName]].Conversion
if Distance <
Library.Flags.MaxDistance.Value then
local ScreenPos,
IsOnScreen = Camera:WorldToViewportPoint(Target.Position)
local Center =
Vector2.new(Visuals.FOVCircle.Position.X.Offset,
Visuals.FOVCircle.Position.Y.Offset);
if IsOnScreen then
local
DistanceFromCenter = (Center - Vector2.new(ScreenPos.X, ScreenPos.Y)).Magnitude
if
DistanceFromCenter <= (LastDistance or (Library.Flags.EnableFOV.Value and
Visuals.FOVCircle.Size.X.Offset / 2) or 2000) then
local
AllowedParts = {}
local List
= Library.Flags.TargettedBones.Value
local
BodyParts = Character
if GameName
== "Bad Business" then
BodyParts = Character:FindFirstChild("Body")
end
if
BodyParts then
for _,
Part in ipairs(BodyParts:GetChildren()) do
if
Part:IsA("BasePart") or Part:IsA("MeshPart") or Part:IsA("Part") then
table.insert(AllowedParts, Part)
table.insert(AllowedParts, Part)
table.insert(AllowedParts, Part)
end
end
end
end;
if
#AllowedParts >= 1 then
local
Random = math.random(1, #AllowedParts)
ClosestTarget = AllowedParts[Random]
LastDistance = DistanceFromCenter
ActualPlayer = Index
if
ClosestTarget and GameName == "Games Unite" then
ClosestTarget = Value:GetRoot()
end
end
end
end
end
end
end;
end
end;
end;
end;
end;
if Root then
Root.CFrame = (Root.CFrame -
Root.Position) + Position
end;
end;
end;
do --// HBE
if Library.Flags.HBE and
Library.Flags.HBE.Value and Library.Flags.ExpandHeads.Value and (GameName == "Blood
and Iron" or GameName == "Combat Warriors") then
local Character = Value.Info.Character;
if Character and
Character:FindFirstChild("Head") then
Character.Head.Size =
Vector3.new(Library.Flags.Headsize.Value, Library.Flags.Headsize.Value,
Library.Flags.Headsize.Value);
Character.Head.Transparency = 0.7;
Character.Head.CanCollide = false;
end;
else
local Character = Value.Info.Character;
if Character and
Character:FindFirstChild("Head") then
Character.Head.Size =
Vector3.new(1.2000000476837158, 1, 1);
Character.Head.Transparency = 0;
Character.Head.CanCollide = true;
end;
end;
end;
end);
end;
end;
Combat.Target = ActualPlayer;
Combat.TargetName = ActualPlayerName;
Combat.TargetPart = ClosestTarget;
if ClosestTarget then
Combat.TargetPosition = ClosestTarget.Position;
Combat.CurrentPosition = Camera.CFrame.p;
end;
do --// Functions
do --// Aim Assist
task.spawn(function()
Combat:AimAssist(DeltaTime);
end);
end;
if PlayerData then
local Inventory = PlayerData.Clothing
local Hotbar = PlayerData.Inventory
local Options =
Library.Flags.InventoryOptions.Value
local Health =
math.floor(Combat.Target.Character.Humanoid.Health);
Visuals.InfoFrame.Visible = true;
Visuals:UpdateInfo(Combat.TargetPart,
Combat.Target, Health, Inventory, Hotbar, Options);
else
Visuals.InfoFrame.Visible = false;
end;
else
Visuals.InfoFrame.Visible = false;
end;
end;
Visuals.InfoFrame.Visible = true;
Visuals:UpdateInfo(Combat.TargetPart,
Combat.Target, Health, Inventory, Hotbar, Options);
else
Visuals.InfoFrame.Visible = false;
end;
else
if Combat.Target and Combat.TargetPart and
Library.Flags.InventoryViewer and Library.Flags.InventoryViewer.Value then
local Inventory = Combat.Target.Backpack
local Options =
Library.Flags.InventoryOptions.Value
local Health =
math.floor(Combat.TargetPart.Parent.Humanoid.Health);
Visuals.InfoFrame.Visible = true;
Visuals:UpdateInfo(Combat.TargetPart,
Combat.Target, Health, Inventory, nil, Options);
else
Visuals.InfoFrame.Visible = false;
end;
end;
end;
end;
end;
do --// Auras
task.spawn(function()
if Library.Flags.KillAura and
Library.Flags.KillAura.Value then
if GameName == "Combat Warriors" then
local Tool = Client.Character and
Client.Character:FindFirstChildOfClass("Tool")
if not GameFramework.LastHitTick then
GameFramework.LastHitTick = tick()
end
if Tool and
Tool:FindFirstChild("CooldownProgress") and Tool.CooldownProgress.Value == 1 and
Combat.TargetPart and tick() - GameFramework.LastHitTick > 0.5 then
GameFramework.LastHitTick = tick()
ReplicatedStorage.Communication:WaitForChild("Events"):WaitForChild("MeleeSwing"):F
ireServer(Tool, 3)
task.wait(0.1)
local args = {
[1] = Tool,
[2] = Combat.TargetPart,
[3] = Tool.Hitboxes:GetChildren()[1],
[4] = Tool.Hitboxes:GetChildren()
[1].Position,
[5] = Tool.Hitboxes:GetChildren()
[1]:FindFirstChild("DmgPoint").CFrame,
[6] = CFrame.new(Camera.CFrame.p,
Combat.TargetPart.CFrame.p).lookVector,
[7] =
CFrame.new(Tool.Hitboxes:GetChildren()[1].Position,
Combat.TargetPart.CFrame.p).lookVector,
[8] = Tool.Hitboxes:GetChildren()
[1].CFrame.lookVector
}
ReplicatedStorage.Communication:WaitForChild("Events"):WaitForChild("MeleeDamage"):
FireServer(unpack(args))
end
--[[
// SWING
local args = {
[1] =
game:GetService("Players").LocalPlayer:indFirstChildOfClass("Tool"),
[2] = 3
}
game:GetService("ReplicatedStorage"):WaitForChild("Communication"):WaitForChild("Ev
ents"):WaitForChild("MeleeSwing"):FireServer(unpack(args))
// Hit
local args = {
[1] =
game:GetService("Players").LocalPlayer:indFirstChildOfClass("Tool"),
[2] =
game:GetService("Players"):WaitForChild("vtmxrs").Character:FindFirstChild("Right
Leg"),
[3] =
game:GetService("Players").LocalPlayer:FindFirstChildOfClass("Tool").Hitboxes:GetCh
ildren()[1],
[4] =
game:GetService("Players").LocalPlayer:indFirstChildOfClass("Tool").Hitboxes:GetChi
ldren()[1].Position,
[5] =
game:GetService("Players").LocalPlayer:indFirstChildOfClass("Tool").Hitboxes:GetChi
ldren()[1]:FindFirstChild("DmgPoint").CFrame,
[6] = CFrame.new(Camera.CFrame.p,
Target.CFrame.p).lookVector,
[7] =
CFrame.new(game:GetService("Players").LocalPlayer:FindFirstChildOfClass("Tool").Hit
boxes:GetChildren()[1].Position, Target.CFrame.p).lookVector,
[8] =
game:GetService("Players").LocalPlayer:FindFirstChildOfClass("Tool").Hitboxes:GetCh
ildren()[1].CFrame.lookVector
}
game:GetService("ReplicatedStorage"):WaitForChild("Communication"):WaitForChild("Ev
ents"):WaitForChild("MeleeDamage"):FireServer(unpack(args))
]]
end
ReplicatedStorage.MeleeStorage.Events.Swing:InvokeServer();
--task.wait(0.2);
ReplicatedStorage.MeleeStorage.Events.Hit:FireServer(Combat.TargetPart,
Combat.TargetPart.Position);
end;
end;
if
Client.Character:FindFirstChildOfClass("Tool") and
(Client.Character:FindFirstChildOfClass("Tool").Name == "Fire-Axe" or
Client.Character:FindFirstChildOfClass("Tool").Name == "Sledgehammer") then
SwingTime = 1.5
end;
GameFramework:CrimHitObject(
Combat.TargetPart.Parent,
"Weapon",
Combat.TargetPart,
{Delay = SwingTime, AttackType = "Hit"}
);
end;
end;
end;
if Library.Flags.FinishAura and
Library.Flags.FinishAura.Value and Combat.TargetPart then
if GameName == "Criminality" then
if
GameFramework:CheckDowned(Combat.TargetPart.Parent) and GameFramework.CurrentConfig
and rawget(GameFramework.CurrentConfig, "Mains") and
GameFramework.CurrentConfig.Mains.E ~= nil and Combat.TargetPart and
(Combat.TargetPart.Position - Camera.CFrame.p).Magnitude < 20 then
local SwingTime =
GameFramework.CurrentConfig.Mains.E.SwingTime;
GameFramework:CrimHitObject(
Combat.TargetPart.Parent,
"Weapon",
Combat.TargetPart,
{Delay = SwingTime, AttackType =
"Finish"}
);
end;
end;
end;
if Library.Flags.RegisterAura and
Library.Flags.RegisterAura.Value and Library.Flags["Safe Aura"].Value and GameName
== "Criminality" then
local Closest, Distance;
for Index, Value in next,
Workspace.Map.BredMakurz:GetChildren() do
if Value:FindFirstChild("Values") and
Value:FindFirstChild("MainPart") and Value.Values.Broken.Value == false then
local Root = Value.MainPart;
if
(Client.Character.HumanoidRootPart.Position - Root.Position).Magnitude <= 10 then
Closest = Root;
Distance =
(Client.Character.HumanoidRootPart.Position - Root.Position).Magnitude;
end;
end;
end;
if Closest and
Client.Character:FindFirstChildOfClass("Tool") then
if
Client.Character:FindFirstChildOfClass("Tool").Name == "Crowbar" then
delay(0.4, function()
do --// Autoshoot
if GameName == "Criminality" then
task.spawn(function()
if Client.Character:FindFirstChildOfClass("Tool")
and Library.Flags.Autoshoot and Library.Flags.Autoshoot.Value and Combat.TargetPart
then
GameFramework:FireBullet();
end;
--[[local Tool =
Client.Character:FindFirstChildOfClass("Tool");
if Library.Flags.Autoshoot and
Library.Flags.Autoshoot.Value then
if Client.Character and
Client.Character:FindFirstChild("Head") and Combat.TargetPart and
Client.Character:FindFirstChildOfClass("Tool") and
Client.PlayerGui:FindFirstChild("GunGUI") then
if Tool:FindFirstChild("Values") and
Tool:FindFirstChild("IsGun")then
local Origin =
Client.Character.Head.Position;
local Destination =
Combat.TargetPart.Position;
do
Destination = Combat.TargetPart;
if Utility:IsVisible(Destination)
then
local Firemode =
Client.PlayerGui.GunGUI.Frame.Main.Mode.Text;
--"[AUTO]"
GameFramework.IsActivating =
true;
Tool:Activate();
else
if GameFramework.IsActivating
then
GameFramework.IsActivating
= false;
Tool:Deactivate();
end;
end;
end;
end;
end;
else
if GameFramework.IsActivating and Tool then
GameFramework.IsActivating = false;
Tool:Deactivate();
end;
end;]]
end);
end;
end;
end;
do --// Client
if Beta:FindFirstChild(Client.Name) then
return Beta
end
if Omega:FindFirstChild(Client.Name) then
return Omega
end
if FFA:FindFirstChild(Client.Name) then
return "FFA_DISABLE_TEAMS"
end
if Infected:FindFirstChild(Client.Name) then
return Infected
end
if Survivors:FindFirstChild(Client.Name) then
return Survivors
end
end
else
Utility.Team = Client:GetAttribute("Team");
end;
do --// Character
if Client.Character and GameName ~= "Deadline" then
local Character = Client.Character;
local Root =
Character:FindFirstChild("HumanoidRootPart");
local Humanoid =
Character:FindFirstChildOfClass("Humanoid");
do --// Humanoid Related
if Humanoid and Root then
do --// Movement
if GameName == "Combat Warriors" or
GameName == "Project Delta" or GameName == "Criminality" or GameName == "Universal"
or GameName == "Blackout" or GameName == "The Streets" or GameName == "State Of
Anarchy" or GameName == "Korrupt Zombies" then
Utility.ViewmodelHighlight.Adornee = Utility.CurrentViewmodel;
Utility.ViewmodelHighlight.OutlineColor =
Library.Flags.ViewmodelOutlineColor.Color;
end;
end;
end;
Client.Character.RagdollClient.Disabled = true;
else
Client.Character.RagdollClient.Disabled = false;
end;
end;
end
if Library.Flags.AntiRagdoll
and Library.Flags.AntiRagdoll.Value then
SelfStats.RagdollTime.Value
= 0;
SelfStats.Grabbed.Value =
false;
SelfStats.RagdollTime.RagdollSwitch2.Value = false;
SelfStats.RagdollTime.RagdollTime2.Value = 0;
SelfStats.RagdollTime.SRagdolled.Value = false;
SelfStats.Downed.Value =
false;
SelfStats.Handcuffed.Value
= false;
SelfStats.Grabbed.Value =
false;
SelfStats.RagdollTime.RagdollSwitch.Value = false;
SelfStats.RagdollTime.SRagdolled.Value = false;
Humanoid:SetStateEnabled(Enum.HumanoidStateType.RunningNoPhysics, true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Swimming, true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Running, true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Jumping,true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.FallingDown, true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.GettingUp, true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Freefall, true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Landed, true)
Humanoid:SetStateEnabled(Enum.HumanoidStateType.Ragdoll, false)
Value:FindFirstChild(Value.Name.."Collider").CanCollide = false;
end;
end;
end;
if
SelfStats:FindFirstChild("AccelerationModifier") and
SelfStats:FindFirstChild("AccelerationModifier2") then
if
Library.Flags.LessInertia and Library.Flags.LessInertia.Value then
SelfStats.AccelerationModifier.Value = 9e9;
SelfStats.AccelerationModifier2.Value = 9e9;
else
SelfStats.AccelerationModifier.Value = 1;
SelfStats.AccelerationModifier2.Value = 1;
end;
if Library.Flags.Walkshoot
and Library.Flags.Walkshoot.Value then
for Index, Value in
pairs(GameFramework.StaminaTables) do
Value.WS = 18;
end;
end;
if
Library.Flags.InfiniteStamina and Library.Flags.InfiniteStamina.Value then
for Index, Value in
pairs(GameFramework.StaminaTables) do
Value.S = 100;
end;
end;
end
end;
end;
Connection:Disable()
end
end
Humanoid.WalkSpeed =
Library.Flags.SpeedValue.Value
end
if GameName ==
"Criminality" or GameName == "The Streets" then
task.spawn(function()
RunService.Heartbeat:Wait()
local Direction =
Humanoid.MoveDirection
local Root =
Client.Character:FindFirstChild("HumanoidRootPart")
if Root and
Humanoid:GetState() ~= Enum.HumanoidStateType.Climbing then
Root.CFrame =
Root.CFrame + Vector3.new(Direction.X * Library.Flags.SpeedValue.Value, 0,
Direction.Z * Library.Flags.SpeedValue.Value)
end
end)
end
end
--// IncreaseJump
if Library.Flags.IncreaseJump
and Library.Flags.IncreaseJump.Value then
if GameName ~= "Universal"
and GameName ~= "Criminality" then
if getconnections and
GameName ~= "Universal" then
for _, Connection
in ipairs(getconnections(Humanoid:GetPropertyChangedSignal("JumpPower"))) do
Connection:Disable()
end
end
if GameName == "Project
Delta" then
Humanoid.JumpHeight
= Library.Flags.JumpValue.Value;
end;
Humanoid.JumpPower =
(GameName ~= "Project Delta" and GameName ~= "Criminality") and
Library.Flags.JumpValue.Value;
if GameName ==
"Criminality" then
Humanoid.UseJumpPower = false
end
else
Humanoid.JumpHeight =
Library.Flags.JumpValue.Value
if GameName ==
"Criminality" then
Humanoid.UseJumpPower = false
end
end
else
if GameName ==
"Criminality" then
Humanoid.UseJumpPower =
true
end
end;
end;
end;
do --// Removals
if GameName == "Project Delta" and
Library.Flags.EnableRemovals and Library.Flags.EnableRemovals.Value then
local PlayerGui =
Client.PlayerGui
local MainGui = PlayerGui and
PlayerGui.MainGui
local ScreenVFX = MainGui and
MainGui.MainFrame:FindFirstChild("ScreenEffects")
if ScreenVFX then
local Removals =
Library.Flags.Removals.Value
local Viewmodel =
Utility.CurrentViewmodel
if Viewmodel and
Viewmodel:FindFirstChild("Item") and Viewmodel.Item:FindFirstChild("Attachments")
then
local Sight =
Viewmodel.Item.Attachments:FindFirstChild("Sight")
if Sight and
Sight:FindFirstChildOfClass("Model") then
local Reticle =
Sight:FindFirstChildOfClass("Model"):FindFirstChild("Reticle")
local Prism =
Reticle and Reticle:FindFirstChild("PrismScopeGui")
if Prism then
local
ScopeParallax, ScopeLines = Prism.Parallax, Prism.Sight
if ScopeLines
and table.find(Removals, "ScopeLines") then
ScopeLines.Visible = false
elseif
ScopeLines and not table.find(Removals, "ScopeLines") then
ScopeLines.Visible = true
end
if
ScopeParallax and table.find(Removals, "Scope") then
for _,
Value in next, ScopeLines:GetChildren() do
Value.Visible = false
end
ScopeParallax.Visible = false
elseif
ScopeParallax and not table.find(Removals, "Scope") then
ScopeParallax.Visible = true
for _,
Value in pairs(ScopeLines:GetChildren()) do
Value.Visible = true
end
end
end
end
end
if table.find(Removals,
"Flashbang") then
ScreenVFX.Flashbang.Visible = false;
end;
if table.find(Removals,
"Parallax") then
ScreenVFX.Parallax.Visible = false;
end;
ScreenVFX.Visor.Visible =
not table.find(Removals, "Visor")
do --// AntiAim
do --// Project Delta
if GameName == "Project Delta"
and Library.Flags.AntiAim and Library.Flags.AntiAim.Value then
do --// Yaw
Humanoid.AutoRotate =
false;
local Root =
Humanoid.RootPart;
local Angle = -
math.atan2(Camera.CFrame.LookVector.Z, Camera.CFrame.LookVector.X) + math.rad(-90);
do
if
Library.Flags.YawBase.Value == "Random" then
Angle = -
math.atan2(Camera.CFrame.LookVector.Z, Camera.CFrame.LookVector.X +
math.rad(math.random(0, 360)));
elseif
Library.Flags.YawBase.Value == "Spin" then
Angle = -
math.atan2(Camera.CFrame.LookVector.Z, Camera.CFrame.LookVector.X) + tick() * 10 %
360;
elseif
Library.Flags.YawBase.Value == "None" then
Angle = -
math.atan2(Camera.CFrame.LookVector.Z, Camera.CFrame.LookVector.X) + math.rad(-90);
end
end;
local Offset =
math.rad(Library.Flags.YawOffset.Value)
local Angled =
CFrame.new(Root.Position) * CFrame.Angles(0, Angle + Offset, 0);
if
Library.Flags.YawBase.Value == "Targets" and Combat.TargetPart then
Angled =
CFrame.new(Root.Position, Combat.TargetPart.Position) * CFrame.Angles(0, Offset,
0);
end;
Root.CFrame =
Utility:Rotate(Angled)
end;
do --// Pitch
local Pitch =
Library.Flags.PitchValue.Value;
if
Library.Flags.PitchBase.Value == "Down" then
Pitch = -1
elseif
Library.Flags.PitchBase.Value == "Up" then
Pitch = 1
elseif
Library.Flags.PitchBase.Value == "Nod" then
local Sine =
math.sin(tick() * 2)
Pitch = Sine
elseif
Library.Flags.PitchBase.Value == "Random" then
Pitch =
math.random() / 10
end;
ReplicatedStorage.Remotes.UpdateTilt:FireServer(Pitch);
end;
else
Humanoid.AutoRotate = true;
end;
end;
do --// Aftermath
Client.Character.WorldCharacter.HumanoidRootPart.CFrame = Utility:Rotate(Angled)
else
Humanoid.AutoRotate =
true
end
end
end
end;
GameFramework.Character.Stamina = 9e9
GameFramework.Character.MaxStamina = 9e9
else
if
GameFramework.Character.Stamina > 10 then
GameFramework.Character.Stamina = 10
end
if
GameFramework.Character.MaxStamina > 10 then
GameFramework.Character.MaxStamina = 10
end
end;
end
end
end;
Humanoid:ChangeState(Enum.HumanoidStateType.Running)
if GameName == "The Streets"
then
Humanoid.PlatformStand =
false
end;
Humanoid.RootPart.Velocity =
NonePos
local Vector = ((
Humanoid.MoveDirection +
(IsForwardPressed and
Vector3.new(0, NormalCameraLookVector.Y, 0) or NonePos) +
(IsBackwardPressed and
Vector3.new(0, -NormalCameraLookVector.Y, 0) or NonePos)
) * Delta)
base += Vector
GameFramework.WaterPart.Position = Position
end
end
end
end
end;
end;
Visuals.SelfHighlight.FillColor = Fill.Color;
Visuals.SelfHighlight.OutlineColor =
Outline.Color;
Visuals.SelfHighlight.FillTransparency =
Fill.Transparency;
Visuals.SelfHighlight.OutlineTransparency =
Outline.Transparency;
else
Visuals.SelfHighlight.Enabled = false;
end;
end;
Root.Velocity = NonePos
local ForwardBackward =
Vector3.new(NormalCameraLookVector.X, 0, NormalCameraLookVector.Z).Unit
local RightLeft =
Vector3.new(NormalCameraLookVector.Z, 0, -NormalCameraLookVector.X).Unit
local Vector = (
(Humanoid.MoveDirection) +
(IsUpPressed and UpPos or NonePos) +
(IsDownPressed and DownPos or NonePos) +
(IsForwardPressed and ForwardBackward or
NonePos) +
(IsBackwardPressed and -ForwardBackward or
NonePos) +
(IsLeftPressed and -RightLeft or NonePos) +
(IsRightPressed and RightLeft or NonePos)
) * Delta
base += Vector
if Visuals.WeaponInfo.Visible then
Visuals.WeaponInfo.Text = "";
Visuals.WeaponInfo.ZIndex = 3;
Visuals.WeaponInfo.Position = UDim2.new(0,
Camera.ViewportSize.X / 2, 0, (Camera.ViewportSize.Y / 2) + 20);
do
local EquippedItem =
ReplicatedStorage.Players[Client.name].Status.GameplayVariables.EquippedTool.Value;
local Center = Camera.ViewportSize / 2;
if EquippedItem then
local WeaponName = EquippedItem.Name;
local Attachments =
EquippedItem:FindFirstChild("Attachments");
local ItemProperties =
EquippedItem:FindFirstChild("ItemProperties")
if Attachments then
local Magazine =
Attachments:FindFirstChild("Magazine");
if Magazine then
Magazine = Magazine:GetChildren()[1];
if Magazine then
local Ammo, MaxAmmo =
Magazine.ItemProperties:GetAttribute("LoadedAmmo"),
Magazine.ItemProperties:GetAttribute("MaxLoadedAmmo");
local Caliber =
Magazine.ItemProperties["LoadedAmmo"]:GetChildren()[1]
if Caliber then
Caliber =
Caliber:GetAttribute("AmmoType");
Visuals.WeaponInfo.Text =
WeaponName:upper() .. " ["..tostring(Ammo).."/"..tostring(MaxAmmo).."] |
"..tostring(Caliber):upper();
else
Caliber = "NO AMMO";
Visuals.WeaponInfo.Text =
WeaponName:upper() .. " ["..tostring(Ammo).."/"..tostring(MaxAmmo).."] |
"..tostring(Caliber):upper();
end;
else
Visuals.WeaponInfo.Text = WeaponName ..
" [NO MAGAZINE]";
end;
else
if not ItemProperties["LoadedAmmo"]
then
Visuals.WeaponInfo.Text =
WeaponName .. " [NO MAGAZINE]";
else
local MaxLoadedAmmo =
ItemProperties:GetAttribute("MaxLoadedAmmo");
local LoadedAmmo =
ItemProperties:GetAttribute("LoadedAmmo");
local Caliber =
ItemProperties["LoadedAmmo"]:GetChildren()
if Caliber and Caliber[1] then
Caliber =
Caliber[1]:GetAttribute("AmmoType");
Visuals.WeaponInfo.Text =
WeaponName:upper() .. " ["..tostring(LoadedAmmo).."/"..tostring(MaxLoadedAmmo).."]
| "..tostring(Caliber):upper();
else
Caliber = "NO AMMO";
Visuals.WeaponInfo.Text =
WeaponName:upper() .. " ["..tostring(LoadedAmmo).."/"..tostring(MaxLoadedAmmo).."]
| "..tostring(Caliber):upper();
end;
end;
end;
else
Visuals.WeaponInfo.Text = WeaponName;
end;
end;
if Library.Flags.InfoFollowBarrel.Value and
Visuals.CurrentAimPart then
local Origin = Visuals.CurrentAimPart.CFrame.p;
local LookVector =
Visuals.CurrentAimPart.CFrame.lookVector;
local Distance = 1000;
if IsOnScreen then
Visuals.WeaponInfo.Position =
UDim2.new(0, Position.X, 0, Position.Y);
else
Visuals.WeaponInfo.Position =
UDim2.new(0, Center.X, 0, Center.Y + 20);
end;
else
Visuals.WeaponInfo.Position = UDim2.new(0,
Center.X, 0, Center.Y + 20);
end;
else
Visuals.WeaponInfo.Position = UDim2.new(0,
Center.X, 0, Center.Y + 20);
end;
end;
end;
end;
end;
Visuals:UpdateFOVColor(Library.Flags["EasingStyle"].Value,
Library.Flags["EasingDirection"].Value, Library.Flags.RainbowFOV.Value);
end;
end;
end;
if Distance <=
Library.Flags.CustomDistance.Value then
local Pos, IsOnScreen =
Camera:WorldToViewportPoint(Position)
Main.Visible = IsOnScreen
if Main.Visible then
Main.FontFace =
Library.Flags.WorldFont.Value == "Smallest Pixel" and Library.SmallFont or
Library.MenuFont
Main.TextSize =
Library.Flags.WorldFont.Value == "Smallest Pixel" and Library.SmallSize or
Library.TextSize
Main.Text = CustomName
Main.TextColor3 =
Library.Flags[Data.Color].Color
Main.Position = UDim2.new(0, Pos.X,
0, Pos.Y)
Main.TextTransparency =
Library.Flags.FadeObjects and Library.Flags.FadeObjects.Value and
Visuals:Map(Distance, 0, Library.Flags.CustomDistance.Value + 40, 0, 1) or 0
do --// Tracers
if Library.Flags.Tracers and Library.Flags.Tracers.Value then
Visuals:UpdateLines()
end;
end;
do --// Hitmarkers
Visuals:UpdateHitmarkers()
end;
do --// Radar
if Library.Flags.Radar and Library.Flags.Radar.Value then
Visuals.RadarFrame.Visible = true;
local DelayV = Library.Flags.RadarDelay and
Library.Flags.RadarDelay.Value / 2.5 or 200
if tick() - Visuals.RadarTick >= (DelayV / 1000) then
Visuals:UpdateRadar();
Visuals.RadarTick = tick();
end;
else
Visuals.RadarFrame.Visible = false;
end;
end;
do --// Lighting
if Library.Flags.AllowAmbient and
Library.Flags.AllowAmbient.Value then
Lighting.Ambient = Library.Flags.Ambience.Color;
else
if GameName == "Blackout" then
Lighting.Ambient = Properties.Lighting.Ambient;
end
end;
do --// Atmosphere
local Atmosphere =
Lighting:FindFirstChildOfClass("Atmosphere")
if Atmosphere then
if Library.Flags["FogDensity"] and
Library.Flags["FogDensity"].Value and Library.Flags["FogDensityValue"] then
Atmosphere.Density =
Library.Flags["FogDensityValue"].Value;
end;
if Library.Flags["EnableFogColor"] and
Library.Flags["EnableFogColor"].Value and Library.Flags["FogColor"] then
Atmosphere.Color = Library.Flags["FogColor"].Color;
Atmosphere.Decay = Library.Flags["FogColor"].Color;
else
Atmosphere.Color = Properties.Atmosphere.Color;
Atmosphere.Decay = Properties.Atmosphere.Decay;
end;
if Library.Flags["EnableGlare"] and
Library.Flags["EnableGlare"].Value and Library.Flags["GlareValue"] then
Atmosphere.Glare =
Library.Flags["GlareValue"].Value;
else
Atmosphere.Glare = Properties.Atmosphere.Glare;
end;
if Library.Flags["EnableHaze"] and
Library.Flags["EnableHaze"].Value and Library.Flags["HazeValue"] then
Atmosphere.Haze = Library.Flags["HazeValue"].Value;
else
Atmosphere.Haze = Properties.Atmosphere.Haze;
end;
end;
end;
do --// Clouds
local Clouds = Workspace:FindFirstChild("Terrain") and
Workspace.Terrain:FindFirstChildOfClass("Clouds")
if Clouds then
if Library.Flags["CloudDensity"] and
Library.Flags["CloudDensity"].Value and Library.Flags["CloudDensityValue"] then
Clouds.Density =
Library.Flags["CloudDensityValue"].Value;
end;
if Library.Flags["EnableCloudColor"] and
Library.Flags["EnableCloudColor"].Value and Library.Flags["CloudColor"] then
Clouds.Color = Library.Flags["CloudColor"].Color;
else
if GameName ~= "Scorched Earth" then
Clouds.Color = Properties.Clouds.Color
end
end;
end;
end;
do --// Terrain
if Workspace:FindFirstChild("Terrain") and GameName ~=
"Fallen" then
for Index, Value in pairs({"Grass", "LeafyGrass",
"Ground", "Rock", "Sand"}) do
if Properties.Terrain[Value] then
local OriginalColor =
Properties.Terrain[Value];
if Library.Flags[Value.."Enabled"] and
Library.Flags[Value.."Enabled"].Value and Library.Flags[Value.."Color"] then
Workspace.Terrain:SetMaterialColor(Enum.Material[Value],
Library.Flags[Value.."Color"].Color);
else
Workspace.Terrain:SetMaterialColor(Enum.Material[Value], OriginalColor);
end;
end;
end;
end;
end;
end;
do --// Chatbot
if tick() - Chatbot.LastTick > 3 then
Chatbot.LastTick = tick()
ReplicatedStorage.DefaultChatSystemChatEvents.SayMessageRequest:FireServer(Wrapped,
"Global");
else
if
ReplicatedStorage:FindFirstChild("DefaultChatSystemChatEvents") then
ReplicatedStorage.DefaultChatSystemChatEvents.SayMessageRequest:FireServer(Wrapped,
"All");
end;
end;
end;
end;
end;
do --// Crosshair
if GameName == "Universal" then
if not IsStudio and game.PlaceId ~= 3221241066 and
game.PlaceId ~= 17772691665 then
Visuals:UpdateCrosshair(1000, Camera.CFrame.p,
Camera.CFrame.LookVector, Camera);
else
if Camera:FindFirstChildOfClass("Model") then
local GunModel =
Camera:FindFirstChildOfClass("Model"):FindFirstChildOfClass("Model");
if GunModel then
local AimPart =
GunModel:FindFirstChild("AimPart");
local Silencer =
GunModel:FindFirstChild("Silenciador");
Visuals:UpdateCrosshair(1000, AimPart.CFrame.p,
AimPart.CFrame.LookVector, Camera);
else
Visuals.CrossAdornee.Transparency = 1;
end;
else
Visuals.CrossAdornee.Transparency = 1;
end;
end;
elseif GameName == "Project Delta" or GameName == "State Of
Anarchy" or GameName == "Scorched Earth" then
if GameName == "State Of Anarchy" then
local VM = Workspace.Ignore.Rigs:GetChildren()[1]
if VM then
Visuals.CurrentAimPart = VM.Essentials.Shoot
end
end
do --// Korrupt
if not GameFramework.LastModUpdate then
GameFramework.LastModUpdate = tick()
end
local Weapons =
require(ReplicatedStorage.Modules.Shared.Managers.WeaponInfo)
if Library.Flags.NoSpread.Value then
for Index, V in next, Weapons do
if type(Weapons[Index]) == "table" then
Weapons[Index].SpreadPerShot = 0
Weapons[Index].MaxSpread = 0
end
end
else
for Index, V in next, Weapons do
if type(Weapons[Index]) == "table" then
Weapons[Index].SpreadPerShot =
GameFramework.OldWeapons[Index].SpreadPerShot
Weapons[Index].MaxSpread =
GameFramework.OldWeapons[Index].MaxSpread
end
end
end
end;
end
end
--Player.loadoutData.secondary.staticData.recoilS =
0.0001
Player.loadoutData.secondary.staticData.recoilCamVisual
= Vector3.new()
end;
if Library.Flags.RemoveDrag and
Library.Flags.RemoveDrag.Value then
Player.loadoutData.primary.staticData.drag = 0.0001
Player.loadoutData.secondary.staticData.drag = 0.0001
end;
if Library.Flags.RemoveSpread and
Library.Flags.RemoveSpread.Value then
Player.loadoutData.primary.staticData.accuracy = 1
Player.loadoutData.secondary.staticData.accuracy = 1
end;
if Library.Flags.RemoveSway and
Library.Flags.RemoveSway.Value then
Player.loadoutData.primary.staticData.mouseSwayMult =
0.001
Player.loadoutData.primary.staticData.swayMult = 0.001
Player.loadoutData.secondary.staticData.mouseSwayMult =
0.001
Player.loadoutData.secondary.staticData.swayMult =
0.001
end
end
end
end);
end);
do --// Manipulation
if Combat.ManipulatedPosition and
Combat.ManipulatedDirection and Library.Flags.Manipulation and
Library.Flags.Manipulation.Value and Combat.TargetPart then
task.spawn(function()
if GameFramework.Manipulated and
GameFramework.IsShooting then
local OldPos =
Client.Character.HumanoidRootPart.CFrame
Client.Character.HumanoidRootPart.CFrame =
CFrame.new(Combat.ManipulatedPosition, Combat.ManipulatedDirection)
Fake.Fake.CFrame =
Client.Character.HumanoidRootPart.CFrame;
end;
end);
end;
end;
if Client.Character and
Client.Character:FindFirstChild("HumanoidRootPart") and
Client.Character:FindFirstChild("LeftFoot") and
Client.Character:FindFirstChild("Humanoid") and Library.Flags.Spiderman and
Library.Flags.Spiderman.Value and Library.Flags.ClimbWalls and
Library.Flags.ClimbWalls.Value then
pcall(function()
local Foot =
Client.Character:FindFirstChild("LeftFoot");
local Root =
Client.Character:FindFirstChild("HumanoidRootPart");
local Humanoid =
Client.Character:FindFirstChild("Humanoid");
local RaycastResult = Workspace:Raycast(Foot.CFrame.p,
Root.CFrame.lookVector * 2.5, RayParams);
Visuals.Flybar.Visible = true;
local LerpedColor = Color3.fromRGB(230, 20,
20):lerp(Color3.fromRGB(20, 230, 20), 1 - TimeTillViolation / 6);
Visuals.FlyInvert.BackgroundColor3 = LerpedColor;
Visuals.FlyInvert.Size = UDim2.new(0, -
(Visuals.Flybar.AbsoluteSize.X * (1 - TimeTillViolation / 6)), 1, 0);
Visuals.Flybar.AnchorPoint = Vector2.new(0.5, 0)
Visuals.Flybar.Position = UDim2.new(0.5, 0, 0.5,
270);
local ClimbSpeed =
Library.Flags.SpidermanSpeed.Value
Root.Velocity = Vector3.new(Root.Velocity.X,
ClimbSpeed, Root.Velocity.Z);
if Humanoid:GetState() ~=
Enum.HumanoidStateType.Climbing then
Humanoid:ChangeState(Enum.HumanoidStateType.Climbing)
end;
else
GameFramework.FlyViolationStart = nil;
Visuals.Flybar.Visible = false;
end;
end)
else
GameFramework.FlyViolationStart = nil;
Visuals.Flybar.Visible = false;
end;
if Library.Flags.Manipulation and
Library.Flags.Manipulation.Value and Library.Flags.VisualizeManipulation and
Library.Flags.VisualizeManipulation.Value then
pcall(function()
local Root = Client.Character.Head
if VisiblePosition and
GameFramework.ManipulatedIndex then
local Likeliness = 15 -
GameFramework.ManipulatedIndex
Visuals.ManipulationBar.Visible = true;
local LerpedColor = Color3.fromRGB(20, 230,
20):lerp(Color3.fromRGB(230, 20, 20), 1 - Likeliness / 6);
Visuals.ManipulationInvert.BackgroundColor3 =
LerpedColor;
Visuals.ManipulationInvert.Size = UDim2.new(0,
-(Visuals.ManipulationBar.AbsoluteSize.X * (1 - Likeliness / 6)), 1, 0);
Visuals.ManipulationBar.AnchorPoint =
Vector2.new(0.5, 0)
Visuals.ManipulationBar.Position =
UDim2.new(0.5, 0, 0.5, 340);
end;
else
Visuals.ManipulationBar.Visible = false;
end;
end)
else
Visuals.ManipulationBar.Visible = false;
end;
end;
end);
Loops.DesyncRS = RunService:BindToRenderStep("Desync",
Enum.RenderPriority.First.Value, function()
if Client.Character then
local Character = Client.Character;
local Root = Character:FindFirstChild("HumanoidRootPart")
if Root then
Root.CFrame = Fake.Real.CFrame
end;
end;
end);
end;
end)()
end;
do --// Connections
LPH_NO_VIRTUALIZE(function() --// Macro
do --// Camera
Connections.Camera_ChildAdded =
Camera.ChildAdded:Connect(function(Model)
if GameName == "Project Delta" then
Model:WaitForChild("Humanoid");
Utility:UpdateViewmodel(Model);
end;
task.wait(0.1);
if Model:IsA("Model") and GameName ~= "Project Delta" then
Utility:UpdateViewmodel(Model);
end;
do --// Criminality
if GameName == "Criminality" then
if Model.Name == "BlindEffect" and Library.Flags.NoFlash
and Library.Flags.NoFlash.Value then
Model.Enabled = false;
end;
end);
Connections.CameraFOV_Changed =
Camera:GetPropertyChangedSignal("FieldOfView"):Connect(function()
if Library.Flags.ZoomToggle and Library.Flags.ZoomToggle.Value and
Library.Flags.ZoomKey and Library.Flags.ZoomKey.Value then
Camera.FieldOfView = Library.Flags.ZoomLevel.Value;
return;
end;
end);
Connections.CameraCFChanged =
Camera:GetPropertyChangedSignal("CFrame"):Connect(function()
if GameFramework.FakePart then
do --// Client
Connections.Client_CharacterAdded =
Client.CharacterAdded:Connect(function()
GameFramework.CurrentData = nil;
task.wait(1);
if Bots then
for Index, Value in next, Bots:GetChildren() do
if Value ~= Client then
ESPConstructor:New(Value, false);
end;
end
end;
if Grenades then
for Index, Value in next, Grenades:GetChildren() do
ESPConstructor:NewGrenade({
Name = "F1 Grenade";
Model = Value;
Root = Value;
});
end;
end;
if Mines then
for Index, Value in next, Mines:GetChildren() do
ESPConstructor:NewMine({
Name = "Landmine",
Model = Value;
Root = Value;
});
end;
end;
if Claymores then
for Index, Value in next, Claymores:GetChildren() do
ESPConstructor:NewClaymore({
Name = "Claymore",
Model = Value;
Root = Value;
});
end;
end;
if BulletModel then
BulletModel.ChildAdded:Connect(function(Bullet)
if Camera:FindFirstChildOfClass("Model") then
local GunModel =
Camera:FindFirstChildOfClass("Model"):FindFirstChildOfClass("Model");
if GunModel then
local AimPart = GunModel:FindFirstChild("AimPart");
local Silencer =
GunModel:FindFirstChild("Silenciador");
do --// Grenades
if GameName == "Project Delta" then
--[[
Fuse Timers:
F1 = 3
M84 = 1.2
RGD5 = 3;
RGO = IMPACT
]]
local Effects = Workspace.NoCollision:FindFirstChild("Effects");
if Effects then
Effects.ChildAdded:Connect(function(Grenade)
task.wait(0.3);
local Name = Grenade.Name;
if Name == "RGD5" or Name == "F1" or Name == "M84" or Name
== "RGO" or Name == "PG4" then
Effects.ChildRemoved:Connect(function(Grenade)
if Visuals.Items[Grenade] then
for Index, Value in next,
Visuals.Items[Grenade].Components do
Value:Destroy();
end;
Visuals.Items[Grenade] = nil;
end;
end);
end;
end;
if Name then
if GameFramework.CrimTextures[Base.TextureID] then
Name = GameFramework.CrimTextures[Base.TextureID];
end;
Effects.ChildRemoved:Connect(function(Grenade)
if Visuals.Items[Grenade] then
for Index, Value in next,
Visuals.Items[Grenade].Components do
Value:Destroy();
end;
Visuals.Items[Grenade] = nil;
end;
end);
end;
end;
end;
do --// Players
do --// Main
if GameName ~= "Gunfight Arena" then
for Index, Value in next, Players:GetPlayers() do
if Value ~= Client and Value:IsA("Player") then
ESPConstructor:New(Value, false);
end;
end;
Connections.Players_PlayerAdded =
Players.PlayerAdded:Connect(function(Value)
if Value ~= Client and Value:IsA("Player") then
ESPConstructor:New(Value, false);
end;
-- Library:UpdateFriendliesDropdown();
end);
Connections.Players_PlayerRemoving =
Players.PlayerRemoving:Connect(function(Value)
Visuals.Enemies[Value]:Remove();
end);
elseif GameName == "Gunfight Arena" then
for Index, Value in next, Players:GetChildren() do
if Value ~= Client then
ESPConstructor:New(Value, false);
end;
end;
Connections.Players_PlayerAdded =
Players.ChildAdded:Connect(function(Value)
if Value ~= Client then
ESPConstructor:New(Value, false);
end;
end);
Connections.Players_PlayerRemoving =
Players.ChildRemoved:Connect(function(Value)
Visuals.Enemies[Value]:Remove();
end);
end;
end;
do --// Frontlines
if GameName == "Frontlines" then
Workspace.ChildAdded:Connect(function(Value)
if Value:IsA("Model") and Value.Name == "soldier_model"
then
ESPConstructor:New(Value)
end
end);
Workspace.ChildRemoved:Connect(function(Value)
if Visuals.Enemies[Value] then
Visuals.Enemies[Value]:Remove();
end
end);
end
end
end;
do --// Blackout
if GameName == "Blackout" then
local NPCS = Workspace:FindFirstChild("NPCs");
local WaveNPCs = Workspace.WaveSurvival.NPCs;
local Arena = Workspace.Arena;
local ActiveTasks = Workspace.ActiveTasks;
return Name;
end;
GetPosition = function(Object)
if Object.PrimaryPart then
return Object.PrimaryPart.CFrame.p;
end;
end;
});
end;
local Distance =
math.floor((Object:FindFirstChild("Base").CFrame.p - Camera.CFrame.p).Magnitude);
Name = Name .. " | " .. Percentage.Text.. "
remaining\nDistance: "..tostring(Distance).. "s";
end;
return Name;
end;
GetPosition = function(Object)
if Object:FindFirstChild("Base") then
return Object:FindFirstChild("Base").CFrame.p;
end;
end;
CustomChecks2 = function(Object)
if Object.Name == "AmmoBox" then
return true
end;
return false
end;
});
end;
do --// NPCs
do --// Basic hostile NPC
for Index, Value in next, NPCS.Hostile:GetChildren() do
ESPConstructor:New(Value);
end;
NPCS.Hostile.ChildAdded:Connect(function(Value)
ESPConstructor:New(Value);
end);
NPCS.Hostile.ChildRemoved:Connect(function(Value)
Visuals.Enemies[Value]:Remove();
end);
end;
WaveNPCs.ChildAdded:Connect(function(Value)
ESPConstructor:New(Value);
end);
WaveNPCs.ChildRemoved:Connect(function(Value)
Visuals.Enemies[Value]:Remove();
end);
end;
Arena.ChildAdded:Connect(function(Value)
task.wait(0.5)
if Value:IsA("Model") and
Value:FindFirstChild("CurrentGear") then
ESPConstructor:New(Value);
end;
end);
Arena.ChildRemoved:Connect(function(Value)
if Visuals.Enemies[Value] then
Visuals.Enemies[Value]:Remove();
end;
end);
end;
Value.ChildAdded:Connect(function(Value)
task.wait(0.5);
if Value:IsA("Model") and
Value:FindFirstChild("CurrentGear") then
ESPConstructor:New(Value);
end;
end);
Value.ChildRemoved:Connect(function(Value)
if Visuals.Enemies[Value] then
Visuals.Enemies[Value]:Remove();
end;
end);
end;
ActiveTasks.ChildAdded:Connect(function(Value)
for Index, Value in next, Value:GetChildren() do
if Value:IsA("Model") and
Value:FindFirstChild("CurrentGear") then
ESPConstructor:New(Value);
end;
end;
Value.ChildAdded:Connect(function(Value)
task.wait(0.5);
if Value:IsA("Model") and
Value:FindFirstChild("CurrentGear") then
ESPConstructor:New(Value);
end;
end);
Value.ChildRemoved:Connect(function(Value)
if Visuals.Enemies[Value] then
Visuals.Enemies[Value]:Remove();
end;
end);
end);
end;
end;
do --// Airdrops
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.Debris.Airdrop,
Flag = "Airdrops",
CustomName = function(Object)
local Name = Object.Name;
local Distance = Object.PrimaryPart and
math.floor((Object.PrimaryPart.CFrame.p - Camera.CFrame.p).Magnitude);
Name = Name .. " | Distance: "..tostring(Distance)..
"s";
return Name;
end;
GetPosition = function(Object)
if Object and Object.PrimaryPart then
return Object.PrimaryPart.CFrame.p;
end;
end;
});
end;
do --// Terminals
ESPConstructor:NewListener({
Type = "MeshPart",
Parent = Workspace.Terminals,
Flag = "Terminals",
CustomName = function(Object)
local Name = Object.Name;
local Distance = math.floor((Object.CFrame.p -
Camera.CFrame.p).Magnitude);
Name = Name .. " | Distance: "..tostring(Distance)..
"s";
return Name;
end;
GetPosition = function(Object)
if Object then
return Object.CFrame.p;
end;
end;
});
end;
do --// Corpses
ESPConstructor:NewListener({
Type = "MeshPart",
Parent = Workspace.Debris.Loot,
Flag = "Bodybags",
CustomName = function(Object)
local ObjectName = Object:FindFirstChild("LootTable")
and Object:FindFirstChild("LootTable"):GetAttribute("LootName") or "";
if Object.Position then
local Money, Valuables = 0, 0;
if Object:FindFirstChild("LootTable") then
Money =
Object:FindFirstChild("LootTable"):GetAttribute("Cash");
Valuables =
Object:FindFirstChild("LootTable"):GetAttribute("Valuables");
end;
local Distance = math.floor((Object.Position -
Camera.CFrame.p).Magnitude);
if Object.Name == "DeathBag" then
Name = ObjectName.."'s ".. "Body bag" .." |
Distance: "..tostring(Distance).. "s\n".."Money: "..tostring(Money) .. " Valuables:
"..tostring(Valuables);
else
Name = ObjectName.." | Distance:
"..tostring(Distance).. "s\n".."Money: "..tostring(Money) .. " Valuables:
"..tostring(Valuables);
end;
end;
return Name;
end;
GetPosition = function(Object)
return Object.Position;
end;
});
end;
end;
end;
do --// Aftermath
if GameName == "Aftermath" and Workspace:FindFirstChild("game_assets")
and Workspace.game_assets:FindFirstChild("item_spawns") then
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.game_assets.item_spawns,
Flag = "Items",
CustomName = function(Object)
if Object.PrimaryPart then
local Name = Object.Name
local Distance =
math.floor((Object.PrimaryPart.Position - Camera.CFrame.p).Magnitude);
GetPosition = function(Object)
if Object.PrimaryPart then
return Object.PrimaryPart.Position;
end
end;
});
end
end
do --// SOA
if GameName == "State Of Anarchy" then
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.Interactable.Containers,
Flag = "Corpse",
CustomName = function(Object)
local Name = Object.Name
local Distance = math.floor((Object.PrimaryPart.Position -
Camera.CFrame.p).Magnitude);
GetPosition = function(Object)
return Object.PrimaryPart.Position;
end;
CustomChecks2 = function(Object)
task.wait(1);
if Object.Name:find("Corpse") then
return true;
end;
return false
end;
});
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.Interactable.PickUps,
Flag = "Items",
CustomName = function(Object)
local Name = Object.Name
local Root = Object:FindFirstChildOfClass("MeshPart") or
Object.PrimaryPart or Object:FindFirstChildOfClass("Part")
if Root then
local Distance = math.floor((Root.Position -
Camera.CFrame.p).Magnitude);
GetPosition = function(Object)
local Root = Object:FindFirstChildOfClass("MeshPart") or
Object.PrimaryPart or Object:FindFirstChildOfClass("Part")
if Root then
return Root.Position
end;
end;
});
end
end
do --// la skeets
if GameName == "The Streets" then
local Items = Workspace:FindFirstChild("Item Shops")
do --// Objects
ESPConstructor:NewListener({
Parent = Items,
Name = {"Uzi | $150", "Glock | $400", "Glock | $200",
"Sawed Off | $150", "Sawed Off | $300"},
Flag = "GunShops",
CustomName = function(Object)
local Name = Object.Name;
local Root = Object:FindFirstChild("Head");
if Root then
local Distance = math.floor((Root.CFrame.p -
Camera.CFrame.p).Magnitude);
Name = Name .. " | Distance:
"..tostring(Distance).. "s";
end;
return Name;
end;
GetPosition = function(Object)
local Root = Object:FindFirstChild("Head");
if Root then
return Root.CFrame.p;
end;
return Object.WorldPivot.p;
end;
})
end;
ProxPromptService.PromptButtonHoldBegan:Connect(function(Prompt, Player)
if Player == Client and Library.Flags.InstantInteract and
Library.Flags.InstantInteract.Value then
fireproximityprompt(Prompt)
end;
end);
end;
end;
end;
return Name;
end;
GetPosition = function(Object)
local Root = Object.PrimaryPart or
Object:FindFirstChildOfClass("MeshPart");
if Root then
return Root.CFrame.p;
end;
end;
CustomChecks = function(Object)
if not Object:FindFirstChild("Clothing") then
if Library.Flags.FilterItems and
Library.Flags.FilterItems.Value and table.find(Library.Flags.FilteredItems.Value,
Object.Name) then
return true;
elseif Library.Flags.FilterItems and not
Library.Flags.FilterItems.Value then
return true
end;
end;
return false
end;
CustomChecks2 = function(Object)
task.wait(1);
if Object:FindFirstChild("Clothing") then
return false;
end;
return true
end;
});
end;
end;
end;
Path.ChildAdded:Connect(function(Value)
if Value.Name == "WorldModel" then
ESPConstructor:New(Value);
end
end);
Path.ChildRemoved:Connect(function(Value)
Visuals.Enemies[Value]:Remove();
end);
end
Value.ChildRemoved:Connect(function(Value)
if Visuals.Enemies then
Visuals.Enemies[Value]:Remove();
end;
end);
end;
end;
end;
do --// Landmines
Connections.LandMineAdded =
Workspace.AiZones.OutpostLandmines.ChildAdded:Connect(function(v)
if Library.Flags.RemoveOutpostMines and
Library.Flags.RemoveOutpostMines.Value then
v:Destroy();
end;
end)
end;
if Library.Flags.FilterCorpses and
Library.Flags.FilterCorpses.Value then
local Clothing =
Object:FindFirstChild("Clothing");
local Hotbar =
Object:FindFirstChild("Hotbar");
local Hotbarlist = Hotbar and
Hotbar:GetChildren()
local ClothingList = Clothing
and Clothing:GetChildren();
if ClothingList and
#ClothingList > 0 then
for Index, Cloth in next,
ClothingList do
if
table.find(Library.Flags.FilteredItems.Value, Cloth.Name) then
Name =
Name..Cloth.Name.."\n"
end;
return Name;
end;
GetPosition = function(Object)
if Object.PrimaryPart then
return Object.PrimaryPart.CFrame.p;
end;
end;
CustomChecks = function(Object)
if Object:FindFirstChild("Clothing")
and Object.PrimaryPart then
return true;
end;
return false
end;
CustomChecks2 = function(Object)
task.wait(1);
if Object:FindFirstChild("Clothing")
then
return true;
end;
return false
end;
});
end;
do --// Extracts
ESPConstructor:NewListener({
Type = "Part";
Parent =
Workspace.NoCollision.ExitLocations,
Flag = "Extracts",
CustomName = function(Object)
local Name = "Extract";
local Distance =
math.floor((Object.CFrame.p - Camera.CFrame.p).Magnitude / 3);
return Name;
end;
GetPosition = function(Object)
return Object.CFrame.p;
end;
});
end;
do --// Vehicles
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.Vehicles,
Flag = "Vehicles",
CustomName = function(Object)
local Name = "[Vehicle] UAZ";
if Object.PrimaryPart then
local Distance =
math.floor((Object.PrimaryPart.CFrame.p - Camera.CFrame.p).Magnitude / 3);
Name = Name.." | Distance:
"..tostring(Distance).. "m"
end;
return Name;
end;
GetPosition = function(Object)
if Object.PrimaryPart then
return Object.PrimaryPart.CFrame.p;
end;
end;
CustomChecks = function(Object)
if Object.PrimaryPart then return true;
end;
end;
});
end;
end;
end;
end;
do --// Foliage
if Workspace:FindFirstChild("SpawnerZones") then
for Index, Value in next,
Workspace.SpawnerZones.Foliage:GetDescendants() do
Visuals:CheckFoliage(Value);
end;
Workspace.SpawnerZones.Foliage.DescendantAdded:Connect(function(Value)
task.wait(0.1);
Visuals:CheckFoliage(Value);
end);
end;
end;
do --// Quests
do --// Quest Items
local QuestItems = Workspace.QuestItems;
ESPConstructor:NewListener({
Type = "Model";
Parent = QuestItems,
Flag = "QuestItems",
CustomName = function(Object)
local Name = "Quest Item - "..Object.Name;
local Root = Object.PrimaryPart;
if Root then
local Distance = math.floor((Root.CFrame.p
- Camera.CFrame.p).Magnitude / 3);
return Name;
end;
GetPosition = function(Object)
local Root = Object.PrimaryPart;
return Root and Root.CFrame.p or
Object.WorldPivot.p;
end;
CustomChecks = function(Object)
if Object.Name and
Library.Flags.AllowedQuestItems and
table.find(Library.Flags.AllowedQuestItems.Value, Object.Name) then
return true;
end;
return false;
end;
});
end;
local QuestModule-- =
require(ReplicatedStorage.Modules.Quests);
for Index, Value in next, getgc(true) do
if type(Value) == "table" and rawget(Value,
"Quests") and type(rawget(Value, "Quests")) == "table" and rawget(Value,
"QuestsSorted") then
QuestModule = Value
end
end
do
local QuestInfo =
GetPositions(tostring(Index), Objectives);
Part.Name = QuestInfo.Name;
Part.Position = Value;
Part.CanCollide = false;
Part.Anchored = true;
Part.Transparency = 1
Part.Size = Vector3.new(0.5, 0.5,
0.5);
Part:SetAttribute(tostring(Index),
true);
end;
end;
end;
end;
end;
ESPConstructor:NewListener({
Type = "Part";
Parent = CustomQuestFolder,
Flag = "Quests",
CustomName = function(Object)
local Name = "Quest Location - "..Object.Name;
local Root = Object;
if Root then
local Distance = math.floor((Root.CFrame.p
- Camera.CFrame.p).Magnitude / 3);
return Name;
end;
GetPosition = function(Object)
local Root = Object;
return Root and Root.CFrame.p;
end;
CustomChecks = function(Object)
if Object.Name and Library.Flags.AllowedQuests
and table.find(Library.Flags.AllowedQuests.Value, Object.Name) then
return true;
end;
return false;
end;
});
end;
end;
end;
end;
end;
do --// Criminality
if GameName == "Criminality" and Workspace:FindFirstChild("Map") and
Workspace.Map:FindFirstChild("BredMakurz") and
Workspace.Filter:FindFirstChild("SpawnedPiles") then
do --// Proximity prompts
ProxPromptService.PromptButtonHoldBegan:Connect(function(Prompt, Player)
if Player == Client and Library.Flags.InstantInteract and
Library.Flags.InstantInteract.Value then
fireproximityprompt(Prompt)
end;
end);
end;
do --// ATMs
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.Map.ATMz,
Flag = "ATM",
CustomName = function(Object)
local Name = Object.Name;
local Root = Object:FindFirstChild("MainPart");
if Root then
local Distance = math.floor((Root.CFrame.p -
Camera.CFrame.p).Magnitude);
Name = Name .. " | Distance:
"..tostring(Distance).. "s";
end;
return Name;
end;
GetPosition = function(Object)
local Root = Object:FindFirstChild("MainPart");
if Root then
return Root.CFrame.p;
end;
return Object.WorldPivot.p;
end;
});
end
do --// Safes/Registers
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.Map.BredMakurz;
Flag = "Safe";
CustomName = function(Object)
local Name = Object.Name;
local Root = Object.PrimaryPart;
do
if Name:find("SmallSafe") then
Name = "Small safe";
elseif Name:find("MediumSafe") then
Name = "Medium safe";
elseif Name:find("Register") then
Name = "Register";
end;
if Values then
local DropA = Values:FindFirstChild("DropA");
if DropA then
Name = Name .."\
n"..tostring(DropA.MinValue).." - "..tostring(DropA.MaxValue).."$";
end;
end;
if Root then
local Distance = math.floor((Root.CFrame.p -
Camera.CFrame.p).Magnitude);
Name = Name .. " | Distance:
"..tostring(Distance).. "s";
end;
end;
return Name;
end;
CustomChecks = function(Object)
local Values = Object:FindFirstChild("Values");
local Broken = Values and
Values:FindFirstChild("Broken");
if Broken then
return not Broken.Value;
end;
return false;
end;
GetPosition = function(Object)
if Object.PrimaryPart then return
Object.PrimaryPart.Position end;
return Object.WorldPivot.p;
end;
});
end;
do --// Dealers
ESPConstructor:NewListener({
Type = "Model",
Parent = Workspace.Map.Shopz,
Flag = "Dealer",
TextUpdate = 0.9;
CustomName = function(Object)
local Name = Object.Name;
local Root = Object:FindFirstChild("MainPart");
if Root then
local Distance = math.floor((Root.CFrame.p -
Camera.CFrame.p).Magnitude);
if Library.Flags.ShowStocks and
Library.Flags.ShowStocks.Value then
local Stocks =
Object:FindFirstChild("CurrentStocks"):GetChildren();
local Restock = Object.RestockTime.Value;
GetPosition = function(Object)
local Root = Object:FindFirstChild("MainPart");
if Root then
return Root.CFrame.p;
end;
return Object.WorldPivot.p;
end;
});
end;
ESPConstructor:NewListener({
Type = "Model",
Parent = MysteryBoxes,
Flag = "Mystery",
CustomName = function(Object)
local Name = Object.Name;
local Root = Object:FindFirstChild("Hitbox");
if Root then
local Distance = math.floor((Root.CFrame.p -
Camera.CFrame.p).Magnitude);
Name = Name .. " | Distance:
"..tostring(Distance).. "s";
end;
return Name;
end;
GetPosition = function(Object)
local Root = Object:FindFirstChild("Hitbox");
if Root then
return Root.CFrame.p;
end;
return Object.WorldPivot.p;
end;
});
end;
if Root then
if Particle and
GameFramework.CrimColors[tostring(Particle.Color.Keypoints[1])] then
Rarity =
GameFramework.CrimColors[tostring(Particle.Color.Keypoints[1])];
end;
GetPosition = function(Object)
local Root = Object:FindFirstChild("MeshPart");
if Root then
return Root.CFrame.p;
end;
return Object.WorldPivot.p;
end;
CustomChecks = function(Object)
local Name = Object.Name;
local Root = Object:FindFirstChild("MeshPart");
local Particle = Root and
Root:FindFirstChild("Particle");
local Rarity = "Gray";
if Root then
if Particle and
GameFramework.CrimColors[tostring(Particle.Color.Keypoints[1])] then
Rarity =
GameFramework.CrimColors[tostring(Particle.Color.Keypoints[1])];
end;
if table.find(Library.Flags.Rarities.Value, Rarity)
then
return true;
end;
end;
return false;
end;
});
end;
do --// Controllers
local Debris = workspace.Debris
local VParts = Debris.VParts
local Forward = 0
local Sideways = 0
local RocketSpeed = 300
local Break = false
VParts.ChildAdded:Connect(function(Projectile)
task.wait()
Camera.CameraSubject = Projectile
Client.Character.HumanoidRootPart.Anchored = true
pcall(function()
if Projectile.Name == "RPG_Rocket" then
Projectile.BodyForce:Destroy()
Projectile.RotPart.BodyAngularVelocity:Destroy()
Projectile.Sound:Destroy();
elseif Projectile.Name == "GrenadeLauncherGrenade"
then
Projectile.BodyForce:Destroy()
Projectile.BodyAngularVelocity:Destroy()
Projectile.Sound:Destroy();
end;
end)
task.spawn(function()
while true do
RunService.RenderStepped:Wait()
TweenService:Create(BV, TweenInfo.new(0.2),
{Velocity = ((Camera.CFrame.LookVector * Forward) + (Camera.CFrame.RightVector *
Sideways)) * RocketSpeed}):Play()
BG.CFrame = Camera.CoordinateFrame
Camera.CFrame = Projectile.CFrame *
CFrame.new(Vector3.new(0, 1, 1));
if Break then
Break = false
break;
end;
end;
Camera.CameraSubject = Client.Character.Humanoid;
Client.Character.HumanoidRootPart.Anchored = false;
InputEndedConnection = nil;
InputBeganConnection = nil;
end);
end;
UserInputService.InputBegan:Connect(function(Key)
if Key.KeyCode == Enum.KeyCode.W then
Forward = 1
elseif Key.KeyCode == Enum.KeyCode.S then
Forward = -1
elseif Key.KeyCode == Enum.KeyCode.D then
Sideways = 1
elseif Key.KeyCode == Enum.KeyCode.A then
Sideways = -1
end
end);
UserInputService.InputEnded:Connect(function(Key)
if Key.KeyCode == Enum.KeyCode.W or Key.KeyCode ==
Enum.KeyCode.S then
Forward = 0
elseif Key.KeyCode == Enum.KeyCode.D or Key.KeyCode ==
Enum.KeyCode.A then
Sideways = 0
end
end);
end);
Debris.ChildAdded:Connect(function(Result)
task.wait()
pcall(function()
if Client.Character:FindFirstChild("RPG-7") and
(Result.Name == "RPG_Explosion_Long" or Result.Name == "RPG_Explosion_Short") then
Break = true;
task.wait(1);
Break = false;
end;
if (Client.Character:FindFirstChild("M320-1") or
Client.Character:FindFirstChild("SCAR-H-X")) and (Result.Name ==
"GL_Explosion_Long" or Result.Name == "GL_Explosion_Short") then
Break = true;
task.wait(1);
Break = false;
end;
end);
end);
end;
end;
ProxPromptService.PromptButtonHoldBegan:Connect(function(Prompt, Player)
if Player == Client and Library.Flags.InstantInteract and
Library.Flags.InstantInteract.Value then
fireproximityprompt(Prompt)
end;
if Library.Flags.InstantLootCash and
Library.Flags.InstantLootCash.Value then
if Library.Flags.InstantInteract.Value then
if Prompt.Name == "OpenLootTable" and
Prompt.Parent:FindFirstChild("LootTable") then
ReplicatedStorage.Events.Loot.LootObject:FireServer(Prompt.Parent:FindFirstChild("L
ootTable"), "Cash")
end;
else
task.wait(0.3);
if Prompt.Name == "OpenLootTable" and
Prompt.Parent:FindFirstChild("LootTable") then
ReplicatedStorage.Events.Loot.LootObject:FireServer(Prompt.Parent:FindFirstChild("L
ootTable"), "Cash")
end;
end;
end;
if Library.Flags.InstantLootValuables and
Library.Flags.InstantLootValuables.Value then
if Library.Flags.InstantInteract.Value then
if Prompt.Name == "OpenLootTable" and
Prompt.Parent:FindFirstChild("LootTable") then
ReplicatedStorage.Events.Loot.LootObject:FireServer(Prompt.Parent:FindFirstChild("L
ootTable"), "Valuables")
end;
else
task.wait(0.3);
if Prompt.Name == "OpenLootTable" and
Prompt.Parent:FindFirstChild("LootTable") then
ReplicatedStorage.Events.Loot.LootObject:FireServer(Prompt.Parent:FindFirstChild("L
ootTable"), "Valuables")
end;
end;
end;
ReplicatedStorage.Events.Loot.MinigameResult:FireServer(Prompt.Parent.Parent, true)
end;
end;
if Library.Flags.InstantLootCards and
Library.Flags.InstantLootCards.Value then
if Prompt.Parent and
Prompt.Parent:FindFirstChild("LootTable") then
local Children =
Prompt.Parent.LootTable:GetChildren();
ReplicatedStorage.Events.Loot.LootObject:FireServer(Prompt.Parent:FindFirstChild("L
ootTable"), Value, true)
task.wait(0.2);
end;
end;
end;
end;
end);
end;
end;
end;
do --// Lone
if GameName == "Lone Survival" then
do --// Ai
for Index, Value in next, Workspace.AI:GetChildren() do
ESPConstructor:New(Value);
end;
Workspace.AI.ChildAdded:Connect(function(Value)
ESPConstructor:New(Value);
end);
Workspace.AI.ChildRemoved:Connect(function(Value)
Visuals.Enemies[Value]:Remove();
end);
end;
do --// Objects
ESPConstructor:NewListener({
Parent = Workspace.DroppedPacks,
Type = "Model",
Flag = "Corpses",
CustomName = function(Object)
local Name = Object.Name;
local Root = Object.PrimaryPart
GetPosition = function(Object)
local Root = Object.PrimaryPart;
if Root then
return Root.CFrame.p;
end;
return Object.WorldPivot.p;
end;
})
ESPConstructor:NewListener({
Parent = Workspace.OfflinePlayers,
Type = "Model",
Flag = "Sleepers",
CustomName = function(Object)
local Name = Object.Name;
local Root = Object.PrimaryPart
GetPosition = function(Object)
local Root = Object.PrimaryPart;
if Root then
return Root.CFrame.p;
end;
return Object.WorldPivot.p;
end;
})
end;
end;
end;
do --// Korrupt
if GameName == "Korrupt Zombies" then
do --// Ai
for Index, Value in next, Workspace.Zombies:GetChildren() do
ESPConstructor:New(Value);
end;
Workspace.Zombies.ChildAdded:Connect(function(Value)
ESPConstructor:New(Value);
end);
Workspace.Zombies.ChildRemoved:Connect(function(Value)
Visuals.Enemies[Value]:Remove();
end);
end;
end;
end
end)();
end;
do --// UI setup
if GameName == "Project Delta" then
local Window = Library:NewWindow({TabAmount = 6, Name = "DogeHub", Size =
UDim2.new(0, 583, 0, 800)}); do
do --// Tabs
do --// Combat tab
local CombatTab = Window:NewTab({Name = "Combat", IncludeNested
= true});
return
Combat.ManipulatedPosition
end;
if not checkcaller() and
tostring(self):lower() == "barrel" and Property == "CFrame" and
Combat.ManipulatedPosition and Library.Flags.Manipulation.Value and
Combat.TargetPart and Library.Flags.AimMode.Value == "Silent Aim" then
return
CFrame.new(Combat.ManipulatedPosition, Combat.ManipulatedDirection);
end;
AimbotSection:Slider({Name = "Manipulation
range", Flag = "ManipulationDistance", Min = 1, Max = 15});
AimbotSection:Slider({Flag = "MaxDistance",
Name = "Max distance", Suffix = "m", Min = 0, Max = 1200, Default = 500});
AimbotSection:Multidropdown({Max = 3,Flag =
"TargettedBones", Name = "Targets", Options = {"Head", "Thorax", "Legs"}, Default =
{"Head"}});
AimbotSection:Dropdown({Max = 2, Name = "Mode",
Flag = "AimMode", Options = {"Aimbot", "Silent Aim"}});
AimbotSection:Slider({Name = "Curving X", Flag
= "CurveX", Min = 0, Max = 2, AllowDecimals = 10});
AimbotSection:Slider({Name = "Curving Y", Flag
= "CurveY", Min = 0, Max = 2, AllowDecimals = 10});
AimbotSection:Slider({Name = "Humanization
Scale", Flag = "HumanizationScale", Min = 0, Max = 2, AllowDecimals = 10});
AimbotSection:Slider({Name = "Minimum health",
Flag = "MinimumHealth", Min = 0, Max = 100, Default = 0});
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
end;
end;
VisualsSection:Toggle({Name = "Visualize
manipulation", Flag = "VisualizeManipulation"})
VisualsSection:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
VisualsSection:Slider({Default = 2, Name =
"Rotation speed", Min = 0, Max = 50, Flag = "RotationSpeed"})
VisualsSection:Slider({Default = 2, Name =
"Transition duration", Min = 1, Max = 50, Flag = "TransitionDuration", Callback =
function()
OriginalTransitionDuration =
Library.Flags.TransitionDuration.Value;
end});
end;
CombatTab:SetTab("Main");
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
do --// Custom Object
local Quests = ESPTab:NewSection({Name = "Questing",
Side = "Right"}); do
local ItemOptions = {};
local QuestOptions = {};
if
Workspace.NoCollision:FindFirstChild("bismallah") then
if
#Workspace.NoCollision:FindFirstChild("bismallah"):GetChildren() == 0 then
QuestOptions = {"placeholder"}
else
for Index, Value in next,
Workspace.NoCollision:FindFirstChild("bismallah"):GetChildren() do
if not table.find(QuestOptions,
Value.Name) then
table.insert(QuestOptions,
Value.Name);
end;
end;
end;
else
QuestOptions = {"placeholder"}
end;
end;
do --// Hazards
local Hazards = ESPTab:NewSection({Name = "Hazards",
Side = "Left"}); do
local NadeToggle = Hazards:Toggle({Name =
"Grenades", Flag = "ESPGrenades"})
NadeToggle:Colorpicker({Name = "Grenade Lower",
Default = Color3.fromRGB(255, 0, 0), Flag = "GrenadeLower"});
NadeToggle:Colorpicker({Name = "Grenade Higher",
Default = Color3.fromRGB(0, 255, 0), Flag = "GrenadeHigher"});
end;
end;
do --// ESP OPTIONS
local Options = VisualsTab:Add({Name = "ESP Options"});
end;
end;
Library:AddFontSection(Options, "Left")
end;
end;
end;
end ;
do --// Sections
local TracersSec = LocalTab:NewSection({Name = "Bullet
tracers", Side = "Right"}); do
TracersSec:Toggle({Name = "Enabled", Flag =
"Tracers"}):Colorpicker({Name = "Tracer color", Flag = "TracerColor", Default =
Color3.fromRGB(255, 255, 255)})
TracersSec:Slider({Name = "Lifetime", Flag =
"LifeTime", Max = 5, Min = 1, Default = 3, Suffix = "s"});
end;
ReplicatedStorage.Players[Client.Name].Settings.GameplaySettings:SetAttribute("Defa
ultFOV", Library.Flags.FOVLevel.Value);
end;
end});
CameraSec:Slider({Default =
ReplicatedStorage.Players[Client.Name].Settings.GameplaySettings:GetAttribute("Defa
ultFOV") , Name = "FOV", Flag = "FOVLevel", Min = 0, Max = 120, Suffix = "°",
Callback = function()
ReplicatedStorage.Players[Client.Name].Settings.GameplaySettings:SetAttribute("Defa
ultFOV", Library.Flags.FOVLevel.Value);
end})
end;
local TextureOptions = {}
for Index, Value in next, Textures do
table.insert(TextureOptions, Index);
end;
VisualsTab:SetTab("ESP");
end;
ReplicatedStorage.Remotes.DropItem:FireServer(Value.Value)
end;
end;
end;
end);
end});
wait(0.5);
Client.Character.Humanoid.Sit = false;
wait(0.5);
--Client.Character.Humanoid.Sit = true;
wait(0.5);
ReplicatedStorage.Remotes.VehicleInteractions:FireServer({
["Vehicle"] = Seat.Parent.Parent,
["Action"] = "Enter",
["Door"] =
Seat.Parent.Parent.Body.FLdoor.FL_Door
});
wait(0.5);
--Client.Character.Humanoid.Sit = false;
Client.Character.HumanoidRootPart.CFrame =
Client.Character.HumanoidRootPart.CFrame + Vector3.new(0, 10, 0);
SeatFound = true;
Library:Notify("Successfully bypassed! Feel
free to put your speed really high or use a fly script.", 10)
break;
end;
end;
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Library.KillsoundDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Killsound", Flag = "KillSound", Options = HitmarkerOptions});
end;
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
end;
end;
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
end;
end;
end;
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "FOV circle", Flag =
"EnableFOV", Callback = function()
Visuals.FOVCircle.Visible =
Library.Flags.EnableFOV.Value;
end}):Colorpicker({Name = "FOV Color", Flag =
"FOVColor", Default = Library.Theme.Accent, DefaultTrans = 0, Callback = function()
Visuals.FOVCircle.UIStroke.Color =
ColorSequence.new(Library.Flags["FOVColor"].Color);
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// objects
local WorldESPSection = ESPTab:NewSection({Name =
"ESP", Side = "Left"}); do
WorldESPSection:Toggle({Name = "Dropped packs",
Flag = "ESPCorpses"}):Colorpicker({Name = "Dropped packs Color", Flag =
"CorpsesColor"})
WorldESPSection:Toggle({Name = "Sleepers", Flag =
"ESPSleepers"}):Colorpicker({Name = "Sleepers Color", Flag = "SleepersColor"})
WorldESPSection:Toggle({Name = "Fade transparency",
Flag = "FadeObjects"})
WorldESPSection:Slider({Name = "Max Distance", Flag
= "CustomDistance", Min = 0, Max = 1000, Suffix = "m"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "FOV circle", Flag =
"EnableFOV", Callback = function()
Visuals.FOVCircle.Visible =
Library.Flags.EnableFOV.Value;
end}):Colorpicker({Name = "FOV Color", Flag =
"FOVColor", Default = Library.Theme.Accent, DefaultTrans = 0, Callback = function()
Visuals.FOVCircle.UIStroke.Color =
ColorSequence.new(Library.Flags["FOVColor"].Color);
end});
end;
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "FOV circle", Flag =
"EnableFOV", Callback = function()
Visuals.FOVCircle.Visible =
Library.Flags.EnableFOV.Value;
end}):Colorpicker({Name = "FOV Color", Flag =
"FOVColor", Default = Library.Theme.Accent, DefaultTrans = 0, Callback = function()
Visuals.FOVCircle.UIStroke.Color =
ColorSequence.new(Library.Flags["FOVColor"].Color);
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// objects
local WorldESPSection = ESPTab:NewSection({Name =
"ESP", Side = "Left"}); do
WorldESPSection:Toggle({Name = "Items", Flag =
"ESPItems"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Name = "Item
Color", Flag = "ItemsColor"});
WorldESPSection:Toggle({Name = "Corpses", Flag =
"ESPCorpse"}):Colorpicker({Default = Color3.fromRGB(255, 255, 255), Name = "Corpses
Color", Flag = "CorpseColor"});
WorldESPSection:Toggle({Name = "Fade transparency",
Flag = "FadeObjects"})
WorldESPSection:Slider({Name = "Max Distance", Flag
= "CustomDistance", Min = 0, Max = 1000, Suffix = "m"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Window:SetTab("Combat");
end;
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// objects
local WorldESPSection = ESPTab:NewSection({Name =
"ESP", Side = "Left"}); do
WorldESPSection:Toggle({Name = "Guns", Flag =
"ESPGuns"}):Colorpicker({Name = "Gun Color", Flag = "GunsColor"})
WorldESPSection:Toggle({Name = "Fade transparency",
Flag = "FadeObjects"})
WorldESPSection:Slider({Name = "Max Distance", Flag
= "CustomDistance", Min = 0, Max = 1000, Suffix = "m"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
end;
if IsStudio then
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:SetTab("Combat");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "Crosshair", Flag =
"Crosshair"}):Colorpicker({Name = "Crosshair color", Flag = "CrosshairColor",
Callback = function()
Visuals.CrossAdornee.Color3 =
Library.Flags.CrosshairColor.Color;
end});
end;
end;
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
if IsStudio then
AimbotSection:Toggle({Name = "Studio AI
Testing", Flag = "IncludeAi"});
end;
end;
end;
end;
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
VisualsTab:SetTab("ESP");
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
local HitmarkerOptions = {};
local Total = 0;
for Index, Value in next, HitmarkerSounds do
Total = Total + 1;
HitmarkerOptions[Index] = Index;
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
Players:Toggle({Name = "Glow chams", Flag =
"GlowChams"})
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// Hazards
local Hazards = ESPTab:NewSection({Name = "Hazards",
Side = "Right"}); do
local NadeToggle = Hazards:Toggle({Name =
"Grenades", Flag = "ESPGrenades"})
NadeToggle:Colorpicker({Name = "Grenade Lower",
Default = Color3.fromRGB(255, 0, 0), Flag = "GrenadeLower"});
NadeToggle:Colorpicker({Name = "Grenade Higher",
Default = Color3.fromRGB(0, 255, 0), Flag = "GrenadeHigher"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
VisualsTab:SetTab("ESP");
end;
local NeckJoint =
Character.HumanoidRootPart.CTs.RGCT_Neck
Character.Torso.Neck:Destroy();
Character.Torso.NeckAttachment:Destroy();
NeckJoint.TwistLowerAngle = 0;
NeckJoint.TwistUpperAngle = 0;
NeckJoint.Restitution = 0;
NeckJoint.UpperAngle = 0;
NeckJoint.MaxFrictionTorque = 0;
Character.Head.HeadCollider:Destroy()
end})
end;
local RemovalsSection = MiscTab:NewSection({Name =
"Removals", Side = "Right"}); do
RemovalsSection:Toggle({Name = "Less inertia", Flag =
"LessInertia"});
RemovalsSection:Toggle({Name = "Ragdolling", Flag =
"AntiRagdoll"});
RemovalsSection:Toggle({Name = "Broken limbs", Flag =
"AntiBreak"})
RemovalsSection:Toggle({Name = "Fire damage", Flag =
"AntiFire"});
RemovalsSection:Toggle({Name = "Fall damage", Flag =
"AntiFall"});
RemovalsSection:Toggle({Name = "Drown damage", Flag =
"AntiDrown"});
RemovalsSection:Toggle({Name = "Barbed-wire damage",
Flag = "AntiWire"});
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
end;
end;
GameFramework:NoBobbing(GameFramework.CurrentMain);
end;
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// Hazards
local Hazards = ESPTab:NewSection({Name = "Hazards",
Side = "Left"}); do
local NadeToggle = Hazards:Toggle({Name =
"Grenades", Flag = "ESPGrenades"})
NadeToggle:Colorpicker({Name = "Grenade Lower",
Default = Color3.fromRGB(255, 0, 0), Flag = "GrenadeLower"});
NadeToggle:Colorpicker({Name = "Grenade Higher",
Default = Color3.fromRGB(0, 255, 0), Flag = "GrenadeHigher"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
do --// Sections
local TracersSec = LocalTab:NewSection({Name = "Bullet
tracers", Side = "Right"}); do
TracersSec:Toggle({Name = "Enabled", Flag =
"Tracers"}):Colorpicker({Name = "Tracer color", Flag = "TracerColor", Default =
Color3.fromRGB(255, 255, 255)})
TracersSec:Slider({Name = "Lifetime", Flag =
"LifeTime", Max = 5, Min = 1, Default = 3, Suffix = "s"});
TracersSec:Dropdown({Name = "Type", Flag =
"TracerMode", Default = "Beam", Options = {"Beam", "Line"}, Max = 2});
end;
VisualsTab:SetTab("ESP");
end;
do --// Hitmarkers
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
end;
end;
--ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
--ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// Hazards
local Hazards = ESPTab:NewSection({Name = "Hazards",
Side = "Left"}); do
local NadeToggle = Hazards:Toggle({Name =
"Grenades", Flag = "ESPGrenades"})
NadeToggle:Colorpicker({Name = "Grenade Lower",
Default = Color3.fromRGB(255, 0, 0), Flag = "GrenadeLower"});
NadeToggle:Colorpicker({Name = "Grenade Higher",
Default = Color3.fromRGB(0, 255, 0), Flag = "GrenadeHigher"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
do --// Sections
local TracersSec = LocalTab:NewSection({Name = "Bullet
tracers", Side = "Right"}); do
TracersSec:Toggle({Name = "Enabled", Flag =
"Tracers"}):Colorpicker({Name = "Tracer color", Flag = "TracerColor", Default =
Color3.fromRGB(255, 255, 255)})
TracersSec:Slider({Name = "Lifetime", Flag =
"LifeTime", Max = 5, Min = 1, Default = 3, Suffix = "s"});
TracersSec:Dropdown({Name = "Type", Flag =
"TracerMode", Default = "Beam", Options = {"Beam", "Line"}, Max = 2});
end;
VisualsTab:SetTab("ESP");
end;
do --// Hitmarkers
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
Library.HeadshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Headshot", Flag = "HeadshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Headshot");
end});
Library.BodyshotDropdown = Hitmarkers:Dropdown({Max =
Total, Name = "Bodyshot", Flag = "BodyshotSound", Options = HitmarkerOptions,
Callback = function()
Library:UpdateSounds("Bodyshot");
end});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// Hazards
local Hazards = ESPTab:NewSection({Name = "Hazards",
Side = "Left"}); do
local NadeToggle = Hazards:Toggle({Name =
"Grenades", Flag = "ESPGrenades"})
NadeToggle:Colorpicker({Name = "Grenade Lower",
Default = Color3.fromRGB(255, 0, 0), Flag = "GrenadeLower"});
NadeToggle:Colorpicker({Name = "Grenade Higher",
Default = Color3.fromRGB(0, 255, 0), Flag = "GrenadeHigher"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
do --// Sections
local TracersSec = LocalTab:NewSection({Name = "Bullet
tracers", Side = "Right"}); do
TracersSec:Toggle({Name = "Enabled", Flag =
"Tracers"}):Colorpicker({Name = "Tracer color", Flag = "TracerColor", Default =
Color3.fromRGB(255, 255, 255)})
TracersSec:Slider({Name = "Lifetime", Flag =
"LifeTime", Max = 5, Min = 1, Default = 3, Suffix = "s"});
TracersSec:Dropdown({Name = "Type", Flag =
"TracerMode", Default = "Beam", Options = {"Beam", "Line"}, Max = 2});
end;
VisualsTab:SetTab("ESP");
end;
do --// Hitmarkers
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
ReplicatedStorage.Shared.Assets.Sounds.HitmarkerSound.SoundId =
HitmarkerSounds[Library.Flags.HeadshotSound.Value]
ReplicatedStorage.Shared.Assets.Sounds.HitmarkerSound.Volume =
Library.Flags.HitmarkerVolume.Value
end
end});
ReplicatedStorage.Shared.Assets.Sounds.HitmarkerSound.Volume =
Library.Flags.HitmarkerVolume.Value
end})
end;
end;
end;
end;
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// Hazards
local Hazards = ESPTab:NewSection({Name = "Hazards",
Side = "Left"}); do
local NadeToggle = Hazards:Toggle({Name =
"Grenades", Flag = "ESPGrenades"})
NadeToggle:Colorpicker({Name = "Grenade Lower",
Default = Color3.fromRGB(255, 0, 0), Flag = "GrenadeLower"});
NadeToggle:Colorpicker({Name = "Grenade Higher",
Default = Color3.fromRGB(0, 255, 0), Flag = "GrenadeHigher"});
end;
end;
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
do --// Sections
local TracersSec = LocalTab:NewSection({Name = "Bullet
tracers", Side = "Right"}); do
TracersSec:Toggle({Name = "Enabled", Flag =
"Tracers"}):Colorpicker({Name = "Tracer color", Flag = "TracerColor", Default =
Color3.fromRGB(255, 255, 255)})
TracersSec:Slider({Name = "Lifetime", Flag =
"LifeTime", Max = 5, Min = 1, Default = 3, Suffix = "s"});
TracersSec:Dropdown({Name = "Type", Flag =
"TracerMode", Default = "Beam", Options = {"Beam", "Line"}, Max = 2});
end;
VisualsTab:SetTab("ESP");
end;
do --// Hitmarkers
local Hitmarkers = MiscTab:NewSection({Name = "Hitmarkers",
Side = "Right"}); do
Hitmarkers:Toggle({Name = "Enabled", Flag =
"CustomHitSounds"});
ReplicatedStorage.Shared.Assets.Sounds.HitmarkerSound.SoundId =
HitmarkerSounds[Library.Flags.HeadshotSound.Value]
ReplicatedStorage.Shared.Assets.Sounds.HitmarkerSound.Volume =
Library.Flags.HitmarkerVolume.Value
end
end});
ReplicatedStorage.Shared.Assets.Sounds.HitmarkerSound.Volume =
Library.Flags.HitmarkerVolume.Value
end})
end;
end;
end;
Window:Tooltip({
Parent = Library.Flags.SilentAim,
Text = "Silent Aim - Redirects bullets at
target | Aimbot - Locks camera on targets"
});
end;
end;
local Visuals = CombatTab:NewSection({Name = "Visuals",
Side = "Right"}); do
Visuals:Toggle({Name = "FOV circle", Flag =
"EnableFOV", Callback = function()
Visuals.FOVCircle.Visible =
Library.Flags.EnableFOV.Value;
end}):Colorpicker({Name = "FOV Color", Flag =
"FOVColor", Default = Library.Theme.Accent, DefaultTrans = 0, Callback = function()
Visuals.FOVCircle.UIStroke.Color =
ColorSequence.new(Library.Flags["FOVColor"].Color);
end,})
--Window:Tooltip({Parent = Library.Flags.FastReload,
Text = "Hold keybind down when toggled on to reload without animations, much faster
too."});
end;
--[[local Exclusions = CombatTab:NewSection({Name =
"Exclusions", Side = "Right"}); do
Exclusions:Multidropdown({Options = {Client.Name}, Name
= "Friendlies", Flag = "FriendliesDropdown", Callback = function()
Library:UpdateFriendliesDropdown();
end});
Library:UpdateFriendliesDropdown();
end;]]
end;
end;
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 0, 0), Flag = "VisibleColor", DefaultTrans = 0.5, Name =
"Visible Color"});
ChamsToggle:Colorpicker({Default =
Color3.fromRGB(255, 255, 255), Flag = "OccludedColor", DefaultTrans = 0, Name =
"Occluded Color"});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "FillColor", Name = "Fill Color", DefaultTrans =
0});
HighlightsToggle:Colorpicker({Default =
Color3.fromRGB(0, 0, 0), Flag = "OutlineColor", Name = "Outline Color",
DefaultTrans = 0});
do --// Hazards
if IsStudio then
local Hazards = ESPTab:NewSection({Name =
"Hazards", Side = "Left"}); do
local NadeToggle = Hazards:Toggle({Name =
"Grenades", Flag = "ESPGrenades"})
NadeToggle:Colorpicker({Name = "Grenade Lower",
Default = Color3.fromRGB(255, 0, 0), Flag = "GrenadeLower"});
NadeToggle:Colorpicker({Name = "Grenade
Higher", Default = Color3.fromRGB(0, 255, 0), Flag = "GrenadeHigher"});
end;
end;
end;
Library:AddFontSection(Options, "Left")
end;
end;
do --// Sections
local TracersSec = LocalTab:NewSection({Name = "Bullet
tracers", Side = "Right"}); do
TracersSec:Toggle({Name = "Enabled", Flag =
"Tracers"}):Colorpicker({Name = "Tracer color", Flag = "TracerColor", Default =
Color3.fromRGB(255, 255, 255)})
TracersSec:Slider({Name = "Lifetime", Flag =
"LifeTime", Max = 5, Min = 1, Default = 3, Suffix = "s"});
TracersSec:Dropdown({Name = "Type", Flag =
"TracerMode", Default = "Beam", Options = {"Beam", "Line"}, Max = 2});
end;
VisualsTab:SetTab("ESP");
end;
do --// Minigames
local Minigames = MiscTab:NewSection({Name = "Minigames",
Side = "Right"}); do
Minigames:Toggle({Name = "Prevent fails", Flag =
"InfiniteLockpick"})
Minigames:Toggle({Name = "Instant lockpick", Flag =
"InstantLockpick"})
Window:Tooltip({Parent = Library.Flags.InstantLockpick,
Text = "Enter a lockpickable crate, then exit to instantly pick it."})
end;
end;
do --// Interaction
local Interaction = MiscTab:NewSection({Name =
"Interaction"}); do
Interaction:Toggle({Name = "Instant interact", Flag =
"InstantInteract"});
Interaction:Toggle({Name = "Auto loot cash", Flag =
"InstantLootCash"});
Interaction:Toggle({Name = "Auto loot cards", Flag =
"InstantLootCards"});
Interaction:Toggle({Name = "Auto loot valuables", Flag
= "InstantLootValuables"});
end;
end;
do --// Teleports
--[[local Teleports = MiscTab:NewSection({Name =
"Teleports", Side = "Left"}); do
local Locations = GameFramework.Locations;
local List = Teleports:List({Name = "Location", Flag =
"Location", Options = {""}})
List:RemoveOption("")
Library:AddPreview("Visuals")
Library:ToggleMenu();
Library:ToggleMenu();
end;
do --// Init
GameFramework:RunCharacterFunctions();
end;
do --// Arrows
Library:Notify("Caching ESP arrow images...");
task.spawn(function()
local Arrow = Instance.new("ImageLabel",
Visuals.ESPContainer); do
Arrow.Image = "http://www.roblox.com/asset/?
id=282305485";
task.wait(3);
Arrow.Image = "http://www.roblox.com/asset/?
id=15000587389";
task.wait(3);
Arrow:Destroy();
HasFinishedArrows = true;
end;
do --// Summary
task.spawn(function()
repeat task.wait() until HasFinishedArrows and HasFinishedIcons
local Time = math.floor(tick() - CacheTick);
Library:Notify("Image cache has finished")
end);
end;
end;
end;
do --// Modules
if getgenv and getgenv() then
getgenv().Ethereal = UsableModules;
end;
end;
--// Finished!
end;