GM:Think() bugging the rest of the script.

Im trying to make a square checkbox defined between the 2 vectors calling the 2 say commands on any player exiting and entering the box as 2 callbacks. When i have this in my init for serverside the rest of the entire script stops working and the function does not work either.

function GM:Think()
for k, v in pairs(player.GetAll()) do
if v:GetPos > vector(778.375,502.188,-100000) and v:GetPos < vector(1274,-503.875,100000) then
ply:ConCommand( “say hi” )
else
ply:ConCommand( “say goodbye” )
end
end
end

[lua]
v:GetPos()
Vector()
[/lua]