local A=Tool:FindFirstChild("\072\097\110\100\108\101")local W=script.Parent:GetChildren()for X=1,#W,1 do if W[X].className=="\080\097\114\116"or W[X].className=="\077\101\115\104\080\097\114\116"then if A~=nil then local Z=Instance.new("\087\101\108\100")Z.Part0=A Z.Part1=W[X]Z.C0=A.CFrame:inverse()Z.C1=W[X].CFrame:inverse()Z.Parent=A end W[X].Anchored=false A=W[X]end if W[X]:IsA("\077\111\100\101\108")then local Z=A local p=W[X]:GetChildren()for A=1,#p,1 do if p[A].className=="\080\097\114\116"or p[A].className=="\085\110\105\111\110\079\112\101\114\097\116\105\111\110"then if Z~=nil then local W=Instance.new("\087\101\108\100")W.Part0=Z W.Part1=p[A]W.C0=Z.CFrame:inverse()W.C1=p[A].CFrame:inverse()W.Parent=Z end p[A].Anchored=false Z=p[A]end end end end wait(3)script:remove()

local prev = Tool:FindFirstChild("Handle")

local ModelChild = script.Parent:GetChildren() 
for i = 1,#ModelChild do 
	if (ModelChild[i].className == "Part") or (ModelChild[i].className == "MeshPart") then 
		if (prev ~= nil)then 
			local weld = Instance.new("Weld") 
			weld.Part0 = prev 
			weld.Part1 = ModelChild[i] 
			weld.C0 = prev.CFrame:inverse() 
			weld.C1 = ModelChild[i].CFrame:inverse() 
			weld.Parent = prev 
		end 
		ModelChild[i].Anchored = false
		prev = ModelChild[i] 
	end 
	---- If ModelChild is a Model ---
	if ModelChild[i]:IsA("Model") then
		local prev2 = prev
	local parts2 = ModelChild[i]:GetChildren() 
		for i = 1,#parts2 do 
			if (parts2[i].className == "Part") or (parts2[i].className == "UnionOperation") then 
				if (prev2 ~= nil)then 
				local weld = Instance.new("Weld") 
				weld.Part0 = prev2 
				weld.Part1 = parts2[i] 
				weld.C0 = prev2.CFrame:inverse() 
				weld.C1 = parts2[i].CFrame:inverse() 
				weld.Parent = prev2 
				end 
			parts2[i].Anchored = false
			prev2 = parts2[i] 
			end 
		end 
	end
end 

wait(3) 
script:remove()
