I want to stop running when my stamina runs out. Everything is good except i keep running even when my stamina is 0

local uis = game:GetService('UserInputService')
local players = game:GetService('Players')
local player = players.LocalPlayer
local runStatus = false

local walkSpeedMultiplyer = 2
local originalWalkSpeed = 16
local currentStamina = 200
local maximumStamina = 200
local runningStaminaCost = 5

uis.InputBegan:Connect(function(input)
	if input.KeyCode == Enum.KeyCode.LeftShift and currentStamina > 0 then
		runStatus = true
		player.Character.Humanoid.WalkSpeed = player.Character.Humanoid.WalkSpeed * walkSpeedMultiplyer
		while runStatus == true do
			currentStamina = math.clamp(currentStamina - runningStaminaCost, 0, maximumStamina)
			print(currentStamina)
			wait(0.5)
			player.PlayerGui.Stamina.Bar.Size = UDim2.new((currentStamina / maximumStamina) * .2, 0, .112, 0)
		end
		
	end
end)

uis.InputEnded:Connect(function(input)
	runStatus = false
	if input.KeyCode == Enum.KeyCode.LeftShift then
		wait(1)
		player.Character.Humanoid.WalkSpeed = originalWalkSpeed
		print('Not Running')
		repeat
			currentStamina = currentStamina + runningStaminaCost
			player.PlayerGui.Stamina.Bar.Size = UDim2.new((currentStamina / maximumStamina) * .2, 0, .112, 0)
			print(currentStamina)
			wait(0.25)
		until
			currentStamina == maximumStamina or runStatus == true
	end
end)