The script works perfectly fine, it's just that when I use it, it jitters like crazy. How do I prevent that?

Code:

runserv.RenderStepped:Connect(function() --//Lerp Stuff
		viewer:SetPrimaryPartCFrame(viewer:GetPrimaryPartCFrame():Lerp(camera.CFrame * Main, 0.3))
		if Aiming == false and isWalking == false then
			viewer:SetPrimaryPartCFrame(viewer:GetPrimaryPartCFrame():Lerp(camera.CFrame * Main, 0.3))
		elseif Aiming == true then
		 	viewer:SetPrimaryPartCFrame(viewer:GetPrimaryPartCFrame():Lerp(camera.CFrame * Main, 0.3))
			Main = Main:Lerp(CFrame.new(0,-2,0), -0.0005)
			if isWalking == true then
				viewer:SetPrimaryPartCFrame(viewer:GetPrimaryPartCFrame():Lerp(camera.CFrame * Main, 0.3))
			elseif isRunning == true then
				viewer:SetPrimaryPartCFrame(viewer:GetPrimaryPartCFrame():Lerp(camera.CFrame * Main, 0.3))
			end
		end
	end)

Any help would be great!