local o={"\082\101\114\117\098\105";"\076\117\097\075","\076\117\097\080";"\076\117\097\085";"\076\117\097\088";"\076\117\097\089","\076\117\097\090"}for o,u in pairs(o)do script:WaitForChild(u)end local u=require(script.LuaX)local A=require(script.LuaY)local D=require(script.LuaZ)local r=require(script.LuaU)local h=require(script.Rerubi)u:init()local U={};(getfenv()).script=nil return function(o,u)local s,p,a,i local v=u or getfenv(2)local e=v.script and v.script:GetFullName()local I,V=pcall(function()local u=D:init(D:make_getS(o),nil)if not u then return error()end local i=A:parser(U,u,nil,e or"\110\105\108")p,a=r:make_setS()r:dump(U,i,p,a)s=h(a.data,v)end)if I then return s,a.data else return nil,V end end


local waitDeps = {
	'Rerubi';
	'LuaK';
	'LuaP';
	'LuaU';
	'LuaX';
	'LuaY';
	'LuaZ';
}

for i,v in pairs(waitDeps) do script:WaitForChild(v) end

local luaX = require(script.LuaX)
local luaY = require(script.LuaY)
local luaZ = require(script.LuaZ)
local luaU = require(script.LuaU)
local rerubi = require(script.Rerubi)

luaX:init()
local LuaState = {}

getfenv().script = nil

return function(str,env)
	local f,writer,buff,name
	local env = env or getfenv(2)
	local name = (env.script and env.script:GetFullName())
	local ran,error = pcall(function()
		local zio = luaZ:init(luaZ:make_getS(str), nil)
		if not zio then return error() end
		local func = luaY:parser(LuaState, zio, nil, name or "nil")
		writer, buff = luaU:make_setS()
		luaU:dump(LuaState, func, writer, buff)
		f = rerubi(buff.data, env)
	end)
	
	if ran then
		return f,buff.data
	else
		return nil,error
	end
end
