public int countSurroundingLiveCellsFrom(int x, int y) {
        int liveCells = 0;
        liveCells += isAliveAt(x - 1, y - 1) ? 1 : 0;
        liveCells += isAliveAt(x, y - 1) ? 1 : 0;
        liveCells += isAliveAt(x + 1, y - 1) ? 1 : 0;
        liveCells += isAliveAt(x - 1, y) ? 1 : 0;
        liveCells += isAliveAt(x + 1, y) ? 1 : 0;
        liveCells += isAliveAt(x - 1, y + 1) ? 1 : 0;
        liveCells += isAliveAt(x, y + 1) ? 1 : 0;
        liveCells += isAliveAt(x + 1, y + 1) ? 1 : 0;
        return liveCells;
    }