public static void main(String[] args) throws IOException {
		PlayerHuman playerHuman = new PlayerHuman();
		PlayerCPU playerCPU = new PlayerCPU();
		Player[] players = {playerHuman, playerCPU};
		int pointsLimit;
		int round = 1;

		clearScreen();
		System.out.println(getInfo());

		pointsLimit = getPointsLimit();
		whoIsFirst(playerHuman, playerCPU, players);

		do {
			System.out.println("*****************************" +
					   "ROUND " + round +
					   "*******************************\n");

			Deck deck = new Deck();
			int plCount = round - 1;              // player index
			int cp = plCount % NUM_PLAYERS;       // current player
			int np = (plCount + 1) % NUM_PLAYERS; // next player

			deck.shuffle();
			deck.dealCards(playerHuman, playerCPU);

			if (players[cp].playFirstCard(deck, players[np]))
				plCount++;

			do {
				cp = plCount % NUM_PLAYERS;
				np = (plCount + 1) % NUM_PLAYERS;

				players[cp].play(deck, players[np]);
				plCount++;
			} while (! players[cp].hasWon());

			int points = players[np].addPoints();
			if (players[np] instanceof PlayerHuman)
				System.out.println(points + " points to you.");
			else
				System.out.println(points + " points to CPU.");
			displayScore(playerHuman, playerCPU, pointsLimit);
			round++;
		} while (playerHuman.points < pointsLimit
			 && playerCPU.points < pointsLimit);

		if (playerHuman.points > playerCPU.points)
			System.out.println("CPU won the game!");
		else
			System.out.println("Congratulations! " +
			                   "You won the game!!!");
	}