public int blockOpponentChecker(Coordinate xy) {
		boolean test = false;
		if (test || m_test)
			System.out.println("ConnectFour::blockOpponentChecker() - BEGIN");
		Game.PlayerTurn Player;

		if (getPlayerTurn() == Game.PlayerTurn.PLAYER1) {
			Player = Game.PlayerTurn.PLAYER2;
		} else {
			Player = Game.PlayerTurn.PLAYER1;
		}

		Coordinate c1 = new Coordinate(xy.getX(), xy.getY());
		int count = 0;
		int countDown = countDown(c1, Player);
		int countDiagDown = countDiagonalDown(c1, Player);
		int countDiagUp = countDiagonalUp(c1, Player);
		int countLeft = countLeft(c1, Player);
		int countRight = countRight(c1, Player);

		ArrayList<Integer> list = new ArrayList<Integer>();
		list.add(countDown);
		list.add(countDiagDown);
		list.add(countDiagUp);
		list.add(countLeft);
		list.add(countRight);

		for (Integer listIter : list) {
			if (listIter == COUNT3) {
				return COUNT3;
			}
		}
		if (test || m_test)
			System.out.println("ConnectFour::blockOpponentChecker() - END");
		return count;
	}