added ValidNeighbors method