Why isn't this working?

I’m using the function ApplyInpulseAtPosition, but I’m having some issues with making the bombClone go to the actual mouse position, as all it does is fling around the place and flings me…

local ActivationEvent = script.Parent:WaitForChild("ThrowBomb")
local tool = script.Parent
local player = game:GetService("Players"):GetPlayerFromCharacter(tool.Parent)

tool.Activated:Connect(function()
	ActivationEvent:FireServer(player, player:GetMouse().Hit, player.Character)
end)
local ActivationEvent = script.Parent:WaitForChild("ThrowBomb")
local BombFuse = script.Parent:WaitForChild("Bomb Fuse")
local Explosion = script.Parent:WaitForChild("Explosion")

ActivationEvent.OnServerEvent:Connect(function(player, character, mouseHit, char)
	local Bomb = script.Parent:WaitForChild("Handle"):Clone()
	Bomb.Parent = workspace:WaitForChild("ClonedBombs")
	Bomb.Name = "clonedBomb"
	
	Bomb:ApplyImpulseAtPosition(Bomb.Position, mouseHit.p)
	
	Bomb.CanCollide = true
end)