local l=game:GetService("\074\111\105\110\116\115\083\101\114\118\105\099\101")local u=workspace:PGSIsEnabled()function MakeWeld(u,V,p,n)if p==nil then p="\087\101\108\100"end local h=Instance.new(p,l)h.Part0=u h.Part1=V h.C0=u.CFrame:inverse()*u.CFrame h.C1=V.CFrame:inverse()*u.CFrame if p=="\077\111\116\111\114"and n~=nil then h.MaxVelocity=n end return h end function ModelWeld(l,u)if l:IsA("\066\097\115\101\080\097\114\116")then MakeWeld(u,l,"\087\101\108\100")elseif l:IsA("\077\111\100\101\108")then for l,V in pairs(l:GetChildren())do ModelWeld(V,u)end end end function UnAnchor(l)if l:IsA("\066\097\115\101\080\097\114\116")then l.Anchored=false end for l,u in pairs(l:GetChildren())do UnAnchor(u)end end
--[[Weld functions]]

local JS = game:GetService("JointsService")
local PGS_ON = workspace:PGSIsEnabled()

function MakeWeld(x, y, type, s)
	if type == nil then
		type = "Weld"
	end
	local W = Instance.new(type, JS)
	W.Part0 = x
	W.Part1 = y
	W.C0 = x.CFrame:inverse() * x.CFrame
	W.C1 = y.CFrame:inverse() * x.CFrame
	if type == "Motor" and s ~= nil then
		W.MaxVelocity = s
	end
	return W
end

function ModelWeld(a, b)
	if a:IsA("BasePart") then
		MakeWeld(b, a, "Weld")
	elseif a:IsA("Model") then
		for i, v in pairs(a:GetChildren()) do
			ModelWeld(v, b)
		end
	end
end

function UnAnchor(a)
	if a:IsA("BasePart") then
		a.Anchored = false
	end
	for i, v in pairs(a:GetChildren()) do
		UnAnchor(v)
	end
end
