--------------------------------------------------------

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()
