Weird issue with console commands

[lua]
function ATMPlayerInitialSpawn(Player)

if Player:GetPData("ATMMoney") == nil then
	Player:SetPData("ATMMoney", 0)
	
end

Player.ATMMoney = tonumber(Player:GetPData("ATMMoney"))

end

hook.Add(“PlayerInitialSpawn”, “ATMPlayerInitialSpawn”, ATMPlayerInitialSpawn)

function ATMPlayerDisconnected(Player)
Player:SetPData(“ATMMoney”, Player.ATMMoney)

end

hook.Add(“PlayerDisconnected”, “ATMPlayerDisconnected”, ATMPlayerDisconnected)

function ATMCommand(Player)
local TraceEntity = Player:GetEyeTrace().Entity

if TraceEntity == "entity_atm" and TraceEntity:GetPos():Distance(Player:GetPos()) < 50 then
	
	umsg.Start("ATMUserMessage", Player)
		umsg.Long(Player.ATMMoney)
		
	umsg.End()
	
end

end

concommand.Add(“atm_use”, ATMCommand)

function ATMWithdrawCommand(Player, Command, Arguments)
local TraceEntity = Player:GetEyeTrace().Entity

if TraceEntity == "entity_atm" and TraceEntity:GetPos():Distance(Player:GetPos()) < 50 then
	local PlayerMoney = player.ATMMoney
	local Amount = args[1]
	
	if PlayerMoney >= Amount then
		Player.ATMMoney = PlayerMoney - Amount
		Player:AddMoney(Amount)
		
	end
	
end

end

concommand.Add(“atm_withdraw”, “ATMWithdrawCommand”, ATMWithdrawCommand)

function ATMDepositCommand(Player, Command, Arguments)
local TraceEntity = Player:GetEyeTrace().Entity

if TraceEntity:GetClass() == "entity_atm" and TraceEntity:GetPos():Distance(Player:GetPos()) < 50 then
	local PlayerMoney = player.ATMMoney
	local Amount = tonumber(args[1])
	
	if Player:CanAfford(Amount) then
		Player.ATMMoney = PlayerMoney + Amount
		Player:AddMoney(Amount * -1)
		
	end
	
end

end

concommand.Add(“atm_deposit”, “ATMDepositCommand”, ATMDepositCommand)
[/lua]
This is my code for a DarkRP ATM.
Whenever I finish writing either “atm_withdraw” or “atm_deposit” and press space I get


[@addons\joshb's atm\lua\autorun\server\atm.lua:50] bad key to string index (number expected, got string)

and it repeats each time I press space, type a character or press backspace.
Then when I press enter it says:


[lua\includes\modules\concommand.lua:69] attempt to call field '?' (a string value)

This script is being placed in autorun/server, and the ATM entity doesn’t do anything, it’s all handled in this code.

concommand.Add only has two arguments, the name and the function.

THANKS!
Had hook.Add confused with it.