return function(X,G)local A=G(nil,{script=script})setfenv(1,A)local l,T,q,H,k,p,h,i,f,x,S,o,e,w,I,a,z,Q,F,O,N,j,b,E,c,u,W,r,C,U,y,R,v,B,J,D,d,t,K,s,P,Z,L,Y,V,n,g,m,M,XR,GR,AR,lR,TR,qR,HR,kR,pR,hR=_G,game,script,getfenv,setfenv,workspace,getmetatable,setmetatable,loadstring,coroutine,rawequal,typeof,print,math,warn,error,pcall,xpcall,select,rawset,rawget,ipairs,pairs,next,Rect,Axes,os,time,Faces,unpack,string,Color3,newproxy,tostring,tonumber,Instance,TweenInfo,BrickColor,NumberRange,ColorSequence,NumberSequence,ColorSequenceKeypoint,NumberSequenceKeypoint,PhysicalProperties,Region3int16,Vector3int16,require,table,type,wait,Enum,UDim,UDim2,Vector2,Vector3,Region3,CFrame,Ray,delay local iR=q local fR=X.Service local xR=X.Client local SR,oR,eR,wR,IR,aR,zR local function QR()aR=xR.UI SR=xR.Anti oR=xR.Core zR=xR.Variables eR=xR.Functions wR=xR.Process IR=xR.Remote zR.Init=nil end local function FR()xR.Variables.CodeName=xR.Remote.Get("\086\097\114\105\097\098\108\101","\067\111\100\101\078\097\109\101")zR.RunAfterLoaded=nil end local function OR()zR.RunLast=nil end;(H()).client=nil;(H()).service=nil;(H()).script=nil xR.GUIs={}xR.GUIHolder=fR.New("\070\111\108\100\101\114")xR.Variables={Init=QR;RunLast=OR,RunAfterLoaded=FR;CodeName="";UIKeepAlive=true,KeybindsEnabled=true,ParticlesEnabled=true;CapesEnabled=true;HideChatCommands=false;Particles={};KeyBinds={},Aliases={};Capes={};savedUI={},localSounds={},ESPObjects={};CommunicationsHistory={},LightingSettings={Ambient=fR.Lighting.Ambient,Brightness=fR.Lighting.Brightness;ColorShift_Bottom=fR.Lighting.ColorShift_Bottom,ColorShift_Top=fR.Lighting.ColorShift_Top;GlobalShadows=fR.Lighting.GlobalShadows,OutdoorAmbient=fR.Lighting.OutdoorAmbient;Outlines=fR.Lighting.Outlines;ShadowColor=fR.Lighting.ShadowColor;GeographicLatitude=fR.Lighting.GeographicLatitude,Name=fR.Lighting.Name;TimeOfDay=fR.Lighting.TimeOfDay,FogColor=fR.Lighting.FogColor;FogEnd=fR.Lighting.FogEnd,FogStart=fR.Lighting.FogStart},KeycodeNames=g(xR.Shared.KeycodeNames)}end

return function(Vargs, GetEnv)
	local env = GetEnv(nil, {script = script})
	setfenv(1, env)

	local _G, game, script, getfenv, setfenv, workspace,
		getmetatable, setmetatable, loadstring, coroutine,
		rawequal, typeof, print, math, warn, error,  pcall,
		xpcall, select, rawset, rawget, ipairs, pairs,
		next, Rect, Axes, os, time, Faces, unpack, string, Color3,
		newproxy, tostring, tonumber, Instance, TweenInfo, BrickColor,
		NumberRange, ColorSequence, NumberSequence, ColorSequenceKeypoint,
		NumberSequenceKeypoint, PhysicalProperties, Region3int16,
		Vector3int16, require, table, type, wait,
		Enum, UDim, UDim2, Vector2, Vector3, Region3, CFrame, Ray, delay =
		_G, game, script, getfenv, setfenv, workspace,
		getmetatable, setmetatable, loadstring, coroutine,
		rawequal, typeof, print, math, warn, error,  pcall,
		xpcall, select, rawset, rawget, ipairs, pairs,
		next, Rect, Axes, os, time, Faces, unpack, string, Color3,
		newproxy, tostring, tonumber, Instance, TweenInfo, BrickColor,
		NumberRange, ColorSequence, NumberSequence, ColorSequenceKeypoint,
		NumberSequenceKeypoint, PhysicalProperties, Region3int16,
		Vector3int16, require, table, type, wait,
		Enum, UDim, UDim2, Vector2, Vector3, Region3, CFrame, Ray, delay

	local script = script
	local service = Vargs.Service
	local client = Vargs.Client

	local Anti, Core, Functions, Process, Remote, UI, Variables
	local function Init()
		UI = client.UI;
		Anti = client.Anti;
		Core = client.Core;
		Variables = client.Variables
		Functions = client.Functions;
		Process = client.Process;
		Remote = client.Remote;

		Variables.Init = nil;
	end

	local function RunAfterLoaded()
		--// Get CodeName
		client.Variables.CodeName = client.Remote.Get("Variable", "CodeName")

		Variables.RunAfterLoaded = nil;
	end

	local function RunLast()
		--[[client = service.ReadOnly(client, {
				[client.Variables] = true;
				[client.Handlers] = true;
				G_API = true;
				G_Access = true;
				G_Access_Key = true;
				G_Access_Perms = true;
				Allowed_API_Calls = true;
				HelpButtonImage = true;
				Finish_Loading = true;
				RemoteEvent = true;
				ScriptCache = true;
				Returns = true;
				PendingReturns = true;
				EncodeCache = true;
				DecodeCache = true;
				Received = true;
				Sent = true;
				Service = true;
				Holder = true;
				GUIs = true;
				LastUpdate = true;
				RateLimits = true;

				Init = true;
				RunLast = true;
				RunAfterInit = true;
				RunAfterLoaded = true;
				RunAfterPlugins = true;
			}, true)--]]

			Variables.RunLast = nil;
	end

	getfenv().client = nil
	getfenv().service = nil
	getfenv().script = nil

	client.GUIs = {}
	client.GUIHolder = service.New("Folder")
	client.Variables = {
		Init = Init;
		RunLast = RunLast;
		RunAfterLoaded = RunAfterLoaded;
		CodeName = "";
		UIKeepAlive = true;
		KeybindsEnabled = true;
		ParticlesEnabled = true;
		CapesEnabled = true;
		HideChatCommands = false;
		Particles = {};
		KeyBinds = {};
		Aliases = {};
		Capes = {};
		savedUI = {};
		localSounds = {};
		ESPObjects = {};
		CommunicationsHistory = {};
		LightingSettings = {
			Ambient = service.Lighting.Ambient;
			Brightness = service.Lighting.Brightness;
			ColorShift_Bottom = service.Lighting.ColorShift_Bottom;
			ColorShift_Top = service.Lighting.ColorShift_Top;
			GlobalShadows = service.Lighting.GlobalShadows;
			OutdoorAmbient = service.Lighting.OutdoorAmbient;
			Outlines = service.Lighting.Outlines;
			ShadowColor = service.Lighting.ShadowColor;
			GeographicLatitude = service.Lighting.GeographicLatitude;
			Name = service.Lighting.Name;
			TimeOfDay = service.Lighting.TimeOfDay;
			FogColor = service.Lighting.FogColor;
			FogEnd = service.Lighting.FogEnd;
			FogStart = service.Lighting.FogStart;
		};
		KeycodeNames = require(client.Shared.KeycodeNames);
	};
end
