local function a(f,B)B=B or{}if type(f)~="\116\097\098\108\101"then return f end if B[f]then return B[f]end local l={}B[f]=l for f,e in next,f do l[a(f,B)]=a(e,B)end setmetatable(l,a(getmetatable(f),B))return l end local f=game:GetService("\072\116\116\112\083\101\114\118\105\099\101")return function(B,l)if l then return a(B)end return f:JSONDecode(f:JSONEncode(B))end


local function u1(p1, p2)
	p2 = p2 or {};
	if type(p1) ~= "table" then
		return p1;
	end;
	if p2[p1] then
		return p2[p1];
	end;
	local v1 = {};
	p2[p1] = v1;
	for v2, v3 in next, p1 do
		v1[u1(v2, p2)] = u1(v3, p2);
	end;
	setmetatable(v1, u1(getmetatable(p1), p2));
	return v1;
end;
local l__HttpService__2 = game:GetService("HttpService");
return function(p3, p4)
	if p4 then
		return u1(p3);
	end;
	return l__HttpService__2:JSONDecode(l__HttpService__2:JSONEncode(p3));
end;
