Bodyslamming System

Whats Happening
I’m trying to make a bodyslam script but the player that’s doing the lifting keeps getting pushed under ground

What’s supposed to happen
The player lifting is supposed to not get pushed into the ground

        for i,v in pairs(bool.Parent:GetChildren()) do
            if v:IsA("BasePart") then
                v.Massless = true
            end
        end
        bool:SetNetworkOwner(plr)
        bool.Parent:FindFirstChild("Humanoid"):ChangeState(Enum.HumanoidStateType.Physics)
        bool.Parent.HumanoidRootPart.CanCollide = false
        local m6 = Instance.new("Weld", plr.Character)
        m6.Name = "BodySlam"
        m6.Part0 = bool
        m6.Part1 = plr.Character:FindFirstChild("UpperTorso")
        m6.C0 = CFrame.new(0,-2,-1) * CFrame.Angles(0,math.rad(180),0)
        wait(0.52)
        bool.Parent:FindFirstChild("Humanoid").Health = 0
        m6:Destroy()