public int[] adjacentBlackSquare(Integer row, Integer col) {
		int rowOfBlack;
		int colOfBlack;

		// check the above square
		rowOfBlack = row - 1;
		colOfBlack = col;
		if (isInGrid(rowOfBlack, colOfBlack)
				&& grid[rowOfBlack][colOfBlack].equals(Color.BLACK)) {
			return (new int[] { rowOfBlack, colOfBlack });
		}

		// check the right square
		rowOfBlack = row;
		colOfBlack = col + 1;
		if (isInGrid(rowOfBlack, colOfBlack)
				&& grid[rowOfBlack][colOfBlack].equals(Color.BLACK)) {
			return (new int[] { rowOfBlack, colOfBlack });
		}

		// check the below square
		rowOfBlack = row + 1;
		colOfBlack = col;
		if (isInGrid(rowOfBlack, colOfBlack)
				&& grid[rowOfBlack][colOfBlack].equals(Color.BLACK)) {
			return (new int[] { rowOfBlack, colOfBlack });
		}

		// check the left square
		rowOfBlack = row;
		colOfBlack = col - 1;
		if (isInGrid(rowOfBlack, colOfBlack)
				&& grid[rowOfBlack][colOfBlack].equals(Color.BLACK)) {
			return (new int[] { rowOfBlack, colOfBlack });
		}
		// no adjacent black square
		return (new int[] { -1, -1 });
	}