Viewmodel Tool isn't being positioned correctly

I want the viewmodel tool to be positioned exactly the same as the normal tool is being positioned for the player, right now it positions slightly off, here is the code I’m using:

function fps:equip(tool)
if not tool or not tool:IsA(“Tool”) then
warn(“Invalid tool for equip()”)
return
end

– Clean up old stuff
if self.viewTool then
self.viewTool:Destroy()
self.viewTool = nil
end
if self.viewWeld then
self.viewWeld:Destroy()
self.viewWeld = nil
end

– Clone tool into viewmodel
local viewTool = tool:Clone()
viewTool.Name = tool.Name .. “_View”
viewTool.Parent = self.viewModel

local viewHand = self.isR15 and self.viewModel:FindFirstChild(“RightHand”) or self.viewModel:FindFirstChild(“Right Arm”)
local viewHandle = viewTool:FindFirstChild(“Handle”)
if not (viewHand and viewHandle) then
warn(“Missing hand or handle in viewmodel”)
viewTool:Destroy()
return
end

– Create Motor6D for the viewmodel gun
local weld = Instance.new(“Weld”)
weld.Name = “RightGrip”
weld.Part0 = viewHand
weld.Part1 = viewHandle
weld.Parent = viewHand

self.viewTool = viewTool
self.viewWeld = weld
self.isViewEquipped = true
end